matterbridge 1.2.12 → 1.2.14

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 (36) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/README.md +9 -4
  3. package/dist/BridgedDeviceBasicInformationCluster.d.ts +223 -0
  4. package/dist/BridgedDeviceBasicInformationCluster.d.ts.map +1 -0
  5. package/dist/BridgedDeviceBasicInformationCluster.js +176 -0
  6. package/dist/BridgedDeviceBasicInformationCluster.js.map +1 -0
  7. package/dist/defaultConfigSchema.d.ts +28 -0
  8. package/dist/defaultConfigSchema.d.ts.map +1 -0
  9. package/dist/defaultConfigSchema.js +217 -0
  10. package/dist/defaultConfigSchema.js.map +1 -0
  11. package/dist/matterbridge.d.ts +22 -0
  12. package/dist/matterbridge.d.ts.map +1 -1
  13. package/dist/matterbridge.js +284 -70
  14. package/dist/matterbridge.js.map +1 -1
  15. package/dist/matterbridgeAccessoryPlatform.d.ts.map +1 -1
  16. package/dist/matterbridgeAccessoryPlatform.js.map +1 -1
  17. package/dist/matterbridgeDevice.d.ts +60 -15
  18. package/dist/matterbridgeDevice.d.ts.map +1 -1
  19. package/dist/matterbridgeDevice.js +7 -3
  20. package/dist/matterbridgeDevice.js.map +1 -1
  21. package/dist/matterbridgePlatform.d.ts +1 -0
  22. package/dist/matterbridgePlatform.d.ts.map +1 -1
  23. package/dist/matterbridgePlatform.js +1 -0
  24. package/dist/matterbridgePlatform.js.map +1 -1
  25. package/frontend/build/asset-manifest.json +6 -6
  26. package/frontend/build/index.html +1 -1
  27. package/frontend/build/static/css/main.979e07d2.css +2 -0
  28. package/frontend/build/static/css/main.979e07d2.css.map +1 -0
  29. package/frontend/build/static/js/main.ed3f81ca.js +3 -0
  30. package/frontend/build/static/js/main.ed3f81ca.js.map +1 -0
  31. package/package.json +14 -8
  32. package/frontend/build/static/css/main.1880392b.css +0 -2
  33. package/frontend/build/static/css/main.1880392b.css.map +0 -1
  34. package/frontend/build/static/js/main.0c70c26b.js +0 -3
  35. package/frontend/build/static/js/main.0c70c26b.js.map +0 -1
  36. /package/frontend/build/static/js/{main.0c70c26b.js.LICENSE.txt → main.ed3f81ca.js.LICENSE.txt} +0 -0
package/CHANGELOG.md CHANGED
@@ -2,6 +2,36 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [1.2.14] - 2024-05-09
6
+
7
+ ### Added
8
+
9
+ - [frontend]: Frontend updated to 0.9.0.
10
+ - [frontend]: Added Plugin config editor
11
+ - [frontend]: Added tool column to registered plugins with QRCode, Config, Remove and Enable/Disable
12
+ - [frontend]: Removed Shutdown button when Matterbridge runs as a service or with docker
13
+ - [frontend]: Added Error state to registered plugins
14
+
15
+ <a href="https://www.buymeacoffee.com/luligugithub">
16
+ <img src="./yellow-button.png" alt="Buy me a coffee" width="120">
17
+ </a>
18
+
19
+ ## [1.2.13] - 2024-05-05
20
+
21
+ ### Added
22
+
23
+ - [frontend]: Added plugin version check (you can update from the badge)
24
+ - [frontend]: Added tooltip to plugin name showing plugin path
25
+ - [matterbridge]: The plugin config file is no more saved on shutdown.
26
+ - [matterbridge]: Added plugin version check
27
+ - [frontend]: When you install a plugin now it is also added
28
+ - [frontend]: Added current and latest release to the badge in the Header section (you can update from the badge)
29
+ - [docker]: Added the docker image:dev on the docker hub with architectures: linux/amd64, linux/arm64, linux/arm/v7
30
+
31
+ <a href="https://www.buymeacoffee.com/luligugithub">
32
+ <img src="./yellow-button.png" alt="Buy me a coffee" width="120">
33
+ </a>
34
+
5
35
  ## [1.2.12] - 2024-04-30
6
36
 
7
37
  ### Added
package/README.md CHANGED
@@ -250,7 +250,7 @@ matterbridge -reset [plugin path or plugin name]
250
250
  matterbridge -factoryreset
251
251
  ```
252
252
 
253
- This will reset the internal starages. All commissioning informations will be lost. All plugins will be unregistered.
253
+ This will reset the internal storages. All commissioning informations will be lost. All plugins will be unregistered.
254
254
 
255
255
  ## How to create your plugin
256
256
 
@@ -383,7 +383,7 @@ sudo systemctl disable matterbridge.service
383
383
 
384
384
  ## Run matterbridge with docker (Linux only)
385
385
 
386
- The Matterbridge Docker image, which includes a manifest list for the linux/amd64 and linux/arm64 architectures, is published on Docker Hub.
386
+ The Matterbridge Docker image, which includes a manifest list for the linux/amd64, linux/arm64 and linux/arm/v7 architectures, is published on Docker Hub.
387
387
 
388
388
  ### First create the Matterbridge directories
389
389
 
@@ -409,7 +409,7 @@ docker run --name matterbridge \
409
409
 
410
410
  ### Run with docker compose
411
411
 
412
- The docker-compose.yml file is available in the root of the package
412
+ The docker-compose.yml file is available in the docker directory of the package
413
413
 
414
414
  ```
415
415
  services:
@@ -424,7 +424,7 @@ services:
424
424
  ```
425
425
  copy it in the home directory or edit the existing one to add the matterbridge service.
426
426
 
427
- then run it
427
+ Then start docker compose with:
428
428
 
429
429
  ```
430
430
  docker compose up -d
@@ -435,6 +435,11 @@ docker compose up -d
435
435
  docker compose down
436
436
  ```
437
437
 
438
+ ### Update with docker compose
439
+ ```
440
+ docker compose pull
441
+ ```
442
+
438
443
  ### Inspect the container
439
444
  ```
440
445
  docker container inspect matterbridge
@@ -0,0 +1,223 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2024 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /*** THIS FILE IS GENERATED, DO NOT EDIT ***/
7
+ import { MutableCluster } from '@project-chip/matter-node.js/cluster';
8
+ import { OptionalFixedAttribute, OptionalWritableAttribute, Attribute, OptionalEvent, Event } from '@project-chip/matter-node.js/cluster';
9
+ import { TypeFromSchema } from '@project-chip/matter-node.js/tlv';
10
+ import { Identity } from '@project-chip/matter-node.js/util';
11
+ export declare namespace BridgedDeviceBasicInformation {
12
+ enum ProductFinish {
13
+ Other = 0,
14
+ Matte = 1,
15
+ Satin = 2,
16
+ Polished = 3,
17
+ Rugged = 4,
18
+ Fabric = 5
19
+ }
20
+ enum Color {
21
+ Black = 0,
22
+ Navy = 1,
23
+ Green = 2,
24
+ Teal = 3,
25
+ Maroon = 4,
26
+ Purple = 5,
27
+ Olive = 6,
28
+ Gray = 7,
29
+ Blue = 8,
30
+ Lime = 9,
31
+ Aqua = 10,
32
+ Red = 11,
33
+ Fuchsia = 12,
34
+ Yellow = 13,
35
+ White = 14,
36
+ Nickel = 15,
37
+ Chrome = 16,
38
+ Brass = 17,
39
+ Copper = 18,
40
+ Silver = 19,
41
+ Gold = 20
42
+ }
43
+ const TlvProductAppearanceStruct: import("@project-chip/matter-node.js/tlv").ObjectSchema<{
44
+ finish: import("@project-chip/matter-node.js/tlv").FieldType<ProductFinish>;
45
+ primaryColor: import("@project-chip/matter-node.js/tlv").FieldType<Color | null>;
46
+ }>;
47
+ interface ProductAppearanceStruct extends TypeFromSchema<typeof TlvProductAppearanceStruct> {
48
+ }
49
+ /**
50
+ * Body of the BridgedDeviceBasicInformation startUp event
51
+ *
52
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5
53
+ */
54
+ const TlvStartUpEvent: import("@project-chip/matter-node.js/tlv").ObjectSchema<{
55
+ softwareVersion: import("@project-chip/matter-node.js/tlv").FieldType<number>;
56
+ }>;
57
+ /**
58
+ * Body of the BridgedDeviceBasicInformation startUp event
59
+ *
60
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5
61
+ */
62
+ interface StartUpEvent extends TypeFromSchema<typeof TlvStartUpEvent> {
63
+ }
64
+ /**
65
+ * Body of the BridgedDeviceBasicInformation reachableChanged event
66
+ *
67
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5.1
68
+ */
69
+ const TlvReachableChangedEvent: import("@project-chip/matter-node.js/tlv").ObjectSchema<{
70
+ reachableNewValue: import("@project-chip/matter-node.js/tlv").FieldType<boolean>;
71
+ }>;
72
+ /**
73
+ * Body of the BridgedDeviceBasicInformation reachableChanged event
74
+ *
75
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5.1
76
+ */
77
+ interface ReachableChangedEvent extends TypeFromSchema<typeof TlvReachableChangedEvent> {
78
+ }
79
+ /**
80
+ * @see {@link Cluster}
81
+ */
82
+ const ClusterInstance: MutableCluster<{
83
+ readonly id: 57;
84
+ readonly name: "BridgedDeviceBasicInformation";
85
+ readonly revision: 2;
86
+ readonly attributes: {
87
+ /**
88
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
89
+ */
90
+ readonly vendorName: OptionalFixedAttribute<string, any>;
91
+ /**
92
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
93
+ */
94
+ readonly vendorId: OptionalFixedAttribute<import("@project-chip/matter-node.js/datatype").VendorId, any>;
95
+ /**
96
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
97
+ */
98
+ readonly productName: OptionalFixedAttribute<string, any>;
99
+ /**
100
+ * This attribute shall specify the Product ID assigned by the vendor that is unique to the specific
101
+ * product of the Node.
102
+ *
103
+ * @see {@link MatterSpecification.v11.Core} § 11.1.5.5
104
+ */
105
+ readonly productId: OptionalFixedAttribute<number, any>;
106
+ /**
107
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
108
+ */
109
+ readonly nodeLabel: OptionalWritableAttribute<string, any>;
110
+ /**
111
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
112
+ */
113
+ readonly hardwareVersion: OptionalFixedAttribute<number, any>;
114
+ /**
115
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
116
+ */
117
+ readonly hardwareVersionString: OptionalFixedAttribute<string, any>;
118
+ /**
119
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
120
+ */
121
+ readonly softwareVersion: OptionalFixedAttribute<number, any>;
122
+ /**
123
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
124
+ */
125
+ readonly softwareVersionString: OptionalFixedAttribute<string, any>;
126
+ /**
127
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
128
+ */
129
+ readonly manufacturingDate: OptionalFixedAttribute<string, any>;
130
+ /**
131
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
132
+ */
133
+ readonly partNumber: OptionalFixedAttribute<string, any>;
134
+ /**
135
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
136
+ */
137
+ readonly productUrl: OptionalFixedAttribute<string, any>;
138
+ /**
139
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
140
+ */
141
+ readonly productLabel: OptionalFixedAttribute<string, any>;
142
+ /**
143
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
144
+ */
145
+ readonly serialNumber: OptionalFixedAttribute<string, any>;
146
+ /**
147
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
148
+ */
149
+ readonly reachable: Attribute<boolean, any>;
150
+ /**
151
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
152
+ */
153
+ readonly uniqueId: OptionalFixedAttribute<string, any>;
154
+ readonly productAppearance: OptionalFixedAttribute<import("@project-chip/matter-node.js/tlv").TypeFromFields<{
155
+ finish: import("@project-chip/matter-node.js/tlv").FieldType<ProductFinish>;
156
+ primaryColor: import("@project-chip/matter-node.js/tlv").FieldType<Color | null>;
157
+ }>, any>;
158
+ };
159
+ readonly events: {
160
+ /**
161
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5
162
+ */
163
+ readonly startUp: OptionalEvent<import("@project-chip/matter-node.js/tlv").TypeFromFields<{
164
+ softwareVersion: import("@project-chip/matter-node.js/tlv").FieldType<number>;
165
+ }>, any>;
166
+ /**
167
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5
168
+ */
169
+ readonly shutDown: OptionalEvent<void, any>;
170
+ /**
171
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5
172
+ */
173
+ readonly leave: OptionalEvent<void, any>;
174
+ /**
175
+ * This event shall be generated when there is a change in the Reachable attribute. Its purpose is to
176
+ * provide an indication towards interested parties that the reachability of a bridged device (over the
177
+ * non-Matter network) has changed, so they may take appropriate action.
178
+ *
179
+ * After (re)start of a bridge this event may be generated.
180
+ *
181
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5.1
182
+ */
183
+ readonly reachableChanged: Event<import("@project-chip/matter-node.js/tlv").TypeFromFields<{
184
+ reachableNewValue: import("@project-chip/matter-node.js/tlv").FieldType<boolean>;
185
+ }>, any>;
186
+ };
187
+ }>;
188
+ /**
189
+ * Bridged Device Basic Information
190
+ *
191
+ * This Cluster serves two purposes towards a Node communicating with a Bridge:
192
+ *
193
+ * • Indicate that the functionality on the Endpoint where it is placed (and its Parts) is bridged from a
194
+ * non-Matter technology, and
195
+ *
196
+ * • Provide a centralized collection of attributes that the Node may collect to aid in conveying information
197
+ * regarding the Bridged Device to a user, such as the vendor name, the model name, or user-assigned name.
198
+ *
199
+ * This cluster shall be exposed by a Bridge on the Endpoint representing each Bridged Device. When the
200
+ * functionality of a Bridged Device is represented using a set of Endpoints, this cluster shall only be exposed on
201
+ * the Endpoint which is at the top of the hierarchy for the functionality of that Bridged Device.
202
+ *
203
+ * This cluster shall NOT be used on an endpoint that is not in the Descriptor cluster PartsList of an endpoint
204
+ * with an Aggregator device type.
205
+ *
206
+ * This cluster has been derived from the Basic Information Cluster, and provides generic information about the
207
+ * Bridged Device. Not all of the attributes in the Basic Information Cluster are relevant for a Bridged Device
208
+ * (e.g. ProductID since it is not a Matter device). For other attributes, the information which is listed as
209
+ * Mandatory for the Basic Information Cluster, may not be available when the Bridged Device does not provide it to
210
+ * the Bridge, and the Bridge has no other means to determine it. For such cases where the information for a
211
+ * particular attribute is not available, the Bridge SHOULD NOT include the attribute in the cluster for this
212
+ * Bridged Device. See below for Conformance details.
213
+ *
214
+ * @see {@link MatterSpecification.v11.Core} § 9.13
215
+ */
216
+ interface Cluster extends Identity<typeof ClusterInstance> {
217
+ }
218
+ const Cluster: Cluster;
219
+ const Complete: Cluster;
220
+ }
221
+ export type BridgedDeviceBasicInformationCluster = BridgedDeviceBasicInformation.Cluster;
222
+ export declare const BridgedDeviceBasicInformationCluster: BridgedDeviceBasicInformation.Cluster;
223
+ //# sourceMappingURL=BridgedDeviceBasicInformationCluster.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BridgedDeviceBasicInformationCluster.d.ts","sourceRoot":"","sources":["../src/BridgedDeviceBasicInformationCluster.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,6CAA6C;AAG7C,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAe,SAAS,EAAE,aAAa,EAAiB,KAAK,EAAE,MAAM,sCAAsC,CAAC;AAOtK,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAElE,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAG7D,yBAAiB,6BAA6B,CAAC;IAC7C,KAAY,aAAa;QACvB,KAAK,IAAI;QACT,KAAK,IAAI;QACT,KAAK,IAAI;QACT,QAAQ,IAAI;QACZ,MAAM,IAAI;QACV,MAAM,IAAI;KACX;IAED,KAAY,KAAK;QACf,KAAK,IAAI;QACT,IAAI,IAAI;QACR,KAAK,IAAI;QACT,IAAI,IAAI;QACR,MAAM,IAAI;QACV,MAAM,IAAI;QACV,KAAK,IAAI;QACT,IAAI,IAAI;QACR,IAAI,IAAI;QACR,IAAI,IAAI;QACR,IAAI,KAAK;QACT,GAAG,KAAK;QACR,OAAO,KAAK;QACZ,MAAM,KAAK;QACX,KAAK,KAAK;QACV,MAAM,KAAK;QACX,MAAM,KAAK;QACX,KAAK,KAAK;QACV,MAAM,KAAK;QACX,MAAM,KAAK;QACX,IAAI,KAAK;KACV;IAEM,MAAM,0BAA0B;;;MAGrC,CAAC;IACH,UAAiB,uBAAwB,SAAQ,cAAc,CAAC,OAAO,0BAA0B,CAAC;KAAG;IAErG;;;;OAIG;IACI,MAAM,eAAe;;MAAyD,CAAC;IAEtF;;;;OAIG;IACH,UAAiB,YAAa,SAAQ,cAAc,CAAC,OAAO,eAAe,CAAC;KAAG;IAE/E;;;;OAIG;IACI,MAAM,wBAAwB;;MAA4D,CAAC;IAElG;;;;OAIG;IACH,UAAiB,qBAAsB,SAAQ,cAAc,CAAC,OAAO,wBAAwB,CAAC;KAAG;IAEjG;;OAEG;IACI,MAAM,eAAe;;;;;YAMxB;;eAEG;;YAGH;;eAEG;;YAGH;;eAEG;;YAGH;;;;;eAKG;;YAGH;;eAEG;;YAGH;;eAEG;;YAGH;;eAEG;;YAGH;;eAEG;;YAGH;;eAEG;;YAGH;;eAEG;;YAGH;;eAEG;;YAGH;;eAEG;;YAGH;;eAEG;;YAGH;;eAEG;;YAGH;;eAEG;;YAGH;;eAEG;;;;;;;;YAOH;;eAEG;;;;YAGH;;eAEG;;YAGH;;eAEG;;YAGH;;;;;;;;eAQG;;;;;MAGL,CAAC;IAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,UAAiB,OAAQ,SAAQ,QAAQ,CAAC,OAAO,eAAe,CAAC;KAAG;IAE7D,MAAM,OAAO,EAAE,OAAyB,CAAC;IACzC,MAAM,QAAQ,SAAU,CAAC;CACjC;AAED,MAAM,MAAM,oCAAoC,GAAG,6BAA6B,CAAC,OAAO,CAAC;AACzF,eAAO,MAAM,oCAAoC,uCAAwC,CAAC"}
@@ -0,0 +1,176 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2024 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /*** THIS FILE IS GENERATED, DO NOT EDIT ***/
7
+ /* eslint-disable @typescript-eslint/no-namespace */
8
+ import { MutableCluster } from '@project-chip/matter-node.js/cluster';
9
+ import { OptionalFixedAttribute, OptionalWritableAttribute, AccessLevel, Attribute, OptionalEvent, EventPriority, Event } from '@project-chip/matter-node.js/cluster';
10
+ import { TlvString } from '@project-chip/matter-node.js/tlv';
11
+ import { TlvVendorId } from '@project-chip/matter-node.js/datatype';
12
+ import { TlvUInt16, TlvUInt32, TlvEnum } from '@project-chip/matter-node.js/tlv';
13
+ import { TlvBoolean } from '@project-chip/matter-node.js/tlv';
14
+ import { TlvObject, TlvField } from '@project-chip/matter-node.js/tlv';
15
+ import { TlvNullable } from '@project-chip/matter-node.js/tlv';
16
+ import { TlvNoArguments } from '@project-chip/matter-node.js/tlv';
17
+ import { ClusterRegistry } from '@project-chip/matter-node.js/cluster';
18
+ export var BridgedDeviceBasicInformation;
19
+ (function (BridgedDeviceBasicInformation) {
20
+ let ProductFinish;
21
+ (function (ProductFinish) {
22
+ ProductFinish[ProductFinish["Other"] = 0] = "Other";
23
+ ProductFinish[ProductFinish["Matte"] = 1] = "Matte";
24
+ ProductFinish[ProductFinish["Satin"] = 2] = "Satin";
25
+ ProductFinish[ProductFinish["Polished"] = 3] = "Polished";
26
+ ProductFinish[ProductFinish["Rugged"] = 4] = "Rugged";
27
+ ProductFinish[ProductFinish["Fabric"] = 5] = "Fabric";
28
+ })(ProductFinish = BridgedDeviceBasicInformation.ProductFinish || (BridgedDeviceBasicInformation.ProductFinish = {}));
29
+ let Color;
30
+ (function (Color) {
31
+ Color[Color["Black"] = 0] = "Black";
32
+ Color[Color["Navy"] = 1] = "Navy";
33
+ Color[Color["Green"] = 2] = "Green";
34
+ Color[Color["Teal"] = 3] = "Teal";
35
+ Color[Color["Maroon"] = 4] = "Maroon";
36
+ Color[Color["Purple"] = 5] = "Purple";
37
+ Color[Color["Olive"] = 6] = "Olive";
38
+ Color[Color["Gray"] = 7] = "Gray";
39
+ Color[Color["Blue"] = 8] = "Blue";
40
+ Color[Color["Lime"] = 9] = "Lime";
41
+ Color[Color["Aqua"] = 10] = "Aqua";
42
+ Color[Color["Red"] = 11] = "Red";
43
+ Color[Color["Fuchsia"] = 12] = "Fuchsia";
44
+ Color[Color["Yellow"] = 13] = "Yellow";
45
+ Color[Color["White"] = 14] = "White";
46
+ Color[Color["Nickel"] = 15] = "Nickel";
47
+ Color[Color["Chrome"] = 16] = "Chrome";
48
+ Color[Color["Brass"] = 17] = "Brass";
49
+ Color[Color["Copper"] = 18] = "Copper";
50
+ Color[Color["Silver"] = 19] = "Silver";
51
+ Color[Color["Gold"] = 20] = "Gold";
52
+ })(Color = BridgedDeviceBasicInformation.Color || (BridgedDeviceBasicInformation.Color = {}));
53
+ BridgedDeviceBasicInformation.TlvProductAppearanceStruct = TlvObject({
54
+ finish: TlvField(0, TlvEnum()),
55
+ primaryColor: TlvField(1, TlvNullable(TlvEnum())),
56
+ });
57
+ /**
58
+ * Body of the BridgedDeviceBasicInformation startUp event
59
+ *
60
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5
61
+ */
62
+ BridgedDeviceBasicInformation.TlvStartUpEvent = TlvObject({ softwareVersion: TlvField(0, TlvUInt32) });
63
+ /**
64
+ * Body of the BridgedDeviceBasicInformation reachableChanged event
65
+ *
66
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5.1
67
+ */
68
+ BridgedDeviceBasicInformation.TlvReachableChangedEvent = TlvObject({ reachableNewValue: TlvField(0, TlvBoolean) });
69
+ /**
70
+ * @see {@link Cluster}
71
+ */
72
+ BridgedDeviceBasicInformation.ClusterInstance = MutableCluster({
73
+ id: 0x39,
74
+ name: 'BridgedDeviceBasicInformation',
75
+ revision: 2,
76
+ attributes: {
77
+ /**
78
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
79
+ */
80
+ vendorName: OptionalFixedAttribute(0x1, TlvString.bound({ maxLength: 32 })),
81
+ /**
82
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
83
+ */
84
+ vendorId: OptionalFixedAttribute(0x2, TlvVendorId),
85
+ /**
86
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
87
+ */
88
+ productName: OptionalFixedAttribute(0x3, TlvString.bound({ maxLength: 32 })),
89
+ /**
90
+ * This attribute shall specify the Product ID assigned by the vendor that is unique to the specific
91
+ * product of the Node.
92
+ *
93
+ * @see {@link MatterSpecification.v11.Core} § 11.1.5.5
94
+ */
95
+ productId: OptionalFixedAttribute(0x4, TlvUInt16),
96
+ /**
97
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
98
+ */
99
+ nodeLabel: OptionalWritableAttribute(0x5, TlvString.bound({ maxLength: 32 }), { persistent: true, default: '', writeAcl: AccessLevel.Manage }),
100
+ /**
101
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
102
+ */
103
+ hardwareVersion: OptionalFixedAttribute(0x7, TlvUInt16, { default: 0 }),
104
+ /**
105
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
106
+ */
107
+ hardwareVersionString: OptionalFixedAttribute(0x8, TlvString.bound({ minLength: 1, maxLength: 64 })),
108
+ /**
109
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
110
+ */
111
+ softwareVersion: OptionalFixedAttribute(0x9, TlvUInt32, { default: 0 }),
112
+ /**
113
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
114
+ */
115
+ softwareVersionString: OptionalFixedAttribute(0xa, TlvString.bound({ minLength: 1, maxLength: 64 })),
116
+ /**
117
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
118
+ */
119
+ manufacturingDate: OptionalFixedAttribute(0xb, TlvString.bound({ minLength: 8, maxLength: 16 })),
120
+ /**
121
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
122
+ */
123
+ partNumber: OptionalFixedAttribute(0xc, TlvString.bound({ maxLength: 32 })),
124
+ /**
125
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
126
+ */
127
+ productUrl: OptionalFixedAttribute(0xd, TlvString.bound({ maxLength: 256 })),
128
+ /**
129
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
130
+ */
131
+ productLabel: OptionalFixedAttribute(0xe, TlvString.bound({ maxLength: 64 })),
132
+ /**
133
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
134
+ */
135
+ serialNumber: OptionalFixedAttribute(0xf, TlvString.bound({ maxLength: 32 })),
136
+ /**
137
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
138
+ */
139
+ reachable: Attribute(0x11, TlvBoolean, { default: true }),
140
+ /**
141
+ * @see {@link MatterSpecification.v11.Core} § 9.13.4
142
+ */
143
+ uniqueId: OptionalFixedAttribute(0x12, TlvString.bound({ maxLength: 32 })),
144
+ productAppearance: OptionalFixedAttribute(0x14, BridgedDeviceBasicInformation.TlvProductAppearanceStruct),
145
+ },
146
+ events: {
147
+ /**
148
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5
149
+ */
150
+ startUp: OptionalEvent(0x0, EventPriority.Critical, BridgedDeviceBasicInformation.TlvStartUpEvent),
151
+ /**
152
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5
153
+ */
154
+ shutDown: OptionalEvent(0x1, EventPriority.Critical, TlvNoArguments),
155
+ /**
156
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5
157
+ */
158
+ leave: OptionalEvent(0x2, EventPriority.Info, TlvNoArguments),
159
+ /**
160
+ * This event shall be generated when there is a change in the Reachable attribute. Its purpose is to
161
+ * provide an indication towards interested parties that the reachability of a bridged device (over the
162
+ * non-Matter network) has changed, so they may take appropriate action.
163
+ *
164
+ * After (re)start of a bridge this event may be generated.
165
+ *
166
+ * @see {@link MatterSpecification.v11.Core} § 9.13.5.1
167
+ */
168
+ reachableChanged: Event(0x3, EventPriority.Info, BridgedDeviceBasicInformation.TlvReachableChangedEvent),
169
+ },
170
+ });
171
+ BridgedDeviceBasicInformation.Cluster = BridgedDeviceBasicInformation.ClusterInstance;
172
+ BridgedDeviceBasicInformation.Complete = BridgedDeviceBasicInformation.Cluster;
173
+ })(BridgedDeviceBasicInformation || (BridgedDeviceBasicInformation = {}));
174
+ export const BridgedDeviceBasicInformationCluster = BridgedDeviceBasicInformation.Cluster;
175
+ ClusterRegistry.register(BridgedDeviceBasicInformation.Complete);
176
+ //# sourceMappingURL=BridgedDeviceBasicInformationCluster.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BridgedDeviceBasicInformationCluster.js","sourceRoot":"","sources":["../src/BridgedDeviceBasicInformationCluster.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * This file contains the default config end schema for the plugins.
3
+ *
4
+ * @file utils.ts
5
+ * @author Luca Liguori
6
+ * @date 2024-05-07
7
+ * @version 1.0.0
8
+ *
9
+ * Copyright 2024 Luca Liguori.
10
+ *
11
+ * Licensed under the Apache License, Version 2.0 (the "License");
12
+ * you may not use this file except in compliance with the License.
13
+ * You may obtain a copy of the License at
14
+ *
15
+ * http://www.apache.org/licenses/LICENSE-2.0
16
+ *
17
+ * Unless required by applicable law or agreed to in writing, software
18
+ * distributed under the License is distributed on an "AS IS" BASIS,
19
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20
+ * See the License for the specific language governing permissions and
21
+ * limitations under the License. *
22
+ */
23
+ import { PlatformConfig, PlatformSchema } from './matterbridge.js';
24
+ export declare const zigbee2mqtt_config: PlatformConfig;
25
+ export declare const zigbee2mqtt_schema: PlatformSchema;
26
+ export declare const somfytahoma_config: PlatformConfig;
27
+ export declare const somfytahoma_schema: PlatformSchema;
28
+ //# sourceMappingURL=defaultConfigSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultConfigSchema.d.ts","sourceRoot":"","sources":["../src/defaultConfigSchema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnE,eAAO,MAAM,kBAAkB,EAAE,cAgBhC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,cA6FhC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,cAShC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,cAwEhC,CAAC"}