Matter::Cluster::GeneralCommissioningCluster
Inherits Matter::Cluster::Base < Reference < Object
General Commissioning Cluster (0x0030)
Provides commands and attributes to support the device commissioning process. This includes commissioning window management, failsafe timer management, regulatory configuration, and commissioning completion.
Matter Core Spec §11.9 - General Commissioning Cluster
Constants
Constructors
Class methods
General Commissioning Cluster (0x0030)
Provides commands and attributes to support the device commissioning process. This includes commissioning window management, failsafe timer management, regulatory configuration, and commissioning completion.
Matter Core Spec §11.9 - General Commissioning Cluster
Instance methods
Accept Terms & Conditions (for TC feature)
This method is used when the Terms & Conditions feature is enabled to mark that the user has accepted the terms.
Simple arm failsafe method for tests (arms with default max cumulative)
Handle ArmFailSafe command
Arms or re-arms the failsafe timer. The failsafe timer ensures that commissioning changes are rolled back if commissioning doesn't complete successfully.
@param request ArmFailSafe request with expiry length and breadcrumb @param session_fabric_index Fabric index of requesting session (nil for PASE) @param is_pase_session Whether this is a PASE session @return ArmFailSafe response with status
Breadcrumb attribute (0x0000) - progress tracking during commissioning
Handle CommissioningComplete command
Signals that commissioning is complete. This validates that all required commissioning steps have been performed, then disarms the failsafe and persists the commissioned state.
@param session_fabric_index Fabric index of requesting session @param is_case_session Whether this is a CASE session (required) @return CommissioningComplete response with status
Country code whitelist (nil = all countries allowed)
Session context properties (set by base class invoke_command via responds_to?) These are populated automatically when commands are invoked through the cluster base class
Session context properties (set by base class invoke_command via responds_to?) These are populated automatically when commands are invoked through the cluster base class
LocationCapability attribute (0x0003) - supported regulatory locations
BasicCommissioningInfo attribute (0x0001) Contains MaxCumulativeFailsafeSeconds and MaxNetworkCommissioningSeconds
BasicCommissioningInfo attribute (0x0001) Contains MaxCumulativeFailsafeSeconds and MaxNetworkCommissioningSeconds
Callback to check if Terms & Conditions have been accepted
Callback to clear all PASE sessions after successful commissioning
Callback to reset OperationalCredentials failsafe context when a new failsafe is armed This is necessary because the OperationalCredentials cluster has its own failsafe state tracking (noc_added_or_updated, etc.) that must be reset for each new commissioning session
Callback to reset OperationalCredentials failsafe context when a new failsafe is armed This is necessary because the OperationalCredentials cluster has its own failsafe state tracking (noc_added_or_updated, etc.) that must be reset for each new commissioning session
Callback to persist the fabric table after successful commissioning
Read an attribute value The fabric_index parameter is optional and used for fabric-scoped attributes like CurrentFabricIndex in OperationalCredentialsCluster
Record that a fabric was added during this failsafe context
This should be called by OperationalCredentialsCluster when AddNOC succeeds. It updates the failsafe context so that CommissioningComplete can be called from a CASE session on the new fabric (PASE→CASE transition).
@param fabric_index The index of the newly added fabric
RegulatoryConfig attribute (0x0002) - current regulatory location
Handle SetRegulatoryConfig command
Sets the regulatory configuration (indoor/outdoor) and country code.
@param request SetRegulatoryConfig request @return SetRegulatoryConfig response with status
Restore regulatory config from snapshot (called during rollback)
This is called by FailsafeContext#rollback to restore the previous regulatory configuration when a failsafe expires.
@param location_type Previous regulatory location type value @param country_code Previous country code
SupportsConcurrentConnection attribute (0x0004)
Terms & Conditions feature support
Write an attribute value
Nested types
- Matter::Cluster::GeneralCommissioningCluster::ArmFailSafeRequest
- Matter::Cluster::GeneralCommissioningCluster::ArmFailSafeResponse
- Matter::Cluster::GeneralCommissioningCluster::BasicCommissioningInfo
- Matter::Cluster::GeneralCommissioningCluster::CommissioningCompleteResponse
- Matter::Cluster::GeneralCommissioningCluster::CommissioningError
- Matter::Cluster::GeneralCommissioningCluster::RegulatoryLocationType
- Matter::Cluster::GeneralCommissioningCluster::SetRegulatoryConfigRequest
- Matter::Cluster::GeneralCommissioningCluster::SetRegulatoryConfigResponse