Hallo zusammen,
nachdem ich mich eine Weile mit FHEM beschäftigt habe, wage ich nun den Absprung zu Home Assistant. Ich habe hier und da noch ein paar Startschwierigkeiten, z.B. mit dem folgenden Vorhaben:
Ich möchte die Dauer meines Arbeitsweges bei Google abfragen und ab einem gewissen Grenzwert eine Benachrichtigung per Pushover ausgeben.
Die Verknüpfung zur Google API steht, ich habe einen Sensor der mir eine Zeit als Wert ausgibt und diverse Attribute.
Ich habe die folgende Automation geschrieben, bzw. zusammengeklickt:
alias: Stauwarnung Arbeit
description: ""
trigger:
- platform: time_pattern
minutes: /15
condition:
- condition: and
conditions:
- condition: numeric_state
entity_id: sensor.arbeit
attribute: duration_in_traffic
above: 15
- condition: time
after: "07:00:00"
before: "09:00:00"
weekday:
- mon
- tue
- wed
- thu
- fri
action:
- action: notify.pushover
data:
message: Stau! Fahrzeit {{ state_attr('sensor.arbeit', 'duration_in_traffic') }}
title: Fahrt zur Arbeit
target: galaxy
mode: single
Mein Gedanke ist, dass zwischen 7 und 9 Uhr alle 15 min geprüft wird ob die Fahrt länger als 15 min dauert und ich in dem Fall eine Benachrichtigung bekomme (ich habe schon gesehen, dass einige Leute da sehr spannende, deutlich komplexere Sachen geschrieben haben. Aber ich dachte für den Start wäre das schon mal was).
Das Problem ist, dass die Abfrage der Dauer scheinbar nicht funktioniert. Egal was ich für die Grenze einsetze (der Weg zur Arbeit dauert mindestens 19 min), die condition bleibt false. Kann es sein, dass die Angabe “Duration in traffic” ein string ist und deswegen nicht verarbeitet werden kann? Der Wert ist ja schließlich z.B. “19 mins”. Muss ich den Wert irgendwie in Integer oder Float umwandeln?
Die Pushover Benachrichtigung klappt wenn ich manuell auslöse.
Habt ihr einen Tipp für mich?
Zusatzfrage: Zum Unterschied zwischen “Duration in traffic” und “Duration” habe ich im Netz die Info gefunden, das Ersteres die tatsächliche Zeit mit Verkehr ist und “Duration” die ideale Zeit, quasi wenn nichts los ist. Seltsamerweise ist der Wert von “Duration” immer höher als “Duration in traffic”…