Homey-Alarm über Flow setzen?

Ist es möglich, einen Homey-Alarm zu ändern/setzen?

Ich wollte die Idee von @Osorkon aufgreifen und einen Alexa-Alarm an Homey übertragen (Alexa->HomeAssistant->MQTT->Homey).
Jetzt sehe ich, dass man in Homey Alarme nur aktivieren/deaktivieren kann, aber nicht setzen.
Gibt es evtl. Alternativen wie HomeySkript, Apps o.ä., mit dem man einen Alarm setzen kann?
Das Ziel wäre es, mit dem Alarm einen Lichtwecker mit Vorlauf zu starten (Chronograph-Transition für Hue-Go).
Hat das schon mal jemand umgesetzt?

Als Alternative würde mir nur einfallen, in HA den Zeitraum zw. aktueller Zeit und Alarm in Minuten zu berechnen und dann mit diesem Zeitraum einen Homey-Timer zu starten. Ein richtiger Alarm ist aber sicher besser.
Für Ideen wäre ich dankbar.

Welche Rolle spielt da jetzt der Homey Alarm?!

Du hast doch schon den Alexa Alarm, oder stehe ich auf dem Schlauch?

Der primäre Wecker ist der Echo Show (5?, der kleine).
Zusätzlich soll aber auch ein Lichrwecker angehen.

Zusätzlich hatten wir mal einen Philips Lichtwecker . Der hatte aber nur eine feste Dauer, die uns nicht passte. Als Alternative hatte ich dann mit einer HueGo und dem HueHub ein WakeUpLight eingestellt. Das geht schön über die HueApp.
Alle Varianten haben den Nachteil, dass man nach Änderung im Echo manuell den Lichtwecker anpassen muss.
Daher die Idee, die Weckzeit in Homey zu übernehme und darüber einen Homey-Alarm einstellen, der dann per Flow eine Licht Transition über die ChronographApp ausführt.

Soweit die Idee. Nur finde ich keinen Weg, den Alarm per Flow (über MQTT getriggert) zu ändern.

Es gibt m.W. auch keine Möglichkeit, einen Hue-Alarm zu ändern. Das wäre noch eine Alternative. Ich habe dazu aber auch nichts in der Hue-Integration in HA gefunden.

Was ich aber immer noch nicht verstehe ist warum Du das ganze jetzt verzweifelt über den Homey lösen willst?!

Du hast doch bereits HA am Start und dort die Alexa und Hue Bridge Integration.

Warum nicht einfach eine Automationen in HA?!
20 Minuten bevor der Wecker los geht die Nachttischlampe langsam auf 100% Dimmen, oder wenn es unbedingt sein muss ein Webhook abschicken der Dir Deine Flows startet.

Ich sehe absolut keine Notwendigkeit mit dem Homey Alarm arbeiten zu müssen!

Stimmt, hatte ich noch nicht bedacht. Ich dachte, die HA Automation regiert auf Events und nicht schon mit Zeitversatz. Da muss ich mich erst mal einlesen, wie man das am besten mit dem Echo-Alarmzeitpunkt machen kann…

Homey war irgendwie naheliegend weil man das schön mit Flows und Timer machen kann.
Ich wollte die Automatisierungen eigenlich nur in einem System haben und HA nur als Dashboard.
Naja, wird wohl doch eine Mischung beider Welten werden :innocent:

Hier mal eine Starthilfe.

Als erstes brauchst Du einen „sensor.time„
Siehe hier:

Dann kannst Du einen Trigger mit x min vorauf, nach diesen Schema erstellen (hier sind es 20 min vor Alarm Start.

trigger:
- platform: template
  value_template: >
    {{ (as_timestamp(states('sensor.alexa_next_alarm'))-20*60) | timestamp_custom('%H:%M') == states('sensor.time') }}
1 Like

Dank Osorkons Beispielen konnte ich die Idee umsetzen.
Für Interessierte füge ich noch ein paar Beispiele an.

Vorab: Die Zeitberechnung und Eventsteuerung erfolgt in HA.
Die Vorlaufzeit ist als log.Variable in Homey definiert. Der Wert wird bei Änderung über einen Flow per MQTT an HA gesendet.
Der Lichtschalter wird über einen virtuellen Schalter in Homey gestartet. Die Lichtsteuerung läuft dann über Flow+ChronographApp (Transition). Damit kann ich die Logik einfacher in Homey steuern.
Dieser Schalter ist über MQTT in HA eingebunden und kann damit direkt in HA geschaltet werden.

Für die Weckzeit des Lichtweckers habe ich Sensoren in HA angelegt. Die berechnen Zeit und Datum.
Wird für die Steuerung nicht benötigt. Aber damit kann ich die Zeit einfacher im HA-Dashboard anzeigen.

- platform: template
  sensors:
    wakeup_light_time: 
      friendly_name: 'Lichtwecker Uhrzeit'
      value_template: >
        {{ (as_timestamp(states('sensor.echo_show_wecker_next_alarm'))- states('sensor.lichtwecker_dauer')|int * 60  - 60*60*2) | timestamp_custom('%H:%M') }}
- platform: template
  sensors:
    wakeup_light_date: 
      friendly_name: 'Lichtwecker Datum'
      value_template: >
        {{ (as_timestamp(states('sensor.echo_show_wecker_next_alarm'))- states('sensor.lichtwecker_dauer')|int *60  - 60*60*2) | timestamp_custom('%d.%m.%Y') }}

Der Sensor sensor.lichtwecker_dauer ist ein Sensor, der von Homey per MQTT gesetzt wird, nach Änderung der log.Variable:

- platform: mqtt
  state_topic: 'homey_publish/lichtwecker_dauer'
  name: lichtwecker_dauer
  unit_of_measurement: ''

Das Event zum Steuern des Lichts (Automation):

- id: 'wakeup light switch on' 
  alias: 'Lichtwecker einschalten'
  trigger:
    platform: template
    value_template:  >
        {{ ( (as_timestamp(states('sensor.echo_show_wecker_next_alarm'))- states('sensor.lichtwecker_dauer')|int *60 - 60*60*2) | timestamp_custom('%H:%M') == states('sensor.time') )
            and
           ( (as_timestamp(states('sensor.echo_show_wecker_next_alarm'))- states('sensor.lichtwecker_dauer')|int *60 - 60*60*2) | timestamp_custom('%Y-%m-%d') == states('sensor.date') )
        }}
  action:
    service: light.turn_on
    entity_id: light.lichtwecker

Damit wird der in HA per MQTT eingebundene virtuelle Lichtschalter geschaltet. Das startet den Flow zum Start der Chronograph-App.

Die simple Lösung wäre eine reine Automation in HA (mit fester Dauer, hier die 15min in der Berechnung). Das genügt, um bei Erreichen der 15min vor Alexa-Wecker das Licht anzuschalten.

- id: 'wakeup light switch on' 
  alias: 'Lichtwecker einschalten'
  trigger:
    platform: template
    value_template:  >
        {{ ( (as_timestamp(states('sensor.echo_show_wecker_next_alarm'))- 15*60 - 60*60*2) | timestamp_custom('%H:%M') == states('sensor.time') )
            and
           ( (as_timestamp(states('sensor.echo_show_wecker_next_alarm'))- 15*60 - 60*60*2) | timestamp_custom('%Y-%m-%d') == states('sensor.date') )
        }}
  action:
    service: light.turn_on
    entity_id: light.lichtwecker

Da Alexa die lokale Zeit als Timestamp sendet (ohne Zeitzone, z.B.: 2020-07-13T05:30:00+00:00) und HA daraufhin die Zeitzone hinzufügt, musste ich noch 2h abziehen. Hier muss ich mal schauen, ob ich das noch dynamisch mache oder manuell ändere, bis die Zeitumstellung abgeschafft ist :sweat_smile:

1 Like

Das ist bei mir nicht der Fall?!

Muss hier keine Korrektur (-2h) vornehmen.
In diesem Bsp. Ist der Wecker auf 13:30 gestellt und so kommt es auch in HA an.

Merkwürdig.
Ich habe in der Alexa-App die Zeitzonen und Standorte der Echos geprüft. Alles ok (Berlin - Mitteleuropäische Sommerzeit). Nochmal alle Wecker gelöscht und angelegt. Der Wert kommt in HA immer noch als lokale Zeit ohne Zeitzone an. Ich wüsste nicht, wo ich noch etwas umstellen könnte.

In HA selbst, hast Du aber die Zeitzone schon richtig eingestellt?

Ja, in HA unter Allgemeine Einstellungen steht die richtige Zeitzone.
sensor.time zeigt auch die korrekte Zeit an.