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,96 @@
|
|
|
1
|
+
<script type="text/markdown" data-help-name="hue-bridge-node">
|
|
2
|
+
Węzeł „Hue Bridge” to uniwersalny węzeł, który potrafi zwracać wszystkie ustawienia bridge oraz komunikaty stanu pozostałych węzłów.
|
|
3
|
+
|
|
4
|
+
### Konfiguracja
|
|
5
|
+
|
|
6
|
+
Najpierw wybierz żądany Hue Bridge. Opcjonalnie możesz wyłączyć wszystkie automatyczne komunikaty stanu tego węzła ustawieniem „Pomijaj globalne aktualizacje i komunikaty urządzeń w tym węźle”. Węzeł przestanie wtedy wysyłać aktualizacje urządzeń.
|
|
7
|
+
|
|
8
|
+
Możesz też zdecydować, aby komunikaty inicjalizacji wszystkich węzłów nie były pomijane przy starcie Node-RED. Po włączeniu tego ustawienia po każdym wdrożeniu otrzymasz komunikat stanu ze wszystkich zasobów połączonych z bridge.
|
|
9
|
+
|
|
10
|
+
### Odczyt ustawień i stanu
|
|
11
|
+
|
|
12
|
+
Zwraca bieżący stan i ustawienia bridge, gdy tylko do węzła zostanie wysłany poniższy komunikat. Możesz też nacisnąć przycisk w interfejsie Node-RED, bez wcześniejszego wysyłania komunikatu do węzła.
|
|
13
|
+
|
|
14
|
+
: payload (boolean): Zwraca bieżący stan bridge
|
|
15
|
+
|
|
16
|
+
### Uruchamianie skanowania TouchLink
|
|
17
|
+
|
|
18
|
+
Za pomocą „skanowania TouchLink” możesz sparować z bridge nowe lub stare urządzenia (np. po przywróceniu ustawień fabrycznych). Przekaż w tym celu obiekt `msg.payload` o następującej zawartości:
|
|
19
|
+
|
|
20
|
+
: touchLink (boolean): Paruje stare lub nowe urządzenia z bridge
|
|
21
|
+
|
|
22
|
+
### Odczyt wszystkich urządzeń i zasobów
|
|
23
|
+
|
|
24
|
+
Poleceniem „fetch” możesz uzyskać listę wybranych urządzeń aktualnie połączonych z bridge. Przekaż w tym celu obiekt `msg.payload` o następującej zawartości:
|
|
25
|
+
|
|
26
|
+
: fetch (string | array [string, ...]): Przyjmuje wartości `light`, `group`, `button`, `motion`, `temperature`, `light_level` lub `rule`
|
|
27
|
+
|
|
28
|
+
### Zmiana ustawień Hue Bridge
|
|
29
|
+
|
|
30
|
+
Poniższym poleceniem możesz zmienić wybrane ustawienia bridge. Przekaż do węzła obiekt `msg.payload.settings` z następującymi opcjami:
|
|
31
|
+
|
|
32
|
+
> [!WARNING]
|
|
33
|
+
> Zmiana ustawień sieciowych wymaga ponownej konfiguracji bridge w HueMagic.
|
|
34
|
+
|
|
35
|
+
: name (string): Zmienia nazwę bridge; musi zawierać od 4 do 16 znaków
|
|
36
|
+
: zigbeeChannel (int): Zmienia bieżący kanał ZigBee (`11`, `15`, `20`, `25` lub `0`)
|
|
37
|
+
: ipAddress (string): Zmienia adres IP w ustawieniach sieciowych
|
|
38
|
+
: dhcpEnabled (boolean): `true` włącza DHCP w ustawieniach sieciowych, `false` je wyłącza
|
|
39
|
+
: netmask (string): Zmienia maskę sieci w ustawieniach sieciowych
|
|
40
|
+
: gateway (string): Określa bramę w ustawieniach sieciowych
|
|
41
|
+
: proxyAddress (string): Ustawia adres serwera proxy w ustawieniach sieciowych
|
|
42
|
+
: proxyPort (string | int): Określa port serwera proxy w ustawieniach sieciowych
|
|
43
|
+
: timeZone (string): Zmienia strefę czasową ustawioną na bridge
|
|
44
|
+
|
|
45
|
+
### Komunikaty stanu węzła
|
|
46
|
+
|
|
47
|
+
Komunikaty stanu węzła „Hue Bridge” są dynamiczne. Choć mają określony schemat, ich zawartość może się różnić w zależności od tego, jaka akcja została właśnie wykonana na węźle.
|
|
48
|
+
|
|
49
|
+
#### Obiekt stanu w `msg.payload`
|
|
50
|
+
|
|
51
|
+
: id (string): Unikatowy identyfikator Hue Bridge
|
|
52
|
+
: name (string): Aktualnie ustawiona nazwa
|
|
53
|
+
: factoryNew (boolean): Wskazuje, czy bridge jest fabrycznie nowy
|
|
54
|
+
: replacesBridgeId (string | boolean): Zwraca stary identyfikator bridge (jeśli przeprowadzono migrację) albo `false`
|
|
55
|
+
: dataStoreVersion (string): Wersja magazynu danych
|
|
56
|
+
: starterKitId (string | boolean): Nazwa zestawu startowego utworzonego fabrycznie albo `false`
|
|
57
|
+
: softwareVersion (string): Wersja oprogramowania bridge
|
|
58
|
+
: apiVersion (string): Wersja API bridge
|
|
59
|
+
: zigbeeChannel (int): Aktualnie używany kanał ZigBee
|
|
60
|
+
: macAddress (string): Adres MAC bridge
|
|
61
|
+
: ipAddress (string): Adres IP bridge
|
|
62
|
+
: dhcpEnabled (boolean): Wskazuje, czy DHCP jest włączone
|
|
63
|
+
: netmask (string): Maska sieci bridge
|
|
64
|
+
: gateway (string): Brama bridge
|
|
65
|
+
: proxyAddress (string | boolean): Aktualnie używany adres serwera proxy albo `false`
|
|
66
|
+
: proxyPort (string): Aktualnie używany port serwera proxy
|
|
67
|
+
: utcTime (string): Czas UTC na bridge
|
|
68
|
+
: timeZone (string): Strefa czasowa ustawiona na bridge
|
|
69
|
+
: localTime (string): Lokalna strefa czasowa
|
|
70
|
+
: portalServicesEnabled (boolean): Wskazuje, czy usługi portalu są włączone
|
|
71
|
+
: portalConnected (boolean): Wskazuje, czy bridge jest połączony z portalem
|
|
72
|
+
: linkButtonEnabled (boolean): Wskazuje, czy przycisk parowania jest aktywny
|
|
73
|
+
: touchlinkEnabled (boolean): Wskazuje, czy TouchLink jest włączony
|
|
74
|
+
: autoUpdatesEnabled (boolean): Wskazuje, czy HueMagic będzie automatycznie sprawdzać aktualizacje
|
|
75
|
+
: users (array [object, ...]): Lista wszystkich użytkowników bridge (tablica obiektów)
|
|
76
|
+
: updated (string): Czas ostatniej aktualizacji zasobu przez HueMagic (ISO 8601)
|
|
77
|
+
: model (object): Zawiera informacje o modelu bridge w polach `id`, `manufacturer` i `name`
|
|
78
|
+
|
|
79
|
+
#### Wyniki „fetch” w `msg.results` (opcjonalnie)
|
|
80
|
+
|
|
81
|
+
Jeśli w węźle użyto polecenia „fetch”, bridge zwraca odpowiednie wyniki w obiekcie `msg.results`. Obiekt zawiera odpytane grupy zasobów, a te z kolei wszystkie odpowiadające im zasoby w postaci tablicy.
|
|
82
|
+
|
|
83
|
+
#### Globalne komunikaty stanu w `msg.updated` (opcjonalnie)
|
|
84
|
+
|
|
85
|
+
O ile nie zostanie to wyłączone, węzeł zwraca zaktualizowany komunikat stanu dla każdego zasobu na bridge. Komunikat w `msg.updated` odpowiada schematowi danego zasobu i różni się w zależności od typu urządzenia, które zaktualizowano jako ostatnie.
|
|
86
|
+
|
|
87
|
+
#### Ostatnie polecenie w `msg.command` (opcjonalnie)
|
|
88
|
+
|
|
89
|
+
Jeśli stan węzła zmienił się w wyniku określonego polecenia, wysyłane jest również całe wykonane polecenie. W przeciwnym razie węzeł nie wysyła tego obiektu.
|
|
90
|
+
|
|
91
|
+
### Przykłady z HueMagic
|
|
92
|
+
|
|
93
|
+
HueMagic udostępnia kilka przykładowych konfiguracji dla tego węzła. Aby zaimportować gotowy przykład do interfejsu Node-RED, kliknij ikonę menu Node-RED, wybierz „Import”, a następnie przejdź do „Examples” na pasku bocznym okna. Wybierz katalog HueMagic i żądany węzeł, aby zaimportować przykładowy przepływ.
|
|
94
|
+
|
|
95
|
+

|
|
96
|
+
</script>
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hue-bridge": {
|
|
3
|
+
"config": {
|
|
4
|
+
"name": "Nazwa",
|
|
5
|
+
"input-name": "Nazwa Hue Bridge",
|
|
6
|
+
"skipglobalevents-info": "Pomijaj globalne aktualizacje i komunikaty urządzeń w tym węźle",
|
|
7
|
+
"sendinitevents-node": "Nie pomijaj komunikatu inicjalizacji",
|
|
8
|
+
"bridge": "Bridge"
|
|
9
|
+
},
|
|
10
|
+
"node": {
|
|
11
|
+
"title": "Hue Bridge",
|
|
12
|
+
"not-configured": "nieskonfigurowany",
|
|
13
|
+
"connecting": "łączenie…",
|
|
14
|
+
"connected": "połączono",
|
|
15
|
+
"starting-tl": "uruchamianie TouchLink…",
|
|
16
|
+
"started-tl": "TouchLink uruchomiony…",
|
|
17
|
+
"f-resources": "pobieranie zasobów…",
|
|
18
|
+
"updating-settings": "aktualizowanie ustawień…",
|
|
19
|
+
"settings-updated": "ustawienia zaktualizowane",
|
|
20
|
+
"input": "ustawienia / pobranie",
|
|
21
|
+
"output": "informacje o bridge",
|
|
22
|
+
"statusmsg": "Stan odczytany pomyślnie…",
|
|
23
|
+
"error-not-available": "Bridge nie jest jeszcze dostępny. Poczekaj, aż HueMagic nawiąże z nim połączenie."
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
<script type="text/markdown" data-help-name="hue-brightness">
|
|
2
|
+
Węzeł „Hue Jasność” odczytuje bieżący poziom oświetlenia z odpowiedniego czujnika podłączonego do bridge.
|
|
3
|
+
|
|
4
|
+
### Konfiguracja
|
|
5
|
+
|
|
6
|
+
Wybierz skonfigurowany Hue Bridge i kliknij przycisk wyszukiwania, aby znaleźć wszystkie dostępne czujniki. Jeśli znasz już identyfikator czujnika, możesz go też wpisać ręcznie. Możesz nadać czujnikowi własną nazwę wewnętrzną albo zachować nazwę domyślną. Opcjonalnie możesz wyłączyć wszystkie automatyczne komunikaty stanu tego węzła ustawieniem „Pomijaj komunikaty węzła”. Węzeł przestanie wtedy wysyłać aktualizacje urządzenia. Możesz też zdecydować, aby komunikat inicjalizacji węzła nie był pomijany przy starcie Node-RED. Po włączeniu tego ustawienia po każdym wdrożeniu otrzymasz komunikat stanu wybranego czujnika. Jeśli wolisz, aby węzeł milczał, dopóki czegoś do niego nie wyślesz, włącz „Zgłaszaj tylko po poleceniu”. Węzeł zignoruje wtedy zmiany z aplikacji lub z przełącznika i odpowie wyłącznie na Twoje polecenia.
|
|
7
|
+
|
|
8
|
+
Ustawienie „Ciemno poniżej” określa, od jakiego poziomu oświetlenia węzeł uznaje pomieszczenie za ciemne. Pokój z jasną lampą wymaga zupełnie innej wartości niż korytarz bez okna, więc po prostu wpisz liczbę luksów pasującą do Twojego pomieszczenia. Wartości `dark` i `daylight` będą się wtedy kierować Twoim ustawieniem zamiast domyślnymi 90 luksami.
|
|
9
|
+
|
|
10
|
+
Jeśli nie wybierzesz czujnika i użyjesz konfiguracji węzła w ten sposób, węzeł działa w tzw. „trybie uniwersalnym”. W tym trybie węzeł odbiera i wysyła wszystkie komunikaty stanu tego samego typu. Ustawienia w trybie uniwersalnym możesz też zastosować do konkretnego czujnika, przekazując jego identyfikator jako ciąg znaków w `msg.topic` razem z ustawieniami.
|
|
11
|
+
|
|
12
|
+
### Odczyt stanu
|
|
13
|
+
|
|
14
|
+
Zwraca bieżący stan czujnika, gdy tylko do węzła zostanie przekazany obiekt `msg.payload` o następującej zawartości. Możesz też nacisnąć przycisk w interfejsie Node-RED, bez wcześniejszego wysyłania komunikatu do węzła.
|
|
15
|
+
|
|
16
|
+
: status (boolean): Zwraca bieżący stan czujnika
|
|
17
|
+
|
|
18
|
+
### Włączanie / wyłączanie czujnika
|
|
19
|
+
|
|
20
|
+
W razie potrzeby czujnik można włączać i wyłączać zdalnie. Wyłączony czujnik nie rejestruje już zmian poziomu oświetlenia i w związku z tym ich nie zgłasza. Przekaż w tym celu obiekt o następującej zawartości:
|
|
21
|
+
|
|
22
|
+
: payload (boolean): `true` włącza czujnik, `false` go wyłącza
|
|
23
|
+
|
|
24
|
+
### Komunikaty stanu węzła
|
|
25
|
+
|
|
26
|
+
Gdy tylko czujnik wykryje zmianę poziomu oświetlenia, zwracany jest następujący komunikat stanu:
|
|
27
|
+
|
|
28
|
+
#### Obiekt stanu w `msg.payload`
|
|
29
|
+
|
|
30
|
+
: active (boolean): Wskazuje, czy czujnik jest włączony, czy wyłączony
|
|
31
|
+
: reachable (boolean | string): `true`, jeśli czujnik jest połączony z bridge, `unknown`, jeśli stan połączenia jest inny
|
|
32
|
+
: connectionStatus (string): Bieżący stan połączenia z bridge w postaci ciągu znaków. Może przyjmować wartości `connected`, `disconnected`, `connectivity_issue` lub `unidirectional_incoming`
|
|
33
|
+
: lux (int): Wskazuje rzeczywistą wartość LUX poziomu oświetlenia
|
|
34
|
+
: lightLevel (int): Wskazuje natężenie światła mierzone przez czujnik
|
|
35
|
+
: dark (boolean): `true`, jeśli zarejestrowano ciemność
|
|
36
|
+
: daylight (boolean): `true`, jeśli zarejestrowano światło dzienne
|
|
37
|
+
: darkThreshold (int): Poziom oświetlenia w luksach, poniżej którego węzeł zgłasza ciemność
|
|
38
|
+
: updated (string): Czas ostatniej aktualizacji zasobu przez HueMagic (ISO 8601)
|
|
39
|
+
|
|
40
|
+
#### Informacje o czujniku w `msg.info`
|
|
41
|
+
|
|
42
|
+
: id (string): Wskazuje nowy identyfikator czujnika
|
|
43
|
+
: idV1 (string | boolean): Wskazuje stary identyfikator czujnika
|
|
44
|
+
: uniqueId (string): Unikatowy identyfikator czujnika
|
|
45
|
+
: deviceId (string): Unikatowy identyfikator urządzenia
|
|
46
|
+
: name (string): Aktualnie ustawiona nazwa czujnika
|
|
47
|
+
: type (string): Typ czujnika (zawsze `light_level`)
|
|
48
|
+
: softwareVersion (string): Bieżące oprogramowanie układowe czujnika
|
|
49
|
+
: battery (float): Bieżący poziom naładowania baterii czujnika
|
|
50
|
+
: batteryState (string): Bieżący stan poziomu baterii. Może przyjmować wartości `normal`, `low` lub `critical`
|
|
51
|
+
: model (object): Zawiera informacje o modelu czujnika w polach `id`, `manufacturer`, `name`, `type` i `certified`
|
|
52
|
+
|
|
53
|
+
#### Zmiany stanu w `msg.updated`
|
|
54
|
+
|
|
55
|
+
Wymienia w postaci obiektu poszczególne parametry, które zmieniły się względem poprzedniego stanu czujnika. Jeśli nie zarejestrowano żadnych zmian, obiekt jest pusty.
|
|
56
|
+
|
|
57
|
+
#### Poprzedni stan czujnika w `msg.lastState`
|
|
58
|
+
|
|
59
|
+
Zawiera pełny obiekt stanu (patrz wartości wyjściowe powyżej) sprzed ostatniej zarejestrowanej zmiany. Jeśli HueMagic nie zarejestrował jeszcze poprzedniego stanu, zwracane jest `false`.
|
|
60
|
+
|
|
61
|
+
#### Ostatnie polecenie w `msg.command` (opcjonalnie)
|
|
62
|
+
|
|
63
|
+
Jeśli stan węzła zmienił się w wyniku określonego polecenia, wysyłane jest również całe wykonane polecenie. W przeciwnym razie węzeł nie wysyła tego obiektu.
|
|
64
|
+
|
|
65
|
+
### Przykłady z HueMagic
|
|
66
|
+
|
|
67
|
+
HueMagic udostępnia kilka przykładowych konfiguracji dla tego węzła. Aby zaimportować gotowy przykład do interfejsu Node-RED, kliknij ikonę menu Node-RED, wybierz „Import”, a następnie przejdź do „Examples” na pasku bocznym okna. Wybierz katalog HueMagic i żądany węzeł, aby zaimportować przykładowy przepływ.
|
|
68
|
+
|
|
69
|
+

|
|
70
|
+
</script>
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hue-brightness": {
|
|
3
|
+
"config": {
|
|
4
|
+
"name": "Nazwa",
|
|
5
|
+
"skipevents-node": "Pomijaj komunikaty węzła",
|
|
6
|
+
"sendinitevents-node": "Nie pomijaj komunikatu inicjalizacji",
|
|
7
|
+
"onlycommands-node": "Zgłaszaj tylko po poleceniu",
|
|
8
|
+
"unknown-error": "Coś poszło nie tak. Spróbuj ponownie.",
|
|
9
|
+
"bridge": "Bridge",
|
|
10
|
+
"universalevents": "Zdarzenia uniwersalne",
|
|
11
|
+
"universalevents-node": "Odbiera wszystkie komunikaty innych węzłów tego samego typu (tylko w trybie uniwersalnym)",
|
|
12
|
+
"input-name": "Nazwa czujnika jasności",
|
|
13
|
+
"searching": "Wyszukiwanie czujników…",
|
|
14
|
+
"none-found": "Nie znaleziono żadnego czujnika jasności!",
|
|
15
|
+
"sensor": "Czujnik",
|
|
16
|
+
"all": "Wszystkie grupy / światła",
|
|
17
|
+
"darkthreshold": "Ciemno poniżej"
|
|
18
|
+
},
|
|
19
|
+
"node": {
|
|
20
|
+
"not-configured": "nieskonfigurowany",
|
|
21
|
+
"deactivated": "wyłączony",
|
|
22
|
+
"init": "inicjalizacja…",
|
|
23
|
+
"not-reachable": "nieosiągalny",
|
|
24
|
+
"universal": "tryb uniwersalny",
|
|
25
|
+
"command": "wykonywanie polecenia…",
|
|
26
|
+
"statusmsg": "Stan odczytany pomyślnie…",
|
|
27
|
+
"title": "Hue Jasność",
|
|
28
|
+
"lux": "__lux__ lx",
|
|
29
|
+
"lux-dark": "__lux__ lx (ciemno)",
|
|
30
|
+
"lux-daylight": "__lux__ lx (światło dzienne)",
|
|
31
|
+
"input": "zapytanie o stan",
|
|
32
|
+
"output": "jasność (zmieniona)",
|
|
33
|
+
"error-no-id": "Podaj prawidłowy identyfikator: czujnik.",
|
|
34
|
+
"error-not-available": "Czujnik nie jest jeszcze dostępny. Poczekaj, aż HueMagic nawiąże połączenie z bridge, albo sprawdź, czy identyfikator zasobu podany w konfiguracji jest prawidłowy."
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
<script type="text/markdown" data-help-name="hue-buttons">
|
|
2
|
+
Węzeł „Hue Przyciski” odbiera zdarzenia przełączania z urządzeń wejściowych podłączonych do bridge.
|
|
3
|
+
|
|
4
|
+
### Konfiguracja
|
|
5
|
+
|
|
6
|
+
Wybierz skonfigurowany Hue Bridge i kliknij przycisk wyszukiwania, aby znaleźć wszystkie dostępne przełączniki i przyciski. Jeśli znasz już identyfikator przełącznika lub przycisku, możesz go też wpisać ręcznie. Możesz nadać urządzeniu własną nazwę wewnętrzną albo zachować nazwę domyślną. Opcjonalnie możesz wyłączyć wszystkie automatyczne komunikaty stanu tego węzła ustawieniem „Pomijaj komunikaty węzła”. Węzeł przestanie wtedy wysyłać zdarzenia przełączania. Możesz też zdecydować, aby komunikat inicjalizacji węzła nie był pomijany przy starcie Node-RED. Po włączeniu tego ustawienia po każdym wdrożeniu otrzymasz komunikat stanu wybranego przełącznika lub przycisku. Jeśli wolisz, aby węzeł milczał, dopóki czegoś do niego nie wyślesz, włącz „Zgłaszaj tylko po poleceniu”. Węzeł zignoruje wtedy zmiany z aplikacji lub z przełącznika i odpowie wyłącznie na Twoje polecenia.
|
|
7
|
+
|
|
8
|
+
Jeśli nie wybierzesz przełącznika ani przycisku i użyjesz konfiguracji węzła w ten sposób, węzeł działa w tzw. „trybie uniwersalnym”. W tym trybie węzeł odbiera i wysyła wszystkie komunikaty stanu tego samego typu.
|
|
9
|
+
|
|
10
|
+
### Odczyt stanu
|
|
11
|
+
|
|
12
|
+
Zwraca bieżący stan przełącznika lub przycisku, gdy tylko do węzła zostanie przekazany obiekt `msg.payload` o następującej zawartości. Możesz też nacisnąć przycisk w interfejsie Node-RED, bez wcześniejszego wysyłania komunikatu do węzła.
|
|
13
|
+
|
|
14
|
+
: status (boolean): Zwraca bieżący stan przełącznika lub przycisku
|
|
15
|
+
|
|
16
|
+
### Komunikaty stanu węzła
|
|
17
|
+
|
|
18
|
+
Gdy tylko zostanie naciśnięty przycisk, węzeł zwraca następujący komunikat stanu:
|
|
19
|
+
|
|
20
|
+
#### Obiekt stanu w `msg.payload`
|
|
21
|
+
|
|
22
|
+
: reachable (boolean | string): `true`, jeśli przełącznik lub przycisk jest połączony z bridge, `unknown`, jeśli stan połączenia jest inny
|
|
23
|
+
: connectionStatus (string): Bieżący stan połączenia z bridge w postaci ciągu znaków. Może przyjmować wartości `connected`, `disconnected`, `connectivity_issue` lub `unidirectional_incoming`
|
|
24
|
+
: button (int | boolean): Numeryczny identyfikator ostatnio naciśniętego przycisku albo `false`, jeśli nie naciśnięto żadnego
|
|
25
|
+
: action (string | boolean): `false`, jeśli nie naciśnięto żadnego przycisku, albo `initial_press`, `repeat`, `short_release`, `long_press`, `long_release` lub `double_short_release` w postaci ciągu znaków
|
|
26
|
+
: rotation (object | boolean): `false`, jeśli urządzenie nie ma pokrętła lub nim nie obrócono; w przeciwnym razie obiekt z polami `action` (`start` lub `repeat`), `direction` (`clock_wise` lub `counter_clock_wise`), `clockwise` (wartość logiczna), `steps` (1000 kroków to pełny obrót), `degrees` i `duration` w milisekundach
|
|
27
|
+
: updated (string): Czas ostatniej aktualizacji zasobu przez HueMagic (ISO 8601)
|
|
28
|
+
|
|
29
|
+
#### Informacje o przełączniku lub przycisku w `msg.info`
|
|
30
|
+
|
|
31
|
+
: id (string): Wskazuje nowy identyfikator przełącznika lub przycisku
|
|
32
|
+
: idV1 (string | boolean): Wskazuje stary identyfikator przełącznika lub przycisku
|
|
33
|
+
: uniqueId (string): Unikatowy identyfikator przełącznika lub przycisku
|
|
34
|
+
: deviceId (string): Unikatowy identyfikator urządzenia
|
|
35
|
+
: name (string): Aktualnie ustawiona nazwa przełącznika lub przycisku
|
|
36
|
+
: type (string): Typ przełącznika lub przycisku (zawsze `button`)
|
|
37
|
+
: softwareVersion (string): Bieżące oprogramowanie układowe przełącznika lub przycisku
|
|
38
|
+
: battery (float | boolean): Bieżący poziom naładowania baterii przełącznika lub przycisku, `false`, gdy urządzenie nie ma baterii
|
|
39
|
+
: batteryState (string | boolean): Bieżący stan poziomu baterii. Może przyjmować wartości `normal`, `low` lub `critical`, albo `false`, gdy urządzenie nie ma baterii
|
|
40
|
+
: model (object): Zawiera informacje o modelu przełącznika lub przycisku w polach `id`, `manufacturer`, `name`, `type` i `certified`
|
|
41
|
+
|
|
42
|
+
#### Zmiany stanu w `msg.updated`
|
|
43
|
+
|
|
44
|
+
Wymienia w postaci obiektu poszczególne parametry, które zmieniły się względem poprzedniego stanu przełącznika lub przycisku. Jeśli nie zarejestrowano żadnych zmian, obiekt jest pusty.
|
|
45
|
+
|
|
46
|
+
#### Poprzedni stan przełącznika lub przycisku w `msg.lastState`
|
|
47
|
+
|
|
48
|
+
Zawiera pełny obiekt stanu (patrz wartości wyjściowe powyżej) sprzed ostatniej zarejestrowanej zmiany. Jeśli HueMagic nie zarejestrował jeszcze poprzedniego stanu, zwracane jest `false`.
|
|
49
|
+
|
|
50
|
+
#### Ostatnie polecenie w `msg.command` (opcjonalnie)
|
|
51
|
+
|
|
52
|
+
Jeśli stan węzła zmienił się w wyniku określonego polecenia, wysyłane jest również całe wykonane polecenie. W przeciwnym razie węzeł nie wysyła tego obiektu.
|
|
53
|
+
|
|
54
|
+
### Przykłady z HueMagic
|
|
55
|
+
|
|
56
|
+
HueMagic udostępnia kilka przykładowych konfiguracji dla tego węzła. Aby zaimportować gotowy przykład do interfejsu Node-RED, kliknij ikonę menu Node-RED, wybierz „Import”, a następnie przejdź do „Examples” na pasku bocznym okna. Wybierz katalog HueMagic i żądany węzeł, aby zaimportować przykładowy przepływ.
|
|
57
|
+
|
|
58
|
+

|
|
59
|
+
</script>
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hue-buttons": {
|
|
3
|
+
"config": {
|
|
4
|
+
"name": "Nazwa",
|
|
5
|
+
"skipevents-node": "Pomijaj komunikaty węzła",
|
|
6
|
+
"sendinitevents-node": "Nie pomijaj komunikatu inicjalizacji",
|
|
7
|
+
"onlycommands-node": "Zgłaszaj tylko po poleceniu",
|
|
8
|
+
"unknown-error": "Coś poszło nie tak. Spróbuj ponownie.",
|
|
9
|
+
"bridge": "Bridge",
|
|
10
|
+
"universalevents": "Zdarzenia uniwersalne",
|
|
11
|
+
"universalevents-node": "Odbiera wszystkie komunikaty innych węzłów tego samego typu (tylko w trybie uniwersalnym)",
|
|
12
|
+
"input-name": "Nazwa przycisku",
|
|
13
|
+
"searching": "Wyszukiwanie Hue Buttons…",
|
|
14
|
+
"none-found": "Nie znaleziono żadnego Hue Button!",
|
|
15
|
+
"button": "Przycisk"
|
|
16
|
+
},
|
|
17
|
+
"node": {
|
|
18
|
+
"not-configured": "nieskonfigurowany",
|
|
19
|
+
"universal": "tryb uniwersalny",
|
|
20
|
+
"command": "wykonywanie polecenia…",
|
|
21
|
+
"statusmsg": "Stan odczytany pomyślnie…",
|
|
22
|
+
"title": "Hue Przyciski",
|
|
23
|
+
"waiting": "oczekiwanie…",
|
|
24
|
+
"button-on": "On",
|
|
25
|
+
"action-pressed": "naciśnięty",
|
|
26
|
+
"action-holded": "przytrzymany",
|
|
27
|
+
"action-shortreleased": "krótko zwolniony",
|
|
28
|
+
"action-longreleased": "zwolniony po przytrzymaniu",
|
|
29
|
+
"action-repeated": "powtórzony",
|
|
30
|
+
"action-doublepressed": "naciśnięty dwukrotnie",
|
|
31
|
+
"dial-clockwise": "Pokrętło ↻ __degrees__°",
|
|
32
|
+
"dial-counterclockwise": "Pokrętło ↺ __degrees__°",
|
|
33
|
+
"button-status": "Przycisk nr __button__ (__action__)",
|
|
34
|
+
"input": "zapytanie o stan",
|
|
35
|
+
"output": "naciśnięty przycisk",
|
|
36
|
+
"error-no-id": "Podaj prawidłowy identyfikator: przełącznik.",
|
|
37
|
+
"error-not-available": "Przełącznik nie jest jeszcze dostępny. Poczekaj, aż HueMagic nawiąże połączenie z bridge, albo sprawdź, czy identyfikator zasobu podany w konfiguracji jest prawidłowy.",
|
|
38
|
+
"error-no-switchmode": "To urządzenie nie ma konfigurowalnego trybu przełącznika.",
|
|
39
|
+
"error-invalid-switchmode": "Nieprawidłowy tryb przełącznika. To urządzenie obsługuje: __modes__"
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
<script type="text/markdown" data-help-name="hue-contact">
|
|
2
|
+
Węzeł „Hue Kontakt” informuje, czy czujnik kontaktowy (np. Hue Secure) jest obecnie otwarty, czy zamknięty.
|
|
3
|
+
|
|
4
|
+
### Konfiguracja
|
|
5
|
+
|
|
6
|
+
Wybierz skonfigurowany Hue Bridge i kliknij przycisk wyszukiwania, aby znaleźć wszystkie dostępne czujniki. Jeśli znasz już identyfikator czujnika, możesz go też wpisać ręcznie. Możesz nadać czujnikowi własną nazwę wewnętrzną albo zachować nazwę domyślną. Opcjonalnie możesz wyłączyć wszystkie automatyczne komunikaty stanu tego węzła ustawieniem „Pomijaj komunikaty węzła”. Węzeł przestanie wtedy wysyłać aktualizacje urządzenia. Możesz też zdecydować, aby komunikat inicjalizacji węzła nie był pomijany przy starcie Node-RED. Po włączeniu tego ustawienia po każdym wdrożeniu otrzymasz komunikat stanu wybranego czujnika. Jeśli wolisz, aby węzeł milczał, dopóki czegoś do niego nie wyślesz, włącz „Zgłaszaj tylko po poleceniu”. Węzeł zignoruje wtedy zmiany z aplikacji lub z przełącznika i odpowie wyłącznie na Twoje polecenia.
|
|
7
|
+
|
|
8
|
+
Jeśli nie wybierzesz czujnika i użyjesz konfiguracji węzła w ten sposób, węzeł działa w tzw. „trybie uniwersalnym”. W tym trybie węzeł odbiera i wysyła wszystkie komunikaty stanu tego samego typu. Ustawienia w trybie uniwersalnym możesz też zastosować do konkretnego czujnika, przekazując jego identyfikator jako ciąg znaków w `msg.topic` razem z ustawieniami.
|
|
9
|
+
|
|
10
|
+
### Odczyt stanu
|
|
11
|
+
|
|
12
|
+
Zwraca bieżący stan czujnika, gdy tylko do węzła zostanie przekazany obiekt `msg.payload` o następującej zawartości. Możesz też nacisnąć przycisk w interfejsie Node-RED, bez wcześniejszego wysyłania komunikatu do węzła.
|
|
13
|
+
|
|
14
|
+
: status (boolean): Zwraca bieżący stan czujnika
|
|
15
|
+
|
|
16
|
+
### Włączanie / wyłączanie czujnika
|
|
17
|
+
|
|
18
|
+
W razie potrzeby czujnik można włączać i wyłączać zdalnie. Wyłączony czujnik nie rejestruje już zmian kontaktu i w związku z tym ich nie zgłasza. Przekaż w tym celu obiekt o następującej zawartości:
|
|
19
|
+
|
|
20
|
+
: payload (boolean): `true` włącza czujnik, `false` go wyłącza
|
|
21
|
+
|
|
22
|
+
### Komunikaty stanu węzła
|
|
23
|
+
|
|
24
|
+
Gdy tylko zmieni się stan kontaktu, węzeł zwraca następujący komunikat stanu:
|
|
25
|
+
|
|
26
|
+
#### Obiekt stanu w `msg.payload`
|
|
27
|
+
|
|
28
|
+
: active (boolean): Wskazuje, czy czujnik jest włączony, czy wyłączony
|
|
29
|
+
: reachable (boolean | string): `true`, jeśli czujnik jest połączony z bridge, `unknown`, jeśli stan połączenia jest inny
|
|
30
|
+
: connectionStatus (string): Bieżący stan połączenia z bridge w postaci ciągu znaków. Może przyjmować wartości `connected`, `disconnected`, `connectivity_issue` lub `unidirectional_incoming`
|
|
31
|
+
: contact (string | boolean): `contact`, jeśli kontakt jest zamknięty, `no_contact`, jeśli jest otwarty, lub `false`, jeśli czujnik jeszcze nic nie zgłosił
|
|
32
|
+
: changed (string | boolean): Czas ostatniej zmiany kontaktu (ISO 8601) lub `false`, jeśli czujnik jeszcze nic nie zgłosił
|
|
33
|
+
: tampered (boolean): Dostępne tylko w czujnikach z wykrywaniem sabotażu; `true`, jeśli czujnik został naruszony
|
|
34
|
+
: updated (string): Czas ostatniej aktualizacji zasobu przez HueMagic (ISO 8601)
|
|
35
|
+
|
|
36
|
+
#### Informacje o czujniku w `msg.info`
|
|
37
|
+
|
|
38
|
+
: id (string): Wskazuje nowy identyfikator czujnika
|
|
39
|
+
: idV1 (string | boolean): Wskazuje stary identyfikator czujnika
|
|
40
|
+
: uniqueId (string): Unikatowy identyfikator czujnika
|
|
41
|
+
: deviceId (string): Unikatowy identyfikator urządzenia
|
|
42
|
+
: name (string): Aktualnie ustawiona nazwa czujnika
|
|
43
|
+
: type (string): Typ czujnika (zawsze `contact`)
|
|
44
|
+
: softwareVersion (string): Bieżące oprogramowanie układowe czujnika
|
|
45
|
+
: battery (float | boolean): Bieżący poziom naładowania baterii czujnika, `false`, gdy urządzenie nie ma baterii
|
|
46
|
+
: batteryState (string | boolean): Bieżący stan poziomu baterii. Może przyjmować wartości `normal`, `low` lub `critical`, albo `false`, gdy urządzenie nie ma baterii
|
|
47
|
+
: model (object): Zawiera informacje o modelu czujnika w polach `id`, `manufacturer`, `name`, `type` i `certified`
|
|
48
|
+
|
|
49
|
+
#### Zmiany stanu w `msg.updated`
|
|
50
|
+
|
|
51
|
+
Wymienia w postaci obiektu poszczególne parametry, które zmieniły się względem poprzedniego stanu czujnika. Jeśli nie zarejestrowano żadnych zmian, obiekt jest pusty.
|
|
52
|
+
|
|
53
|
+
#### Poprzedni stan czujnika w `msg.lastState`
|
|
54
|
+
|
|
55
|
+
Zawiera pełny obiekt stanu (patrz wartości wyjściowe powyżej) sprzed ostatniej zarejestrowanej zmiany. Jeśli HueMagic nie zarejestrował jeszcze poprzedniego stanu, zwracane jest `false`.
|
|
56
|
+
|
|
57
|
+
#### Ostatnie polecenie w `msg.command` (opcjonalnie)
|
|
58
|
+
|
|
59
|
+
Jeśli stan węzła zmienił się w wyniku określonego polecenia, wysyłane jest również całe wykonane polecenie. W przeciwnym razie węzeł nie wysyła tego obiektu.
|
|
60
|
+
|
|
61
|
+
### Przykłady z HueMagic
|
|
62
|
+
|
|
63
|
+
HueMagic udostępnia kilka przykładowych konfiguracji dla tego węzła. Aby zaimportować gotowy przykład do interfejsu Node-RED, kliknij ikonę menu Node-RED, wybierz „Import”, a następnie przejdź do „Examples” na pasku bocznym okna. Wybierz katalog HueMagic i żądany węzeł, aby zaimportować przykładowy przepływ.
|
|
64
|
+
|
|
65
|
+

|
|
66
|
+
|
|
67
|
+
</script>
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hue-contact": {
|
|
3
|
+
"config": {
|
|
4
|
+
"name": "Nazwa",
|
|
5
|
+
"skipevents-node": "Pomijaj komunikaty węzła",
|
|
6
|
+
"sendinitevents-node": "Nie pomijaj komunikatu inicjalizacji",
|
|
7
|
+
"onlycommands-node": "Zgłaszaj tylko po poleceniu",
|
|
8
|
+
"unknown-error": "Coś poszło nie tak. Spróbuj ponownie.",
|
|
9
|
+
"bridge": "Bridge",
|
|
10
|
+
"universalevents": "Zdarzenia uniwersalne",
|
|
11
|
+
"universalevents-node": "Odbiera wszystkie komunikaty innych węzłów tego samego typu (tylko w trybie uniwersalnym)",
|
|
12
|
+
"input-name": "Nazwa czujnika",
|
|
13
|
+
"searching": "Wyszukiwanie czujników kontaktowych…",
|
|
14
|
+
"none-found": "Nie znaleziono żadnego czujnika kontaktowego!",
|
|
15
|
+
"sensor": "Czujnik"
|
|
16
|
+
},
|
|
17
|
+
"node": {
|
|
18
|
+
"not-configured": "nieskonfigurowany",
|
|
19
|
+
"not-reachable": "nieosiągalny",
|
|
20
|
+
"activated": "włączony",
|
|
21
|
+
"deactivated": "wyłączony",
|
|
22
|
+
"universal": "tryb uniwersalny",
|
|
23
|
+
"command": "wykonywanie polecenia…",
|
|
24
|
+
"statusmsg": "Stan odczytany pomyślnie…",
|
|
25
|
+
"title": "Hue Kontakt",
|
|
26
|
+
"contact": "kontakt",
|
|
27
|
+
"no-contact": "brak kontaktu",
|
|
28
|
+
"input": "włącz / wyłącz / stan",
|
|
29
|
+
"output": "kontakt",
|
|
30
|
+
"tampered": "naruszony",
|
|
31
|
+
"error-no-id": "Podaj prawidłowy identyfikator: czujnik.",
|
|
32
|
+
"error-not-available": "Czujnik nie jest jeszcze dostępny. Poczekaj, aż HueMagic nawiąże połączenie z bridge, albo sprawdź, czy identyfikator zasobu podany w konfiguracji jest prawidłowy."
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
<script type="text/markdown" data-help-name="hue-group">
|
|
2
|
+
Węzeł „Hue Grupa” steruje jednocześnie wieloma światłami zebranymi w grupę na bridge.
|
|
3
|
+
|
|
4
|
+
### Konfiguracja
|
|
5
|
+
|
|
6
|
+
Wybierz skonfigurowany Hue Bridge i kliknij przycisk wyszukiwania, aby znaleźć wszystkie dostępne grupy. Jeśli znasz już identyfikator grupy, możesz go też wpisać ręcznie. Możesz nadać grupie własną nazwę wewnętrzną albo zachować nazwę domyślną. Opcjonalnie możesz wyłączyć wszystkie automatyczne komunikaty stanu tego węzła ustawieniem „Pomijaj komunikaty węzła”. Węzeł przestanie wtedy wysyłać aktualizacje. Możesz też zdecydować, aby komunikat inicjalizacji węzła nie był pomijany przy starcie Node-RED. Po włączeniu tego ustawienia po każdym wdrożeniu otrzymasz komunikat stanu wybranej grupy. Jeśli wolisz, aby węzeł milczał, dopóki czegoś do niego nie wyślesz, włącz „Zgłaszaj tylko po poleceniu”. Węzeł zignoruje wtedy zmiany z aplikacji lub z przełącznika i odpowie wyłącznie na Twoje polecenia.
|
|
7
|
+
|
|
8
|
+
Jeśli nie wybierzesz grupy i użyjesz konfiguracji węzła w ten sposób, węzeł działa w tzw. „trybie uniwersalnym”. W tym trybie węzeł odbiera i wysyła wszystkie komunikaty stanu tego samego typu. Ustawienia w trybie uniwersalnym możesz też zastosować do konkretnej grupy, przekazując jej identyfikator jako ciąg znaków w `msg.topic` razem z ustawieniami.
|
|
9
|
+
|
|
10
|
+
### Odczyt stanu
|
|
11
|
+
|
|
12
|
+
Zwraca bieżący stan grupy, gdy tylko do węzła zostanie przekazany obiekt `msg.payload` o następującej zawartości. Możesz też nacisnąć przycisk w interfejsie Node-RED, bez wcześniejszego wysyłania komunikatu do węzła.
|
|
13
|
+
|
|
14
|
+
: status (boolean): Zwraca bieżący stan grupy
|
|
15
|
+
|
|
16
|
+
### Włączanie / wyłączanie (tryb prosty)
|
|
17
|
+
|
|
18
|
+
Aby szybko włączyć lub wyłączyć całą grupę w trybie prostym, przekaż do węzła obiekt o następującej zawartości.
|
|
19
|
+
|
|
20
|
+
: payload (boolean): `true` włącza całą grupę, `false` ją wyłącza
|
|
21
|
+
|
|
22
|
+
### Polecenia grupy (rozszerzone)
|
|
23
|
+
|
|
24
|
+
Oprócz zwykłego włączania i wyłączania dostępnych jest wiele innych opcji sterowania grupą. Wszystkie węzły HueMagic obsługują polecenia addytywne. Oznacza to, że możesz przekazać najpierw jedno ustawienie, a później w kolejnym poleceniu następne, nie odrzucając poprzedniego. Przekaż w obiekcie `msg.payload` następujące parametry, aby wykonać bardziej rozbudowane ustawienia grupy:
|
|
25
|
+
|
|
26
|
+
: on (boolean): `true` włącza całą grupę, `false` ją wyłącza
|
|
27
|
+
: toggle (boolean | any): Przełącza między włączeniem a wyłączeniem, zależnie od poprzedniego stanu grupy
|
|
28
|
+
: brightness (int | string): Procentowa wartość jasności światła (0-100) albo ciąg znaków `auto`, aby jasność była ustawiana automatycznie na podstawie bieżącej godziny
|
|
29
|
+
: brightnessLevel (int): Liczbowa wartość jasności światła (0-254)
|
|
30
|
+
: incrementBrightness (int): Procentowa wartość względnej zmiany jasności. Dopuszczalny zakres to od -100 % do +100 %. Wartości dodatnie zwiększają jasność. Domyślnie +10 %
|
|
31
|
+
: decrementBrightness (int): Procentowa wartość względnej zmiany jasności. Dopuszczalny zakres to od -100 % do +100 %. Wartości dodatnie zmniejszają jasność. Domyślnie +10 %
|
|
32
|
+
: color (string): `random`, aby ustawić losowy kolor, albo angielska nazwa koloru (np. `red`)
|
|
33
|
+
: hex (string): Wartość koloru w zapisie szesnastkowym jako ciąg znaków
|
|
34
|
+
: rgb (array [0,0,0]): Wartość koloru w formacie RGB jako tablica
|
|
35
|
+
: xyColor (object {x [float], y [float]}): Wartość koloru w formacie XY jako obiekt
|
|
36
|
+
: image (string): Ścieżka obrazu (lokalnego lub w sieci), aby ustawić bieżący kolor grupy na średni kolor obrazu
|
|
37
|
+
: colorTemp (int | string): Wartość od 153 do 500 ustawiająca temperaturę barwową grupy albo wartości `cold`, `normal`, `warm`, `hot` i `auto`, przy czym `auto` dobiera temperaturę barwową na podstawie bieżącej godziny
|
|
38
|
+
: transitionTime (float): Czas przejścia bieżącego ustawienia w sekundach. Po przekazaniu `0` grupa zmienia się natychmiast. Po przekazaniu `3` grupa przechodzi do żądanego ustawienia z łagodnym przejściem w ciągu następnych 3 sekund
|
|
39
|
+
: colorloop (float): Odtwarza animację „colorloop” przez wskazaną liczbę sekund, a następnie przywraca pierwotny stan grupy
|
|
40
|
+
: alert (float): Odtwarza animację „alert” przez wskazaną liczbę sekund, a następnie przywraca pierwotny stan grupy
|
|
41
|
+
|
|
42
|
+
### Komunikaty stanu węzła
|
|
43
|
+
|
|
44
|
+
Gdy zostanie wykryta zmiana w grupie, węzeł zwraca następujący komunikat stanu.
|
|
45
|
+
|
|
46
|
+
> [!NOTE]
|
|
47
|
+
> Grupa wysyła komunikaty stanu tylko wtedy, gdy zostanie wyłączone ostatnie światło albo włączone pierwsze (jeśli wcześniej wszystkie były wyłączone).
|
|
48
|
+
|
|
49
|
+
W przeciwieństwie do węzła „Hue Światło” dostępnych jest tu znacznie mniej informacji o stanie, ponieważ grupa może zawierać wiele różnych typów urządzeń o wartościach, których nie da się połączyć.
|
|
50
|
+
|
|
51
|
+
#### Obiekt stanu w `msg.payload`
|
|
52
|
+
|
|
53
|
+
: on (boolean): Stan grupy, gdzie `true` oznacza włączona, a `false` wyłączona
|
|
54
|
+
: brightness (float | boolean): Jasność grupy w procentach albo `false`, jeśli grupy nie można ściemniać
|
|
55
|
+
: brightnessLevel (int | boolean): Jasność grupy jako wartość liczbowa (0-254) albo `false`, jeśli grupy nie można ściemniać
|
|
56
|
+
: rgb (array [0,0,0]): Bieżący kolor grupy w formacie RGB (tylko jeśli dostępny)
|
|
57
|
+
: hex (string): Bieżący kolor grupy w formacie szesnastkowym (tylko jeśli dostępny)
|
|
58
|
+
: xyColor (object {x [float], y [float]}): Bieżący kolor grupy w formacie XY (tylko jeśli dostępny)
|
|
59
|
+
: colorTemp (int): Aktualnie ustawiona temperatura barwowa grupy (tylko jeśli dostępna)
|
|
60
|
+
: updated (string): Czas ostatniej aktualizacji zasobu przez HueMagic (ISO 8601)
|
|
61
|
+
|
|
62
|
+
#### Informacje o grupie w `msg.info`
|
|
63
|
+
|
|
64
|
+
: id (string): Wskazuje nowy identyfikator grupy
|
|
65
|
+
: idV1 (string | boolean): Wskazuje stary identyfikator grupy
|
|
66
|
+
: name (string): Aktualnie ustawiona nazwa grupy
|
|
67
|
+
: resources (object) : Zawiera wszystkie urządzenia i zasoby należące do grupy
|
|
68
|
+
: type (string): Typ grupy (zawsze `group`)
|
|
69
|
+
|
|
70
|
+
#### Zmiany stanu w `msg.updated`
|
|
71
|
+
|
|
72
|
+
Wymienia w postaci obiektu poszczególne parametry, które zmieniły się względem poprzedniego stanu grupy. Jeśli nie zarejestrowano żadnych zmian, obiekt jest pusty.
|
|
73
|
+
|
|
74
|
+
#### Poprzedni stan światła w `msg.lastState`
|
|
75
|
+
|
|
76
|
+
Zawiera pełny obiekt stanu (patrz wartości wyjściowe powyżej) sprzed ostatniej zmiany. Jeśli HueMagic nie zarejestrował jeszcze poprzedniego stanu, zwracane jest `false`.
|
|
77
|
+
|
|
78
|
+
#### Ostatnie polecenie w `msg.command` (opcjonalnie)
|
|
79
|
+
|
|
80
|
+
Jeśli stan węzła zmienił się w wyniku określonego polecenia, wysyłane jest również całe wykonane polecenie. W przeciwnym razie węzeł nie wysyła tego obiektu.
|
|
81
|
+
|
|
82
|
+
### Przykłady z HueMagic
|
|
83
|
+
|
|
84
|
+
HueMagic udostępnia kilka przykładowych konfiguracji dla tego węzła. Aby zaimportować gotowy przykład do interfejsu Node-RED, kliknij ikonę menu Node-RED, wybierz „Import”, a następnie przejdź do „Examples” na pasku bocznym okna. Wybierz katalog HueMagic i żądany węzeł, aby zaimportować przykładowy przepływ.
|
|
85
|
+
|
|
86
|
+

|
|
87
|
+
</script>
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hue-group": {
|
|
3
|
+
"config": {
|
|
4
|
+
"name": "Nazwa",
|
|
5
|
+
"skipevents-node": "Pomijaj komunikaty węzła",
|
|
6
|
+
"sendinitevents-node": "Nie pomijaj komunikatu inicjalizacji",
|
|
7
|
+
"onlycommands-node": "Zgłaszaj tylko po poleceniu",
|
|
8
|
+
"unknown-error": "Coś poszło nie tak. Spróbuj ponownie.",
|
|
9
|
+
"bridge": "Bridge",
|
|
10
|
+
"universalevents": "Zdarzenia uniwersalne",
|
|
11
|
+
"universalevents-node": "Odbiera wszystkie komunikaty innych węzłów tego samego typu (tylko w trybie uniwersalnym)",
|
|
12
|
+
"colornamer": "Colornamer",
|
|
13
|
+
"colornamer-info": "Włącz nazywanie kolorów",
|
|
14
|
+
"input-name": "Nazwa grupy",
|
|
15
|
+
"searching": "Wyszukiwanie grup…",
|
|
16
|
+
"none-found": "Nie znaleziono żadnej grupy!",
|
|
17
|
+
"group": "Grupa",
|
|
18
|
+
"all": "Wszystkie grupy / światła"
|
|
19
|
+
},
|
|
20
|
+
"node": {
|
|
21
|
+
"not-configured": "nieskonfigurowany",
|
|
22
|
+
"init": "inicjalizacja…",
|
|
23
|
+
"universal": "tryb uniwersalny",
|
|
24
|
+
"command": "wykonywanie polecenia…",
|
|
25
|
+
"statusmsg": "Stan odczytany pomyślnie…",
|
|
26
|
+
"title": "Hue Grupa",
|
|
27
|
+
"brightness": " (__percent__ %)",
|
|
28
|
+
"all-on": "wszystkie światła włączone",
|
|
29
|
+
"all-off": "wszystkie światła wyłączone",
|
|
30
|
+
"some-on": "część świateł włączona",
|
|
31
|
+
"turned-on": "włączona",
|
|
32
|
+
"error-input": "błąd danych wejściowych",
|
|
33
|
+
"error-no-id": "Nie podano identyfikatora grupy.",
|
|
34
|
+
"error-invalid-sat": "Nieprawidłowe ustawienie nasycenia. Dozwolone są tylko wartości od 0 do 254.",
|
|
35
|
+
"error-invalid-temp": "Nieprawidłowa temperatura barwowa. Dozwolone są tylko wartości od 153 do 500.",
|
|
36
|
+
"input": "włącz / wyłącz",
|
|
37
|
+
"output": "stan",
|
|
38
|
+
"error-not-available": "Grupa nie jest jeszcze dostępny. Poczekaj, aż HueMagic nawiąże połączenie z bridge, albo sprawdź, czy identyfikator zasobu podany w konfiguracji jest prawidłowy.",
|
|
39
|
+
"error-invalid-brightness": "Nieprawidłowe ustawienie jasności. Dozwolone są tylko wartości od 0 do 100 procent.",
|
|
40
|
+
"error-invalid-brightness-level": "Nieprawidłowe ustawienie jasności. Dozwolone są tylko wartości od 0 do 254.",
|
|
41
|
+
"error-invalid-increment": "Nieprawidłowe ustawienie incrementBrightness. Dozwolone są tylko wartości od -100 % do 100 %.",
|
|
42
|
+
"error-invalid-decrement": "Nieprawidłowe ustawienie decrementBrightness. Dozwolone są tylko wartości od -100 % do 100 %.",
|
|
43
|
+
"error-no-colorloop": "Efekt colorloop nie jest dostępny dla tej grupy."
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|