node-red-contrib-knx-ultimate 2.4.15 → 2.4.18
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 +5 -1
- package/RBEtrueFalse.json +55 -0
- package/nodes/knxUltimate.html +21 -5
- package/nodes/knxUltimate.js +1 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -6,7 +6,11 @@
|
|
|
6
6
|
|
|
7
7
|
# CHANGELOG
|
|
8
8
|
|
|
9
|
-
**Version 2.4.
|
|
9
|
+
**Version 2.4.18** - April 2024<br/>
|
|
10
|
+
- Warning: this version uses the Node-Red plugin system; the Node-Red version must be **equals or major than 3.1.1**<br/>
|
|
11
|
+
- Fixed some backward compatibility glitches in the KNX-Device's UI.<br/>
|
|
12
|
+
|
|
13
|
+
**Version 2.4.16** - April 2024<br/>
|
|
10
14
|
- Warning: this version uses the Node-Red plugin system; the Node-Red version must be **equals or major than 3.1.1**<br/>
|
|
11
15
|
- NEW: Home Assistant translator node: translates the HA input msg, to a KNX value. Comes with a built-in translation table, that's user editable.<br/>
|
|
12
16
|
- NEW: HUE Contact Sensor node.<br/>
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"id": "bbc41a15b589edd3",
|
|
4
|
+
"type": "knxUltimate",
|
|
5
|
+
"z": "a108904.7aa037",
|
|
6
|
+
"server": "a01c5d80.1bbb78",
|
|
7
|
+
"topic": "3/1/18",
|
|
8
|
+
"outputtopic": "",
|
|
9
|
+
"dpt": "1.009",
|
|
10
|
+
"initialread": false,
|
|
11
|
+
"notifyreadrequest": false,
|
|
12
|
+
"notifyresponse": false,
|
|
13
|
+
"notifywrite": true,
|
|
14
|
+
"notifyreadrequestalsorespondtobus": false,
|
|
15
|
+
"notifyreadrequestalsorespondtobusdefaultvalueifnotinitialized": "",
|
|
16
|
+
"listenallga": false,
|
|
17
|
+
"name": "Porta REI apri/chiudi [ON/OFF]",
|
|
18
|
+
"outputtype": "write",
|
|
19
|
+
"outputRBE": true,
|
|
20
|
+
"inputRBE": true,
|
|
21
|
+
"formatmultiplyvalue": "1",
|
|
22
|
+
"formatnegativevalue": "leave",
|
|
23
|
+
"formatdecimalsvalue": "999",
|
|
24
|
+
"passthrough": "no",
|
|
25
|
+
"x": 700,
|
|
26
|
+
"y": 1580,
|
|
27
|
+
"wires": [
|
|
28
|
+
[]
|
|
29
|
+
]
|
|
30
|
+
}
|
|
31
|
+
]
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
[
|
|
35
|
+
{
|
|
36
|
+
"id": "48937ee6.d1bac",
|
|
37
|
+
"type": "knxUltimate",
|
|
38
|
+
"z": "10f01cd3.a2c053",
|
|
39
|
+
"server": "a01c5d80.1bbb78",
|
|
40
|
+
"topic": "0/1/0",
|
|
41
|
+
"dpt": "1.001",
|
|
42
|
+
"initialread": false,
|
|
43
|
+
"notifyreadrequest": false,
|
|
44
|
+
"notifyresponse": false,
|
|
45
|
+
"notifywrite": true,
|
|
46
|
+
"listenallga": false,
|
|
47
|
+
"name": "Corridoio e scala luce",
|
|
48
|
+
"outputtype": "write",
|
|
49
|
+
"x": 900,
|
|
50
|
+
"y": 2980,
|
|
51
|
+
"wires": [
|
|
52
|
+
[]
|
|
53
|
+
]
|
|
54
|
+
}
|
|
55
|
+
]
|
package/nodes/knxUltimate.html
CHANGED
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
outputs: 1,
|
|
32
32
|
icon: "node-knx-icon.svg",
|
|
33
33
|
label: function () {
|
|
34
|
-
return (this.outputRBE === "true" ? "|rbe| " : "") + (this.name || this.topic || "KNX Device") + (this.inputRBE === "true" ? " |rbe|" : "")
|
|
34
|
+
return ((this.outputRBE === "true" || this.outputRBE === true) ? "|rbe| " : "") + (this.name || this.topic || "KNX Device") + ((this.inputRBE === "true" || this.inputRBE === true) ? " |rbe|" : "")
|
|
35
35
|
},
|
|
36
36
|
paletteLabel: "KNX DEVICE",
|
|
37
37
|
// button: {
|
|
@@ -49,6 +49,7 @@
|
|
|
49
49
|
// onclick: function() {}
|
|
50
50
|
// },
|
|
51
51
|
oneditprepare: function () {
|
|
52
|
+
|
|
52
53
|
var node = this;
|
|
53
54
|
var oNodeServer = RED.nodes.node($("#node-input-server").val()); // Store the config-node
|
|
54
55
|
$("#tabs").tabs();
|
|
@@ -99,23 +100,32 @@
|
|
|
99
100
|
}
|
|
100
101
|
|
|
101
102
|
function checkUI() {
|
|
103
|
+
|
|
102
104
|
// Backward compatibility
|
|
103
|
-
if (node.outputRBE === true) {
|
|
105
|
+
if (node.outputRBE === true || $("#node-input-outputRBE").val() === true) {
|
|
104
106
|
node.outputRBE = 'true';
|
|
105
107
|
$("#node-input-outputRBE").val("true")
|
|
106
108
|
}
|
|
107
|
-
if (node.outputRBE === false) {
|
|
109
|
+
if (node.outputRBE === undefined || node.outputRBE === false || $("#node-input-outputRBE").val() === false) {
|
|
108
110
|
node.outputRBE = 'false';
|
|
109
111
|
$("#node-input-outputRBE").val("false")
|
|
110
112
|
}
|
|
111
|
-
if (node.inputRBE === true) {
|
|
113
|
+
if (node.inputRBE === true || $("#node-input-inputRBE").val() === true) {
|
|
112
114
|
node.inputRBE = 'true';
|
|
113
115
|
$("#node-input-inputRBE").val("true")
|
|
114
116
|
}
|
|
115
|
-
if (node.inputRBE === false) {
|
|
117
|
+
if (node.inputRBE === undefined || node.inputRBE === false || $("#node-input-inputRBE").val() === false) {
|
|
116
118
|
node.inputRBE = 'false';
|
|
117
119
|
$("#node-input-inputRBE").val("false")
|
|
118
120
|
}
|
|
121
|
+
if (node.passthrough === undefined) {
|
|
122
|
+
node.passthrough = 'no';
|
|
123
|
+
$("#node-input-passthrough").val("no")
|
|
124
|
+
}
|
|
125
|
+
if (node.initialread === undefined || node.initialread === false) {
|
|
126
|
+
node.initialread = 0;
|
|
127
|
+
$("#node-input-initialread").val(0)
|
|
128
|
+
}
|
|
119
129
|
|
|
120
130
|
oNodeServer = RED.nodes.node($("#node-input-server").val());
|
|
121
131
|
if (oNodeServer === undefined) {
|
|
@@ -354,6 +364,12 @@
|
|
|
354
364
|
}
|
|
355
365
|
})
|
|
356
366
|
|
|
367
|
+
// RED.events.on("nodes:change", function (node) {
|
|
368
|
+
|
|
369
|
+
// checkUI();
|
|
370
|
+
|
|
371
|
+
// });
|
|
372
|
+
|
|
357
373
|
</script>
|
|
358
374
|
|
|
359
375
|
<script type="text/html" data-template-name="knxUltimate">
|
package/nodes/knxUltimate.js
CHANGED
|
@@ -23,6 +23,7 @@ module.exports = function (RED) {
|
|
|
23
23
|
node.notifywrite = config.notifywrite;
|
|
24
24
|
node.initialread = config.initialread || 0;
|
|
25
25
|
if (node.initialread === true) node.initialread = 1; // 04/04/2021 Backward compatibility
|
|
26
|
+
if (node.initialread === false) node.initialread = 0; // 04/04/2021 Backward compatibility
|
|
26
27
|
node.initialread = Number(config.initialread);
|
|
27
28
|
node.listenallga = config.listenallga || false;
|
|
28
29
|
node.outputtype = config.outputtype || 'write';// When the node is used as output
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"engines": {
|
|
4
4
|
"node": ">=16.0.0"
|
|
5
5
|
},
|
|
6
|
-
"version": "2.4.
|
|
6
|
+
"version": "2.4.18",
|
|
7
7
|
"description": "Control your KNX intallation via Node-Red! A bunch of KNX nodes, with integrated Philips HUE control and ETS group address importer. Easy to use and highly configurable.",
|
|
8
8
|
"dependencies": {
|
|
9
9
|
"binary-parser": "2.2.1",
|