Ich bin noch recht hilflos ....
Ich sehe folgendes Bild, siehe Anhang.
So weit, so gut. Was ich wirklich sehen will, ist in der Alarmzeile : Offen ode Geschlossen.
Wie mache ich das am besten ?
Schau Dir mal das Attribut stateFormat an. http://fhem.de/commandref_DE.html#attributes
Hallo,
um welches Gerät handelt es sich?
Mach doch mal ein 'list Gerätename' oben in dem "Befehlsfenster" deines fhem und poste das Ergebnis in "code-tags", das '#' in der "Menüleiste"...
Ansonsten wird es schwer mit Hilfe.
Eventuell hilft 'eventMap':
http://www.fhemwiki.de/wiki/EventMap (http://www.fhemwiki.de/wiki/EventMap)
Aber bei dem wenigen Input wird nicht viel Output (Hilfe) kommen...
Gruß, Joachim
zusätzlich zu dem was MadMax geschrieben hat, sag doch auch was du gerne sehen möchtest. Also nix sehen wenn alles ok und nur eine Nachricht wenn nicht? Evtl ein icon für zu wenn zu und eins für offen wenn offen?
Das ist ein Philio Multisensor. Ist das Tor geschlossen, sehe ich folgende Readings ( Anhang ).
Ist das Tor offen, aendert sich richtigerweise die Alarmzeile in : AccessControl: Window/Door is open, arg 00.
In der Uebersicht zeigt mir das Device seinen 'state' an, TRANSMIT_NO_ACK.
Was ich stattdessen sehen will, ist obige Alarmzeile. Aber nicht den jeweils langen Text, sondern nur ein *offen' oder 'geschlossen.
Die anderen Ergebnisse des Multisensors sind erstmal uninteressant.
Hoffe , das wird klarer ...
Danke, Wolfgang
Wie gesagt mit stateFormat, prinzipiell etwa so:
attr <Name> stateFormat {
if (ReadingsVal($NAME,"AccessControl","nix") eq "Window/Door is open, arg 00") {
return "offen"
} elsif (ReadingsVal($NAME,"AccessControl","nix") eq "<Zeichenkette für "geschlossen">") {
return "geschlossen"
}
}
ungetestet, Syntax ggf. unvollständig
Transmit_no_ack heißt ja, dass die Verbindung nicht gut ist bzw. mindestens das letzte Kommando nicht richtig übertragen wurde...
Vielleicht erst mal das sauber hinkriegen und sehen was dann im state steht vielleicht steht ja dann drin was du willst...
Wenn nicht, dann mal mit den anderen Hinweisen weiter suchen/probieren.
Schlimmstenfalls einen dummy anlegen und dann per notify dort setzen was immer du gerne hättest...
Allerdings Screenshots sind nicht (immer) optimal...
Ein 'list device_name' hier in "code-tags" gepostet ist deutlich besser...
Gruß, Joachim
Danke fuer die Hilfe, das hier funktioniert fuer stateFormat:
{
if (ReadingsVal("Garagensensor","alarm","") eq "AccessControl: Window/Door is open, arg 00") {
return "offen"
} elsif (ReadingsVal("Garagensensor","alarm","") eq "AccessControl: Window/Door is closed, arg 00") {
return "geschlossen"
}
}
Das Transmit_no_ack stoert nicht weiter, das aendert sich auch nicht, wenn ich den Sensor neben den Gateway lege.
Kann sein , dass ich falsch liege, aber hier geht die Kommunikation ja eigentlich immer nur vom Sensor zum Gateway.
Zumindest funktioniert es zuverlaessig.
Danke, Wolfgang