node-red-contrib-huemagic 4.2.2 → 5.0.0

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 +89 -5
  2. package/README.md +506 -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 +16 -9
  153. package/huemagic/hue-buttons.js +90 -27
  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 +5 -4
  191. package/huemagic/locales/de/hue-buttons.json +22 -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 +59 -0
  223. package/huemagic/locales/el/hue-buttons.json +42 -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 +4 -3
  254. package/huemagic/locales/en/hue-buttons.json +42 -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 +59 -0
  285. package/huemagic/locales/es/hue-buttons.json +42 -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 +59 -0
  317. package/huemagic/locales/fr/hue-buttons.json +42 -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 +59 -0
  349. package/huemagic/locales/it/hue-buttons.json +42 -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 +59 -0
  381. package/huemagic/locales/nl/hue-buttons.json +42 -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 +59 -0
  413. package/huemagic/locales/pl/hue-buttons.json +42 -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 +59 -0
  445. package/huemagic/locales/pt/hue-buttons.json +42 -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 +59 -0
  477. package/huemagic/locales/tr/hue-buttons.json +42 -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,64 @@
1
+ <script type="text/markdown" data-help-name="hue-motion">
2
+ O nó «Hue Movimento» pode registar e comunicar os movimentos detetados por um sensor adequado ligado ao bridge.
3
+
4
+ ### Configuração
5
+
6
+ Selecione o Hue Bridge pré-configurado e clique no botão de pesquisa para encontrar todos os sensores disponíveis. Se já souber o ID do sensor, também o pode introduzir aqui manualmente. Pode atribuir internamente um novo nome ao sensor ou manter o nome predefinido. Opcionalmente, pode desativar todas as mensagens de estado automáticas deste nó através da definição «Ignorar as mensagens do nó». O nó deixará de emitir atualizações do dispositivo. Em alternativa, pode escolher que a mensagem de inicialização do nó não seja suprimida no arranque do Node-RED. Se ativar esta definição, receberá uma mensagem de estado do sensor selecionado após cada implementação. Se preferir que o nó permaneça em silêncio até lhe enviar algo, ative «Comunicar apenas após um comando». Nesse caso, ignora as alterações feitas na aplicação ou num interruptor e responde apenas aos seus próprios comandos.
7
+
8
+ Se não selecionar nenhum sensor e utilizar assim a configuração do nó, o nó funciona no chamado «modo universal». Neste modo, o nó recebe e emite todas as mensagens de estado do mesmo tipo. Também pode aplicar definições no modo universal a um sensor específico, transmitindo o respetivo ID do sensor como cadeia de carateres em `msg.topic` juntamente com as suas definições.
9
+
10
+ ### Consultar o estado
11
+
12
+ Emite o estado atual do sensor assim que for transmitido ao nó um objeto `msg.payload` com o seguinte conteúdo. Em alternativa, também pode premir o botão na interface do Node-RED sem ter de enviar previamente uma mensagem ao nó.
13
+
14
+ : status (boolean): Devolve o estado atual do sensor
15
+
16
+ ### Ligar / desligar o sensor
17
+
18
+ Se necessário, o sensor pode ser ligado e desligado remotamente. Se o sensor estiver desligado, deixa de registar movimentos e, por conseguinte, deixa de os emitir. Para tal, transmita um objeto com o seguinte conteúdo:
19
+
20
+ : payload (boolean): `true` liga o sensor, `false` desliga-o
21
+
22
+ ### Mensagens de estado do nó
23
+
24
+ Assim que o sensor regista um movimento, o nó devolve a seguinte mensagem de estado:
25
+
26
+ #### Objeto de estado em `msg.payload`
27
+
28
+ : active (boolean): Indica se o sensor está ligado ou desligado
29
+ : reachable (boolean | string): `true` se o sensor estiver ligado ao bridge, `unknown` se o estado da ligação divergir
30
+ : connectionStatus (string): O estado atual da ligação com o bridge sob a forma de uma cadeia de carateres. Pode conter `connected`, `disconnected`, `connectivity_issue` ou `unidirectional_incoming` como valor
31
+ : motion (boolean): Indica se foi registado movimento
32
+ : updated (string): Momento da última atualização do recurso pelo HueMagic (ISO 8601)
33
+
34
+ #### Informações sobre o sensor em `msg.info`
35
+
36
+ : id (string): Indica o novo ID do sensor
37
+ : idV1 (string | boolean): Indica o ID antigo do sensor
38
+ : uniqueId (string): O ID único do sensor
39
+ : deviceId (string): O ID único do dispositivo
40
+ : name (string): O nome atualmente atribuído ao sensor
41
+ : type (string): O tipo do sensor (sempre `motion`)
42
+ : softwareVersion (string): O firmware atual do sensor
43
+ : battery (float): O nível atual da bateria do sensor
44
+ : batteryState (string): O estado atual do nível da bateria. Pode conter `normal`, `low` ou `critical` como valor
45
+ : model (object): Contém as informações de modelo do sensor em `id`, `manufacturer`, `name`, `type` e `certified`
46
+
47
+ #### Alterações de estado em `msg.updated`
48
+
49
+ Enumera sob a forma de um objeto os parâmetros que foram alterados em relação ao último estado do sensor. Se não tiverem sido registadas alterações, este objeto está vazio.
50
+
51
+ #### Último estado do sensor em `msg.lastState`
52
+
53
+ Contém o objeto de estado completo (ver os valores de saída acima) do último estado antes da última alteração registada. Se o HueMagic ainda não tiver registado o último estado, é emitido `false`.
54
+
55
+ #### Último comando em `msg.command` (opcional)
56
+
57
+ Se o estado do nó tiver sido alterado através de um determinado comando, é também emitido o comando completo que foi executado. Caso contrário, o nó não emite este objeto.
58
+
59
+ ### Exemplos do HueMagic
60
+
61
+ O HueMagic disponibiliza algumas configurações de exemplo para este nó. Para importar um exemplo completo na sua interface Node-RED, clique no ícone de menu do Node-RED, selecione «Importar» e navegue até «Exemplos» na barra lateral da janela. Em seguida, selecione a pasta HueMagic e o nó pretendido para importar um fluxo de exemplo.
62
+
63
+ ![examples](hue/assets/huemagic-examples.gif)
64
+ </script>
@@ -0,0 +1,36 @@
1
+ {
2
+ "hue-motion": {
3
+ "config": {
4
+ "name": "Nome",
5
+ "skipevents-node": "Ignorar as mensagens do nó",
6
+ "sendinitevents-node": "Não suprimir o evento de inicialização",
7
+ "onlycommands-node": "Comunicar apenas após um comando",
8
+ "unknown-error": "Algo correu mal. Tente novamente.",
9
+ "bridge": "Bridge",
10
+ "universalevents": "Eventos universais",
11
+ "universalevents-node": "Recebe todas as mensagens de outros nós do mesmo tipo (apenas no modo universal)",
12
+ "input-name": "Nome do sensor",
13
+ "searching": "A procurar sensores de movimento…",
14
+ "none-found": "Nenhum sensor de movimento encontrado!",
15
+ "sensor": "Sensor"
16
+ },
17
+ "node": {
18
+ "not-configured": "não configurado",
19
+ "not-reachable": "inacessível",
20
+ "activated": "ativado",
21
+ "deactivated": "desativado",
22
+ "universal": "modo universal",
23
+ "command": "a executar comando…",
24
+ "statusmsg": "Estado consultado com sucesso…",
25
+ "title": "Hue Movimento",
26
+ "motion": "movimento detetado",
27
+ "no-motion": "sem movimento",
28
+ "input": "ativar / desativar / estado",
29
+ "output": "movimento detetado",
30
+ "error-no-id": "Indique um ID de sensor válido.",
31
+ "error-not-available": "O sensor ainda não está disponível. Aguarde até que o HueMagic tenha estabelecido a ligação com o bridge ou verifique se o ID do recurso indicado na configuração é válido.",
32
+ "error-no-sensitivity": "Esta fonte de movimento não tem sensibilidade ajustável.",
33
+ "error-invalid-sensitivity": "Sensibilidade inválida. Apenas são permitidos valores de 0 a __max__."
34
+ }
35
+ }
36
+ }
@@ -0,0 +1,69 @@
1
+ <script type="text/markdown" data-help-name="hue-rules">
2
+ O nó «Hue Regra» pode ativar ou desativar as regras guardadas no bridge e consultar as respetivas definições.
3
+
4
+ ### Configuração
5
+
6
+ Selecione o Hue Bridge pré-configurado e clique no botão de pesquisa para encontrar todas as regras disponíveis. Se já souber o ID da regra, também o pode introduzir aqui manualmente. Em alternativa, pode atribuir um novo nome ou manter o nome predefinido da regra. Opcionalmente, pode desativar todas as mensagens de estado automáticas deste nó através da definição «Ignorar as mensagens do nó». O nó deixará de emitir atualizações. Em alternativa, pode escolher que a mensagem de inicialização do nó não seja suprimida no arranque do Node-RED. Se preferir que o nó permaneça em silêncio até lhe enviar algo, ative «Comunicar apenas após um comando». Nesse caso, ignora as alterações feitas na aplicação ou num interruptor e responde apenas aos seus próprios comandos.
7
+
8
+ Se não selecionar nenhuma regra e utilizar assim a configuração do nó, o nó funciona no chamado «modo universal». Neste modo, o nó recebe e emite todas as mensagens de estado do mesmo tipo. Também pode aplicar definições no modo universal a uma regra específica, transmitindo o respetivo ID como cadeia de carateres em `msg.topic` juntamente com as suas definições.
9
+
10
+ ### Consultar propriedades e definições
11
+
12
+ Emite as propriedades atuais da regra assim que for transmitido ao nó um objeto `msg.payload` com o seguinte conteúdo. Em alternativa, também pode premir o botão na interface do Node-RED sem ter de enviar previamente uma mensagem ao nó.
13
+
14
+ : status (boolean): Devolve o estado atual da regra
15
+
16
+ ### Ativar / desativar a regra
17
+
18
+ A regra pode ser ativada e desativada sempre que necessário. Se a regra estiver desativada, deixa de ser executada no bridge até a reativar. Para tal, transmita um objeto com o seguinte conteúdo:
19
+
20
+ : payload (boolean): `true` ativa a regra, `false` desativa-a
21
+
22
+ ### Mensagens de estado do nó
23
+
24
+ Assim que o estado (ativada / desativada) de uma regra muda, o nó devolve a seguinte mensagem de estado:
25
+
26
+ #### Objeto de estado em `msg.payload`
27
+
28
+ : enabled (boolean): Indica se a regra está ativada ou desativada
29
+ : triggered (string): Momento da última execução (ISO 8601)
30
+
31
+ #### Informações sobre a regra em `msg.info`
32
+
33
+ : id (string): O ID único da regra
34
+ : created (string): Data de criação da regra (ISO 8601)
35
+ : name (string): Nome da regra no bridge
36
+ : timesTriggered (int): Número de vezes que a regra foi executada no bridge
37
+ : owner (string): ID do proprietário desta regra
38
+ : status (string): Estado da regra sob a forma de cadeia de carateres
39
+
40
+ #### Condições da regra em `msg.conditions` (matriz)
41
+
42
+ : address (string): Caminho para um atributo de um sensor
43
+ : operator (string): Operador
44
+ : value (string): O valor a verificar
45
+
46
+ #### Ações da regra em `msg.actions` (matriz)
47
+
48
+ : address (string): O endereço de destino do recurso
49
+ : method (string): O método do pedido
50
+ : body (object): A ação a executar
51
+
52
+ #### Alterações de estado em `msg.updated`
53
+
54
+ Enumera sob a forma de um objeto os parâmetros que foram alterados em relação ao último estado da regra. Se não tiverem sido registadas alterações, este objeto está vazio.
55
+
56
+ #### Último estado da regra em `msg.lastState`
57
+
58
+ Contém o objeto completo (ver os valores de saída acima) do último estado antes da última alteração registada da regra. Se o HueMagic ainda não tiver registado o último estado, é emitido `false`.
59
+
60
+ #### Último comando em `msg.command` (opcional)
61
+
62
+ Se o estado do nó tiver sido alterado através de um determinado comando, é também emitido o comando completo que foi executado. Caso contrário, o nó não emite este objeto.
63
+
64
+ ### Exemplos do HueMagic
65
+
66
+ O HueMagic disponibiliza algumas configurações de exemplo para este nó. Para importar um exemplo completo na sua interface Node-RED, clique no ícone de menu do Node-RED, selecione «Importar» e navegue até «Exemplos» na barra lateral da janela. Em seguida, selecione a pasta HueMagic e o nó pretendido para importar um fluxo de exemplo.
67
+
68
+ ![examples](hue/assets/huemagic-examples.gif)
69
+ </script>
@@ -0,0 +1,30 @@
1
+ {
2
+ "hue-rules": {
3
+ "config": {
4
+ "name": "Nome",
5
+ "skipevents-node": "Ignorar as mensagens do nó",
6
+ "sendinitevents-node": "Não suprimir o evento de inicialização",
7
+ "onlycommands-node": "Comunicar apenas após um comando",
8
+ "unknown-error": "Algo correu mal. Tente novamente.",
9
+ "bridge": "Bridge",
10
+ "input-name": "Nome da regra",
11
+ "searching": "A procurar regras…",
12
+ "none-found": "Nenhuma regra encontrada!",
13
+ "rule": "Regra"
14
+ },
15
+ "node": {
16
+ "init": "a inicializar…",
17
+ "universal": "modo universal",
18
+ "command": "a executar comando…",
19
+ "statusmsg": "Estado consultado com sucesso…",
20
+ "title": "Hue Regra",
21
+ "no-rule": "nenhuma regra selecionada",
22
+ "enabled": "ativada",
23
+ "disabled": "desativada",
24
+ "output": "regra (executada)",
25
+ "input": "ativar / desativar",
26
+ "error-no-id": "Indique um ID de regra válido.",
27
+ "error-not-available": "A regra ainda não está disponível. Aguarde até que o HueMagic tenha estabelecido a ligação com o bridge ou verifique se o ID do recurso indicado na configuração é válido."
28
+ }
29
+ }
30
+ }
@@ -0,0 +1,43 @@
1
+ <script type="text/markdown" data-help-name="hue-scene">
2
+ O nó «Hue Cena» pode retomar cenas guardadas no bridge e aplicá-las a determinados grupos.
3
+
4
+ ### Configuração
5
+
6
+ Selecione o Hue Bridge pré-configurado e clique no botão de pesquisa para encontrar todas as cenas disponíveis. As cenas são ordenadas primeiro por divisão ou zona e depois pelo nome, para que as cenas da mesma divisão fiquem sempre juntas na lista. Se já souber o ID da cena, também o pode introduzir aqui manualmente. Em alternativa, pode atribuir internamente um nome à cena ou manter o nome predefinido.
7
+
8
+ ### Ativar uma cena
9
+
10
+ Pode ativar uma cena predefinida transmitindo um objeto com o seguinte conteúdo:
11
+
12
+ : payload (boolean): Ativa uma cena pré-configurada
13
+ : transitionTime (float): Tempo de transição da cena em segundos. Se for transmitido `0`, a cena é aplicada de imediato. Se transmitir `3`, as luzes fazem a transição para a cena nos 3 segundos seguintes. O bridge aceita até 6000 segundos
14
+ : brightness (float): Brilho de toda a cena em percentagem (`0` – `100`), para poder ativar a mesma cena mais clara ou mais suave consoante a hora do dia
15
+
16
+ > [!NOTE]
17
+ > Ambas as definições só estão disponíveis para cenas normais. Uma cena inteligente segue os horários que definiu para ela na aplicação Philips Hue.
18
+
19
+ ### Ativar uma cena no modo universal
20
+
21
+ Se utilizar este nó no chamado «modo universal» e não tiver definido nenhuma cena na configuração do nó, também pode transmitir ao nó a cena pretendida como comando. Para tal, transmita um objeto `msg.payload` com o seguinte conteúdo:
22
+
23
+ : scene (string): ID da cena a ativar no bridge
24
+
25
+ ### Ativar uma cena em determinados grupos
26
+
27
+ Ligue a saída deste nó a um ou mais grupos para aplicar uma cena a grupos específicos. Em alternativa, pode fazê-lo «dinamicamente», transmitindo ao nó um objeto `msg.payload` com o seguinte conteúdo:
28
+
29
+ : group (string | array [string,…]): ID do grupo ou uma matriz com os ID de vários grupos para limitar a cena a esses grupos
30
+
31
+ ### Mais informações sobre o nó
32
+
33
+ Este nó não emite mensagens de estado.
34
+
35
+ > [!IMPORTANT]
36
+ > Só pode aplicar cenas a grupos se estes já estiverem associados à respetiva cena no bridge. Caso contrário, não será aplicado nada.
37
+
38
+ ### Exemplos do HueMagic
39
+
40
+ O HueMagic disponibiliza algumas configurações de exemplo para este nó. Para importar um exemplo completo na sua interface Node-RED, clique no ícone de menu do Node-RED, selecione «Importar» e navegue até «Exemplos» na barra lateral da janela. Em seguida, selecione a pasta HueMagic e o nó pretendido para importar um fluxo de exemplo.
41
+
42
+ ![examples](hue/assets/huemagic-examples.gif)
43
+ </script>
@@ -0,0 +1,32 @@
1
+ {
2
+ "hue-scene": {
3
+ "config": {
4
+ "name": "Nome",
5
+ "input-name": "Nome da cena",
6
+ "skipevents-node": "Ignorar as mensagens do nó",
7
+ "sendinitevents-node": "Não suprimir o evento de inicialização",
8
+ "searching": "A procurar cenas…",
9
+ "none-found": "Nenhuma cena encontrada!",
10
+ "unknown-error": "Algo correu mal. Tente novamente.",
11
+ "scene": "Cena",
12
+ "group": "Grupo",
13
+ "group-none-found": "Nenhum grupo encontrado!",
14
+ "group-searching": "A procurar grupos…",
15
+ "groups-all": "Todos os grupos / luzes",
16
+ "bridge": "Bridge"
17
+ },
18
+ "node": {
19
+ "title": "Hue Cena",
20
+ "not-configured": "não configurado",
21
+ "recalled": "cena ativada",
22
+ "recalled-on-group": "cena ativada no grupo",
23
+ "no-id": "Sem ID de cena.",
24
+ "input": "ativar cena",
25
+ "output": "grupo(s) de destino",
26
+ "command": "a executar comando…",
27
+ "statusmsg": "A ativar a cena…",
28
+ "error-not-available": "A cena ainda não está disponível. Aguarde até que o HueMagic tenha estabelecido a ligação com o bridge ou verifique se o ID do recurso indicado na configuração é válido.",
29
+ "error-invalid-brightness": "Definição de brilho inválida. Apenas são permitidos valores de 0 a 100 por cento."
30
+ }
31
+ }
32
+ }
@@ -0,0 +1,80 @@
1
+ <script type="text/markdown" data-help-name="hue-speaker">
2
+ O nó «Hue Altifalante» pode reproduzir os sons de uma campainha Hue Secure e utilizá-la como sirene de interior.
3
+
4
+ ### Configuração
5
+
6
+ Selecione o Hue Bridge pré-configurado e clique no botão de pesquisa para encontrar todos os altifalantes disponíveis. Se já souber o ID do altifalante, também o pode introduzir aqui manualmente. Pode atribuir internamente um novo nome ao altifalante ou manter o nome predefinido. Opcionalmente, pode desativar todas as mensagens de estado automáticas deste nó através da definição «Ignorar as mensagens do nó». O nó deixará de emitir atualizações do dispositivo. Em alternativa, pode escolher que a mensagem de inicialização do nó não seja suprimida no arranque do Node-RED. Se ativar esta definição, receberá uma mensagem de estado do altifalante selecionado após cada implementação. Se preferir que o nó permaneça em silêncio até lhe enviar algo, ative «Comunicar apenas após um comando». Nesse caso, ignora as alterações feitas na aplicação ou num interruptor e responde apenas aos seus próprios comandos.
7
+
8
+ Se não selecionar nenhum altifalante e utilizar assim a configuração do nó, o nó funciona no chamado «modo universal». Neste modo, o nó recebe e emite todas as mensagens de estado do mesmo tipo. Também pode aplicar definições no modo universal a um altifalante específico, transmitindo o respetivo ID como cadeia de carateres em `msg.topic` juntamente com as suas definições.
9
+
10
+ ### Consultar o estado
11
+
12
+ Emite o estado atual do altifalante assim que for transmitido ao nó um objeto `msg.payload` com o seguinte conteúdo. Em alternativa, também pode premir o botão na interface do Node-RED sem ter de enviar previamente uma mensagem ao nó.
13
+
14
+ : status (boolean): Devolve o estado atual do altifalante
15
+
16
+ ### Reproduzir um som
17
+
18
+ Um altifalante conhece três canais distintos. `chime` é o som da campainha, `alarm` é a sirene e `alert` é uma notificação curta. Os sons que um aparelho conhece efetivamente são listados em `msg.info.sounds`. Transmita os seguintes parâmetros num objeto `msg.payload`:
19
+
20
+ : chime (string | object | boolean): Nome do som da campainha; `false` para-o novamente
21
+ : alarm (string | object | boolean): Nome do som da sirene; `false` para-o novamente
22
+ : alert (string | object | boolean): Nome do som de notificação; `false` para-o novamente
23
+ : mute (boolean): `true` silencia o altifalante, `false` volta a ativar o som
24
+
25
+ Em vez de um simples nome de som, também pode transmitir um objeto para controlar o volume e a duração:
26
+
27
+ : sound (string): Nome do som, p. ex. `ding_dong_classic` ou `siren`
28
+ : volume (int): Volume em percentagem (0-100)
29
+ : duration (float): Tempo de reprodução em segundos
30
+
31
+ ### Mensagens de estado do nó
32
+
33
+ Assim que o altifalante começa ou deixa de reproduzir, o nó devolve a seguinte mensagem de estado.
34
+
35
+ > [!NOTE]
36
+ > O bridge comunica o último som reproduzido e só o repõe bastante depois de terminada a reprodução, pelo que estes valores ficam ligeiramente atrasados em relação ao áudio.
37
+
38
+ #### Objeto de estado em `msg.payload`
39
+
40
+ : reachable (boolean | string): `true` se o altifalante estiver ligado ao bridge, `unknown` se o estado da ligação divergir
41
+ : connectionStatus (string): O estado atual da ligação com o bridge sob a forma de uma cadeia de carateres. Pode conter `connected`, `disconnected`, `connectivity_issue` ou `unidirectional_incoming` como valor
42
+ : playing (boolean): `true` enquanto o altifalante estiver a reproduzir algum som
43
+ : chime (string | boolean): Nome do som de campainha em reprodução ou `false`
44
+ : alarm (string | boolean): Nome do som de sirene em reprodução ou `false`
45
+ : alert (string | boolean): Nome do som de notificação em reprodução ou `false`
46
+ : muted (boolean): Indica se o altifalante está silenciado
47
+ : updated (string): Momento da última atualização do recurso pelo HueMagic (ISO 8601)
48
+
49
+ #### Informações sobre o altifalante em `msg.info`
50
+
51
+ : id (string): Indica o novo ID do altifalante
52
+ : idV1 (string | boolean): Indica o ID antigo do altifalante
53
+ : uniqueId (string): O ID único do altifalante
54
+ : deviceId (string): O ID único do dispositivo
55
+ : name (string): O nome atualmente atribuído ao altifalante
56
+ : type (string): O tipo do dispositivo (sempre `speaker`)
57
+ : softwareVersion (string): O firmware atual do altifalante
58
+ : battery (float | boolean): O nível atual da bateria do altifalante, `false` quando não existe bateria
59
+ : batteryState (string | boolean): O estado atual do nível da bateria. Pode conter `normal`, `low` ou `critical` como valor, ou `false` quando não existe bateria
60
+ : sounds (object): Contém os sons que este aparelho conhece em `chime`, `alarm` e `alert`
61
+ : model (object): Contém as informações de modelo do altifalante em `id`, `manufacturer`, `name`, `type` e `certified`
62
+
63
+ #### Alterações de estado em `msg.updated`
64
+
65
+ Enumera sob a forma de um objeto os parâmetros que foram alterados em relação ao último estado do altifalante. Se não tiverem sido registadas alterações, este objeto está vazio.
66
+
67
+ #### Último estado do altifalante em `msg.lastState`
68
+
69
+ Contém o objeto de estado completo (ver os valores de saída acima) do último estado antes da última alteração registada. Se o HueMagic ainda não tiver registado o último estado, é emitido `false`.
70
+
71
+ #### Último comando em `msg.command` (opcional)
72
+
73
+ Se o estado do nó tiver sido alterado através de um determinado comando, é também emitido o comando completo que foi executado. Caso contrário, o nó não emite este objeto.
74
+
75
+ ### Exemplos do HueMagic
76
+
77
+ O HueMagic disponibiliza algumas configurações de exemplo para este nó. Para importar um exemplo completo na sua interface Node-RED, clique no ícone de menu do Node-RED, selecione «Importar» e navegue até «Exemplos» na barra lateral da janela. Em seguida, selecione a pasta HueMagic e o nó pretendido para importar um fluxo de exemplo.
78
+
79
+ ![examples](hue/assets/huemagic-examples.gif)
80
+ </script>
@@ -0,0 +1,38 @@
1
+ {
2
+ "hue-speaker": {
3
+ "config": {
4
+ "name": "Nome",
5
+ "skipevents-node": "Ignorar as mensagens do nó",
6
+ "sendinitevents-node": "Não suprimir o evento de inicialização",
7
+ "onlycommands-node": "Comunicar apenas após um comando",
8
+ "unknown-error": "Algo correu mal. Tente novamente.",
9
+ "bridge": "Bridge",
10
+ "universalevents": "Eventos universais",
11
+ "universalevents-node": "Recebe todas as mensagens de outros nós do mesmo tipo (apenas no modo universal)",
12
+ "input-name": "Nome do altifalante",
13
+ "searching": "A procurar altifalantes…",
14
+ "none-found": "Nenhum altifalante encontrado!",
15
+ "speaker": "Altifalante"
16
+ },
17
+ "node": {
18
+ "not-configured": "não configurado",
19
+ "not-reachable": "inacessível",
20
+ "universal": "modo universal",
21
+ "command": "a executar comando…",
22
+ "statusmsg": "Estado consultado com sucesso…",
23
+ "title": "Hue Altifalante",
24
+ "silent": "silencioso",
25
+ "muted": "sem som",
26
+ "playing-alarm": "alarme (__sound__)",
27
+ "playing-chime": "campainha (__sound__)",
28
+ "playing-alert": "aviso (__sound__)",
29
+ "input": "reproduzir som / estado",
30
+ "output": "altifalante",
31
+ "error-no-id": "Indique um ID de altifalante válido.",
32
+ "error-not-available": "O altifalante ainda não está disponível. Aguarde até que o HueMagic tenha estabelecido a ligação com o bridge ou verifique se o ID do recurso indicado na configuração é válido.",
33
+ "error-no-channel": "Este altifalante não tem qualquer som do tipo __channel__.",
34
+ "error-invalid-sound": "Som de __channel__ inválido. São permitidos: __sounds__",
35
+ "error-invalid-volume": "Definição de volume inválida. Apenas são permitidos valores de 0 a 100."
36
+ }
37
+ }
38
+ }
@@ -0,0 +1,19 @@
1
+ <script type="text/markdown" data-help-name="hue-syncbox-config">
2
+ Liga-se a uma Philips Hue Play HDMI Sync Box.
3
+
4
+ ### Nome
5
+
6
+ Pode atribuir à sync box um nome interno alternativo ou manter o nome predefinido.
7
+
8
+ ### IP da Sync Box
9
+
10
+ O endereço IP da sua sync box na rede local. Assim que o introduzir, o HueMagic tenta ler o nome do aparelho e preenche-o por si.
11
+
12
+ ### Token de acesso
13
+
14
+ A sync box não faz parte do seu Hue Bridge e precisa do seu próprio token. Clique no botão junto ao campo e mantenha depois premido o botão da sync box até o LED piscar a verde. O HueMagic continua a interrogar o aparelho durante um minuto e guarda o token assim que este responder.
15
+
16
+ ### Atualização
17
+
18
+ A sync box não envia o seu estado por iniciativa própria, por isso o HueMagic pergunta-lho regularmente. Esta definição determina quantos segundos decorrem entre dois pedidos. O valor predefinido de 10 segundos é um bom compromisso entre um estado reativo e o tráfego de rede — não o reduza mais do que realmente precisa.
19
+ </script>
@@ -0,0 +1,25 @@
1
+ {
2
+ "hue-syncbox-config": {
3
+ "config": {
4
+ "name": "Nome",
5
+ "syncbox-ip": "IP da Sync Box",
6
+ "token": "Token de acesso",
7
+ "pollinterval": "Atualização (s)",
8
+ "missing-ip": "Falta o IP da Hue Sync Box…",
9
+ "connecting": "A ligar à sync box…",
10
+ "invalid": "Lamentamos. A Hue Sync Box selecionada não é válida: ",
11
+ "error-select-first": "Introduza o IP da sua Hue Sync Box antes de criar um novo token!",
12
+ "waiting": "à espera do botão…",
13
+ "new-user-press": "Mantenha premido o botão da sua Hue Sync Box até o LED piscar a verde!",
14
+ "retry": "Não foi detetada qualquer pressão do botão. Tente novamente…",
15
+ "success": "Token de acesso criado com sucesso!"
16
+ },
17
+ "node": {
18
+ "title": "Hue Sync Box",
19
+ "initializing": "A inicializar a sync box (__syncbox__)…",
20
+ "connected": "Ligado à sync box",
21
+ "request-error": "Erro ao pedir informações à sync box (__error__)",
22
+ "statusmsg": "Estado consultado com sucesso…"
23
+ }
24
+ }
25
+ }
@@ -0,0 +1,86 @@
1
+ <script type="text/markdown" data-help-name="hue-syncbox">
2
+ O nó «Hue Sync Box» controla uma Philips Hue Play HDMI Sync Box e comunica o que esta está a fazer no momento.
3
+
4
+ ### Configuração
5
+
6
+ A sync box não está ligada ao seu Hue Bridge, mas fala a sua própria API local, pelo que necessita de uma configuração própria. Introduza o endereço IP da sua sync box e clique no botão junto ao campo do token de acesso. Mantenha depois premido o botão da sync box até o LED piscar a verde — o HueMagic continua a interrogar o aparelho durante um minuto e guarda o token assim que este responder.
7
+
8
+ Uma vez que a sync box não envia o seu estado por iniciativa própria, o HueMagic pergunta-lho regularmente. Pode definir a frequência na configuração; o valor predefinido é de 10 segundos. Opcionalmente, pode desativar todas as mensagens de estado automáticas deste nó através da definição «Ignorar as mensagens do nó». Em alternativa, pode escolher que a mensagem de inicialização do nó não seja suprimida no arranque do Node-RED. Se preferir que o nó permaneça em silêncio até lhe enviar algo, ative «Comunicar apenas após um comando». Nesse caso, ignora as alterações feitas na aplicação ou num interruptor e responde apenas aos seus próprios comandos.
9
+
10
+ ### Consultar o estado
11
+
12
+ Emite o estado atual da sync box assim que for transmitido ao nó um objeto `msg.payload` com o seguinte conteúdo. Em alternativa, também pode premir o botão na interface do Node-RED sem ter de enviar previamente uma mensagem ao nó.
13
+
14
+ : status (boolean): Devolve o estado atual da sync box
15
+
16
+ ### Ligar / desligar (modo simples)
17
+
18
+ Para ligar ou desligar rapidamente a sync box, transmita ao nó um objeto com o seguinte conteúdo. Ao ligar, é retomado o último modo de sincronização utilizado.
19
+
20
+ : payload (boolean): `true` inicia a sincronização, `false` coloca o aparelho em poupança de energia
21
+
22
+ ### Comandos da sync box (avançado)
23
+
24
+ Transmita os seguintes parâmetros num objeto `msg.payload` para controlar a sync box de forma mais detalhada:
25
+
26
+ : mode (string): Um de `powersave`, `passthrough`, `video`, `game`, `music` ou `ambient`
27
+ : sync (boolean): `true` inicia a sincronização, `false` para-a
28
+ : toggle (boolean | any): Alterna a sincronização consoante o estado anterior
29
+ : passthrough (boolean): `true` encaminha a imagem para o seu televisor sem sincronizar
30
+ : intensity (string): Com que intensidade as luzes seguem a imagem. Um de `subtle`, `moderate`, `high` ou `intense`
31
+ : brightness (int): Valor percentual do brilho (0-100)
32
+ : brightnessLevel (int): Valor numérico do brilho tal como o aparelho o conta (0-200, sendo 100 o valor de referência)
33
+ : incrementBrightness (int | boolean): Indica em quantos pontos percentuais o brilho da sync box deve aumentar, ou `true` para passos de 10 %
34
+ : decrementBrightness (int | boolean): Indica em quantos pontos percentuais o brilho da sync box deve diminuir, ou `true` para passos de 10 %
35
+ : input (string | int): A entrada HDMI a apresentar, de `input1` a `input4` ou simplesmente de `1` a `4`
36
+ : entertainmentArea (string): A área de entretenimento que o aparelho deve controlar, p. ex. `groups/13`
37
+
38
+ ### Mensagens de estado do nó
39
+
40
+ Sempre que o estado da sync box muda, o nó devolve a seguinte mensagem de estado:
41
+
42
+ #### Objeto de estado em `msg.payload`
43
+
44
+ : on (boolean): `false` enquanto o aparelho estiver em poupança de energia
45
+ : syncing (boolean): `true` enquanto as luzes seguirem a imagem
46
+ : passthrough (boolean): `true` enquanto o aparelho encaminhar a imagem
47
+ : mode (string): O modo atualmente ativo
48
+ : lastSyncMode (string): O último modo de sincronização utilizado
49
+ : intensity (string | boolean): Intensidade do modo atualmente ativo
50
+ : brightness (int | boolean): Brilho em percentagem
51
+ : brightnessLevel (int | boolean): Brilho tal como o aparelho o conta (0-200)
52
+ : input (string | boolean): A entrada HDMI atualmente apresentada
53
+ : inputs (object): As quatro entradas HDMI com o respetivo `name`, `type`, `status` (`unplugged`, `plugged`, `linked` ou `unknown`) e se estão `active`
54
+ : entertainmentArea (string | boolean): A área de entretenimento controlada pelo aparelho
55
+ : updated (string): Momento da última atualização do recurso pelo HueMagic (ISO 8601)
56
+
57
+ #### Informações sobre a sync box em `msg.info`
58
+
59
+ : id (string | boolean): O ID único da sync box
60
+ : name (string | boolean): O nome atualmente atribuído à sync box
61
+ : type (string): O tipo do dispositivo (sempre `syncbox`)
62
+ : ipAddress (string | boolean): O endereço IP que o aparelho indica para si próprio
63
+ : softwareVersion (string | boolean): O firmware atual da sync box
64
+ : apiLevel (int | boolean): O nível de API da sync box
65
+ : ledMode (int | boolean): O modo de LED atualmente definido
66
+ : wifi (object | boolean): Contém `ssid` e `strength` da ligação sem fios
67
+ : model (object): Contém as informações de modelo da sync box em `id`, `manufacturer` e `name`
68
+
69
+ #### Alterações de estado em `msg.updated`
70
+
71
+ Enumera sob a forma de um objeto os parâmetros que foram alterados em relação ao último estado da sync box. Se não tiverem sido registadas alterações, este objeto está vazio.
72
+
73
+ #### Último estado da sync box em `msg.lastState`
74
+
75
+ Contém o objeto de estado completo (ver os valores de saída acima) do último estado antes da última alteração registada. Se o HueMagic ainda não tiver registado o último estado, é emitido `false`.
76
+
77
+ #### Último comando em `msg.command` (opcional)
78
+
79
+ Se o estado do nó tiver sido alterado através de um determinado comando, é também emitido o comando completo que foi executado. Caso contrário, o nó não emite este objeto.
80
+
81
+ ### Exemplos do HueMagic
82
+
83
+ O HueMagic disponibiliza algumas configurações de exemplo para este nó. Para importar um exemplo completo na sua interface Node-RED, clique no ícone de menu do Node-RED, selecione «Importar» e navegue até «Exemplos» na barra lateral da janela. Em seguida, selecione a pasta HueMagic e o nó pretendido para importar um fluxo de exemplo.
84
+
85
+ ![examples](hue/assets/huemagic-examples.gif)
86
+ </script>
@@ -0,0 +1,30 @@
1
+ {
2
+ "hue-syncbox": {
3
+ "config": {
4
+ "name": "Nome",
5
+ "skipevents-node": "Ignorar as mensagens do nó",
6
+ "sendinitevents-node": "Não suprimir o evento de inicialização",
7
+ "onlycommands-node": "Comunicar apenas após um comando",
8
+ "input-name": "Nome da Sync Box",
9
+ "syncbox": "Sync Box"
10
+ },
11
+ "node": {
12
+ "not-configured": "não configurado",
13
+ "command": "a executar comando…",
14
+ "statusmsg": "Estado consultado com sucesso…",
15
+ "title": "Hue Sync Box",
16
+ "connecting": "a ligar…",
17
+ "powersave": "desligada",
18
+ "passthrough": "passagem direta",
19
+ "syncing": "__mode__ (__intensity__)",
20
+ "input": "controlar a sync box",
21
+ "output": "sync box",
22
+ "error-not-available": "A sync box ainda não está disponível. Aguarde até que o HueMagic tenha estabelecido a ligação com ela.",
23
+ "error-invalid-mode": "Modo inválido. São permitidos: __modes__",
24
+ "error-invalid-intensity": "Intensidade inválida. São permitidas: __intensities__",
25
+ "error-invalid-brightness": "Definição de brilho inválida. Apenas são permitidos valores de 0 a 100 por cento.",
26
+ "error-invalid-brightness-level": "Definição de brilho inválida. Apenas são permitidos valores de 0 a 200.",
27
+ "error-invalid-input": "Entrada HDMI inválida. Apenas são permitidas input1 a input4."
28
+ }
29
+ }
30
+ }
@@ -0,0 +1,69 @@
1
+ <script type="text/markdown" data-help-name="hue-temperature">
2
+ O nó «Hue Temperatura» pode consultar e comunicar a temperatura ambiente atual de um sensor adequado ligado ao bridge.
3
+
4
+ ### Configuração
5
+
6
+ Selecione o Hue Bridge pré-configurado e clique no botão de pesquisa para encontrar todos os sensores disponíveis. Se já souber o ID do sensor, também o pode introduzir aqui manualmente. Pode atribuir internamente um novo nome ao sensor ou manter o nome predefinido. Opcionalmente, pode desativar todas as mensagens de estado automáticas deste nó através da definição «Ignorar as mensagens do nó». O nó deixará de emitir atualizações do dispositivo. Em alternativa, pode escolher que a mensagem de inicialização do nó não seja suprimida no arranque do Node-RED. Se ativar esta definição, receberá uma mensagem de estado do sensor selecionado após cada implementação. Se preferir que o nó permaneça em silêncio até lhe enviar algo, ative «Comunicar apenas após um comando». Nesse caso, ignora as alterações feitas na aplicação ou num interruptor e responde apenas aos seus próprios comandos.
7
+
8
+ Os sensores de movimento são geralmente instalados num canto da divisão e medem muitas vezes um valor ligeiramente elevado devido à sua própria eletrónica. Com a definição «Correção» pode calibrar o sensor sem rodeios: o valor que introduzir aqui (p. ex. `-1.5`) é somado a cada valor medido antes de o nó o emitir. A correção aplica-se simultaneamente a todas as unidades de temperatura.
9
+
10
+ Se não selecionar nenhum sensor e utilizar assim a configuração do nó, o nó funciona no chamado «modo universal». Neste modo, o nó recebe e emite todas as mensagens de estado do mesmo tipo. Também pode aplicar definições no modo universal a um sensor específico, transmitindo o respetivo ID do sensor como cadeia de carateres em `msg.topic` juntamente com as suas definições.
11
+
12
+ ### Consultar o estado
13
+
14
+ Emite o estado atual do sensor assim que for transmitido ao nó um objeto `msg.payload` com o seguinte conteúdo. Em alternativa, também pode premir o botão na interface do Node-RED sem ter de enviar previamente uma mensagem ao nó.
15
+
16
+ : status (boolean): Devolve o estado atual do sensor
17
+
18
+ ### Ligar / desligar o sensor
19
+
20
+ Se necessário, o sensor pode ser ligado e desligado remotamente. Se o sensor estiver desligado, deixa de registar alterações de temperatura e, por conseguinte, deixa de as emitir. Para tal, transmita um objeto com o seguinte conteúdo:
21
+
22
+ : payload (boolean): `true` liga o sensor, `false` desliga-o
23
+
24
+ ### Mensagens de estado do nó
25
+
26
+ Assim que o sensor regista uma alteração de temperatura, o nó devolve a seguinte mensagem de estado:
27
+
28
+ #### Objeto de estado em `msg.payload`
29
+
30
+ : active (boolean): Indica se o sensor está ligado ou desligado
31
+ : reachable (boolean | string): `true` se o sensor estiver ligado ao bridge, `unknown` se o estado da ligação divergir
32
+ : connectionStatus (string): O estado atual da ligação com o bridge sob a forma de uma cadeia de carateres. Pode conter `connected`, `disconnected`, `connectivity_issue` ou `unidirectional_incoming` como valor
33
+ : celsius (float): Indica a temperatura ambiente atual em °C (graus Celsius)
34
+ : fahrenheit (float): Indica a temperatura ambiente atual em °F (graus Fahrenheit)
35
+ : temperatureIs (string): Descreve a temperatura atual com os valores `very cold`, `cold`, `slightly cold`, `comfortable`, `slightly warm`, `warm`, `hot` ou `very hot`
36
+ : deviceValue (float): O valor original da temperatura fornecido pelo sensor
37
+ : updated (string): Momento da última atualização do recurso pelo HueMagic (ISO 8601)
38
+
39
+ #### Informações sobre o sensor em `msg.info`
40
+
41
+ : id (string): Indica o novo ID do sensor
42
+ : idV1 (string | boolean): Indica o ID antigo do sensor
43
+ : uniqueId (string): O ID único do sensor
44
+ : deviceId (string): O ID único do dispositivo
45
+ : name (string): O nome atualmente atribuído ao sensor
46
+ : type (string): O tipo do sensor (sempre `temperature`)
47
+ : softwareVersion (string): O firmware atual do sensor
48
+ : battery (float): O nível atual da bateria do sensor
49
+ : batteryState (string): O estado atual do nível da bateria. Pode conter `normal`, `low` ou `critical` como valor
50
+ : model (object): Contém as informações de modelo do sensor em `id`, `manufacturer`, `name`, `type` e `certified`
51
+
52
+ #### Alterações de estado em `msg.updated`
53
+
54
+ Enumera sob a forma de um objeto os parâmetros que foram alterados em relação ao último estado do sensor. Se não tiverem sido registadas alterações, este objeto está vazio.
55
+
56
+ #### Último estado do sensor em `msg.lastState`
57
+
58
+ Contém o objeto de estado completo (ver os valores de saída acima) do último estado antes da última alteração registada. Se o HueMagic ainda não tiver registado o último estado, é emitido `false`.
59
+
60
+ #### Último comando em `msg.command` (opcional)
61
+
62
+ Se o estado do nó tiver sido alterado através de um determinado comando, é também emitido o comando completo que foi executado. Caso contrário, o nó não emite este objeto.
63
+
64
+ ### Exemplos do HueMagic
65
+
66
+ O HueMagic disponibiliza algumas configurações de exemplo para este nó. Para importar um exemplo completo na sua interface Node-RED, clique no ícone de menu do Node-RED, selecione «Importar» e navegue até «Exemplos» na barra lateral da janela. Em seguida, selecione a pasta HueMagic e o nó pretendido para importar um fluxo de exemplo.
67
+
68
+ ![examples](hue/assets/huemagic-examples.gif)
69
+ </script>