matter-python-client 1.1.7__py3-none-any.whl → 1.1.8a0.dev20260706__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. chip/clusters/Objects.py +3 -0
  2. chip/clusters/cluster_defs/AccessControl.py +51 -0
  3. chip/clusters/cluster_defs/AmbientContextSensing.py +464 -0
  4. chip/clusters/cluster_defs/BasicInformation.py +8 -0
  5. chip/clusters/cluster_defs/BooleanState.py +4 -0
  6. chip/clusters/cluster_defs/BooleanStateConfiguration.py +1 -0
  7. chip/clusters/cluster_defs/BridgedDeviceBasicInformation.py +8 -0
  8. chip/clusters/cluster_defs/CameraAvStreamManagement.py +18 -0
  9. chip/clusters/cluster_defs/GeneralDiagnostics.py +37 -0
  10. chip/clusters/cluster_defs/Globals.py +14 -1
  11. chip/clusters/cluster_defs/GroupKeyManagement.py +32 -0
  12. chip/clusters/cluster_defs/Groupcast.py +443 -0
  13. chip/clusters/cluster_defs/JointFabricAdministrator.py +17 -14
  14. chip/clusters/cluster_defs/JointFabricDatastore.py +73 -76
  15. chip/clusters/cluster_defs/NetworkCommissioning.py +24 -24
  16. chip/clusters/cluster_defs/OccupancySensing.py +1 -0
  17. chip/clusters/cluster_defs/PowerTopology.py +0 -18
  18. chip/clusters/cluster_defs/PushAvStreamTransport.py +0 -4
  19. chip/clusters/cluster_defs/SmokeCoAlarm.py +20 -1
  20. chip/clusters/cluster_defs/TemperatureAlarm.py +422 -0
  21. chip/clusters/cluster_defs/Thermostat.py +324 -0
  22. chip/clusters/cluster_defs/WebRtcTransportProvider.py +0 -20
  23. chip/clusters/cluster_defs/__init__.py +6 -0
  24. {matter_python_client-1.1.7.dist-info → matter_python_client-1.1.8a0.dev20260706.dist-info}/METADATA +1 -1
  25. {matter_python_client-1.1.7.dist-info → matter_python_client-1.1.8a0.dev20260706.dist-info}/RECORD +28 -25
  26. {matter_python_client-1.1.7.dist-info → matter_python_client-1.1.8a0.dev20260706.dist-info}/WHEEL +1 -1
  27. matter_server/client/models/device_types.py +2 -0
  28. {matter_python_client-1.1.7.dist-info → matter_python_client-1.1.8a0.dev20260706.dist-info}/top_level.txt +0 -0
chip/clusters/Objects.py CHANGED
@@ -39,6 +39,7 @@ __all__ = [
39
39
  "ActivatedCarbonFilterMonitoring",
40
40
  "AdministratorCommissioning",
41
41
  "AirQuality",
42
+ "AmbientContextSensing",
42
43
  "ApplicationBasic",
43
44
  "ApplicationLauncher",
44
45
  "AudioOutput",
@@ -87,6 +88,7 @@ __all__ = [
87
88
  "GeneralCommissioning",
88
89
  "GeneralDiagnostics",
89
90
  "GroupKeyManagement",
91
+ "Groupcast",
90
92
  "Groups",
91
93
  "HeimanCluster",
92
94
  "HepaFilterMonitoring",
@@ -146,6 +148,7 @@ __all__ = [
146
148
  "Switch",
147
149
  "TargetNavigator",
148
150
  "TclDehumidifierCluster",
151
+ "TemperatureAlarm",
149
152
  "TemperatureControl",
150
153
  "TemperatureMeasurement",
151
154
  "Thermostat",
@@ -29,6 +29,7 @@ class AccessControl(Cluster):
29
29
  ClusterObjectFieldDescriptor(Label="accessControlEntriesPerFabric", Tag=0x00000004, Type=uint),
30
30
  ClusterObjectFieldDescriptor(Label="commissioningARL", Tag=0x00000005, Type=typing.Optional[typing.List[AccessControl.Structs.CommissioningAccessRestrictionEntryStruct]]),
31
31
  ClusterObjectFieldDescriptor(Label="arl", Tag=0x00000006, Type=typing.Optional[typing.List[AccessControl.Structs.AccessRestrictionEntryStruct]]),
32
+ ClusterObjectFieldDescriptor(Label="auxiliaryAcl", Tag=0x00000007, Type=typing.Optional[typing.List[AccessControl.Structs.AccessControlEntryStruct]]),
32
33
  ClusterObjectFieldDescriptor(Label="generatedCommandList", Tag=0x0000FFF8, Type=typing.List[uint]),
33
34
  ClusterObjectFieldDescriptor(Label="acceptedCommandList", Tag=0x0000FFF9, Type=typing.List[uint]),
34
35
  ClusterObjectFieldDescriptor(Label="eventList", Tag=0x0000FFFA, Type=typing.List[uint]),
@@ -44,6 +45,7 @@ class AccessControl(Cluster):
44
45
  accessControlEntriesPerFabric: uint = 0
45
46
  commissioningARL: typing.Optional[typing.List[AccessControl.Structs.CommissioningAccessRestrictionEntryStruct]] = None
46
47
  arl: typing.Optional[typing.List[AccessControl.Structs.AccessRestrictionEntryStruct]] = None
48
+ auxiliaryAcl: typing.Optional[typing.List[AccessControl.Structs.AccessControlEntryStruct]] = None
47
49
  generatedCommandList: typing.List[uint] = field(default_factory=lambda: [])
48
50
  acceptedCommandList: typing.List[uint] = field(default_factory=lambda: [])
49
51
  eventList: typing.List[uint] = field(default_factory=lambda: [])
@@ -95,10 +97,20 @@ class AccessControl(Cluster):
95
97
  # enum value. This specific value should never be transmitted.
96
98
  kUnknownEnumValue = 4
97
99
 
100
+ class AccessControlAuxiliaryTypeEnum(MatterIntEnum):
101
+ kSystem = 0x00
102
+ kGroupcast = 0x01
103
+ # All received enum values that are not listed above will be mapped
104
+ # to kUnknownEnumValue. This is a helper enum value that should only
105
+ # be used by code to process how it handles receiving an unknown
106
+ # enum value. This specific value should never be transmitted.
107
+ kUnknownEnumValue = 2
108
+
98
109
  class Bitmaps:
99
110
  class Feature(IntFlag):
100
111
  kExtension = 0x1
101
112
  kManagedDevice = 0x2
113
+ kAuxiliary = 0x4
102
114
 
103
115
  class Structs:
104
116
  @dataclass
@@ -126,6 +138,7 @@ class AccessControl(Cluster):
126
138
  ClusterObjectFieldDescriptor(Label="authMode", Tag=2, Type=AccessControl.Enums.AccessControlEntryAuthModeEnum),
127
139
  ClusterObjectFieldDescriptor(Label="subjects", Tag=3, Type=typing.Union[Nullable, typing.List[uint]]),
128
140
  ClusterObjectFieldDescriptor(Label="targets", Tag=4, Type=typing.Union[Nullable, typing.List[AccessControl.Structs.AccessControlTargetStruct]]),
141
+ ClusterObjectFieldDescriptor(Label="auxiliaryType", Tag=5, Type=typing.Optional[AccessControl.Enums.AccessControlAuxiliaryTypeEnum]),
129
142
  ClusterObjectFieldDescriptor(Label="fabricIndex", Tag=254, Type=uint),
130
143
  ])
131
144
 
@@ -133,6 +146,7 @@ class AccessControl(Cluster):
133
146
  authMode: AccessControl.Enums.AccessControlEntryAuthModeEnum = 0
134
147
  subjects: typing.Union[Nullable, typing.List[uint]] = NullValue
135
148
  targets: typing.Union[Nullable, typing.List[AccessControl.Structs.AccessControlTargetStruct]] = NullValue
149
+ auxiliaryType: typing.Optional[AccessControl.Enums.AccessControlAuxiliaryTypeEnum] = None
136
150
  fabricIndex: uint = 0
137
151
 
138
152
  @dataclass
@@ -339,6 +353,22 @@ class AccessControl(Cluster):
339
353
 
340
354
  value: typing.Optional[typing.List[AccessControl.Structs.AccessRestrictionEntryStruct]] = None
341
355
 
356
+ @dataclass
357
+ class AuxiliaryAcl(ClusterAttributeDescriptor):
358
+ @ChipUtility.classproperty
359
+ def cluster_id(cls) -> int:
360
+ return 0x0000001F
361
+
362
+ @ChipUtility.classproperty
363
+ def attribute_id(cls) -> int:
364
+ return 0x00000007
365
+
366
+ @ChipUtility.classproperty
367
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
368
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[typing.List[AccessControl.Structs.AccessControlEntryStruct]])
369
+
370
+ value: typing.Optional[typing.List[AccessControl.Structs.AccessControlEntryStruct]] = None
371
+
342
372
  @dataclass
343
373
  class GeneratedCommandList(ClusterAttributeDescriptor):
344
374
  @ChipUtility.classproperty
@@ -514,3 +544,24 @@ class AccessControl(Cluster):
514
544
  instruction: typing.Optional[str] = None
515
545
  ARLRequestFlowUrl: typing.Optional[str] = None
516
546
  fabricIndex: uint = 0
547
+
548
+ @dataclass
549
+ class AuxiliaryAccessUpdated(ClusterEvent):
550
+ @ChipUtility.classproperty
551
+ def cluster_id(cls) -> int:
552
+ return 0x0000001F
553
+
554
+ @ChipUtility.classproperty
555
+ def event_id(cls) -> int:
556
+ return 0x00000003
557
+
558
+ @ChipUtility.classproperty
559
+ def descriptor(cls) -> ClusterObjectDescriptor:
560
+ return ClusterObjectDescriptor(
561
+ Fields=[
562
+ ClusterObjectFieldDescriptor(Label="adminNodeID", Tag=0, Type=typing.Union[Nullable, uint]),
563
+ ClusterObjectFieldDescriptor(Label="fabricIndex", Tag=254, Type=uint),
564
+ ])
565
+
566
+ adminNodeID: typing.Union[Nullable, uint] = NullValue
567
+ fabricIndex: uint = 0
@@ -0,0 +1,464 @@
1
+ """AmbientContextSensing cluster definition (auto-generated, DO NOT edit)."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import typing
6
+ from dataclasses import dataclass, field
7
+ from enum import IntFlag
8
+
9
+ from ... import ChipUtility
10
+ from ...clusters.enum import MatterIntEnum
11
+ from ...tlv import float32, uint
12
+ from ..ClusterObjects import (Cluster, ClusterAttributeDescriptor, ClusterCommand, ClusterEvent, ClusterObject,
13
+ ClusterObjectDescriptor, ClusterObjectFieldDescriptor)
14
+ from ..Types import Nullable, NullValue
15
+ from .ModeSelect import ModeSelect
16
+
17
+
18
+ @dataclass
19
+ class AmbientContextSensing(Cluster):
20
+ id: typing.ClassVar[int] = 0x00000431
21
+
22
+ @ChipUtility.classproperty
23
+ def descriptor(cls) -> ClusterObjectDescriptor:
24
+ return ClusterObjectDescriptor(
25
+ Fields=[
26
+ ClusterObjectFieldDescriptor(Label="humanActivityDetected", Tag=0x00000000, Type=typing.Optional[bool]),
27
+ ClusterObjectFieldDescriptor(Label="objectIdentified", Tag=0x00000001, Type=typing.Optional[bool]),
28
+ ClusterObjectFieldDescriptor(Label="audioContextDetected", Tag=0x00000002, Type=typing.Optional[bool]),
29
+ ClusterObjectFieldDescriptor(Label="ambientContextType", Tag=0x00000003, Type=typing.Optional[typing.List[AmbientContextSensing.Structs.AmbientContextTypeStruct]]),
30
+ ClusterObjectFieldDescriptor(Label="ambientContextTypeSupported", Tag=0x00000004, Type=typing.Optional[typing.List[ModeSelect.Structs.SemanticTagStruct]]),
31
+ ClusterObjectFieldDescriptor(Label="objectCountReached", Tag=0x00000005, Type=typing.Optional[bool]),
32
+ ClusterObjectFieldDescriptor(Label="objectCountConfig", Tag=0x00000006, Type=typing.Optional[AmbientContextSensing.Structs.ObjectCountConfigStruct]),
33
+ ClusterObjectFieldDescriptor(Label="objectCount", Tag=0x00000007, Type=typing.Optional[uint]),
34
+ ClusterObjectFieldDescriptor(Label="simultaneousDetectionLimit", Tag=0x00000008, Type=typing.Optional[uint]),
35
+ ClusterObjectFieldDescriptor(Label="holdTime", Tag=0x00000009, Type=typing.Optional[uint]),
36
+ ClusterObjectFieldDescriptor(Label="holdTimeLimits", Tag=0x0000000A, Type=typing.Optional[AmbientContextSensing.Structs.HoldTimeLimitsStruct]),
37
+ ClusterObjectFieldDescriptor(Label="predictedActivity", Tag=0x0000000B, Type=typing.Optional[typing.List[AmbientContextSensing.Structs.PredictedActivityStruct]]),
38
+ ClusterObjectFieldDescriptor(Label="generatedCommandList", Tag=0x0000FFF8, Type=typing.List[uint]),
39
+ ClusterObjectFieldDescriptor(Label="acceptedCommandList", Tag=0x0000FFF9, Type=typing.List[uint]),
40
+ ClusterObjectFieldDescriptor(Label="eventList", Tag=0x0000FFFA, Type=typing.List[uint]),
41
+ ClusterObjectFieldDescriptor(Label="attributeList", Tag=0x0000FFFB, Type=typing.List[uint]),
42
+ ClusterObjectFieldDescriptor(Label="featureMap", Tag=0x0000FFFC, Type=uint),
43
+ ClusterObjectFieldDescriptor(Label="clusterRevision", Tag=0x0000FFFD, Type=uint),
44
+ ])
45
+
46
+ humanActivityDetected: typing.Optional[bool] = None
47
+ objectIdentified: typing.Optional[bool] = None
48
+ audioContextDetected: typing.Optional[bool] = None
49
+ ambientContextType: typing.Optional[typing.List[AmbientContextSensing.Structs.AmbientContextTypeStruct]] = None
50
+ ambientContextTypeSupported: typing.Optional[typing.List[ModeSelect.Structs.SemanticTagStruct]] = None
51
+ objectCountReached: typing.Optional[bool] = None
52
+ objectCountConfig: typing.Optional[AmbientContextSensing.Structs.ObjectCountConfigStruct] = None
53
+ objectCount: typing.Optional[uint] = None
54
+ simultaneousDetectionLimit: typing.Optional[uint] = None
55
+ holdTime: typing.Optional[uint] = None
56
+ holdTimeLimits: typing.Optional[AmbientContextSensing.Structs.HoldTimeLimitsStruct] = None
57
+ predictedActivity: typing.Optional[typing.List[AmbientContextSensing.Structs.PredictedActivityStruct]] = None
58
+ generatedCommandList: typing.List[uint] = field(default_factory=lambda: [])
59
+ acceptedCommandList: typing.List[uint] = field(default_factory=lambda: [])
60
+ eventList: typing.List[uint] = field(default_factory=lambda: [])
61
+ attributeList: typing.List[uint] = field(default_factory=lambda: [])
62
+ featureMap: uint = 0
63
+ clusterRevision: uint = 0
64
+
65
+ class Bitmaps:
66
+ class Feature(IntFlag):
67
+ kHumanActivity = 0x1
68
+ kObjectCounting = 0x2
69
+ kObjectIdentification = 0x4
70
+ kSoundIdentification = 0x8
71
+ kPredictedActivity = 0x10
72
+
73
+ class Structs:
74
+ @dataclass
75
+ class HoldTimeLimitsStruct(ClusterObject):
76
+ @ChipUtility.classproperty
77
+ def descriptor(cls) -> ClusterObjectDescriptor:
78
+ return ClusterObjectDescriptor(
79
+ Fields=[
80
+ ClusterObjectFieldDescriptor(Label="holdTimeMin", Tag=0, Type=typing.Optional[uint]),
81
+ ClusterObjectFieldDescriptor(Label="holdTimeMax", Tag=1, Type=typing.Optional[uint]),
82
+ ClusterObjectFieldDescriptor(Label="holdTimeDefault", Tag=2, Type=typing.Optional[uint]),
83
+ ])
84
+
85
+ holdTimeMin: typing.Optional[uint] = None
86
+ holdTimeMax: typing.Optional[uint] = None
87
+ holdTimeDefault: typing.Optional[uint] = None
88
+
89
+ @dataclass
90
+ class AmbientContextTypeStruct(ClusterObject):
91
+ @ChipUtility.classproperty
92
+ def descriptor(cls) -> ClusterObjectDescriptor:
93
+ return ClusterObjectDescriptor(
94
+ Fields=[
95
+ ClusterObjectFieldDescriptor(Label="ambientContextSensed", Tag=0, Type=typing.Optional[typing.List[ModeSelect.Structs.SemanticTagStruct]]),
96
+ ])
97
+
98
+ ambientContextSensed: typing.Optional[typing.List[ModeSelect.Structs.SemanticTagStruct]] = None
99
+
100
+ @dataclass
101
+ class ObjectCountConfigStruct(ClusterObject):
102
+ @ChipUtility.classproperty
103
+ def descriptor(cls) -> ClusterObjectDescriptor:
104
+ return ClusterObjectDescriptor(
105
+ Fields=[
106
+ ClusterObjectFieldDescriptor(Label="countingObject", Tag=0, Type=typing.Optional[ModeSelect.Structs.SemanticTagStruct]),
107
+ ClusterObjectFieldDescriptor(Label="objectCountThreshold", Tag=1, Type=typing.Optional[uint]),
108
+ ])
109
+
110
+ countingObject: typing.Optional[ModeSelect.Structs.SemanticTagStruct] = None
111
+ objectCountThreshold: typing.Optional[uint] = None
112
+
113
+ @dataclass
114
+ class PredictedActivityStruct(ClusterObject):
115
+ @ChipUtility.classproperty
116
+ def descriptor(cls) -> ClusterObjectDescriptor:
117
+ return ClusterObjectDescriptor(
118
+ Fields=[
119
+ ClusterObjectFieldDescriptor(Label="startTimestamp", Tag=0, Type=typing.Optional[uint]),
120
+ ClusterObjectFieldDescriptor(Label="endTimestamp", Tag=1, Type=typing.Optional[uint]),
121
+ ClusterObjectFieldDescriptor(Label="ambientContextType", Tag=2, Type=typing.Optional[typing.List[ModeSelect.Structs.SemanticTagStruct]]),
122
+ ClusterObjectFieldDescriptor(Label="crowdDetected", Tag=3, Type=typing.Optional[bool]),
123
+ ClusterObjectFieldDescriptor(Label="crowdCount", Tag=4, Type=typing.Optional[uint]),
124
+ ClusterObjectFieldDescriptor(Label="confidence", Tag=5, Type=typing.Optional[uint]),
125
+ ])
126
+
127
+ startTimestamp: typing.Optional[uint] = None
128
+ endTimestamp: typing.Optional[uint] = None
129
+ ambientContextType: typing.Optional[typing.List[ModeSelect.Structs.SemanticTagStruct]] = None
130
+ crowdDetected: typing.Optional[bool] = None
131
+ crowdCount: typing.Optional[uint] = None
132
+ confidence: typing.Optional[uint] = None
133
+
134
+ class Attributes:
135
+ @dataclass
136
+ class HumanActivityDetected(ClusterAttributeDescriptor):
137
+ @ChipUtility.classproperty
138
+ def cluster_id(cls) -> int:
139
+ return 0x00000431
140
+
141
+ @ChipUtility.classproperty
142
+ def attribute_id(cls) -> int:
143
+ return 0x00000000
144
+
145
+ @ChipUtility.classproperty
146
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
147
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[bool])
148
+
149
+ value: typing.Optional[bool] = None
150
+
151
+ @dataclass
152
+ class ObjectIdentified(ClusterAttributeDescriptor):
153
+ @ChipUtility.classproperty
154
+ def cluster_id(cls) -> int:
155
+ return 0x00000431
156
+
157
+ @ChipUtility.classproperty
158
+ def attribute_id(cls) -> int:
159
+ return 0x00000001
160
+
161
+ @ChipUtility.classproperty
162
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
163
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[bool])
164
+
165
+ value: typing.Optional[bool] = None
166
+
167
+ @dataclass
168
+ class AudioContextDetected(ClusterAttributeDescriptor):
169
+ @ChipUtility.classproperty
170
+ def cluster_id(cls) -> int:
171
+ return 0x00000431
172
+
173
+ @ChipUtility.classproperty
174
+ def attribute_id(cls) -> int:
175
+ return 0x00000002
176
+
177
+ @ChipUtility.classproperty
178
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
179
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[bool])
180
+
181
+ value: typing.Optional[bool] = None
182
+
183
+ @dataclass
184
+ class AmbientContextType(ClusterAttributeDescriptor):
185
+ @ChipUtility.classproperty
186
+ def cluster_id(cls) -> int:
187
+ return 0x00000431
188
+
189
+ @ChipUtility.classproperty
190
+ def attribute_id(cls) -> int:
191
+ return 0x00000003
192
+
193
+ @ChipUtility.classproperty
194
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
195
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[typing.List[AmbientContextSensing.Structs.AmbientContextTypeStruct]])
196
+
197
+ value: typing.Optional[typing.List[AmbientContextSensing.Structs.AmbientContextTypeStruct]] = None
198
+
199
+ @dataclass
200
+ class AmbientContextTypeSupported(ClusterAttributeDescriptor):
201
+ @ChipUtility.classproperty
202
+ def cluster_id(cls) -> int:
203
+ return 0x00000431
204
+
205
+ @ChipUtility.classproperty
206
+ def attribute_id(cls) -> int:
207
+ return 0x00000004
208
+
209
+ @ChipUtility.classproperty
210
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
211
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[typing.List[ModeSelect.Structs.SemanticTagStruct]])
212
+
213
+ value: typing.Optional[typing.List[ModeSelect.Structs.SemanticTagStruct]] = None
214
+
215
+ @dataclass
216
+ class ObjectCountReached(ClusterAttributeDescriptor):
217
+ @ChipUtility.classproperty
218
+ def cluster_id(cls) -> int:
219
+ return 0x00000431
220
+
221
+ @ChipUtility.classproperty
222
+ def attribute_id(cls) -> int:
223
+ return 0x00000005
224
+
225
+ @ChipUtility.classproperty
226
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
227
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[bool])
228
+
229
+ value: typing.Optional[bool] = None
230
+
231
+ @dataclass
232
+ class ObjectCountConfig(ClusterAttributeDescriptor):
233
+ @ChipUtility.classproperty
234
+ def cluster_id(cls) -> int:
235
+ return 0x00000431
236
+
237
+ @ChipUtility.classproperty
238
+ def attribute_id(cls) -> int:
239
+ return 0x00000006
240
+
241
+ @ChipUtility.classproperty
242
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
243
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[AmbientContextSensing.Structs.ObjectCountConfigStruct])
244
+
245
+ value: typing.Optional[AmbientContextSensing.Structs.ObjectCountConfigStruct] = None
246
+
247
+ @dataclass
248
+ class ObjectCount(ClusterAttributeDescriptor):
249
+ @ChipUtility.classproperty
250
+ def cluster_id(cls) -> int:
251
+ return 0x00000431
252
+
253
+ @ChipUtility.classproperty
254
+ def attribute_id(cls) -> int:
255
+ return 0x00000007
256
+
257
+ @ChipUtility.classproperty
258
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
259
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[uint])
260
+
261
+ value: typing.Optional[uint] = None
262
+
263
+ @dataclass
264
+ class SimultaneousDetectionLimit(ClusterAttributeDescriptor):
265
+ @ChipUtility.classproperty
266
+ def cluster_id(cls) -> int:
267
+ return 0x00000431
268
+
269
+ @ChipUtility.classproperty
270
+ def attribute_id(cls) -> int:
271
+ return 0x00000008
272
+
273
+ @ChipUtility.classproperty
274
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
275
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[uint])
276
+
277
+ value: typing.Optional[uint] = None
278
+
279
+ @dataclass
280
+ class HoldTime(ClusterAttributeDescriptor):
281
+ @ChipUtility.classproperty
282
+ def cluster_id(cls) -> int:
283
+ return 0x00000431
284
+
285
+ @ChipUtility.classproperty
286
+ def attribute_id(cls) -> int:
287
+ return 0x00000009
288
+
289
+ @ChipUtility.classproperty
290
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
291
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[uint])
292
+
293
+ value: typing.Optional[uint] = None
294
+
295
+ @dataclass
296
+ class HoldTimeLimits(ClusterAttributeDescriptor):
297
+ @ChipUtility.classproperty
298
+ def cluster_id(cls) -> int:
299
+ return 0x00000431
300
+
301
+ @ChipUtility.classproperty
302
+ def attribute_id(cls) -> int:
303
+ return 0x0000000A
304
+
305
+ @ChipUtility.classproperty
306
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
307
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[AmbientContextSensing.Structs.HoldTimeLimitsStruct])
308
+
309
+ value: typing.Optional[AmbientContextSensing.Structs.HoldTimeLimitsStruct] = None
310
+
311
+ @dataclass
312
+ class PredictedActivity(ClusterAttributeDescriptor):
313
+ @ChipUtility.classproperty
314
+ def cluster_id(cls) -> int:
315
+ return 0x00000431
316
+
317
+ @ChipUtility.classproperty
318
+ def attribute_id(cls) -> int:
319
+ return 0x0000000B
320
+
321
+ @ChipUtility.classproperty
322
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
323
+ return ClusterObjectFieldDescriptor(Type=typing.Optional[typing.List[AmbientContextSensing.Structs.PredictedActivityStruct]])
324
+
325
+ value: typing.Optional[typing.List[AmbientContextSensing.Structs.PredictedActivityStruct]] = None
326
+
327
+ @dataclass
328
+ class GeneratedCommandList(ClusterAttributeDescriptor):
329
+ @ChipUtility.classproperty
330
+ def cluster_id(cls) -> int:
331
+ return 0x00000431
332
+
333
+ @ChipUtility.classproperty
334
+ def attribute_id(cls) -> int:
335
+ return 0x0000FFF8
336
+
337
+ @ChipUtility.classproperty
338
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
339
+ return ClusterObjectFieldDescriptor(Type=typing.List[uint])
340
+
341
+ value: typing.List[uint] = field(default_factory=lambda: [])
342
+
343
+ @dataclass
344
+ class AcceptedCommandList(ClusterAttributeDescriptor):
345
+ @ChipUtility.classproperty
346
+ def cluster_id(cls) -> int:
347
+ return 0x00000431
348
+
349
+ @ChipUtility.classproperty
350
+ def attribute_id(cls) -> int:
351
+ return 0x0000FFF9
352
+
353
+ @ChipUtility.classproperty
354
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
355
+ return ClusterObjectFieldDescriptor(Type=typing.List[uint])
356
+
357
+ value: typing.List[uint] = field(default_factory=lambda: [])
358
+
359
+ @dataclass
360
+ class EventList(ClusterAttributeDescriptor):
361
+ @ChipUtility.classproperty
362
+ def cluster_id(cls) -> int:
363
+ return 0x00000431
364
+
365
+ @ChipUtility.classproperty
366
+ def attribute_id(cls) -> int:
367
+ return 0x0000FFFA
368
+
369
+ @ChipUtility.classproperty
370
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
371
+ return ClusterObjectFieldDescriptor(Type=typing.List[uint])
372
+
373
+ value: typing.List[uint] = field(default_factory=lambda: [])
374
+
375
+ @dataclass
376
+ class AttributeList(ClusterAttributeDescriptor):
377
+ @ChipUtility.classproperty
378
+ def cluster_id(cls) -> int:
379
+ return 0x00000431
380
+
381
+ @ChipUtility.classproperty
382
+ def attribute_id(cls) -> int:
383
+ return 0x0000FFFB
384
+
385
+ @ChipUtility.classproperty
386
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
387
+ return ClusterObjectFieldDescriptor(Type=typing.List[uint])
388
+
389
+ value: typing.List[uint] = field(default_factory=lambda: [])
390
+
391
+ @dataclass
392
+ class FeatureMap(ClusterAttributeDescriptor):
393
+ @ChipUtility.classproperty
394
+ def cluster_id(cls) -> int:
395
+ return 0x00000431
396
+
397
+ @ChipUtility.classproperty
398
+ def attribute_id(cls) -> int:
399
+ return 0x0000FFFC
400
+
401
+ @ChipUtility.classproperty
402
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
403
+ return ClusterObjectFieldDescriptor(Type=uint)
404
+
405
+ value: uint = 0
406
+
407
+ @dataclass
408
+ class ClusterRevision(ClusterAttributeDescriptor):
409
+ @ChipUtility.classproperty
410
+ def cluster_id(cls) -> int:
411
+ return 0x00000431
412
+
413
+ @ChipUtility.classproperty
414
+ def attribute_id(cls) -> int:
415
+ return 0x0000FFFD
416
+
417
+ @ChipUtility.classproperty
418
+ def attribute_type(cls) -> ClusterObjectFieldDescriptor:
419
+ return ClusterObjectFieldDescriptor(Type=uint)
420
+
421
+ value: uint = 0
422
+
423
+ class Events:
424
+ @dataclass
425
+ class AmbientContextDetectStarted(ClusterEvent):
426
+ @ChipUtility.classproperty
427
+ def cluster_id(cls) -> int:
428
+ return 0x00000431
429
+
430
+ @ChipUtility.classproperty
431
+ def event_id(cls) -> int:
432
+ return 0x00000000
433
+
434
+ @ChipUtility.classproperty
435
+ def descriptor(cls) -> ClusterObjectDescriptor:
436
+ return ClusterObjectDescriptor(
437
+ Fields=[
438
+ ClusterObjectFieldDescriptor(Label="ambientContextDetected", Tag=0, Type=typing.Optional[AmbientContextSensing.Structs.AmbientContextTypeStruct]),
439
+ ClusterObjectFieldDescriptor(Label="objectCountReached", Tag=1, Type=typing.Optional[bool]),
440
+ ClusterObjectFieldDescriptor(Label="objectCount", Tag=2, Type=typing.Optional[uint]),
441
+ ])
442
+
443
+ ambientContextDetected: typing.Optional[AmbientContextSensing.Structs.AmbientContextTypeStruct] = None
444
+ objectCountReached: typing.Optional[bool] = None
445
+ objectCount: typing.Optional[uint] = None
446
+
447
+ @dataclass
448
+ class AmbientContextDetectEnded(ClusterEvent):
449
+ @ChipUtility.classproperty
450
+ def cluster_id(cls) -> int:
451
+ return 0x00000431
452
+
453
+ @ChipUtility.classproperty
454
+ def event_id(cls) -> int:
455
+ return 0x00000001
456
+
457
+ @ChipUtility.classproperty
458
+ def descriptor(cls) -> ClusterObjectDescriptor:
459
+ return ClusterObjectDescriptor(
460
+ Fields=[
461
+ ClusterObjectFieldDescriptor(Label="eventStartTime", Tag=0, Type=typing.Optional[uint]),
462
+ ])
463
+
464
+ eventStartTime: typing.Optional[uint] = None
@@ -149,10 +149,18 @@ class BasicInformation(Cluster):
149
149
  Fields=[
150
150
  ClusterObjectFieldDescriptor(Label="caseSessionsPerFabric", Tag=0, Type=uint),
151
151
  ClusterObjectFieldDescriptor(Label="subscriptionsPerFabric", Tag=1, Type=uint),
152
+ ClusterObjectFieldDescriptor(Label="simultaneousInvocationsSupported", Tag=2, Type=typing.Optional[uint]),
153
+ ClusterObjectFieldDescriptor(Label="simultaneousWritesSupported", Tag=3, Type=typing.Optional[uint]),
154
+ ClusterObjectFieldDescriptor(Label="readPathsSupported", Tag=4, Type=typing.Optional[uint]),
155
+ ClusterObjectFieldDescriptor(Label="subscribePathsSupported", Tag=5, Type=typing.Optional[uint]),
152
156
  ])
153
157
 
154
158
  caseSessionsPerFabric: uint = 0
155
159
  subscriptionsPerFabric: uint = 0
160
+ simultaneousInvocationsSupported: typing.Optional[uint] = None
161
+ simultaneousWritesSupported: typing.Optional[uint] = None
162
+ readPathsSupported: typing.Optional[uint] = None
163
+ subscribePathsSupported: typing.Optional[uint] = None
156
164
 
157
165
  class Attributes:
158
166
  @dataclass
@@ -39,6 +39,10 @@ class BooleanState(Cluster):
39
39
  featureMap: uint = 0
40
40
  clusterRevision: uint = 0
41
41
 
42
+ class Bitmaps:
43
+ class Feature(IntFlag):
44
+ kChangeEvent = 0x1
45
+
42
46
  class Attributes:
43
47
  @dataclass
44
48
  class StateValue(ClusterAttributeDescriptor):
@@ -59,6 +59,7 @@ class BooleanStateConfiguration(Cluster):
59
59
  kAudible = 0x2
60
60
  kAlarmSuppress = 0x4
61
61
  kSensitivityLevel = 0x8
62
+ kFaultEvents = 0x10
62
63
 
63
64
  class AlarmModeBitmap(IntFlag):
64
65
  kVisual = 0x1
@@ -153,10 +153,18 @@ class BridgedDeviceBasicInformation(Cluster):
153
153
  Fields=[
154
154
  ClusterObjectFieldDescriptor(Label="caseSessionsPerFabric", Tag=0, Type=uint),
155
155
  ClusterObjectFieldDescriptor(Label="subscriptionsPerFabric", Tag=1, Type=uint),
156
+ ClusterObjectFieldDescriptor(Label="simultaneousInvocationsSupported", Tag=2, Type=typing.Optional[uint]),
157
+ ClusterObjectFieldDescriptor(Label="simultaneousWritesSupported", Tag=3, Type=typing.Optional[uint]),
158
+ ClusterObjectFieldDescriptor(Label="readPathsSupported", Tag=4, Type=typing.Optional[uint]),
159
+ ClusterObjectFieldDescriptor(Label="subscribePathsSupported", Tag=5, Type=typing.Optional[uint]),
156
160
  ])
157
161
 
158
162
  caseSessionsPerFabric: uint = 0
159
163
  subscriptionsPerFabric: uint = 0
164
+ simultaneousInvocationsSupported: typing.Optional[uint] = None
165
+ simultaneousWritesSupported: typing.Optional[uint] = None
166
+ readPathsSupported: typing.Optional[uint] = None
167
+ subscribePathsSupported: typing.Optional[uint] = None
160
168
 
161
169
  class Commands:
162
170
  @dataclass