node-red-contrib-knx-ultimate 7.1.4 → 8.0.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 (657) hide show
  1. package/CHANGELOG.md +20 -10
  2. package/MIGRATION.md +40 -0
  3. package/README.md +32 -6
  4. package/docs/README.md +34 -0
  5. package/docs/assets/brand/made-in-italy.svg +12 -0
  6. package/examples/Alerter - Device Alert Aggregation.json +5 -2
  7. package/examples/Auto Responder - Read Request Defaults.json +5 -2
  8. package/examples/Garage - Door Controller.json +5 -2
  9. package/examples/Global Context - Expose KNX Values.json +5 -2
  10. package/examples/KNX DateTime - Set Date and Time to Bus.json +111 -89
  11. package/examples/Load Control - Manual Shedding Mode.json +5 -2
  12. package/examples/Logger ETS File and Telegram Count.json +10 -2
  13. package/examples/Scene Controller Recall and Save.json +33 -6
  14. package/examples/Staircase - Timer, Override and Block.json +5 -2
  15. package/examples/WatchDog Connect Disconnect.json +98 -70
  16. package/nodes/commonFunctions.js +0 -587
  17. package/nodes/knxUltimate-config.html +0 -14
  18. package/nodes/knxUltimate-config.js +1 -18
  19. package/nodes/knxUltimate.html +1 -6
  20. package/nodes/knxUltimateIoTBridge.html +0 -14
  21. package/nodes/knxUltimateLegacyMigration.js +75 -0
  22. package/nodes/knxUltimateMultiRouting.html +1 -7
  23. package/nodes/knxUltimateRouterFilter.html +1 -7
  24. package/nodes/knxUltimateUtility.html +0 -6
  25. package/nodes/knxUltimateViewer.html +0 -6
  26. package/nodes/locales/de/knxUltimate-config.html +0 -8
  27. package/nodes/locales/de/knxUltimate.html +0 -8
  28. package/nodes/locales/de/knxUltimateIoTBridge.html +0 -8
  29. package/nodes/locales/de/knxUltimateMultiRouting.html +0 -8
  30. package/nodes/locales/de/knxUltimateRouterFilter.html +0 -8
  31. package/nodes/locales/de/knxUltimateUtility.html +0 -8
  32. package/nodes/locales/de/knxUltimateUtility.json +16 -1
  33. package/nodes/locales/de/knxUltimateViewer.html +0 -8
  34. package/nodes/locales/en/knxUltimate-config.html +0 -8
  35. package/nodes/locales/en/knxUltimate.html +0 -8
  36. package/nodes/locales/en/knxUltimateIoTBridge.html +0 -8
  37. package/nodes/locales/en/knxUltimateMultiRouting.html +0 -8
  38. package/nodes/locales/en/knxUltimateRouterFilter.html +0 -8
  39. package/nodes/locales/en/knxUltimateUtility.html +0 -8
  40. package/nodes/locales/en/knxUltimateUtility.json +16 -1
  41. package/nodes/locales/en/knxUltimateViewer.html +0 -8
  42. package/nodes/locales/es/knxUltimate-config.html +0 -8
  43. package/nodes/locales/es/knxUltimate.html +0 -8
  44. package/nodes/locales/es/knxUltimateIoTBridge.html +0 -8
  45. package/nodes/locales/es/knxUltimateMultiRouting.html +0 -8
  46. package/nodes/locales/es/knxUltimateRouterFilter.html +0 -8
  47. package/nodes/locales/es/knxUltimateUtility.html +0 -8
  48. package/nodes/locales/es/knxUltimateUtility.json +17 -2
  49. package/nodes/locales/es/knxUltimateViewer.html +0 -8
  50. package/nodes/locales/fr/knxUltimate-config.html +0 -8
  51. package/nodes/locales/fr/knxUltimate.html +0 -8
  52. package/nodes/locales/fr/knxUltimateIoTBridge.html +0 -8
  53. package/nodes/locales/fr/knxUltimateMultiRouting.html +0 -8
  54. package/nodes/locales/fr/knxUltimateRouterFilter.html +0 -8
  55. package/nodes/locales/fr/knxUltimateUtility.html +0 -8
  56. package/nodes/locales/fr/knxUltimateUtility.json +16 -1
  57. package/nodes/locales/fr/knxUltimateViewer.html +0 -8
  58. package/nodes/locales/it/knxUltimate-config.html +0 -8
  59. package/nodes/locales/it/knxUltimate.html +0 -8
  60. package/nodes/locales/it/knxUltimateIoTBridge.html +0 -8
  61. package/nodes/locales/it/knxUltimateMultiRouting.html +0 -8
  62. package/nodes/locales/it/knxUltimateRouterFilter.html +0 -8
  63. package/nodes/locales/it/knxUltimateUtility.html +0 -8
  64. package/nodes/locales/it/knxUltimateUtility.json +16 -1
  65. package/nodes/locales/it/knxUltimateViewer.html +0 -8
  66. package/nodes/locales/zh-CN/knxUltimate-config.html +0 -8
  67. package/nodes/locales/zh-CN/knxUltimate.html +0 -8
  68. package/nodes/locales/zh-CN/knxUltimateIoTBridge.html +0 -8
  69. package/nodes/locales/zh-CN/knxUltimateMultiRouting.html +0 -8
  70. package/nodes/locales/zh-CN/knxUltimateRouterFilter.html +0 -8
  71. package/nodes/locales/zh-CN/knxUltimateUtility.html +0 -8
  72. package/nodes/locales/zh-CN/knxUltimateUtility.json +16 -1
  73. package/nodes/locales/zh-CN/knxUltimateViewer.html +0 -8
  74. package/nodes/plugins/knxUltimate-v8-migration-recovery-plugin.html +140 -0
  75. package/package.json +22 -69
  76. package/resources/11f26b4500.js +2 -2
  77. package/resources/KNXAIChatAdapterMappings.js +2 -416
  78. package/resources/configNodeEditorSelection.js +2 -32
  79. package/resources/hueControllerEditorSelection.js +2 -32
  80. package/resources/hueControllerMigrationDialog.js +2 -254
  81. package/resources/hueControllerProfiles.js +2 -9319
  82. package/resources/knxUtilityProfiles.js +2041 -2082
  83. package/resources/legacyMigrationNotice.js +23 -111
  84. package/resources/matterQrScanner.js +2 -98
  85. package/resources/upgradeToV8.js +94 -26
  86. package/scripts/check-legacy-flows.js +142 -0
  87. package/examples/Hue Area Motion - Zone Presence.json +0 -77
  88. package/examples/Hue Battery - Level Status.json +0 -77
  89. package/examples/Hue Button - Short and Dim Commands.json +0 -83
  90. package/examples/Hue Camera Motion - Presence.json +0 -77
  91. package/examples/Hue Config - Bridge Template.json +0 -27
  92. package/examples/Hue Contact Sensor - Open Closed.json +0 -75
  93. package/examples/Hue Device Software Update - Availability.json +0 -77
  94. package/examples/Hue Humidity Sensor - Relative Humidity.json +0 -77
  95. package/examples/Hue Light - Switch and Brightness.json +0 -67
  96. package/examples/Hue Light Sensor - Lux to KNX.json +0 -77
  97. package/examples/Hue Motion - Presence Sensor.json +0 -76
  98. package/examples/Hue Plug - Switch and State.json +0 -63
  99. package/examples/Hue Scene - Recall from KNX.json +0 -63
  100. package/examples/Hue Tap Dial - Relative Dimming.json +0 -76
  101. package/examples/Hue Temperature Sensor - Celsius to KNX.json +0 -77
  102. package/examples/Hue Zigbee Connectivity - Online Status.json +0 -77
  103. package/examples/Matter Controller - Semantic Flow Input.json +0 -248
  104. package/nodes/hue-config.html +0 -378
  105. package/nodes/hue-config.js +0 -846
  106. package/nodes/icons/node-alerter-icon.png +0 -0
  107. package/nodes/icons/node-homekit-icon.png +0 -0
  108. package/nodes/icons/node-homekit-icon.svg +0 -10
  109. package/nodes/icons/node-hue-icon.svg +0 -10
  110. package/nodes/icons/node-knx-icon.png +0 -0
  111. package/nodes/icons/node-logger-icon.png +0 -0
  112. package/nodes/icons/node-logger2-icon.png +0 -0
  113. package/nodes/icons/node-logger2-icon.svg +0 -32
  114. package/nodes/icons/node-matter-bridge-icon.svg +0 -6
  115. package/nodes/icons/node-matter-controller-icon.svg +0 -6
  116. package/nodes/icons/node-matter-icon.svg +0 -12
  117. package/nodes/icons/node-scene-icon.png +0 -0
  118. package/nodes/icons/node-watchdog-icon.png +0 -0
  119. package/nodes/knxUltimateAI.html +0 -1826
  120. package/nodes/knxUltimateAI.js +0 -16797
  121. package/nodes/knxUltimateAIHomeAssistant.html +0 -54
  122. package/nodes/knxUltimateAIHomeAssistant.js +0 -152
  123. package/nodes/knxUltimateAlerter.html +0 -267
  124. package/nodes/knxUltimateAlerter.js +0 -300
  125. package/nodes/knxUltimateAutoResponder.html +0 -128
  126. package/nodes/knxUltimateAutoResponder.js +0 -264
  127. package/nodes/knxUltimateDateTime.html +0 -579
  128. package/nodes/knxUltimateDateTime.js +0 -282
  129. package/nodes/knxUltimateGarage.html +0 -337
  130. package/nodes/knxUltimateGarage.js +0 -504
  131. package/nodes/knxUltimateGlobalContext.html +0 -145
  132. package/nodes/knxUltimateGlobalContext.js +0 -208
  133. package/nodes/knxUltimateHATranslator.html +0 -85
  134. package/nodes/knxUltimateHATranslator.js +0 -83
  135. package/nodes/knxUltimateHueAreaMotion.html +0 -670
  136. package/nodes/knxUltimateHueAreaMotion.js +0 -218
  137. package/nodes/knxUltimateHueBattery.html +0 -646
  138. package/nodes/knxUltimateHueBattery.js +0 -182
  139. package/nodes/knxUltimateHueButton.html +0 -804
  140. package/nodes/knxUltimateHueButton.js +0 -292
  141. package/nodes/knxUltimateHueCameraMotion.html +0 -671
  142. package/nodes/knxUltimateHueCameraMotion.js +0 -218
  143. package/nodes/knxUltimateHueContactSensor.html +0 -609
  144. package/nodes/knxUltimateHueContactSensor.js +0 -188
  145. package/nodes/knxUltimateHueController.html +0 -1765
  146. package/nodes/knxUltimateHueController.js +0 -28
  147. package/nodes/knxUltimateHueHumiditySensor.html +0 -641
  148. package/nodes/knxUltimateHueHumiditySensor.js +0 -201
  149. package/nodes/knxUltimateHueLight.html +0 -2516
  150. package/nodes/knxUltimateHueLight.js +0 -1582
  151. package/nodes/knxUltimateHueLightSensor.html +0 -636
  152. package/nodes/knxUltimateHueLightSensor.js +0 -177
  153. package/nodes/knxUltimateHueMotion.html +0 -634
  154. package/nodes/knxUltimateHueMotion.js +0 -182
  155. package/nodes/knxUltimateHuePlug.html +0 -576
  156. package/nodes/knxUltimateHuePlug.js +0 -341
  157. package/nodes/knxUltimateHueScene.html +0 -967
  158. package/nodes/knxUltimateHueScene.js +0 -349
  159. package/nodes/knxUltimateHueTapDial.html +0 -640
  160. package/nodes/knxUltimateHueTapDial.js +0 -268
  161. package/nodes/knxUltimateHueTemperatureSensor.html +0 -639
  162. package/nodes/knxUltimateHueTemperatureSensor.js +0 -184
  163. package/nodes/knxUltimateHueZigbeeConnectivity.html +0 -648
  164. package/nodes/knxUltimateHueZigbeeConnectivity.js +0 -182
  165. package/nodes/knxUltimateHuedevice_software_update.html +0 -650
  166. package/nodes/knxUltimateHuedevice_software_update.js +0 -182
  167. package/nodes/knxUltimateLoadControl.html +0 -425
  168. package/nodes/knxUltimateLoadControl.js +0 -443
  169. package/nodes/knxUltimateLogger.html +0 -197
  170. package/nodes/knxUltimateLogger.js +0 -224
  171. package/nodes/knxUltimateMatterBridge.html +0 -689
  172. package/nodes/knxUltimateMatterBridge.js +0 -464
  173. package/nodes/knxUltimateMatterControllerDevice.html +0 -2851
  174. package/nodes/knxUltimateMatterControllerDevice.js +0 -1747
  175. package/nodes/knxUltimateSceneController.html +0 -529
  176. package/nodes/knxUltimateSceneController.js +0 -437
  177. package/nodes/knxUltimateStaircase.html +0 -346
  178. package/nodes/knxUltimateStaircase.js +0 -463
  179. package/nodes/knxUltimateWatchDog.html +0 -241
  180. package/nodes/knxUltimateWatchDog.js +0 -230
  181. package/nodes/locales/de/hue-config.html +0 -33
  182. package/nodes/locales/de/hue-config.json +0 -21
  183. package/nodes/locales/de/knxUltimateAI.html +0 -13
  184. package/nodes/locales/de/knxUltimateAI.json +0 -231
  185. package/nodes/locales/de/knxUltimateAIHomeAssistant.html +0 -11
  186. package/nodes/locales/de/knxUltimateAlerter.html +0 -159
  187. package/nodes/locales/de/knxUltimateAlerter.json +0 -27
  188. package/nodes/locales/de/knxUltimateAutoResponder.html +0 -96
  189. package/nodes/locales/de/knxUltimateAutoResponder.json +0 -8
  190. package/nodes/locales/de/knxUltimateDateTime.html +0 -45
  191. package/nodes/locales/de/knxUltimateDateTime.json +0 -32
  192. package/nodes/locales/de/knxUltimateGarage.html +0 -79
  193. package/nodes/locales/de/knxUltimateGarage.json +0 -51
  194. package/nodes/locales/de/knxUltimateGlobalContext.html +0 -76
  195. package/nodes/locales/de/knxUltimateGlobalContext.json +0 -24
  196. package/nodes/locales/de/knxUltimateHATranslator.html +0 -25
  197. package/nodes/locales/de/knxUltimateHATranslator.json +0 -8
  198. package/nodes/locales/de/knxUltimateHueAreaMotion.html +0 -44
  199. package/nodes/locales/de/knxUltimateHueAreaMotion.json +0 -31
  200. package/nodes/locales/de/knxUltimateHueBattery.html +0 -37
  201. package/nodes/locales/de/knxUltimateHueBattery.json +0 -30
  202. package/nodes/locales/de/knxUltimateHueButton.html +0 -52
  203. package/nodes/locales/de/knxUltimateHueButton.json +0 -34
  204. package/nodes/locales/de/knxUltimateHueCameraMotion.html +0 -38
  205. package/nodes/locales/de/knxUltimateHueCameraMotion.json +0 -30
  206. package/nodes/locales/de/knxUltimateHueContactSensor.html +0 -35
  207. package/nodes/locales/de/knxUltimateHueContactSensor.json +0 -26
  208. package/nodes/locales/de/knxUltimateHueController.html +0 -690
  209. package/nodes/locales/de/knxUltimateHueController.json +0 -64
  210. package/nodes/locales/de/knxUltimateHueHumiditySensor.html +0 -38
  211. package/nodes/locales/de/knxUltimateHueHumiditySensor.json +0 -30
  212. package/nodes/locales/de/knxUltimateHueLight.html +0 -121
  213. package/nodes/locales/de/knxUltimateHueLight.json +0 -94
  214. package/nodes/locales/de/knxUltimateHueLightSensor.html +0 -38
  215. package/nodes/locales/de/knxUltimateHueLightSensor.json +0 -19
  216. package/nodes/locales/de/knxUltimateHueMotion.html +0 -41
  217. package/nodes/locales/de/knxUltimateHueMotion.json +0 -27
  218. package/nodes/locales/de/knxUltimateHuePlug.html +0 -50
  219. package/nodes/locales/de/knxUltimateHuePlug.json +0 -33
  220. package/nodes/locales/de/knxUltimateHueScene.html +0 -45
  221. package/nodes/locales/de/knxUltimateHueScene.json +0 -41
  222. package/nodes/locales/de/knxUltimateHueTapDial.html +0 -40
  223. package/nodes/locales/de/knxUltimateHueTapDial.json +0 -28
  224. package/nodes/locales/de/knxUltimateHueTemperatureSensor.html +0 -38
  225. package/nodes/locales/de/knxUltimateHueTemperatureSensor.json +0 -30
  226. package/nodes/locales/de/knxUltimateHueZigbeeConnectivity.html +0 -39
  227. package/nodes/locales/de/knxUltimateHueZigbeeConnectivity.json +0 -30
  228. package/nodes/locales/de/knxUltimateHuedevice_software_update.html +0 -36
  229. package/nodes/locales/de/knxUltimateHuedevice_software_update.json +0 -30
  230. package/nodes/locales/de/knxUltimateLoadControl.html +0 -69
  231. package/nodes/locales/de/knxUltimateLoadControl.json +0 -28
  232. package/nodes/locales/de/knxUltimateLogger.html +0 -126
  233. package/nodes/locales/de/knxUltimateLogger.json +0 -31
  234. package/nodes/locales/de/knxUltimateMatterBridge.html +0 -65
  235. package/nodes/locales/de/knxUltimateMatterBridge.json +0 -123
  236. package/nodes/locales/de/knxUltimateMatterControllerDevice.html +0 -57
  237. package/nodes/locales/de/knxUltimateMatterControllerDevice.json +0 -146
  238. package/nodes/locales/de/knxUltimateSceneController.html +0 -98
  239. package/nodes/locales/de/knxUltimateSceneController.json +0 -32
  240. package/nodes/locales/de/knxUltimateStaircase.html +0 -77
  241. package/nodes/locales/de/knxUltimateStaircase.json +0 -62
  242. package/nodes/locales/de/knxUltimateWatchDog.html +0 -178
  243. package/nodes/locales/de/knxUltimateWatchDog.json +0 -27
  244. package/nodes/locales/de/matter-config.html +0 -47
  245. package/nodes/locales/de/matter-config.json +0 -47
  246. package/nodes/locales/de/matterbridge-config.html +0 -45
  247. package/nodes/locales/de/matterbridge-config.json +0 -25
  248. package/nodes/locales/en/hue-config.html +0 -31
  249. package/nodes/locales/en/hue-config.json +0 -21
  250. package/nodes/locales/en/knxUltimateAI.html +0 -13
  251. package/nodes/locales/en/knxUltimateAI.json +0 -234
  252. package/nodes/locales/en/knxUltimateAIHomeAssistant.html +0 -11
  253. package/nodes/locales/en/knxUltimateAlerter.html +0 -164
  254. package/nodes/locales/en/knxUltimateAlerter.json +0 -27
  255. package/nodes/locales/en/knxUltimateAutoResponder.html +0 -94
  256. package/nodes/locales/en/knxUltimateAutoResponder.json +0 -8
  257. package/nodes/locales/en/knxUltimateDateTime.html +0 -67
  258. package/nodes/locales/en/knxUltimateDateTime.json +0 -32
  259. package/nodes/locales/en/knxUltimateGarage.html +0 -79
  260. package/nodes/locales/en/knxUltimateGarage.json +0 -51
  261. package/nodes/locales/en/knxUltimateGlobalContext.html +0 -124
  262. package/nodes/locales/en/knxUltimateGlobalContext.json +0 -24
  263. package/nodes/locales/en/knxUltimateHATranslator.html +0 -25
  264. package/nodes/locales/en/knxUltimateHATranslator.json +0 -8
  265. package/nodes/locales/en/knxUltimateHueAreaMotion.html +0 -44
  266. package/nodes/locales/en/knxUltimateHueAreaMotion.json +0 -31
  267. package/nodes/locales/en/knxUltimateHueBattery.html +0 -37
  268. package/nodes/locales/en/knxUltimateHueBattery.json +0 -30
  269. package/nodes/locales/en/knxUltimateHueButton.html +0 -52
  270. package/nodes/locales/en/knxUltimateHueButton.json +0 -34
  271. package/nodes/locales/en/knxUltimateHueCameraMotion.html +0 -38
  272. package/nodes/locales/en/knxUltimateHueCameraMotion.json +0 -30
  273. package/nodes/locales/en/knxUltimateHueContactSensor.html +0 -35
  274. package/nodes/locales/en/knxUltimateHueContactSensor.json +0 -26
  275. package/nodes/locales/en/knxUltimateHueController.html +0 -691
  276. package/nodes/locales/en/knxUltimateHueController.json +0 -64
  277. package/nodes/locales/en/knxUltimateHueHumiditySensor.html +0 -38
  278. package/nodes/locales/en/knxUltimateHueHumiditySensor.json +0 -30
  279. package/nodes/locales/en/knxUltimateHueLight.html +0 -124
  280. package/nodes/locales/en/knxUltimateHueLight.json +0 -94
  281. package/nodes/locales/en/knxUltimateHueLightSensor.html +0 -38
  282. package/nodes/locales/en/knxUltimateHueLightSensor.json +0 -19
  283. package/nodes/locales/en/knxUltimateHueMotion.html +0 -41
  284. package/nodes/locales/en/knxUltimateHueMotion.json +0 -27
  285. package/nodes/locales/en/knxUltimateHuePlug.html +0 -50
  286. package/nodes/locales/en/knxUltimateHuePlug.json +0 -33
  287. package/nodes/locales/en/knxUltimateHueScene.html +0 -45
  288. package/nodes/locales/en/knxUltimateHueScene.json +0 -41
  289. package/nodes/locales/en/knxUltimateHueTapDial.html +0 -40
  290. package/nodes/locales/en/knxUltimateHueTapDial.json +0 -28
  291. package/nodes/locales/en/knxUltimateHueTemperatureSensor.html +0 -38
  292. package/nodes/locales/en/knxUltimateHueTemperatureSensor.json +0 -30
  293. package/nodes/locales/en/knxUltimateHueZigbeeConnectivity.html +0 -39
  294. package/nodes/locales/en/knxUltimateHueZigbeeConnectivity.json +0 -30
  295. package/nodes/locales/en/knxUltimateHuedevice_software_update.html +0 -36
  296. package/nodes/locales/en/knxUltimateHuedevice_software_update.json +0 -30
  297. package/nodes/locales/en/knxUltimateLoadControl.html +0 -76
  298. package/nodes/locales/en/knxUltimateLoadControl.json +0 -28
  299. package/nodes/locales/en/knxUltimateLogger.html +0 -161
  300. package/nodes/locales/en/knxUltimateLogger.json +0 -31
  301. package/nodes/locales/en/knxUltimateMatterBridge.html +0 -65
  302. package/nodes/locales/en/knxUltimateMatterBridge.json +0 -123
  303. package/nodes/locales/en/knxUltimateMatterControllerDevice.html +0 -57
  304. package/nodes/locales/en/knxUltimateMatterControllerDevice.json +0 -146
  305. package/nodes/locales/en/knxUltimateSceneController.html +0 -117
  306. package/nodes/locales/en/knxUltimateSceneController.json +0 -32
  307. package/nodes/locales/en/knxUltimateStaircase.html +0 -77
  308. package/nodes/locales/en/knxUltimateStaircase.json +0 -62
  309. package/nodes/locales/en/knxUltimateWatchDog.html +0 -244
  310. package/nodes/locales/en/knxUltimateWatchDog.json +0 -27
  311. package/nodes/locales/en/matter-config.html +0 -47
  312. package/nodes/locales/en/matter-config.json +0 -48
  313. package/nodes/locales/en/matterbridge-config.html +0 -45
  314. package/nodes/locales/en/matterbridge-config.json +0 -25
  315. package/nodes/locales/es/hue-config.html +0 -31
  316. package/nodes/locales/es/hue-config.json +0 -21
  317. package/nodes/locales/es/knxUltimateAI.html +0 -13
  318. package/nodes/locales/es/knxUltimateAI.json +0 -231
  319. package/nodes/locales/es/knxUltimateAIHomeAssistant.html +0 -11
  320. package/nodes/locales/es/knxUltimateAlerter.html +0 -164
  321. package/nodes/locales/es/knxUltimateAlerter.json +0 -27
  322. package/nodes/locales/es/knxUltimateAutoResponder.html +0 -81
  323. package/nodes/locales/es/knxUltimateAutoResponder.json +0 -8
  324. package/nodes/locales/es/knxUltimateDateTime.html +0 -45
  325. package/nodes/locales/es/knxUltimateDateTime.json +0 -32
  326. package/nodes/locales/es/knxUltimateGarage.html +0 -79
  327. package/nodes/locales/es/knxUltimateGarage.json +0 -51
  328. package/nodes/locales/es/knxUltimateGlobalContext.html +0 -128
  329. package/nodes/locales/es/knxUltimateGlobalContext.json +0 -24
  330. package/nodes/locales/es/knxUltimateHATranslator.html +0 -25
  331. package/nodes/locales/es/knxUltimateHATranslator.json +0 -8
  332. package/nodes/locales/es/knxUltimateHueAreaMotion.html +0 -44
  333. package/nodes/locales/es/knxUltimateHueAreaMotion.json +0 -31
  334. package/nodes/locales/es/knxUltimateHueBattery.html +0 -37
  335. package/nodes/locales/es/knxUltimateHueBattery.json +0 -30
  336. package/nodes/locales/es/knxUltimateHueButton.html +0 -52
  337. package/nodes/locales/es/knxUltimateHueButton.json +0 -34
  338. package/nodes/locales/es/knxUltimateHueCameraMotion.html +0 -38
  339. package/nodes/locales/es/knxUltimateHueCameraMotion.json +0 -30
  340. package/nodes/locales/es/knxUltimateHueContactSensor.html +0 -35
  341. package/nodes/locales/es/knxUltimateHueContactSensor.json +0 -26
  342. package/nodes/locales/es/knxUltimateHueController.html +0 -691
  343. package/nodes/locales/es/knxUltimateHueController.json +0 -64
  344. package/nodes/locales/es/knxUltimateHueHumiditySensor.html +0 -38
  345. package/nodes/locales/es/knxUltimateHueHumiditySensor.json +0 -30
  346. package/nodes/locales/es/knxUltimateHueLight.html +0 -124
  347. package/nodes/locales/es/knxUltimateHueLight.json +0 -94
  348. package/nodes/locales/es/knxUltimateHueLightSensor.html +0 -38
  349. package/nodes/locales/es/knxUltimateHueLightSensor.json +0 -19
  350. package/nodes/locales/es/knxUltimateHueMotion.html +0 -41
  351. package/nodes/locales/es/knxUltimateHueMotion.json +0 -27
  352. package/nodes/locales/es/knxUltimateHuePlug.html +0 -50
  353. package/nodes/locales/es/knxUltimateHuePlug.json +0 -33
  354. package/nodes/locales/es/knxUltimateHueScene.html +0 -45
  355. package/nodes/locales/es/knxUltimateHueScene.json +0 -41
  356. package/nodes/locales/es/knxUltimateHueTapDial.html +0 -40
  357. package/nodes/locales/es/knxUltimateHueTapDial.json +0 -28
  358. package/nodes/locales/es/knxUltimateHueTemperatureSensor.html +0 -38
  359. package/nodes/locales/es/knxUltimateHueTemperatureSensor.json +0 -30
  360. package/nodes/locales/es/knxUltimateHueZigbeeConnectivity.html +0 -39
  361. package/nodes/locales/es/knxUltimateHueZigbeeConnectivity.json +0 -30
  362. package/nodes/locales/es/knxUltimateHuedevice_software_update.html +0 -36
  363. package/nodes/locales/es/knxUltimateHuedevice_software_update.json +0 -30
  364. package/nodes/locales/es/knxUltimateLoadControl.html +0 -76
  365. package/nodes/locales/es/knxUltimateLoadControl.json +0 -28
  366. package/nodes/locales/es/knxUltimateLogger.html +0 -162
  367. package/nodes/locales/es/knxUltimateLogger.json +0 -31
  368. package/nodes/locales/es/knxUltimateMatterBridge.html +0 -65
  369. package/nodes/locales/es/knxUltimateMatterBridge.json +0 -123
  370. package/nodes/locales/es/knxUltimateMatterControllerDevice.html +0 -57
  371. package/nodes/locales/es/knxUltimateMatterControllerDevice.json +0 -146
  372. package/nodes/locales/es/knxUltimateSceneController.html +0 -115
  373. package/nodes/locales/es/knxUltimateSceneController.json +0 -32
  374. package/nodes/locales/es/knxUltimateStaircase.html +0 -77
  375. package/nodes/locales/es/knxUltimateStaircase.json +0 -62
  376. package/nodes/locales/es/knxUltimateWatchDog.html +0 -230
  377. package/nodes/locales/es/knxUltimateWatchDog.json +0 -27
  378. package/nodes/locales/es/matter-config.html +0 -47
  379. package/nodes/locales/es/matter-config.json +0 -47
  380. package/nodes/locales/es/matterbridge-config.html +0 -45
  381. package/nodes/locales/es/matterbridge-config.json +0 -25
  382. package/nodes/locales/fr/hue-config.html +0 -31
  383. package/nodes/locales/fr/hue-config.json +0 -21
  384. package/nodes/locales/fr/knxUltimateAI.html +0 -13
  385. package/nodes/locales/fr/knxUltimateAI.json +0 -231
  386. package/nodes/locales/fr/knxUltimateAIHomeAssistant.html +0 -11
  387. package/nodes/locales/fr/knxUltimateAlerter.html +0 -164
  388. package/nodes/locales/fr/knxUltimateAlerter.json +0 -27
  389. package/nodes/locales/fr/knxUltimateAutoResponder.html +0 -92
  390. package/nodes/locales/fr/knxUltimateAutoResponder.json +0 -8
  391. package/nodes/locales/fr/knxUltimateDateTime.html +0 -45
  392. package/nodes/locales/fr/knxUltimateDateTime.json +0 -32
  393. package/nodes/locales/fr/knxUltimateGarage.html +0 -79
  394. package/nodes/locales/fr/knxUltimateGarage.json +0 -51
  395. package/nodes/locales/fr/knxUltimateGlobalContext.html +0 -122
  396. package/nodes/locales/fr/knxUltimateGlobalContext.json +0 -24
  397. package/nodes/locales/fr/knxUltimateHATranslator.html +0 -25
  398. package/nodes/locales/fr/knxUltimateHATranslator.json +0 -8
  399. package/nodes/locales/fr/knxUltimateHueAreaMotion.html +0 -44
  400. package/nodes/locales/fr/knxUltimateHueAreaMotion.json +0 -31
  401. package/nodes/locales/fr/knxUltimateHueBattery.html +0 -37
  402. package/nodes/locales/fr/knxUltimateHueBattery.json +0 -30
  403. package/nodes/locales/fr/knxUltimateHueButton.html +0 -52
  404. package/nodes/locales/fr/knxUltimateHueButton.json +0 -34
  405. package/nodes/locales/fr/knxUltimateHueCameraMotion.html +0 -38
  406. package/nodes/locales/fr/knxUltimateHueCameraMotion.json +0 -30
  407. package/nodes/locales/fr/knxUltimateHueContactSensor.html +0 -35
  408. package/nodes/locales/fr/knxUltimateHueContactSensor.json +0 -26
  409. package/nodes/locales/fr/knxUltimateHueController.html +0 -691
  410. package/nodes/locales/fr/knxUltimateHueController.json +0 -64
  411. package/nodes/locales/fr/knxUltimateHueHumiditySensor.html +0 -38
  412. package/nodes/locales/fr/knxUltimateHueHumiditySensor.json +0 -30
  413. package/nodes/locales/fr/knxUltimateHueLight.html +0 -124
  414. package/nodes/locales/fr/knxUltimateHueLight.json +0 -86
  415. package/nodes/locales/fr/knxUltimateHueLightSensor.html +0 -38
  416. package/nodes/locales/fr/knxUltimateHueLightSensor.json +0 -19
  417. package/nodes/locales/fr/knxUltimateHueMotion.html +0 -41
  418. package/nodes/locales/fr/knxUltimateHueMotion.json +0 -27
  419. package/nodes/locales/fr/knxUltimateHuePlug.html +0 -50
  420. package/nodes/locales/fr/knxUltimateHuePlug.json +0 -33
  421. package/nodes/locales/fr/knxUltimateHueScene.html +0 -45
  422. package/nodes/locales/fr/knxUltimateHueScene.json +0 -41
  423. package/nodes/locales/fr/knxUltimateHueTapDial.html +0 -40
  424. package/nodes/locales/fr/knxUltimateHueTapDial.json +0 -28
  425. package/nodes/locales/fr/knxUltimateHueTemperatureSensor.html +0 -38
  426. package/nodes/locales/fr/knxUltimateHueTemperatureSensor.json +0 -30
  427. package/nodes/locales/fr/knxUltimateHueZigbeeConnectivity.html +0 -39
  428. package/nodes/locales/fr/knxUltimateHueZigbeeConnectivity.json +0 -30
  429. package/nodes/locales/fr/knxUltimateHuedevice_software_update.html +0 -36
  430. package/nodes/locales/fr/knxUltimateHuedevice_software_update.json +0 -30
  431. package/nodes/locales/fr/knxUltimateLoadControl.html +0 -76
  432. package/nodes/locales/fr/knxUltimateLoadControl.json +0 -28
  433. package/nodes/locales/fr/knxUltimateLogger.html +0 -160
  434. package/nodes/locales/fr/knxUltimateLogger.json +0 -31
  435. package/nodes/locales/fr/knxUltimateMatterBridge.html +0 -65
  436. package/nodes/locales/fr/knxUltimateMatterBridge.json +0 -123
  437. package/nodes/locales/fr/knxUltimateMatterControllerDevice.html +0 -57
  438. package/nodes/locales/fr/knxUltimateMatterControllerDevice.json +0 -146
  439. package/nodes/locales/fr/knxUltimateSceneController.html +0 -117
  440. package/nodes/locales/fr/knxUltimateSceneController.json +0 -32
  441. package/nodes/locales/fr/knxUltimateStaircase.html +0 -77
  442. package/nodes/locales/fr/knxUltimateStaircase.json +0 -62
  443. package/nodes/locales/fr/knxUltimateWatchDog.html +0 -228
  444. package/nodes/locales/fr/knxUltimateWatchDog.json +0 -27
  445. package/nodes/locales/fr/matter-config.html +0 -47
  446. package/nodes/locales/fr/matter-config.json +0 -47
  447. package/nodes/locales/fr/matterbridge-config.html +0 -45
  448. package/nodes/locales/fr/matterbridge-config.json +0 -25
  449. package/nodes/locales/it/hue-config.html +0 -33
  450. package/nodes/locales/it/hue-config.json +0 -21
  451. package/nodes/locales/it/knxUltimateAI.html +0 -13
  452. package/nodes/locales/it/knxUltimateAI.json +0 -234
  453. package/nodes/locales/it/knxUltimateAIHomeAssistant.html +0 -11
  454. package/nodes/locales/it/knxUltimateAlerter.html +0 -159
  455. package/nodes/locales/it/knxUltimateAlerter.json +0 -27
  456. package/nodes/locales/it/knxUltimateAutoResponder.html +0 -96
  457. package/nodes/locales/it/knxUltimateAutoResponder.json +0 -8
  458. package/nodes/locales/it/knxUltimateDateTime.html +0 -67
  459. package/nodes/locales/it/knxUltimateDateTime.json +0 -32
  460. package/nodes/locales/it/knxUltimateGarage.html +0 -79
  461. package/nodes/locales/it/knxUltimateGarage.json +0 -51
  462. package/nodes/locales/it/knxUltimateGlobalContext.html +0 -81
  463. package/nodes/locales/it/knxUltimateGlobalContext.json +0 -24
  464. package/nodes/locales/it/knxUltimateHATranslator.html +0 -24
  465. package/nodes/locales/it/knxUltimateHATranslator.json +0 -8
  466. package/nodes/locales/it/knxUltimateHueAreaMotion.html +0 -44
  467. package/nodes/locales/it/knxUltimateHueAreaMotion.json +0 -31
  468. package/nodes/locales/it/knxUltimateHueBattery.html +0 -37
  469. package/nodes/locales/it/knxUltimateHueBattery.json +0 -30
  470. package/nodes/locales/it/knxUltimateHueButton.html +0 -52
  471. package/nodes/locales/it/knxUltimateHueButton.json +0 -34
  472. package/nodes/locales/it/knxUltimateHueCameraMotion.html +0 -38
  473. package/nodes/locales/it/knxUltimateHueCameraMotion.json +0 -30
  474. package/nodes/locales/it/knxUltimateHueContactSensor.html +0 -35
  475. package/nodes/locales/it/knxUltimateHueContactSensor.json +0 -26
  476. package/nodes/locales/it/knxUltimateHueController.html +0 -690
  477. package/nodes/locales/it/knxUltimateHueController.json +0 -64
  478. package/nodes/locales/it/knxUltimateHueHumiditySensor 2.html +0 -11
  479. package/nodes/locales/it/knxUltimateHueHumiditySensor.html +0 -38
  480. package/nodes/locales/it/knxUltimateHueHumiditySensor.json +0 -30
  481. package/nodes/locales/it/knxUltimateHueLight.html +0 -124
  482. package/nodes/locales/it/knxUltimateHueLight.json +0 -94
  483. package/nodes/locales/it/knxUltimateHueLightSensor.html +0 -38
  484. package/nodes/locales/it/knxUltimateHueLightSensor.json +0 -19
  485. package/nodes/locales/it/knxUltimateHueMotion.html +0 -41
  486. package/nodes/locales/it/knxUltimateHueMotion.json +0 -27
  487. package/nodes/locales/it/knxUltimateHuePlug.html +0 -50
  488. package/nodes/locales/it/knxUltimateHuePlug.json +0 -33
  489. package/nodes/locales/it/knxUltimateHueScene.html +0 -45
  490. package/nodes/locales/it/knxUltimateHueScene.json +0 -41
  491. package/nodes/locales/it/knxUltimateHueTapDial.html +0 -40
  492. package/nodes/locales/it/knxUltimateHueTapDial.json +0 -28
  493. package/nodes/locales/it/knxUltimateHueTemperatureSensor.html +0 -38
  494. package/nodes/locales/it/knxUltimateHueTemperatureSensor.json +0 -30
  495. package/nodes/locales/it/knxUltimateHueZigbeeConnectivity.html +0 -39
  496. package/nodes/locales/it/knxUltimateHueZigbeeConnectivity.json +0 -30
  497. package/nodes/locales/it/knxUltimateHuedevice_software_update.html +0 -35
  498. package/nodes/locales/it/knxUltimateHuedevice_software_update.json +0 -30
  499. package/nodes/locales/it/knxUltimateLoadControl.html +0 -76
  500. package/nodes/locales/it/knxUltimateLoadControl.json +0 -28
  501. package/nodes/locales/it/knxUltimateLogger.html +0 -132
  502. package/nodes/locales/it/knxUltimateLogger.json +0 -31
  503. package/nodes/locales/it/knxUltimateMatterBridge.html +0 -65
  504. package/nodes/locales/it/knxUltimateMatterBridge.json +0 -123
  505. package/nodes/locales/it/knxUltimateMatterControllerDevice.html +0 -57
  506. package/nodes/locales/it/knxUltimateMatterControllerDevice.json +0 -146
  507. package/nodes/locales/it/knxUltimateSceneController.html +0 -101
  508. package/nodes/locales/it/knxUltimateSceneController.json +0 -32
  509. package/nodes/locales/it/knxUltimateStaircase.html +0 -77
  510. package/nodes/locales/it/knxUltimateStaircase.json +0 -62
  511. package/nodes/locales/it/knxUltimateWatchDog.html +0 -194
  512. package/nodes/locales/it/knxUltimateWatchDog.json +0 -27
  513. package/nodes/locales/it/matter-config.html +0 -47
  514. package/nodes/locales/it/matter-config.json +0 -48
  515. package/nodes/locales/it/matterbridge-config.html +0 -45
  516. package/nodes/locales/it/matterbridge-config.json +0 -25
  517. package/nodes/locales/zh-CN/hue-config.html +0 -33
  518. package/nodes/locales/zh-CN/hue-config.json +0 -21
  519. package/nodes/locales/zh-CN/knxUltimateAI.html +0 -13
  520. package/nodes/locales/zh-CN/knxUltimateAI.json +0 -231
  521. package/nodes/locales/zh-CN/knxUltimateAIHomeAssistant.html +0 -11
  522. package/nodes/locales/zh-CN/knxUltimateAlerter.html +0 -159
  523. package/nodes/locales/zh-CN/knxUltimateAlerter.json +0 -27
  524. package/nodes/locales/zh-CN/knxUltimateAutoResponder.html +0 -94
  525. package/nodes/locales/zh-CN/knxUltimateAutoResponder.json +0 -8
  526. package/nodes/locales/zh-CN/knxUltimateDateTime.html +0 -45
  527. package/nodes/locales/zh-CN/knxUltimateDateTime.json +0 -32
  528. package/nodes/locales/zh-CN/knxUltimateGarage.html +0 -79
  529. package/nodes/locales/zh-CN/knxUltimateGarage.json +0 -51
  530. package/nodes/locales/zh-CN/knxUltimateGlobalContext.html +0 -77
  531. package/nodes/locales/zh-CN/knxUltimateGlobalContext.json +0 -24
  532. package/nodes/locales/zh-CN/knxUltimateHATranslator.html +0 -25
  533. package/nodes/locales/zh-CN/knxUltimateHATranslator.json +0 -8
  534. package/nodes/locales/zh-CN/knxUltimateHueAreaMotion.html +0 -44
  535. package/nodes/locales/zh-CN/knxUltimateHueAreaMotion.json +0 -31
  536. package/nodes/locales/zh-CN/knxUltimateHueBattery.html +0 -37
  537. package/nodes/locales/zh-CN/knxUltimateHueBattery.json +0 -30
  538. package/nodes/locales/zh-CN/knxUltimateHueButton.html +0 -52
  539. package/nodes/locales/zh-CN/knxUltimateHueButton.json +0 -34
  540. package/nodes/locales/zh-CN/knxUltimateHueCameraMotion.html +0 -38
  541. package/nodes/locales/zh-CN/knxUltimateHueCameraMotion.json +0 -30
  542. package/nodes/locales/zh-CN/knxUltimateHueContactSensor.html +0 -35
  543. package/nodes/locales/zh-CN/knxUltimateHueContactSensor.json +0 -26
  544. package/nodes/locales/zh-CN/knxUltimateHueController.html +0 -693
  545. package/nodes/locales/zh-CN/knxUltimateHueController.json +0 -64
  546. package/nodes/locales/zh-CN/knxUltimateHueHumiditySensor.html +0 -38
  547. package/nodes/locales/zh-CN/knxUltimateHueHumiditySensor.json +0 -30
  548. package/nodes/locales/zh-CN/knxUltimateHueLight.html +0 -126
  549. package/nodes/locales/zh-CN/knxUltimateHueLight.json +0 -86
  550. package/nodes/locales/zh-CN/knxUltimateHueLightSensor.html +0 -38
  551. package/nodes/locales/zh-CN/knxUltimateHueLightSensor.json +0 -9
  552. package/nodes/locales/zh-CN/knxUltimateHueMotion.html +0 -41
  553. package/nodes/locales/zh-CN/knxUltimateHueMotion.json +0 -27
  554. package/nodes/locales/zh-CN/knxUltimateHuePlug.html +0 -50
  555. package/nodes/locales/zh-CN/knxUltimateHuePlug.json +0 -33
  556. package/nodes/locales/zh-CN/knxUltimateHueScene.html +0 -45
  557. package/nodes/locales/zh-CN/knxUltimateHueScene.json +0 -41
  558. package/nodes/locales/zh-CN/knxUltimateHueTapDial.html +0 -40
  559. package/nodes/locales/zh-CN/knxUltimateHueTapDial.json +0 -28
  560. package/nodes/locales/zh-CN/knxUltimateHueTemperatureSensor.html +0 -38
  561. package/nodes/locales/zh-CN/knxUltimateHueTemperatureSensor.json +0 -30
  562. package/nodes/locales/zh-CN/knxUltimateHueZigbeeConnectivity.html +0 -39
  563. package/nodes/locales/zh-CN/knxUltimateHueZigbeeConnectivity.json +0 -30
  564. package/nodes/locales/zh-CN/knxUltimateHuedevice_software_update.html +0 -36
  565. package/nodes/locales/zh-CN/knxUltimateHuedevice_software_update.json +0 -30
  566. package/nodes/locales/zh-CN/knxUltimateLoadControl.html +0 -76
  567. package/nodes/locales/zh-CN/knxUltimateLoadControl.json +0 -28
  568. package/nodes/locales/zh-CN/knxUltimateLogger.html +0 -126
  569. package/nodes/locales/zh-CN/knxUltimateLogger.json +0 -31
  570. package/nodes/locales/zh-CN/knxUltimateMatterBridge.html +0 -65
  571. package/nodes/locales/zh-CN/knxUltimateMatterBridge.json +0 -123
  572. package/nodes/locales/zh-CN/knxUltimateMatterControllerDevice.html +0 -57
  573. package/nodes/locales/zh-CN/knxUltimateMatterControllerDevice.json +0 -146
  574. package/nodes/locales/zh-CN/knxUltimateSceneController.html +0 -98
  575. package/nodes/locales/zh-CN/knxUltimateSceneController.json +0 -32
  576. package/nodes/locales/zh-CN/knxUltimateStaircase.html +0 -77
  577. package/nodes/locales/zh-CN/knxUltimateStaircase.json +0 -62
  578. package/nodes/locales/zh-CN/knxUltimateWatchDog.html +0 -178
  579. package/nodes/locales/zh-CN/knxUltimateWatchDog.json +0 -27
  580. package/nodes/locales/zh-CN/matter-config.html +0 -47
  581. package/nodes/locales/zh-CN/matter-config.json +0 -47
  582. package/nodes/locales/zh-CN/matterbridge-config.html +0 -45
  583. package/nodes/locales/zh-CN/matterbridge-config.json +0 -25
  584. package/nodes/matter-config.html +0 -578
  585. package/nodes/matter-config.js +0 -387
  586. package/nodes/matterbridge-config.html +0 -198
  587. package/nodes/matterbridge-config.js +0 -261
  588. package/nodes/plugins/knxUltimate-cerebrum-runtime-plugin.js +0 -79
  589. package/nodes/plugins/knxUltimate-migration-notice-plugin.html +0 -44
  590. package/nodes/plugins/knxUltimateAI-vue/assets/app.css +0 -1
  591. package/nodes/plugins/knxUltimateAI-vue/assets/app.js +0 -13
  592. package/nodes/plugins/knxUltimateAI-vue/assets/chunk-html2canvas.esm.js +0 -5
  593. package/nodes/plugins/knxUltimateAI-vue/assets/chunk-index.es.js +0 -5
  594. package/nodes/plugins/knxUltimateAI-vue/assets/chunk-jspdf.es.min.js +0 -79
  595. package/nodes/plugins/knxUltimateAI-vue/assets/chunk-purify.es.js +0 -3
  596. package/nodes/plugins/knxUltimateAI-vue/index.html +0 -13
  597. package/nodes/utils/HueEventStream.mjs +0 -176
  598. package/nodes/utils/colorManipulators/XYFromRGB_Supergiovane.js +0 -113
  599. package/nodes/utils/colorManipulators/hueColorConverter.js +0 -521
  600. package/nodes/utils/http.js +0 -291
  601. package/nodes/utils/hueControllerProfileAdapter.js +0 -104
  602. package/nodes/utils/hueControllerProfiles/runtime/area_motion.js +0 -221
  603. package/nodes/utils/hueControllerProfiles/runtime/button.js +0 -295
  604. package/nodes/utils/hueControllerProfiles/runtime/camera_motion.js +0 -221
  605. package/nodes/utils/hueControllerProfiles/runtime/contact.js +0 -191
  606. package/nodes/utils/hueControllerProfiles/runtime/device_power.js +0 -185
  607. package/nodes/utils/hueControllerProfiles/runtime/device_software_update.js +0 -185
  608. package/nodes/utils/hueControllerProfiles/runtime/humidity.js +0 -204
  609. package/nodes/utils/hueControllerProfiles/runtime/light.js +0 -1585
  610. package/nodes/utils/hueControllerProfiles/runtime/light_level.js +0 -180
  611. package/nodes/utils/hueControllerProfiles/runtime/motion.js +0 -185
  612. package/nodes/utils/hueControllerProfiles/runtime/plug.js +0 -344
  613. package/nodes/utils/hueControllerProfiles/runtime/relative_rotary.js +0 -271
  614. package/nodes/utils/hueControllerProfiles/runtime/scene.js +0 -352
  615. package/nodes/utils/hueControllerProfiles/runtime/temperature.js +0 -187
  616. package/nodes/utils/hueControllerProfiles/runtime/zigbee_connectivity.js +0 -185
  617. package/nodes/utils/hueControllerResourceCatalog.js +0 -71
  618. package/nodes/utils/hueEngine.mjs +0 -469
  619. package/nodes/utils/knxAiCamera.js +0 -302
  620. package/nodes/utils/knxAiCatalogRetrieval.js +0 -349
  621. package/nodes/utils/knxAiCerebrum.js +0 -406
  622. package/nodes/utils/knxAiChatContext.js +0 -496
  623. package/nodes/utils/knxAiEventHistory.js +0 -521
  624. package/nodes/utils/knxAiHomeMemory.js +0 -1021
  625. package/nodes/utils/knxAiScheduler.js +0 -445
  626. package/nodes/utils/knxAiSemanticContext.js +0 -662
  627. package/nodes/utils/knxAiTelegramVoice.js +0 -545
  628. package/nodes/utils/knxAiWebAccess.js +0 -631
  629. package/nodes/utils/lightEngines/canonicalLight.js +0 -75
  630. package/nodes/utils/lightEngines/hueLightEngine.js +0 -51
  631. package/nodes/utils/lightEngines/index.js +0 -25
  632. package/nodes/utils/lightEngines/knxLightCommand.js +0 -79
  633. package/nodes/utils/lightEngines/lightEngine.js +0 -46
  634. package/nodes/utils/lightEngines/matterHueShim.js +0 -59
  635. package/nodes/utils/lightEngines/matterLightEngine.js +0 -117
  636. package/nodes/utils/matterBridgeDeviceFactory.mjs +0 -780
  637. package/nodes/utils/matterBridgeEngine.mjs +0 -297
  638. package/nodes/utils/matterControllerCommandGate.js +0 -47
  639. package/nodes/utils/matterControllerProfiles/doorLock.js +0 -258
  640. package/nodes/utils/matterControllerProfiles/fan.js +0 -19
  641. package/nodes/utils/matterControllerProfiles/index.js +0 -34
  642. package/nodes/utils/matterControllerProfiles/mappedEndpoint.js +0 -217
  643. package/nodes/utils/matterControllerProfiles/switch.js +0 -13
  644. package/nodes/utils/matterControllerProfiles/thermostat.js +0 -19
  645. package/nodes/utils/matterControllerProfiles/universal.js +0 -462
  646. package/nodes/utils/matterControllerProfiles/windowCovering.js +0 -19
  647. package/nodes/utils/matterControllerSemanticInput.js +0 -212
  648. package/nodes/utils/matterEngine.mjs +0 -894
  649. package/nodes/utils/matterEnvironmentLock.mjs +0 -32
  650. package/nodes/utils/matterKnxConverter.js +0 -204
  651. package/nodes/utils/matterStorageBackup.js +0 -100
  652. package/resources/HA-icon.png +0 -0
  653. package/resources/dim.png +0 -0
  654. package/resources/rgb.png +0 -0
  655. package/resources/tunablewhite.png +0 -0
  656. package/resources/zxing-browser-0.2.0.min.js +0 -1
  657. package/resources/zxing-browser-LICENSE.txt +0 -21
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateViewer">
2
- ### Actualizar a KNX Ultimate 8
3
-
4
- La versión 7 muestra un pequeño botón **Actualizar a v8** en la parte superior de este editor. Descarga una copia de los flujos, instala los paquetes HUE/Matter necesarios, convierte los nodos compatibles, realiza un Deploy completo, verifica los flujos guardados e instala la versión 8. Reinicia después el servicio Node-RED cuando se indique; recargar solo el navegador no es suficiente. Los nodos antiguos KNX AI detienen la operación automática.
5
-
6
- [Guía completa de actualización](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/es-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  # KNX Viewer
11
3
 
12
4
  KNX Viewer muestra los cambios de estado de las direcciones de grupo (GA) en una tabla sencilla, similar a un monitor ETS básico.
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimate-config">
2
- ### Mise à jour vers KNX Ultimate 8
3
-
4
- La version 7 affiche un petit bouton **Mettre à jour vers v8** en haut de cet éditeur. Il télécharge une sauvegarde des flux, installe les packages HUE/Matter requis, convertit les nœuds compatibles, effectue un Deploy complet, vérifie les flux enregistrés et installe la version 8. Redémarrez ensuite le service Node-RED comme demandé ; recharger uniquement le navigateur ne suffit pas. Les anciens nœuds KNX AI arrêtent l’opération automatique.
5
-
6
- [Guide complet de mise à jour](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/fr-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  Configuration de la passerelle KNX
11
3
 
12
4
  <p> Ce nœud se connecte à votre passerelle KNX / IP. </p>
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimate">
2
- ### Mise à jour vers KNX Ultimate 8
3
-
4
- La version 7 affiche un petit bouton **Mettre à jour vers v8** en haut de cet éditeur. Il télécharge une sauvegarde des flux, installe les packages HUE/Matter requis, convertit les nœuds compatibles, effectue un Deploy complet, vérifie les flux enregistrés et installe la version 8. Redémarrez ensuite le service Node-RED comme demandé ; recharger uniquement le navigateur ne suffit pas. Les anciens nœuds KNX AI arrêtent l’opération automatique.
5
-
6
- [Guide complet de mise à jour](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/fr-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  ## Paramètres de nœud de périphérique KNX-ultimate
11
3
 
12
4
  <p> Ce nœud vous permet de contrôler une adresse de groupe KNX, c'est le nœud le plus utilisé.
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateIoTBridge">
2
- ### Mise à jour vers KNX Ultimate 8
3
-
4
- La version 7 affiche un petit bouton **Mettre à jour vers v8** en haut de cet éditeur. Il télécharge une sauvegarde des flux, installe les packages HUE/Matter requis, convertit les nœuds compatibles, effectue un Deploy complet, vérifie les flux enregistrés et installe la version 8. Redémarrez ensuite le service Node-RED comme demandé ; recharger uniquement le navigateur ne suffit pas. Les anciens nœuds KNX AI arrêtent l’opération automatique.
5
-
6
- [Guide complet de mise à jour](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/fr-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  # MQTT Home Assistant - IoT
11
3
 
12
4
  Créez des ponts bidirectionnels entre des adresses de groupe KNX et des canaux IoT (topics MQTT, points de terminaison REST, registres Modbus). Chaque correspondance peut mettre à l’échelle les valeurs, formater les charges utiles et exposer des métadonnées aux nœuds suivants.
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateMultiRouting">
2
- ### Mise à jour vers KNX Ultimate 8
3
-
4
- La version 7 affiche un petit bouton **Mettre à jour vers v8** en haut de cet éditeur. Il télécharge une sauvegarde des flux, installe les packages HUE/Matter requis, convertit les nœuds compatibles, effectue un Deploy complet, vérifie les flux enregistrés et installe la version 8. Redémarrez ensuite le service Node-RED comme demandé ; recharger uniquement le navigateur ne suffit pas. Les anciens nœuds KNX AI arrêtent l’opération automatique.
5
-
6
- [Guide complet de mise à jour](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/fr-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  Ce nœud sert à **interconnecter plusieurs gateways KNX Ultimate** (plusieurs `knxUltimate-config`) via des liaisons Node-RED.
11
3
 
12
4
  Il émet en sortie un objet contenant des informations **RAW** (APDU + cEMI hex + adresses) pour chaque télégramme reçu sur le bus KNX du gateway sélectionné.
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateRouterFilter">
2
- ### Mise à jour vers KNX Ultimate 8
3
-
4
- La version 7 affiche un petit bouton **Mettre à jour vers v8** en haut de cet éditeur. Il télécharge une sauvegarde des flux, installe les packages HUE/Matter requis, convertit les nœuds compatibles, effectue un Deploy complet, vérifie les flux enregistrés et installe la version 8. Redémarrez ensuite le service Node-RED comme demandé ; recharger uniquement le navigateur ne suffit pas. Les anciens nœuds KNX AI arrêtent l’opération automatique.
5
-
6
- [Guide complet de mise à jour](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/fr-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  Filtre des objets de télégrammes RAW (généralement produits par **KNX Multi Routing**) avant de les transmettre vers un autre gateway.
11
3
 
12
4
  ## Syntaxe des motifs
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateUtility">
2
- ### Mise à jour vers KNX Ultimate 8
3
-
4
- La version 7 affiche un petit bouton **Mettre à jour vers v8** en haut de cet éditeur. Il télécharge une sauvegarde des flux, installe les packages HUE/Matter requis, convertit les nœuds compatibles, effectue un Deploy complet, vérifie les flux enregistrés et installe la version 8. Redémarrez ensuite le service Node-RED comme demandé ; recharger uniquement le navigateur ne suffit pas. Les anciens nœuds KNX AI arrêtent l’opération automatique.
5
-
6
- [Guide complet de mise à jour](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/fr-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  # KNX Utility
11
3
 
12
4
  Sélectionnez une fonction pour chaque nœud KNX Utility. Les fonctions qui utilisent le bus KNX nécessitent une passerelle ; Home Assistant Translator traite directement les messages. L’éditeur, l’icône et les ports suivent la fonction choisie. KNX Device reste le nœud KNX principal.
@@ -50,7 +50,22 @@
50
50
  "flow_conflict": "Un autre éditeur a modifié la révision des flux. La conversion automatique a été annulée localement. Vérifiez ou exportez les modifications locales préexistantes, puis rechargez l’éditeur avant de réessayer.",
51
51
  "persistence_uncertain": "Node-RED n’a pas confirmé l’enregistrement des flux. Aucun retour arrière automatique n’a été appliqué. Rechargez l’éditeur et contrôlez les flux enregistrés avant de réessayer.",
52
52
  "flows_persisted": "Les flux convertis ont été enregistrés, mais KNX Ultimate 8 n’a pas été installé. N’effectuez aucun autre Deploy. Corrigez l’erreur signalée, rechargez l’éditeur et appuyez de nouveau sur le bouton de mise à jour :",
53
- "failed": "La mise à jour automatique s’est arrêtée en sécurité. KNX Ultimate 8 n’a pas été activé :"
53
+ "failed": "La mise à jour automatique s’est arrêtée en sécurité. KNX Ultimate 8 n’a pas été activé :",
54
+ "recovery_title": "Terminer la migration de KNX Ultimate 8",
55
+ "recovery_summary": "Des nœuds hérités ont été trouvés après l’installation de KNX Ultimate 8. Nœuds/configurations à convertir : KNX Utility {{utility}}, HUE {{hue}}, Matter {{matter}}.",
56
+ "recovery_confirm": "Une sauvegarde JSON de tous les flows sera d’abord téléchargée. Les packages HUE/Matter nécessaires seront ensuite installés et toutes les modifications actuelles de l’éditeur seront déployées. KNX Ultimate lui-même ne sera pas réinstallé. Les identifiants, le câblage, les références de configuration, les identifiants d’accès et le stockage Matter sont conservés. L’éditeur du nœud actuellement ouvert sera fermé et les modifications non encore enregistrées dans ce formulaire seront abandonnées.",
57
+ "recovery_start": "Sauvegarder et terminer la migration",
58
+ "recovery_complete_title": "Migration de KNX Ultimate 8 terminée",
59
+ "recovery_complete": "{{total}} nœuds/configurations hérités ont été convertis. Les flows enregistrés sont maintenant compatibles avec KNX Ultimate 8. Rechargez l’éditeur avant toute autre modification.",
60
+ "recovery_reload": "Recharger l’éditeur",
61
+ "recovery_standalone_restart_required": "Une mise à jour des packages HUE/Matter est prête. Redémarrez le service Node-RED, rechargez l’éditeur, puis relancez la récupération de migration. Aucun flow n’a été modifié.",
62
+ "recovery_module_install_uncertain": "Une opération sur les packages est peut-être encore en cours. Redémarrez le service Node-RED, rechargez l’éditeur et relancez la récupération de migration. Ne déployez aucun flow avant le redémarrage.",
63
+ "recovery_flows_persisted": "Les flows convertis ont été enregistrés, mais la vérification n’a pas abouti. Ne déployez pas d’autres modifications. Rechargez l’éditeur et contrôlez les flows enregistrés avant de relancer la récupération de migration :",
64
+ "recovery_failed": "La migration automatique s’est arrêtée en sécurité :",
65
+ "recovery_notice_title": "Migration de KNX Ultimate 8 requise",
66
+ "recovery_notice": "Des nœuds hérités sont encore présents : KNX Utility {{utility}}, HUE {{hue}}, Matter {{matter}}, AI {{ai}}. Terminez la migration protégée avant de modifier ou déployer des flows.",
67
+ "recovery_notice_button": "Terminer la migration",
68
+ "later": "Plus tard"
54
69
  },
55
70
  "locale": "fr",
56
71
  "function": "Fonction",
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateViewer">
2
- ### Mise à jour vers KNX Ultimate 8
3
-
4
- La version 7 affiche un petit bouton **Mettre à jour vers v8** en haut de cet éditeur. Il télécharge une sauvegarde des flux, installe les packages HUE/Matter requis, convertit les nœuds compatibles, effectue un Deploy complet, vérifie les flux enregistrés et installe la version 8. Redémarrez ensuite le service Node-RED comme demandé ; recharger uniquement le navigateur ne suffit pas. Les anciens nœuds KNX AI arrêtent l’opération automatique.
5
-
6
- [Guide complet de mise à jour](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/fr-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  # KNX Viewer
11
3
 
12
4
  KNX Viewer affiche les changements d’état des adresses de groupe (GA) dans un tableau simple, semblable à un moniteur ETS réduit à l’essentiel.
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimate-config">
2
- ### Aggiornamento a KNX Ultimate 8
3
-
4
- La versione 7 mostra un piccolo pulsante **Aggiorna alla v8** nella parte alta di questo editor. Il pulsante scarica un backup dei flow, installa i package HUE/Matter necessari, converte i nodi compatibili, esegue un Deploy completo, verifica i flow salvati e installa la versione 8. Quando richiesto, riavvia il servizio Node-RED: ricaricare soltanto il browser non basta. I nodi KNX AI legacy fermano la procedura automatica.
5
-
6
- [Guida completa all’aggiornamento](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/it-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  # Configurazione del KNX Gateway
11
3
 
12
4
  Questo nodo si connette al tuo KNX/IP Gateway.
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimate">
2
- ### Aggiornamento a KNX Ultimate 8
3
-
4
- La versione 7 mostra un piccolo pulsante **Aggiorna alla v8** nella parte alta di questo editor. Il pulsante scarica un backup dei flow, installa i package HUE/Matter necessari, converte i nodi compatibili, esegue un Deploy completo, verifica i flow salvati e installa la versione 8. Quando richiesto, riavvia il servizio Node-RED: ricaricare soltanto il browser non basta. I nodi KNX AI legacy fermano la procedura automatica.
5
-
6
- [Guida completa all’aggiornamento](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/it-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  ## IMPOSTAZIONI DEL NODO KNX-ULTIMATE (DEVICE)
11
3
 
12
4
  Questo nodo controlla un Indirizzo di Gruppo KNX; è il nodo più utilizzato.
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateIoTBridge">
2
- ### Aggiornamento a KNX Ultimate 8
3
-
4
- La versione 7 mostra un piccolo pulsante **Aggiorna alla v8** nella parte alta di questo editor. Il pulsante scarica un backup dei flow, installa i package HUE/Matter necessari, converte i nodi compatibili, esegue un Deploy completo, verifica i flow salvati e installa la versione 8. Quando richiesto, riavvia il servizio Node-RED: ricaricare soltanto il browser non basta. I nodi KNX AI legacy fermano la procedura automatica.
5
-
6
- [Guida completa all’aggiornamento](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/it-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  # MQTT Home Assistant - IoT
11
3
 
12
4
  Crea collegamenti bidirezionali tra indirizzi di gruppo KNX e canali IoT (topic MQTT, endpoint REST, registri Modbus). Ogni mappatura può scalare i valori, formattare il payload ed esporre metadati per i nodi successivi.
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateMultiRouting">
2
- ### Aggiornamento a KNX Ultimate 8
3
-
4
- La versione 7 mostra un piccolo pulsante **Aggiorna alla v8** nella parte alta di questo editor. Il pulsante scarica un backup dei flow, installa i package HUE/Matter necessari, converte i nodi compatibili, esegue un Deploy completo, verifica i flow salvati e installa la versione 8. Quando richiesto, riavvia il servizio Node-RED: ricaricare soltanto il browser non basta. I nodi KNX AI legacy fermano la procedura automatica.
5
-
6
- [Guida completa all’aggiornamento](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/it-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  Questo nodo serve per **collegare tra loro più gateway KNX Ultimate** (più `knxUltimate-config`) tramite i collegamenti di Node-RED.
11
3
 
12
4
  In output emette un oggetto con le informazioni **RAW** del telegramma (APDU + cEMI hex + indirizzi) per ogni telegramma ricevuto dal BUS KNX del gateway selezionato.
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateRouterFilter">
2
- ### Aggiornamento a KNX Ultimate 8
3
-
4
- La versione 7 mostra un piccolo pulsante **Aggiorna alla v8** nella parte alta di questo editor. Il pulsante scarica un backup dei flow, installa i package HUE/Matter necessari, converte i nodi compatibili, esegue un Deploy completo, verifica i flow salvati e installa la versione 8. Quando richiesto, riavvia il servizio Node-RED: ricaricare soltanto il browser non basta. I nodi KNX AI legacy fermano la procedura automatica.
5
-
6
- [Guida completa all’aggiornamento](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/it-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  Filtra i telegrammi RAW (tipicamente prodotti dal nodo **KNX Multi Routing**) prima di inoltrarli su un altro gateway.
11
3
 
12
4
  ## Sintassi pattern
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateUtility">
2
- ### Aggiornamento a KNX Ultimate 8
3
-
4
- La versione 7 mostra un piccolo pulsante **Aggiorna alla v8** nella parte alta di questo editor. Il pulsante scarica un backup dei flow, installa i package HUE/Matter necessari, converte i nodi compatibili, esegue un Deploy completo, verifica i flow salvati e installa la versione 8. Quando richiesto, riavvia il servizio Node-RED: ricaricare soltanto il browser non basta. I nodi KNX AI legacy fermano la procedura automatica.
5
-
6
- [Guida completa all’aggiornamento](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/it-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  # KNX Utility
11
3
 
12
4
  Scegli una funzione per ogni nodo KNX Utility. Le funzioni che usano il bus KNX richiedono un gateway; Home Assistant Translator lavora direttamente sui messaggi. Editor, icona e porte seguono la funzione selezionata. KNX Device resta il nodo KNX principale.
@@ -50,7 +50,22 @@
50
50
  "flow_conflict": "Un altro editor ha modificato la revisione dei flow. La conversione automatica è stata annullata localmente. Controlla o esporta le modifiche locali già presenti, quindi ricarica l’editor prima di riprovare.",
51
51
  "persistence_uncertain": "Node-RED non ha confermato il salvataggio dei flow. Non è stato eseguito alcun rollback automatico. Ricarica l’editor e controlla i flow salvati prima di riprovare.",
52
52
  "flows_persisted": "I flow convertiti sono stati salvati, ma KNX Ultimate 8 non è stato installato. Non eseguire altri Deploy. Risolvi l’errore indicato, ricarica l’editor e premi nuovamente il pulsante di aggiornamento:",
53
- "failed": "L’aggiornamento automatico si è fermato in sicurezza. KNX Ultimate 8 non è stato attivato:"
53
+ "failed": "L’aggiornamento automatico si è fermato in sicurezza. KNX Ultimate 8 non è stato attivato:",
54
+ "recovery_title": "Completa la migrazione di KNX Ultimate 8",
55
+ "recovery_summary": "Sono stati trovati nodi legacy dopo l’installazione di KNX Ultimate 8. Nodi/configurazioni da convertire: KNX Utility {{utility}}, HUE {{hue}}, Matter {{matter}}.",
56
+ "recovery_confirm": "Verrà prima scaricato un backup JSON di tutti i flow. Saranno quindi installati i package HUE/Matter necessari e verranno distribuite tutte le modifiche correnti dell’editor. KNX Ultimate non verrà reinstallato. ID, collegamenti, riferimenti alle configurazioni, credenziali e storage Matter vengono preservati. L’editor del nodo attualmente aperto verrà chiuso e le modifiche non ancora salvate nel form saranno scartate.",
57
+ "recovery_start": "Backup e completa la migrazione",
58
+ "recovery_complete_title": "Migrazione di KNX Ultimate 8 completata",
59
+ "recovery_complete": "Convertiti {{total}} nodi/configurazioni legacy. I flow salvati sono ora compatibili con KNX Ultimate 8. Ricarica l'editor prima di apportare altre modifiche.",
60
+ "recovery_reload": "Ricarica editor",
61
+ "recovery_standalone_restart_required": "È pronto un aggiornamento dei package HUE/Matter. Riavvia il servizio Node-RED, ricarica l’editor e avvia nuovamente il recupero della migrazione. Nessun flow è stato modificato.",
62
+ "recovery_module_install_uncertain": "Un’operazione sui package potrebbe essere ancora in corso. Riavvia il servizio Node-RED, ricarica l’editor e avvia nuovamente il recupero della migrazione. Non distribuire flow prima del riavvio.",
63
+ "recovery_flows_persisted": "I flow convertiti sono stati salvati, ma la verifica non è terminata. Non distribuire altre modifiche. Ricarica l’editor e controlla i flow salvati prima di avviare nuovamente il recupero della migrazione:",
64
+ "recovery_failed": "La migrazione automatica si è fermata in sicurezza:",
65
+ "recovery_notice_title": "Migrazione di KNX Ultimate 8 richiesta",
66
+ "recovery_notice": "Sono ancora presenti nodi legacy: KNX Utility {{utility}}, HUE {{hue}}, Matter {{matter}}, AI {{ai}}. Completa la migrazione protetta prima di modificare o distribuire i flow.",
67
+ "recovery_notice_button": "Completa la migrazione",
68
+ "later": "Più tardi"
54
69
  },
55
70
  "locale": "it",
56
71
  "function": "Funzione",
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateViewer">
2
- ### Aggiornamento a KNX Ultimate 8
3
-
4
- La versione 7 mostra un piccolo pulsante **Aggiorna alla v8** nella parte alta di questo editor. Il pulsante scarica un backup dei flow, installa i package HUE/Matter necessari, converte i nodi compatibili, esegue un Deploy completo, verifica i flow salvati e installa la versione 8. Quando richiesto, riavvia il servizio Node-RED: ricaricare soltanto il browser non basta. I nodi KNX AI legacy fermano la procedura automatica.
5
-
6
- [Guida completa all’aggiornamento](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/it-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  # KNX Viewer
11
3
 
12
4
  KNX Viewer mostra i cambiamenti di stato degli indirizzi di gruppo (GA) in una semplice tabella, simile a un monitor ETS essenziale.
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimate-config">
2
- ### 升级到 KNX Ultimate 8
3
-
4
- 版本 7 会在此编辑器顶部显示一个小型的 **升级到 v8** 按钮。它会下载流程备份、安装所需的 HUE/Matter 软件包、转换兼容节点、执行完整部署、验证已保存的流程并安装版本 8。出现提示后必须重启 Node-RED 服务;仅重新加载浏览器并不足够。旧版 KNX AI 节点会停止自动操作。
5
-
6
- [完整升级指南](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/zh-CN-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  # KNX Gateway 配置
11
3
 
12
4
  该节点用于连接你的 KNX/IP 网关。
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimate">
2
- ### 升级到 KNX Ultimate 8
3
-
4
- 版本 7 会在此编辑器顶部显示一个小型的 **升级到 v8** 按钮。它会下载流程备份、安装所需的 HUE/Matter 软件包、转换兼容节点、执行完整部署、验证已保存的流程并安装版本 8。出现提示后必须重启 Node-RED 服务;仅重新加载浏览器并不足够。旧版 KNX AI 节点会停止自动操作。
5
-
6
- [完整升级指南](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/zh-CN-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  ## KNX-ULTIMATE 设备节点设置
11
3
 
12
4
  该节点用于控制 KNX 组地址(Group Address),是最常用的节点。
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateIoTBridge">
2
- ### 升级到 KNX Ultimate 8
3
-
4
- 版本 7 会在此编辑器顶部显示一个小型的 **升级到 v8** 按钮。它会下载流程备份、安装所需的 HUE/Matter 软件包、转换兼容节点、执行完整部署、验证已保存的流程并安装版本 8。出现提示后必须重启 Node-RED 服务;仅重新加载浏览器并不足够。旧版 KNX AI 节点会停止自动操作。
5
-
6
- [完整升级指南](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/zh-CN-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  # MQTT Home Assistant - IoT
11
3
 
12
4
  在 KNX 组地址与 IoT 通道(MQTT 主题、REST 接口、Modbus 寄存器)之间创建双向桥接。每条映射都可以对数值进行缩放、格式化载荷,并向后续节点暴露元数据。
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateMultiRouting">
2
- ### 升级到 KNX Ultimate 8
3
-
4
- 版本 7 会在此编辑器顶部显示一个小型的 **升级到 v8** 按钮。它会下载流程备份、安装所需的 HUE/Matter 软件包、转换兼容节点、执行完整部署、验证已保存的流程并安装版本 8。出现提示后必须重启 Node-RED 服务;仅重新加载浏览器并不足够。旧版 KNX AI 节点会停止自动操作。
5
-
6
- [完整升级指南](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/zh-CN-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  此节点用于通过 Node-RED 的连线来**互联多个 KNX Ultimate 网关**(多个 `knxUltimate-config`)。
11
3
 
12
4
  它会为所选网关的 KNX 总线上收到的每个电报输出一条包含**RAW 电报信息**(APDU + cEMI 十六进制 + 地址)的消息。
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateRouterFilter">
2
- ### 升级到 KNX Ultimate 8
3
-
4
- 版本 7 会在此编辑器顶部显示一个小型的 **升级到 v8** 按钮。它会下载流程备份、安装所需的 HUE/Matter 软件包、转换兼容节点、执行完整部署、验证已保存的流程并安装版本 8。出现提示后必须重启 Node-RED 服务;仅重新加载浏览器并不足够。旧版 KNX AI 节点会停止自动操作。
5
-
6
- [完整升级指南](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/zh-CN-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  在将 RAW 电报对象(通常由 **KNX Multi Routing** 产生)转发到其它网关之前,对其进行过滤。
11
3
 
12
4
  ## Pattern 语法
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateUtility">
2
- ### 升级到 KNX Ultimate 8
3
-
4
- 版本 7 会在此编辑器顶部显示一个小型的 **升级到 v8** 按钮。它会下载流程备份、安装所需的 HUE/Matter 软件包、转换兼容节点、执行完整部署、验证已保存的流程并安装版本 8。出现提示后必须重启 Node-RED 服务;仅重新加载浏览器并不足够。旧版 KNX AI 节点会停止自动操作。
5
-
6
- [完整升级指南](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/zh-CN-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  # KNX Utility
11
3
 
12
4
  为每个 KNX Utility 节点选择一个功能。使用 KNX 总线的功能需要网关;Home Assistant Translator 直接处理消息。编辑器、图标和端口随所选功能变化。KNX Device 仍是主要 KNX 节点。
@@ -50,7 +50,22 @@
50
50
  "flow_conflict": "另一个编辑器更改了流程修订版本。自动转换已在本地回滚。请检查或导出原有的本地更改,然后重新加载编辑器再试。",
51
51
  "persistence_uncertain": "Node-RED 未确认流程已保存,因此没有执行自动回滚。请重新加载编辑器并检查已保存的流程,然后再试。",
52
52
  "flows_persisted": "转换后的流程已保存,但 KNX Ultimate 8 未安装。请勿继续部署更改。解决报告的错误、重新加载编辑器,然后再次点击升级按钮:",
53
- "failed": "自动升级已安全停止。KNX Ultimate 8 未激活:"
53
+ "failed": "自动升级已安全停止。KNX Ultimate 8 未激活:",
54
+ "recovery_title": "完成 KNX Ultimate 8 迁移",
55
+ "recovery_summary": "安装 KNX Ultimate 8 后发现旧版节点。待转换的节点/配置:KNX Utility {{utility}}、HUE {{hue}}、Matter {{matter}}。",
56
+ "recovery_confirm": "系统会先下载所有流程的 JSON 备份,然后安装所需的 HUE/Matter 软件包并部署编辑器中的全部当前更改。KNX Ultimate 本身不会被重新安装。节点 ID、连线、配置引用、凭据和 Matter 存储都会保留。当前打开的节点编辑器将关闭,表单中尚未保存的修改会被丢弃。",
57
+ "recovery_start": "备份并完成迁移",
58
+ "recovery_complete_title": "KNX Ultimate 8 迁移完成",
59
+ "recovery_complete": "已转换 {{total}} 个旧版节点/配置。保存的流程现在与 KNX Ultimate 8 兼容。请先重新加载编辑器,再进行其他更改。",
60
+ "recovery_reload": "重新加载编辑器",
61
+ "recovery_standalone_restart_required": "HUE/Matter 软件包更新已准备就绪。请重启 Node-RED 服务、重新加载编辑器,然后再次启动迁移恢复。流程未被修改。",
62
+ "recovery_module_install_uncertain": "软件包操作可能仍在进行。请重启 Node-RED 服务、重新加载编辑器,然后再次启动迁移恢复。重启前请勿部署流程。",
63
+ "recovery_flows_persisted": "转换后的流程已保存,但验证未完成。请勿继续部署更改。重新加载编辑器并检查已保存的流程,然后再启动迁移恢复:",
64
+ "recovery_failed": "自动迁移已安全停止:",
65
+ "recovery_notice_title": "需要完成 KNX Ultimate 8 迁移",
66
+ "recovery_notice": "仍存在旧版节点:KNX Utility {{utility}}、HUE {{hue}}、Matter {{matter}}、AI {{ai}}。请在编辑或部署流程前完成受保护的迁移。",
67
+ "recovery_notice_button": "完成迁移",
68
+ "later": "稍后"
54
69
  },
55
70
  "locale": "zh-CN",
56
71
  "function": "功能",
@@ -1,12 +1,4 @@
1
1
  <script type="text/markdown" data-help-name="knxUltimateViewer">
2
- ### 升级到 KNX Ultimate 8
3
-
4
- 版本 7 会在此编辑器顶部显示一个小型的 **升级到 v8** 按钮。它会下载流程备份、安装所需的 HUE/Matter 软件包、转换兼容节点、执行完整部署、验证已保存的流程并安装版本 8。出现提示后必须重启 Node-RED 服务;仅重新加载浏览器并不足够。旧版 KNX AI 节点会停止自动操作。
5
-
6
- [完整升级指南](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/zh-CN-Upgrade-to-v8)
7
-
8
- <br/>
9
-
10
2
  # KNX Viewer
11
3
 
12
4
  KNX Viewer 使用简单表格显示组地址(GA)的状态变化,类似于精简版 ETS 监视器。
@@ -0,0 +1,140 @@
1
+ <script type="text/javascript" src="resources/node-red-contrib-knx-ultimate/flowMigrationBackup.js"></script>
2
+ <script type="text/javascript" src="resources/node-red-contrib-knx-ultimate/hueControllerMigration.js"></script>
3
+ <script type="text/javascript" src="resources/node-red-contrib-knx-ultimate/knxUtilityMigration.js"></script>
4
+ <script type="text/javascript" src="resources/node-red-contrib-knx-ultimate/upgradeToV8.js"></script>
5
+
6
+ <script type="text/javascript">
7
+ (function () {
8
+ const I18N_PREFIX = "node-red-contrib-knx-ultimate/knxUltimateUtility:knxUltimateUtility.v8_upgrade.";
9
+ const EVENTS = ["nodes:add", "nodes:remove", "nodes:change", "workspace:dirty", "deploy"];
10
+ let recovery;
11
+ let notification;
12
+ let timer;
13
+ let dismissed = false;
14
+ let lastSignature = "";
15
+
16
+ function translate(key, fallback, values) {
17
+ const qualified = I18N_PREFIX + key;
18
+ let result;
19
+ try { result = RED._(qualified, values || {}); } catch (error) { /* use fallback */ }
20
+ result = result && result !== qualified ? result : fallback;
21
+ return String(result).replace(/{{\s*(\w+)\s*}}/g, function (match, name) {
22
+ return values && values[name] !== undefined ? String(values[name]) : match;
23
+ });
24
+ }
25
+
26
+ function closeNotice() {
27
+ if (notification && typeof notification.close === "function") notification.close();
28
+ notification = undefined;
29
+ lastSignature = "";
30
+ }
31
+
32
+ function originalType(node) {
33
+ if (node && node.type === "unknown" && node._orig && typeof node._orig.type === "string") {
34
+ return node._orig.type;
35
+ }
36
+ return node && node.type;
37
+ }
38
+
39
+ function inspectLegacyNodes() {
40
+ const api = window.KNXUltimateUpgradeToV8;
41
+ const utility = window.KNXUltimateUtilityMigration;
42
+ const counts = { utility: 0, hue: 0, matter: 0, ai: 0, total: 0 };
43
+ if (!api || !utility || !utility.LEGACY_NODE_PROFILES || typeof api.collectAllNodes !== "function") return counts;
44
+ const hueTargets = new Set((api.HUE_PACKAGE && api.HUE_PACKAGE.types) || []);
45
+ const matterTargets = new Set((api.MATTER_PACKAGE && api.MATTER_PACKAGE.types) || []);
46
+ api.collectAllNodes(RED).forEach(function (node) {
47
+ const type = originalType(node);
48
+ if (api.AI_TYPES && api.AI_TYPES.has(type)) counts.ai += 1;
49
+ else if (Object.prototype.hasOwnProperty.call(utility.LEGACY_NODE_PROFILES, type)) counts.utility += 1;
50
+ else if (api.HUE_TYPE_MAP && Object.prototype.hasOwnProperty.call(api.HUE_TYPE_MAP, type)) counts.hue += 1;
51
+ else if (api.MATTER_TYPE_MAP && Object.prototype.hasOwnProperty.call(api.MATTER_TYPE_MAP, type)) counts.matter += 1;
52
+ else if (node && node.type === "unknown" && hueTargets.has(type)) counts.hue += 1;
53
+ else if (node && node.type === "unknown" && matterTargets.has(type)) counts.matter += 1;
54
+ });
55
+ counts.total = counts.utility + counts.hue + counts.matter + counts.ai;
56
+ return counts;
57
+ }
58
+
59
+ function refresh() {
60
+ timer = undefined;
61
+ if (dismissed || !recovery || typeof RED.notify !== "function") return;
62
+ const counts = inspectLegacyNodes();
63
+ if (!counts.total) {
64
+ closeNotice();
65
+ return;
66
+ }
67
+ const signature = [counts.utility, counts.hue, counts.matter, counts.ai].join(":");
68
+ if (notification && signature === lastSignature) return;
69
+ closeNotice();
70
+ lastSignature = signature;
71
+
72
+ const message = $("<div></div>");
73
+ $("<p></p>")
74
+ .append($("<strong></strong>").text(translate("recovery_notice_title", "KNX Ultimate 8 migration required")))
75
+ .appendTo(message);
76
+ $("<p></p>")
77
+ .text(translate("recovery_notice", "Legacy nodes are still present: KNX Utility {{utility}}, HUE {{hue}}, Matter {{matter}}, AI {{ai}}. Complete the protected migration before editing or deploying flows.", counts))
78
+ .appendTo(message);
79
+
80
+ notification = RED.notify(message, {
81
+ type: "warning",
82
+ fixed: true,
83
+ modal: false,
84
+ silent: true,
85
+ buttons: [
86
+ {
87
+ text: translate("recovery_notice_button", "Complete migration"),
88
+ class: "primary",
89
+ click: function () {
90
+ if (recovery.open()) closeNotice();
91
+ }
92
+ },
93
+ {
94
+ text: translate("later", "Later"),
95
+ click: function () {
96
+ dismissed = true;
97
+ closeNotice();
98
+ }
99
+ }
100
+ ]
101
+ });
102
+ }
103
+
104
+ function schedule() {
105
+ if (timer !== undefined) window.clearTimeout(timer);
106
+ timer = window.setTimeout(refresh, 200);
107
+ }
108
+
109
+ function reset() {
110
+ dismissed = false;
111
+ closeNotice();
112
+ schedule();
113
+ }
114
+
115
+ RED.plugins.registerPlugin("knxUltimate-v8-migration-recovery-plugin", {
116
+ onadd: function () {
117
+ const api = window.KNXUltimateUpgradeToV8;
118
+ if (!api || typeof api.install !== "function") return;
119
+ recovery = api.install(RED, {
120
+ environment: window,
121
+ $,
122
+ recoveryMode: true,
123
+ onRecoveryRetry: schedule
124
+ });
125
+ EVENTS.forEach(function (event) { RED.events.on(event, schedule); });
126
+ RED.events.on("workspace:clear", reset);
127
+ schedule();
128
+ },
129
+ onremove: function () {
130
+ if (timer !== undefined) window.clearTimeout(timer);
131
+ timer = undefined;
132
+ EVENTS.forEach(function (event) { RED.events.off(event, schedule); });
133
+ RED.events.off("workspace:clear", reset);
134
+ closeNotice();
135
+ if (recovery && typeof recovery.dispose === "function") recovery.dispose();
136
+ recovery = undefined;
137
+ }
138
+ });
139
+ }());
140
+ </script>