node-red-contrib-huemagic 4.2.2 → 5.0.1

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 (515) hide show
  1. package/CHANGELOG.md +94 -5
  2. package/README.md +525 -123
  3. package/examples/Deutsch/Hue Automation.json +176 -0
  4. package/examples/Deutsch/Hue Bridge.json +256 -0
  5. package/examples/Deutsch/Hue Brightness.json +150 -0
  6. package/examples/Deutsch/Hue Buttons.json +88 -0
  7. package/examples/Deutsch/Hue Contact.json +150 -0
  8. package/examples/Deutsch/Hue Group.json +658 -0
  9. package/examples/Deutsch/Hue Light.json +893 -0
  10. package/examples/Deutsch/Hue Magic.json +148 -0
  11. package/examples/Deutsch/Hue Motion.json +150 -0
  12. package/examples/Deutsch/Hue Rules.json +150 -0
  13. package/examples/Deutsch/Hue Scene.json +178 -0
  14. package/examples/Deutsch/Hue Speaker.json +274 -0
  15. package/examples/Deutsch/Hue Sync Box.json +378 -0
  16. package/examples/Deutsch/Hue Temperature.json +150 -0
  17. package/examples/English/Hue Automation.json +176 -0
  18. package/examples/{Hue Bridge.json → English/Hue Bridge.json } +1 -1
  19. package/examples/{Hue Brightness.json → English/Hue Brightness.json } +1 -1
  20. package/examples/{Hue Buttons.json → English/Hue Buttons.json } +1 -1
  21. package/examples/English/Hue Contact.json +150 -0
  22. package/examples/{Hue Group.json → English/Hue Group.json } +1 -1
  23. package/examples/{Hue Light.json → English/Hue Light.json } +1 -1
  24. package/examples/{Hue Magic.json → English/Hue Magic.json } +1 -1
  25. package/examples/{Hue Motion.json → English/Hue Motion.json } +1 -1
  26. package/examples/{Hue Rules.json → English/Hue Rules.json } +1 -1
  27. package/examples/{Hue Scene.json → English/Hue Scene.json } +1 -1
  28. package/examples/English/Hue Speaker.json +274 -0
  29. package/examples/English/Hue Sync Box.json +378 -0
  30. package/examples/{Hue Temperature.json → English/Hue Temperature.json } +1 -1
  31. package/examples/Espa/303/261ol/Hue Automation.json" +176 -0
  32. package/examples/Espa/303/261ol/Hue Bridge.json" +256 -0
  33. package/examples/Espa/303/261ol/Hue Brightness.json" +150 -0
  34. package/examples/Espa/303/261ol/Hue Buttons.json" +88 -0
  35. package/examples/Espa/303/261ol/Hue Contact.json" +150 -0
  36. package/examples/Espa/303/261ol/Hue Group.json" +658 -0
  37. package/examples/Espa/303/261ol/Hue Light.json" +893 -0
  38. package/examples/Espa/303/261ol/Hue Magic.json" +148 -0
  39. package/examples/Espa/303/261ol/Hue Motion.json" +150 -0
  40. package/examples/Espa/303/261ol/Hue Rules.json" +150 -0
  41. package/examples/Espa/303/261ol/Hue Scene.json" +178 -0
  42. package/examples/Espa/303/261ol/Hue Speaker.json" +274 -0
  43. package/examples/Espa/303/261ol/Hue Sync Box.json" +378 -0
  44. package/examples/Espa/303/261ol/Hue Temperature.json" +150 -0
  45. package/examples/Fran/303/247ais/Hue Automation.json" +176 -0
  46. package/examples/Fran/303/247ais/Hue Bridge.json" +256 -0
  47. package/examples/Fran/303/247ais/Hue Brightness.json" +150 -0
  48. package/examples/Fran/303/247ais/Hue Buttons.json" +88 -0
  49. package/examples/Fran/303/247ais/Hue Contact.json" +150 -0
  50. package/examples/Fran/303/247ais/Hue Group.json" +658 -0
  51. package/examples/Fran/303/247ais/Hue Light.json" +893 -0
  52. package/examples/Fran/303/247ais/Hue Magic.json" +148 -0
  53. package/examples/Fran/303/247ais/Hue Motion.json" +150 -0
  54. package/examples/Fran/303/247ais/Hue Rules.json" +150 -0
  55. package/examples/Fran/303/247ais/Hue Scene.json" +178 -0
  56. package/examples/Fran/303/247ais/Hue Speaker.json" +274 -0
  57. package/examples/Fran/303/247ais/Hue Sync Box.json" +378 -0
  58. package/examples/Fran/303/247ais/Hue Temperature.json" +150 -0
  59. package/examples/Italiano/Hue Automation.json +176 -0
  60. package/examples/Italiano/Hue Bridge.json +256 -0
  61. package/examples/Italiano/Hue Brightness.json +150 -0
  62. package/examples/Italiano/Hue Buttons.json +88 -0
  63. package/examples/Italiano/Hue Contact.json +150 -0
  64. package/examples/Italiano/Hue Group.json +658 -0
  65. package/examples/Italiano/Hue Light.json +893 -0
  66. package/examples/Italiano/Hue Magic.json +148 -0
  67. package/examples/Italiano/Hue Motion.json +150 -0
  68. package/examples/Italiano/Hue Rules.json +150 -0
  69. package/examples/Italiano/Hue Scene.json +178 -0
  70. package/examples/Italiano/Hue Speaker.json +274 -0
  71. package/examples/Italiano/Hue Sync Box.json +378 -0
  72. package/examples/Italiano/Hue Temperature.json +150 -0
  73. package/examples/Nederlands/Hue Automation.json +176 -0
  74. package/examples/Nederlands/Hue Bridge.json +256 -0
  75. package/examples/Nederlands/Hue Brightness.json +150 -0
  76. package/examples/Nederlands/Hue Buttons.json +88 -0
  77. package/examples/Nederlands/Hue Contact.json +150 -0
  78. package/examples/Nederlands/Hue Group.json +658 -0
  79. package/examples/Nederlands/Hue Light.json +893 -0
  80. package/examples/Nederlands/Hue Magic.json +148 -0
  81. package/examples/Nederlands/Hue Motion.json +150 -0
  82. package/examples/Nederlands/Hue Rules.json +150 -0
  83. package/examples/Nederlands/Hue Scene.json +178 -0
  84. package/examples/Nederlands/Hue Speaker.json +274 -0
  85. package/examples/Nederlands/Hue Sync Box.json +378 -0
  86. package/examples/Nederlands/Hue Temperature.json +150 -0
  87. package/examples/Polski/Hue Automation.json +176 -0
  88. package/examples/Polski/Hue Bridge.json +256 -0
  89. package/examples/Polski/Hue Brightness.json +150 -0
  90. package/examples/Polski/Hue Buttons.json +88 -0
  91. package/examples/Polski/Hue Contact.json +150 -0
  92. package/examples/Polski/Hue Group.json +658 -0
  93. package/examples/Polski/Hue Light.json +893 -0
  94. package/examples/Polski/Hue Magic.json +148 -0
  95. package/examples/Polski/Hue Motion.json +150 -0
  96. package/examples/Polski/Hue Rules.json +150 -0
  97. package/examples/Polski/Hue Scene.json +178 -0
  98. package/examples/Polski/Hue Speaker.json +274 -0
  99. package/examples/Polski/Hue Sync Box.json +378 -0
  100. package/examples/Polski/Hue Temperature.json +150 -0
  101. package/examples/Portugu/303/252s/Hue Automation.json" +176 -0
  102. package/examples/Portugu/303/252s/Hue Bridge.json" +256 -0
  103. package/examples/Portugu/303/252s/Hue Brightness.json" +150 -0
  104. package/examples/Portugu/303/252s/Hue Buttons.json" +88 -0
  105. package/examples/Portugu/303/252s/Hue Contact.json" +150 -0
  106. package/examples/Portugu/303/252s/Hue Group.json" +658 -0
  107. package/examples/Portugu/303/252s/Hue Light.json" +893 -0
  108. package/examples/Portugu/303/252s/Hue Magic.json" +148 -0
  109. package/examples/Portugu/303/252s/Hue Motion.json" +150 -0
  110. package/examples/Portugu/303/252s/Hue Rules.json" +150 -0
  111. package/examples/Portugu/303/252s/Hue Scene.json" +178 -0
  112. package/examples/Portugu/303/252s/Hue Speaker.json" +274 -0
  113. package/examples/Portugu/303/252s/Hue Sync Box.json" +378 -0
  114. package/examples/Portugu/303/252s/Hue Temperature.json" +150 -0
  115. package/examples/T/303/274rk/303/247e/Hue Automation.json" +176 -0
  116. package/examples/T/303/274rk/303/247e/Hue Bridge.json" +256 -0
  117. package/examples/T/303/274rk/303/247e/Hue Brightness.json" +150 -0
  118. package/examples/T/303/274rk/303/247e/Hue Buttons.json" +88 -0
  119. package/examples/T/303/274rk/303/247e/Hue Contact.json" +150 -0
  120. package/examples/T/303/274rk/303/247e/Hue Group.json" +658 -0
  121. package/examples/T/303/274rk/303/247e/Hue Light.json" +893 -0
  122. package/examples/T/303/274rk/303/247e/Hue Magic.json" +148 -0
  123. package/examples/T/303/274rk/303/247e/Hue Motion.json" +150 -0
  124. package/examples/T/303/274rk/303/247e/Hue Rules.json" +150 -0
  125. package/examples/T/303/274rk/303/247e/Hue Scene.json" +178 -0
  126. package/examples/T/303/274rk/303/247e/Hue Speaker.json" +274 -0
  127. package/examples/T/303/274rk/303/247e/Hue Sync Box.json" +378 -0
  128. package/examples/T/303/274rk/303/247e/Hue Temperature.json" +150 -0
  129. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Automation.json" +176 -0
  130. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Bridge.json" +256 -0
  131. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Brightness.json" +150 -0
  132. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Buttons.json" +88 -0
  133. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Contact.json" +150 -0
  134. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Group.json" +658 -0
  135. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Light.json" +893 -0
  136. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Magic.json" +148 -0
  137. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Motion.json" +150 -0
  138. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Rules.json" +150 -0
  139. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Scene.json" +178 -0
  140. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Speaker.json" +274 -0
  141. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Sync Box.json" +378 -0
  142. package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Temperature.json" +150 -0
  143. package/huemagic/assets/huemagic-examples.gif +0 -0
  144. package/huemagic/hue-automation.html +218 -0
  145. package/huemagic/hue-automation.js +173 -0
  146. package/huemagic/hue-bridge-config.html +39 -32
  147. package/huemagic/hue-bridge-config.js +290 -99
  148. package/huemagic/hue-bridge.html +8 -8
  149. package/huemagic/hue-bridge.js +29 -4
  150. package/huemagic/hue-brightness.html +21 -9
  151. package/huemagic/hue-brightness.js +20 -10
  152. package/huemagic/hue-buttons.html +227 -11
  153. package/huemagic/hue-buttons.js +183 -28
  154. package/huemagic/hue-contact.html +218 -0
  155. package/huemagic/hue-contact.js +209 -0
  156. package/huemagic/hue-group.html +16 -9
  157. package/huemagic/hue-group.js +141 -179
  158. package/huemagic/hue-light.html +19 -12
  159. package/huemagic/hue-light.js +222 -167
  160. package/huemagic/hue-magic.html +3 -5
  161. package/huemagic/hue-motion.html +16 -9
  162. package/huemagic/hue-motion.js +37 -8
  163. package/huemagic/hue-rules.html +16 -9
  164. package/huemagic/hue-rules.js +16 -8
  165. package/huemagic/hue-scene.html +9 -5
  166. package/huemagic/hue-scene.js +52 -16
  167. package/huemagic/hue-speaker.html +218 -0
  168. package/huemagic/hue-speaker.js +257 -0
  169. package/huemagic/hue-syncbox-config.html +123 -0
  170. package/huemagic/hue-syncbox-config.js +179 -0
  171. package/huemagic/hue-syncbox.html +82 -0
  172. package/huemagic/hue-syncbox.js +274 -0
  173. package/huemagic/hue-temperature.html +21 -9
  174. package/huemagic/hue-temperature.js +18 -10
  175. package/huemagic/icons/hue-automation.png +0 -0
  176. package/huemagic/icons/hue-automation.svg +3 -0
  177. package/huemagic/icons/hue-contact.png +0 -0
  178. package/huemagic/icons/hue-contact.svg +4 -0
  179. package/huemagic/icons/hue-speaker.png +0 -0
  180. package/huemagic/icons/hue-speaker.svg +6 -0
  181. package/huemagic/icons/hue-syncbox.png +0 -0
  182. package/huemagic/icons/hue-syncbox.svg +7 -0
  183. package/huemagic/locales/de/hue-automation.html +59 -0
  184. package/huemagic/locales/de/hue-automation.json +33 -0
  185. package/huemagic/locales/de/hue-bridge-config.json +23 -12
  186. package/huemagic/locales/de/hue-bridge.html +7 -4
  187. package/huemagic/locales/de/hue-bridge.json +9 -10
  188. package/huemagic/locales/de/hue-brightness.html +9 -6
  189. package/huemagic/locales/de/hue-brightness.json +13 -9
  190. package/huemagic/locales/de/hue-buttons.html +7 -4
  191. package/huemagic/locales/de/hue-buttons.json +42 -8
  192. package/huemagic/locales/de/hue-contact.html +67 -0
  193. package/huemagic/locales/de/hue-contact.json +35 -0
  194. package/huemagic/locales/de/hue-group.html +17 -6
  195. package/huemagic/locales/de/hue-group.json +16 -9
  196. package/huemagic/locales/de/hue-light.html +6 -6
  197. package/huemagic/locales/de/hue-light.json +17 -9
  198. package/huemagic/locales/de/hue-magic.html +1 -1
  199. package/huemagic/locales/de/hue-magic.json +6 -8
  200. package/huemagic/locales/de/hue-motion.html +4 -4
  201. package/huemagic/locales/de/hue-motion.json +14 -9
  202. package/huemagic/locales/de/hue-rules.html +2 -2
  203. package/huemagic/locales/de/hue-rules.json +10 -9
  204. package/huemagic/locales/de/hue-scene.html +11 -3
  205. package/huemagic/locales/de/hue-scene.json +9 -9
  206. package/huemagic/locales/de/hue-speaker.html +80 -0
  207. package/huemagic/locales/de/hue-speaker.json +38 -0
  208. package/huemagic/locales/de/hue-syncbox-config.html +19 -0
  209. package/huemagic/locales/de/hue-syncbox-config.json +25 -0
  210. package/huemagic/locales/de/hue-syncbox.html +86 -0
  211. package/huemagic/locales/de/hue-syncbox.json +30 -0
  212. package/huemagic/locales/de/hue-temperature.html +7 -5
  213. package/huemagic/locales/de/hue-temperature.json +13 -9
  214. package/huemagic/locales/el/hue-automation.html +59 -0
  215. package/huemagic/locales/el/hue-automation.json +33 -0
  216. package/huemagic/locales/el/hue-bridge-config.html +31 -0
  217. package/huemagic/locales/el/hue-bridge-config.json +40 -0
  218. package/huemagic/locales/el/hue-bridge.html +96 -0
  219. package/huemagic/locales/el/hue-bridge.json +26 -0
  220. package/huemagic/locales/el/hue-brightness.html +70 -0
  221. package/huemagic/locales/el/hue-brightness.json +37 -0
  222. package/huemagic/locales/el/hue-buttons.html +61 -0
  223. package/huemagic/locales/el/hue-buttons.json +62 -0
  224. package/huemagic/locales/el/hue-contact.html +67 -0
  225. package/huemagic/locales/el/hue-contact.json +35 -0
  226. package/huemagic/locales/el/hue-group.html +87 -0
  227. package/huemagic/locales/el/hue-group.json +46 -0
  228. package/huemagic/locales/el/hue-light.html +97 -0
  229. package/huemagic/locales/el/hue-light.json +44 -0
  230. package/huemagic/locales/el/hue-magic.html +68 -0
  231. package/huemagic/locales/el/hue-magic.json +26 -0
  232. package/huemagic/locales/el/hue-motion.html +64 -0
  233. package/huemagic/locales/el/hue-motion.json +36 -0
  234. package/huemagic/locales/el/hue-rules.html +69 -0
  235. package/huemagic/locales/el/hue-rules.json +30 -0
  236. package/huemagic/locales/el/hue-scene.html +43 -0
  237. package/huemagic/locales/el/hue-scene.json +32 -0
  238. package/huemagic/locales/el/hue-speaker.html +80 -0
  239. package/huemagic/locales/el/hue-speaker.json +38 -0
  240. package/huemagic/locales/el/hue-syncbox-config.html +19 -0
  241. package/huemagic/locales/el/hue-syncbox-config.json +25 -0
  242. package/huemagic/locales/el/hue-syncbox.html +86 -0
  243. package/huemagic/locales/el/hue-syncbox.json +30 -0
  244. package/huemagic/locales/el/hue-temperature.html +69 -0
  245. package/huemagic/locales/el/hue-temperature.json +33 -0
  246. package/huemagic/locales/en/hue-automation.html +59 -0
  247. package/huemagic/locales/en/hue-automation.json +33 -0
  248. package/huemagic/locales/en/hue-bridge-config.json +40 -0
  249. package/huemagic/locales/{en-US → en}/hue-bridge.html +5 -2
  250. package/huemagic/locales/{en-US → en}/hue-bridge.json +8 -9
  251. package/huemagic/locales/{en-US → en}/hue-brightness.html +6 -3
  252. package/huemagic/locales/{en-US → en}/hue-brightness.json +11 -9
  253. package/huemagic/locales/{en-US → en}/hue-buttons.html +6 -3
  254. package/huemagic/locales/en/hue-buttons.json +62 -0
  255. package/huemagic/locales/en/hue-contact.html +67 -0
  256. package/huemagic/locales/en/hue-contact.json +35 -0
  257. package/huemagic/locales/{en-US → en}/hue-group.html +16 -5
  258. package/huemagic/locales/{en-US → en}/hue-group.json +15 -10
  259. package/huemagic/locales/{en-US → en}/hue-light.html +3 -3
  260. package/huemagic/locales/en/hue-light.json +44 -0
  261. package/huemagic/locales/{en-US → en}/hue-magic.html +1 -1
  262. package/huemagic/locales/{en-US → en}/hue-motion.html +2 -2
  263. package/huemagic/locales/{en-US → en}/hue-motion.json +12 -9
  264. package/huemagic/locales/{en-US → en}/hue-rules.html +2 -2
  265. package/huemagic/locales/{en-US → en}/hue-rules.json +10 -9
  266. package/huemagic/locales/{en-US → en}/hue-scene.html +11 -3
  267. package/huemagic/locales/{en-US → en}/hue-scene.json +9 -9
  268. package/huemagic/locales/en/hue-speaker.html +80 -0
  269. package/huemagic/locales/en/hue-speaker.json +38 -0
  270. package/huemagic/locales/en/hue-syncbox-config.html +19 -0
  271. package/huemagic/locales/en/hue-syncbox-config.json +25 -0
  272. package/huemagic/locales/en/hue-syncbox.html +86 -0
  273. package/huemagic/locales/en/hue-syncbox.json +30 -0
  274. package/huemagic/locales/{en-US → en}/hue-temperature.html +4 -2
  275. package/huemagic/locales/{en-US → en}/hue-temperature.json +11 -9
  276. package/huemagic/locales/es/hue-automation.html +59 -0
  277. package/huemagic/locales/es/hue-automation.json +33 -0
  278. package/huemagic/locales/es/hue-bridge-config.html +31 -0
  279. package/huemagic/locales/es/hue-bridge-config.json +40 -0
  280. package/huemagic/locales/es/hue-bridge.html +96 -0
  281. package/huemagic/locales/es/hue-bridge.json +26 -0
  282. package/huemagic/locales/es/hue-brightness.html +70 -0
  283. package/huemagic/locales/es/hue-brightness.json +37 -0
  284. package/huemagic/locales/es/hue-buttons.html +61 -0
  285. package/huemagic/locales/es/hue-buttons.json +62 -0
  286. package/huemagic/locales/es/hue-contact.html +67 -0
  287. package/huemagic/locales/es/hue-contact.json +35 -0
  288. package/huemagic/locales/es/hue-group.html +87 -0
  289. package/huemagic/locales/es/hue-group.json +46 -0
  290. package/huemagic/locales/es/hue-light.html +97 -0
  291. package/huemagic/locales/es/hue-light.json +44 -0
  292. package/huemagic/locales/es/hue-magic.html +68 -0
  293. package/huemagic/locales/es/hue-magic.json +26 -0
  294. package/huemagic/locales/es/hue-motion.html +64 -0
  295. package/huemagic/locales/es/hue-motion.json +36 -0
  296. package/huemagic/locales/es/hue-rules.html +69 -0
  297. package/huemagic/locales/es/hue-rules.json +30 -0
  298. package/huemagic/locales/es/hue-scene.html +43 -0
  299. package/huemagic/locales/es/hue-scene.json +32 -0
  300. package/huemagic/locales/es/hue-speaker.html +80 -0
  301. package/huemagic/locales/es/hue-speaker.json +38 -0
  302. package/huemagic/locales/es/hue-syncbox-config.html +19 -0
  303. package/huemagic/locales/es/hue-syncbox-config.json +25 -0
  304. package/huemagic/locales/es/hue-syncbox.html +86 -0
  305. package/huemagic/locales/es/hue-syncbox.json +30 -0
  306. package/huemagic/locales/es/hue-temperature.html +69 -0
  307. package/huemagic/locales/es/hue-temperature.json +33 -0
  308. package/huemagic/locales/fr/hue-automation.html +59 -0
  309. package/huemagic/locales/fr/hue-automation.json +33 -0
  310. package/huemagic/locales/fr/hue-bridge-config.html +31 -0
  311. package/huemagic/locales/fr/hue-bridge-config.json +40 -0
  312. package/huemagic/locales/fr/hue-bridge.html +96 -0
  313. package/huemagic/locales/fr/hue-bridge.json +26 -0
  314. package/huemagic/locales/fr/hue-brightness.html +70 -0
  315. package/huemagic/locales/fr/hue-brightness.json +37 -0
  316. package/huemagic/locales/fr/hue-buttons.html +61 -0
  317. package/huemagic/locales/fr/hue-buttons.json +62 -0
  318. package/huemagic/locales/fr/hue-contact.html +67 -0
  319. package/huemagic/locales/fr/hue-contact.json +35 -0
  320. package/huemagic/locales/fr/hue-group.html +87 -0
  321. package/huemagic/locales/fr/hue-group.json +46 -0
  322. package/huemagic/locales/fr/hue-light.html +97 -0
  323. package/huemagic/locales/fr/hue-light.json +44 -0
  324. package/huemagic/locales/fr/hue-magic.html +68 -0
  325. package/huemagic/locales/fr/hue-magic.json +26 -0
  326. package/huemagic/locales/fr/hue-motion.html +64 -0
  327. package/huemagic/locales/fr/hue-motion.json +36 -0
  328. package/huemagic/locales/fr/hue-rules.html +69 -0
  329. package/huemagic/locales/fr/hue-rules.json +30 -0
  330. package/huemagic/locales/fr/hue-scene.html +43 -0
  331. package/huemagic/locales/fr/hue-scene.json +32 -0
  332. package/huemagic/locales/fr/hue-speaker.html +80 -0
  333. package/huemagic/locales/fr/hue-speaker.json +38 -0
  334. package/huemagic/locales/fr/hue-syncbox-config.html +19 -0
  335. package/huemagic/locales/fr/hue-syncbox-config.json +25 -0
  336. package/huemagic/locales/fr/hue-syncbox.html +86 -0
  337. package/huemagic/locales/fr/hue-syncbox.json +30 -0
  338. package/huemagic/locales/fr/hue-temperature.html +69 -0
  339. package/huemagic/locales/fr/hue-temperature.json +33 -0
  340. package/huemagic/locales/it/hue-automation.html +59 -0
  341. package/huemagic/locales/it/hue-automation.json +33 -0
  342. package/huemagic/locales/it/hue-bridge-config.html +31 -0
  343. package/huemagic/locales/it/hue-bridge-config.json +40 -0
  344. package/huemagic/locales/it/hue-bridge.html +96 -0
  345. package/huemagic/locales/it/hue-bridge.json +26 -0
  346. package/huemagic/locales/it/hue-brightness.html +70 -0
  347. package/huemagic/locales/it/hue-brightness.json +37 -0
  348. package/huemagic/locales/it/hue-buttons.html +61 -0
  349. package/huemagic/locales/it/hue-buttons.json +62 -0
  350. package/huemagic/locales/it/hue-contact.html +67 -0
  351. package/huemagic/locales/it/hue-contact.json +35 -0
  352. package/huemagic/locales/it/hue-group.html +87 -0
  353. package/huemagic/locales/it/hue-group.json +46 -0
  354. package/huemagic/locales/it/hue-light.html +97 -0
  355. package/huemagic/locales/it/hue-light.json +44 -0
  356. package/huemagic/locales/it/hue-magic.html +68 -0
  357. package/huemagic/locales/it/hue-magic.json +26 -0
  358. package/huemagic/locales/it/hue-motion.html +64 -0
  359. package/huemagic/locales/it/hue-motion.json +36 -0
  360. package/huemagic/locales/it/hue-rules.html +69 -0
  361. package/huemagic/locales/it/hue-rules.json +30 -0
  362. package/huemagic/locales/it/hue-scene.html +43 -0
  363. package/huemagic/locales/it/hue-scene.json +32 -0
  364. package/huemagic/locales/it/hue-speaker.html +80 -0
  365. package/huemagic/locales/it/hue-speaker.json +38 -0
  366. package/huemagic/locales/it/hue-syncbox-config.html +19 -0
  367. package/huemagic/locales/it/hue-syncbox-config.json +25 -0
  368. package/huemagic/locales/it/hue-syncbox.html +86 -0
  369. package/huemagic/locales/it/hue-syncbox.json +30 -0
  370. package/huemagic/locales/it/hue-temperature.html +69 -0
  371. package/huemagic/locales/it/hue-temperature.json +33 -0
  372. package/huemagic/locales/nl/hue-automation.html +59 -0
  373. package/huemagic/locales/nl/hue-automation.json +33 -0
  374. package/huemagic/locales/nl/hue-bridge-config.html +31 -0
  375. package/huemagic/locales/nl/hue-bridge-config.json +40 -0
  376. package/huemagic/locales/nl/hue-bridge.html +96 -0
  377. package/huemagic/locales/nl/hue-bridge.json +26 -0
  378. package/huemagic/locales/nl/hue-brightness.html +70 -0
  379. package/huemagic/locales/nl/hue-brightness.json +37 -0
  380. package/huemagic/locales/nl/hue-buttons.html +61 -0
  381. package/huemagic/locales/nl/hue-buttons.json +62 -0
  382. package/huemagic/locales/nl/hue-contact.html +67 -0
  383. package/huemagic/locales/nl/hue-contact.json +35 -0
  384. package/huemagic/locales/nl/hue-group.html +87 -0
  385. package/huemagic/locales/nl/hue-group.json +46 -0
  386. package/huemagic/locales/nl/hue-light.html +97 -0
  387. package/huemagic/locales/nl/hue-light.json +44 -0
  388. package/huemagic/locales/nl/hue-magic.html +68 -0
  389. package/huemagic/locales/nl/hue-magic.json +26 -0
  390. package/huemagic/locales/nl/hue-motion.html +64 -0
  391. package/huemagic/locales/nl/hue-motion.json +36 -0
  392. package/huemagic/locales/nl/hue-rules.html +69 -0
  393. package/huemagic/locales/nl/hue-rules.json +30 -0
  394. package/huemagic/locales/nl/hue-scene.html +43 -0
  395. package/huemagic/locales/nl/hue-scene.json +32 -0
  396. package/huemagic/locales/nl/hue-speaker.html +80 -0
  397. package/huemagic/locales/nl/hue-speaker.json +38 -0
  398. package/huemagic/locales/nl/hue-syncbox-config.html +19 -0
  399. package/huemagic/locales/nl/hue-syncbox-config.json +25 -0
  400. package/huemagic/locales/nl/hue-syncbox.html +86 -0
  401. package/huemagic/locales/nl/hue-syncbox.json +30 -0
  402. package/huemagic/locales/nl/hue-temperature.html +69 -0
  403. package/huemagic/locales/nl/hue-temperature.json +33 -0
  404. package/huemagic/locales/pl/hue-automation.html +59 -0
  405. package/huemagic/locales/pl/hue-automation.json +33 -0
  406. package/huemagic/locales/pl/hue-bridge-config.html +31 -0
  407. package/huemagic/locales/pl/hue-bridge-config.json +40 -0
  408. package/huemagic/locales/pl/hue-bridge.html +96 -0
  409. package/huemagic/locales/pl/hue-bridge.json +26 -0
  410. package/huemagic/locales/pl/hue-brightness.html +70 -0
  411. package/huemagic/locales/pl/hue-brightness.json +37 -0
  412. package/huemagic/locales/pl/hue-buttons.html +61 -0
  413. package/huemagic/locales/pl/hue-buttons.json +62 -0
  414. package/huemagic/locales/pl/hue-contact.html +67 -0
  415. package/huemagic/locales/pl/hue-contact.json +35 -0
  416. package/huemagic/locales/pl/hue-group.html +87 -0
  417. package/huemagic/locales/pl/hue-group.json +46 -0
  418. package/huemagic/locales/pl/hue-light.html +97 -0
  419. package/huemagic/locales/pl/hue-light.json +44 -0
  420. package/huemagic/locales/pl/hue-magic.html +68 -0
  421. package/huemagic/locales/pl/hue-magic.json +26 -0
  422. package/huemagic/locales/pl/hue-motion.html +64 -0
  423. package/huemagic/locales/pl/hue-motion.json +36 -0
  424. package/huemagic/locales/pl/hue-rules.html +69 -0
  425. package/huemagic/locales/pl/hue-rules.json +30 -0
  426. package/huemagic/locales/pl/hue-scene.html +43 -0
  427. package/huemagic/locales/pl/hue-scene.json +32 -0
  428. package/huemagic/locales/pl/hue-speaker.html +80 -0
  429. package/huemagic/locales/pl/hue-speaker.json +38 -0
  430. package/huemagic/locales/pl/hue-syncbox-config.html +19 -0
  431. package/huemagic/locales/pl/hue-syncbox-config.json +25 -0
  432. package/huemagic/locales/pl/hue-syncbox.html +86 -0
  433. package/huemagic/locales/pl/hue-syncbox.json +30 -0
  434. package/huemagic/locales/pl/hue-temperature.html +69 -0
  435. package/huemagic/locales/pl/hue-temperature.json +33 -0
  436. package/huemagic/locales/pt/hue-automation.html +59 -0
  437. package/huemagic/locales/pt/hue-automation.json +33 -0
  438. package/huemagic/locales/pt/hue-bridge-config.html +31 -0
  439. package/huemagic/locales/pt/hue-bridge-config.json +40 -0
  440. package/huemagic/locales/pt/hue-bridge.html +96 -0
  441. package/huemagic/locales/pt/hue-bridge.json +26 -0
  442. package/huemagic/locales/pt/hue-brightness.html +70 -0
  443. package/huemagic/locales/pt/hue-brightness.json +37 -0
  444. package/huemagic/locales/pt/hue-buttons.html +61 -0
  445. package/huemagic/locales/pt/hue-buttons.json +62 -0
  446. package/huemagic/locales/pt/hue-contact.html +67 -0
  447. package/huemagic/locales/pt/hue-contact.json +35 -0
  448. package/huemagic/locales/pt/hue-group.html +87 -0
  449. package/huemagic/locales/pt/hue-group.json +46 -0
  450. package/huemagic/locales/pt/hue-light.html +97 -0
  451. package/huemagic/locales/pt/hue-light.json +44 -0
  452. package/huemagic/locales/pt/hue-magic.html +68 -0
  453. package/huemagic/locales/pt/hue-magic.json +26 -0
  454. package/huemagic/locales/pt/hue-motion.html +64 -0
  455. package/huemagic/locales/pt/hue-motion.json +36 -0
  456. package/huemagic/locales/pt/hue-rules.html +69 -0
  457. package/huemagic/locales/pt/hue-rules.json +30 -0
  458. package/huemagic/locales/pt/hue-scene.html +43 -0
  459. package/huemagic/locales/pt/hue-scene.json +32 -0
  460. package/huemagic/locales/pt/hue-speaker.html +80 -0
  461. package/huemagic/locales/pt/hue-speaker.json +38 -0
  462. package/huemagic/locales/pt/hue-syncbox-config.html +19 -0
  463. package/huemagic/locales/pt/hue-syncbox-config.json +25 -0
  464. package/huemagic/locales/pt/hue-syncbox.html +86 -0
  465. package/huemagic/locales/pt/hue-syncbox.json +30 -0
  466. package/huemagic/locales/pt/hue-temperature.html +69 -0
  467. package/huemagic/locales/pt/hue-temperature.json +33 -0
  468. package/huemagic/locales/tr/hue-automation.html +59 -0
  469. package/huemagic/locales/tr/hue-automation.json +33 -0
  470. package/huemagic/locales/tr/hue-bridge-config.html +31 -0
  471. package/huemagic/locales/tr/hue-bridge-config.json +40 -0
  472. package/huemagic/locales/tr/hue-bridge.html +96 -0
  473. package/huemagic/locales/tr/hue-bridge.json +26 -0
  474. package/huemagic/locales/tr/hue-brightness.html +70 -0
  475. package/huemagic/locales/tr/hue-brightness.json +37 -0
  476. package/huemagic/locales/tr/hue-buttons.html +61 -0
  477. package/huemagic/locales/tr/hue-buttons.json +62 -0
  478. package/huemagic/locales/tr/hue-contact.html +67 -0
  479. package/huemagic/locales/tr/hue-contact.json +35 -0
  480. package/huemagic/locales/tr/hue-group.html +87 -0
  481. package/huemagic/locales/tr/hue-group.json +46 -0
  482. package/huemagic/locales/tr/hue-light.html +97 -0
  483. package/huemagic/locales/tr/hue-light.json +44 -0
  484. package/huemagic/locales/tr/hue-magic.html +68 -0
  485. package/huemagic/locales/tr/hue-magic.json +26 -0
  486. package/huemagic/locales/tr/hue-motion.html +64 -0
  487. package/huemagic/locales/tr/hue-motion.json +36 -0
  488. package/huemagic/locales/tr/hue-rules.html +69 -0
  489. package/huemagic/locales/tr/hue-rules.json +30 -0
  490. package/huemagic/locales/tr/hue-scene.html +43 -0
  491. package/huemagic/locales/tr/hue-scene.json +32 -0
  492. package/huemagic/locales/tr/hue-speaker.html +80 -0
  493. package/huemagic/locales/tr/hue-speaker.json +38 -0
  494. package/huemagic/locales/tr/hue-syncbox-config.html +19 -0
  495. package/huemagic/locales/tr/hue-syncbox-config.json +25 -0
  496. package/huemagic/locales/tr/hue-syncbox.html +86 -0
  497. package/huemagic/locales/tr/hue-syncbox.json +30 -0
  498. package/huemagic/locales/tr/hue-temperature.html +69 -0
  499. package/huemagic/locales/tr/hue-temperature.json +33 -0
  500. package/huemagic/utils/api.js +158 -54
  501. package/huemagic/utils/color.js +20 -2
  502. package/huemagic/utils/merge.js +3 -2
  503. package/huemagic/utils/messages.js +506 -120
  504. package/huemagic/utils/sse.js +51 -0
  505. package/huemagic/utils/syncbox.js +84 -0
  506. package/package.json +19 -11
  507. package/.github/FUNDING.yml +0 -2
  508. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -30
  509. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -20
  510. package/.github/workflows/npm.yml +0 -18
  511. package/huemagic/locales/en-US/hue-bridge-config.json +0 -29
  512. package/huemagic/locales/en-US/hue-buttons.json +0 -34
  513. package/huemagic/locales/en-US/hue-light.json +0 -38
  514. /package/huemagic/locales/{en-US → en}/hue-bridge-config.html +0 -0
  515. /package/huemagic/locales/{en-US → en}/hue-magic.json +0 -0
@@ -0,0 +1,31 @@
1
+ <script type="text/markdown" data-help-name="hue-bridge">
2
+ Se conecta a un Philips Hue Bridge.
3
+
4
+ ### Nombre
5
+
6
+ Puede asignar al bridge un nombre interno alternativo o conservar el nombre predeterminado.
7
+
8
+ ### IP y puerto del bridge
9
+
10
+ Introduzca manualmente la dirección IP del Hue Bridge o pulse el botón para consultar todos los bridges disponibles localmente (se recomienda una configuración de IP estática en el Hue Bridge). De forma opcional, también puede definir un puerto alternativo para el bridge añadiendo dos puntos a la dirección IP.
11
+
12
+ ### Clave API
13
+
14
+ Introduzca manualmente la clave API del Hue Bridge o pulse el botón para crear una clave nueva. Si desea crear una clave nueva, debe pulsar el botón físico del bridge dentro de un plazo de 20 segundos para completar el proceso.
15
+
16
+ ### Procesos
17
+
18
+ El valor «Procesos» determina cuántos comandos paralelos puede enviar HueMagic al bridge al mismo tiempo. Según la documentación oficial del Philips Hue Bridge no deberían enviarse más de 10 comandos por segundo; de lo contrario existe el riesgo de que el bridge no pueda procesar las peticiones con la suficiente rapidez y devuelva errores.
19
+
20
+ Si se envían al mismo tiempo más comandos que el valor configurado aquí, HueMagic ejecutará los comandos de forma secuencial en cuanto vuelva a ser posible.
21
+
22
+ Ajuste este valor por debajo de 10 (p. ej. de 4 a 7) si también envía comandos al bridge fuera de HueMagic, para respetar el rendimiento de comandos por segundo recomendado por Philips Hue.
23
+
24
+ ### Actualizaciones automáticas de firmware
25
+
26
+ HueMagic comprueba periódicamente si hay actualizaciones de firmware de Philips Hue disponibles y las instala automáticamente cuando existen. Puede desactivar este comportamiento marcando la casilla correspondiente.
27
+
28
+ ### Desactivar las notificaciones
29
+
30
+ Si activa este ajuste, todos los nodos que dependan de este bridge dejarán de recibir mensajes de estado automáticos.
31
+ </script>
@@ -0,0 +1,40 @@
1
+ {
2
+ "hue-bridge-config": {
3
+ "config": {
4
+ "name": "Nombre",
5
+ "apikey": "Clave API",
6
+ "missing-ip": "Falta la IP del Hue Bridge…",
7
+ "disable-events": "Desactivar eventos",
8
+ "disable-events-info": "Desactivar los eventos en todos los nodos",
9
+ "searching": "Buscando Hue Bridges…",
10
+ "none-found": "¡No se ha encontrado ningún Hue Bridge!",
11
+ "unknown-error": "Algo ha salido mal. Inténtelo de nuevo.",
12
+ "invalid": "Lo sentimos. El Hue Bridge seleccionado no es válido: ",
13
+ "error-select-first": "¡Seleccione su Hue Bridge antes de crear un nuevo usuario!",
14
+ "waiting": "esperando al botón de vinculación…",
15
+ "new-user-press": "¡Pulse ahora el botón de su Hue Bridge para crear un nuevo usuario!",
16
+ "retry": "No se ha detectado ninguna pulsación. Inténtelo de nuevo…",
17
+ "success": "¡Usuario creado correctamente!",
18
+ "connecting": "Conectando con el bridge…",
19
+ "autoupdates": "Activar las actualizaciones automáticas de firmware",
20
+ "bridge-ip": "IP del bridge",
21
+ "worker": "Procesos"
22
+ },
23
+ "node": {
24
+ "title": "Hue Bridge",
25
+ "statusmsg": "Estado consultado correctamente…",
26
+ "initializing": "Inicializando el bridge (__bridge__)…",
27
+ "connected": "Conectado al bridge",
28
+ "processing": "Procesando los recursos del bridge…",
29
+ "initial-emit": "Emisión inicial de los estados de los recursos…",
30
+ "keep-updated": "Manteniendo los nodos actualizados…",
31
+ "subscribing": "Suscribiéndose a los eventos del bridge…",
32
+ "unsubscribing": "Cancelando la suscripción a los eventos del bridge…",
33
+ "no-legacy-api": "El bridge no responde en la API antigua, se continúa sin su configuración…",
34
+ "request-error": "Error al solicitar información al bridge (__error__)",
35
+ "connection-lost": "Se ha perdido la conexión con el bridge (__reason__). Nuevo intento en __seconds__ segundos…",
36
+ "resources-changed": "Los recursos del bridge han cambiado. Recargando…",
37
+ "not-connected": "El bridge no está conectado."
38
+ }
39
+ }
40
+ }
@@ -0,0 +1,96 @@
1
+ <script type="text/markdown" data-help-name="hue-bridge-node">
2
+ El nodo «Hue Bridge» es un nodo universal que puede emitir todos los ajustes del bridge y los mensajes de estado de los demás nodos.
3
+
4
+ ### Configuración
5
+
6
+ Seleccione primero el Hue Bridge deseado. De forma opcional, puede desactivar todos los mensajes de estado automáticos de este nodo mediante el ajuste «Omitir las actualizaciones y los mensajes globales de los dispositivos en este nodo». El nodo dejará entonces de emitir actualizaciones de dispositivo.
7
+
8
+ También puede elegir que los mensajes de inicialización de todos los nodos no se supriman al iniciar Node-RED. Si activa este ajuste, recibirá después de cada despliegue un mensaje de estado de todos los recursos conectados al bridge.
9
+
10
+ ### Consultar ajustes y estado
11
+
12
+ Emite el estado y los ajustes actuales del bridge en cuanto se envía al nodo el siguiente mensaje. Como alternativa, también puede pulsar el botón en la interfaz de Node-RED sin tener que enviar antes ningún mensaje al nodo.
13
+
14
+ : payload (boolean): Devuelve el estado actual del bridge
15
+
16
+ ### Iniciar un escaneo TouchLink
17
+
18
+ Con un «escaneo TouchLink» puede vincular al bridge dispositivos nuevos o antiguos (p. ej. después de un reinicio de fábrica). Para ello, transfiera el objeto `msg.payload` con el siguiente contenido:
19
+
20
+ : touchLink (boolean): Vincula dispositivos antiguos o nuevos con el bridge
21
+
22
+ ### Consultar todos los dispositivos y recursos
23
+
24
+ Con el comando «fetch» puede obtener una lista de determinados dispositivos conectados actualmente al bridge. Para ello, transfiera el objeto `msg.payload` con el siguiente contenido:
25
+
26
+ : fetch (string | array [string, ...]): Admite `light`, `group`, `button`, `motion`, `temperature`, `light_level` o `rule` como valor o valores
27
+
28
+ ### Cambiar los ajustes del Hue Bridge
29
+
30
+ Con el siguiente comando puede cambiar determinados ajustes del bridge. Transfiera al nodo el objeto `msg.payload.settings` con las siguientes opciones de ajuste:
31
+
32
+ > [!WARNING]
33
+ > Cambiar los ajustes de red obliga a reconfigurar el bridge en HueMagic.
34
+
35
+ : name (string): Cambia el nombre del bridge y debe contener entre 4 y 16 caracteres
36
+ : zigbeeChannel (int): Cambia el canal ZigBee actual (`11`, `15`, `20`, `25` o `0`)
37
+ : ipAddress (string): Cambia la dirección IP en los ajustes de red
38
+ : dhcpEnabled (boolean): `true` activa DHCP en los ajustes de red, `false` lo desactiva
39
+ : netmask (string): Cambia la máscara de red en los ajustes de red
40
+ : gateway (string): Define la puerta de enlace en los ajustes de red
41
+ : proxyAddress (string): Establece una dirección de proxy en los ajustes de red
42
+ : proxyPort (string | int): Define el puerto del proxy en los ajustes de red
43
+ : timeZone (string): Cambia la zona horaria configurada actualmente en el bridge
44
+
45
+ ### Mensajes de estado del nodo
46
+
47
+ Los mensajes de estado del nodo «Hue Bridge» son dinámicos. Aunque siguen un patrón determinado, su salida puede variar según la acción que se acabe de ejecutar en el nodo.
48
+
49
+ #### Objeto de estado en `msg.payload`
50
+
51
+ : id (string): ID único del Hue Bridge
52
+ : name (string): Nombre asignado actualmente
53
+ : factoryNew (boolean): Indica si el bridge es completamente nuevo
54
+ : replacesBridgeId (string | boolean): Devuelve el ID del bridge antiguo (si se ha realizado una migración) o `false`
55
+ : dataStoreVersion (string): Versión del almacén de datos
56
+ : starterKitId (string | boolean): Nombre del kit de inicio creado en fábrica o `false`
57
+ : softwareVersion (string): Versión de software del bridge
58
+ : apiVersion (string): Versión de API del bridge
59
+ : zigbeeChannel (int): Canal ZigBee utilizado actualmente
60
+ : macAddress (string): Dirección MAC del bridge
61
+ : ipAddress (string): Dirección IP del bridge
62
+ : dhcpEnabled (boolean): Indica si DHCP está activado
63
+ : netmask (string): Máscara de red del bridge
64
+ : gateway (string): Puerta de enlace del bridge
65
+ : proxyAddress (string | boolean): Dirección de proxy utilizada actualmente o `false`
66
+ : proxyPort (string): Puerto de proxy utilizado actualmente
67
+ : utcTime (string): Hora UTC en el bridge
68
+ : timeZone (string): Zona horaria configurada actualmente en el bridge
69
+ : localTime (string): Zona horaria local
70
+ : portalServicesEnabled (boolean): Indica si los servicios del portal están activados
71
+ : portalConnected (boolean): Indica si el bridge está conectado al portal
72
+ : linkButtonEnabled (boolean): Indica si el botón de vinculación está activado
73
+ : touchlinkEnabled (boolean): Indica si TouchLink está activado
74
+ : autoUpdatesEnabled (boolean): Indica si HueMagic buscará actualizaciones automáticamente
75
+ : users (array [object, ...]): Lista de todos los usuarios del bridge (array de objetos)
76
+ : updated (string): Momento de la última actualización del recurso por parte de HueMagic (ISO 8601)
77
+ : model (object): Contiene la información de modelo del bridge en `id`, `manufacturer` y `name`
78
+
79
+ #### Resultados de «fetch» en `msg.results` (opcional)
80
+
81
+ Si se ha utilizado el comando «fetch» en el nodo, el bridge emite los resultados correspondientes en el objeto `msg.results`. El objeto contiene los grupos de recursos consultados, que a su vez incluyen todos los recursos correspondientes en forma de array.
82
+
83
+ #### Mensajes de estado globales en `msg.updated` (opcional)
84
+
85
+ Salvo que se desactive, el nodo emite un mensaje de estado actualizado para cada recurso del bridge. El mensaje de estado en `msg.updated` sigue el patrón del recurso correspondiente y varía según el tipo de dispositivo que se haya actualizado en último lugar.
86
+
87
+ #### Último comando en `msg.command` (opcional)
88
+
89
+ Si el estado del nodo ha cambiado mediante un comando concreto, también se emite el comando completo que se ha ejecutado. De lo contrario, el nodo no emite este objeto.
90
+
91
+ ### Ejemplos de HueMagic
92
+
93
+ HueMagic pone a su disposición algunas configuraciones de ejemplo para este nodo. Para importar un ejemplo completo en su interfaz de Node-RED, haga clic en el icono de menú de Node-RED, seleccione «Importar» y navegue hasta «Ejemplos» en la barra lateral de la ventana emergente. A continuación, seleccione la carpeta HueMagic y el nodo que desee para importar un flujo de ejemplo.
94
+
95
+ ![examples](hue/assets/huemagic-examples.gif)
96
+ </script>
@@ -0,0 +1,26 @@
1
+ {
2
+ "hue-bridge": {
3
+ "config": {
4
+ "name": "Nombre",
5
+ "input-name": "Nombre del Hue Bridge",
6
+ "skipglobalevents-info": "Omitir las actualizaciones y los mensajes globales de los dispositivos en este nodo",
7
+ "sendinitevents-node": "No suprimir el evento de inicialización",
8
+ "bridge": "Bridge"
9
+ },
10
+ "node": {
11
+ "title": "Hue Bridge",
12
+ "not-configured": "sin configurar",
13
+ "connecting": "conectando…",
14
+ "connected": "conectado",
15
+ "starting-tl": "iniciando TouchLink…",
16
+ "started-tl": "TouchLink iniciado…",
17
+ "f-resources": "obteniendo recursos…",
18
+ "updating-settings": "actualizando los ajustes…",
19
+ "settings-updated": "ajustes actualizados",
20
+ "input": "ajustes / consulta",
21
+ "output": "información del bridge",
22
+ "statusmsg": "Estado consultado correctamente…",
23
+ "error-not-available": "El bridge aún no está disponible. Espere hasta que HueMagic haya establecido la conexión con el bridge."
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,70 @@
1
+ <script type="text/markdown" data-help-name="hue-brightness">
2
+ El nodo «Hue Luminosidad» puede leer el nivel de luz actual de un sensor adecuado conectado al bridge.
3
+
4
+ ### Configuración
5
+
6
+ Seleccione el Hue Bridge preconfigurado y haga clic en el botón de búsqueda para encontrar todos los sensores disponibles. Si ya conoce el ID del sensor, también puede introducirlo aquí manualmente. Puede asignar internamente un nombre nuevo al sensor o utilizar el nombre predefinido. De forma opcional, puede desactivar todos los mensajes de estado automáticos de este nodo mediante el ajuste «Omitir los mensajes del nodo». El nodo dejará entonces de emitir actualizaciones del dispositivo. También puede elegir que el mensaje de inicialización del nodo no se suprima al iniciar Node-RED. Si activa este ajuste, recibirá un mensaje de estado del sensor seleccionado después de cada despliegue. Si prefiere que el nodo permanezca en silencio hasta que usted le envíe algo, active «Informar solo tras un comando». En ese caso ignorará los cambios realizados desde la app o desde un interruptor y solo responderá a sus propios comandos.
7
+
8
+ El ajuste «Oscuro por debajo de» determina a partir de qué nivel de luz el nodo considera que una habitación está a oscuras. Una habitación con una lámpara potente necesita un valor muy distinto al de un pasillo sin ventanas, así que introduzca sencillamente el número de lux que se ajuste a su estancia. Los valores `dark` y `daylight` se guiarán entonces por su ajuste en lugar de por el valor predeterminado de 90 lux.
9
+
10
+ Si no selecciona ningún sensor y utiliza así la configuración del nodo, el nodo funciona en el llamado «modo universal». En este modo, el nodo recibe y emite todos los mensajes de estado del mismo tipo. También puede aplicar ajustes en modo universal a un sensor concreto pasando el ID del sensor correspondiente como cadena en `msg.topic` junto con sus ajustes.
11
+
12
+ ### Consultar el estado
13
+
14
+ Emite el estado actual del sensor en cuanto se transfiere al nodo un objeto `msg.payload` con el siguiente contenido. Como alternativa, también puede pulsar el botón en la interfaz de Node-RED sin tener que enviar antes ningún mensaje al nodo.
15
+
16
+ : status (boolean): Devuelve el estado actual del sensor
17
+
18
+ ### Encender / apagar el sensor
19
+
20
+ Si es necesario, el sensor puede encenderse y apagarse de forma remota. Si el sensor está apagado, deja de registrar cambios en el nivel de luz y, por tanto, ya no los emite. Para ello, pase un objeto con el siguiente contenido:
21
+
22
+ : payload (boolean): `true` enciende el sensor, `false` lo apaga
23
+
24
+ ### Mensajes de estado del nodo
25
+
26
+ En cuanto el sensor detecta un cambio en el nivel de luz, se devuelve el siguiente mensaje de estado:
27
+
28
+ #### Objeto de estado en `msg.payload`
29
+
30
+ : active (boolean): Indica si el sensor está encendido o apagado
31
+ : reachable (boolean | string): `true` si el sensor está conectado al bridge, `unknown` si el estado de la conexión difiere
32
+ : connectionStatus (string): El estado actual de la conexión con el bridge en forma de cadena. Puede contener `connected`, `disconnected`, `connectivity_issue` o `unidirectional_incoming` como valor
33
+ : lux (int): Indica el valor LUX real del nivel de luz
34
+ : lightLevel (int): Indica la intensidad lumínica del sensor
35
+ : dark (boolean): `true` si se ha registrado oscuridad
36
+ : daylight (boolean): `true` si se ha registrado luz diurna
37
+ : darkThreshold (int): El nivel de luz en lux por debajo del cual el nodo informa de oscuridad
38
+ : updated (string): Momento de la última actualización del recurso por parte de HueMagic (ISO 8601)
39
+
40
+ #### Información sobre el sensor en `msg.info`
41
+
42
+ : id (string): Indica el nuevo ID del sensor
43
+ : idV1 (string | boolean): Indica el ID antiguo del sensor
44
+ : uniqueId (string): El ID único del sensor
45
+ : deviceId (string): El ID único del dispositivo
46
+ : name (string): El nombre asignado actualmente al sensor
47
+ : type (string): El tipo de sensor (siempre `light_level`)
48
+ : softwareVersion (string): El firmware actual del sensor
49
+ : battery (float): El nivel de batería actual del sensor
50
+ : batteryState (string): El estado actual del nivel de batería. Puede contener `normal`, `low` o `critical` como valor
51
+ : model (object): Contiene la información de modelo del sensor en `id`, `manufacturer`, `name`, `type` y `certified`
52
+
53
+ #### Cambios de estado en `msg.updated`
54
+
55
+ Enumera en forma de objeto los parámetros concretos que han cambiado con respecto al último estado del sensor. Si no se ha registrado ningún cambio, este objeto está vacío.
56
+
57
+ #### Último estado del sensor en `msg.lastState`
58
+
59
+ Contiene el objeto de estado completo (véanse los valores de salida anteriores) del último estado antes del último cambio registrado. Si HueMagic aún no ha registrado el último estado, se emite `false`.
60
+
61
+ #### Último comando en `msg.command` (opcional)
62
+
63
+ Si el estado del nodo ha cambiado mediante un comando concreto, también se emite el comando completo que se ha ejecutado. De lo contrario, el nodo no emite este objeto.
64
+
65
+ ### Ejemplos de HueMagic
66
+
67
+ HueMagic pone a su disposición algunas configuraciones de ejemplo para este nodo. Para importar un ejemplo completo en su interfaz de Node-RED, haga clic en el icono de menú de Node-RED, seleccione «Importar» y navegue hasta «Ejemplos» en la barra lateral de la ventana emergente. A continuación, seleccione la carpeta HueMagic y el nodo que desee para importar un flujo de ejemplo.
68
+
69
+ ![examples](hue/assets/huemagic-examples.gif)
70
+ </script>
@@ -0,0 +1,37 @@
1
+ {
2
+ "hue-brightness": {
3
+ "config": {
4
+ "name": "Nombre",
5
+ "skipevents-node": "Omitir los mensajes del nodo",
6
+ "sendinitevents-node": "No suprimir el evento de inicialización",
7
+ "onlycommands-node": "Informar solo tras un comando",
8
+ "unknown-error": "Algo ha salido mal. Inténtelo de nuevo.",
9
+ "bridge": "Bridge",
10
+ "universalevents": "Eventos universales",
11
+ "universalevents-node": "Recibe todos los mensajes de otros nodos del mismo tipo (solo en modo universal)",
12
+ "input-name": "Nombre del sensor de luminosidad",
13
+ "searching": "Buscando sensores…",
14
+ "none-found": "¡No se ha encontrado ningún sensor de luminosidad!",
15
+ "sensor": "Sensor",
16
+ "all": "Todos los grupos / luces",
17
+ "darkthreshold": "Oscuro por debajo de"
18
+ },
19
+ "node": {
20
+ "not-configured": "sin configurar",
21
+ "deactivated": "desactivado",
22
+ "init": "inicializando…",
23
+ "not-reachable": "no accesible",
24
+ "universal": "modo universal",
25
+ "command": "ejecutando comando…",
26
+ "statusmsg": "Estado consultado correctamente…",
27
+ "title": "Hue Luminosidad",
28
+ "lux": "__lux__ lux",
29
+ "lux-dark": "__lux__ lux (oscuro)",
30
+ "lux-daylight": "__lux__ lux (luz diurna)",
31
+ "input": "consulta de estado",
32
+ "output": "luminosidad (cambiada)",
33
+ "error-no-id": "Indique un ID de sensor válido.",
34
+ "error-not-available": "El sensor aún no está disponible. Espere hasta que HueMagic haya establecido la conexión con el bridge o compruebe si el ID del recurso indicado en la configuración es válido."
35
+ }
36
+ }
37
+ }
@@ -0,0 +1,61 @@
1
+ <script type="text/markdown" data-help-name="hue-buttons">
2
+ El nodo «Hue Botones» recibe los eventos de conmutación de los dispositivos de entrada conectados al bridge.
3
+
4
+ ### Configuración
5
+
6
+ Seleccione el Hue Bridge preconfigurado y haga clic en el botón de búsqueda para encontrar todos los interruptores y botones disponibles. Si ya conoce el ID del interruptor o botón, también puede introducirlo aquí manualmente. Puede asignar internamente un nombre nuevo al dispositivo o conservar su nombre predefinido. De forma opcional, puede desactivar todos los mensajes de estado automáticos de este nodo mediante el ajuste «Omitir los mensajes del nodo». El nodo dejará entonces de emitir eventos de conmutación. También puede elegir que el mensaje de inicialización del nodo no se suprima al iniciar Node-RED. Si activa este ajuste, recibirá un mensaje de estado del interruptor o botón seleccionado después de cada despliegue. Si prefiere que el nodo permanezca en silencio hasta que usted le envíe algo, active «Informar solo tras un comando». En ese caso ignorará los cambios realizados desde la app o desde un interruptor y solo responderá a sus propios comandos.
7
+
8
+ Si no selecciona ningún interruptor o botón y utiliza así la configuración del nodo, el nodo funciona en el llamado «modo universal». En este modo, el nodo recibe y emite todos los mensajes de estado del mismo tipo.
9
+
10
+ En «Salidas adicionales» puede añadir una salida por cada rango de botones, activada cada una por una acción concreta (inicio de la pulsación, fin de una pulsación corta, fin de una pulsación larga una vez alcanzada la duración configurada, o de forma repetida mientras la pulsación larga está en curso). La primera salida del nodo sigue recibiendo siempre todos los eventos, como antes; las salidas adicionales solo reciben una copia del mensaje cuando coinciden tanto el rango de botones como la acción.
11
+
12
+ ### Consultar el estado
13
+
14
+ Emite el estado actual del interruptor o botón en cuanto se transfiere al nodo un objeto `msg.payload` con el siguiente contenido. Como alternativa, también puede pulsar el botón en la interfaz de Node-RED sin tener que enviar antes ningún mensaje al nodo.
15
+
16
+ : status (boolean): Devuelve el estado actual del interruptor o botón
17
+
18
+ ### Mensajes de estado del nodo
19
+
20
+ En cuanto se pulsa una tecla, el nodo devuelve el siguiente mensaje de estado:
21
+
22
+ #### Objeto de estado en `msg.payload`
23
+
24
+ : reachable (boolean | string): `true` si el interruptor o botón está conectado al bridge, `unknown` si el estado de la conexión difiere
25
+ : connectionStatus (string): El estado actual de la conexión con el bridge en forma de cadena. Puede contener `connected`, `disconnected`, `connectivity_issue` o `unidirectional_incoming` como valor
26
+ : button (int | boolean): ID numérico de la tecla pulsada en último lugar o `false` si no se ha pulsado ninguna
27
+ : action (string | boolean): `false` si no se ha pulsado ninguna tecla, o bien `initial_press`, `repeat`, `short_release`, `long_press`, `long_release` o `double_short_release` en forma de cadena
28
+ : rotation (object | boolean): `false` si el dispositivo no tiene rueda o no se ha girado; en caso contrario, un objeto con `action` (`start` o `repeat`), `direction` (`clock_wise` o `counter_clock_wise`), `clockwise` (booleano), `steps` (1000 pasos equivalen a una vuelta completa), `degrees` y `duration` en milisegundos
29
+ : updated (string): Momento de la última actualización del recurso por parte de HueMagic (ISO 8601)
30
+
31
+ #### Información sobre el interruptor o botón en `msg.info`
32
+
33
+ : id (string): Indica el nuevo ID del interruptor o botón
34
+ : idV1 (string | boolean): Indica el ID antiguo del interruptor o botón
35
+ : uniqueId (string): El ID único del interruptor o botón
36
+ : deviceId (string): El ID único del dispositivo
37
+ : name (string): El nombre asignado actualmente al interruptor o botón
38
+ : type (string): El tipo del interruptor o botón (siempre `button`)
39
+ : softwareVersion (string): El firmware actual del interruptor o botón
40
+ : battery (float | boolean): El nivel de batería actual del interruptor o botón, `false` si no hay batería
41
+ : batteryState (string | boolean): El estado actual del nivel de batería. Puede contener `normal`, `low` o `critical` como valor, o `false` si no hay batería
42
+ : model (object): Contiene la información de modelo del interruptor o botón en `id`, `manufacturer`, `name`, `type` y `certified`
43
+
44
+ #### Cambios de estado en `msg.updated`
45
+
46
+ Enumera en forma de objeto los parámetros concretos que han cambiado con respecto al último estado del interruptor o botón. Si no se ha registrado ningún cambio, este objeto está vacío.
47
+
48
+ #### Último estado del interruptor o botón en `msg.lastState`
49
+
50
+ Contiene el objeto de estado completo (véanse los valores de salida anteriores) del último estado antes del último cambio registrado. Si HueMagic aún no ha registrado el último estado, se emite `false`.
51
+
52
+ #### Último comando en `msg.command` (opcional)
53
+
54
+ Si el estado del nodo ha cambiado mediante un comando concreto, también se emite el comando completo que se ha ejecutado. De lo contrario, el nodo no emite este objeto.
55
+
56
+ ### Ejemplos de HueMagic
57
+
58
+ HueMagic pone a su disposición algunas configuraciones de ejemplo para este nodo. Para importar un ejemplo completo en su interfaz de Node-RED, haga clic en el icono de menú de Node-RED, seleccione «Importar» y navegue hasta «Ejemplos» en la barra lateral de la ventana emergente. A continuación, seleccione la carpeta HueMagic y el nodo que desee para importar un flujo de ejemplo.
59
+
60
+ ![examples](hue/assets/huemagic-examples.gif)
61
+ </script>
@@ -0,0 +1,62 @@
1
+ {
2
+ "hue-buttons": {
3
+ "config": {
4
+ "name": "Nombre",
5
+ "skipevents-node": "Omitir los mensajes del nodo",
6
+ "sendinitevents-node": "No suprimir el evento de inicialización",
7
+ "onlycommands-node": "Informar solo tras un comando",
8
+ "unknown-error": "Algo ha salido mal. Inténtelo de nuevo.",
9
+ "bridge": "Bridge",
10
+ "universalevents": "Eventos universales",
11
+ "universalevents-node": "Recibe todos los mensajes de otros nodos del mismo tipo (solo en modo universal)",
12
+ "input-name": "Nombre del botón",
13
+ "searching": "Buscando Hue Buttons…",
14
+ "none-found": "¡No se ha encontrado ningún Hue Button!",
15
+ "button": "Botón",
16
+ "add-outputs": "Salidas adicionales...",
17
+ "add-outputs-range": "Rango de botones...",
18
+ "add-outputs-newflow": "Activar un nuevo flujo en...",
19
+ "add-outputs-nr": "Salida n.°",
20
+ "add-outputs-btn-from": "Desde...",
21
+ "add-outputs-btn-to": "Hasta...",
22
+ "add-outputs-startpress": "Inicio de la pulsación",
23
+ "add-outputs-shortpress": "Fin de pulsación corta",
24
+ "add-outputs-longpress": "Fin de pulsación larga cuando >",
25
+ "add-outputs-longpresswhile": "Pulsación larga (mientras se mantiene)",
26
+ "add-outputs-btn-addnew": "añadir nuevo rango de botones",
27
+ "outputlabel-btn-from": "botón #__from__",
28
+ "outputlabel-btn-from-to": "botones #__from__ a #__to__",
29
+ "outputlabel-btn-on": "en:",
30
+ "outputlabel-btn-startpress": "Inicio de la pulsación",
31
+ "outputlabel-btn-shortpress": "Fin de pulsación corta",
32
+ "outputlabel-btn-longpress": "Pulsación larga (>__duration__s)",
33
+ "outputlabel-btn-longpresswhile": "Pulsación larga (mientras se mantiene)"
34
+ },
35
+ "node": {
36
+ "not-configured": "sin configurar",
37
+ "universal": "modo universal",
38
+ "command": "ejecutando comando…",
39
+ "statusmsg": "Estado consultado correctamente…",
40
+ "title": "Hue Botones",
41
+ "waiting": "esperando…",
42
+ "button-on": "On",
43
+ "action-pressed": "pulsado",
44
+ "action-holded": "mantenido",
45
+ "action-shortreleased": "soltado brevemente",
46
+ "action-longreleased": "soltado tras mantener",
47
+ "action-repeated": "repetido",
48
+ "action-doublepressed": "pulsado dos veces",
49
+ "action-started": "inicio de pulsación",
50
+ "dial-clockwise": "Rueda ↻ __degrees__°",
51
+ "dial-counterclockwise": "Rueda ↺ __degrees__°",
52
+ "button-status": "Botón n.º __button__ (__action__)",
53
+ "button-status-duration": "Botón n.º __button__ (__action__, __duration__s)",
54
+ "input": "consulta de estado",
55
+ "output": "botón pulsado",
56
+ "error-no-id": "Indique un ID de interruptor válido.",
57
+ "error-not-available": "El interruptor aún no está disponible. Espere hasta que HueMagic haya establecido la conexión con el bridge o compruebe si el ID del recurso indicado en la configuración es válido.",
58
+ "error-no-switchmode": "Este dispositivo no tiene un modo de interruptor configurable.",
59
+ "error-invalid-switchmode": "Modo de interruptor no válido. Este dispositivo admite: __modes__"
60
+ }
61
+ }
62
+ }
@@ -0,0 +1,67 @@
1
+ <script type="text/markdown" data-help-name="hue-contact">
2
+ El nodo «Hue Contacto» indica si un sensor de contacto (p. ej. Hue Secure) está actualmente abierto o cerrado.
3
+
4
+ ### Configuración
5
+
6
+ Seleccione el Hue Bridge preconfigurado y haga clic en el botón de búsqueda para encontrar todos los sensores disponibles. Si ya conoce el ID del sensor, también puede introducirlo aquí manualmente. Puede asignar internamente un nombre nuevo al sensor o utilizar el nombre predefinido. De forma opcional, puede desactivar todos los mensajes de estado automáticos de este nodo mediante el ajuste «Omitir los mensajes del nodo». El nodo dejará entonces de emitir actualizaciones del dispositivo. También puede elegir que el mensaje de inicialización del nodo no se suprima al iniciar Node-RED. Si activa este ajuste, recibirá un mensaje de estado del sensor seleccionado después de cada despliegue. Si prefiere que el nodo permanezca en silencio hasta que usted le envíe algo, active «Informar solo tras un comando». En ese caso ignorará los cambios realizados desde la app o desde un interruptor y solo responderá a sus propios comandos.
7
+
8
+ Si no selecciona ningún sensor y utiliza así la configuración del nodo, el nodo funciona en el llamado «modo universal». En este modo, el nodo recibe y emite todos los mensajes de estado del mismo tipo. También puede aplicar ajustes en modo universal a un sensor concreto pasando el ID del sensor correspondiente como cadena en `msg.topic` junto con sus ajustes.
9
+
10
+ ### Consultar el estado
11
+
12
+ Emite el estado actual del sensor en cuanto se transfiere al nodo un objeto `msg.payload` con el siguiente contenido. Como alternativa, también puede pulsar el botón en la interfaz de Node-RED sin tener que enviar antes ningún mensaje al nodo.
13
+
14
+ : status (boolean): Devuelve el estado actual del sensor
15
+
16
+ ### Encender / apagar el sensor
17
+
18
+ Si es necesario, el sensor puede encenderse y apagarse de forma remota. Si el sensor está apagado, deja de registrar cambios de contacto y, por tanto, ya no los emite. Para ello, pase un objeto con el siguiente contenido:
19
+
20
+ : payload (boolean): `true` enciende el sensor, `false` lo apaga
21
+
22
+ ### Mensajes de estado del nodo
23
+
24
+ En cuanto cambia el contacto, el nodo devuelve el siguiente mensaje de estado:
25
+
26
+ #### Objeto de estado en `msg.payload`
27
+
28
+ : active (boolean): Indica si el sensor está encendido o apagado
29
+ : reachable (boolean | string): `true` si el sensor está conectado al bridge, `unknown` si el estado de la conexión difiere
30
+ : connectionStatus (string): El estado actual de la conexión con el bridge en forma de cadena. Puede contener `connected`, `disconnected`, `connectivity_issue` o `unidirectional_incoming` como valor
31
+ : contact (string | boolean): `contact` si el contacto está cerrado, `no_contact` si está abierto o `false` si el sensor aún no ha informado
32
+ : changed (string | boolean): Momento del último cambio de contacto (ISO 8601) o `false` si el sensor aún no ha informado
33
+ : tampered (boolean): Solo disponible en sensores con detección de manipulación; `true` si se ha manipulado el sensor
34
+ : updated (string): Momento de la última actualización del recurso por parte de HueMagic (ISO 8601)
35
+
36
+ #### Información sobre el sensor en `msg.info`
37
+
38
+ : id (string): Indica el nuevo ID del sensor
39
+ : idV1 (string | boolean): Indica el ID antiguo del sensor
40
+ : uniqueId (string): El ID único del sensor
41
+ : deviceId (string): El ID único del dispositivo
42
+ : name (string): El nombre asignado actualmente al sensor
43
+ : type (string): El tipo de sensor (siempre `contact`)
44
+ : softwareVersion (string): El firmware actual del sensor
45
+ : battery (float | boolean): El nivel de batería actual del sensor, `false` si no hay batería
46
+ : batteryState (string | boolean): El estado actual del nivel de batería. Puede contener `normal`, `low` o `critical` como valor, o `false` si no hay batería
47
+ : model (object): Contiene la información de modelo del sensor en `id`, `manufacturer`, `name`, `type` y `certified`
48
+
49
+ #### Cambios de estado en `msg.updated`
50
+
51
+ Enumera en forma de objeto los parámetros concretos que han cambiado con respecto al último estado del sensor. Si no se ha registrado ningún cambio, este objeto está vacío.
52
+
53
+ #### Último estado del sensor en `msg.lastState`
54
+
55
+ Contiene el objeto de estado completo (véanse los valores de salida anteriores) del último estado antes del último cambio registrado. Si HueMagic aún no ha registrado el último estado, se emite `false`.
56
+
57
+ #### Último comando en `msg.command` (opcional)
58
+
59
+ Si el estado del nodo ha cambiado mediante un comando concreto, también se emite el comando completo que se ha ejecutado. De lo contrario, el nodo no emite este objeto.
60
+
61
+ ### Ejemplos de HueMagic
62
+
63
+ HueMagic pone a su disposición algunas configuraciones de ejemplo para este nodo. Para importar un ejemplo completo en su interfaz de Node-RED, haga clic en el icono de menú de Node-RED, seleccione «Importar» y navegue hasta «Ejemplos» en la barra lateral de la ventana emergente. A continuación, seleccione la carpeta HueMagic y el nodo que desee para importar un flujo de ejemplo.
64
+
65
+ ![examples](hue/assets/huemagic-examples.gif)
66
+
67
+ </script>
@@ -0,0 +1,35 @@
1
+ {
2
+ "hue-contact": {
3
+ "config": {
4
+ "name": "Nombre",
5
+ "skipevents-node": "Omitir los mensajes del nodo",
6
+ "sendinitevents-node": "No suprimir el evento de inicialización",
7
+ "onlycommands-node": "Informar solo tras un comando",
8
+ "unknown-error": "Algo ha salido mal. Inténtelo de nuevo.",
9
+ "bridge": "Bridge",
10
+ "universalevents": "Eventos universales",
11
+ "universalevents-node": "Recibe todos los mensajes de otros nodos del mismo tipo (solo en modo universal)",
12
+ "input-name": "Nombre del sensor",
13
+ "searching": "Buscando sensores de contacto…",
14
+ "none-found": "¡No se ha encontrado ningún sensor de contacto!",
15
+ "sensor": "Sensor"
16
+ },
17
+ "node": {
18
+ "not-configured": "sin configurar",
19
+ "not-reachable": "no accesible",
20
+ "activated": "activado",
21
+ "deactivated": "desactivado",
22
+ "universal": "modo universal",
23
+ "command": "ejecutando comando…",
24
+ "statusmsg": "Estado consultado correctamente…",
25
+ "title": "Hue Contacto",
26
+ "contact": "contacto",
27
+ "no-contact": "sin contacto",
28
+ "input": "activar / desactivar / estado",
29
+ "output": "contacto",
30
+ "tampered": "manipulado",
31
+ "error-no-id": "Indique un ID de sensor válido.",
32
+ "error-not-available": "El sensor aún no está disponible. Espere hasta que HueMagic haya establecido la conexión con el bridge o compruebe si el ID del recurso indicado en la configuración es válido."
33
+ }
34
+ }
35
+ }
@@ -0,0 +1,87 @@
1
+ <script type="text/markdown" data-help-name="hue-group">
2
+ El nodo «Hue Grupo» puede controlar a la vez varias luces agrupadas en el bridge.
3
+
4
+ ### Configuración
5
+
6
+ Seleccione el Hue Bridge preconfigurado y haga clic en el botón de búsqueda para encontrar todos los grupos disponibles. Si ya conoce el ID de un grupo, también puede introducirlo aquí manualmente. Puede asignar internamente un nombre nuevo al grupo o utilizar el nombre predefinido. De forma opcional, puede desactivar todos los mensajes de estado automáticos de este nodo mediante el ajuste «Omitir los mensajes del nodo». El nodo dejará entonces de emitir actualizaciones. También puede elegir que el mensaje de inicialización del nodo no se suprima al iniciar Node-RED. Si activa este ajuste, recibirá un mensaje de estado del grupo seleccionado después de cada despliegue. Si prefiere que el nodo permanezca en silencio hasta que usted le envíe algo, active «Informar solo tras un comando». En ese caso ignorará los cambios realizados desde la app o desde un interruptor y solo responderá a sus propios comandos.
7
+
8
+ Si no selecciona ningún grupo y utiliza así la configuración del nodo, el nodo funciona en el llamado «modo universal». En este modo, el nodo recibe y emite todos los mensajes de estado del mismo tipo. También puede aplicar ajustes en modo universal a un grupo concreto pasando el ID del grupo correspondiente como cadena en `msg.topic` junto con sus ajustes.
9
+
10
+ ### Consultar el estado
11
+
12
+ Emite el estado actual del grupo en cuanto se transfiere al nodo un objeto `msg.payload` con el siguiente contenido. Como alternativa, también puede pulsar el botón en la interfaz de Node-RED sin tener que enviar antes ningún mensaje al nodo.
13
+
14
+ : status (boolean): Devuelve el estado actual del grupo
15
+
16
+ ### Encender / apagar (modo sencillo)
17
+
18
+ Para encender o apagar rápidamente todo un grupo en el modo sencillo, pase al nodo un objeto con el siguiente contenido.
19
+
20
+ : payload (boolean): `true` enciende todo el grupo, `false` lo apaga
21
+
22
+ ### Comandos de grupo (ampliado)
23
+
24
+ Además de encender y apagar sin más, hay muchas otras opciones disponibles para controlar el grupo. Todos los nodos de HueMagic se pueden controlar con comandos aditivos. Esto significa que puede pasar primero un ajuste y después otro en un comando posterior sin descartar el ajuste anterior. Transfiera los siguientes parámetros en un objeto `msg.payload` para realizar ajustes más amplios en el grupo:
25
+
26
+ : on (boolean): `true` enciende todo el grupo, `false` lo apaga
27
+ : toggle (boolean | any): Alterna entre encendido y apagado, según el estado anterior del grupo
28
+ : brightness (int | string): Valor porcentual del brillo de la luz (0-100) o una cadena con el valor `auto` para ajustar el brillo automáticamente en función de la hora actual
29
+ : brightnessLevel (int): Valor numérico del brillo de la luz (0-254)
30
+ : incrementBrightness (int): Valor porcentual de un cambio relativo de brillo. El rango válido va de -100 % a +100 %. Los valores positivos aumentan el brillo. El valor predeterminado es +10 %
31
+ : decrementBrightness (int): Valor porcentual de un cambio relativo de brillo. El rango válido va de -100 % a +100 %. Los valores positivos reducen el brillo. El valor predeterminado es +10 %
32
+ : color (string): `random` para establecer un color aleatorio o un nombre de color en inglés (p. ej. `red`)
33
+ : hex (string): Valor de color en hexadecimal en forma de cadena
34
+ : rgb (array [0,0,0]): Valor de color en formato RGB en forma de array
35
+ : xyColor (object {x [float], y [float]}): Valor de color en el formato de color XY en forma de objeto
36
+ : image (string): Ruta de una imagen (local o en la web) para ajustar el color actual del grupo al color medio de la imagen
37
+ : colorTemp (int | string): Valor entre 153 y 500 para ajustar la temperatura de color del grupo, o los valores `cold`, `normal`, `warm`, `hot` y `auto`, donde `auto` fija la temperatura de color en función de la hora actual
38
+ : transitionTime (float): Tiempo de transición del ajuste actual en segundos. Si se pasa `0`, el grupo cambia de inmediato al ajuste deseado. Si pasa `3`, el grupo pasa al ajuste deseado con una ligera transición en los 3 segundos siguientes
39
+ : colorloop (float): Reproduce una animación «colorloop» durante los segundos indicados y después vuelve al estado original del grupo
40
+ : alert (float): Reproduce una animación «alert» durante los segundos indicados y después vuelve al estado original del grupo
41
+
42
+ ### Mensajes de estado del nodo
43
+
44
+ Cuando se detecta un cambio en el grupo, el nodo devuelve el siguiente mensaje de estado.
45
+
46
+ > [!NOTE]
47
+ > El grupo solo emite mensajes de estado cuando se apaga la última luz o cuando se enciende la primera (si antes estaban todas apagadas).
48
+
49
+ A diferencia del nodo «Hue Luz», aquí dispone de mucha menos información de estado, ya que un grupo puede contener muchos tipos de dispositivo distintos con valores que no se pueden combinar.
50
+
51
+ #### Objeto de estado en `msg.payload`
52
+
53
+ : on (boolean): Estado del grupo, donde `true` significa encendido y `false` apagado
54
+ : brightness (float | boolean): Brillo del grupo en porcentaje o `false` si el grupo no se puede atenuar
55
+ : brightnessLevel (int | boolean): Brillo del grupo como valor numérico (0-254) o `false` si el grupo no se puede atenuar
56
+ : rgb (array [0,0,0]): Color actual del grupo en formato RGB (solo si está disponible)
57
+ : hex (string): Color actual del grupo en formato hexadecimal (solo si está disponible)
58
+ : xyColor (object {x [float], y [float]}): Color actual del grupo en el formato de color XY (solo si está disponible)
59
+ : colorTemp (int): Temperatura de color configurada actualmente para el grupo (solo si está disponible)
60
+ : updated (string): Momento de la última actualización del recurso por parte de HueMagic (ISO 8601)
61
+
62
+ #### Información sobre el grupo en `msg.info`
63
+
64
+ : id (string): Indica el nuevo ID del grupo
65
+ : idV1 (string | boolean): Indica el ID antiguo del grupo
66
+ : name (string): El nombre asignado actualmente al grupo
67
+ : resources (object) : Contiene todos los dispositivos y recursos que hay detrás del grupo
68
+ : type (string): El tipo de grupo (siempre `group`)
69
+
70
+ #### Cambios de estado en `msg.updated`
71
+
72
+ Enumera en forma de objeto los parámetros concretos que han cambiado con respecto al último estado del grupo. Si no se ha registrado ningún cambio, este objeto está vacío.
73
+
74
+ #### Último estado de la luz en `msg.lastState`
75
+
76
+ Contiene el objeto de estado completo (véanse los valores de salida anteriores) del último estado antes del último cambio. Si HueMagic aún no ha registrado el último estado, se emite `false`.
77
+
78
+ #### Último comando en `msg.command` (opcional)
79
+
80
+ Si el estado del nodo ha cambiado mediante un comando concreto, también se emite el comando completo que se ha ejecutado. De lo contrario, el nodo no emite este objeto.
81
+
82
+ ### Ejemplos de HueMagic
83
+
84
+ HueMagic pone a su disposición algunas configuraciones de ejemplo para este nodo. Para importar un ejemplo completo en su interfaz de Node-RED, haga clic en el icono de menú de Node-RED, seleccione «Importar» y navegue hasta «Ejemplos» en la barra lateral de la ventana emergente. A continuación, seleccione la carpeta HueMagic y el nodo que desee para importar un flujo de ejemplo.
85
+
86
+ ![examples](hue/assets/huemagic-examples.gif)
87
+ </script>