matterbridge 1.0.6 → 1.1.2

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 (66) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/LICENSE +202 -21
  3. package/README.md +90 -5
  4. package/Screenshot devices page.png +0 -0
  5. package/Screenshot home page.png +0 -0
  6. package/dist/AirQualityCluster.d.ts +22 -0
  7. package/dist/AirQualityCluster.d.ts.map +1 -1
  8. package/dist/AirQualityCluster.js +23 -1
  9. package/dist/AirQualityCluster.js.map +1 -1
  10. package/dist/ColorControlServer.d.ts +20 -3
  11. package/dist/ColorControlServer.d.ts.map +1 -1
  12. package/dist/ColorControlServer.js +20 -3
  13. package/dist/ColorControlServer.js.map +1 -1
  14. package/dist/TvocCluster.d.ts +262 -0
  15. package/dist/TvocCluster.d.ts.map +1 -0
  16. package/dist/TvocCluster.js +114 -0
  17. package/dist/TvocCluster.js.map +1 -0
  18. package/dist/index.d.ts +30 -0
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +37 -1
  21. package/dist/index.js.map +1 -1
  22. package/dist/matterbridge.d.ts +187 -17
  23. package/dist/matterbridge.d.ts.map +1 -1
  24. package/dist/matterbridge.js +721 -218
  25. package/dist/matterbridge.js.map +1 -1
  26. package/dist/matterbridgeAccessoryPlatform.d.ts +50 -11
  27. package/dist/matterbridgeAccessoryPlatform.d.ts.map +1 -1
  28. package/dist/matterbridgeAccessoryPlatform.js +56 -41
  29. package/dist/matterbridgeAccessoryPlatform.js.map +1 -1
  30. package/dist/matterbridgeComposed.d.ts +43 -0
  31. package/dist/matterbridgeComposed.d.ts.map +1 -0
  32. package/dist/matterbridgeComposed.js +58 -0
  33. package/dist/matterbridgeComposed.js.map +1 -0
  34. package/dist/matterbridgeDevice.d.ts +209 -4
  35. package/dist/matterbridgeDevice.d.ts.map +1 -1
  36. package/dist/matterbridgeDevice.js +587 -51
  37. package/dist/matterbridgeDevice.js.map +1 -1
  38. package/dist/matterbridgeDynamicPlatform.d.ts +50 -11
  39. package/dist/matterbridgeDynamicPlatform.d.ts.map +1 -1
  40. package/dist/matterbridgeDynamicPlatform.js +56 -41
  41. package/dist/matterbridgeDynamicPlatform.js.map +1 -1
  42. package/frontend/build/Matterbridge.jpg +0 -0
  43. package/frontend/build/asset-manifest.json +6 -6
  44. package/frontend/build/index.html +1 -1
  45. package/frontend/build/static/css/main.6d93e0db.css +2 -0
  46. package/frontend/build/static/css/main.6d93e0db.css.map +1 -0
  47. package/frontend/build/static/js/main.21c55a60.js +3 -0
  48. package/frontend/build/static/js/{main.a000062f.js.LICENSE.txt → main.21c55a60.js.LICENSE.txt} +2 -0
  49. package/frontend/build/static/js/main.21c55a60.js.map +1 -0
  50. package/package.json +8 -4
  51. package/.eslintrc.json +0 -45
  52. package/.gitattributes +0 -2
  53. package/.prettierignore +0 -2
  54. package/.prettierrc.json +0 -12
  55. package/frontend/README.md +0 -70
  56. package/frontend/build/static/css/main.8b969fd5.css +0 -2
  57. package/frontend/build/static/css/main.8b969fd5.css.map +0 -1
  58. package/frontend/build/static/js/main.a000062f.js +0 -3
  59. package/frontend/build/static/js/main.a000062f.js.map +0 -1
  60. package/frontend/package-lock.json +0 -18351
  61. package/frontend/package.json +0 -40
  62. package/frontend/public/favicon.ico +0 -0
  63. package/frontend/public/index.html +0 -15
  64. package/frontend/public/manifest.json +0 -15
  65. package/frontend/public/matter.png +0 -0
  66. package/frontend/public/robots.txt +0 -3
@@ -1,5 +1,30 @@
1
+ /**
2
+ * This file contains the class MatterbridgeDevice.
3
+ *
4
+ * @file matterbridgeDevice.ts
5
+ * @author Luca Liguori
6
+ * @date 2023-12-29
7
+ * @version 1.0.15
8
+ *
9
+ * Copyright 2023, 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
+ */
1
23
  import { ClusterServerHandlers, ColorControl, Identify, LevelControl, OnOff, PowerSource, WindowCovering } from '@project-chip/matter-node.js/cluster';
2
24
  import { Device, DeviceTypeDefinition, EndpointOptions } from '@project-chip/matter-node.js/device';
25
+ import { MatterHistory } from 'matter-history';
26
+ import { AirQuality } from './AirQualityCluster.js';
27
+ import { AnsiLogger } from 'node-ansi-logger';
3
28
  type MakeMandatory<T> = Exclude<T, undefined>;
4
29
  type MatterbridgeDeviceCommands = {
5
30
  identify: MakeMandatory<ClusterServerHandlers<typeof Identify.Cluster>['identify']>;
@@ -33,25 +58,205 @@ declare const MatterbridgeDevice_base: new (definition: DeviceTypeDefinition, op
33
58
  };
34
59
  export declare class MatterbridgeDevice extends MatterbridgeDevice_base {
35
60
  constructor(definition: DeviceTypeDefinition, options?: EndpointOptions);
61
+ addDeviceType(deviceType: DeviceTypeDefinition): void;
62
+ /**
63
+ * Creates a room Eve History Cluster Server.
64
+ *
65
+ * @param history - The MatterHistory object.
66
+ * @param log - The AnsiLogger object.
67
+ */
68
+ createRoomEveHistoryClusterServer(history: MatterHistory, log: AnsiLogger): void;
69
+ /**
70
+ * Creates a Weather Eve History Cluster Server.
71
+ *
72
+ * @param history - The MatterHistory instance.
73
+ * @param log - The AnsiLogger instance.
74
+ */
75
+ createWeatherEveHistoryClusterServer(history: MatterHistory, log: AnsiLogger): void;
76
+ /**
77
+ * Creates an Energy Eve History Cluster Server.
78
+ *
79
+ * @param history - The MatterHistory object.
80
+ * @param log - The AnsiLogger object.
81
+ */
82
+ createEnergyEveHistoryClusterServer(history: MatterHistory, log: AnsiLogger): void;
83
+ /**
84
+ * Creates a Motion Eve History Cluster Server.
85
+ *
86
+ * @param history - The MatterHistory object.
87
+ * @param log - The AnsiLogger object.
88
+ */
89
+ createMotionEveHistoryClusterServer(history: MatterHistory, log: AnsiLogger): void;
90
+ /**
91
+ * Creates a door EveHistoryCluster server.
92
+ *
93
+ * @param history - The MatterHistory instance.
94
+ * @param log - The AnsiLogger instance.
95
+ */
96
+ createDoorEveHistoryClusterServer(history: MatterHistory, log: AnsiLogger): void;
97
+ /**
98
+ * Creates a default IdentifyCluster server.
99
+ */
36
100
  createDefaultIdentifyClusterServer(): void;
101
+ /**
102
+ * Creates a default groups cluster server and adds it to the device.
103
+ */
37
104
  createDefaultGroupsClusterServer(): void;
105
+ /**
106
+ * Creates a default scenes cluster server and adds it to the current instance.
107
+ */
38
108
  createDefaultScenesClusterServer(): void;
39
- createDefaultBridgedDeviceBasicInformationClusterServer(deviceName: string, uniqueId: string, vendorId?: number, vendorName?: string, productName?: string): void;
40
- createDefaultBasicInformationClusterServer(deviceName: string, uniqueId: string, vendorId: number, vendorName: string, productId: number, productName: string): void;
109
+ /**
110
+ * Creates a unique identifier based on the provided parameters.
111
+ * @param param1 - The first parameter.
112
+ * @param param2 - The second parameter.
113
+ * @param param3 - The third parameter.
114
+ * @param param4 - The fourth parameter.
115
+ * @returns A unique identifier generated using the MD5 hash algorithm.
116
+ */
117
+ private createUniqueId;
118
+ /**
119
+ * Creates a default Basic Information Cluster Server.
120
+ *
121
+ * @param deviceName - The name of the device.
122
+ * @param serialNumber - The serial number of the device.
123
+ * @param vendorId - The vendor ID of the device.
124
+ * @param vendorName - The vendor name of the device.
125
+ * @param productId - The product ID of the device.
126
+ * @param productName - The product name of the device.
127
+ * @param softwareVersion - The software version of the device. Default is 1.
128
+ * @param softwareVersionString - The software version string of the device. Default is 'v.1.0.0'.
129
+ * @param hardwareVersion - The hardware version of the device. Default is 1.
130
+ * @param hardwareVersionString - The hardware version string of the device. Default is 'v.1.0.0'.
131
+ */
132
+ createDefaultBasicInformationClusterServer(deviceName: string, serialNumber: string, vendorId: number, vendorName: string, productId: number, productName: string, softwareVersion?: number, softwareVersionString?: string, hardwareVersion?: number, hardwareVersionString?: string): void;
133
+ /**
134
+ * Creates a default BridgedDeviceBasicInformationClusterServer.
135
+ *
136
+ * @param deviceName - The name of the device.
137
+ * @param serialNumber - The serial number of the device.
138
+ * @param vendorId - The vendor ID of the device.
139
+ * @param vendorName - The name of the vendor.
140
+ * @param productName - The name of the product.
141
+ * @param softwareVersion - The software version of the device. Default is 1.
142
+ * @param softwareVersionString - The software version string of the device. Default is 'v.1.0.0'.
143
+ * @param hardwareVersion - The hardware version of the device. Default is 1.
144
+ * @param hardwareVersionString - The hardware version string of the device. Default is 'v.1.0.0'.
145
+ */
146
+ createDefaultBridgedDeviceBasicInformationClusterServer(deviceName: string, serialNumber: string, vendorId: number, vendorName: string, productName: string, softwareVersion?: number, softwareVersionString?: string, hardwareVersion?: number, hardwareVersionString?: string): void;
147
+ /**
148
+ * Creates a default Electrical Measurement Cluster Server.
149
+ *
150
+ * @param voltage - The RMS voltage value.
151
+ * @param current - The RMS current value.
152
+ * @param power - The active power value.
153
+ * @param consumption - The total active power consumption value.
154
+ */
155
+ createDefaultElectricalMeasurementClusterServer(voltage?: number, current?: number, power?: number, consumption?: number): void;
156
+ /**
157
+ * Creates a default Thread Network Diagnostics Cluster server.
158
+ *
159
+ * @remarks
160
+ * This method adds a cluster server used only to give the networkName to Eve app.
161
+ *
162
+ * @returns void
163
+ */
41
164
  createDefaultThreadNetworkDiagnosticsClusterServer(): void;
165
+ /**
166
+ * Creates a default OnOff cluster server.
167
+ *
168
+ * @param onOff - The initial state of the OnOff cluster (default: false).
169
+ */
42
170
  createDefaultOnOffClusterServer(onOff?: boolean): void;
171
+ /**
172
+ * Creates a default window covering cluster server.
173
+ *
174
+ * @param positionPercent100ths - The position percentage in 100ths (0-10000). Defaults to 0.
175
+ */
43
176
  createDefaultWindowCoveringClusterServer(positionPercent100ths?: number): void;
177
+ /**
178
+ * Creates a default occupancy sensing cluster server.
179
+ *
180
+ * @param occupied - A boolean indicating whether the occupancy is occupied or not. Default is false.
181
+ */
44
182
  createDefaultOccupancySensingClusterServer(occupied?: boolean): void;
183
+ /**
184
+ * Creates a default Illuminance Measurement Cluster Server.
185
+ *
186
+ * @param measuredValue - The measured value of illuminance.
187
+ */
45
188
  createDefaultIlluminanceMeasurementClusterServer(measuredValue?: number): void;
189
+ /**
190
+ * Creates a default temperature measurement cluster server.
191
+ *
192
+ * @param measuredValue - The measured value of the temperature.
193
+ */
46
194
  createDefaultTemperatureMeasurementClusterServer(measuredValue?: number): void;
195
+ /**
196
+ * Creates a default RelativeHumidityMeasurementCluster server.
197
+ *
198
+ * @param measuredValue - The measured value of the relative humidity.
199
+ */
47
200
  createDefaultRelativeHumidityMeasurementClusterServer(measuredValue?: number): void;
201
+ /**
202
+ * Creates a default Pressure Measurement Cluster Server.
203
+ *
204
+ * @param measuredValue - The measured value for the pressure.
205
+ */
48
206
  createDefaultPressureMeasurementClusterServer(measuredValue?: number): void;
207
+ /**
208
+ * Creates a default boolean state cluster server.
209
+ *
210
+ * @param contact - Optional boolean value indicating the contact state. Defaults to `true` if not provided.
211
+ */
49
212
  createDefaultBooleanStateClusterServer(contact?: boolean): void;
50
- createDefaultPowerSourceReplaceableBatteryClusterServer(batPercentRemaining?: number, batChargeLevel?: PowerSource.BatChargeLevel, batVoltage?: number): void;
213
+ /**
214
+ * Creates a default power source replaceable battery cluster server.
215
+ *
216
+ * @param batPercentRemaining - The remaining battery percentage (default: 100).
217
+ * @param batChargeLevel - The battery charge level (default: PowerSource.BatChargeLevel.Ok).
218
+ * @param batVoltage - The battery voltage (default: 1500).
219
+ * @param batReplacementDescription - The battery replacement description (default: 'Battery type').
220
+ * @param batQuantity - The battery quantity (default: 1).
221
+ */
222
+ createDefaultPowerSourceReplaceableBatteryClusterServer(batPercentRemaining?: number, batChargeLevel?: PowerSource.BatChargeLevel, batVoltage?: number, batReplacementDescription?: string, batQuantity?: number): void;
223
+ /**
224
+ * Creates a default power source rechargeable battery cluster server.
225
+ *
226
+ * @param batPercentRemaining - The remaining battery percentage (default: 100).
227
+ * @param batChargeLevel - The battery charge level (default: PowerSource.BatChargeLevel.Ok).
228
+ * @param batVoltage - The battery voltage (default: 1500).
229
+ */
51
230
  createDefaultPowerSourceRechargableBatteryClusterServer(batPercentRemaining?: number, batChargeLevel?: PowerSource.BatChargeLevel, batVoltage?: number): void;
231
+ /**
232
+ * Creates a default power source wired cluster server.
233
+ *
234
+ * @param wiredCurrentType - The type of wired current (default: PowerSource.WiredCurrentType.Ac)
235
+ */
52
236
  createDefaultPowerSourceWiredClusterServer(wiredCurrentType?: PowerSource.WiredCurrentType): void;
237
+ /**
238
+ * Creates a default power source configuration cluster server.
239
+ *
240
+ * @remarks
241
+ * The endpoint at this time is only known for Accessory Platforms.
242
+ * Don't use it in Dynamic Platforms.
243
+ *
244
+ *
245
+ * @param endpointNumber - The endpoint number where to find the PowerSourceCluster.
246
+ */
53
247
  createDefaultPowerSourceConfigurationClusterServer(endpointNumber: number): void;
54
- createDefaultAirQualityClusterServer(): void;
248
+ /**
249
+ * Creates a default air quality cluster server.
250
+ *
251
+ * @param airQuality The air quality type. Defaults to `AirQuality.AirQualityType.Unknown`.
252
+ */
253
+ createDefaultAirQualityClusterServer(airQuality?: AirQuality.AirQualityType): void;
254
+ /**
255
+ * Creates a default TVOC measurement cluster server.
256
+ *
257
+ * @param measuredValue - The measured value for TVOC.
258
+ */
259
+ createDefaultTvocMeasurementClusterServer(measuredValue?: number): void;
55
260
  }
56
261
  export {};
57
262
  //# sourceMappingURL=matterbridgeDevice.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"matterbridgeDevice.d.ts","sourceRoot":"","sources":["../src/matterbridgeDevice.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,qBAAqB,EACrB,YAAY,EAEZ,QAAQ,EAGR,YAAY,EAGZ,KAAK,EAEL,WAAW,EAWX,cAAc,EAIf,MAAM,sCAAsC,CAAC;AAE9C,OAAO,EAAE,MAAM,EAAiB,oBAAoB,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAInH,KAAK,aAAa,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;AAE9C,KAAK,0BAA0B,GAAG;IAChC,QAAQ,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAEpF,EAAE,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACtE,GAAG,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,MAAM,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9E,aAAa,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,KAAK,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;IAE5F,WAAW,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;IAC/F,oBAAoB,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC;IAEjH,SAAS,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IAC3F,OAAO,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IACvF,OAAO,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IACvF,gBAAgB,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACzG,cAAc,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACrG,cAAc,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACrG,sBAAsB,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACrH,sBAAsB,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,YAAY,CAAC,QAAQ,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC;IAErH,QAAQ,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAC3F,WAAW,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;IACjG,UAAU,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;IAC/F,kBAAkB,EAAE,aAAa,CAAC,qBAAqB,CAAC,OAAO,cAAc,CAAC,QAAQ,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC;CAChH,CAAC;AAGF,eAAO,MAAM,WAAW,sBAOtB,CAAC;AAEH,eAAO,MAAM,cAAc,sBAOzB,CAAC;AAEH,eAAO,MAAM,sBAAsB,sBAOjC,CAAC;AAEH,eAAO,MAAM,gBAAgB,sBAO3B,CAAC;;;;;;AAEH,qBAAa,kBAAmB,SAAQ,uBAA6E;gBAEjH,UAAU,EAAE,oBAAoB,EAGhC,OAAO,GAAE,eAAoB;IAK/B,kCAAkC;IAkBlC,gCAAgC;IAIhC,gCAAgC;IAIhC,uDAAuD,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM;IA0B1J,0CAA0C,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAgC7J,kDAAkD;IAmClD,+BAA+B,CAAC,KAAK,UAAQ;IA0B7C,wCAAwC,CAAC,qBAAqB,CAAC,EAAE,MAAM;IAqDvE,0CAA0C,CAAC,QAAQ,UAAQ;IAe3D,gDAAgD,CAAC,aAAa,GAAE,MAAU;IAgB1E,gDAAgD,CAAC,aAAa,GAAE,MAAU;IAgB1E,qDAAqD,CAAC,aAAa,GAAE,MAAU;IAgB/E,6CAA6C,CAAC,aAAa,GAAE,MAAU;IAgBvE,sCAAsC,CAAC,OAAO,CAAC,EAAE,OAAO;IAexD,uDAAuD,CACrD,mBAAmB,GAAE,MAAY,EACjC,cAAc,GAAE,WAAW,CAAC,cAA8C,EAC1E,UAAU,GAAE,MAAa;IAwB3B,uDAAuD,CACrD,mBAAmB,GAAE,MAAY,EACjC,cAAc,GAAE,WAAW,CAAC,cAA8C,EAC1E,UAAU,GAAE,MAAa;IAyB3B,0CAA0C,CAAC,gBAAgB,GAAE,WAAW,CAAC,gBAAkD;IAgB3H,kDAAkD,CAAC,cAAc,EAAE,MAAM;IAazE,oCAAoC;CAYrC"}
1
+ {"version":3,"file":"matterbridgeDevice.d.ts","sourceRoot":"","sources":["../src/matterbridgeDevice.ts"],"names":[],"mappings":"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"}