Ausgabe von Attributen im Command-Teil

Begonnen von habnefrage, 21 Februar 2016, 14:09:23

Vorheriges Thema - Nächstes Thema

habnefrage

Hi,
mein DOIF sendet an WhatsApp, wenn ein Fenster länger als zehn Minuten geöffnet ist.
mit $DEVICE kann ich den Devicenamen ausgeben. Diese sind allerdings recht kryptisch. Ich würde deshalb lieber das gesetzte Attribut alias ausgeben lassen.

Ein Kommand könnt z.B. sein ({Log 3,"Fenster $DEVICE.AttributName(alias) ist zu lange offen.")
oder sowas (set WhatsappGruppe send Fenster $DEVICE.AttributName(alias) ist zu lange offen.)


Würde mir jemand zeigen wie man das machen kann?

Danke

Ellert

Schau mal in der Commandref nach AttrVal, damit kannst Du auf Attributwerte zugreifen.

Sirel

Hallo Ellert,
kann man das auch in Verbindung mit Strukturen anwenden? Derzeit läuft es bei mir so ähnlich wie bei @Habnefrage.

(set Whatsapp send Bitte [struc_FTK_Garage:LastDevice] schließen!)

Vielen Dank und Grüße,
Max

Damian

#3
Zitat von: Sirel am 21 Februar 2016, 20:54:20
Hallo Ellert,
kann man das auch in Verbindung mit Strukturen anwenden? Derzeit läuft es bei mir so ähnlich wie bei @Habnefrage.

(set Whatsapp send Bitte [struc_FTK_Garage:LastDevice] schließen!)

Vielen Dank und Grüße,
Max

(set Whatsapp send Bitte {(AttrVal("[struc_FTK_Garage:LastDevice]" ,"alias","[struc_FTK_Garage:LastDevice]"))} schließen!)

Edit: @habnefrage

(set WhatsappGruppe send Fenster {(AttrVal("$DEVICE" ,"alias","$DEVICE"))} ist zu lange offen.)

sollte so funktionieren.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Sirel

Hi Damian,

vielen Dank. Habe es direkt mal ausprobiert. Ich erhalten jetzt einen Fehler als Reading error  - no right bracket.
Für mich sieht das DOIF aber sehr vollständig aus, es kommt auch zu keiner Fehlermeldung beim abspeichern.
([struc_FTK_Garage] eq "open" and [Garagensteuerung] ne "Lüften") (set Whatsapp send {(AttrVal("[struc_FTK_Garage:LastDevice]" ,"alias","[struc_FTK_Garage:LastDevice]"))} schließen!) DOELSEIF ([struc_FTK_Garage] eq "closed") (set Whatsapp send {(AttrVal("[struc_FTK_Garage:LastDevice]" ,"alias","[struc_FTK_Garage:LastDevice]"))} geschlossen) DOELSE

Aus meiner Sicht sind alle Klammer geschlossen? Woran kann das noch liegen?

Vielen Dank vorab und Grüße,
Max

Damian

Zitat von: Sirel am 21 Februar 2016, 23:08:44
Hi Damian,

vielen Dank. Habe es direkt mal ausprobiert. Ich erhalten jetzt einen Fehler als Reading error  - no right bracket.
Für mich sieht das DOIF aber sehr vollständig aus, es kommt auch zu keiner Fehlermeldung beim abspeichern.
([struc_FTK_Garage] eq "open" and [Garagensteuerung] ne "Lüften") (set Whatsapp send {(AttrVal("[struc_FTK_Garage:LastDevice]" ,"alias","[struc_FTK_Garage:LastDevice]"))} schließen!) DOELSEIF ([struc_FTK_Garage] eq "closed") (set Whatsapp send {(AttrVal("[struc_FTK_Garage:LastDevice]" ,"alias","[struc_FTK_Garage:LastDevice]"))} geschlossen) DOELSE

Aus meiner Sicht sind alle Klammer geschlossen? Woran kann das noch liegen?

Vielen Dank vorab und Grüße,
Max

Es liegt am Komma.
Du musst dein Kommando in doppelte Klammern packen ((set...  oder die morgige DOIF-Version nehmen.

Gruß
Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Sirel

Hi Damian,

danke für die schnelle Antwort! Dann warte ich bis morgen auf Dein Update!

Besten Dank und noch einen schönen Abend,

Max

habnefrage