Hallo Gemeinde,
ich möchte aus einem Notify die Uhrzeit auslesen. Wie kann ich das bewerkstelligen? Anbei ein Screenshot des Notify.
Wenn ich folgendes versuche:
{ReadingsTimestamp("nBriefkasten_Voll","state","")}
Bekomme ich "2017-10-13 10:18:36" zurück. Eigentlich erwarte ich jedoch "2017-10-13 23:11:28". Des weiteren interessiert mich eigentlich nur die Uhrzeit, nicht das Datum.
Wer kann mir Tipps geben wie ich vorgehen muss?
Danke :)
ZitatEigentlich erwarte ich jedoch "2017-10-13 23:11:28".
Aber laut Bildschirmkopie ist es doch 2017-10-13 10:18:36
Hi,
Tja STATE ist nicht gleich state.
mit Value() sollte das klappen. Dann kannst Du mit split die Zeit und Datum trennen.
Gruß Otto
Zitat von: Otto123 am 13 Oktober 2017, 23:53:25
Tja STATE ist nicht gleich state.
mit Value() sollte das klappen. Dann kannst Du mit split die Zeit und Datum trennen.
Besten Dank für den Hinweis.
{Value("nBriefkasten_Voll")}
funktioniert prima. Werde mich noch mit dem Split befassen um das Datum ab zu schneiden :)
Danke.
my ($valueDate,$valueTime) = split(' ',Value("nBriefkasten_Voll"));
Du musst aber aufpassen: ein notify hat nicht immer ein Timestamp als STATE. Es kann auch "active" oder "inactive" sein.
Z.B. ist es "active" nach einem Restart, bis zum ersten triggern...
Danke für die Hinweise.
Ich habe noch ein kleines anderes Problem: wie kann ich eine Aktualisierung des dummy erreichen?
define Briefkasten_Uhrzeit dummy
attr Briefkasten_Uhrzeit stateFormat {Value("nBriefkasten_Voll")}
Jedes Mal wenn ich manuell das Attribut anklicke und speichere, wird es aktualisiert. Natürlich soll das automatisch erfolgen. :o Muss ich einem anderen Notify einen Befehl mitgeben um diesen Dummy auszuführen?
Wofür brauchst Du ein zusätzliches Dummy jetzt? Value("nBriefkasten_Voll") hast Du schon im STATE vom notify!??
Hm, da hast du ja recht :D
Gelöst mit folgendem Code (ich hoffe ich hab eure Zustimmung, dass es sinnvoll gelöst ist) :)
<div data-type="label" data-device="nBriefkasten_Voll" data-get-value="nBriefkasten_Voll" data-color="#aa6900" class="inline small"></div>