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.
- package/CHANGELOG.md +89 -5
- package/README.md +506 -123
- package/examples/Deutsch/Hue Automation.json +176 -0
- package/examples/Deutsch/Hue Bridge.json +256 -0
- package/examples/Deutsch/Hue Brightness.json +150 -0
- package/examples/Deutsch/Hue Buttons.json +88 -0
- package/examples/Deutsch/Hue Contact.json +150 -0
- package/examples/Deutsch/Hue Group.json +658 -0
- package/examples/Deutsch/Hue Light.json +893 -0
- package/examples/Deutsch/Hue Magic.json +148 -0
- package/examples/Deutsch/Hue Motion.json +150 -0
- package/examples/Deutsch/Hue Rules.json +150 -0
- package/examples/Deutsch/Hue Scene.json +178 -0
- package/examples/Deutsch/Hue Speaker.json +274 -0
- package/examples/Deutsch/Hue Sync Box.json +378 -0
- package/examples/Deutsch/Hue Temperature.json +150 -0
- package/examples/English/Hue Automation.json +176 -0
- package/examples/{Hue Bridge.json → English/Hue Bridge.json } +1 -1
- package/examples/{Hue Brightness.json → English/Hue Brightness.json } +1 -1
- package/examples/{Hue Buttons.json → English/Hue Buttons.json } +1 -1
- package/examples/English/Hue Contact.json +150 -0
- package/examples/{Hue Group.json → English/Hue Group.json } +1 -1
- package/examples/{Hue Light.json → English/Hue Light.json } +1 -1
- package/examples/{Hue Magic.json → English/Hue Magic.json } +1 -1
- package/examples/{Hue Motion.json → English/Hue Motion.json } +1 -1
- package/examples/{Hue Rules.json → English/Hue Rules.json } +1 -1
- package/examples/{Hue Scene.json → English/Hue Scene.json } +1 -1
- package/examples/English/Hue Speaker.json +274 -0
- package/examples/English/Hue Sync Box.json +378 -0
- package/examples/{Hue Temperature.json → English/Hue Temperature.json } +1 -1
- package/examples/Espa/303/261ol/Hue Automation.json" +176 -0
- package/examples/Espa/303/261ol/Hue Bridge.json" +256 -0
- package/examples/Espa/303/261ol/Hue Brightness.json" +150 -0
- package/examples/Espa/303/261ol/Hue Buttons.json" +88 -0
- package/examples/Espa/303/261ol/Hue Contact.json" +150 -0
- package/examples/Espa/303/261ol/Hue Group.json" +658 -0
- package/examples/Espa/303/261ol/Hue Light.json" +893 -0
- package/examples/Espa/303/261ol/Hue Magic.json" +148 -0
- package/examples/Espa/303/261ol/Hue Motion.json" +150 -0
- package/examples/Espa/303/261ol/Hue Rules.json" +150 -0
- package/examples/Espa/303/261ol/Hue Scene.json" +178 -0
- package/examples/Espa/303/261ol/Hue Speaker.json" +274 -0
- package/examples/Espa/303/261ol/Hue Sync Box.json" +378 -0
- package/examples/Espa/303/261ol/Hue Temperature.json" +150 -0
- package/examples/Fran/303/247ais/Hue Automation.json" +176 -0
- package/examples/Fran/303/247ais/Hue Bridge.json" +256 -0
- package/examples/Fran/303/247ais/Hue Brightness.json" +150 -0
- package/examples/Fran/303/247ais/Hue Buttons.json" +88 -0
- package/examples/Fran/303/247ais/Hue Contact.json" +150 -0
- package/examples/Fran/303/247ais/Hue Group.json" +658 -0
- package/examples/Fran/303/247ais/Hue Light.json" +893 -0
- package/examples/Fran/303/247ais/Hue Magic.json" +148 -0
- package/examples/Fran/303/247ais/Hue Motion.json" +150 -0
- package/examples/Fran/303/247ais/Hue Rules.json" +150 -0
- package/examples/Fran/303/247ais/Hue Scene.json" +178 -0
- package/examples/Fran/303/247ais/Hue Speaker.json" +274 -0
- package/examples/Fran/303/247ais/Hue Sync Box.json" +378 -0
- package/examples/Fran/303/247ais/Hue Temperature.json" +150 -0
- package/examples/Italiano/Hue Automation.json +176 -0
- package/examples/Italiano/Hue Bridge.json +256 -0
- package/examples/Italiano/Hue Brightness.json +150 -0
- package/examples/Italiano/Hue Buttons.json +88 -0
- package/examples/Italiano/Hue Contact.json +150 -0
- package/examples/Italiano/Hue Group.json +658 -0
- package/examples/Italiano/Hue Light.json +893 -0
- package/examples/Italiano/Hue Magic.json +148 -0
- package/examples/Italiano/Hue Motion.json +150 -0
- package/examples/Italiano/Hue Rules.json +150 -0
- package/examples/Italiano/Hue Scene.json +178 -0
- package/examples/Italiano/Hue Speaker.json +274 -0
- package/examples/Italiano/Hue Sync Box.json +378 -0
- package/examples/Italiano/Hue Temperature.json +150 -0
- package/examples/Nederlands/Hue Automation.json +176 -0
- package/examples/Nederlands/Hue Bridge.json +256 -0
- package/examples/Nederlands/Hue Brightness.json +150 -0
- package/examples/Nederlands/Hue Buttons.json +88 -0
- package/examples/Nederlands/Hue Contact.json +150 -0
- package/examples/Nederlands/Hue Group.json +658 -0
- package/examples/Nederlands/Hue Light.json +893 -0
- package/examples/Nederlands/Hue Magic.json +148 -0
- package/examples/Nederlands/Hue Motion.json +150 -0
- package/examples/Nederlands/Hue Rules.json +150 -0
- package/examples/Nederlands/Hue Scene.json +178 -0
- package/examples/Nederlands/Hue Speaker.json +274 -0
- package/examples/Nederlands/Hue Sync Box.json +378 -0
- package/examples/Nederlands/Hue Temperature.json +150 -0
- package/examples/Polski/Hue Automation.json +176 -0
- package/examples/Polski/Hue Bridge.json +256 -0
- package/examples/Polski/Hue Brightness.json +150 -0
- package/examples/Polski/Hue Buttons.json +88 -0
- package/examples/Polski/Hue Contact.json +150 -0
- package/examples/Polski/Hue Group.json +658 -0
- package/examples/Polski/Hue Light.json +893 -0
- package/examples/Polski/Hue Magic.json +148 -0
- package/examples/Polski/Hue Motion.json +150 -0
- package/examples/Polski/Hue Rules.json +150 -0
- package/examples/Polski/Hue Scene.json +178 -0
- package/examples/Polski/Hue Speaker.json +274 -0
- package/examples/Polski/Hue Sync Box.json +378 -0
- package/examples/Polski/Hue Temperature.json +150 -0
- package/examples/Portugu/303/252s/Hue Automation.json" +176 -0
- package/examples/Portugu/303/252s/Hue Bridge.json" +256 -0
- package/examples/Portugu/303/252s/Hue Brightness.json" +150 -0
- package/examples/Portugu/303/252s/Hue Buttons.json" +88 -0
- package/examples/Portugu/303/252s/Hue Contact.json" +150 -0
- package/examples/Portugu/303/252s/Hue Group.json" +658 -0
- package/examples/Portugu/303/252s/Hue Light.json" +893 -0
- package/examples/Portugu/303/252s/Hue Magic.json" +148 -0
- package/examples/Portugu/303/252s/Hue Motion.json" +150 -0
- package/examples/Portugu/303/252s/Hue Rules.json" +150 -0
- package/examples/Portugu/303/252s/Hue Scene.json" +178 -0
- package/examples/Portugu/303/252s/Hue Speaker.json" +274 -0
- package/examples/Portugu/303/252s/Hue Sync Box.json" +378 -0
- package/examples/Portugu/303/252s/Hue Temperature.json" +150 -0
- package/examples/T/303/274rk/303/247e/Hue Automation.json" +176 -0
- package/examples/T/303/274rk/303/247e/Hue Bridge.json" +256 -0
- package/examples/T/303/274rk/303/247e/Hue Brightness.json" +150 -0
- package/examples/T/303/274rk/303/247e/Hue Buttons.json" +88 -0
- package/examples/T/303/274rk/303/247e/Hue Contact.json" +150 -0
- package/examples/T/303/274rk/303/247e/Hue Group.json" +658 -0
- package/examples/T/303/274rk/303/247e/Hue Light.json" +893 -0
- package/examples/T/303/274rk/303/247e/Hue Magic.json" +148 -0
- package/examples/T/303/274rk/303/247e/Hue Motion.json" +150 -0
- package/examples/T/303/274rk/303/247e/Hue Rules.json" +150 -0
- package/examples/T/303/274rk/303/247e/Hue Scene.json" +178 -0
- package/examples/T/303/274rk/303/247e/Hue Speaker.json" +274 -0
- package/examples/T/303/274rk/303/247e/Hue Sync Box.json" +378 -0
- package/examples/T/303/274rk/303/247e/Hue Temperature.json" +150 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Automation.json" +176 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Bridge.json" +256 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Brightness.json" +150 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Buttons.json" +88 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Contact.json" +150 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Group.json" +658 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Light.json" +893 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Magic.json" +148 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Motion.json" +150 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Rules.json" +150 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Scene.json" +178 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Speaker.json" +274 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Sync Box.json" +378 -0
- package/examples//316/225/316/273/316/273/316/267/316/275/316/271/316/272/316/254/Hue Temperature.json" +150 -0
- package/huemagic/assets/huemagic-examples.gif +0 -0
- package/huemagic/hue-automation.html +218 -0
- package/huemagic/hue-automation.js +173 -0
- package/huemagic/hue-bridge-config.html +39 -32
- package/huemagic/hue-bridge-config.js +290 -99
- package/huemagic/hue-bridge.html +8 -8
- package/huemagic/hue-bridge.js +29 -4
- package/huemagic/hue-brightness.html +21 -9
- package/huemagic/hue-brightness.js +20 -10
- package/huemagic/hue-buttons.html +16 -9
- package/huemagic/hue-buttons.js +90 -27
- package/huemagic/hue-contact.html +218 -0
- package/huemagic/hue-contact.js +209 -0
- package/huemagic/hue-group.html +16 -9
- package/huemagic/hue-group.js +141 -179
- package/huemagic/hue-light.html +19 -12
- package/huemagic/hue-light.js +222 -167
- package/huemagic/hue-magic.html +3 -5
- package/huemagic/hue-motion.html +16 -9
- package/huemagic/hue-motion.js +37 -8
- package/huemagic/hue-rules.html +16 -9
- package/huemagic/hue-rules.js +16 -8
- package/huemagic/hue-scene.html +9 -5
- package/huemagic/hue-scene.js +52 -16
- package/huemagic/hue-speaker.html +218 -0
- package/huemagic/hue-speaker.js +257 -0
- package/huemagic/hue-syncbox-config.html +123 -0
- package/huemagic/hue-syncbox-config.js +179 -0
- package/huemagic/hue-syncbox.html +82 -0
- package/huemagic/hue-syncbox.js +274 -0
- package/huemagic/hue-temperature.html +21 -9
- package/huemagic/hue-temperature.js +18 -10
- package/huemagic/icons/hue-automation.png +0 -0
- package/huemagic/icons/hue-automation.svg +3 -0
- package/huemagic/icons/hue-contact.png +0 -0
- package/huemagic/icons/hue-contact.svg +4 -0
- package/huemagic/icons/hue-speaker.png +0 -0
- package/huemagic/icons/hue-speaker.svg +6 -0
- package/huemagic/icons/hue-syncbox.png +0 -0
- package/huemagic/icons/hue-syncbox.svg +7 -0
- package/huemagic/locales/de/hue-automation.html +59 -0
- package/huemagic/locales/de/hue-automation.json +33 -0
- package/huemagic/locales/de/hue-bridge-config.json +23 -12
- package/huemagic/locales/de/hue-bridge.html +7 -4
- package/huemagic/locales/de/hue-bridge.json +9 -10
- package/huemagic/locales/de/hue-brightness.html +9 -6
- package/huemagic/locales/de/hue-brightness.json +13 -9
- package/huemagic/locales/de/hue-buttons.html +5 -4
- package/huemagic/locales/de/hue-buttons.json +22 -8
- package/huemagic/locales/de/hue-contact.html +67 -0
- package/huemagic/locales/de/hue-contact.json +35 -0
- package/huemagic/locales/de/hue-group.html +17 -6
- package/huemagic/locales/de/hue-group.json +16 -9
- package/huemagic/locales/de/hue-light.html +6 -6
- package/huemagic/locales/de/hue-light.json +17 -9
- package/huemagic/locales/de/hue-magic.html +1 -1
- package/huemagic/locales/de/hue-magic.json +6 -8
- package/huemagic/locales/de/hue-motion.html +4 -4
- package/huemagic/locales/de/hue-motion.json +14 -9
- package/huemagic/locales/de/hue-rules.html +2 -2
- package/huemagic/locales/de/hue-rules.json +10 -9
- package/huemagic/locales/de/hue-scene.html +11 -3
- package/huemagic/locales/de/hue-scene.json +9 -9
- package/huemagic/locales/de/hue-speaker.html +80 -0
- package/huemagic/locales/de/hue-speaker.json +38 -0
- package/huemagic/locales/de/hue-syncbox-config.html +19 -0
- package/huemagic/locales/de/hue-syncbox-config.json +25 -0
- package/huemagic/locales/de/hue-syncbox.html +86 -0
- package/huemagic/locales/de/hue-syncbox.json +30 -0
- package/huemagic/locales/de/hue-temperature.html +7 -5
- package/huemagic/locales/de/hue-temperature.json +13 -9
- package/huemagic/locales/el/hue-automation.html +59 -0
- package/huemagic/locales/el/hue-automation.json +33 -0
- package/huemagic/locales/el/hue-bridge-config.html +31 -0
- package/huemagic/locales/el/hue-bridge-config.json +40 -0
- package/huemagic/locales/el/hue-bridge.html +96 -0
- package/huemagic/locales/el/hue-bridge.json +26 -0
- package/huemagic/locales/el/hue-brightness.html +70 -0
- package/huemagic/locales/el/hue-brightness.json +37 -0
- package/huemagic/locales/el/hue-buttons.html +59 -0
- package/huemagic/locales/el/hue-buttons.json +42 -0
- package/huemagic/locales/el/hue-contact.html +67 -0
- package/huemagic/locales/el/hue-contact.json +35 -0
- package/huemagic/locales/el/hue-group.html +87 -0
- package/huemagic/locales/el/hue-group.json +46 -0
- package/huemagic/locales/el/hue-light.html +97 -0
- package/huemagic/locales/el/hue-light.json +44 -0
- package/huemagic/locales/el/hue-magic.html +68 -0
- package/huemagic/locales/el/hue-magic.json +26 -0
- package/huemagic/locales/el/hue-motion.html +64 -0
- package/huemagic/locales/el/hue-motion.json +36 -0
- package/huemagic/locales/el/hue-rules.html +69 -0
- package/huemagic/locales/el/hue-rules.json +30 -0
- package/huemagic/locales/el/hue-scene.html +43 -0
- package/huemagic/locales/el/hue-scene.json +32 -0
- package/huemagic/locales/el/hue-speaker.html +80 -0
- package/huemagic/locales/el/hue-speaker.json +38 -0
- package/huemagic/locales/el/hue-syncbox-config.html +19 -0
- package/huemagic/locales/el/hue-syncbox-config.json +25 -0
- package/huemagic/locales/el/hue-syncbox.html +86 -0
- package/huemagic/locales/el/hue-syncbox.json +30 -0
- package/huemagic/locales/el/hue-temperature.html +69 -0
- package/huemagic/locales/el/hue-temperature.json +33 -0
- package/huemagic/locales/en/hue-automation.html +59 -0
- package/huemagic/locales/en/hue-automation.json +33 -0
- package/huemagic/locales/en/hue-bridge-config.json +40 -0
- package/huemagic/locales/{en-US → en}/hue-bridge.html +5 -2
- package/huemagic/locales/{en-US → en}/hue-bridge.json +8 -9
- package/huemagic/locales/{en-US → en}/hue-brightness.html +6 -3
- package/huemagic/locales/{en-US → en}/hue-brightness.json +11 -9
- package/huemagic/locales/{en-US → en}/hue-buttons.html +4 -3
- package/huemagic/locales/en/hue-buttons.json +42 -0
- package/huemagic/locales/en/hue-contact.html +67 -0
- package/huemagic/locales/en/hue-contact.json +35 -0
- package/huemagic/locales/{en-US → en}/hue-group.html +16 -5
- package/huemagic/locales/{en-US → en}/hue-group.json +15 -10
- package/huemagic/locales/{en-US → en}/hue-light.html +3 -3
- package/huemagic/locales/en/hue-light.json +44 -0
- package/huemagic/locales/{en-US → en}/hue-magic.html +1 -1
- package/huemagic/locales/{en-US → en}/hue-motion.html +2 -2
- package/huemagic/locales/{en-US → en}/hue-motion.json +12 -9
- package/huemagic/locales/{en-US → en}/hue-rules.html +2 -2
- package/huemagic/locales/{en-US → en}/hue-rules.json +10 -9
- package/huemagic/locales/{en-US → en}/hue-scene.html +11 -3
- package/huemagic/locales/{en-US → en}/hue-scene.json +9 -9
- package/huemagic/locales/en/hue-speaker.html +80 -0
- package/huemagic/locales/en/hue-speaker.json +38 -0
- package/huemagic/locales/en/hue-syncbox-config.html +19 -0
- package/huemagic/locales/en/hue-syncbox-config.json +25 -0
- package/huemagic/locales/en/hue-syncbox.html +86 -0
- package/huemagic/locales/en/hue-syncbox.json +30 -0
- package/huemagic/locales/{en-US → en}/hue-temperature.html +4 -2
- package/huemagic/locales/{en-US → en}/hue-temperature.json +11 -9
- package/huemagic/locales/es/hue-automation.html +59 -0
- package/huemagic/locales/es/hue-automation.json +33 -0
- package/huemagic/locales/es/hue-bridge-config.html +31 -0
- package/huemagic/locales/es/hue-bridge-config.json +40 -0
- package/huemagic/locales/es/hue-bridge.html +96 -0
- package/huemagic/locales/es/hue-bridge.json +26 -0
- package/huemagic/locales/es/hue-brightness.html +70 -0
- package/huemagic/locales/es/hue-brightness.json +37 -0
- package/huemagic/locales/es/hue-buttons.html +59 -0
- package/huemagic/locales/es/hue-buttons.json +42 -0
- package/huemagic/locales/es/hue-contact.html +67 -0
- package/huemagic/locales/es/hue-contact.json +35 -0
- package/huemagic/locales/es/hue-group.html +87 -0
- package/huemagic/locales/es/hue-group.json +46 -0
- package/huemagic/locales/es/hue-light.html +97 -0
- package/huemagic/locales/es/hue-light.json +44 -0
- package/huemagic/locales/es/hue-magic.html +68 -0
- package/huemagic/locales/es/hue-magic.json +26 -0
- package/huemagic/locales/es/hue-motion.html +64 -0
- package/huemagic/locales/es/hue-motion.json +36 -0
- package/huemagic/locales/es/hue-rules.html +69 -0
- package/huemagic/locales/es/hue-rules.json +30 -0
- package/huemagic/locales/es/hue-scene.html +43 -0
- package/huemagic/locales/es/hue-scene.json +32 -0
- package/huemagic/locales/es/hue-speaker.html +80 -0
- package/huemagic/locales/es/hue-speaker.json +38 -0
- package/huemagic/locales/es/hue-syncbox-config.html +19 -0
- package/huemagic/locales/es/hue-syncbox-config.json +25 -0
- package/huemagic/locales/es/hue-syncbox.html +86 -0
- package/huemagic/locales/es/hue-syncbox.json +30 -0
- package/huemagic/locales/es/hue-temperature.html +69 -0
- package/huemagic/locales/es/hue-temperature.json +33 -0
- package/huemagic/locales/fr/hue-automation.html +59 -0
- package/huemagic/locales/fr/hue-automation.json +33 -0
- package/huemagic/locales/fr/hue-bridge-config.html +31 -0
- package/huemagic/locales/fr/hue-bridge-config.json +40 -0
- package/huemagic/locales/fr/hue-bridge.html +96 -0
- package/huemagic/locales/fr/hue-bridge.json +26 -0
- package/huemagic/locales/fr/hue-brightness.html +70 -0
- package/huemagic/locales/fr/hue-brightness.json +37 -0
- package/huemagic/locales/fr/hue-buttons.html +59 -0
- package/huemagic/locales/fr/hue-buttons.json +42 -0
- package/huemagic/locales/fr/hue-contact.html +67 -0
- package/huemagic/locales/fr/hue-contact.json +35 -0
- package/huemagic/locales/fr/hue-group.html +87 -0
- package/huemagic/locales/fr/hue-group.json +46 -0
- package/huemagic/locales/fr/hue-light.html +97 -0
- package/huemagic/locales/fr/hue-light.json +44 -0
- package/huemagic/locales/fr/hue-magic.html +68 -0
- package/huemagic/locales/fr/hue-magic.json +26 -0
- package/huemagic/locales/fr/hue-motion.html +64 -0
- package/huemagic/locales/fr/hue-motion.json +36 -0
- package/huemagic/locales/fr/hue-rules.html +69 -0
- package/huemagic/locales/fr/hue-rules.json +30 -0
- package/huemagic/locales/fr/hue-scene.html +43 -0
- package/huemagic/locales/fr/hue-scene.json +32 -0
- package/huemagic/locales/fr/hue-speaker.html +80 -0
- package/huemagic/locales/fr/hue-speaker.json +38 -0
- package/huemagic/locales/fr/hue-syncbox-config.html +19 -0
- package/huemagic/locales/fr/hue-syncbox-config.json +25 -0
- package/huemagic/locales/fr/hue-syncbox.html +86 -0
- package/huemagic/locales/fr/hue-syncbox.json +30 -0
- package/huemagic/locales/fr/hue-temperature.html +69 -0
- package/huemagic/locales/fr/hue-temperature.json +33 -0
- package/huemagic/locales/it/hue-automation.html +59 -0
- package/huemagic/locales/it/hue-automation.json +33 -0
- package/huemagic/locales/it/hue-bridge-config.html +31 -0
- package/huemagic/locales/it/hue-bridge-config.json +40 -0
- package/huemagic/locales/it/hue-bridge.html +96 -0
- package/huemagic/locales/it/hue-bridge.json +26 -0
- package/huemagic/locales/it/hue-brightness.html +70 -0
- package/huemagic/locales/it/hue-brightness.json +37 -0
- package/huemagic/locales/it/hue-buttons.html +59 -0
- package/huemagic/locales/it/hue-buttons.json +42 -0
- package/huemagic/locales/it/hue-contact.html +67 -0
- package/huemagic/locales/it/hue-contact.json +35 -0
- package/huemagic/locales/it/hue-group.html +87 -0
- package/huemagic/locales/it/hue-group.json +46 -0
- package/huemagic/locales/it/hue-light.html +97 -0
- package/huemagic/locales/it/hue-light.json +44 -0
- package/huemagic/locales/it/hue-magic.html +68 -0
- package/huemagic/locales/it/hue-magic.json +26 -0
- package/huemagic/locales/it/hue-motion.html +64 -0
- package/huemagic/locales/it/hue-motion.json +36 -0
- package/huemagic/locales/it/hue-rules.html +69 -0
- package/huemagic/locales/it/hue-rules.json +30 -0
- package/huemagic/locales/it/hue-scene.html +43 -0
- package/huemagic/locales/it/hue-scene.json +32 -0
- package/huemagic/locales/it/hue-speaker.html +80 -0
- package/huemagic/locales/it/hue-speaker.json +38 -0
- package/huemagic/locales/it/hue-syncbox-config.html +19 -0
- package/huemagic/locales/it/hue-syncbox-config.json +25 -0
- package/huemagic/locales/it/hue-syncbox.html +86 -0
- package/huemagic/locales/it/hue-syncbox.json +30 -0
- package/huemagic/locales/it/hue-temperature.html +69 -0
- package/huemagic/locales/it/hue-temperature.json +33 -0
- package/huemagic/locales/nl/hue-automation.html +59 -0
- package/huemagic/locales/nl/hue-automation.json +33 -0
- package/huemagic/locales/nl/hue-bridge-config.html +31 -0
- package/huemagic/locales/nl/hue-bridge-config.json +40 -0
- package/huemagic/locales/nl/hue-bridge.html +96 -0
- package/huemagic/locales/nl/hue-bridge.json +26 -0
- package/huemagic/locales/nl/hue-brightness.html +70 -0
- package/huemagic/locales/nl/hue-brightness.json +37 -0
- package/huemagic/locales/nl/hue-buttons.html +59 -0
- package/huemagic/locales/nl/hue-buttons.json +42 -0
- package/huemagic/locales/nl/hue-contact.html +67 -0
- package/huemagic/locales/nl/hue-contact.json +35 -0
- package/huemagic/locales/nl/hue-group.html +87 -0
- package/huemagic/locales/nl/hue-group.json +46 -0
- package/huemagic/locales/nl/hue-light.html +97 -0
- package/huemagic/locales/nl/hue-light.json +44 -0
- package/huemagic/locales/nl/hue-magic.html +68 -0
- package/huemagic/locales/nl/hue-magic.json +26 -0
- package/huemagic/locales/nl/hue-motion.html +64 -0
- package/huemagic/locales/nl/hue-motion.json +36 -0
- package/huemagic/locales/nl/hue-rules.html +69 -0
- package/huemagic/locales/nl/hue-rules.json +30 -0
- package/huemagic/locales/nl/hue-scene.html +43 -0
- package/huemagic/locales/nl/hue-scene.json +32 -0
- package/huemagic/locales/nl/hue-speaker.html +80 -0
- package/huemagic/locales/nl/hue-speaker.json +38 -0
- package/huemagic/locales/nl/hue-syncbox-config.html +19 -0
- package/huemagic/locales/nl/hue-syncbox-config.json +25 -0
- package/huemagic/locales/nl/hue-syncbox.html +86 -0
- package/huemagic/locales/nl/hue-syncbox.json +30 -0
- package/huemagic/locales/nl/hue-temperature.html +69 -0
- package/huemagic/locales/nl/hue-temperature.json +33 -0
- package/huemagic/locales/pl/hue-automation.html +59 -0
- package/huemagic/locales/pl/hue-automation.json +33 -0
- package/huemagic/locales/pl/hue-bridge-config.html +31 -0
- package/huemagic/locales/pl/hue-bridge-config.json +40 -0
- package/huemagic/locales/pl/hue-bridge.html +96 -0
- package/huemagic/locales/pl/hue-bridge.json +26 -0
- package/huemagic/locales/pl/hue-brightness.html +70 -0
- package/huemagic/locales/pl/hue-brightness.json +37 -0
- package/huemagic/locales/pl/hue-buttons.html +59 -0
- package/huemagic/locales/pl/hue-buttons.json +42 -0
- package/huemagic/locales/pl/hue-contact.html +67 -0
- package/huemagic/locales/pl/hue-contact.json +35 -0
- package/huemagic/locales/pl/hue-group.html +87 -0
- package/huemagic/locales/pl/hue-group.json +46 -0
- package/huemagic/locales/pl/hue-light.html +97 -0
- package/huemagic/locales/pl/hue-light.json +44 -0
- package/huemagic/locales/pl/hue-magic.html +68 -0
- package/huemagic/locales/pl/hue-magic.json +26 -0
- package/huemagic/locales/pl/hue-motion.html +64 -0
- package/huemagic/locales/pl/hue-motion.json +36 -0
- package/huemagic/locales/pl/hue-rules.html +69 -0
- package/huemagic/locales/pl/hue-rules.json +30 -0
- package/huemagic/locales/pl/hue-scene.html +43 -0
- package/huemagic/locales/pl/hue-scene.json +32 -0
- package/huemagic/locales/pl/hue-speaker.html +80 -0
- package/huemagic/locales/pl/hue-speaker.json +38 -0
- package/huemagic/locales/pl/hue-syncbox-config.html +19 -0
- package/huemagic/locales/pl/hue-syncbox-config.json +25 -0
- package/huemagic/locales/pl/hue-syncbox.html +86 -0
- package/huemagic/locales/pl/hue-syncbox.json +30 -0
- package/huemagic/locales/pl/hue-temperature.html +69 -0
- package/huemagic/locales/pl/hue-temperature.json +33 -0
- package/huemagic/locales/pt/hue-automation.html +59 -0
- package/huemagic/locales/pt/hue-automation.json +33 -0
- package/huemagic/locales/pt/hue-bridge-config.html +31 -0
- package/huemagic/locales/pt/hue-bridge-config.json +40 -0
- package/huemagic/locales/pt/hue-bridge.html +96 -0
- package/huemagic/locales/pt/hue-bridge.json +26 -0
- package/huemagic/locales/pt/hue-brightness.html +70 -0
- package/huemagic/locales/pt/hue-brightness.json +37 -0
- package/huemagic/locales/pt/hue-buttons.html +59 -0
- package/huemagic/locales/pt/hue-buttons.json +42 -0
- package/huemagic/locales/pt/hue-contact.html +67 -0
- package/huemagic/locales/pt/hue-contact.json +35 -0
- package/huemagic/locales/pt/hue-group.html +87 -0
- package/huemagic/locales/pt/hue-group.json +46 -0
- package/huemagic/locales/pt/hue-light.html +97 -0
- package/huemagic/locales/pt/hue-light.json +44 -0
- package/huemagic/locales/pt/hue-magic.html +68 -0
- package/huemagic/locales/pt/hue-magic.json +26 -0
- package/huemagic/locales/pt/hue-motion.html +64 -0
- package/huemagic/locales/pt/hue-motion.json +36 -0
- package/huemagic/locales/pt/hue-rules.html +69 -0
- package/huemagic/locales/pt/hue-rules.json +30 -0
- package/huemagic/locales/pt/hue-scene.html +43 -0
- package/huemagic/locales/pt/hue-scene.json +32 -0
- package/huemagic/locales/pt/hue-speaker.html +80 -0
- package/huemagic/locales/pt/hue-speaker.json +38 -0
- package/huemagic/locales/pt/hue-syncbox-config.html +19 -0
- package/huemagic/locales/pt/hue-syncbox-config.json +25 -0
- package/huemagic/locales/pt/hue-syncbox.html +86 -0
- package/huemagic/locales/pt/hue-syncbox.json +30 -0
- package/huemagic/locales/pt/hue-temperature.html +69 -0
- package/huemagic/locales/pt/hue-temperature.json +33 -0
- package/huemagic/locales/tr/hue-automation.html +59 -0
- package/huemagic/locales/tr/hue-automation.json +33 -0
- package/huemagic/locales/tr/hue-bridge-config.html +31 -0
- package/huemagic/locales/tr/hue-bridge-config.json +40 -0
- package/huemagic/locales/tr/hue-bridge.html +96 -0
- package/huemagic/locales/tr/hue-bridge.json +26 -0
- package/huemagic/locales/tr/hue-brightness.html +70 -0
- package/huemagic/locales/tr/hue-brightness.json +37 -0
- package/huemagic/locales/tr/hue-buttons.html +59 -0
- package/huemagic/locales/tr/hue-buttons.json +42 -0
- package/huemagic/locales/tr/hue-contact.html +67 -0
- package/huemagic/locales/tr/hue-contact.json +35 -0
- package/huemagic/locales/tr/hue-group.html +87 -0
- package/huemagic/locales/tr/hue-group.json +46 -0
- package/huemagic/locales/tr/hue-light.html +97 -0
- package/huemagic/locales/tr/hue-light.json +44 -0
- package/huemagic/locales/tr/hue-magic.html +68 -0
- package/huemagic/locales/tr/hue-magic.json +26 -0
- package/huemagic/locales/tr/hue-motion.html +64 -0
- package/huemagic/locales/tr/hue-motion.json +36 -0
- package/huemagic/locales/tr/hue-rules.html +69 -0
- package/huemagic/locales/tr/hue-rules.json +30 -0
- package/huemagic/locales/tr/hue-scene.html +43 -0
- package/huemagic/locales/tr/hue-scene.json +32 -0
- package/huemagic/locales/tr/hue-speaker.html +80 -0
- package/huemagic/locales/tr/hue-speaker.json +38 -0
- package/huemagic/locales/tr/hue-syncbox-config.html +19 -0
- package/huemagic/locales/tr/hue-syncbox-config.json +25 -0
- package/huemagic/locales/tr/hue-syncbox.html +86 -0
- package/huemagic/locales/tr/hue-syncbox.json +30 -0
- package/huemagic/locales/tr/hue-temperature.html +69 -0
- package/huemagic/locales/tr/hue-temperature.json +33 -0
- package/huemagic/utils/api.js +158 -54
- package/huemagic/utils/color.js +20 -2
- package/huemagic/utils/merge.js +3 -2
- package/huemagic/utils/messages.js +506 -120
- package/huemagic/utils/sse.js +51 -0
- package/huemagic/utils/syncbox.js +84 -0
- package/package.json +19 -11
- package/.github/FUNDING.yml +0 -2
- package/.github/ISSUE_TEMPLATE/bug_report.md +0 -30
- package/.github/ISSUE_TEMPLATE/feature_request.md +0 -20
- package/.github/workflows/npm.yml +0 -18
- package/huemagic/locales/en-US/hue-bridge-config.json +0 -29
- package/huemagic/locales/en-US/hue-buttons.json +0 -34
- package/huemagic/locales/en-US/hue-light.json +0 -38
- /package/huemagic/locales/{en-US → en}/hue-bridge-config.html +0 -0
- /package/huemagic/locales/{en-US → en}/hue-magic.json +0 -0
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
<script type="text/markdown" data-help-name="hue-magic">
|
|
2
|
+
Le nœud « Hue Magic » peut appliquer des animations complexes et personnalisées à des lumières et des groupes.
|
|
3
|
+
|
|
4
|
+
### Configuration
|
|
5
|
+
|
|
6
|
+
Donnez d'abord un nom au nœud afin de pouvoir identifier clairement votre animation dans l'interface Node-RED. Vous avez ensuite le choix entre les options « Boucle » et « Restaurer ». Sélectionnez l'option boucle si vous souhaitez que votre animation s'exécute indéfiniment sur une lumière ou un groupe jusqu'à ce que vous l'arrêtiez manuellement. Si vous souhaitez restaurer l'état précédent de la ressource cible (lumière / groupe) une fois l'animation terminée, cochez l'option « Restaurer ». Sinon, la dernière image de l'animation reste appliquée à la ressource concernée.
|
|
7
|
+
|
|
8
|
+
Vous pouvez ensuite choisir parmi les animations prêtes à l'emploi de HueMagic. Cliquez sur l'animation souhaitée pour la définir.
|
|
9
|
+
|
|
10
|
+
### Lancer / arrêter l'animation
|
|
11
|
+
|
|
12
|
+
Pour lancer ou arrêter une animation, transmettez au nœud un objet ayant le contenu suivant :
|
|
13
|
+
|
|
14
|
+
: payload (boolean): `true` lance l'animation, `false` l'arrête
|
|
15
|
+
|
|
16
|
+
### Animations personnalisées
|
|
17
|
+
|
|
18
|
+
Si vous transmettez votre propre animation au nœud, l'animation prédéfinie sélectionnée (le cas échéant) est temporairement remplacée par la vôtre. Les animations HueMagic personnalisées sont une séquence de commandes regroupées dans un tableau. Chaque élément du tableau constitue une étape, sachant qu'une étape peut elle-même comporter plusieurs images (effets de transition).
|
|
19
|
+
|
|
20
|
+
Créez un `array` contenant les différentes étapes de l'animation sous forme d'objet et transmettez-le au nœud HueMagic dans `msg.payload.steps`.
|
|
21
|
+
|
|
22
|
+
: delay (int): Nombre de millisecondes à attendre avant l'exécution de cette étape
|
|
23
|
+
: animation (object): L'objet contient la ou les actions à exécuter lors de cette étape. Paramètres identiques à ceux des nœuds « Hue Lumière » et « Hue Groupe »
|
|
24
|
+
|
|
25
|
+
### Exemple d'animation personnalisée
|
|
26
|
+
|
|
27
|
+
Cet exemple montre à quoi pourrait ressembler une animation simple. Lors de la première étape, le délai de 500 millisecondes est respecté. La couleur de la lumière passe ensuite lentement au rouge sur une seconde. Dès que la lumière est entièrement passée au rouge, la deuxième étape est exécutée, elle aussi avec un délai de 500 millisecondes. Pour finir, la couleur passe au bleu.
|
|
28
|
+
|
|
29
|
+
Si vous avez réglé l'animation en boucle, ce processus se répète indéfiniment jusqu'à ce que vous arrêtiez l'animation manuellement ou redéployiez le nœud.
|
|
30
|
+
|
|
31
|
+
Transmettez l'objet suivant dans `msg.payload` pour lancer l'animation d'exemple.
|
|
32
|
+
|
|
33
|
+
{
|
|
34
|
+
"animate": true,
|
|
35
|
+
"steps": [
|
|
36
|
+
{
|
|
37
|
+
"delay": 500,
|
|
38
|
+
"animation": {
|
|
39
|
+
"hex": "#FF0000",
|
|
40
|
+
"transitionTime": 1
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"delay": 500,
|
|
45
|
+
"animation": {
|
|
46
|
+
"hex": "#0000FF",
|
|
47
|
+
"transitionTime": 1
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
]
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
### Commandes spéciales
|
|
54
|
+
|
|
55
|
+
Il est parfois judicieux de jouer une animation de manière désordonnée, p. ex. pour imiter le feu de façon plus réaliste. Pour jouer les différentes étapes de manière aléatoire, vous pouvez transmettre la commande suivante dans `msg.payload.specials` :
|
|
56
|
+
|
|
57
|
+
: randomOrder (boolean | any): `true` active la lecture aléatoire des différentes étapes de l'animation
|
|
58
|
+
|
|
59
|
+
### Conseils et remarques
|
|
60
|
+
|
|
61
|
+
Ce nœud n'émet aucun message de statut. Reliez la sortie du nœud à un groupe plutôt qu'à des lumières individuelles si vous souhaitez animer plusieurs lumières en même temps avec la même animation. Les aperçus des animations prêtes à l'emploi sont des simulations et peuvent différer légèrement (rythme, couleurs) de l'animation réelle sur une ressource.
|
|
62
|
+
|
|
63
|
+
### Exemples de HueMagic
|
|
64
|
+
|
|
65
|
+
HueMagic met à disposition quelques exemples de configuration pour ce nœud. Pour importer un exemple complet dans votre interface Node-RED, cliquez sur l'icône de menu de Node-RED, sélectionnez « Importer » puis naviguez vers « Exemples » dans la barre latérale de la fenêtre. Sélectionnez ensuite le dossier HueMagic et le nœud souhaité pour importer un flux d'exemple.
|
|
66
|
+
|
|
67
|
+

|
|
68
|
+
</script>
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hue-magic": {
|
|
3
|
+
"config": {
|
|
4
|
+
"name": "Nom",
|
|
5
|
+
"input-name": "Nom de l'animation",
|
|
6
|
+
"loop": "Boucle",
|
|
7
|
+
"loop-endless": "Répéter indéfiniment",
|
|
8
|
+
"restore": "Restaurer",
|
|
9
|
+
"restore-state": "Restaurer l'état précédent après l'arrêt",
|
|
10
|
+
"animation": "Animation",
|
|
11
|
+
"unknown-error": "Une erreur est survenue. Veuillez réessayer.",
|
|
12
|
+
"seconds": "s",
|
|
13
|
+
"minutes": "min"
|
|
14
|
+
},
|
|
15
|
+
"node": {
|
|
16
|
+
"title": "Hue Magic",
|
|
17
|
+
"no-animation": "aucune animation indiquée",
|
|
18
|
+
"animating": "animation en cours…",
|
|
19
|
+
"stopped": "arrêtée",
|
|
20
|
+
"input": "lancer / arrêter l'animation",
|
|
21
|
+
"output": "lumière ou groupe",
|
|
22
|
+
"command": "exécution de la commande…",
|
|
23
|
+
"playmsg": "Animation lancée…"
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
<script type="text/markdown" data-help-name="hue-motion">
|
|
2
|
+
Le nœud « Hue Mouvement » peut enregistrer et signaler les mouvements détectés par un capteur adapté relié au bridge.
|
|
3
|
+
|
|
4
|
+
### Configuration
|
|
5
|
+
|
|
6
|
+
Sélectionnez le Hue Bridge préconfiguré et cliquez sur le bouton de recherche pour trouver tous les capteurs disponibles. Si vous connaissez déjà l'ID du capteur, vous pouvez également le saisir ici manuellement. Vous pouvez attribuer en interne un nouveau nom au capteur ou conserver son nom prédéfini. En option, vous pouvez désactiver tous les messages de statut automatiques de ce nœud à l'aide du réglage « Ignorer les messages du nœud ». Le nœud n'émettra alors plus de mises à jour d'appareil. Vous pouvez également choisir que le message d'initialisation du nœud ne soit pas supprimé au démarrage de Node-RED. Si vous activez ce réglage, vous recevrez un message de statut du capteur sélectionné après chaque déploiement. Si vous préférez que le nœud reste silencieux jusqu'à ce que vous lui envoyiez quelque chose, activez « Signaler uniquement après une commande ». Il ignorera alors les changements provenant de l'application ou d'un interrupteur et ne répondra qu'à vos propres commandes.
|
|
7
|
+
|
|
8
|
+
Si vous ne sélectionnez aucun capteur et utilisez la configuration du nœud de cette manière, le nœud fonctionne dans ce que l'on appelle le « mode universel ». Dans ce mode, le nœud reçoit et émet tous les messages de statut du même type. Vous pouvez également appliquer des réglages en mode universel à un capteur précis en transmettant l'ID du capteur correspondant sous forme de chaîne dans `msg.topic` avec vos réglages.
|
|
9
|
+
|
|
10
|
+
### Interroger le statut
|
|
11
|
+
|
|
12
|
+
Émet le statut actuel du capteur dès qu'un objet `msg.payload` ayant le contenu suivant est transmis au nœud. Vous pouvez également appuyer sur le bouton dans l'interface Node-RED sans avoir à transmettre au préalable un message au nœud.
|
|
13
|
+
|
|
14
|
+
: status (boolean): Renvoie le statut actuel du capteur
|
|
15
|
+
|
|
16
|
+
### Activer / désactiver le capteur
|
|
17
|
+
|
|
18
|
+
Si nécessaire, le capteur peut être activé et désactivé à distance. Une fois désactivé, il n'enregistre plus aucun mouvement et n'en émet donc plus. Pour cela, transmettez un objet ayant le contenu suivant :
|
|
19
|
+
|
|
20
|
+
: payload (boolean): `true` active le capteur, `false` le désactive
|
|
21
|
+
|
|
22
|
+
### Messages de statut du nœud
|
|
23
|
+
|
|
24
|
+
Dès que le capteur enregistre un mouvement, le nœud renvoie le message de statut suivant :
|
|
25
|
+
|
|
26
|
+
#### Objet de statut dans `msg.payload`
|
|
27
|
+
|
|
28
|
+
: active (boolean): Indique si le capteur est activé ou désactivé
|
|
29
|
+
: reachable (boolean | string): `true` si le capteur est connecté au bridge, `unknown` si le statut de connexion diverge
|
|
30
|
+
: connectionStatus (string): Le statut de connexion actuel avec le bridge sous forme de chaîne. Peut contenir `connected`, `disconnected`, `connectivity_issue` ou `unidirectional_incoming` comme valeur
|
|
31
|
+
: motion (boolean): Indique si un mouvement a été enregistré
|
|
32
|
+
: updated (string): Heure de la dernière mise à jour de la ressource par HueMagic (ISO 8601)
|
|
33
|
+
|
|
34
|
+
#### Informations sur le capteur dans `msg.info`
|
|
35
|
+
|
|
36
|
+
: id (string): Indique le nouvel ID du capteur
|
|
37
|
+
: idV1 (string | boolean): Indique l'ancien ID du capteur
|
|
38
|
+
: uniqueId (string): L'ID unique du capteur
|
|
39
|
+
: deviceId (string): L'ID unique de l'appareil
|
|
40
|
+
: name (string): Le nom actuellement attribué au capteur
|
|
41
|
+
: type (string): Le type du capteur (toujours `motion`)
|
|
42
|
+
: softwareVersion (string): Le micrologiciel actuel du capteur
|
|
43
|
+
: battery (float): Le niveau de batterie actuel du capteur
|
|
44
|
+
: batteryState (string): Le statut actuel du niveau de batterie. Peut contenir `normal`, `low` ou `critical` comme valeur
|
|
45
|
+
: model (object): Contient les informations de modèle du capteur dans `id`, `manufacturer`, `name`, `type` et `certified`
|
|
46
|
+
|
|
47
|
+
#### Changements d'état dans `msg.updated`
|
|
48
|
+
|
|
49
|
+
Énumère sous forme d'objet les paramètres qui ont changé par rapport au dernier état du capteur. Si aucun changement n'a été enregistré, cet objet est vide.
|
|
50
|
+
|
|
51
|
+
#### Dernier état du capteur dans `msg.lastState`
|
|
52
|
+
|
|
53
|
+
Contient l'objet de statut complet (voir les valeurs de sortie ci-dessus) du dernier état avant le dernier changement enregistré. Si HueMagic n'a pas encore enregistré le dernier état, `false` est émis.
|
|
54
|
+
|
|
55
|
+
#### Dernière commande dans `msg.command` (facultatif)
|
|
56
|
+
|
|
57
|
+
Si le statut du nœud a changé suite à une commande particulière, la commande complète qui a été exécutée est également émise. Sinon, cet objet n'est pas émis par le nœud.
|
|
58
|
+
|
|
59
|
+
### Exemples de HueMagic
|
|
60
|
+
|
|
61
|
+
HueMagic met à disposition quelques exemples de configuration pour ce nœud. Pour importer un exemple complet dans votre interface Node-RED, cliquez sur l'icône de menu de Node-RED, sélectionnez « Importer » puis naviguez vers « Exemples » dans la barre latérale de la fenêtre. Sélectionnez ensuite le dossier HueMagic et le nœud souhaité pour importer un flux d'exemple.
|
|
62
|
+
|
|
63
|
+

|
|
64
|
+
</script>
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hue-motion": {
|
|
3
|
+
"config": {
|
|
4
|
+
"name": "Nom",
|
|
5
|
+
"skipevents-node": "Ignorer les messages du nœud",
|
|
6
|
+
"sendinitevents-node": "Ne pas supprimer l'événement d'initialisation",
|
|
7
|
+
"onlycommands-node": "Signaler uniquement après une commande",
|
|
8
|
+
"unknown-error": "Une erreur est survenue. Veuillez réessayer.",
|
|
9
|
+
"bridge": "Bridge",
|
|
10
|
+
"universalevents": "Événements universels",
|
|
11
|
+
"universalevents-node": "Reçoit tous les messages des autres nœuds du même type (uniquement en mode universel)",
|
|
12
|
+
"input-name": "Nom du capteur",
|
|
13
|
+
"searching": "Recherche de détecteurs de mouvement…",
|
|
14
|
+
"none-found": "Aucun détecteur de mouvement trouvé !",
|
|
15
|
+
"sensor": "Capteur"
|
|
16
|
+
},
|
|
17
|
+
"node": {
|
|
18
|
+
"not-configured": "non configuré",
|
|
19
|
+
"not-reachable": "non joignable",
|
|
20
|
+
"activated": "activé",
|
|
21
|
+
"deactivated": "désactivé",
|
|
22
|
+
"universal": "mode universel",
|
|
23
|
+
"command": "exécution de la commande…",
|
|
24
|
+
"statusmsg": "Statut interrogé avec succès…",
|
|
25
|
+
"title": "Hue Mouvement",
|
|
26
|
+
"motion": "mouvement détecté",
|
|
27
|
+
"no-motion": "aucun mouvement",
|
|
28
|
+
"input": "activer / désactiver / statut",
|
|
29
|
+
"output": "mouvement détecté",
|
|
30
|
+
"error-no-id": "Veuillez indiquer un ID de capteur valide.",
|
|
31
|
+
"error-not-available": "Le capteur n'est pas encore disponible. Veuillez attendre que HueMagic ait établi la connexion avec le bridge ou vérifiez si l'ID de ressource indiqué dans la configuration est valide.",
|
|
32
|
+
"error-no-sensitivity": "Cette source de mouvement n'a pas de sensibilité réglable.",
|
|
33
|
+
"error-invalid-sensitivity": "Sensibilité non valide. Seules les valeurs de 0 à __max__ sont autorisées."
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
<script type="text/markdown" data-help-name="hue-rules">
|
|
2
|
+
Le nœud « Hue Règle » peut activer ou désactiver les règles enregistrées dans le bridge et consulter leurs réglages.
|
|
3
|
+
|
|
4
|
+
### Configuration
|
|
5
|
+
|
|
6
|
+
Sélectionnez le Hue Bridge préconfiguré et cliquez sur le bouton de recherche pour trouver toutes les règles disponibles. Si vous connaissez déjà l'ID de la règle, vous pouvez également le saisir ici manuellement. Vous pouvez aussi attribuer un nouveau nom ou conserver le nom prédéfini de la règle. En option, vous pouvez désactiver tous les messages de statut automatiques de ce nœud à l'aide du réglage « Ignorer les messages du nœud ». Le nœud n'émettra alors plus de mises à jour. Vous pouvez également choisir que le message d'initialisation du nœud ne soit pas supprimé au démarrage de Node-RED. Si vous préférez que le nœud reste silencieux jusqu'à ce que vous lui envoyiez quelque chose, activez « Signaler uniquement après une commande ». Il ignorera alors les changements provenant de l'application ou d'un interrupteur et ne répondra qu'à vos propres commandes.
|
|
7
|
+
|
|
8
|
+
Si vous ne sélectionnez aucune règle et utilisez la configuration du nœud de cette manière, le nœud fonctionne dans ce que l'on appelle le « mode universel ». Dans ce mode, le nœud reçoit et émet tous les messages de statut du même type. Vous pouvez également appliquer des réglages en mode universel à une règle précise en transmettant l'ID de la règle correspondante sous forme de chaîne dans `msg.topic` avec vos réglages.
|
|
9
|
+
|
|
10
|
+
### Interroger les propriétés et réglages
|
|
11
|
+
|
|
12
|
+
Émet les propriétés actuelles de la règle dès qu'un objet `msg.payload` ayant le contenu suivant est transmis au nœud. Vous pouvez également appuyer sur le bouton dans l'interface Node-RED sans avoir à transmettre au préalable un message au nœud.
|
|
13
|
+
|
|
14
|
+
: status (boolean): Renvoie le statut actuel de la règle
|
|
15
|
+
|
|
16
|
+
### Activer / désactiver la règle
|
|
17
|
+
|
|
18
|
+
La règle peut être activée et désactivée si nécessaire. Une fois désactivée, elle ne s'exécutera plus dans le bridge jusqu'à ce que vous la réactiviez. Pour cela, transmettez un objet ayant le contenu suivant :
|
|
19
|
+
|
|
20
|
+
: payload (boolean): `true` active la règle, `false` la désactive
|
|
21
|
+
|
|
22
|
+
### Messages de statut du nœud
|
|
23
|
+
|
|
24
|
+
Dès que le statut (activée / désactivée) d'une règle change, le nœud renvoie le message de statut suivant :
|
|
25
|
+
|
|
26
|
+
#### Objet de statut dans `msg.payload`
|
|
27
|
+
|
|
28
|
+
: enabled (boolean): Indique si la règle est activée ou désactivée
|
|
29
|
+
: triggered (string): Heure de la dernière exécution (ISO 8601)
|
|
30
|
+
|
|
31
|
+
#### Informations sur la règle dans `msg.info`
|
|
32
|
+
|
|
33
|
+
: id (string): L'ID unique de la règle
|
|
34
|
+
: created (string): Date de création de la règle (ISO 8601)
|
|
35
|
+
: name (string): Nom de la règle sur le bridge
|
|
36
|
+
: timesTriggered (int): Nombre de fois où la règle a été exécutée sur le bridge
|
|
37
|
+
: owner (string): ID du propriétaire de cette règle
|
|
38
|
+
: status (string): Statut de la règle sous forme de chaîne
|
|
39
|
+
|
|
40
|
+
#### Conditions de la règle dans `msg.conditions` (tableau)
|
|
41
|
+
|
|
42
|
+
: address (string): Chemin vers un attribut d'un capteur
|
|
43
|
+
: operator (string): Opérateur
|
|
44
|
+
: value (string): La valeur à vérifier
|
|
45
|
+
|
|
46
|
+
#### Actions de la règle dans `msg.actions` (tableau)
|
|
47
|
+
|
|
48
|
+
: address (string): L'adresse de destination de la ressource
|
|
49
|
+
: method (string): La méthode de la requête
|
|
50
|
+
: body (object): L'action à exécuter
|
|
51
|
+
|
|
52
|
+
#### Changements d'état dans `msg.updated`
|
|
53
|
+
|
|
54
|
+
Énumère sous forme d'objet les paramètres qui ont changé par rapport au dernier état de la règle. Si aucun changement n'a été enregistré, cet objet est vide.
|
|
55
|
+
|
|
56
|
+
#### Dernier état de la règle dans `msg.lastState`
|
|
57
|
+
|
|
58
|
+
Contient l'objet complet (voir les valeurs de sortie ci-dessus) du dernier état avant le dernier changement enregistré de la règle. Si HueMagic n'a pas encore enregistré le dernier état, `false` est émis.
|
|
59
|
+
|
|
60
|
+
#### Dernière commande dans `msg.command` (facultatif)
|
|
61
|
+
|
|
62
|
+
Si le statut du nœud a changé suite à une commande particulière, la commande complète qui a été exécutée est également émise. Sinon, cet objet n'est pas émis par le nœud.
|
|
63
|
+
|
|
64
|
+
### Exemples de HueMagic
|
|
65
|
+
|
|
66
|
+
HueMagic met à disposition quelques exemples de configuration pour ce nœud. Pour importer un exemple complet dans votre interface Node-RED, cliquez sur l'icône de menu de Node-RED, sélectionnez « Importer » puis naviguez vers « Exemples » dans la barre latérale de la fenêtre. Sélectionnez ensuite le dossier HueMagic et le nœud souhaité pour importer un flux d'exemple.
|
|
67
|
+
|
|
68
|
+

|
|
69
|
+
</script>
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hue-rules": {
|
|
3
|
+
"config": {
|
|
4
|
+
"name": "Nom",
|
|
5
|
+
"skipevents-node": "Ignorer les messages du nœud",
|
|
6
|
+
"sendinitevents-node": "Ne pas supprimer l'événement d'initialisation",
|
|
7
|
+
"onlycommands-node": "Signaler uniquement après une commande",
|
|
8
|
+
"unknown-error": "Une erreur est survenue. Veuillez réessayer.",
|
|
9
|
+
"bridge": "Bridge",
|
|
10
|
+
"input-name": "Nom de la règle",
|
|
11
|
+
"searching": "Recherche de règles…",
|
|
12
|
+
"none-found": "Aucune règle trouvée !",
|
|
13
|
+
"rule": "Règle"
|
|
14
|
+
},
|
|
15
|
+
"node": {
|
|
16
|
+
"init": "initialisation…",
|
|
17
|
+
"universal": "mode universel",
|
|
18
|
+
"command": "exécution de la commande…",
|
|
19
|
+
"statusmsg": "Statut interrogé avec succès…",
|
|
20
|
+
"title": "Hue Règle",
|
|
21
|
+
"no-rule": "aucune règle sélectionnée",
|
|
22
|
+
"enabled": "activée",
|
|
23
|
+
"disabled": "désactivée",
|
|
24
|
+
"output": "règle (déclenchée)",
|
|
25
|
+
"input": "activer / désactiver",
|
|
26
|
+
"error-no-id": "Veuillez indiquer un ID de règle valide.",
|
|
27
|
+
"error-not-available": "La règle n'est pas encore disponible. Veuillez attendre que HueMagic ait établi la connexion avec le bridge ou vérifiez si l'ID de ressource indiqué dans la configuration est valide."
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
<script type="text/markdown" data-help-name="hue-scene">
|
|
2
|
+
Le nœud « Hue Scène » peut rappeler des scènes enregistrées dans le bridge et les appliquer à certains groupes.
|
|
3
|
+
|
|
4
|
+
### Configuration
|
|
5
|
+
|
|
6
|
+
Sélectionnez le Hue Bridge préconfiguré et cliquez sur le bouton de recherche pour trouver toutes les scènes disponibles. Les scènes sont d'abord triées par pièce ou zone, puis par nom, de sorte que les scènes d'une même pièce restent toujours regroupées dans la liste. Si vous connaissez déjà l'ID de la scène, vous pouvez également le saisir ici manuellement. Vous pouvez aussi attribuer en interne un nom à la scène ou conserver son nom prédéfini.
|
|
7
|
+
|
|
8
|
+
### Activer une scène
|
|
9
|
+
|
|
10
|
+
Vous pouvez activer une scène prédéfinie en transmettant un objet ayant le contenu suivant :
|
|
11
|
+
|
|
12
|
+
: payload (boolean): Active une scène préconfigurée
|
|
13
|
+
: transitionTime (float): Temps de transition de la scène en secondes. Si `0` est transmis, la scène est appliquée immédiatement. Si vous transmettez `3`, les lumières fondent vers la scène en 3 secondes. Le bridge accepte jusqu'à 6000 secondes
|
|
14
|
+
: brightness (float): Luminosité de l'ensemble de la scène en pourcentage (`0` – `100`), ce qui vous permet de rappeler une même scène plus claire ou plus tamisée selon l'heure de la journée
|
|
15
|
+
|
|
16
|
+
> [!NOTE]
|
|
17
|
+
> Ces deux réglages ne sont disponibles que pour les scènes normales. Une scène intelligente suit les horaires que vous avez définis pour elle dans l'application Philips Hue.
|
|
18
|
+
|
|
19
|
+
### Activer une scène en mode universel
|
|
20
|
+
|
|
21
|
+
Si vous utilisez ce nœud dans ce que l'on appelle le « mode universel » et que vous n'avez défini aucune scène dans la configuration du nœud, vous pouvez également transmettre au nœud la scène souhaitée sous forme de commande. Pour cela, transmettez un objet `msg.payload` ayant le contenu suivant :
|
|
22
|
+
|
|
23
|
+
: scene (string): ID de la scène à activer sur le bridge
|
|
24
|
+
|
|
25
|
+
### Activer une scène sur certains groupes
|
|
26
|
+
|
|
27
|
+
Reliez la sortie de ce nœud à un ou plusieurs groupes pour appliquer une scène à des groupes précis. Vous pouvez également le faire « dynamiquement » en transmettant au nœud un objet `msg.payload` ayant le contenu suivant :
|
|
28
|
+
|
|
29
|
+
: group (string | array [string,…]): ID du groupe ou tableau contenant les ID de plusieurs groupes afin de limiter la scène à ces groupes
|
|
30
|
+
|
|
31
|
+
### Informations complémentaires sur le nœud
|
|
32
|
+
|
|
33
|
+
Ce nœud n'émet aucun message de statut.
|
|
34
|
+
|
|
35
|
+
> [!IMPORTANT]
|
|
36
|
+
> Vous ne pouvez appliquer des scènes à des groupes que si ceux-ci sont déjà liés à la scène correspondante sur le bridge. Sinon, rien ne sera appliqué.
|
|
37
|
+
|
|
38
|
+
### Exemples de HueMagic
|
|
39
|
+
|
|
40
|
+
HueMagic met à disposition quelques exemples de configuration pour ce nœud. Pour importer un exemple complet dans votre interface Node-RED, cliquez sur l'icône de menu de Node-RED, sélectionnez « Importer » puis naviguez vers « Exemples » dans la barre latérale de la fenêtre. Sélectionnez ensuite le dossier HueMagic et le nœud souhaité pour importer un flux d'exemple.
|
|
41
|
+
|
|
42
|
+

|
|
43
|
+
</script>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hue-scene": {
|
|
3
|
+
"config": {
|
|
4
|
+
"name": "Nom",
|
|
5
|
+
"input-name": "Nom de la scène",
|
|
6
|
+
"skipevents-node": "Ignorer les messages du nœud",
|
|
7
|
+
"sendinitevents-node": "Ne pas supprimer l'événement d'initialisation",
|
|
8
|
+
"searching": "Recherche de scènes…",
|
|
9
|
+
"none-found": "Aucune scène trouvée !",
|
|
10
|
+
"unknown-error": "Une erreur est survenue. Veuillez réessayer.",
|
|
11
|
+
"scene": "Scène",
|
|
12
|
+
"group": "Groupe",
|
|
13
|
+
"group-none-found": "Aucun groupe trouvé !",
|
|
14
|
+
"group-searching": "Recherche de groupes…",
|
|
15
|
+
"groups-all": "Tous les groupes / lumières",
|
|
16
|
+
"bridge": "Bridge"
|
|
17
|
+
},
|
|
18
|
+
"node": {
|
|
19
|
+
"title": "Hue Scène",
|
|
20
|
+
"not-configured": "non configuré",
|
|
21
|
+
"recalled": "scène activée",
|
|
22
|
+
"recalled-on-group": "scène activée sur le groupe",
|
|
23
|
+
"no-id": "Aucun ID de scène.",
|
|
24
|
+
"input": "activer la scène",
|
|
25
|
+
"output": "groupe(s) cible(s)",
|
|
26
|
+
"command": "exécution de la commande…",
|
|
27
|
+
"statusmsg": "Activation de la scène…",
|
|
28
|
+
"error-not-available": "La scène n'est pas encore disponible. Veuillez attendre que HueMagic ait établi la connexion avec le bridge ou vérifiez si l'ID de ressource indiqué dans la configuration est valide.",
|
|
29
|
+
"error-invalid-brightness": "Réglage de luminosité non valide. Seules les valeurs de 0 à 100 pour cent sont autorisées."
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
<script type="text/markdown" data-help-name="hue-speaker">
|
|
2
|
+
Le nœud « Hue Haut-parleur » peut jouer les sons d'un carillon Hue Secure et l'utiliser comme sirène d'intérieur.
|
|
3
|
+
|
|
4
|
+
### Configuration
|
|
5
|
+
|
|
6
|
+
Sélectionnez le Hue Bridge préconfiguré et cliquez sur le bouton de recherche pour trouver tous les haut-parleurs disponibles. Si vous connaissez déjà l'ID du haut-parleur, vous pouvez également le saisir ici manuellement. Vous pouvez attribuer en interne un nouveau nom au haut-parleur ou conserver son nom prédéfini. En option, vous pouvez désactiver tous les messages de statut automatiques de ce nœud à l'aide du réglage « Ignorer les messages du nœud ». Le nœud n'émettra alors plus de mises à jour d'appareil. Vous pouvez également choisir que le message d'initialisation du nœud ne soit pas supprimé au démarrage de Node-RED. Si vous activez ce réglage, vous recevrez un message de statut du haut-parleur sélectionné après chaque déploiement. Si vous préférez que le nœud reste silencieux jusqu'à ce que vous lui envoyiez quelque chose, activez « Signaler uniquement après une commande ». Il ignorera alors les changements provenant de l'application ou d'un interrupteur et ne répondra qu'à vos propres commandes.
|
|
7
|
+
|
|
8
|
+
Si vous ne sélectionnez aucun haut-parleur et utilisez la configuration du nœud de cette manière, le nœud fonctionne dans ce que l'on appelle le « mode universel ». Dans ce mode, le nœud reçoit et émet tous les messages de statut du même type. Vous pouvez également appliquer des réglages en mode universel à un haut-parleur précis en transmettant l'ID du haut-parleur correspondant sous forme de chaîne dans `msg.topic` avec vos réglages.
|
|
9
|
+
|
|
10
|
+
### Interroger le statut
|
|
11
|
+
|
|
12
|
+
Émet le statut actuel du haut-parleur dès qu'un objet `msg.payload` ayant le contenu suivant est transmis au nœud. Vous pouvez également appuyer sur le bouton dans l'interface Node-RED sans avoir à transmettre au préalable un message au nœud.
|
|
13
|
+
|
|
14
|
+
: status (boolean): Renvoie le statut actuel du haut-parleur
|
|
15
|
+
|
|
16
|
+
### Jouer un son
|
|
17
|
+
|
|
18
|
+
Un haut-parleur connaît trois canaux distincts. `chime` est le son de la sonnette, `alarm` la sirène et `alert` une courte notification. Les sons réellement connus d'un appareil sont listés sous `msg.info.sounds`. Transmettez les paramètres suivants dans un objet `msg.payload` :
|
|
19
|
+
|
|
20
|
+
: chime (string | object | boolean): Nom du son de la sonnette ; `false` l'arrête à nouveau
|
|
21
|
+
: alarm (string | object | boolean): Nom du son de la sirène ; `false` l'arrête à nouveau
|
|
22
|
+
: alert (string | object | boolean): Nom du son de notification ; `false` l'arrête à nouveau
|
|
23
|
+
: mute (boolean): `true` met le haut-parleur en sourdine, `false` réactive le son
|
|
24
|
+
|
|
25
|
+
Au lieu d'un simple nom de son, vous pouvez également transmettre un objet pour contrôler le volume et la durée :
|
|
26
|
+
|
|
27
|
+
: sound (string): Nom du son, p. ex. `ding_dong_classic` ou `siren`
|
|
28
|
+
: volume (int): Volume en pourcentage (0-100)
|
|
29
|
+
: duration (float): Durée de lecture en secondes
|
|
30
|
+
|
|
31
|
+
### Messages de statut du nœud
|
|
32
|
+
|
|
33
|
+
Dès que le haut-parleur commence ou cesse de jouer, le nœud renvoie le message de statut suivant.
|
|
34
|
+
|
|
35
|
+
> [!NOTE]
|
|
36
|
+
> Le bridge signale le dernier son joué et ne le réinitialise que bien après la fin de la lecture ; ces valeurs sont donc légèrement en retard sur l'audio.
|
|
37
|
+
|
|
38
|
+
#### Objet de statut dans `msg.payload`
|
|
39
|
+
|
|
40
|
+
: reachable (boolean | string): `true` si le haut-parleur est connecté au bridge, `unknown` si le statut de connexion diverge
|
|
41
|
+
: connectionStatus (string): Le statut de connexion actuel avec le bridge sous forme de chaîne. Peut contenir `connected`, `disconnected`, `connectivity_issue` ou `unidirectional_incoming` comme valeur
|
|
42
|
+
: playing (boolean): `true` tant que le haut-parleur joue un son quelconque
|
|
43
|
+
: chime (string | boolean): Nom du son de sonnette en cours de lecture ou `false`
|
|
44
|
+
: alarm (string | boolean): Nom du son de sirène en cours de lecture ou `false`
|
|
45
|
+
: alert (string | boolean): Nom du son de notification en cours de lecture ou `false`
|
|
46
|
+
: muted (boolean): Indique si le haut-parleur est en sourdine
|
|
47
|
+
: updated (string): Heure de la dernière mise à jour de la ressource par HueMagic (ISO 8601)
|
|
48
|
+
|
|
49
|
+
#### Informations sur le haut-parleur dans `msg.info`
|
|
50
|
+
|
|
51
|
+
: id (string): Indique le nouvel ID du haut-parleur
|
|
52
|
+
: idV1 (string | boolean): Indique l'ancien ID du haut-parleur
|
|
53
|
+
: uniqueId (string): L'ID unique du haut-parleur
|
|
54
|
+
: deviceId (string): L'ID unique de l'appareil
|
|
55
|
+
: name (string): Le nom actuellement attribué au haut-parleur
|
|
56
|
+
: type (string): Le type de l'appareil (toujours `speaker`)
|
|
57
|
+
: softwareVersion (string): Le micrologiciel actuel du haut-parleur
|
|
58
|
+
: battery (float | boolean): Le niveau de batterie actuel du haut-parleur, `false` s'il n'y a pas de batterie
|
|
59
|
+
: batteryState (string | boolean): Le statut actuel du niveau de batterie. Peut contenir `normal`, `low` ou `critical` comme valeur, `false` s'il n'y a pas de batterie
|
|
60
|
+
: sounds (object): Contient les sons connus de cet appareil dans `chime`, `alarm` et `alert`
|
|
61
|
+
: model (object): Contient les informations de modèle du haut-parleur dans `id`, `manufacturer`, `name`, `type` et `certified`
|
|
62
|
+
|
|
63
|
+
#### Changements d'état dans `msg.updated`
|
|
64
|
+
|
|
65
|
+
Énumère sous forme d'objet les paramètres qui ont changé par rapport au dernier état du haut-parleur. Si aucun changement n'a été enregistré, cet objet est vide.
|
|
66
|
+
|
|
67
|
+
#### Dernier état du haut-parleur dans `msg.lastState`
|
|
68
|
+
|
|
69
|
+
Contient l'objet de statut complet (voir les valeurs de sortie ci-dessus) du dernier état avant le dernier changement enregistré. Si HueMagic n'a pas encore enregistré le dernier état, `false` est émis.
|
|
70
|
+
|
|
71
|
+
#### Dernière commande dans `msg.command` (facultatif)
|
|
72
|
+
|
|
73
|
+
Si le statut du nœud a changé suite à une commande particulière, la commande complète qui a été exécutée est également émise. Sinon, cet objet n'est pas émis par le nœud.
|
|
74
|
+
|
|
75
|
+
### Exemples de HueMagic
|
|
76
|
+
|
|
77
|
+
HueMagic met à disposition quelques exemples de configuration pour ce nœud. Pour importer un exemple complet dans votre interface Node-RED, cliquez sur l'icône de menu de Node-RED, sélectionnez « Importer » puis naviguez vers « Exemples » dans la barre latérale de la fenêtre. Sélectionnez ensuite le dossier HueMagic et le nœud souhaité pour importer un flux d'exemple.
|
|
78
|
+
|
|
79
|
+

|
|
80
|
+
</script>
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hue-speaker": {
|
|
3
|
+
"config": {
|
|
4
|
+
"name": "Nom",
|
|
5
|
+
"skipevents-node": "Ignorer les messages du nœud",
|
|
6
|
+
"sendinitevents-node": "Ne pas supprimer l'événement d'initialisation",
|
|
7
|
+
"onlycommands-node": "Signaler uniquement après une commande",
|
|
8
|
+
"unknown-error": "Une erreur est survenue. Veuillez réessayer.",
|
|
9
|
+
"bridge": "Bridge",
|
|
10
|
+
"universalevents": "Événements universels",
|
|
11
|
+
"universalevents-node": "Reçoit tous les messages des autres nœuds du même type (uniquement en mode universel)",
|
|
12
|
+
"input-name": "Nom du haut-parleur",
|
|
13
|
+
"searching": "Recherche de haut-parleurs…",
|
|
14
|
+
"none-found": "Aucun haut-parleur trouvé !",
|
|
15
|
+
"speaker": "Haut-parleur"
|
|
16
|
+
},
|
|
17
|
+
"node": {
|
|
18
|
+
"not-configured": "non configuré",
|
|
19
|
+
"not-reachable": "non joignable",
|
|
20
|
+
"universal": "mode universel",
|
|
21
|
+
"command": "exécution de la commande…",
|
|
22
|
+
"statusmsg": "Statut interrogé avec succès…",
|
|
23
|
+
"title": "Hue Haut-parleur",
|
|
24
|
+
"silent": "silencieux",
|
|
25
|
+
"muted": "muet",
|
|
26
|
+
"playing-alarm": "alarme (__sound__)",
|
|
27
|
+
"playing-chime": "carillon (__sound__)",
|
|
28
|
+
"playing-alert": "alerte (__sound__)",
|
|
29
|
+
"input": "jouer un son / statut",
|
|
30
|
+
"output": "haut-parleur",
|
|
31
|
+
"error-no-id": "Veuillez indiquer un ID de haut-parleur valide.",
|
|
32
|
+
"error-not-available": "Le haut-parleur n'est pas encore disponible. Veuillez attendre que HueMagic ait établi la connexion avec le bridge ou vérifiez si l'ID de ressource indiqué dans la configuration est valide.",
|
|
33
|
+
"error-no-channel": "Ce haut-parleur n'a pas de son de type __channel__.",
|
|
34
|
+
"error-invalid-sound": "Son __channel__ non valide. Sons autorisés : __sounds__",
|
|
35
|
+
"error-invalid-volume": "Réglage de volume non valide. Seules les valeurs de 0 à 100 sont autorisées."
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<script type="text/markdown" data-help-name="hue-syncbox-config">
|
|
2
|
+
Se connecte à une Philips Hue Play HDMI Sync Box.
|
|
3
|
+
|
|
4
|
+
### Nom
|
|
5
|
+
|
|
6
|
+
Vous pouvez attribuer à la sync box un autre nom interne ou conserver le nom par défaut.
|
|
7
|
+
|
|
8
|
+
### IP de la Sync Box
|
|
9
|
+
|
|
10
|
+
L'adresse IP de votre sync box dans votre réseau local. Dès que vous l'avez saisie, HueMagic tente de lire le nom du boîtier et le renseigne pour vous.
|
|
11
|
+
|
|
12
|
+
### Jeton d'accès
|
|
13
|
+
|
|
14
|
+
La sync box ne fait pas partie de votre Hue Bridge et nécessite son propre jeton. Cliquez sur le bouton à côté du champ, puis maintenez enfoncé le bouton de la sync box jusqu'à ce que sa LED clignote en vert. HueMagic interroge le boîtier pendant une minute et enregistre le jeton dès qu'il répond.
|
|
15
|
+
|
|
16
|
+
### Actualisation
|
|
17
|
+
|
|
18
|
+
La sync box n'envoie pas son état d'elle-même : HueMagic l'interroge donc régulièrement. Ce réglage définit le nombre de secondes entre deux requêtes. La valeur par défaut de 10 secondes est un bon compromis entre réactivité du statut et trafic réseau — ne la baissez pas plus que nécessaire.
|
|
19
|
+
</script>
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hue-syncbox-config": {
|
|
3
|
+
"config": {
|
|
4
|
+
"name": "Nom",
|
|
5
|
+
"syncbox-ip": "IP de la Sync Box",
|
|
6
|
+
"token": "Jeton d'accès",
|
|
7
|
+
"pollinterval": "Actualisation (s)",
|
|
8
|
+
"missing-ip": "IP de la Hue Sync Box manquante…",
|
|
9
|
+
"connecting": "Connexion à la sync box…",
|
|
10
|
+
"invalid": "Désolé. La Hue Sync Box sélectionnée n'est pas valide : ",
|
|
11
|
+
"error-select-first": "Veuillez saisir l'IP de votre Hue Sync Box avant de créer un nouveau jeton !",
|
|
12
|
+
"waiting": "en attente de l'appui sur le bouton…",
|
|
13
|
+
"new-user-press": "Maintenez le bouton de votre Hue Sync Box enfoncé jusqu'à ce que la LED clignote en vert !",
|
|
14
|
+
"retry": "Aucun appui détecté. Veuillez réessayer…",
|
|
15
|
+
"success": "Jeton d'accès créé avec succès !"
|
|
16
|
+
},
|
|
17
|
+
"node": {
|
|
18
|
+
"title": "Hue Sync Box",
|
|
19
|
+
"initializing": "Initialisation de la sync box (__syncbox__)…",
|
|
20
|
+
"connected": "Connecté à la sync box",
|
|
21
|
+
"request-error": "Erreur lors de la demande d'informations à la sync box (__error__)",
|
|
22
|
+
"statusmsg": "Statut interrogé avec succès…"
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
<script type="text/markdown" data-help-name="hue-syncbox">
|
|
2
|
+
Le nœud « Hue Sync Box » commande une Philips Hue Play HDMI Sync Box et signale ce qu'elle est en train de faire.
|
|
3
|
+
|
|
4
|
+
### Configuration
|
|
5
|
+
|
|
6
|
+
La sync box n'est pas reliée à votre Hue Bridge mais parle sa propre API locale : elle nécessite donc sa propre configuration. Saisissez l'adresse IP de votre sync box et cliquez sur le bouton à côté du champ du jeton d'accès. Maintenez ensuite enfoncé le bouton de la sync box jusqu'à ce que sa LED clignote en vert — HueMagic interroge le boîtier pendant une minute et enregistre le jeton dès qu'il répond.
|
|
7
|
+
|
|
8
|
+
Comme la sync box n'envoie pas son état d'elle-même, HueMagic l'interroge régulièrement. Vous pouvez définir la fréquence dans la configuration ; la valeur par défaut est de 10 secondes. En option, vous pouvez désactiver tous les messages de statut automatiques de ce nœud à l'aide du réglage « Ignorer les messages du nœud ». Vous pouvez également choisir que le message d'initialisation du nœud ne soit pas supprimé au démarrage de Node-RED. Si vous préférez que le nœud reste silencieux jusqu'à ce que vous lui envoyiez quelque chose, activez « Signaler uniquement après une commande ». Il ignorera alors les changements provenant de l'application ou d'un interrupteur et ne répondra qu'à vos propres commandes.
|
|
9
|
+
|
|
10
|
+
### Interroger le statut
|
|
11
|
+
|
|
12
|
+
Émet le statut actuel de la sync box dès qu'un objet `msg.payload` ayant le contenu suivant est transmis au nœud. Vous pouvez également appuyer sur le bouton dans l'interface Node-RED sans avoir à transmettre au préalable un message au nœud.
|
|
13
|
+
|
|
14
|
+
: status (boolean): Renvoie le statut actuel de la sync box
|
|
15
|
+
|
|
16
|
+
### Allumer / éteindre (mode simple)
|
|
17
|
+
|
|
18
|
+
Pour allumer ou éteindre rapidement la sync box, transmettez au nœud un objet ayant le contenu suivant. À l'allumage, le dernier mode de synchronisation utilisé est rétabli.
|
|
19
|
+
|
|
20
|
+
: payload (boolean): `true` lance la synchronisation, `false` met le boîtier en veille
|
|
21
|
+
|
|
22
|
+
### Commandes de la sync box (étendu)
|
|
23
|
+
|
|
24
|
+
Transmettez les paramètres suivants dans un objet `msg.payload` pour commander la sync box plus finement :
|
|
25
|
+
|
|
26
|
+
: mode (string): L'un des modes `powersave`, `passthrough`, `video`, `game`, `music` ou `ambient`
|
|
27
|
+
: sync (boolean): `true` lance la synchronisation, `false` l'arrête
|
|
28
|
+
: toggle (boolean | any): Bascule la synchronisation selon l'état précédent
|
|
29
|
+
: passthrough (boolean): `true` transmet l'image à votre téléviseur sans synchronisation
|
|
30
|
+
: intensity (string): L'intensité avec laquelle les lumières suivent l'image. L'une des valeurs `subtle`, `moderate`, `high` ou `intense`
|
|
31
|
+
: brightness (int): Valeur en pourcentage de la luminosité (0-100)
|
|
32
|
+
: brightnessLevel (int): Valeur numérique de la luminosité telle que le boîtier la compte (0-200, 100 étant la valeur de référence)
|
|
33
|
+
: incrementBrightness (int | boolean): Indique de combien de pour cent la luminosité de la sync box doit être augmentée, ou `true` pour des pas de 10 %
|
|
34
|
+
: decrementBrightness (int | boolean): Indique de combien de pour cent la luminosité de la sync box doit être réduite, ou `true` pour des pas de 10 %
|
|
35
|
+
: input (string | int): L'entrée HDMI à afficher, soit `input1` à `input4`, soit simplement `1` à `4`
|
|
36
|
+
: entertainmentArea (string): La zone de divertissement que le boîtier doit piloter, p. ex. `groups/13`
|
|
37
|
+
|
|
38
|
+
### Messages de statut du nœud
|
|
39
|
+
|
|
40
|
+
Chaque fois que l'état de la sync box change, le nœud renvoie le message de statut suivant :
|
|
41
|
+
|
|
42
|
+
#### Objet de statut dans `msg.payload`
|
|
43
|
+
|
|
44
|
+
: on (boolean): `false` tant que le boîtier est en veille
|
|
45
|
+
: syncing (boolean): `true` tant que les lumières suivent l'image
|
|
46
|
+
: passthrough (boolean): `true` tant que le boîtier transmet l'image sans synchronisation
|
|
47
|
+
: mode (string): Le mode actuellement actif
|
|
48
|
+
: lastSyncMode (string): Le dernier mode de synchronisation utilisé
|
|
49
|
+
: intensity (string | boolean): Intensité du mode actuellement actif
|
|
50
|
+
: brightness (int | boolean): Luminosité en pourcentage
|
|
51
|
+
: brightnessLevel (int | boolean): Luminosité telle que le boîtier la compte (0-200)
|
|
52
|
+
: input (string | boolean): L'entrée HDMI actuellement affichée
|
|
53
|
+
: inputs (object): Les quatre entrées HDMI avec leur `name`, `type`, `status` (`unplugged`, `plugged`, `linked` ou `unknown`) et si elles sont `active`
|
|
54
|
+
: entertainmentArea (string | boolean): La zone de divertissement pilotée par le boîtier
|
|
55
|
+
: updated (string): Heure de la dernière mise à jour de la ressource par HueMagic (ISO 8601)
|
|
56
|
+
|
|
57
|
+
#### Informations sur la sync box dans `msg.info`
|
|
58
|
+
|
|
59
|
+
: id (string | boolean): L'ID unique de la sync box
|
|
60
|
+
: name (string | boolean): Le nom actuellement attribué à la sync box
|
|
61
|
+
: type (string): Le type de l'appareil (toujours `syncbox`)
|
|
62
|
+
: ipAddress (string | boolean): L'adresse IP que le boîtier indique pour lui-même
|
|
63
|
+
: softwareVersion (string | boolean): Le micrologiciel actuel de la sync box
|
|
64
|
+
: apiLevel (int | boolean): Le niveau d'API de la sync box
|
|
65
|
+
: ledMode (int | boolean): Le mode LED actuellement configuré
|
|
66
|
+
: wifi (object | boolean): Contient `ssid` et `strength` de la connexion sans fil
|
|
67
|
+
: model (object): Contient les informations de modèle de la sync box dans `id`, `manufacturer` et `name`
|
|
68
|
+
|
|
69
|
+
#### Changements d'état dans `msg.updated`
|
|
70
|
+
|
|
71
|
+
Énumère sous forme d'objet les paramètres qui ont changé par rapport au dernier état de la sync box. Si aucun changement n'a été enregistré, cet objet est vide.
|
|
72
|
+
|
|
73
|
+
#### Dernier état de la sync box dans `msg.lastState`
|
|
74
|
+
|
|
75
|
+
Contient l'objet de statut complet (voir les valeurs de sortie ci-dessus) du dernier état avant le dernier changement enregistré. Si HueMagic n'a pas encore enregistré le dernier état, `false` est émis.
|
|
76
|
+
|
|
77
|
+
#### Dernière commande dans `msg.command` (facultatif)
|
|
78
|
+
|
|
79
|
+
Si le statut du nœud a changé suite à une commande particulière, la commande complète qui a été exécutée est également émise. Sinon, cet objet n'est pas émis par le nœud.
|
|
80
|
+
|
|
81
|
+
### Exemples de HueMagic
|
|
82
|
+
|
|
83
|
+
HueMagic met à disposition quelques exemples de configuration pour ce nœud. Pour importer un exemple complet dans votre interface Node-RED, cliquez sur l'icône de menu de Node-RED, sélectionnez « Importer » puis naviguez vers « Exemples » dans la barre latérale de la fenêtre. Sélectionnez ensuite le dossier HueMagic et le nœud souhaité pour importer un flux d'exemple.
|
|
84
|
+
|
|
85
|
+

|
|
86
|
+
</script>
|