matterbridge 3.2.5 → 3.2.6-dev-20250903-6ab5022

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 (279) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +1 -43
  3. package/dist/cli.js +2 -91
  4. package/dist/cliEmitter.js +0 -30
  5. package/dist/clusters/export.js +0 -2
  6. package/dist/defaultConfigSchema.js +0 -24
  7. package/dist/deviceManager.js +1 -94
  8. package/dist/devices/batteryStorage.js +1 -48
  9. package/dist/devices/cooktop.js +0 -55
  10. package/dist/devices/dishwasher.js +0 -57
  11. package/dist/devices/evse.js +10 -74
  12. package/dist/devices/export.js +0 -4
  13. package/dist/devices/extractorHood.js +0 -42
  14. package/dist/devices/heatPump.js +2 -50
  15. package/dist/devices/laundryDryer.js +3 -62
  16. package/dist/devices/laundryWasher.js +4 -70
  17. package/dist/devices/microwaveOven.js +5 -88
  18. package/dist/devices/oven.js +0 -85
  19. package/dist/devices/refrigerator.js +0 -102
  20. package/dist/devices/roboticVacuumCleaner.js +10 -96
  21. package/dist/devices/solarPower.js +0 -38
  22. package/dist/devices/temperatureControl.js +3 -25
  23. package/dist/devices/waterHeater.js +2 -82
  24. package/dist/dgram/coap.js +13 -126
  25. package/dist/dgram/dgram.js +2 -113
  26. package/dist/dgram/mb_coap.js +3 -41
  27. package/dist/dgram/mb_mdns.js +13 -51
  28. package/dist/dgram/mdns.js +137 -298
  29. package/dist/dgram/multicast.js +1 -60
  30. package/dist/dgram/unicast.js +0 -54
  31. package/dist/frontend.js +26 -451
  32. package/dist/globalMatterbridge.js +0 -47
  33. package/dist/helpers.js +0 -53
  34. package/dist/index.js +1 -30
  35. package/dist/logger/export.js +0 -1
  36. package/dist/matter/behaviors.js +0 -2
  37. package/dist/matter/clusters.js +0 -2
  38. package/dist/matter/devices.js +0 -2
  39. package/dist/matter/endpoints.js +0 -2
  40. package/dist/matter/export.js +0 -3
  41. package/dist/matter/types.js +0 -3
  42. package/dist/matterbridge.js +53 -789
  43. package/dist/matterbridgeAccessoryPlatform.js +0 -36
  44. package/dist/matterbridgeBehaviors.js +5 -65
  45. package/dist/matterbridgeDeviceTypes.js +17 -581
  46. package/dist/matterbridgeDynamicPlatform.js +0 -36
  47. package/dist/matterbridgeEndpoint.js +54 -1223
  48. package/dist/matterbridgeEndpointHelpers.js +12 -345
  49. package/dist/matterbridgePlatform.js +0 -256
  50. package/dist/matterbridgeTypes.js +0 -25
  51. package/dist/pluginManager.js +3 -249
  52. package/dist/shelly.js +7 -168
  53. package/dist/storage/export.js +0 -1
  54. package/dist/update.js +0 -69
  55. package/dist/utils/colorUtils.js +2 -97
  56. package/dist/utils/commandLine.js +0 -54
  57. package/dist/utils/copyDirectory.js +1 -38
  58. package/dist/utils/createDirectory.js +0 -33
  59. package/dist/utils/createZip.js +2 -47
  60. package/dist/utils/deepCopy.js +0 -39
  61. package/dist/utils/deepEqual.js +1 -72
  62. package/dist/utils/error.js +0 -41
  63. package/dist/utils/export.js +0 -1
  64. package/dist/utils/hex.js +0 -124
  65. package/dist/utils/isvalid.js +0 -101
  66. package/dist/utils/network.js +5 -91
  67. package/dist/utils/spawn.js +0 -40
  68. package/dist/utils/wait.js +8 -60
  69. package/frontend/build/asset-manifest.json +6 -6
  70. package/frontend/build/index.html +1 -1
  71. package/frontend/build/static/css/{main.944b63c3.css → main.a2f4846a.css} +2 -2
  72. package/frontend/build/static/css/main.a2f4846a.css.map +1 -0
  73. package/frontend/build/static/js/main.710b8f9f.js +3 -0
  74. package/frontend/build/static/js/{main.ae006df6.js.LICENSE.txt → main.710b8f9f.js.LICENSE.txt} +11 -0
  75. package/frontend/build/static/js/{main.ae006df6.js.map → main.710b8f9f.js.map} +1 -1
  76. package/frontend/package-lock.json +5 -5
  77. package/frontend/package.json +1 -1
  78. package/npm-shrinkwrap.json +8 -7
  79. package/package.json +1 -2
  80. package/dist/cli.d.ts +0 -26
  81. package/dist/cli.d.ts.map +0 -1
  82. package/dist/cli.js.map +0 -1
  83. package/dist/cliEmitter.d.ts +0 -34
  84. package/dist/cliEmitter.d.ts.map +0 -1
  85. package/dist/cliEmitter.js.map +0 -1
  86. package/dist/clusters/export.d.ts +0 -2
  87. package/dist/clusters/export.d.ts.map +0 -1
  88. package/dist/clusters/export.js.map +0 -1
  89. package/dist/defaultConfigSchema.d.ts +0 -28
  90. package/dist/defaultConfigSchema.d.ts.map +0 -1
  91. package/dist/defaultConfigSchema.js.map +0 -1
  92. package/dist/deviceManager.d.ts +0 -112
  93. package/dist/deviceManager.d.ts.map +0 -1
  94. package/dist/deviceManager.js.map +0 -1
  95. package/dist/devices/batteryStorage.d.ts +0 -48
  96. package/dist/devices/batteryStorage.d.ts.map +0 -1
  97. package/dist/devices/batteryStorage.js.map +0 -1
  98. package/dist/devices/cooktop.d.ts +0 -60
  99. package/dist/devices/cooktop.d.ts.map +0 -1
  100. package/dist/devices/cooktop.js.map +0 -1
  101. package/dist/devices/dishwasher.d.ts +0 -71
  102. package/dist/devices/dishwasher.d.ts.map +0 -1
  103. package/dist/devices/dishwasher.js.map +0 -1
  104. package/dist/devices/evse.d.ts +0 -75
  105. package/dist/devices/evse.d.ts.map +0 -1
  106. package/dist/devices/evse.js.map +0 -1
  107. package/dist/devices/export.d.ts +0 -15
  108. package/dist/devices/export.d.ts.map +0 -1
  109. package/dist/devices/export.js.map +0 -1
  110. package/dist/devices/extractorHood.d.ts +0 -46
  111. package/dist/devices/extractorHood.d.ts.map +0 -1
  112. package/dist/devices/extractorHood.js.map +0 -1
  113. package/dist/devices/heatPump.d.ts +0 -47
  114. package/dist/devices/heatPump.d.ts.map +0 -1
  115. package/dist/devices/heatPump.js.map +0 -1
  116. package/dist/devices/laundryDryer.d.ts +0 -67
  117. package/dist/devices/laundryDryer.d.ts.map +0 -1
  118. package/dist/devices/laundryDryer.js.map +0 -1
  119. package/dist/devices/laundryWasher.d.ts +0 -81
  120. package/dist/devices/laundryWasher.d.ts.map +0 -1
  121. package/dist/devices/laundryWasher.js.map +0 -1
  122. package/dist/devices/microwaveOven.d.ts +0 -168
  123. package/dist/devices/microwaveOven.d.ts.map +0 -1
  124. package/dist/devices/microwaveOven.js.map +0 -1
  125. package/dist/devices/oven.d.ts +0 -105
  126. package/dist/devices/oven.d.ts.map +0 -1
  127. package/dist/devices/oven.js.map +0 -1
  128. package/dist/devices/refrigerator.d.ts +0 -118
  129. package/dist/devices/refrigerator.d.ts.map +0 -1
  130. package/dist/devices/refrigerator.js.map +0 -1
  131. package/dist/devices/roboticVacuumCleaner.d.ts +0 -112
  132. package/dist/devices/roboticVacuumCleaner.d.ts.map +0 -1
  133. package/dist/devices/roboticVacuumCleaner.js.map +0 -1
  134. package/dist/devices/solarPower.d.ts +0 -40
  135. package/dist/devices/solarPower.d.ts.map +0 -1
  136. package/dist/devices/solarPower.js.map +0 -1
  137. package/dist/devices/temperatureControl.d.ts +0 -166
  138. package/dist/devices/temperatureControl.d.ts.map +0 -1
  139. package/dist/devices/temperatureControl.js.map +0 -1
  140. package/dist/devices/waterHeater.d.ts +0 -111
  141. package/dist/devices/waterHeater.d.ts.map +0 -1
  142. package/dist/devices/waterHeater.js.map +0 -1
  143. package/dist/dgram/coap.d.ts +0 -205
  144. package/dist/dgram/coap.d.ts.map +0 -1
  145. package/dist/dgram/coap.js.map +0 -1
  146. package/dist/dgram/dgram.d.ts +0 -140
  147. package/dist/dgram/dgram.d.ts.map +0 -1
  148. package/dist/dgram/dgram.js.map +0 -1
  149. package/dist/dgram/mb_coap.d.ts +0 -24
  150. package/dist/dgram/mb_coap.d.ts.map +0 -1
  151. package/dist/dgram/mb_coap.js.map +0 -1
  152. package/dist/dgram/mb_mdns.d.ts +0 -24
  153. package/dist/dgram/mb_mdns.d.ts.map +0 -1
  154. package/dist/dgram/mb_mdns.js.map +0 -1
  155. package/dist/dgram/mdns.d.ts +0 -288
  156. package/dist/dgram/mdns.d.ts.map +0 -1
  157. package/dist/dgram/mdns.js.map +0 -1
  158. package/dist/dgram/multicast.d.ts +0 -65
  159. package/dist/dgram/multicast.d.ts.map +0 -1
  160. package/dist/dgram/multicast.js.map +0 -1
  161. package/dist/dgram/unicast.d.ts +0 -56
  162. package/dist/dgram/unicast.d.ts.map +0 -1
  163. package/dist/dgram/unicast.js.map +0 -1
  164. package/dist/frontend.d.ts +0 -313
  165. package/dist/frontend.d.ts.map +0 -1
  166. package/dist/frontend.js.map +0 -1
  167. package/dist/globalMatterbridge.d.ts +0 -59
  168. package/dist/globalMatterbridge.d.ts.map +0 -1
  169. package/dist/globalMatterbridge.js.map +0 -1
  170. package/dist/helpers.d.ts +0 -48
  171. package/dist/helpers.d.ts.map +0 -1
  172. package/dist/helpers.js.map +0 -1
  173. package/dist/index.d.ts +0 -33
  174. package/dist/index.d.ts.map +0 -1
  175. package/dist/index.js.map +0 -1
  176. package/dist/logger/export.d.ts +0 -2
  177. package/dist/logger/export.d.ts.map +0 -1
  178. package/dist/logger/export.js.map +0 -1
  179. package/dist/matter/behaviors.d.ts +0 -2
  180. package/dist/matter/behaviors.d.ts.map +0 -1
  181. package/dist/matter/behaviors.js.map +0 -1
  182. package/dist/matter/clusters.d.ts +0 -2
  183. package/dist/matter/clusters.d.ts.map +0 -1
  184. package/dist/matter/clusters.js.map +0 -1
  185. package/dist/matter/devices.d.ts +0 -2
  186. package/dist/matter/devices.d.ts.map +0 -1
  187. package/dist/matter/devices.js.map +0 -1
  188. package/dist/matter/endpoints.d.ts +0 -2
  189. package/dist/matter/endpoints.d.ts.map +0 -1
  190. package/dist/matter/endpoints.js.map +0 -1
  191. package/dist/matter/export.d.ts +0 -5
  192. package/dist/matter/export.d.ts.map +0 -1
  193. package/dist/matter/export.js.map +0 -1
  194. package/dist/matter/types.d.ts +0 -3
  195. package/dist/matter/types.d.ts.map +0 -1
  196. package/dist/matter/types.js.map +0 -1
  197. package/dist/matterbridge.d.ts +0 -462
  198. package/dist/matterbridge.d.ts.map +0 -1
  199. package/dist/matterbridge.js.map +0 -1
  200. package/dist/matterbridgeAccessoryPlatform.d.ts +0 -42
  201. package/dist/matterbridgeAccessoryPlatform.d.ts.map +0 -1
  202. package/dist/matterbridgeAccessoryPlatform.js.map +0 -1
  203. package/dist/matterbridgeBehaviors.d.ts +0 -1351
  204. package/dist/matterbridgeBehaviors.d.ts.map +0 -1
  205. package/dist/matterbridgeBehaviors.js.map +0 -1
  206. package/dist/matterbridgeDeviceTypes.d.ts +0 -710
  207. package/dist/matterbridgeDeviceTypes.d.ts.map +0 -1
  208. package/dist/matterbridgeDeviceTypes.js.map +0 -1
  209. package/dist/matterbridgeDynamicPlatform.d.ts +0 -42
  210. package/dist/matterbridgeDynamicPlatform.d.ts.map +0 -1
  211. package/dist/matterbridgeDynamicPlatform.js.map +0 -1
  212. package/dist/matterbridgeEndpoint.d.ts +0 -1359
  213. package/dist/matterbridgeEndpoint.d.ts.map +0 -1
  214. package/dist/matterbridgeEndpoint.js.map +0 -1
  215. package/dist/matterbridgeEndpointHelpers.d.ts +0 -407
  216. package/dist/matterbridgeEndpointHelpers.d.ts.map +0 -1
  217. package/dist/matterbridgeEndpointHelpers.js.map +0 -1
  218. package/dist/matterbridgePlatform.d.ts +0 -331
  219. package/dist/matterbridgePlatform.d.ts.map +0 -1
  220. package/dist/matterbridgePlatform.js.map +0 -1
  221. package/dist/matterbridgeTypes.d.ts +0 -198
  222. package/dist/matterbridgeTypes.d.ts.map +0 -1
  223. package/dist/matterbridgeTypes.js.map +0 -1
  224. package/dist/pluginManager.d.ts +0 -270
  225. package/dist/pluginManager.d.ts.map +0 -1
  226. package/dist/pluginManager.js.map +0 -1
  227. package/dist/shelly.d.ts +0 -174
  228. package/dist/shelly.d.ts.map +0 -1
  229. package/dist/shelly.js.map +0 -1
  230. package/dist/storage/export.d.ts +0 -2
  231. package/dist/storage/export.d.ts.map +0 -1
  232. package/dist/storage/export.js.map +0 -1
  233. package/dist/update.d.ts +0 -75
  234. package/dist/update.d.ts.map +0 -1
  235. package/dist/update.js.map +0 -1
  236. package/dist/utils/colorUtils.d.ts +0 -99
  237. package/dist/utils/colorUtils.d.ts.map +0 -1
  238. package/dist/utils/colorUtils.js.map +0 -1
  239. package/dist/utils/commandLine.d.ts +0 -59
  240. package/dist/utils/commandLine.d.ts.map +0 -1
  241. package/dist/utils/commandLine.js.map +0 -1
  242. package/dist/utils/copyDirectory.d.ts +0 -33
  243. package/dist/utils/copyDirectory.d.ts.map +0 -1
  244. package/dist/utils/copyDirectory.js.map +0 -1
  245. package/dist/utils/createDirectory.d.ts +0 -34
  246. package/dist/utils/createDirectory.d.ts.map +0 -1
  247. package/dist/utils/createDirectory.js.map +0 -1
  248. package/dist/utils/createZip.d.ts +0 -39
  249. package/dist/utils/createZip.d.ts.map +0 -1
  250. package/dist/utils/createZip.js.map +0 -1
  251. package/dist/utils/deepCopy.d.ts +0 -32
  252. package/dist/utils/deepCopy.d.ts.map +0 -1
  253. package/dist/utils/deepCopy.js.map +0 -1
  254. package/dist/utils/deepEqual.d.ts +0 -54
  255. package/dist/utils/deepEqual.d.ts.map +0 -1
  256. package/dist/utils/deepEqual.js.map +0 -1
  257. package/dist/utils/error.d.ts +0 -44
  258. package/dist/utils/error.d.ts.map +0 -1
  259. package/dist/utils/error.js.map +0 -1
  260. package/dist/utils/export.d.ts +0 -12
  261. package/dist/utils/export.d.ts.map +0 -1
  262. package/dist/utils/export.js.map +0 -1
  263. package/dist/utils/hex.d.ts +0 -89
  264. package/dist/utils/hex.d.ts.map +0 -1
  265. package/dist/utils/hex.js.map +0 -1
  266. package/dist/utils/isvalid.d.ts +0 -103
  267. package/dist/utils/isvalid.d.ts.map +0 -1
  268. package/dist/utils/isvalid.js.map +0 -1
  269. package/dist/utils/network.d.ts +0 -84
  270. package/dist/utils/network.d.ts.map +0 -1
  271. package/dist/utils/network.js.map +0 -1
  272. package/dist/utils/spawn.d.ts +0 -33
  273. package/dist/utils/spawn.d.ts.map +0 -1
  274. package/dist/utils/spawn.js.map +0 -1
  275. package/dist/utils/wait.d.ts +0 -54
  276. package/dist/utils/wait.d.ts.map +0 -1
  277. package/dist/utils/wait.js.map +0 -1
  278. package/frontend/build/static/css/main.944b63c3.css.map +0 -1
  279. package/frontend/build/static/js/main.ae006df6.js +0 -115
@@ -1,73 +1,36 @@
1
- /**
2
- * @description This file contains the bin mb_mdns for the class Mdns.
3
- * @file src/dgram/mb_mdns.ts
4
- * @author Luca Liguori
5
- * @created 2025-07-22
6
- * @version 1.0.0
7
- * @license Apache-2.0
8
- *
9
- * Copyright 2025, 2026, 2027 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
- // Net imports
24
1
  import { MDNS_MULTICAST_IPV4_ADDRESS, MDNS_MULTICAST_IPV6_ADDRESS, MDNS_MULTICAST_PORT } from './multicast.js';
25
2
  import { Mdns } from './mdns.js';
26
- // istanbul ignore next
27
3
  {
28
4
  const mdnsIpv4 = new Mdns('mDNS Server udp4', MDNS_MULTICAST_IPV4_ADDRESS, MDNS_MULTICAST_PORT, 'udp4', true, undefined, '0.0.0.0');
29
5
  const mdnsIpv6 = new Mdns('mDNS Server udp6', MDNS_MULTICAST_IPV6_ADDRESS, MDNS_MULTICAST_PORT, 'udp6', true, undefined, '::');
30
6
  mdnsIpv4.listNetworkInterfaces();
31
- /**
32
- * Cleanup and log device information before exiting.
33
- */
34
7
  function cleanupAndLogAndExit() {
35
8
  mdnsIpv4.stop();
36
9
  mdnsIpv6.stop();
37
10
  mdnsIpv4.logDevices();
38
11
  mdnsIpv6.logDevices();
39
- // eslint-disable-next-line n/no-process-exit
40
12
  process.exit(0);
41
13
  }
42
- /**
43
- * Queries mDNS services over UDP IPv4 and sends a response for a specific service instance.
44
- * This function sends a query for Shelly, HTTP, and services, and responds with the appropriate PTR records.
45
- */
46
14
  const queryUdp4 = () => {
47
15
  mdnsIpv4.sendQuery([
48
- { name: '_matter._tcp.local', type: 12 /* DnsRecordType.PTR */, class: 1 /* DnsClass.IN */, unicastResponse: false },
49
- { name: '_shelly._tcp.local', type: 12 /* DnsRecordType.PTR */, class: 1 /* DnsClass.IN */, unicastResponse: false },
50
- { name: '_http._tcp.local', type: 12 /* DnsRecordType.PTR */, class: 1 /* DnsClass.IN */, unicastResponse: false },
51
- { name: '_services._dns-sd._udp.local', type: 12 /* DnsRecordType.PTR */, class: 1 /* DnsClass.IN */, unicastResponse: false },
16
+ { name: '_matter._tcp.local', type: 12, class: 1, unicastResponse: false },
17
+ { name: '_shelly._tcp.local', type: 12, class: 1, unicastResponse: false },
18
+ { name: '_http._tcp.local', type: 12, class: 1, unicastResponse: false },
19
+ { name: '_services._dns-sd._udp.local', type: 12, class: 1, unicastResponse: false },
52
20
  ]);
53
21
  const ptrRdata = mdnsIpv4.encodeDnsName('matterbridge._http._tcp.local');
54
- mdnsIpv4.sendResponse('_http._tcp.local', 12 /* DnsRecordType.PTR */, 1 /* DnsClass.IN */, 120, ptrRdata);
22
+ mdnsIpv4.sendResponse('_http._tcp.local', 12, 1, 120, ptrRdata);
55
23
  };
56
- /**
57
- * Queries mDNS services over UDP IPv6 and sends a response for a specific service instance.
58
- * This function sends a query for Shelly, HTTP, and services, and responds with the appropriate PTR records.
59
- */
60
24
  const queryUdp6 = () => {
61
25
  mdnsIpv6.sendQuery([
62
- { name: '_matter._tcp.local', type: 12 /* DnsRecordType.PTR */, class: 1 /* DnsClass.IN */, unicastResponse: true },
63
- { name: '_shelly._tcp.local', type: 12 /* DnsRecordType.PTR */, class: 1 /* DnsClass.IN */, unicastResponse: true },
64
- { name: '_http._tcp.local', type: 12 /* DnsRecordType.PTR */, class: 1 /* DnsClass.IN */, unicastResponse: true },
65
- { name: '_services._dns-sd._udp.local', type: 12 /* DnsRecordType.PTR */, class: 1 /* DnsClass.IN */, unicastResponse: true },
26
+ { name: '_matter._tcp.local', type: 12, class: 1, unicastResponse: true },
27
+ { name: '_shelly._tcp.local', type: 12, class: 1, unicastResponse: true },
28
+ { name: '_http._tcp.local', type: 12, class: 1, unicastResponse: true },
29
+ { name: '_services._dns-sd._udp.local', type: 12, class: 1, unicastResponse: true },
66
30
  ]);
67
31
  const ptrRdata = mdnsIpv6.encodeDnsName('matterbridge._http._tcp.local');
68
- mdnsIpv6.sendResponse('_http._tcp.local', 12 /* DnsRecordType.PTR */, 1 /* DnsClass.IN */, 120, ptrRdata);
32
+ mdnsIpv6.sendResponse('_http._tcp.local', 12, 1, 120, ptrRdata);
69
33
  };
70
- // Handle Ctrl+C (SIGINT) to stop and log devices
71
34
  process.on('SIGINT', () => {
72
35
  cleanupAndLogAndExit();
73
36
  });
@@ -75,7 +38,7 @@ import { Mdns } from './mdns.js';
75
38
  mdnsIpv4.on('ready', (address) => {
76
39
  mdnsIpv4.log.info(`mdnsIpv4 server ready on ${address.family} ${address.address}:${address.port}`);
77
40
  if (!process.argv.includes('--query'))
78
- return; // Skip querying if --query is not specified
41
+ return;
79
42
  queryUdp4();
80
43
  setInterval(() => {
81
44
  queryUdp4();
@@ -85,7 +48,7 @@ import { Mdns } from './mdns.js';
85
48
  mdnsIpv6.on('ready', (address) => {
86
49
  mdnsIpv6.log.info(`mdnsIpv6 server ready on ${address.family} ${address.address}:${address.port}`);
87
50
  if (!process.argv.includes('--query'))
88
- return; // Skip querying if --query is not specified
51
+ return;
89
52
  queryUdp6();
90
53
  setInterval(() => {
91
54
  queryUdp6();
@@ -93,6 +56,5 @@ import { Mdns } from './mdns.js';
93
56
  });
94
57
  setTimeout(() => {
95
58
  cleanupAndLogAndExit();
96
- }, 600000); // 10 minutes timeout to exit if no activity
59
+ }, 600000);
97
60
  }
98
- //# sourceMappingURL=mb_mdns.js.map