node-red-contrib-knx-ultimate
Version:
Control your KNX and KNX Secure intallation via Node-Red! A bunch of KNX nodes, with integrated Philips HUE control, ETS group address importer, and KNX routing between interfaces. Easy to use and highly configurable.
66 lines (46 loc) • 2.29 kB
HTML
<script type="text/markdown" data-help-name="knxUltimateGlobalContext">
Dieser Node spiegelt empfangene Gruppenadressen in eine globale Kontext-Variable\
und ermöglicht auch das Schreiben auf den KNX-BUS über diese Variable.
- Füge den Global-Context-Node in den Flow ein und gib ihm einen Namen. Dieser Name ist die Basis der globalen Variable.
- Lesen per Suffix `_READ` (z. B. `MeineVar_READ`).
- Schreiben per Suffix `_WRITE` (z. B. `MeineVar_WRITE`).
- Im Dialog lässt sich die Variable als Read-Only oder Read/Write exposen.
- Ändere aus Sicherheitsgründen den Standardnamen.
Hinweis: Nach der Ausführung werden Einträge in `<Name>_WRITE` automatisch geleert, um Endlosschleifen zu vermeiden.
| Property | Beschreibung |
|--|--|
| Gateway | KNX-Gateway. |
| Variablenname (keine Leerzeichen, nur Zeichen [a-z]) | Basisname der globalen Variable. Es werden `<Name>_READ` (Lesen) und `<Name>_WRITE` (Schreiben) erstellt. Wähle aus Sicherheitsgründen keinen Standardnamen. |
| Als globale Variable verfügbar machen | Ob und wie die Variable exponiert wird. Wenn kein Schreiben nötig ist, "read only" wählen. |
| BUS-Schreibintervall | Prüfintervall, in dem `<Name>_WRITE` ausgewertet und an den BUS gesendet wird. |
```javascript
{
address: "0/0/1",
dpt: "1.001",
payload: true,
devicename: "Dinning Room->Table Light"
}
```
```javascript
const list = global.get("KNXContextBanana_READ") || [];
node.send({ payload: list });
const ga = list.find(a => a.address === "0/0/10");
if (ga && ga.payload === true) return { payload: "FOUND AND TRUE" };
if (ga && ga.payload === false) return { payload: "FOUND AND FALSE" };
```
```javascript
const toSend = [];
toSend.push({ address: "0/0/10", dpt: "1.001", payload: msg.payload });
toSend.push({ address: "0/0/11", payload: msg.payload }); // DPT kann mit ETS-Import entfallen
global.set("KNXContextBanana_WRITE", toSend);
```
<a href="https://supergiovane.github.io/node-red-contrib-knx-ultimate/wiki/SampleGlobalContextNode" target="_blank"><i class="fa fa-info-circle"></i> Beispiel ansehen</a>
</script>