TelegramBot ID's bekannt machen

Begonnen von dennis_n, 21 September 2019, 22:22:16

Vorheriges Thema - Nächstes Thema

dennis_n

Ich habe gerade noch ne andere Methode gefunden, wie ich mir alle anzeigen lassen kann, die auf Status 2 oder Status 6 stehen.
Dazu habe ich einfach ein DOIF angelegt mit folgendem Code im Ausführungsteil:

[#"^id_":state:"Status 2"]

Damit gibt mir das DOIF im state die Gesamtzahl alle Devices an, die mit id_ beginnen und im state Status 2 stehen haben. Funktioniert einwandfrei.
Müsste doch dann für KOMME und Komme NICHT auch funktionieren.

Gruss
Dennis

dennis_n

So, ich habe es hinbekommen. Keine AHnung ob das so richtig ist oder nicht, aber es funktioniert.

Ich habe ein dummy device angelegt mit dem Namen Gesamtstaerke. Dieses Device hat 4 Readings: Status2, Status6, Komme und KommeNicht.
Dann habe ich ein DOIF angelegt, welches folgendes macht:

([#"^id_":state:"Status 2"])
(setreading Gesamtstaerke Status2 [#"^id_":state:"Status 2"],
setreading Gesamtstaerke Status6 [#"^id_":state:"Status 6"],
setreading Gesamtstaerke Komme [#"^id_":state:"^Komme$"],
setreading Gesamtstaerke KommeNicht [#"^id_":state:"Komme NICHT"])


Das DOIF hat das Attribut do always.

Somit schreibe ich immer, wenn sich an irgendeinem Status etwas ändert. die aktuelle Zahl in mein Dummy Gesamtstaerke.
Wenn jetzt jemand mehrfach drückt, wird nichts hochgezählt, da sein Reading ja nciht weiter verändert wird.

Was meint ihr?

Gruss
Dennis