Skip to content

Commit

Permalink
[spec] Make temperature measurement app cluster definitions spec-comp…
Browse files Browse the repository at this point in the history
…liant (#19366)
  • Loading branch information
shubhamdp authored and pull[bot] committed Jul 9, 2022
1 parent bbbb9ec commit 2594537
Show file tree
Hide file tree
Showing 8 changed files with 457 additions and 18 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -223,6 +223,8 @@ server cluster EthernetNetworkDiagnostics = 55 {
readonly attribute int64u timeSinceReset = 8;
readonly attribute bitmap32 featureMap = 65532;
readonly attribute int16u clusterRevision = 65533;

command ResetCounts(): DefaultSuccess = 0;
}

server cluster FixedLabel = 64 {
Expand Down Expand Up @@ -389,6 +391,73 @@ server cluster GeneralDiagnostics = 51 {
command TestEventTrigger(TestEventTriggerRequest): DefaultSuccess = 0;
}

server cluster GroupKeyManagement = 63 {
enum GroupKeySecurityPolicy : ENUM8 {
kTrustFirst = 0;
kCacheAndSync = 1;
}

struct GroupKeyMapStruct {
group_id groupId = 1;
int16u groupKeySetID = 2;
fabric_idx fabricIndex = 254;
}

struct GroupInfoMapStruct {
group_id groupId = 1;
endpoint_no endpoints[] = 2;
optional char_string<16> groupName = 3;
fabric_idx fabricIndex = 254;
}

struct GroupKeySetStruct {
int16u groupKeySetID = 0;
GroupKeySecurityPolicy groupKeySecurityPolicy = 1;
nullable octet_string<16> epochKey0 = 2;
nullable epoch_us epochStartTime0 = 3;
nullable octet_string<16> epochKey1 = 4;
nullable epoch_us epochStartTime1 = 5;
nullable octet_string<16> epochKey2 = 6;
nullable epoch_us epochStartTime2 = 7;
}

attribute access(write: manage) GroupKeyMapStruct groupKeyMap[] = 0;
readonly attribute GroupInfoMapStruct groupTable[] = 1;
readonly attribute int16u maxGroupsPerFabric = 2;
readonly attribute int16u maxGroupKeysPerFabric = 3;
readonly attribute bitmap32 featureMap = 65532;
readonly attribute int16u clusterRevision = 65533;

request struct KeySetWriteRequest {
GroupKeySetStruct groupKeySet = 0;
}

request struct KeySetReadRequest {
INT16U groupKeySetID = 0;
}

request struct KeySetRemoveRequest {
INT16U groupKeySetID = 0;
}

request struct KeySetReadAllIndicesRequest {
INT16U groupKeySetIDs[] = 0;
}

response struct KeySetReadResponse = 2 {
GroupKeySetStruct groupKeySet = 0;
}

response struct KeySetReadAllIndicesResponse = 5 {
INT16U groupKeySetIDs[] = 0;
}

command access(invoke: administer) KeySetWrite(KeySetWriteRequest): DefaultSuccess = 0;
command access(invoke: administer) KeySetRead(KeySetReadRequest): KeySetReadResponse = 1;
command access(invoke: administer) KeySetRemove(KeySetRemoveRequest): DefaultSuccess = 3;
command access(invoke: administer) KeySetReadAllIndices(KeySetReadAllIndicesRequest): KeySetReadAllIndicesResponse = 4;
}

server cluster LocalizationConfiguration = 43 {
attribute char_string<35> activeLocale = 0;
readonly attribute CHAR_STRING supportedLocales[] = 1;
Expand Down Expand Up @@ -932,6 +1001,15 @@ endpoint 0 {
ram attribute clusterRevision default = 1;
}

server cluster GroupKeyManagement {
callback attribute groupKeyMap;
callback attribute groupTable;
callback attribute maxGroupsPerFabric;
callback attribute maxGroupKeysPerFabric;
ram attribute featureMap;
ram attribute clusterRevision default = 1;
}

server cluster FixedLabel {
callback attribute labelList;
ram attribute featureMap;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2494,7 +2494,7 @@
"code": 0,
"mfgCode": null,
"source": "client",
"incoming": 0,
"incoming": 1,
"outgoing": 1
}
],
Expand Down Expand Up @@ -3111,6 +3111,190 @@
}
]
},
{
"name": "Group Key Management",
"code": 63,
"mfgCode": null,
"define": "GROUP_KEY_MANAGEMENT_CLUSTER",
"side": "client",
"enabled": 0,
"commands": [
{
"name": "KeySetWrite",
"code": 0,
"mfgCode": null,
"source": "client",
"incoming": 1,
"outgoing": 0
},
{
"name": "KeySetRead",
"code": 1,
"mfgCode": null,
"source": "client",
"incoming": 1,
"outgoing": 0
},
{
"name": "KeySetRemove",
"code": 3,
"mfgCode": null,
"source": "client",
"incoming": 1,
"outgoing": 0
},
{
"name": "KeySetReadAllIndices",
"code": 4,
"mfgCode": null,
"source": "client",
"incoming": 1,
"outgoing": 0
}
],
"attributes": [
{
"name": "ClusterRevision",
"code": 65533,
"mfgCode": null,
"side": "client",
"type": "int16u",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
"bounded": 0,
"defaultValue": "1",
"reportable": 1,
"minInterval": 0,
"maxInterval": 65344,
"reportableChange": 0
}
]
},
{
"name": "Group Key Management",
"code": 63,
"mfgCode": null,
"define": "GROUP_KEY_MANAGEMENT_CLUSTER",
"side": "server",
"enabled": 1,
"commands": [
{
"name": "KeySetReadResponse",
"code": 2,
"mfgCode": null,
"source": "server",
"incoming": 0,
"outgoing": 1
},
{
"name": "KeySetReadAllIndicesResponse",
"code": 5,
"mfgCode": null,
"source": "server",
"incoming": 0,
"outgoing": 1
}
],
"attributes": [
{
"name": "GroupKeyMap",
"code": 0,
"mfgCode": null,
"side": "server",
"type": "array",
"included": 1,
"storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
"reportable": 1,
"minInterval": 0,
"maxInterval": 65344,
"reportableChange": 0
},
{
"name": "GroupTable",
"code": 1,
"mfgCode": null,
"side": "server",
"type": "array",
"included": 1,
"storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
"reportable": 1,
"minInterval": 0,
"maxInterval": 65344,
"reportableChange": 0
},
{
"name": "MaxGroupsPerFabric",
"code": 2,
"mfgCode": null,
"side": "server",
"type": "int16u",
"included": 1,
"storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
"reportable": 1,
"minInterval": 1,
"maxInterval": 65534,
"reportableChange": 0
},
{
"name": "MaxGroupKeysPerFabric",
"code": 3,
"mfgCode": null,
"side": "server",
"type": "int16u",
"included": 1,
"storageOption": "External",
"singleton": 0,
"bounded": 0,
"defaultValue": "",
"reportable": 1,
"minInterval": 1,
"maxInterval": 65534,
"reportableChange": 0
},
{
"name": "FeatureMap",
"code": 65532,
"mfgCode": null,
"side": "server",
"type": "bitmap32",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
"bounded": 0,
"defaultValue": "0",
"reportable": 1,
"minInterval": 1,
"maxInterval": 65534,
"reportableChange": 0
},
{
"name": "ClusterRevision",
"code": 65533,
"mfgCode": null,
"side": "server",
"type": "int16u",
"included": 1,
"storageOption": "RAM",
"singleton": 0,
"bounded": 0,
"defaultValue": "1",
"reportable": 1,
"minInterval": 0,
"maxInterval": 65344,
"reportableChange": 0
}
]
},
{
"name": "Fixed Label",
"code": 64,
Expand Down Expand Up @@ -4389,4 +4573,4 @@
"deviceIdentifier": 770
}
]
}
}
Loading

0 comments on commit 2594537

Please sign in to comment.