node-red-contrib-knx-ultimate 2.1.32 → 2.1.33
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 +4 -0
- package/nodes/knxUltimateHueLight.js +16 -4
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,10 @@
|
|
|
6
6
|
|
|
7
7
|
# CHANGELOG
|
|
8
8
|
|
|
9
|
+
<p>
|
|
10
|
+
<b>Version 2.1.33</b> - July 2023<br/>
|
|
11
|
+
- HUE Light: fix for lights not supporting GAMUT.<br/>
|
|
12
|
+
</p>
|
|
9
13
|
<p>
|
|
10
14
|
<b>Version 2.1.32</b> - July 2023<br/>
|
|
11
15
|
- NEW: Hue Battery Sensor: you can now get the battery level of all your battery powered HUE devices.<br/>
|
|
@@ -54,7 +54,10 @@ module.exports = function (RED) {
|
|
|
54
54
|
// The user selected specific color/brightness at switch on.
|
|
55
55
|
let jColorChoosen = { red: 255, green: 255, blue: 255 }
|
|
56
56
|
jColorChoosen = JSON.parse(config.colorAtSwitchOnDayTime || '{ "red": 255, "green": 255, "blue": 255 }')
|
|
57
|
-
let dgamut =
|
|
57
|
+
let dgamut = null
|
|
58
|
+
if (node.currentHUEDevice !== undefined && node.currentHUEDevice.hasOwnProperty('color') && node.currentHUEDevice.color.hasOwnProperty('gamut_type')) {
|
|
59
|
+
dgamut = node.currentHUEDevice.color.gamut_type
|
|
60
|
+
}
|
|
58
61
|
let dretXY = hueColorConverter.ColorConverter.rgbToXy(jColorChoosen.red, jColorChoosen.green, jColorChoosen.blue, dgamut)
|
|
59
62
|
let dbright = hueColorConverter.ColorConverter.getBrightnessFromRGB(jColorChoosen.red, jColorChoosen.green, jColorChoosen.blue)
|
|
60
63
|
state = dbright > 0 ? { on: { on: true }, dimming: { brightness: dbright }, color: { xy: dretXY } } : { on: { on: false } }
|
|
@@ -68,7 +71,10 @@ module.exports = function (RED) {
|
|
|
68
71
|
if (config.enableDayNightLighting === true && !node.DayTime) {
|
|
69
72
|
let jColorChoosen = { red: 23, green: 4, blue: 0 }
|
|
70
73
|
jColorChoosen = JSON.parse(config.colorAtSwitchOnNightTime || '{ "red": 23, "green": 4, "blue": 0 }')
|
|
71
|
-
let dgamut =
|
|
74
|
+
let dgamut = null
|
|
75
|
+
if (node.currentHUEDevice !== undefined && node.currentHUEDevice.hasOwnProperty('color') && node.currentHUEDevice.color.hasOwnProperty('gamut_type')) {
|
|
76
|
+
dgamut = node.currentHUEDevice.color.gamut_type
|
|
77
|
+
}
|
|
72
78
|
let dretXY = hueColorConverter.ColorConverter.rgbToXy(jColorChoosen.red, jColorChoosen.green, jColorChoosen.blue, dgamut)
|
|
73
79
|
let dbright = hueColorConverter.ColorConverter.getBrightnessFromRGB(jColorChoosen.red, jColorChoosen.green, jColorChoosen.blue)
|
|
74
80
|
state = dbright > 0 ? { on: { on: true }, dimming: { brightness: dbright }, color: { xy: dretXY } } : { on: { on: false } }
|
|
@@ -145,7 +151,10 @@ module.exports = function (RED) {
|
|
|
145
151
|
break
|
|
146
152
|
case config.GALightColor:
|
|
147
153
|
msg.payload = dptlib.fromBuffer(msg.knx.rawValue, dptlib.resolve(config.dptLightColor))
|
|
148
|
-
|
|
154
|
+
let gamut = null
|
|
155
|
+
if (node.currentHUEDevice !== undefined && node.currentHUEDevice.hasOwnProperty('color') && node.currentHUEDevice.color.hasOwnProperty('gamut_type')) {
|
|
156
|
+
gamut = node.currentHUEDevice.color.gamut_type
|
|
157
|
+
}
|
|
149
158
|
const retXY = hueColorConverter.ColorConverter.rgbToXy(msg.payload.red, msg.payload.green, msg.payload.blue, gamut)
|
|
150
159
|
const bright = hueColorConverter.ColorConverter.getBrightnessFromRGB(msg.payload.red, msg.payload.green, msg.payload.blue)
|
|
151
160
|
//state = bright > 0 ? { on: { on: true }, dimming: { brightness: bright }, color: { xy: retXY } } : { on: { on: false } }
|
|
@@ -185,7 +194,10 @@ module.exports = function (RED) {
|
|
|
185
194
|
const red = getRandomIntInclusive(0, 255)
|
|
186
195
|
const green = getRandomIntInclusive(0, 255)
|
|
187
196
|
const blue = getRandomIntInclusive(0, 255)
|
|
188
|
-
|
|
197
|
+
let gamut = null
|
|
198
|
+
if (node.currentHUEDevice !== undefined && node.currentHUEDevice.hasOwnProperty('color') && node.currentHUEDevice.color.hasOwnProperty('gamut_type')) {
|
|
199
|
+
gamut = node.currentHUEDevice.color.gamut_type
|
|
200
|
+
}
|
|
189
201
|
const retXY = hueColorConverter.ColorConverter.rgbToXy(red, green, blue, gamut)
|
|
190
202
|
const bright = hueColorConverter.ColorConverter.getBrightnessFromRGB(red, green, blue)
|
|
191
203
|
state = bright > 0 ? { on: { on: true }, dimming: { brightness: bright }, color: { xy: retXY } } : { on: { on: false } }
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"engines": {
|
|
4
4
|
"node": ">=16.0.0"
|
|
5
5
|
},
|
|
6
|
-
"version": "2.1.
|
|
6
|
+
"version": "2.1.33",
|
|
7
7
|
"description": "Control your KNX intallation via Node-Red! Single Node KNX IN/OUT with optional ETS group address importer. Easy to use and highly configurable. With integrated Philips HUE devices handling.",
|
|
8
8
|
"dependencies": {
|
|
9
9
|
"mkdirp": "3.0.1",
|