<!---
This file is automatically generated by a script.
DO NOT HAND-EDIT THIS FILE.
Script: generate_pseudo_cluster_doc_tables.py
-->

# YAML Pseudo-clusters



CommissionerCommands
|command|args|arg type| arg optional|
|:---|:---|:---|:---|
|PairWithCode|nodeId<br />payload<br />discoverOnce|node_id<br />char_string<br />boolean|false<br />false<br />true|
|Unpair|nodeId|node_id|false|
|GetCommissionerNodeId||||
|GetCommissionerNodeIdResponse|nodeId|node_id|false|
|GetCommissionerRootCertificate||||
|GetCommissionerRootCertificateResponse|RCAC|OCTET_STRING|false|
|IssueNocChain|Elements<br />nodeId|octet_string<br />node_id|false<br />false|
|IssueNocChainResponse|NOC<br />ICAC<br />RCAC<br />IPK|octet_string<br />octet_string<br />octet_string<br />octet_string|false<br />false<br />false<br />false|


DelayCommands
|command|args|arg type| arg optional|
|:---|:---|:---|:---|
|WaitForCommissioning||||
|WaitForCommissionee|nodeId<br />expireExistingSession|node_id<br />bool|false<br />true|
|WaitForMs|ms|int16u|false|
|WaitForMessage|registerKey<br />message|char_string<br />char_string|false<br />false|


DiscoveryCommands
|command|args|arg type| arg optional|
|:---|:---|:---|:---|
|FindCommissionable||||
|FindCommissionableByShortDiscriminator|value|int16u|false|
|FindCommissionableByLongDiscriminator|value|int16u|false|
|FindCommissionableByCommissioningMode||||
|FindCommissionableByVendorId|value|vendor_id|false|
|FindCommissionableByDeviceType|value|devtype_id|false|
|FindCommissioner||||
|FindCommissionerByVendorId|value|vendor_id|false|
|FindCommissionerByDeviceType|value|devtype_id|false|
|FindResponse|hostName<br />instanceName<br />longDiscriminator<br />shortDiscriminator<br />vendorId<br />productId<br />commissioningMode<br />deviceType<br />deviceName<br />rotatingId<br />rotatingIdLen<br />pairingHint<br />pairingInstruction<br />supportsTcp<br />numIPs<br />port<br />mrpRetryIntervalIdle<br />mrpRetryIntervalActive<br />mrpRetryActiveThreshold<br />isICDOperatingAsLIT|char_string<br />char_string<br />int16u<br />int16u<br />vendor_id<br />int16u<br />int8u<br />devtype_id<br />char_string<br />octet_string<br />int64u<br />int16u<br />char_string<br />boolean<br />int8u<br />int16u<br />int32u<br />int32u<br />int16u<br />boolean|false<br />false<br />false<br />false<br />false<br />false<br />false<br />false<br />false<br />false<br />false<br />false<br />false<br />false<br />false<br />false<br />true<br />true<br />true<br />true|


EqualityCommands
|command|args|arg type| arg optional|
|:---|:---|:---|:---|
|BooleanEquals|Value1<br />Value2|boolean<br />boolean|false<br />false|
|SignedNumberEquals|Value1<br />Value2|int64s<br />int64s|false<br />false|
|UnsignedNumberEquals|Value1<br />Value2|int64u<br />int64u|false<br />false|
|EqualityResponse|Equals|bool|false|


LogCommands
|command|args|arg type| arg optional|
|:---|:---|:---|:---|
|Log|message|char_string|false|
|UserPrompt|message<br />expectedValue|char_string<br />char_string|false<br />true|


SystemCommands
|command|args|arg type| arg optional|
|:---|:---|:---|:---|
|Start|registerKey<br />discriminator<br />port<br />minCommissioningTimeout<br />kvs<br />filepath<br />otaDownloadPath<br />endUserSupportLogPath<br />networkDiagnosticsLogPath<br />crashLogPath|char_string<br />int16u<br />int16u<br />int16u<br />char_string<br />char_string<br />char_string<br />char_string<br />char_string<br />char_string|true<br />true<br />true<br />true<br />true<br />true<br />true<br />true<br />true<br />true|
|Stop|registerKey|char_string|true|
|Reboot|registerKey|char_string|true|
|FactoryReset|registerKey|char_string|true|
|CreateOtaImage|otaImageFilePath<br />rawImageFilePath<br />rawImageContent|char_string<br />char_string<br />char_string|false<br />false<br />false|
|CompareFiles|file1<br />file2|char_string<br />char_string|false<br />false|
|CreateFile|filePath<br />fileContent|char_string<br />char_string|false<br />false|
|DeleteFile|filePath|char_string|false|
