NEWS
On-Funktion mit mehreren Triggerquellen
-
Hallo, ich hoffe der Titel ist nicht alzu verwirrend. Ich habe zwei Zigbee Taster mit je 6 Tasten von Aqara. Die sollen sich gleich verhalten. Also Taste 4 bei Taster A soll das gleiche Event wie Taste 4 bei Taster B auslösen. Kann man dies mit einer On-Funktion realisieren, oder braucht jeder Taster seinen eigenen Satz an On-Funktionen? Habe mir die Hilfe zur On-Funktion angesehen, werde da aber nicht so recht schlau daraus.
-
Hallo, ich hoffe der Titel ist nicht alzu verwirrend. Ich habe zwei Zigbee Taster mit je 6 Tasten von Aqara. Die sollen sich gleich verhalten. Also Taste 4 bei Taster A soll das gleiche Event wie Taste 4 bei Taster B auslösen. Kann man dies mit einer On-Funktion realisieren, oder braucht jeder Taster seinen eigenen Satz an On-Funktionen? Habe mir die Hilfe zur On-Funktion angesehen, werde da aber nicht so recht schlau daraus.
@pk68 Wenn Du dir die Funktionsbeschreibung anschaust, kannst sowohl einen String, als auch ein Array mitgeben:

oder einen regulären Ausdruck.
Wenn das eindeutig ist, dann kannst auch Wildcards im String nutzen (wahrscheinlich wird das dann als regulärer Ausdruck genutzt).Im Prinzip müsste also folgendes gehen :
zigbee.0.*.Taste4 gehen, um alle Taster, die einen Datenpunkt Taste4 haben triggern.Wahrscheinlich geht auch so was:
zigbee.0.TasterA.* und dann triggern alle Punkte unter dem TasterA und dann analysierst Du in der function welche Unterpunkt getriggert hat. -
@pk68 Wenn Du dir die Funktionsbeschreibung anschaust, kannst sowohl einen String, als auch ein Array mitgeben:

oder einen regulären Ausdruck.
Wenn das eindeutig ist, dann kannst auch Wildcards im String nutzen (wahrscheinlich wird das dann als regulärer Ausdruck genutzt).Im Prinzip müsste also folgendes gehen :
zigbee.0.*.Taste4 gehen, um alle Taster, die einen Datenpunkt Taste4 haben triggern.Wahrscheinlich geht auch so was:
zigbee.0.TasterA.* und dann triggern alle Punkte unter dem TasterA und dann analysierst Du in der function welche Unterpunkt getriggert hat. -
@mickym sagte: Im Prinzip müsste also als String gehn: zigbee.0.*.Taste4 gehen
Als String muss die ID eindeutig sein. Als RegExp funktioniert es mit *.
/zigbee\.0\..*\.Taste4$/ -
@paul53 Und geht das
zigbee.0.TasterA.*
??? oder geht das nicht weil nicht eindeutig und muss
/zigbee\.0\.TasterA\..*$/heißen???
-
@paul53 Also nur als regulärer Ausdruck wie unten und keine Wildcards in Strings und Arrays?
-
Danke Euch beiden für die schnelle Antwort. Hätte vielleicht erwähnen sollen, dass ich noch einen weiteren Schalter aus der Serie habe, welcher in einem anderen Raum liegt und deshalb einen andere Funktionalität hat. Also Wildcard ist keine Option.
Aber Array sollte gehen?on({id: ['zigbee.0.04cf8cdf3c7d31cd.button_4_click','zigbee.0.54ef441000179e04.button_4_click'], val: true}, function (obj) { }); -
Danke Euch beiden für die schnelle Antwort. Hätte vielleicht erwähnen sollen, dass ich noch einen weiteren Schalter aus der Serie habe, welcher in einem anderen Raum liegt und deshalb einen andere Funktionalität hat. Also Wildcard ist keine Option.
Aber Array sollte gehen?on({id: ['zigbee.0.04cf8cdf3c7d31cd.button_4_click','zigbee.0.54ef441000179e04.button_4_click'], val: true}, function (obj) { });
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden