@@ -1440,6 +1440,9 @@ cluster GeneralCommissioning = 48 {
1440
1440
kInvalidAuthentication = 2;
1441
1441
kNoFailSafe = 3;
1442
1442
kBusyWithOtherAdmin = 4;
1443
+ kRequiredTCNotAccepted = 5;
1444
+ kTCAcknowledgementsNotReceived = 6;
1445
+ kTCMinVersionNotMet = 7;
1443
1446
}
1444
1447
1445
1448
enum RegulatoryLocationTypeEnum : enum8 {
@@ -1448,6 +1451,10 @@ cluster GeneralCommissioning = 48 {
1448
1451
kIndoorOutdoor = 2;
1449
1452
}
1450
1453
1454
+ bitmap Feature : bitmap32 {
1455
+ kTermsAndConditions = 0x1;
1456
+ }
1457
+
1451
1458
struct BasicCommissioningInfo {
1452
1459
int16u failSafeExpiryLengthSeconds = 0;
1453
1460
int16u maxCumulativeFailsafeSeconds = 1;
@@ -1458,6 +1465,10 @@ cluster GeneralCommissioning = 48 {
1458
1465
readonly attribute RegulatoryLocationTypeEnum regulatoryConfig = 2;
1459
1466
readonly attribute RegulatoryLocationTypeEnum locationCapability = 3;
1460
1467
readonly attribute boolean supportsConcurrentConnection = 4;
1468
+ provisional readonly attribute access(read: administer) optional int16u TCAcceptedVersion = 5;
1469
+ provisional readonly attribute access(read: administer) optional int16u TCMinRequiredVersion = 6;
1470
+ provisional readonly attribute access(read: administer) optional bitmap16 TCAcknowledgements = 7;
1471
+ provisional readonly attribute access(read: administer) optional boolean TCAcknowledgementsRequired = 8;
1461
1472
readonly attribute command_id generatedCommandList[] = 65528;
1462
1473
readonly attribute command_id acceptedCommandList[] = 65529;
1463
1474
readonly attribute event_id eventList[] = 65530;
@@ -1491,12 +1502,23 @@ cluster GeneralCommissioning = 48 {
1491
1502
char_string debugText = 1;
1492
1503
}
1493
1504
1505
+ request struct SetTCAcknowledgementsRequest {
1506
+ int16u TCVersion = 0;
1507
+ bitmap16 TCUserResponse = 1;
1508
+ }
1509
+
1510
+ response struct SetTCAcknowledgementsResponse = 7 {
1511
+ CommissioningErrorEnum errorCode = 0;
1512
+ }
1513
+
1494
1514
/** Arm the persistent fail-safe timer with an expiry time of now + ExpiryLengthSeconds using device clock */
1495
1515
command access(invoke: administer) ArmFailSafe(ArmFailSafeRequest): ArmFailSafeResponse = 0;
1496
1516
/** Set the regulatory configuration to be used during commissioning */
1497
1517
command access(invoke: administer) SetRegulatoryConfig(SetRegulatoryConfigRequest): SetRegulatoryConfigResponse = 2;
1498
1518
/** Signals the Server that the Client has successfully completed all steps of Commissioning/Recofiguration needed during fail-safe period. */
1499
1519
fabric command access(invoke: administer) CommissioningComplete(): CommissioningCompleteResponse = 4;
1520
+ /** This command sets the user acknowledgements received in the Enhanced Setup Flow Terms and Conditions into the node. */
1521
+ command access(invoke: administer) SetTCAcknowledgements(SetTCAcknowledgementsRequest): SetTCAcknowledgementsResponse = 6;
1500
1522
}
1501
1523
1502
1524
/** Functionality to configure, enable, disable network credentials and access on a Matter device. */
0 commit comments