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
package/CHANGELOG.md CHANGED
@@ -6,22 +6,32 @@
6
6
 
7
7
  # CHANGELOG
8
8
 
9
- **Version 7.1.4** - September 2026
9
+ **Version 8.0.2** - September 2026
10
10
 
11
- - Added a compact **Upgrade to v8** button to every node editor in version 7.
12
- - The guided upgrade downloads a flow backup, installs HUE Ultimate and Matter Ultimate when required, converts compatible legacy nodes, performs and verifies a full Deploy, and then installs the dedicated KNX Ultimate 8.0.1-beta.0 upgrade build.
13
- - Matter migrations require Matter Ultimate 1.0.3 so protected door-lock PIN credentials remain registered across the Deploy.
14
- - The v8 build stays on npm's `beta` channel, so normal Palette Manager installations and updates remain on this v7 release.
15
- - IDs, wiring, groups, configuration references, credentials and Matter storage are preserved. A Node-RED service restart is still required after installation.
16
- - Legacy KNX AI nodes, locked flows, and unrelated unknown or invalid nodes stop the automatic process before unsafe changes are made.
11
+ - Published version 8 on the stable `latest` channel for installations that only need the current KNX nodes.
12
+ - Includes the version 7 recovery bridge for direct upgrades that still contain legacy HUE, Matter, utility or AI nodes.
13
+ - Keeps the guided version 7.1.4 upgrade target available separately as `8.0.1-beta.0`.
17
14
 
18
- **Version 7.1.3** - September 2026
15
+ **Version 8.0.1-beta.0** - September 2026
19
16
 
20
- -Quick fix: Matter Controller and Matter Bridge are available in the palette again.
17
+ - Published under the `beta` dist-tag as the exact install target for the version 7 one-click upgrade.
18
+ - Made the version 7 migration warning and optional integration packages much more visible in the README.
19
+ - Keeps the version 7 one-click upgrade resource loadable while version 8 is waiting for the mandatory Node-RED restart.
20
+ - Added an editor recovery bridge and inert runtime placeholders for direct upgrades from older version 7 installations; compatible unknown nodes can be backed up, converted and deployed without reinstalling KNX Ultimate 8.
21
+ - Requires Matter Ultimate 1.0.3 when Matter nodes are migrated so protected door-lock PIN credentials remain registered across the Deploy.
22
+ - Treats `preinstall` as a read-only, best-effort diagnostic because modern Node-RED/npm installations may skip dependency lifecycle scripts; the editor bridge is the authoritative recovery path.
23
+
24
+ **Version 8.0.0** - September 2026
25
+
26
+ - The editor stays accessible after upgrading from version 7 and reminds you to restart Node-RED.
27
+ - KNX Ultimate 8 ships only the current KNX nodes.
28
+ - Installation checks saved flows and blocks the upgrade if old HUE or Matter nodes still need migration.
29
+ - HUE and Matter use their separate packages; old KNX utility nodes are replaced by KNX Utility.
30
+ - Removed the old AI nodes and unused dependencies. Migrate existing flows before upgrading: see [upgrade steps](https://github.com/Supergiovane/node-red-contrib-knx-ultimate/blob/main/MIGRATION.md).
21
31
 
22
32
  **Version 7.1.2** - September 2026
23
33
 
24
- - HUE Controller, Matter Controller and Matter Bridge are available in the palette again.
34
+ - HUE Controller is available in the palette again.
25
35
 
26
36
  **Version 7.1.1** - September 2026
27
37
 
package/MIGRATION.md ADDED
@@ -0,0 +1,40 @@
1
+ # Upgrading to KNX Ultimate 8
2
+
3
+ Version 8 contains the current KNX nodes and gateway. HUE and Matter are provided by `node-red-contrib-hue-ultimate` and `node-red-contrib-matter-ultimate`; the old dedicated KNX utility nodes are replaced by KNX Utility.
4
+
5
+ ## Recommended path from version 7
6
+
7
+ Install KNX Ultimate 7.1.4 first, open any KNX Ultimate node and press **Upgrade to v8**. The guided operation backs up the flows, installs the required HUE/Matter packages, converts compatible nodes, performs and verifies a full Deploy, and installs version 8. Restart the Node-RED service when requested.
8
+
9
+ This is the preferred route because the legacy nodes remain operational until the converted flow has been safely deployed.
10
+
11
+ ## Direct upgrade from an older version 7
12
+
13
+ Every version 8 also includes a recovery bridge for users who reach it without passing through 7.1.4:
14
+
15
+ 1. Install version 8 and restart the Node-RED service.
16
+ 2. Open the Node-RED editor. A migration prompt appears when legacy nodes or configuration nodes are found, including nodes displayed as unknown.
17
+ 3. Start the guided migration. It downloads a JSON backup, installs HUE Ultimate and/or Matter Ultimate when needed, converts supported nodes in place, performs a full Deploy and reads the saved flows back for verification.
18
+ 4. Reload the editor when prompted so converted configuration nodes are re-indexed from the saved flow before any further editing.
19
+
20
+ IDs, wires, groups and configuration references are preserved. Existing Node-RED credentials remain associated with the same configuration-node IDs, and Matter storage under `knxultimatestorage` is not deleted.
21
+
22
+ Version 8 registers hidden, inert compatibility runtimes for removed types so that their presence does not stop every unrelated flow from starting. Those legacy nodes do not perform their old automation while they are awaiting conversion. Complete the migration immediately after the restart and do not manually Deploy unknown nodes first.
23
+
24
+ ## Legacy KNX AI nodes
25
+
26
+ `knxUltimateAI` and `knxUltimateAIHomeAssistant` cannot be converted automatically to Cerebrum Ultimate. The guided process stops before changing flows when it finds either type. Replace or remove those nodes manually, then start the migration again. Their credential schema remains registered during the transition so saved secrets are not discarded merely because version 8 was installed.
27
+
28
+ ## Safety behaviour
29
+
30
+ The migration stops before changing anything if it finds a locked flow, an unrelated unknown/invalid node, insufficient editor permissions or disabled Palette Manager installation. A flow backup is requested before conversion. Package installation happens through the authenticated Node-RED Admin API, not through a nested npm process.
31
+
32
+ If HUE Ultimate or Matter Ultimate is installed or updated in a way that requires a restart, the bridge asks for that restart before changing flows. After conversion it validates the editor graph, performs a revision-aware full Deploy and verifies the persisted result. Package timeouts and ambiguous Deploy responses are treated as uncertain rather than guessed.
33
+
34
+ Node-RED can use custom storage and can contain undeployed browser changes, so an npm lifecycle script cannot safely perform this conversion. The version 8 `preinstall` hook is diagnostic only: when npm allows lifecycle scripts it scans common saved-flow locations and prints a migration warning, but it never edits a flow or starts a nested package installation. Some npm/Node-RED policies disable dependency lifecycle scripts entirely, so the editor bridge is the authoritative migration path.
35
+
36
+ ## Using the separate packages
37
+
38
+ HUE Ultimate and Matter Ultimate provide their own configuration nodes and device connections. Select the existing `knxUltimate-config` gateway in their editors to enable KNX integration. They can also work without KNX Ultimate.
39
+
40
+ Keep the same Node-RED user directory and do not delete `knxultimatestorage`. The separate Matter package uses the existing pairing identity, fabrics and device storage.
package/README.md CHANGED
@@ -6,11 +6,31 @@
6
6
 
7
7
  ## The most popular KNX node for Node-RED
8
8
 
9
- KNX Ultimate is the most advanced KNX integration for Node-RED, providing secure KNX/IP communication, routing, ETS project import, ETS diagnostics, virtual devices, and powerful automation nodes. Build professional, reliable, and scalable smart home and building automation projects with minimal effort. ù
10
- You can optionally increase the power of KNX, by installing node-red-contrig-hue-ultimate for Philips Hue and installing node-red-contrig-matter-ultimate form Matter Controller and Matter Bridge (control matter device via KNX and expose KNX GA via Matter).
11
- These optional nodes will detect KNX-Ultimate and seamlessy integrate with KNX, without further configurations.
9
+ KNX Ultimate provides KNX/IP and KNX Secure communication, ETS project import, routing, diagnostics, virtual devices and automation utilities.
12
10
 
13
- > **Upgrading from version 7 to version 8:** open any KNX Ultimate node and use the compact **Upgrade to v8** button at the top. It backs up and converts the flows, installs the required HUE/Matter packages, verifies the Deploy and installs KNX Ultimate 8. Restart the Node-RED service when requested; reloading the browser alone is not sufficient. [Read the full upgrade guide](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/Upgrade-to-v8).
11
+ The palette contains KNX Device, KNX Utility, KNX Viewer, KNX IoT Bridge, KNX Multi Routing and KNX Router Filter.
12
+
13
+ ---
14
+
15
+ ## 🚨 IMPORTANT — UPGRADING FROM VERSION 7.1.4 🚨
16
+
17
+ > ### Preferred: migrate before installing version 8
18
+ >
19
+ > Install version 7.1.4 first, then use **Upgrade to v8** from any KNX Ultimate node.
20
+ >
21
+ > ### The migration is fully automated with the push of a button
22
+ >
23
+ > If version 8 was installed directly from an older v7, restart Node-RED and open the editor: the built-in recovery bridge offers the same protected backup, package installation, conversion and Deploy. Legacy KNX AI nodes still require manual replacement or removal.
24
+ >
25
+ > **Follow the [upgrade steps](https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/Migration-8) to keep your flows working.**
26
+
27
+ ### Native seamless integrations
28
+
29
+ - **Philips Hue:** install `node-red-contrib-hue-ultimate`.
30
+ - **Matter Controller and Matter Bridge:** install `node-red-contrib-matter-ultimate`. Select your existing KNX gateway in those nodes to enable KNX integration. The package can also work without KNX Ultimate.
31
+ - **AI-driven KNX control, on-field diagnostics and unit testing for KNX installers:** install `node-red-contrib-cerebrum-ultimate`.
32
+
33
+ ---
14
34
 
15
35
  <br/>
16
36
  <br/>
@@ -42,7 +62,7 @@ These optional nodes will detect KNX-Ultimate and seamlessy integrate with KNX,
42
62
  </p>
43
63
 
44
64
  <p align="left" style="font-size:2.25rem;font-weight:700;line-height:1.9;">
45
- <a href="https://github.com/Supergiovane/node-red-contrib-knx-ultimate/blob/master/CHANGELOG.md"
65
+ <a href="https://github.com/Supergiovane/node-red-contrib-knx-ultimate/blob/main/CHANGELOG.md"
46
66
  style="display:inline-flex;align-items:center;gap:10px;padding:12px 24px;border-radius:999px;background:#ffc439;color:#111;font-weight:700;text-decoration:none;box-shadow:0 16px 30px rgba(255,196,57,0.32);">
47
67
  CHANGELOG
48
68
  </a>
@@ -51,7 +71,7 @@ These optional nodes will detect KNX-Ultimate and seamlessy integrate with KNX,
51
71
  </br>
52
72
 
53
73
  [license-image]: https://img.shields.io/github/license/Supergiovane/node-red-contrib-knx-ultimate?color=blue
54
- [license-url]: https://github.com/Supergiovane/node-red-contrib-knx-ultimate/blob/master/LICENSE
74
+ [license-url]: https://github.com/Supergiovane/node-red-contrib-knx-ultimate/blob/main/LICENSE
55
75
  [npm-url]: https://npmjs.org/package/node-red-contrib-knx-ultimate
56
76
  [npm-version-image]: https://img.shields.io/npm/v/node-red-contrib-knx-ultimate.svg
57
77
  [node-version-image]: https://img.shields.io/node/v/node-red-contrib-knx-ultimate?logo=node.js&logoColor=white
@@ -74,3 +94,9 @@ These optional nodes will detect KNX-Ultimate and seamlessy integrate with KNX,
74
94
  [paypal-image]: https://img.shields.io/badge/Support-PayPal-blue
75
95
  [paypal-url]: https://www.paypal.com/donate/?hosted_button_id=S8SKPUBSPK758
76
96
  [docs-button-image]: https://img.shields.io/badge/Docs-Open%20Documentation-0d4c70?style=for-the-badge&logo=book&logoColor=f4fbff
97
+
98
+ ---
99
+
100
+ <p align="center">
101
+ <img src="docs/assets/brand/made-in-italy.svg" alt="Made in Italy — Designed and developed in Italy" width="260">
102
+ </p>
package/docs/README.md ADDED
@@ -0,0 +1,34 @@
1
+ # Documentation for KNX Ultimate 8
2
+
3
+ The site uses GitHub Pages/Jekyll and keeps the existing URLs and six languages: English, Italian, German, French, Spanish and Simplified Chinese.
4
+
5
+ - `docs/_data/knx8.json`: translated home-page content and version notices.
6
+ - `docs/_includes/homepage/content.html`: shared home-page structure.
7
+ - `docs/wiki/`: node reference, getting started, migration and examples. Use the same `translation_key` for translations and preserve existing `permalink` values.
8
+ - `scripts/wiki-menu.json`: navigation source. `npm run docs:prepare` regenerates `docs/_data/wiki-nav.json` and copies the package examples to `docs/examples/`.
9
+ - `examples/`: the maintained importable flows. The copies in `docs/examples/` are generated and ignored by Git.
10
+
11
+ The old HUE and Matter pages are version 7 references, marked by `legacy_package` and a visible notice linking to the new packages. Utility reference pages describe functions of **KNX Utility**, not separate palette nodes. Historical pages with duplicated language prefixes redirect to the real translated page.
12
+
13
+ ## Local preview
14
+
15
+ Install the Ruby/Jekyll dependencies from `docs/Gemfile`, then run from the repository root with `jekyll` available on PATH:
16
+
17
+ ```sh
18
+ npm run docs:build
19
+ npm run docs:serve
20
+ ```
21
+
22
+ Open `http://127.0.0.1:4000/node-red-contrib-knx-ultimate/`. The preview uses the same Liquid templates as the real site.
23
+
24
+ `npm run wiki:refresh` imports help for the current Device, Gateway, Viewer, IoT Bridge and routing nodes. It preserves page metadata and archive notices. Getting started, migration, Utility overview/function references and examples are maintained directly in `docs/wiki/`.
25
+
26
+ The `Documentation` GitHub Actions workflow prepares the downloads and builds the site. A push to `8.0.0` only builds an artifact; it does not replace the published version 7 documentation. Publishing runs after a push to `main`, or when the workflow is explicitly started manually. GitHub Pages uses **Settings → Pages → Source → GitHub Actions**.
27
+
28
+ Language pages use explicit permalinks and translation keys, so no extra translation plugin is needed on GitHub Pages. For any other Pages build, run `npm run docs:prepare` before Jekyll so downloadable examples are included.
29
+
30
+ ## Repository branches
31
+
32
+ - `main` is the default branch for KNX Ultimate 8 and its documentation.
33
+ - `7.x` preserves the 7.1.4 code, including the Matter palette fix and one-click version 8 upgrade, for version 7 maintenance. Apply version 7 fixes there and do not merge the KNX 8 node removals into it.
34
+ - The old `master` reference remains available for existing links. New development belongs on `main`; version 7 fixes belong on `7.x`.
@@ -0,0 +1,12 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 400 112" width="400" height="112" role="img" aria-labelledby="title desc">
2
+ <title id="title">Made in Italy</title>
3
+ <desc id="desc">Designed and developed in Italy. Original project badge with the Italian tricolour.</desc>
4
+ <!-- Original artwork for this project; not a ministerial emblem or certification mark. -->
5
+ <defs><clipPath id="flag"><rect x="28" y="29" width="54" height="54" rx="27"/></clipPath></defs>
6
+ <rect x="1" y="1" width="398" height="110" rx="18" fill="#FCFCFA" stroke="#DFE5DF" stroke-width="2"/>
7
+ <g clip-path="url(#flag)"><path d="M28 29h18v54H28Z" fill="#008C45"/><path d="M46 29h18v54H46Z" fill="#F4F5F0"/><path d="M64 29h18v54H64Z" fill="#CD212A"/></g>
8
+ <g font-family="Arial, Helvetica, sans-serif" fill="#142B29">
9
+ <text x="103" y="52" font-size="24" font-weight="700" letter-spacing="1.5">MADE IN ITALY</text>
10
+ <text x="104" y="75" font-size="10" font-weight="700" letter-spacing="1.7">DESIGNED &amp; DEVELOPED</text>
11
+ </g>
12
+ </svg>
@@ -31,7 +31,7 @@
31
31
  },
32
32
  {
33
33
  "id": "al_node",
34
- "type": "knxUltimateAlerter",
34
+ "type": "knxUltimateUtility",
35
35
  "z": "al_tab",
36
36
  "server": "al_cfg",
37
37
  "name": "KNX Alerter",
@@ -64,7 +64,10 @@
64
64
  [
65
65
  "al_dbg3"
66
66
  ]
67
- ]
67
+ ],
68
+ "utilityType": "alerter",
69
+ "inputs": 1,
70
+ "outputs": 3
68
71
  },
69
72
  {
70
73
  "id": "al_on",
@@ -31,13 +31,16 @@
31
31
  },
32
32
  {
33
33
  "id": "ar_node",
34
- "type": "knxUltimateAutoResponder",
34
+ "type": "knxUltimateUtility",
35
35
  "z": "ar_tab",
36
36
  "server": "ar_cfg",
37
37
  "name": "Auto responder",
38
38
  "commandText": "[{\"ga\":\"2/7/1\",\"default\":true},{\"ga\":\"2/7/2\",\"dpt\":\"5.001\",\"default\":25},{\"ga\":\"2/7/3\",\"dpt\":\"16.001\",\"default\":\"Ready\"}]",
39
39
  "x": 420,
40
40
  "y": 170,
41
- "wires": []
41
+ "wires": [],
42
+ "utilityType": "autoresponder",
43
+ "inputs": 0,
44
+ "outputs": 0
42
45
  }
43
46
  ]
@@ -31,7 +31,7 @@
31
31
  },
32
32
  {
33
33
  "id": "ga_node",
34
- "type": "knxUltimateGarage",
34
+ "type": "knxUltimateUtility",
35
35
  "z": "ga_tab",
36
36
  "server": "ga_cfg",
37
37
  "name": "Garage Door",
@@ -66,7 +66,10 @@
66
66
  [
67
67
  "ga_dbg"
68
68
  ]
69
- ]
69
+ ],
70
+ "utilityType": "garage",
71
+ "inputs": 1,
72
+ "outputs": 1
70
73
  },
71
74
  {
72
75
  "id": "ga_inj_on",
@@ -31,7 +31,7 @@
31
31
  },
32
32
  {
33
33
  "id": "gc_node",
34
- "type": "knxUltimateGlobalContext",
34
+ "type": "knxUltimateUtility",
35
35
  "z": "gc_tab",
36
36
  "server": "gc_cfg",
37
37
  "name": "KNXGlobalContext",
@@ -40,6 +40,9 @@
40
40
  "contextStorage": "",
41
41
  "x": 350,
42
42
  "y": 140,
43
- "wires": []
43
+ "wires": [],
44
+ "utilityType": "globalcontext",
45
+ "inputs": 0,
46
+ "outputs": 0
44
47
  }
45
48
  ]
@@ -1,89 +1,111 @@
1
- [{
2
- "id": "dt_cfg_1",
3
- "type": "knxUltimate-config",
4
- "z": "",
5
- "host": "224.0.23.12",
6
- "port": "3671",
7
- "physAddr": "15.15.202",
8
- "suppressACKRequest": false,
9
- "csv": "",
10
- "KNXEthInterface": "Auto",
11
- "KNXEthInterfaceManuallyInput": "",
12
- "autoReconnect": "yes"
13
- },
14
- {
15
- "id": "dt_inj_now",
16
- "type": "inject",
17
- "z": "flow_dt",
18
- "name": "Send NOW",
19
- "props": [
20
- { "p": "payload" }
21
- ],
22
- "repeat": "",
23
- "crontab": "",
24
- "once": false,
25
- "onceDelay": 0.1,
26
- "topic": "",
27
- "payloadType": "date",
28
- "x": 150,
29
- "y": 160,
30
- "wires": [["dt_node"]]
31
- },
32
- {
33
- "id": "dt_inj_custom",
34
- "type": "inject",
35
- "z": "flow_dt",
36
- "name": "Send fixed ISO date",
37
- "props": [
38
- { "p": "payload", "v": "2026-03-02T10:00:00+01:00", "vt": "str" }
39
- ],
40
- "repeat": "",
41
- "crontab": "",
42
- "once": false,
43
- "onceDelay": 0.1,
44
- "topic": "",
45
- "x": 170,
46
- "y": 220,
47
- "wires": [["dt_node"]]
48
- },
49
- {
50
- "id": "dt_node",
51
- "type": "knxUltimateDateTime",
52
- "z": "flow_dt",
53
- "server": "dt_cfg_1",
54
- "name": "KNX Clock",
55
- "outputtopic": "events/knx/datetime",
56
- "gaDateTime": "1/7/1",
57
- "nameDateTime": "Bus DateTime",
58
- "dptDateTime": "19.001",
59
- "gaDate": "",
60
- "nameDate": "",
61
- "dptDate": "11.001",
62
- "gaTime": "",
63
- "nameTime": "",
64
- "dptTime": "10.001",
65
- "sendOnDeploy": true,
66
- "sendOnDeployDelay": 2,
67
- "periodicSend": false,
68
- "periodicSendInterval": 60,
69
- "periodicSendUnit": "m",
70
- "x": 420,
71
- "y": 190,
72
- "wires": [["dt_dbg"]]
73
- },
74
- {
75
- "id": "dt_dbg",
76
- "type": "debug",
77
- "z": "flow_dt",
78
- "name": "DateTime out",
79
- "active": true,
80
- "tosidebar": true,
81
- "console": false,
82
- "tostatus": true,
83
- "complete": "true",
84
- "targetType": "full",
85
- "x": 640,
86
- "y": 190,
87
- "wires": []
88
- }]
89
-
1
+ [
2
+ {
3
+ "id": "dt_cfg_1",
4
+ "type": "knxUltimate-config",
5
+ "z": "",
6
+ "host": "224.0.23.12",
7
+ "port": "3671",
8
+ "physAddr": "15.15.202",
9
+ "suppressACKRequest": false,
10
+ "csv": "",
11
+ "KNXEthInterface": "Auto",
12
+ "KNXEthInterfaceManuallyInput": "",
13
+ "autoReconnect": "yes"
14
+ },
15
+ {
16
+ "id": "dt_inj_now",
17
+ "type": "inject",
18
+ "z": "flow_dt",
19
+ "name": "Send NOW",
20
+ "props": [
21
+ {
22
+ "p": "payload"
23
+ }
24
+ ],
25
+ "repeat": "",
26
+ "crontab": "",
27
+ "once": false,
28
+ "onceDelay": 0.1,
29
+ "topic": "",
30
+ "payloadType": "date",
31
+ "x": 150,
32
+ "y": 160,
33
+ "wires": [
34
+ [
35
+ "dt_node"
36
+ ]
37
+ ]
38
+ },
39
+ {
40
+ "id": "dt_inj_custom",
41
+ "type": "inject",
42
+ "z": "flow_dt",
43
+ "name": "Send fixed ISO date",
44
+ "props": [
45
+ {
46
+ "p": "payload",
47
+ "v": "2026-03-02T10:00:00+01:00",
48
+ "vt": "str"
49
+ }
50
+ ],
51
+ "repeat": "",
52
+ "crontab": "",
53
+ "once": false,
54
+ "onceDelay": 0.1,
55
+ "topic": "",
56
+ "x": 170,
57
+ "y": 220,
58
+ "wires": [
59
+ [
60
+ "dt_node"
61
+ ]
62
+ ]
63
+ },
64
+ {
65
+ "id": "dt_node",
66
+ "type": "knxUltimateUtility",
67
+ "z": "flow_dt",
68
+ "server": "dt_cfg_1",
69
+ "name": "KNX Clock",
70
+ "outputtopic": "events/knx/datetime",
71
+ "gaDateTime": "1/7/1",
72
+ "nameDateTime": "Bus DateTime",
73
+ "dptDateTime": "19.001",
74
+ "gaDate": "",
75
+ "nameDate": "",
76
+ "dptDate": "11.001",
77
+ "gaTime": "",
78
+ "nameTime": "",
79
+ "dptTime": "10.001",
80
+ "sendOnDeploy": true,
81
+ "sendOnDeployDelay": 2,
82
+ "periodicSend": false,
83
+ "periodicSendInterval": 60,
84
+ "periodicSendUnit": "m",
85
+ "x": 420,
86
+ "y": 190,
87
+ "wires": [
88
+ [
89
+ "dt_dbg"
90
+ ]
91
+ ],
92
+ "utilityType": "datetime",
93
+ "inputs": 0,
94
+ "outputs": 0
95
+ },
96
+ {
97
+ "id": "dt_dbg",
98
+ "type": "debug",
99
+ "z": "flow_dt",
100
+ "name": "DateTime out",
101
+ "active": true,
102
+ "tosidebar": true,
103
+ "console": false,
104
+ "tostatus": true,
105
+ "complete": "true",
106
+ "targetType": "full",
107
+ "x": 640,
108
+ "y": 190,
109
+ "wires": []
110
+ }
111
+ ]
@@ -31,7 +31,7 @@
31
31
  },
32
32
  {
33
33
  "id": "lc_node",
34
- "type": "knxUltimateLoadControl",
34
+ "type": "knxUltimateUtility",
35
35
  "z": "lc_tab",
36
36
  "server": "lc_cfg",
37
37
  "name": "Load Control",
@@ -82,7 +82,10 @@
82
82
  [
83
83
  "lc_dbg"
84
84
  ]
85
- ]
85
+ ],
86
+ "utilityType": "loadcontrol",
87
+ "inputs": 1,
88
+ "outputs": 1
86
89
  },
87
90
  {
88
91
  "id": "lc_shed",
@@ -14,7 +14,7 @@
14
14
  },
15
15
  {
16
16
  "id": "logger_1",
17
- "type": "knxUltimateLogger",
17
+ "type": "knxUltimateUtility",
18
18
  "z": "flow5",
19
19
  "server": "log_cfg_1",
20
20
  "topic": "",
@@ -26,7 +26,15 @@
26
26
  "intervalTelegramCount": 60,
27
27
  "x": 320,
28
28
  "y": 180,
29
- "wires": [["logger_dbg_ets"],[]]
29
+ "wires": [
30
+ [
31
+ "logger_dbg_ets"
32
+ ],
33
+ []
34
+ ],
35
+ "utilityType": "logger",
36
+ "inputs": 1,
37
+ "outputs": 2
30
38
  },
31
39
  {
32
40
  "id": "logger_dbg_ets",
@@ -14,7 +14,7 @@
14
14
  },
15
15
  {
16
16
  "id": "scene_ctrl_1",
17
- "type": "knxUltimateSceneController",
17
+ "type": "knxUltimateUtility",
18
18
  "z": "flow4",
19
19
  "server": "sc_cfg_1",
20
20
  "name": "Scene Recall/Save",
@@ -30,33 +30,60 @@
30
30
  "rules": [],
31
31
  "x": 410,
32
32
  "y": 200,
33
- "wires": [["sc_dbg"]]
33
+ "wires": [
34
+ [
35
+ "sc_dbg"
36
+ ]
37
+ ],
38
+ "utilityType": "scenecontroller",
39
+ "inputs": 1,
40
+ "outputs": 1
34
41
  },
35
42
  {
36
43
  "id": "inj_recall",
37
44
  "type": "inject",
38
45
  "z": "flow4",
39
46
  "name": "Recall Scene 2",
40
- "props": [{"p":"payload","v":"true","vt":"bool"}],
47
+ "props": [
48
+ {
49
+ "p": "payload",
50
+ "v": "true",
51
+ "vt": "bool"
52
+ }
53
+ ],
41
54
  "repeat": "",
42
55
  "once": false,
43
56
  "onceDelay": 0.1,
44
57
  "x": 180,
45
58
  "y": 180,
46
- "wires": [["scene_ctrl_1"]]
59
+ "wires": [
60
+ [
61
+ "scene_ctrl_1"
62
+ ]
63
+ ]
47
64
  },
48
65
  {
49
66
  "id": "inj_save",
50
67
  "type": "inject",
51
68
  "z": "flow4",
52
69
  "name": "Save Scene 2",
53
- "props": [{"p":"payload","v":"true","vt":"bool"}],
70
+ "props": [
71
+ {
72
+ "p": "payload",
73
+ "v": "true",
74
+ "vt": "bool"
75
+ }
76
+ ],
54
77
  "repeat": "",
55
78
  "once": false,
56
79
  "onceDelay": 0.1,
57
80
  "x": 170,
58
81
  "y": 240,
59
- "wires": [["scene_ctrl_1"]]
82
+ "wires": [
83
+ [
84
+ "scene_ctrl_1"
85
+ ]
86
+ ]
60
87
  },
61
88
  {
62
89
  "id": "sc_dbg",
@@ -31,7 +31,7 @@
31
31
  },
32
32
  {
33
33
  "id": "stair_node_1",
34
- "type": "knxUltimateStaircase",
34
+ "type": "knxUltimateUtility",
35
35
  "z": "stair_flow_1",
36
36
  "server": "stair_cfg_1",
37
37
  "name": "Staircase Light",
@@ -66,7 +66,10 @@
66
66
  [
67
67
  "stair_dbg_1"
68
68
  ]
69
- ]
69
+ ],
70
+ "utilityType": "staircase",
71
+ "inputs": 1,
72
+ "outputs": 1
70
73
  },
71
74
  {
72
75
  "id": "stair_inj_on",