FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Jack-Luck am 30 August 2017, 14:46:25

Titel: AMAD - Werte abfragen
Beitrag von: Jack-Luck am 30 August 2017, 14:46:25
Hallo,

ich würde gerne einen Flow erstellen der mir sagt ob ein Fenster geöffnet ist, erstmal soll es mit einem Shortcut gestartet werden.
Die ausgabe soll über Sprachausgabe passieren.
Ich bekomme es jedoch nicht hin den Status abzufragen geschweige denn den Status weiter zu verarbeiten.

Status eines Device abfragen

readingsvalcmd = "DEVICE READING DEFAULT";

fhemcmd = "readingsval"

Die Rückgabevariable welche dann weiter verarbeitet werden kann, heißt respreadingsval


-->Wie würde das mit einem MAX Fensterkontakt aussehen?<--


Gibt es vielleicht fertige Flows wo ich mir das angucken könnte? So das ich das mit dem readingsval und respreadingsval verstehe?

Vielen dank
Jack
Titel: Antw:AMAD - Werte abfragen
Beitrag von: CoolTux am 30 August 2017, 14:56:16
Aktion Script
Im Script steht drin


readingsvalcmd = "DEVICENAME READINGNAME DEFAULTWERT";
fhemcmd = "readingsval"

Danach Flow Aufruf Flow "Send Data to..."
Punkte mit Anhängen
Warte bis aufgerufener Flow
Variable an aufgerufenen Flow


In Sprachausgabe kommt dann der Wert, also Open closed in der Variablen "respreadingsval" an.
Titel: Antw:AMAD - Werte abfragen
Beitrag von: Jack-Luck am 30 August 2017, 15:26:05
Vielen dank CoolTux,

jetzt hab ich verstanden wo ich das "respreadingsval" reinschreiben muss. Und schon Funktioniert es. :)
Jetzt muss ich mal gucken ob ich es hinbekomme ob er mir auch sagen kann welches fenster noch offen ist.
Titel: Antw:AMAD - Werte abfragen
Beitrag von: CoolTux am 30 August 2017, 16:09:22
Du hast die Möglichkeit seit neustem eine Subroutine aus einer 99_myUtils aus Automagic auf zu rufen. Ich glaube im Wiki oder der Commandref steht dazu was. Bin aber noch nicht zum testen gekommen. Sollte aber gehen.
Titel: Antw:AMAD - Werte abfragen
Beitrag von: CoolTux am 30 August 2017, 18:25:18
Habe gerade noch mal getestet. Klappt super

Skript
fhemsub = "statusFensterOffen()";
fhemcmd = "fhemfunc"


Response Variable
Es sind {respfhemfunc} offen
Titel: Antw:AMAD - Werte abfragen
Beitrag von: CoolTux am 30 August 2017, 18:34:37
Das wichtigste fast vergessen.
Das Attribut enableSubCalls muss in der Bridge gesetzt sein.
Titel: Antw:AMAD - Werte abfragen
Beitrag von: Jack-Luck am 30 August 2017, 18:54:14
Ja klappt bei mir auch, nur leider wird bei mir FK_Wohnzimmer ausgegeben. Schön wäre es wenn er
Wohnzimmer sagen würde.
Titel: Antw:AMAD - Werte abfragen
Beitrag von: CoolTux am 30 August 2017, 19:19:03
Dann sage doch in Deiner Sub was er zurück geben soll. Also zum Beispiel wenn alias vergeben ist soll er alias zurück geben.
Titel: Antw:AMAD - Werte abfragen
Beitrag von: Jack-Luck am 30 August 2017, 19:21:51
und wie mache ich das wenn nichts auf ist, dann soll er zb. sagen " Es sind alle Fenster geschlossen"
Titel: Antw:AMAD - Werte abfragen
Beitrag von: CoolTux am 30 August 2017, 19:24:46
Dann kommt nichts zurück und Automagic macht dann ein null daraus. Du kannst also noch vor der Durchsage eine Condition machen welche den Inhalt der Variablen prüft oder ein Skript davor machen welches eine Abfrage der Variable macht und basierend darauf dann eine neue Variable für den antworttext erstellt.
Titel: Antw:AMAD - Werte abfragen
Beitrag von: Jack-Luck am 30 August 2017, 19:31:46
ah okay, verstanden! Vielen dank das du mir dabei geholfen hast. Ich muss noch viel lernen was FHEM angeht.  ;D
Titel: Antw:AMAD - Werte abfragen
Beitrag von: CoolTux am 30 August 2017, 19:35:33
Immer wieder gerne.


Grüße
Titel: Antw:AMAD - Werte abfragen
Beitrag von: Jack-Luck am 30 August 2017, 21:06:29
Ich muss dich nochmal nerven, bei mir sagt er nicht "null", sondern spuckt einfach kein Wert aus. Damit kann ich doch kein Condition machen?
Titel: Antw:AMAD - Werte abfragen
Beitrag von: CoolTux am 30 August 2017, 21:31:41
Mach mal am Ende eine Condition debug und schaue mal nach welchen inhalt die variable respblabla da hat. eigentlich müsste das null sein.
Titel: Antw:AMAD - Werte abfragen
Beitrag von: Jack-Luck am 30 August 2017, 21:44:55
dann zeigt er mir bei respfhemfunc keinen Wert. Nichts, leer.
Titel: Antw:AMAD - Werte abfragen
Beitrag von: CoolTux am 30 August 2017, 22:09:55
Dann machen wir es halt anders

Skript
fhemsub = "statusFensterOffen()";
fhemcmd = "fhemfunc"
respfhemfunc = "da ist nischt"


Und nun fragste halt ab ist respfhemfunc ==  "da ist nischt" Sprachausgabe "Du hast gar keine Fenster"
Titel: Antw:AMAD - Werte abfragen
Beitrag von: Jack-Luck am 31 August 2017, 11:10:50
Jetzt läuft alles wie ich mir das vorgestellt habe, vielen dank nochmal! :D
Titel: Antw:AMAD - Werte abfragen
Beitrag von: CoolTux am 31 August 2017, 12:06:49
Supi. Gerne doch. Bis bald


Grüße