matterbridge 1.6.1 → 1.6.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 (139) hide show
  1. package/CHANGELOG.md +35 -1
  2. package/README-DEV.md +0 -4
  3. package/README-NGINX.md +63 -0
  4. package/README.md +4 -0
  5. package/dist/cli.js +15 -7
  6. package/dist/cli.js.map +1 -1
  7. package/dist/deviceManager.d.ts +1 -1
  8. package/dist/deviceManager.d.ts.map +1 -1
  9. package/dist/deviceManager.js +1 -1
  10. package/dist/deviceManager.js.map +1 -1
  11. package/dist/index.d.ts +9 -9
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +23 -10
  14. package/dist/index.js.map +1 -1
  15. package/dist/matter/export.d.ts +5 -0
  16. package/dist/matter/export.d.ts.map +1 -0
  17. package/dist/matter/export.js +5 -0
  18. package/dist/matter/export.js.map +1 -0
  19. package/dist/matterbridge.d.ts +12 -7
  20. package/dist/matterbridge.d.ts.map +1 -1
  21. package/dist/matterbridge.js +113 -83
  22. package/dist/matterbridge.js.map +1 -1
  23. package/dist/matterbridgeAccessoryPlatform.d.ts.map +1 -1
  24. package/dist/matterbridgeAccessoryPlatform.js.map +1 -1
  25. package/dist/matterbridgeBehaviors.d.ts +1123 -0
  26. package/dist/matterbridgeBehaviors.d.ts.map +1 -0
  27. package/dist/matterbridgeBehaviors.js +281 -0
  28. package/dist/matterbridgeBehaviors.js.map +1 -0
  29. package/dist/matterbridgeDevice.d.ts +2069 -1511
  30. package/dist/matterbridgeDevice.d.ts.map +1 -1
  31. package/dist/matterbridgeDevice.js +192 -196
  32. package/dist/matterbridgeDevice.js.map +1 -1
  33. package/dist/matterbridgeDeviceTypes.d.ts +58 -0
  34. package/dist/matterbridgeDeviceTypes.d.ts.map +1 -0
  35. package/dist/matterbridgeDeviceTypes.js +308 -0
  36. package/dist/matterbridgeDeviceTypes.js.map +1 -0
  37. package/dist/matterbridgeDynamicPlatform.d.ts.map +1 -1
  38. package/dist/matterbridgeDynamicPlatform.js.map +1 -1
  39. package/dist/matterbridgeEdge.d.ts +19 -20
  40. package/dist/matterbridgeEdge.d.ts.map +1 -1
  41. package/dist/matterbridgeEdge.js +505 -102
  42. package/dist/matterbridgeEdge.js.map +1 -1
  43. package/dist/matterbridgeEndpoint.d.ts +3544 -2304
  44. package/dist/matterbridgeEndpoint.d.ts.map +1 -1
  45. package/dist/matterbridgeEndpoint.js +671 -467
  46. package/dist/matterbridgeEndpoint.js.map +1 -1
  47. package/dist/matterbridgePlatform.d.ts +4 -3
  48. package/dist/matterbridgePlatform.d.ts.map +1 -1
  49. package/dist/matterbridgePlatform.js +10 -2
  50. package/dist/matterbridgePlatform.js.map +1 -1
  51. package/dist/matterbridgeTypes.d.ts +7 -8
  52. package/dist/matterbridgeTypes.d.ts.map +1 -1
  53. package/dist/matterbridgeTypes.js.map +1 -1
  54. package/dist/matterbridgeWebsocket.d.ts +1 -1
  55. package/dist/matterbridgeWebsocket.d.ts.map +1 -1
  56. package/dist/matterbridgeWebsocket.js +5 -3
  57. package/dist/matterbridgeWebsocket.js.map +1 -1
  58. package/dist/pluginManager.d.ts.map +1 -1
  59. package/dist/pluginManager.js +16 -7
  60. package/dist/pluginManager.js.map +1 -1
  61. package/dist/utils/colorUtils.js +1 -1
  62. package/dist/utils/colorUtils.js.map +1 -1
  63. package/dist/utils/utils.d.ts +21 -0
  64. package/dist/utils/utils.d.ts.map +1 -1
  65. package/dist/utils/utils.js +49 -3
  66. package/dist/utils/utils.js.map +1 -1
  67. package/frontend/build/asset-manifest.json +62 -6
  68. package/frontend/build/index.html +1 -1
  69. package/frontend/build/static/css/main.823e08b6.css +2 -0
  70. package/frontend/build/static/css/main.823e08b6.css.map +1 -0
  71. package/frontend/build/static/js/main.a14c87e7.js +115 -0
  72. package/frontend/build/static/js/{main.045d08f7.js.LICENSE.txt → main.a14c87e7.js.LICENSE.txt} +3 -3
  73. package/frontend/build/static/js/main.a14c87e7.js.map +1 -0
  74. package/frontend/build/static/media/roboto-cyrillic-300-normal.1b79538ccd585c259996.woff2 +0 -0
  75. package/frontend/build/static/media/roboto-cyrillic-300-normal.5f077fd7b977d1715acf.woff +0 -0
  76. package/frontend/build/static/media/roboto-cyrillic-400-normal.5d2930082227d172f62c.woff +0 -0
  77. package/frontend/build/static/media/roboto-cyrillic-400-normal.a9e19870cf6c4b973427.woff2 +0 -0
  78. package/frontend/build/static/media/roboto-cyrillic-500-normal.0ae2428323939af5e1ad.woff2 +0 -0
  79. package/frontend/build/static/media/roboto-cyrillic-500-normal.dd7bc8a52c6c70c5a3f5.woff +0 -0
  80. package/frontend/build/static/media/roboto-cyrillic-700-normal.3f6e1548bd5175a8c342.woff +0 -0
  81. package/frontend/build/static/media/roboto-cyrillic-700-normal.4fdfc29a10e7d4b7c527.woff2 +0 -0
  82. package/frontend/build/static/media/roboto-cyrillic-ext-300-normal.795dbc8140e3fef82983.woff +0 -0
  83. package/frontend/build/static/media/roboto-cyrillic-ext-300-normal.80947a31d23c70204b47.woff2 +0 -0
  84. package/frontend/build/static/media/roboto-cyrillic-ext-400-normal.135d076fa32aa0b4d105.woff +0 -0
  85. package/frontend/build/static/media/roboto-cyrillic-ext-400-normal.5cec61a21cc20180fbe1.woff2 +0 -0
  86. package/frontend/build/static/media/roboto-cyrillic-ext-500-normal.6de16332fda843a3dc3d.woff2 +0 -0
  87. package/frontend/build/static/media/roboto-cyrillic-ext-500-normal.c0a0638f90b31d6454ba.woff +0 -0
  88. package/frontend/build/static/media/roboto-cyrillic-ext-700-normal.4750292c47fa2bc6ac1a.woff2 +0 -0
  89. package/frontend/build/static/media/roboto-cyrillic-ext-700-normal.ca247189fc12d00de361.woff +0 -0
  90. package/frontend/build/static/media/roboto-greek-300-normal.285f3e6261d8eb20417d.woff2 +0 -0
  91. package/frontend/build/static/media/roboto-greek-300-normal.889beddda1c9bd9f97df.woff +0 -0
  92. package/frontend/build/static/media/roboto-greek-400-normal.160a791a8e4f46bca3cc.woff +0 -0
  93. package/frontend/build/static/media/roboto-greek-400-normal.2c32b1315be61477013a.woff2 +0 -0
  94. package/frontend/build/static/media/roboto-greek-500-normal.60810e07c7b0273013aa.woff +0 -0
  95. package/frontend/build/static/media/roboto-greek-500-normal.f95e757c5483310f9c11.woff2 +0 -0
  96. package/frontend/build/static/media/roboto-greek-700-normal.77dd370f2001e184ba0d.woff2 +0 -0
  97. package/frontend/build/static/media/roboto-greek-700-normal.df87b053fae3d7ad5f7a.woff +0 -0
  98. package/frontend/build/static/media/roboto-greek-ext-300-normal.b590dbe5c639944366d1.woff +0 -0
  99. package/frontend/build/static/media/roboto-greek-ext-300-normal.d6049cb54aa6fbe14c42.woff2 +0 -0
  100. package/frontend/build/static/media/roboto-greek-ext-400-normal.16eb83b4a3b1ea994243.woff +0 -0
  101. package/frontend/build/static/media/roboto-greek-ext-400-normal.1df4abad55796d11a0c8.woff2 +0 -0
  102. package/frontend/build/static/media/roboto-greek-ext-500-normal.4a96ba31abcce0f5d52b.woff2 +0 -0
  103. package/frontend/build/static/media/roboto-greek-ext-500-normal.fd28d9c008bf3af1bed7.woff +0 -0
  104. package/frontend/build/static/media/roboto-greek-ext-700-normal.2dd6febad11502dec6a6.woff2 +0 -0
  105. package/frontend/build/static/media/roboto-greek-ext-700-normal.4abdc9fff4507f17d726.woff +0 -0
  106. package/frontend/build/static/media/roboto-latin-300-normal.b850f1ff581ea232fac9.woff2 +0 -0
  107. package/frontend/build/static/media/roboto-latin-300-normal.c4bc0593c9954d79cb3a.woff +0 -0
  108. package/frontend/build/static/media/roboto-latin-400-normal.047a7839f69b209db815.woff +0 -0
  109. package/frontend/build/static/media/roboto-latin-400-normal.297d48e1b5a10c0831a9.woff2 +0 -0
  110. package/frontend/build/static/media/roboto-latin-500-normal.68d40d6d01c6f85d24ba.woff +0 -0
  111. package/frontend/build/static/media/roboto-latin-500-normal.7077203b1982951ecf76.woff2 +0 -0
  112. package/frontend/build/static/media/roboto-latin-700-normal.4535474e1cf8598695ad.woff2 +0 -0
  113. package/frontend/build/static/media/roboto-latin-700-normal.9f6a16a7770c87b2042b.woff +0 -0
  114. package/frontend/build/static/media/roboto-latin-ext-300-normal.14982a9e4857a93b6dce.woff +0 -0
  115. package/frontend/build/static/media/roboto-latin-ext-300-normal.97cbc447d4a8d41a9543.woff2 +0 -0
  116. package/frontend/build/static/media/roboto-latin-ext-400-normal.27da5b36b6d3a16f53f4.woff +0 -0
  117. package/frontend/build/static/media/roboto-latin-ext-400-normal.2eeae187764baf05867d.woff2 +0 -0
  118. package/frontend/build/static/media/roboto-latin-ext-500-normal.06c30711d588145a4541.woff +0 -0
  119. package/frontend/build/static/media/roboto-latin-ext-500-normal.9a18d7bb9ff7a6af7b32.woff2 +0 -0
  120. package/frontend/build/static/media/roboto-latin-ext-700-normal.18841836e391d39e83a8.woff2 +0 -0
  121. package/frontend/build/static/media/roboto-latin-ext-700-normal.3c5bcdd0e69c4c3ffafe.woff +0 -0
  122. package/frontend/build/static/media/roboto-vietnamese-300-normal.c96b16e5c05c7b7c3e89.woff2 +0 -0
  123. package/frontend/build/static/media/roboto-vietnamese-300-normal.f5e7cea32756dfe7af40.woff +0 -0
  124. package/frontend/build/static/media/roboto-vietnamese-400-normal.0dc97c66f9b542d6fa17.woff +0 -0
  125. package/frontend/build/static/media/roboto-vietnamese-400-normal.d3f8e26d6c27de8102b6.woff2 +0 -0
  126. package/frontend/build/static/media/roboto-vietnamese-500-normal.090fabef926bdc0e9b9f.woff2 +0 -0
  127. package/frontend/build/static/media/roboto-vietnamese-500-normal.23b7b8a2524d2d4b637b.woff +0 -0
  128. package/frontend/build/static/media/roboto-vietnamese-700-normal.0a79a9fabfc32e33f360.woff2 +0 -0
  129. package/frontend/build/static/media/roboto-vietnamese-700-normal.35ed0597568ff6f19c16.woff +0 -0
  130. package/npm-shrinkwrap.json +117 -36
  131. package/package.json +8 -3
  132. package/dist/matterbridgeController.d.ts +0 -24
  133. package/dist/matterbridgeController.d.ts.map +0 -1
  134. package/dist/matterbridgeController.js +0 -386
  135. package/dist/matterbridgeController.js.map +0 -1
  136. package/frontend/build/static/css/main.1cf003ae.css +0 -2
  137. package/frontend/build/static/css/main.1cf003ae.css.map +0 -1
  138. package/frontend/build/static/js/main.045d08f7.js +0 -3
  139. package/frontend/build/static/js/main.045d08f7.js.map +0 -1
@@ -0,0 +1,308 @@
1
+ /**
2
+ * This file contains the class MatterbridgeDevice.
3
+ *
4
+ * @file matterbridgeDeviceTypes.ts
5
+ * @author Luca Liguori
6
+ * @date 2024-11-08
7
+ * @version 1.0.0
8
+ *
9
+ * Copyright 2024, 2025, 2026 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
+ // @matter
24
+ import { AirQuality, BooleanState, BooleanStateConfiguration, BridgedDeviceBasicInformation, CarbonDioxideConcentrationMeasurement, CarbonMonoxideConcentrationMeasurement, ColorControl, DeviceEnergyManagement, DeviceEnergyManagementMode, DoorLock, ElectricalEnergyMeasurement, ElectricalPowerMeasurement, EnergyPreference, FanControl, FlowMeasurement, FormaldehydeConcentrationMeasurement, Groups, Identify, IlluminanceMeasurement, LevelControl, ModeSelect, NitrogenDioxideConcentrationMeasurement, OccupancySensing, OnOff, OzoneConcentrationMeasurement, Pm10ConcentrationMeasurement, Pm1ConcentrationMeasurement, Pm25ConcentrationMeasurement, PowerSource, PowerTopology, PressureMeasurement, RadonConcentrationMeasurement, RelativeHumidityMeasurement, SmokeCoAlarm, SwitchCluster, TemperatureMeasurement, Thermostat, ThermostatUserInterfaceConfiguration, TimeSynchronization, TotalVolatileOrganicCompoundsConcentrationMeasurement, WindowCovering, ValveConfigurationAndControl, HepaFilterMonitoring, ActivatedCarbonFilterMonitoring, Actions, FixedLabel, RvcRunMode, RvcOperationalState, RvcCleanMode, } from '@matter/main/clusters';
25
+ // @project-chip
26
+ import { DeviceClasses, DeviceTypeDefinition } from '@project-chip/matter.js/device';
27
+ // Matter 1.0 and 1.1 device types
28
+ export const bridge = DeviceTypeDefinition({
29
+ name: 'MA-aggregator',
30
+ code: 0x000e,
31
+ deviceClass: DeviceClasses.Dynamic,
32
+ revision: 1,
33
+ optionalServerClusters: [Identify.Cluster.id, Actions.Cluster.id],
34
+ });
35
+ export const powerSource = DeviceTypeDefinition({
36
+ name: 'MA-powerSource',
37
+ code: 0x0011,
38
+ deviceClass: DeviceClasses.Utility,
39
+ revision: 1,
40
+ requiredServerClusters: [PowerSource.Cluster.id],
41
+ optionalServerClusters: [],
42
+ });
43
+ export const bridgedNode = DeviceTypeDefinition({
44
+ name: 'MA-bridgedNode',
45
+ code: 0x0013,
46
+ deviceClass: DeviceClasses.Utility,
47
+ revision: 2,
48
+ requiredServerClusters: [BridgedDeviceBasicInformation.Cluster.id],
49
+ optionalServerClusters: [PowerSource.Cluster.id],
50
+ });
51
+ export const genericSwitch = DeviceTypeDefinition({
52
+ name: 'MA-genericswitch',
53
+ code: 0x000f,
54
+ deviceClass: DeviceClasses.Simple,
55
+ revision: 1,
56
+ requiredServerClusters: [Identify.Cluster.id, SwitchCluster.id],
57
+ optionalServerClusters: [FixedLabel.Cluster.id],
58
+ });
59
+ export const onOffLight = DeviceTypeDefinition({
60
+ name: 'MA-onofflight',
61
+ code: 0x0100,
62
+ deviceClass: DeviceClasses.Simple,
63
+ revision: 3,
64
+ requiredServerClusters: [Identify.Cluster.id, Groups.Cluster.id, /* Scenes.Cluster.id,*/ OnOff.Cluster.id],
65
+ optionalServerClusters: [LevelControl.Cluster.id, ColorControl.Cluster.id],
66
+ });
67
+ export const dimmableLight = DeviceTypeDefinition({
68
+ name: 'MA-dimmablelight',
69
+ code: 0x0101,
70
+ deviceClass: DeviceClasses.Simple,
71
+ revision: 3,
72
+ requiredServerClusters: [Identify.Cluster.id, Groups.Cluster.id, /* Scenes.Cluster.id,*/ OnOff.Cluster.id, LevelControl.Cluster.id],
73
+ optionalServerClusters: [ColorControl.Cluster.id],
74
+ });
75
+ export const colorTemperatureLight = DeviceTypeDefinition({
76
+ name: 'MA-colortemperaturelight',
77
+ code: 0x010c,
78
+ deviceClass: DeviceClasses.Simple,
79
+ revision: 4,
80
+ requiredServerClusters: [Identify.Cluster.id, Groups.Cluster.id, /* Scenes.Cluster.id,*/ OnOff.Cluster.id, LevelControl.Cluster.id, ColorControl.Cluster.id],
81
+ optionalServerClusters: [],
82
+ });
83
+ export const onOffOutlet = DeviceTypeDefinition({
84
+ name: 'MA-onoffpluginunit',
85
+ code: 0x010a,
86
+ deviceClass: DeviceClasses.Simple,
87
+ revision: 3,
88
+ requiredServerClusters: [Identify.Cluster.id, Groups.Cluster.id, /* Scenes.Cluster.id,*/ OnOff.Cluster.id],
89
+ optionalServerClusters: [LevelControl.Cluster.id],
90
+ });
91
+ export const dimmableOutlet = DeviceTypeDefinition({
92
+ name: 'MA-dimmablepluginunit',
93
+ code: 0x010b,
94
+ deviceClass: DeviceClasses.Simple,
95
+ revision: 3,
96
+ requiredServerClusters: [Identify.Cluster.id, Groups.Cluster.id, /* Scenes.Cluster.id,*/ OnOff.Cluster.id, LevelControl.Cluster.id],
97
+ optionalServerClusters: [],
98
+ });
99
+ export const doorLockDevice = DeviceTypeDefinition({
100
+ name: 'MA-doorLock',
101
+ code: 0xa,
102
+ deviceClass: DeviceClasses.Simple,
103
+ revision: 3,
104
+ requiredServerClusters: [Identify.Cluster.id, DoorLock.Cluster.id],
105
+ optionalServerClusters: [Groups.Cluster.id /* , Scenes.Cluster.id,*/],
106
+ });
107
+ export const coverDevice = DeviceTypeDefinition({
108
+ name: 'MA-windowCovering',
109
+ code: 0x202,
110
+ deviceClass: DeviceClasses.Simple,
111
+ revision: 3,
112
+ requiredServerClusters: [Identify.Cluster.id, WindowCovering.Cluster.id],
113
+ optionalServerClusters: [Groups.Cluster.id /* , Scenes.Cluster.id,*/],
114
+ });
115
+ export const fanDevice = DeviceTypeDefinition({
116
+ name: 'MA-fan',
117
+ code: 0x2b,
118
+ deviceClass: DeviceClasses.Simple,
119
+ revision: 2,
120
+ requiredServerClusters: [Identify.Cluster.id, FanControl.Cluster.id],
121
+ optionalServerClusters: [Groups.Cluster.id /* , Scenes.Cluster.id,*/],
122
+ });
123
+ export const thermostatDevice = DeviceTypeDefinition({
124
+ name: 'MA-thermostat',
125
+ code: 0x301,
126
+ deviceClass: DeviceClasses.Simple,
127
+ revision: 3,
128
+ requiredServerClusters: [Identify.Cluster.id, Thermostat.Cluster.id],
129
+ optionalServerClusters: [Groups.Cluster.id /* , Scenes.Cluster.id,*/, ThermostatUserInterfaceConfiguration.Cluster.id, EnergyPreference.Cluster.id, TimeSynchronization.Cluster.id],
130
+ });
131
+ export const contactSensor = DeviceTypeDefinition({
132
+ name: 'MA-contactsensor',
133
+ code: 0x0015,
134
+ deviceClass: DeviceClasses.Simple,
135
+ revision: 2,
136
+ requiredServerClusters: [Identify.Cluster.id, BooleanState.Cluster.id],
137
+ });
138
+ export const lightSensor = DeviceTypeDefinition({
139
+ name: 'MA-lightsensor',
140
+ code: 0x0106,
141
+ deviceClass: DeviceClasses.Simple,
142
+ revision: 3,
143
+ requiredServerClusters: [Identify.Cluster.id, IlluminanceMeasurement.Cluster.id],
144
+ optionalClientClusters: [Groups.Cluster.id],
145
+ });
146
+ export const occupanceySensor = DeviceTypeDefinition({
147
+ name: 'MA-occupancysensor',
148
+ code: 0x0107,
149
+ deviceClass: DeviceClasses.Simple,
150
+ revision: 3,
151
+ requiredServerClusters: [Identify.Cluster.id, OccupancySensing.Cluster.id],
152
+ });
153
+ export const temperatureSensor = DeviceTypeDefinition({
154
+ name: 'MA-tempsensor',
155
+ code: 0x0302,
156
+ deviceClass: DeviceClasses.Simple,
157
+ revision: 2,
158
+ requiredServerClusters: [Identify.Cluster.id, TemperatureMeasurement.Cluster.id],
159
+ });
160
+ export const pressureSensor = DeviceTypeDefinition({
161
+ name: 'MA-pressuresensor',
162
+ code: 0x0305,
163
+ deviceClass: DeviceClasses.Simple,
164
+ revision: 2,
165
+ requiredServerClusters: [Identify.Cluster.id, PressureMeasurement.Cluster.id],
166
+ });
167
+ export const flowSensor = DeviceTypeDefinition({
168
+ name: 'MA-flowsensor',
169
+ code: 0x0306,
170
+ deviceClass: DeviceClasses.Simple,
171
+ revision: 2,
172
+ requiredServerClusters: [Identify.Cluster.id, FlowMeasurement.Cluster.id],
173
+ });
174
+ export const humiditySensor = DeviceTypeDefinition({
175
+ name: 'MA-humiditysensor',
176
+ code: 0x0307,
177
+ deviceClass: DeviceClasses.Simple,
178
+ revision: 2,
179
+ requiredServerClusters: [Identify.Cluster.id, RelativeHumidityMeasurement.Cluster.id],
180
+ });
181
+ export const modeSelect = DeviceTypeDefinition({
182
+ name: 'MA-modeselect',
183
+ code: 0x27,
184
+ deviceClass: DeviceClasses.Simple,
185
+ revision: 1,
186
+ requiredServerClusters: [ModeSelect.Cluster.id],
187
+ });
188
+ export const roboticVacuumCleaner = DeviceTypeDefinition({
189
+ name: 'MA-roboticvacuumcleaner',
190
+ code: 0x74,
191
+ deviceClass: DeviceClasses.Simple,
192
+ revision: 2,
193
+ requiredServerClusters: [Identify.Cluster.id, RvcRunMode.Cluster.id, RvcOperationalState.Cluster.id],
194
+ optionalServerClusters: [RvcCleanMode.Cluster.id],
195
+ });
196
+ // Custom device types without ClientClusters
197
+ export const onOffSwitch = DeviceTypeDefinition({
198
+ name: 'MA-onoffswitch',
199
+ code: 0x0103,
200
+ deviceClass: DeviceClasses.Simple,
201
+ revision: 3,
202
+ requiredServerClusters: [Identify.Cluster.id, Groups.Cluster.id, /* Scenes.Cluster.id,*/ OnOff.Cluster.id],
203
+ optionalServerClusters: [LevelControl.Cluster.id, ColorControl.Cluster.id],
204
+ });
205
+ export const dimmableSwitch = DeviceTypeDefinition({
206
+ name: 'MA-dimmableswitch',
207
+ code: 0x0104,
208
+ deviceClass: DeviceClasses.Simple,
209
+ revision: 3,
210
+ requiredServerClusters: [Identify.Cluster.id, Groups.Cluster.id, /* Scenes.Cluster.id,*/ OnOff.Cluster.id, LevelControl.Cluster.id],
211
+ optionalServerClusters: [ColorControl.Cluster.id],
212
+ });
213
+ export const colorTemperatureSwitch = DeviceTypeDefinition({
214
+ name: 'MA-colortemperatureswitch',
215
+ code: 0x0105,
216
+ deviceClass: DeviceClasses.Simple,
217
+ revision: 3,
218
+ requiredServerClusters: [Identify.Cluster.id, Groups.Cluster.id, /* Scenes.Cluster.id,*/ OnOff.Cluster.id, LevelControl.Cluster.id, ColorControl.Cluster.id],
219
+ optionalServerClusters: [],
220
+ });
221
+ // Matter 1.2 and 1.3 device types
222
+ export const airQualitySensor = DeviceTypeDefinition({
223
+ name: 'MA-airQualitySensor',
224
+ code: 0x002c,
225
+ deviceClass: DeviceClasses.Simple,
226
+ revision: 1,
227
+ requiredServerClusters: [Identify.Cluster.id, AirQuality.Cluster.id],
228
+ optionalServerClusters: [
229
+ TemperatureMeasurement.Cluster.id,
230
+ RelativeHumidityMeasurement.Cluster.id,
231
+ CarbonMonoxideConcentrationMeasurement.Cluster.id,
232
+ CarbonDioxideConcentrationMeasurement.Cluster.id,
233
+ NitrogenDioxideConcentrationMeasurement.Cluster.id,
234
+ OzoneConcentrationMeasurement.Cluster.id,
235
+ FormaldehydeConcentrationMeasurement.Cluster.id,
236
+ Pm1ConcentrationMeasurement.Cluster.id,
237
+ Pm25ConcentrationMeasurement.Cluster.id,
238
+ Pm10ConcentrationMeasurement.Cluster.id,
239
+ RadonConcentrationMeasurement.Cluster.id,
240
+ TotalVolatileOrganicCompoundsConcentrationMeasurement.Cluster.id,
241
+ ],
242
+ });
243
+ export const waterFreezeDetector = DeviceTypeDefinition({
244
+ name: 'MA-waterFreezeDetector',
245
+ code: 0x0041,
246
+ deviceClass: DeviceClasses.Simple,
247
+ revision: 1,
248
+ requiredServerClusters: [Identify.Cluster.id, BooleanState.Cluster.id],
249
+ optionalServerClusters: [BooleanStateConfiguration.Cluster.id],
250
+ });
251
+ export const waterLeakDetector = DeviceTypeDefinition({
252
+ name: 'MA-waterLeakDetector',
253
+ code: 0x0043,
254
+ deviceClass: DeviceClasses.Simple,
255
+ revision: 1,
256
+ requiredServerClusters: [Identify.Cluster.id, BooleanState.Cluster.id],
257
+ optionalServerClusters: [BooleanStateConfiguration.Cluster.id],
258
+ });
259
+ export const rainSensor = DeviceTypeDefinition({
260
+ name: 'MA-rainSensor',
261
+ code: 0x0044,
262
+ deviceClass: DeviceClasses.Simple,
263
+ revision: 1,
264
+ requiredServerClusters: [Identify.Cluster.id, BooleanState.Cluster.id],
265
+ optionalServerClusters: [BooleanStateConfiguration.Cluster.id],
266
+ });
267
+ // Remark: A Smoke CO Alarm device type SHALL support an instance of a Power Source device type on some endpoint.
268
+ export const smokeCoAlarm = DeviceTypeDefinition({
269
+ name: 'MA-smokeCoAlarm',
270
+ code: 0x0076,
271
+ deviceClass: DeviceClasses.Simple,
272
+ revision: 1,
273
+ requiredServerClusters: [Identify.Cluster.id, SmokeCoAlarm.Cluster.id],
274
+ optionalServerClusters: [Groups.Cluster.id, TemperatureMeasurement.Cluster.id, RelativeHumidityMeasurement.Cluster.id, CarbonMonoxideConcentrationMeasurement.Cluster.id],
275
+ });
276
+ export const waterValve = DeviceTypeDefinition({
277
+ name: 'MA-waterValve',
278
+ code: 0x42,
279
+ deviceClass: DeviceClasses.Simple,
280
+ revision: 1,
281
+ requiredServerClusters: [Identify.Cluster.id, ValveConfigurationAndControl.Cluster.id],
282
+ optionalServerClusters: [FlowMeasurement.Cluster.id],
283
+ });
284
+ export const airPurifier = DeviceTypeDefinition({
285
+ name: 'MA-airPurifier',
286
+ code: 0x2d,
287
+ deviceClass: DeviceClasses.Simple,
288
+ revision: 1,
289
+ requiredServerClusters: [Identify.Cluster.id, FanControl.Cluster.id],
290
+ optionalServerClusters: [Groups.Cluster.id, HepaFilterMonitoring.Cluster.id, ActivatedCarbonFilterMonitoring.Cluster.id],
291
+ });
292
+ export const electricalSensor = DeviceTypeDefinition({
293
+ name: 'MA-electricalSensor',
294
+ code: 0x0510,
295
+ deviceClass: DeviceClasses.Utility,
296
+ revision: 1,
297
+ requiredServerClusters: [PowerTopology.Cluster.id],
298
+ optionalServerClusters: [ElectricalPowerMeasurement.Cluster.id, ElectricalEnergyMeasurement.Cluster.id],
299
+ });
300
+ export const deviceEnergyManagement = DeviceTypeDefinition({
301
+ name: 'MA-deviceEnergyManagement',
302
+ code: 0x050d,
303
+ deviceClass: DeviceClasses.Utility,
304
+ revision: 1,
305
+ requiredServerClusters: [DeviceEnergyManagement.Cluster.id, DeviceEnergyManagementMode.Cluster.id],
306
+ optionalServerClusters: [],
307
+ });
308
+ //# sourceMappingURL=matterbridgeDeviceTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"matterbridgeDeviceTypes.js","sourceRoot":"","sources":["../src/matterbridgeDeviceTypes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"matterbridgeDynamicPlatform.d.ts","sourceRoot":"","sources":["../src/matterbridgeDynamicPlatform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;;GAGG;AACH,qBAAa,2BAA4B,SAAQ,oBAAoB;IACnE;;;;;OAKG;gBACS,YAAY,EAAE,YAAY,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc;CAQhF"}
1
+ {"version":3,"file":"matterbridgeDynamicPlatform.d.ts","sourceRoot":"","sources":["../src/matterbridgeDynamicPlatform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAGjF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;;GAGG;AACH,qBAAa,2BAA4B,SAAQ,oBAAoB;IACnE;;;;;OAKG;gBACS,YAAY,EAAE,YAAY,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc;CAQhF"}
@@ -1 +1 @@
1
- {"version":3,"file":"matterbridgeDynamicPlatform.js","sourceRoot":"","sources":["../src/matterbridgeDynamicPlatform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAGH,OAAO,EAAE,oBAAoB,EAAkB,MAAM,2BAA2B,CAAC;AAGjF;;;GAGG;AACH,MAAM,OAAO,2BAA4B,SAAQ,oBAAoB;IACnE;;;;;OAKG;IACH,YAAY,YAA0B,EAAE,GAAe,EAAE,MAAsB;QAC7E,KAAK,CAAC,YAAY,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAEjC,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAExB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,IAAI,SAAS,CAAC,CAAC;IACpD,CAAC;CACF"}
1
+ {"version":3,"file":"matterbridgeDynamicPlatform.js","sourceRoot":"","sources":["../src/matterbridgeDynamicPlatform.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH,OAAO,EAAE,oBAAoB,EAAkB,MAAM,2BAA2B,CAAC;AAKjF;;;GAGG;AACH,MAAM,OAAO,2BAA4B,SAAQ,oBAAoB;IACnE;;;;;OAKG;IACH,YAAY,YAA0B,EAAE,GAAe,EAAE,MAAsB;QAC7E,KAAK,CAAC,YAAY,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;QAEjC,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QAExB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,IAAI,SAAS,CAAC,CAAC;IACpD,CAAC;CACF"}
@@ -20,30 +20,25 @@
20
20
  * See the License for the specific language governing permissions and
21
21
  * limitations under the License. *
22
22
  */
23
- /**
24
- * Import needed modules from @project-chip/matter-node.js
25
- */
26
- import '@project-chip/matter-node.js';
27
- import { DeviceTypeId } from '@project-chip/matter-node.js/datatype';
28
- import { Storage, StorageContext, StorageManager } from '@project-chip/matter-node.js/storage';
29
- import { StorageService } from '@project-chip/matter.js/environment';
30
- import { ServerNode } from '@project-chip/matter.js/node';
31
- import { Endpoint } from '@project-chip/matter.js/endpoint';
32
- import { AggregatorEndpoint } from '@project-chip/matter.js/endpoints/AggregatorEndpoint';
33
- import { Matterbridge } from './matterbridge.js';
34
23
  import { NodeStorage } from 'node-persist-manager';
24
+ import { Matterbridge } from './matterbridge.js';
35
25
  import { MatterbridgeDevice } from './matterbridgeDevice.js';
36
- import { CommissioningServer, MatterServer } from '@project-chip/matter-node.js';
37
- import { Aggregator } from '@project-chip/matter-node.js/device';
26
+ import { MatterbridgeEndpoint } from './matterbridgeEndpoint.js';
27
+ import { DeviceTypeId } from '@matter/main';
28
+ import { ServerNode, Endpoint as EndpointNode, Environment, StorageService, StorageContext, StorageManager } from '@matter/main';
29
+ import { AggregatorEndpoint } from '@matter/main/endpoints';
30
+ import { CommissioningServer, MatterServer } from '@project-chip/matter.js';
31
+ import { Aggregator } from '@project-chip/matter.js/device';
38
32
  /**
39
33
  * Represents the MatterbridgeEdge application.
40
34
  */
41
35
  export declare class MatterbridgeEdge extends Matterbridge {
42
36
  static instance: MatterbridgeEdge | undefined;
43
- private environment;
37
+ environment: Environment;
44
38
  matterStorageService?: StorageService;
45
- private csToMatterNode;
46
- private agToMatterNode;
39
+ private csToServerNode;
40
+ private agToAggregatorEndpoint;
41
+ private activeSessions;
47
42
  private constructor();
48
43
  static loadInstance(initialize?: boolean): Promise<MatterbridgeEdge>;
49
44
  initialize(): Promise<void>;
@@ -71,14 +66,17 @@ export declare class MatterbridgeEdge extends Matterbridge {
71
66
  * @param hardwareVersionString - The hardware version string of the device (optional).
72
67
  * @returns The storage context for the commissioning server.
73
68
  */
74
- createServerNodeContext(pluginName: string, deviceName: string, deviceType: DeviceTypeId, vendorId: number, vendorName: string, productId: number, productName: string, serialNumber?: string): Promise<StorageContext<Storage>>;
75
- createServerNode(storageContext: StorageContext<Storage>, port?: number, passcode?: number, discriminator?: number): Promise<ServerNode<ServerNode.RootEndpoint>>;
76
- showServerNodeQR(matterServerNode: ServerNode, storageContext: StorageContext<Storage>): Promise<void>;
69
+ createServerNodeContext(pluginName: string, deviceName: string, deviceType: DeviceTypeId, vendorId: number, vendorName: string, productId: number, productName: string, serialNumber?: string): Promise<StorageContext>;
70
+ createServerNode(storageContext: StorageContext, port?: number, passcode?: number, discriminator?: number): Promise<ServerNode<ServerNode.RootEndpoint>>;
77
71
  startServerNode(matterServerNode: ServerNode): Promise<void>;
78
72
  stopServerNode(matterServerNode: ServerNode): Promise<void>;
79
- createAggregatorNode(storageContext: StorageContext<Storage>): Promise<Endpoint<AggregatorEndpoint>>;
73
+ createAggregatorNode(storageContext: StorageContext): Promise<EndpointNode<AggregatorEndpoint>>;
74
+ addBridgedEndpoint(pluginName: string, device: MatterbridgeEndpoint): Promise<void>;
75
+ removeBridgedEndpoint(pluginName: string, device: MatterbridgeEndpoint): Promise<void>;
76
+ removeAllBridgedEndpoints(pluginName: string): Promise<void>;
80
77
  createCommissioningServerContext(pluginName: string, deviceName: string, deviceType: DeviceTypeId, vendorId: number, vendorName: string, productId: number, productName: string): Promise<StorageContext>;
81
78
  importCommissioningServerContext(pluginName: string, device: MatterbridgeDevice): Promise<StorageContext>;
79
+ test: boolean;
82
80
  createCommisioningServer(context: StorageContext, pluginName: string): Promise<CommissioningServer>;
83
81
  createMatterAggregator(context: StorageContext, pluginName: string): Promise<Aggregator>;
84
82
  showCommissioningQRCode(commissioningServer: CommissioningServer | undefined, storageContext: StorageContext | undefined, nodeContext: NodeStorage | undefined, pluginName: string): Promise<void>;
@@ -86,5 +84,6 @@ export declare class MatterbridgeEdge extends Matterbridge {
86
84
  setAggregatorReachability(matterAggregator: Aggregator, reachable: boolean): void;
87
85
  setDeviceReachability(device: MatterbridgeDevice, reachable: boolean): void;
88
86
  startController(): Promise<void>;
87
+ testEndpoints(): Promise<void>;
89
88
  }
90
89
  //# sourceMappingURL=matterbridgeEdge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"matterbridgeEdge.d.ts","sourceRoot":"","sources":["../src/matterbridgeEdge.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH;;GAEG;AAGH,OAAO,8BAA8B,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAyB,MAAM,uCAAuC,CAAC;AAG5F,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAC/F,OAAO,EAAe,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAClF,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE1D,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sDAAsD,CAAC;AAW1F,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAIjD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAe,MAAM,8BAA8B,CAAC;AAE9F,OAAO,EAAE,UAAU,EAAU,MAAM,qCAAqC,CAAC;AAIzE;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,YAAY;IAChD,OAAgB,QAAQ,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAGvD,OAAO,CAAC,WAAW,CAAuB;IAGnC,oBAAoB,CAAC,EAAE,cAAc,CAAC;IAG7C,OAAO,CAAC,cAAc,CAA2F;IAGjH,OAAO,CAAC,cAAc,CAA+F;IAErH,OAAO;WAIe,YAAY,CAAC,UAAU,UAAQ;IAU/B,UAAU;IAwBjB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3E,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAI3D,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC;IASxC,kBAAkB,CAAC,cAAc,EAAE,cAAc,GAAG,YAAY;IAU1D,iBAAiB;IAIjB,gBAAgB;IAe/B;;;;;;;;;;;;;;;;;OAiBG;IACG,uBAAuB,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IA+BhO,gBAAgB,CAAC,cAAc,EAAE,cAAc,CAAC,OAAO,CAAC,EAAE,IAAI,SAAO,EAAE,QAAQ,SAAW,EAAE,aAAa,SAAO;IAgHhH,gBAAgB,CAAC,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAE,cAAc,CAAC,OAAO,CAAC;IAmBtF,eAAe,CAAC,gBAAgB,EAAE,UAAU;IAM5C,cAAc,CAAC,gBAAgB,EAAE,UAAU;IAM3C,oBAAoB,CAAC,cAAc,EAAE,cAAc,CAAC,OAAO,CAAC;IAMnD,gCAAgC,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAMzM,gCAAgC,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,cAAc,CAAC;IAiBzG,wBAAwB,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAsBnG,sBAAsB,CAAC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAexF,uBAAuB,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,SAAS,EAAE,cAAc,EAAE,cAAc,GAAG,SAAS,EAAE,WAAW,EAAE,WAAW,GAAG,SAAS,EAAE,UAAU,EAAE,MAAM;IAOxL,kCAAkC,CAAC,mBAAmB,EAAE,mBAAmB,EAAE,SAAS,EAAE,OAAO;IAI/F,yBAAyB,CAAC,gBAAgB,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO;IAI1E,qBAAqB,CAAC,MAAM,EAAE,kBAAkB,EAAE,SAAS,EAAE,OAAO;IAI9D,eAAe;CAG/B"}
1
+ {"version":3,"file":"matterbridgeEdge.d.ts","sourceRoot":"","sources":["../src/matterbridgeEdge.ts"],"names":[],"mappings":"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"}