FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Depechem am 03 September 2017, 14:18:17

Titel: [gelöst]Timestamp (Zeitstempel) statt open/closed in Pushover-Nachricht
Beitrag von: Depechem am 03 September 2017, 14:18:17
Ich möchte im DOIF, notify oder Pushovernachricht aus dem Reading "state" nicht den angezeigten "open" "closed" Status weitergeben sondern den Zeitspempel dahinter.
state closed 2017-09-03 14:13:28

im DOIF sieht es bei mir so aus:

([8_fach_Sender_Hoftor_Btn_02:state:] eq "open" (set Pushover_Pushnachrichten msg 'HOFTÜRCHEN [8_fach_Sender_Hoftor_Btn_02:state]' 'geöffnet (Nachricht da Schalter aktiv)' 'iPhoneThomas' 0 'none')


da wird mir aber der state "closed" eingefügt. Es soll aber der Zeitstempel "2017-09-03 14:13:28" angezeigt werden.

Was müsste ich da machen. Ist bestimmt etwas ganz einfaches, habe es aber im Forum nicht finden können.
Danke euch im voraus
Titel: Antw:Timestamp (Zeitstempel) statt open/closed in Pushover-Nachricht notify anzeigen
Beitrag von: JensS am 03 September 2017, 18:54:19
Dann lass dir doch einfach den aktuellen Zeitstempel berechnen:
strftime "%y-%m-%d %H:%M:%S", localtime(time)

Gruß Jens
Titel: Antw:Timestamp (Zeitstempel) statt open/closed in Pushover-Nachricht notify anzeigen
Beitrag von: CoolTux am 03 September 2017, 19:57:20
ReadingsTimestamp($NAME,"state","0")
Titel: Antw:Timestamp (Zeitstempel) statt open/closed in Pushover-Nachricht notify anzeigen
Beitrag von: Depechem am 04 September 2017, 09:09:58
Zitat von: CoolTux am 03 September 2017, 19:57:20
ReadingsTimestamp($NAME,"state","0")

Danke Leon,
muss dies in den Inhalt der Pushover Nachricht oder ins "stateFormat" des Sensors?
Leider klappt beides nicht.
[ReadingsTimestamp($NAME,"state","0")] bringt in der Pushovernachricht nicht das gewünschte Ergebnis

Also einmal grundlegend die Frage. Muss man am jeweiligen Sensor etwas ändern oder muss nur der passende Codeschnipsel in die Pushovernachricht?
Titel: Antw:Timestamp (Zeitstempel) statt open/closed in Pushover-Nachricht notify anzeigen
Beitrag von: CoolTux am 04 September 2017, 09:51:56
Das ist eine Perl Funktion welche in fhem.pl bereit gestellt wird. Entweder also direkt im Pushoveraufruf einbauen oder eine Variabledamit füllen.
Da Du DOIF verwendest wäre es interessant ob es dafür eine von DOIF aus eine Art MagicFunktion gibt. Das weiß ich aber nicht.
Titel: Antw:Timestamp (Zeitstempel) statt open/closed in Pushover-Nachricht notify anzeigen
Beitrag von: Depechem am 06 September 2017, 15:35:02
Hier die Lösung als kompletter DOIF.
Danke für eure Hilfen.

([8_fach_Sender_Hoftor_Btn_01:state] eq "open" and [Hoftuer_Nachricht_Schalter] eq "on")({
  my $timestamp = ReadingsTimestamp("8_fach_Sender_Hoftor_Btn_01","state","0");
  fhem("set Pushover_Pushnachrichten msg 'HOFTOR geöffnet' '$timestamp (Nachricht da Schalter aktiv)' 'iPhoneThomas' 0 'bike'");
})