blob: 54a14fed6332a295e0df7e0ef9847a120fc818a5 [file] [log] [blame]
// This IDL was generated automatically by ZAP.
// It is for view/code review purposes only.
struct LabelStruct {
CHAR_STRING label = 1;
CHAR_STRING value = 2;
}
server cluster AdministratorCommissioning = 60 {
enum CommissioningWindowStatus : ENUM8 {
kWindowNotOpen = 0;
kEnhancedWindowOpen = 1;
kBasicWindowOpen = 2;
}
enum StatusCode : ENUM8 {
kBusy = 1;
kPAKEParameterError = 2;
kWindowNotOpen = 3;
}
attribute(readonly) int8u windowStatus = 0;
attribute(readonly) fabric_idx adminFabricIndex = 1;
attribute(readonly) int16u adminVendorId = 2;
attribute(readonly, reportable) int16u clusterRevision = 65533;
request struct OpenBasicCommissioningWindowRequest {
INT16U commissioningTimeout = 0;
}
request struct OpenCommissioningWindowRequest {
INT16U commissioningTimeout = 0;
OCTET_STRING PAKEVerifier = 1;
INT16U discriminator = 2;
INT32U iterations = 3;
OCTET_STRING salt = 4;
INT16U passcodeID = 5;
}
command OpenBasicCommissioningWindow(OpenBasicCommissioningWindowRequest): DefaultSuccess = 1;
command OpenCommissioningWindow(OpenCommissioningWindowRequest): DefaultSuccess = 0;
command RevokeCommissioning(): DefaultSuccess = 2;
}
server cluster Basic = 40 {
critical event StartUp = 0 {
INT32U softwareVersion = 0;
}
critical event ShutDown = 1 {
}
info event Leave = 2 {
}
info event ReachableChanged = 3 {
boolean reachableNewValue = 0;
}
attribute(readonly, reportable) int16u interactionModelVersion = 0;
attribute(readonly, reportable) char_string vendorName = 1;
attribute(readonly, reportable) vendor_id vendorID = 2;
attribute(readonly, reportable) char_string productName = 3;
attribute(readonly, reportable) int16u productID = 4;
attribute(writable, reportable) char_string nodeLabel = 5;
attribute(writable, reportable) char_string location = 6;
attribute(readonly, reportable) int16u hardwareVersion = 7;
attribute(readonly, reportable) char_string hardwareVersionString = 8;
attribute(readonly, reportable) int32u softwareVersion = 9;
attribute(readonly, reportable) char_string softwareVersionString = 10;
attribute(readonly, reportable) int16u clusterRevision = 65533;
}
server cluster Descriptor = 29 {
struct DeviceType {
DEVTYPE_ID type = 1;
INT16U revision = 2;
}
attribute(readonly, reportable) DeviceType deviceList[] = 0;
attribute(readonly, reportable) CLUSTER_ID serverList[] = 1;
attribute(readonly, reportable) CLUSTER_ID clientList[] = 2;
attribute(readonly, reportable) ENDPOINT_NO partsList[] = 3;
attribute(readonly, reportable) int16u clusterRevision = 65533;
}
server cluster DiagnosticLogs = 50 {
enum LogsIntent : ENUM8 {
kEndUserSupport = 0;
kNetworkDiag = 1;
kCrashLogs = 2;
}
enum LogsStatus : ENUM8 {
kSuccess = 0;
kExhausted = 1;
kNoLogs = 2;
kBusy = 3;
kDenied = 4;
}
enum LogsTransferProtocol : ENUM8 {
kResponsePayload = 0;
kBdx = 1;
}
request struct RetrieveLogsRequestRequest {
LogsIntent intent = 0;
LogsTransferProtocol requestedProtocol = 1;
OCTET_STRING transferFileDesignator = 2;
}
command RetrieveLogsRequest(RetrieveLogsRequestRequest): RetrieveLogsResponse = 0;
}
server cluster DoorLock = 257 {
enum DlAlarmCode : ENUM8 {
kLockJammed = 0;
kLockFactoryReset = 1;
kLockRadioPowerCycled = 3;
kWrongCodeEntryLimit = 4;
kFrontEsceutcheonRemoved = 5;
kDoorForcedOpen = 6;
kDoorAjar = 7;
kForcedUser = 8;
}
enum DlCredentialRule : ENUM8 {
kSingle = 0;
kDouble = 1;
kTri = 2;
}
enum DlCredentialType : ENUM8 {
kProgrammingPIN = 0;
kPin = 1;
kRfid = 2;
kFingerprint = 3;
kFingerVein = 4;
kFace = 5;
}
enum DlDataOperationType : ENUM8 {
kAdd = 0;
kClear = 1;
kModify = 2;
}
enum DlDoorLockStatus : ENUM8 {
kDuplicate = 2;
kOccupied = 3;
}
enum DlDoorState : ENUM8 {
kDoorOpen = 0;
kDoorClosed = 1;
kDoorJammed = 2;
kDoorForcedOpen = 3;
kDoorUnspecifiedError = 4;
kDoorAjar = 5;
}
enum DlLockDataType : ENUM8 {
kUnspecified = 0;
kProgrammingCode = 1;
kUserIndex = 2;
kWeekDaySchedule = 3;
kYearDaySchedule = 4;
kHolidaySchedule = 5;
kPin = 6;
kRfid = 7;
kFingerprint = 8;
}
enum DlLockOperationType : ENUM8 {
kLock = 0;
kUnlock = 1;
kNonAccessUserEvent = 2;
kForcedUserEvent = 3;
}
enum DlLockState : ENUM8 {
kNotFullyLocked = 0;
kLocked = 1;
kUnlocked = 2;
}
enum DlLockType : ENUM8 {
kDeadBolt = 0;
kMagnetic = 1;
kOther = 2;
kMortise = 3;
kRim = 4;
kLatchBolt = 5;
kCylindricalLock = 6;
kTubularLock = 7;
kInterconnectedLock = 8;
kDeadLatch = 9;
kDoorFurniture = 10;
}
enum DlOperatingMode : ENUM8 {
kNormal = 0;
kVacation = 1;
kPrivacy = 2;
kNoRemoteLockUnlock = 3;
kPassage = 4;
}
enum DlOperationError : ENUM8 {
kUnspecified = 0;
kInvalidCredential = 1;
kDisabledUserDenied = 2;
kRestricted = 3;
kInsufficientBattery = 4;
}
enum DlOperationSource : ENUM8 {
kUnspecified = 0;
kManual = 1;
kProprietaryRemote = 2;
kKeypad = 3;
kAuto = 4;
kButton = 5;
kSchedule = 6;
kRemote = 7;
kRfid = 8;
kBiometric = 9;
}
enum DlStatus : ENUM8 {
kSuccess = 0;
kFailure = 1;
kDuplicate = 2;
kOccupied = 3;
kInvalidField = 133;
kNotFound = 139;
}
enum DlUserStatus : ENUM8 {
kAvailable = 0;
kOccupiedEnabled = 1;
kOccupiedDisabled = 3;
}
enum DlUserType : ENUM8 {
kUnrestrictedUser = 0;
kYearDayScheduleUser = 1;
kWeekDayScheduleUser = 2;
kProgrammingUser = 3;
kNonAccessUser = 4;
kForcedUser = 5;
kDisposableUser = 6;
kExpiringUser = 7;
kScheduleRestrictedUser = 8;
kRemoteOnlyUser = 9;
}
enum DoorLockOperationEventCode : ENUM8 {
kUnknownOrMfgSpecific = 0;
kLock = 1;
kUnlock = 2;
kLockInvalidPinOrId = 3;
kLockInvalidSchedule = 4;
kUnlockInvalidPinOrId = 5;
kUnlockInvalidSchedule = 6;
kOneTouchLock = 7;
kKeyLock = 8;
kKeyUnlock = 9;
kAutoLock = 10;
kScheduleLock = 11;
kScheduleUnlock = 12;
kManualLock = 13;
kManualUnlock = 14;
}
enum DoorLockProgrammingEventCode : ENUM8 {
kUnknownOrMfgSpecific = 0;
kMasterCodeChanged = 1;
kPinAdded = 2;
kPinDeleted = 3;
kPinChanged = 4;
kIdAdded = 5;
kIdDeleted = 6;
}
enum DoorLockSetPinOrIdStatus : ENUM8 {
kSuccess = 0;
kGeneralFailure = 1;
kMemoryFull = 2;
kDuplicateCodeError = 3;
}
enum DoorLockUserStatus : ENUM8 {
kAvailable = 0;
kOccupiedEnabled = 1;
kOccupiedDisabled = 3;
kNotSupported = 255;
}
enum DoorLockUserType : ENUM8 {
kUnrestricted = 0;
kYearDayScheduleUser = 1;
kWeekDayScheduleUser = 2;
kMasterUser = 3;
kNonAccessUser = 4;
kNotSupported = 255;
}
struct DlCredential {
DlCredentialType credentialType = 1;
INT16U credentialIndex = 2;
}
critical event DoorLockAlarm = 0 {
DlAlarmCode alarmCode = 0;
}
critical event DoorStateChange = 1 {
DlDoorState doorState = 0;
}
critical event LockOperation = 2 {
DlLockOperationType lockOperationType = 0;
DlOperationSource operationSource = 1;
nullable INT16U userIndex = 2;
nullable fabric_idx fabricIndex = 3;
nullable NODE_ID sourceNode = 4;
optional nullable DlCredential credentials[] = 5;
}
critical event LockOperationError = 3 {
DlLockOperationType lockOperationType = 0;
DlOperationSource operationSource = 1;
DlOperationError operationError = 2;
nullable INT16U userIndex = 3;
nullable fabric_idx fabricIndex = 4;
nullable NODE_ID sourceNode = 5;
optional nullable DlCredential credentials[] = 6;
}
info event LockUserChange = 4 {
DlLockDataType lockDataType = 0;
DlDataOperationType dataOperationType = 1;
DlOperationSource operationSource = 2;
nullable INT16U userIndex = 3;
nullable fabric_idx fabricIndex = 4;
nullable NODE_ID sourceNode = 5;
nullable INT16U dataIndex = 6;
}
attribute(readonly, reportable) DlLockState lockState = 0;
attribute(readonly, reportable) DlLockType lockType = 1;
attribute(readonly, reportable) boolean actuatorEnabled = 2;
attribute(readonly, reportable) DlDoorState doorState = 3;
attribute(readonly) int16u numberOfTotalUsersSupported = 17;
attribute(readonly) int16u numberOfPINUsersSupported = 18;
attribute(readonly) int8u maxPINCodeLength = 23;
attribute(readonly) int8u minPINCodeLength = 24;
attribute(readonly) bitmap8 credentialRulesSupport = 27;
attribute(writable, reportable) char_string language = 33;
attribute(writable, reportable) int32u autoRelockTime = 35;
attribute(writable, reportable) int8u soundVolume = 36;
attribute(writable, reportable) DlOperatingMode operatingMode = 37;
attribute(readonly) bitmap16 supportedOperatingModes = 38;
attribute(writable, reportable) boolean enableOneTouchLocking = 41;
attribute(writable, reportable) boolean enablePrivacyModeButton = 43;
attribute(writable, reportable) int8u wrongCodeEntryLimit = 48;
attribute(writable, reportable) int8u userCodeTemporaryDisableTime = 49;
attribute(readonly, reportable) int16u clusterRevision = 65533;
request struct ClearCredentialRequest {
DlCredential credential = 0;
}
request struct ClearUserRequest {
INT16U userIndex = 0;
}
request struct GetCredentialStatusRequest {
DlCredential credential = 0;
}
request struct GetUserRequest {
INT16U userIndex = 0;
}
request struct LockDoorRequest {
optional OCTET_STRING pinCode = 0;
}
request struct SetCredentialRequest {
DlDataOperationType operationType = 0;
DlCredential credential = 1;
LONG_OCTET_STRING credentialData = 2;
INT16U userIndex = 3;
DlUserStatus userStatus = 4;
}
request struct SetUserRequest {
DlDataOperationType operationType = 0;
INT16U userIndex = 1;
nullable CHAR_STRING userName = 2;
nullable INT32U userUniqueId = 3;
DlUserStatus userStatus = 4;
DlUserType userType = 5;
DlCredentialRule credentialRule = 6;
}
request struct UnlockDoorRequest {
optional OCTET_STRING pinCode = 0;
}
response struct GetCredentialStatusResponse {
boolean credentialExists = 0;
nullable INT16U userIndex = 1;
nullable INT16U nextCredentialIndex = 2;
}
response struct GetUserResponse {
INT16U userIndex = 0;
nullable CHAR_STRING userName = 1;
nullable INT32U userUniqueId = 2;
nullable DlUserStatus userStatus = 3;
nullable DlUserType userType = 4;
nullable DlCredentialRule credentialRule = 5;
nullable DlCredential credentials[] = 6;
nullable fabric_idx creatorFabricIndex = 7;
nullable fabric_idx lastModifiedFabricIndex = 8;
INT16U nextUserIndex = 9;
}
response struct SetCredentialResponse {
DlStatus status = 0;
nullable INT16U userIndex = 1;
nullable INT16U nextCredentialIndex = 2;
}
command ClearCredential(ClearCredentialRequest): DefaultSuccess = 38;
command ClearUser(ClearUserRequest): DefaultSuccess = 29;
command GetCredentialStatus(GetCredentialStatusRequest): GetCredentialStatusResponse = 36;
command GetUser(GetUserRequest): GetUserResponse = 27;
command LockDoor(LockDoorRequest): DefaultSuccess = 0;
command SetCredential(SetCredentialRequest): SetCredentialResponse = 34;
command SetUser(SetUserRequest): DefaultSuccess = 26;
command UnlockDoor(UnlockDoorRequest): DefaultSuccess = 1;
}
server cluster EthernetNetworkDiagnostics = 55 {
enum PHYRateType : ENUM8 {
k10m = 0;
k100m = 1;
k1000m = 2;
k25g = 3;
k5g = 4;
k10g = 5;
k40g = 6;
k100g = 7;
k200g = 8;
k400g = 9;
}
attribute(readonly, reportable) enum8 PHYRate = 0;
attribute(readonly, reportable) boolean fullDuplex = 1;
attribute(readonly, reportable) int64u packetRxCount = 2;
attribute(readonly, reportable) int64u packetTxCount = 3;
attribute(readonly, reportable) int64u txErrCount = 4;
attribute(readonly, reportable) int64u collisionCount = 5;
attribute(readonly, reportable) int64u overrunCount = 6;
attribute(readonly, reportable) boolean carrierDetect = 7;
attribute(readonly, reportable) int64u timeSinceReset = 8;
attribute(readonly) bitmap32 featureMap = 65532;
attribute(readonly, reportable) int16u clusterRevision = 65533;
}
server cluster FixedLabel = 64 {
attribute(readonly) LabelStruct labelList[] = 0;
attribute(readonly) int16u clusterRevision = 65533;
}
server cluster GeneralCommissioning = 48 {
enum GeneralCommissioningError : ENUM8 {
kOk = 0;
kValueOutsideRange = 1;
kInvalidAuthentication = 2;
kNotCommissioning = 3;
}
enum RegulatoryLocationType : ENUM8 {
kIndoor = 0;
kOutdoor = 1;
kIndoorOutdoor = 2;
}
struct BasicCommissioningInfoType {
INT32U failSafeExpiryLengthMs = 1;
}
attribute(writable, reportable) int64u breadcrumb = 0;
attribute(readonly, reportable) BasicCommissioningInfoType basicCommissioningInfoList[] = 1;
attribute(readonly) enum8 regulatoryConfig = 2;
attribute(readonly) enum8 locationCapability = 3;
attribute(readonly) bitmap32 featureMap = 65532;
attribute(readonly, reportable) int16u clusterRevision = 65533;
request struct ArmFailSafeRequest {
INT16U expiryLengthSeconds = 0;
INT64U breadcrumb = 1;
INT32U timeoutMs = 2;
}
request struct SetRegulatoryConfigRequest {
RegulatoryLocationType location = 0;
CHAR_STRING countryCode = 1;
INT64U breadcrumb = 2;
INT32U timeoutMs = 3;
}
response struct ArmFailSafeResponse {
GeneralCommissioningError errorCode = 0;
CHAR_STRING debugText = 1;
}
response struct CommissioningCompleteResponse {
GeneralCommissioningError errorCode = 0;
CHAR_STRING debugText = 1;
}
response struct SetRegulatoryConfigResponse {
GeneralCommissioningError errorCode = 0;
CHAR_STRING debugText = 1;
}
command ArmFailSafe(ArmFailSafeRequest): ArmFailSafeResponse = 0;
command CommissioningComplete(): CommissioningCompleteResponse = 4;
command SetRegulatoryConfig(SetRegulatoryConfigRequest): SetRegulatoryConfigResponse = 2;
}
server cluster GeneralDiagnostics = 51 {
enum BootReasonType : ENUM8 {
kUnspecified = 0;
kPowerOnReboot = 1;
kBrownOutReset = 2;
kSoftwareWatchdogReset = 3;
kHardwareWatchdogReset = 4;
kSoftwareUpdateCompleted = 5;
kSoftwareReset = 6;
}
enum HardwareFaultType : ENUM8 {
kUnspecified = 0;
kRadio = 1;
kSensor = 2;
kResettableOverTemp = 3;
kNonResettableOverTemp = 4;
kPowerSource = 5;
kVisualDisplayFault = 6;
kAudioOutputFault = 7;
kUserInterfaceFault = 8;
kNonVolatileMemoryError = 9;
kTamperDetected = 10;
}
enum InterfaceType : ENUM8 {
kUnspecified = 0;
kWiFi = 1;
kEthernet = 2;
kCellular = 3;
kThread = 4;
}
enum NetworkFaultType : ENUM8 {
kUnspecified = 0;
kHardwareFailure = 1;
kNetworkJammed = 2;
kConnectionFailed = 3;
}
enum RadioFaultType : ENUM8 {
kUnspecified = 0;
kWiFiFault = 1;
kCellularFault = 2;
kThreadFault = 3;
kNFCFault = 4;
kBLEFault = 5;
kEthernetFault = 6;
}
struct NetworkInterfaceType {
CHAR_STRING name = 1;
BOOLEAN fabricConnected = 2;
BOOLEAN offPremiseServicesReachableIPv4 = 3;
BOOLEAN offPremiseServicesReachableIPv6 = 4;
OCTET_STRING hardwareAddress = 5;
InterfaceType type = 6;
}
critical event HardwareFaultChange = 0 {
HardwareFaultType current[] = 0;
HardwareFaultType previous[] = 1;
}
critical event RadioFaultChange = 1 {
RadioFaultType current[] = 0;
RadioFaultType previous[] = 1;
}
critical event NetworkFaultChange = 2 {
NetworkFaultType current[] = 0;
NetworkFaultType previous[] = 1;
}
critical event BootReason = 3 {
BootReasonType bootReason = 0;
}
attribute(readonly, reportable) NetworkInterfaceType networkInterfaces[] = 0;
attribute(readonly, reportable) int16u rebootCount = 1;
attribute(readonly, reportable) int64u upTime = 2;
attribute(readonly, reportable) int32u totalOperationalHours = 3;
attribute(readonly, reportable) enum8 bootReasons = 4;
attribute(readonly, reportable) ENUM8 activeHardwareFaults[] = 5;
attribute(readonly, reportable) ENUM8 activeRadioFaults[] = 6;
attribute(readonly, reportable) ENUM8 activeNetworkFaults[] = 7;
attribute(readonly, reportable) int16u clusterRevision = 65533;
}
server cluster LocalizationConfiguration = 43 {
attribute(writable) char_string activeLocale = 1;
attribute(readonly) CHAR_STRING supportedLocales[] = 2;
}
server cluster NetworkCommissioning = 49 {
enum NetworkCommissioningStatus : ENUM8 {
kSuccess = 0;
kOutOfRange = 1;
kBoundsExceeded = 2;
kNetworkIDNotFound = 3;
kDuplicateNetworkID = 4;
kNetworkNotFound = 5;
kRegulatoryError = 6;
kAuthFailure = 7;
kUnsupportedSecurity = 8;
kOtherConnectionFailure = 9;
kIPV6Failed = 10;
kIPBindFailed = 11;
kUnknownError = 12;
}
enum WiFiBand : ENUM8 {
k2g4 = 0;
k3g65 = 1;
k5g = 2;
k6g = 3;
k60g = 4;
}
struct NetworkInfo {
OCTET_STRING networkID = 1;
BOOLEAN connected = 2;
}
struct WiFiInterfaceScanResult {
BITMAP8 security = 1;
OCTET_STRING ssid = 2;
OCTET_STRING bssid = 3;
INT16U channel = 4;
WiFiBand wiFiBand = 5;
INT8S rssi = 6;
}
struct ThreadInterfaceScanResult {
INT64U panId = 1;
INT64U extendedPanId = 2;
CHAR_STRING networkName = 3;
INT16U channel = 4;
INT8U version = 5;
INT64U extendedAddress = 6;
INT8S rssi = 7;
INT8U lqi = 8;
}
attribute(readonly) int8u maxNetworks = 0;
attribute(readonly) NetworkInfo networks[] = 1;
attribute(readonly) int8u scanMaxTimeSeconds = 2;
attribute(readonly) int8u connectMaxTimeSeconds = 3;
attribute(writable) boolean interfaceEnabled = 4;
attribute(readonly) NetworkCommissioningStatus lastNetworkingStatus = 5;
attribute(readonly) octet_string lastNetworkID = 6;
attribute(readonly) int32u lastConnectErrorValue = 7;
attribute(readonly) bitmap32 featureMap = 65532;
attribute(readonly, reportable) int16u clusterRevision = 65533;
request struct AddOrUpdateThreadNetworkRequest {
OCTET_STRING operationalDataset = 0;
INT64U breadcrumb = 1;
}
request struct AddOrUpdateWiFiNetworkRequest {
OCTET_STRING ssid = 0;
OCTET_STRING credentials = 1;
INT64U breadcrumb = 2;
}
request struct ConnectNetworkRequest {
OCTET_STRING networkID = 0;
INT64U breadcrumb = 1;
}
request struct RemoveNetworkRequest {
OCTET_STRING networkID = 0;
INT64U breadcrumb = 1;
}
request struct ReorderNetworkRequest {
OCTET_STRING networkID = 0;
INT8U networkIndex = 1;
INT64U breadcrumb = 2;
}
request struct ScanNetworksRequest {
OCTET_STRING ssid = 0;
INT64U breadcrumb = 1;
}
response struct ConnectNetworkResponse {
NetworkCommissioningStatus networkingStatus = 0;
CHAR_STRING debugText = 1;
INT32S errorValue = 2;
}
response struct NetworkConfigResponse {
NetworkCommissioningStatus networkingStatus = 0;
CHAR_STRING debugText = 1;
}
response struct ScanNetworksResponse {
NetworkCommissioningStatus networkingStatus = 0;
CHAR_STRING debugText = 1;
optional WiFiInterfaceScanResult wiFiScanResults[] = 2;
optional ThreadInterfaceScanResult threadScanResults[] = 3;
}
command AddOrUpdateThreadNetwork(AddOrUpdateThreadNetworkRequest): NetworkConfigResponse = 3;
command AddOrUpdateWiFiNetwork(AddOrUpdateWiFiNetworkRequest): NetworkConfigResponse = 2;
command ConnectNetwork(ConnectNetworkRequest): ConnectNetworkResponse = 6;
command RemoveNetwork(RemoveNetworkRequest): NetworkConfigResponse = 4;
command ReorderNetwork(ReorderNetworkRequest): NetworkConfigResponse = 8;
command ScanNetworks(ScanNetworksRequest): ScanNetworksResponse = 0;
}
server cluster OperationalCredentials = 62 {
enum NodeOperationalCertStatus : ENUM8 {
kSuccess = 0;
kInvalidPublicKey = 1;
kInvalidNodeOpId = 2;
kInvalidNOC = 3;
kMissingCsr = 4;
kTableFull = 5;
kInsufficientPrivilege = 8;
kFabricConflict = 9;
kLabelConflict = 10;
kInvalidFabricIndex = 11;
}
struct FabricDescriptor {
INT8U fabricIndex = 1;
OCTET_STRING rootPublicKey = 2;
INT16U vendorId = 3;
FABRIC_ID fabricId = 4;
NODE_ID nodeId = 5;
CHAR_STRING label = 6;
}
attribute(readonly, reportable) FabricDescriptor fabricsList[] = 1;
attribute(readonly, reportable) int8u supportedFabrics = 2;
attribute(readonly, reportable) int8u commissionedFabrics = 3;
attribute(readonly, reportable) OCTET_STRING trustedRootCertificates[] = 4;
attribute(readonly, reportable) fabric_idx currentFabricIndex = 5;
attribute(readonly, reportable) int16u clusterRevision = 65533;
request struct AddNOCRequest {
OCTET_STRING NOCValue = 0;
optional OCTET_STRING ICACValue = 1;
OCTET_STRING IPKValue = 2;
NODE_ID caseAdminNode = 3;
INT16U adminVendorId = 4;
}
request struct AddTrustedRootCertificateRequest {
OCTET_STRING rootCertificate = 0;
}
request struct AttestationRequestRequest {
OCTET_STRING attestationNonce = 0;
}
request struct CertificateChainRequestRequest {
INT8U certificateType = 0;
}
request struct OpCSRRequestRequest {
OCTET_STRING CSRNonce = 0;
}
request struct RemoveFabricRequest {
INT8U fabricIndex = 0;
}
request struct RemoveTrustedRootCertificateRequest {
OCTET_STRING trustedRootIdentifier = 0;
}
request struct UpdateFabricLabelRequest {
CHAR_STRING label = 0;
}
request struct UpdateNOCRequest {
OCTET_STRING NOCValue = 0;
optional OCTET_STRING ICACValue = 1;
}
response struct AttestationResponse {
OCTET_STRING attestationElements = 0;
OCTET_STRING signature = 1;
}
response struct CertificateChainResponse {
OCTET_STRING certificate = 0;
}
response struct NOCResponse {
INT8U statusCode = 0;
INT8U fabricIndex = 1;
CHAR_STRING debugText = 2;
}
response struct OpCSRResponse {
OCTET_STRING NOCSRElements = 0;
OCTET_STRING attestationSignature = 1;
}
command AddNOC(AddNOCRequest): NOCResponse = 6;
command AddTrustedRootCertificate(AddTrustedRootCertificateRequest): DefaultSuccess = 11;
command AttestationRequest(AttestationRequestRequest): AttestationResponse = 0;
command CertificateChainRequest(CertificateChainRequestRequest): CertificateChainResponse = 2;
command OpCSRRequest(OpCSRRequestRequest): OpCSRResponse = 4;
command RemoveFabric(RemoveFabricRequest): NOCResponse = 10;
command RemoveTrustedRootCertificate(RemoveTrustedRootCertificateRequest): DefaultSuccess = 12;
command UpdateFabricLabel(UpdateFabricLabelRequest): NOCResponse = 9;
command UpdateNOC(UpdateNOCRequest): NOCResponse = 7;
}
server cluster PowerSource = 47 {
attribute(readonly) enum8 status = 0;
attribute(readonly) int8u order = 1;
attribute(readonly) char_string description = 2;
attribute(readonly) int32u wiredAssessedCurrent = 6;
attribute(readonly) enum8 batteryChargeLevel = 14;
attribute(readonly) boolean batteryReplacementNeeded = 15;
attribute(readonly) enum8 batteryReplaceability = 16;
attribute(readonly) char_string batteryReplacementDescription = 19;
attribute(readonly) bitmap32 featureMap = 65532;
attribute(readonly) int16u clusterRevision = 65533;
}
server cluster PowerSourceConfiguration = 46 {
attribute(readonly) INT8U sources[] = 0;
attribute(readonly) int16u clusterRevision = 65533;
}
server cluster SoftwareDiagnostics = 52 {
struct ThreadMetrics {
INT64U id = 1;
CHAR_STRING name = 2;
INT32U stackFreeCurrent = 3;
INT32U stackFreeMinimum = 4;
INT32U stackSize = 5;
}
info event SoftwareFault = 0 {
SoftwareFault softwareFault = 0;
}
attribute(readonly, reportable) ThreadMetrics threadMetrics[] = 0;
attribute(readonly, reportable) int64u currentHeapFree = 1;
attribute(readonly, reportable) int64u currentHeapUsed = 2;
attribute(readonly, reportable) int64u currentHeapHighWatermark = 3;
attribute(readonly) bitmap32 featureMap = 65532;
attribute(readonly, reportable) int16u clusterRevision = 65533;
}
server cluster ThreadNetworkDiagnostics = 53 {
enum NetworkFault : ENUM8 {
kUnspecified = 0;
kLinkDown = 1;
kHardwareFailure = 2;
kNetworkJammed = 3;
}
enum RoutingRole : ENUM8 {
kUnspecified = 0;
kUnassigned = 1;
kSleepyEndDevice = 2;
kEndDevice = 3;
kReed = 4;
kRouter = 5;
kLeader = 6;
}
enum ThreadConnectionStatus : ENUM8 {
kConnected = 0;
kNotConnected = 1;
}
struct NeighborTable {
INT64U extAddress = 1;
INT32U age = 2;
INT16U rloc16 = 3;
INT32U linkFrameCounter = 4;
INT32U mleFrameCounter = 5;
INT8U lqi = 6;
INT8S averageRssi = 7;
INT8S lastRssi = 8;
INT8U frameErrorRate = 9;
INT8U messageErrorRate = 10;
BOOLEAN rxOnWhenIdle = 11;
BOOLEAN fullThreadDevice = 12;
BOOLEAN fullNetworkData = 13;
BOOLEAN isChild = 14;
}
struct RouteTable {
INT64U extAddress = 1;
INT16U rloc16 = 2;
INT8U routerId = 3;
INT8U nextHop = 4;
INT8U pathCost = 5;
INT8U LQIIn = 6;
INT8U LQIOut = 7;
INT8U age = 8;
BOOLEAN allocated = 9;
BOOLEAN linkEstablished = 10;
}
struct SecurityPolicy {
INT16U rotationTime = 1;
BITMAP16 flags = 2;
}
struct OperationalDatasetComponents {
BOOLEAN activeTimestampPresent = 1;
BOOLEAN pendingTimestampPresent = 2;
BOOLEAN masterKeyPresent = 3;
BOOLEAN networkNamePresent = 4;
BOOLEAN extendedPanIdPresent = 5;
BOOLEAN meshLocalPrefixPresent = 6;
BOOLEAN delayPresent = 7;
BOOLEAN panIdPresent = 8;
BOOLEAN channelPresent = 9;
BOOLEAN pskcPresent = 10;
BOOLEAN securityPolicyPresent = 11;
BOOLEAN channelMaskPresent = 12;
}
info event ConnectionStatus = 0 {
ThreadConnectionStatus connectionStatus = 0;
}
attribute(readonly, reportable) int16u channel = 0;
attribute(readonly, reportable) enum8 routingRole = 1;
attribute(readonly, reportable) octet_string networkName = 2;
attribute(readonly, reportable) int16u panId = 3;
attribute(readonly, reportable) int64u extendedPanId = 4;
attribute(readonly, reportable) octet_string meshLocalPrefix = 5;
attribute(readonly, reportable) int64u overrunCount = 6;
attribute(readonly, reportable) NeighborTable neighborTableList[] = 7;
attribute(readonly, reportable) RouteTable routeTableList[] = 8;
attribute(readonly, reportable) int32u partitionId = 9;
attribute(readonly, reportable) int8u weighting = 10;
attribute(readonly, reportable) int8u dataVersion = 11;
attribute(readonly, reportable) int8u stableDataVersion = 12;
attribute(readonly, reportable) int8u leaderRouterId = 13;
attribute(readonly, reportable) int16u detachedRoleCount = 14;
attribute(readonly, reportable) int16u childRoleCount = 15;
attribute(readonly, reportable) int16u routerRoleCount = 16;
attribute(readonly, reportable) int16u leaderRoleCount = 17;
attribute(readonly, reportable) int16u attachAttemptCount = 18;
attribute(readonly, reportable) int16u partitionIdChangeCount = 19;
attribute(readonly, reportable) int16u betterPartitionAttachAttemptCount = 20;
attribute(readonly, reportable) int16u parentChangeCount = 21;
attribute(readonly, reportable) int32u txTotalCount = 22;
attribute(readonly, reportable) int32u txUnicastCount = 23;
attribute(readonly, reportable) int32u txBroadcastCount = 24;
attribute(readonly, reportable) int32u txAckRequestedCount = 25;
attribute(readonly, reportable) int32u txAckedCount = 26;
attribute(readonly, reportable) int32u txNoAckRequestedCount = 27;
attribute(readonly, reportable) int32u txDataCount = 28;
attribute(readonly, reportable) int32u txDataPollCount = 29;
attribute(readonly, reportable) int32u txBeaconCount = 30;
attribute(readonly, reportable) int32u txBeaconRequestCount = 31;
attribute(readonly, reportable) int32u txOtherCount = 32;
attribute(readonly, reportable) int32u txRetryCount = 33;
attribute(readonly, reportable) int32u txDirectMaxRetryExpiryCount = 34;
attribute(readonly, reportable) int32u txIndirectMaxRetryExpiryCount = 35;
attribute(readonly, reportable) int32u txErrCcaCount = 36;
attribute(readonly, reportable) int32u txErrAbortCount = 37;
attribute(readonly, reportable) int32u txErrBusyChannelCount = 38;
attribute(readonly, reportable) int32u rxTotalCount = 39;
attribute(readonly, reportable) int32u rxUnicastCount = 40;
attribute(readonly, reportable) int32u rxBroadcastCount = 41;
attribute(readonly, reportable) int32u rxDataCount = 42;
attribute(readonly, reportable) int32u rxDataPollCount = 43;
attribute(readonly, reportable) int32u rxBeaconCount = 44;
attribute(readonly, reportable) int32u rxBeaconRequestCount = 45;
attribute(readonly, reportable) int32u rxOtherCount = 46;
attribute(readonly, reportable) int32u rxAddressFilteredCount = 47;
attribute(readonly, reportable) int32u rxDestAddrFilteredCount = 48;
attribute(readonly, reportable) int32u rxDuplicatedCount = 49;
attribute(readonly, reportable) int32u rxErrNoFrameCount = 50;
attribute(readonly, reportable) int32u rxErrUnknownNeighborCount = 51;
attribute(readonly, reportable) int32u rxErrInvalidSrcAddrCount = 52;
attribute(readonly, reportable) int32u rxErrSecCount = 53;
attribute(readonly, reportable) int32u rxErrFcsCount = 54;
attribute(readonly, reportable) int32u rxErrOtherCount = 55;
attribute(readonly, reportable) int64u activeTimestamp = 56;
attribute(readonly, reportable) int64u pendingTimestamp = 57;
attribute(readonly, reportable) int32u delay = 58;
attribute(readonly, reportable) SecurityPolicy securityPolicy[] = 59;
attribute(readonly, reportable) octet_string channelMask = 60;
attribute(readonly, reportable) OperationalDatasetComponents operationalDatasetComponents[] = 61;
attribute(readonly, reportable) NetworkFault activeNetworkFaultsList[] = 62;
attribute(readonly) bitmap32 featureMap = 65532;
attribute(readonly, reportable) int16u clusterRevision = 65533;
}
server cluster UserLabel = 65 {
attribute(writable) LabelStruct labelList[] = 0;
attribute(readonly) int16u clusterRevision = 65533;
}
server cluster WiFiNetworkDiagnostics = 54 {
enum AssociationFailureCause : ENUM8 {
kUnknown = 0;
kAssociationFailed = 1;
kAuthenticationFailed = 2;
kSsidNotFound = 3;
}
enum SecurityType : ENUM8 {
kUnspecified = 0;
kNone = 1;
kWep = 2;
kWpa = 3;
kWpa2 = 4;
kWpa3 = 5;
}
enum WiFiConnectionStatus : ENUM8 {
kConnected = 0;
kNotConnected = 1;
}
enum WiFiVersionType : ENUM8 {
k80211a = 0;
k80211b = 1;
k80211g = 2;
k80211n = 3;
k80211ac = 4;
k80211ax = 5;
}
info event Disconnection = 0 {
INT16U reasonCode = 0;
}
info event AssociationFailure = 1 {
AssociationFailureCause associationFailure = 0;
INT16U status = 1;
}
info event ConnectionStatus = 2 {
WiFiConnectionStatus connectionStatus = 0;
}
attribute(readonly, reportable) octet_string bssid = 0;
attribute(readonly, reportable) enum8 securityType = 1;
attribute(readonly, reportable) enum8 wiFiVersion = 2;
attribute(readonly, reportable) int16u channelNumber = 3;
attribute(readonly, reportable) int8s rssi = 4;
attribute(readonly, reportable) int32u beaconLostCount = 5;
attribute(readonly, reportable) int32u beaconRxCount = 6;
attribute(readonly, reportable) int32u packetMulticastRxCount = 7;
attribute(readonly, reportable) int32u packetMulticastTxCount = 8;
attribute(readonly, reportable) int32u packetUnicastRxCount = 9;
attribute(readonly, reportable) int32u packetUnicastTxCount = 10;
attribute(readonly, reportable) int64u currentMaxRate = 11;
attribute(readonly, reportable) int64u overrunCount = 12;
attribute(readonly) bitmap32 featureMap = 65532;
attribute(readonly, reportable) int16u clusterRevision = 65533;
}
endpoint 0 {
}
endpoint 1 {
}