@@ -1375,6 +1375,9 @@ cluster GeneralCommissioning = 48 {
1375
1375
kInvalidAuthentication = 2;
1376
1376
kNoFailSafe = 3;
1377
1377
kBusyWithOtherAdmin = 4;
1378
+ kRequiredTCNotAccepted = 5;
1379
+ kTCAcknowledgementsNotReceived = 6;
1380
+ kTCMinVersionNotMet = 7;
1378
1381
}
1379
1382
1380
1383
enum RegulatoryLocationTypeEnum : enum8 {
@@ -1383,6 +1386,10 @@ cluster GeneralCommissioning = 48 {
1383
1386
kIndoorOutdoor = 2;
1384
1387
}
1385
1388
1389
+ bitmap Feature : bitmap32 {
1390
+ kTermsAndConditions = 0x1;
1391
+ }
1392
+
1386
1393
struct BasicCommissioningInfo {
1387
1394
int16u failSafeExpiryLengthSeconds = 0;
1388
1395
int16u maxCumulativeFailsafeSeconds = 1;
@@ -1393,6 +1400,10 @@ cluster GeneralCommissioning = 48 {
1393
1400
readonly attribute RegulatoryLocationTypeEnum regulatoryConfig = 2;
1394
1401
readonly attribute RegulatoryLocationTypeEnum locationCapability = 3;
1395
1402
readonly attribute boolean supportsConcurrentConnection = 4;
1403
+ provisional readonly attribute access(read: administer) optional int16u TCAcceptedVersion = 5;
1404
+ provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
1405
+ provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
1406
+ provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
1396
1407
readonly attribute command_id generatedCommandList[] = 65528;
1397
1408
readonly attribute command_id acceptedCommandList[] = 65529;
1398
1409
readonly attribute event_id eventList[] = 65530;
@@ -1426,12 +1437,23 @@ cluster GeneralCommissioning = 48 {
1426
1437
char_string debugText = 1;
1427
1438
}
1428
1439
1440
+ request struct SetTCAcknowledgementsRequest {
1441
+ int16u TCVersion = 0;
1442
+ bitmap16 TCUserResponse = 1;
1443
+ }
1444
+
1445
+ response struct SetTCAcknowledgementsResponse = 7 {
1446
+ CommissioningErrorEnum errorCode = 0;
1447
+ }
1448
+
1429
1449
/** Arm the persistent fail-safe timer with an expiry time of now + ExpiryLengthSeconds using device clock */
1430
1450
command access(invoke: administer) ArmFailSafe(ArmFailSafeRequest): ArmFailSafeResponse = 0;
1431
1451
/** Set the regulatory configuration to be used during commissioning */
1432
1452
command access(invoke: administer) SetRegulatoryConfig(SetRegulatoryConfigRequest): SetRegulatoryConfigResponse = 2;
1433
1453
/** Signals the Server that the Client has successfully completed all steps of Commissioning/Recofiguration needed during fail-safe period. */
1434
1454
fabric command access(invoke: administer) CommissioningComplete(): CommissioningCompleteResponse = 4;
1455
+ /** This command sets the user acknowledgements received in the Enhanced Setup Flow Terms and Conditions into the node. */
1456
+ command access(invoke: administer) SetTCAcknowledgements(SetTCAcknowledgementsRequest): SetTCAcknowledgementsResponse = 6;
1435
1457
}
1436
1458
1437
1459
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
0 commit comments