Systemvariable in function abfragen

Node-RED als CCU3/RaspberryMatic Addon, WebApp, HomeKit, ...

Moderator: Co-Administratoren

Antworten
Bratmaxe
Beiträge: 1573
Registriert: 28.05.2015, 12:48
Wohnort: Willich
Hat sich bedankt: 4 Mal
Danksagung erhalten: 10 Mal

Systemvariable in function abfragen

Beitrag von Bratmaxe » 16.10.2018, 08:13

Hallo,

ich habe RedMatic erst gestern Abend installiert, befinde mich also noch ganz am Anfang der Lernkurve.

Ich habe mir das Beispiel-Flow "UNREACH Servicemeldung unterdrücken" importiert.

Im darin enthaltenen function Node gibt es folgenden Code:

Code: Alles auswählen

const channels = [
    'Elternzimmer_Rauchmelder:0',
    'Kinderzimmer_Rauchmelder:0'
];

if (msg.payload && channels.includes(msg.channelName)) {
    msg.payload = ['nr', msg.channel, 'UNREACH', false];
    return msg;    
}
Nun kam ich auf die Idee, statt hier die Kanäle feste einzutragen, eine Systemvariable zu erstellen, wo ich die Kanäle eintrage von denen die UNREACH-Meldung unterdrückt werden soll. Die Variabel habe ich in der CCU angelegt und habe dort ebenfalls den String

Code: Alles auswählen

Elternzimmer_Rauchmelder:0,Kinderzimmer_Rauchmelder:0
eingetragen. Hier musst ich als Trennzeichen aber ein ";" nehmen, das das "," bewirkt, das der nachfolgende Wert nicht in die Variable übernommen wird. (warum weiss ich nicht) (lag an TinyMatic, über WebUi geht es)
Aber ich habe keine Idee, wie ich hier im Code an den Inhalt der Variable komme (ist vermutlich ganz einfach). Könnt ihr mir hier ein paar Tipps geben?

Gruß Carsten
Gruß Carsten

hobbyquaker
Beiträge: 3978
Registriert: 12.07.2009, 20:01
Hat sich bedankt: 17 Mal
Danksagung erhalten: 176 Mal
Kontaktdaten:

Re: Systemvariable in function abfragen

Beitrag von hobbyquaker » 17.10.2018, 21:27

Ist machbar, aber nicht ganz trivial. Kurz zusammengefasst: ein Sysvar Node mit einem Change Node verbinden der den Wert im "Context" speichert. Im Script dann den Wert aus dem Context mittels .split(',') in ein Array zerlegen. Ich klicks Dir am Wochenende mal zusammen.

Bratmaxe
Beiträge: 1573
Registriert: 28.05.2015, 12:48
Wohnort: Willich
Hat sich bedankt: 4 Mal
Danksagung erhalten: 10 Mal

Re: Systemvariable in function abfragen

Beitrag von Bratmaxe » 17.10.2018, 21:41

Danke, ich werde mich mal dran versuchen
Gruß Carsten

Benutzeravatar
joni-blue
Beiträge: 1171
Registriert: 04.01.2012, 12:20
System: CCU
Wohnort: Hannover
Hat sich bedankt: 6 Mal
Danksagung erhalten: 1 Mal

Re: Systemvariable in function abfragen

Beitrag von joni-blue » 10.03.2022, 19:07

hi,

funktioniert das script auch für HomeMatic IP Geräte?
lg
Reboot tut gut ! ! !

Bratmaxe
Beiträge: 1573
Registriert: 28.05.2015, 12:48
Wohnort: Willich
Hat sich bedankt: 4 Mal
Danksagung erhalten: 10 Mal

Re: Systemvariable in function abfragen

Beitrag von Bratmaxe » 10.03.2022, 21:14

Ich habe redmatic nicht mehr im Einsatz ich verwende nun Iobroker..
Gruß Carsten

Antworten

Zurück zu „RedMatic“