Repeat-Schleife wird nicht wiederholt, aber warum?

Hallo,

wieso wird die Repeat-Schleife nicht wiederholt?

Ausgelöst wurde diese Automation, als der Batteriezustand von 65 auf 64 gefallen ist. So war das auch gedacht. Ich möchte gerne, dass die Nachricht alle 12 Minuten wiederholt wird, bis ich das Ladekabel einstöpsel.

Danke
Andrea

Ich würde vermutlich nicht mit “Während” (while) arbeiten, sondern mit “Bis” (until). Denn du willst ja die Benachrichtigung BIS das Ladegerät dran hängt.

action:
  - repeat:
      sequence:
        - service: notify.mobile_app_maxe
          data:
            message: Bitte Batterie laden
        - delay:
            hours: 0
            minutes: 12
            seconds: 0
            milliseconds: 0
      until:
        - condition: state
          entity_id: sensor.maxe_battery_state
          state: charging

Vermutlich wegen mode single !

Single wäre imho richtig. Denn er soll beim Auslösen solange die Automatisierung durchführen, bis die Aktionen abgearbeitet sind.

1 „Gefällt mir“

Eben. “Single” dürfe m.E. richtig sein, denn es soll nur die Schleife mehrfach durchlaufen werden, nicht die ganze Automatisierung.

UNTIL hat jetzt einmal geklappt, aber WHILE passt besser, damit die Schleife nicht durchlaufen wird, wenn bereits geladen wird.

Irgendwo ist der Wurm. Die Entität “battery_level” wird auch sehr selten aktualisiert, vielleicht alle 60 Minuten oder so. 59 % wurde “übersprungen”.

Ich experimentiere noch…

LG
Andrea

PS: Kann man bei “Traces” sehen, wann eine Automatisierung beendet wurde? Das Flussdiagramm hat ja leider kein Exit-Symbol ganz unten.

Du könntest die Automatisierung auch komplett umstellen.

Trigger:

  • alle 12 Minuten

Bedingung:

  • Battery Level below 65
  • Battery State discharging

Aktion:

  • Nachricht

Dann brauchst du die Sequenz nicht.

2 „Gefällt mir“

Hallo,

Alle n Minuten als Trigger geht, das hatte ich schon probiert. Es kommt mir aber nicht so elegant vor.

Fragt mich nicht warum, aber die While-Schleife funktioniert jetzt, wie sie soll: :crazy_face:

alias: Alle n Minuten wiederholen, solange nicht geladen wird.
repeat:
  sequence:
    - service: notify.mobile_app_f101
      data:
        message: Bitte aufladen. {{ now() }}
        title: Akku {{states("sensor.f101_battery_level")}} %
    - service: switch.toggle
      target:
        entity_id: switch.steckdose_6
      data: {}
    - delay:
        hours: 0
        minutes: 0
        seconds: 15
        milliseconds: 0
  while:
    - condition: state
      entity_id: sensor.f101_battery_state
      state: discharging
enabled: true

Was ich sonst gelernt habe:
• Benachrichtigungen auf das Smartphone können mit erheblicher Verzögerung ankommen. Heute nacht um 2 Uhr kam eine Nachricht, dass ich das Fenster im Bad schließen soll – die Nachricht wurde ca. 22 Uhr abgeschickt. Unnötiges Wekcen ist natürlich ein No-Go. Heute morgen dasselbe, das Fenster war schon 30 Minuten geschlossen und es kamen 30 Nachrichten auf einmal (zum Test war der Nachrichtenabstand auf 30 s).

• Die Akku-Abfrage des Smartphones funktioniert nur, wenn das Telefon auch benutzt wird und nicht im Schlafmodus. Das ist ja auch gut zum Stromsparen, aber dann kann es auch lassen.

Die Frage ist jetzt aber, wie ich Warnungen (wie “Fenster lange offen”) realisiere, dass sie sicher wahrgenommen werden und nicht zum falschen Zeitpunkt nerven. Vielleicht mit bunten LED-Stripes in mehreren Zimmer. Das erscheint mir etwas altertümlich, aber eine bessere Idee habe ich nicht.

LG
Andrea

Wenn entsprechende Lautsprecher eingesetzt werden, kannst Du darüber eine Ansage abspielen lassen.

Bei smarten Lampen wäre auch eine Veränderung der Farbe bzw. ein blinken o.ä. möglich.

Je nach dem wie weit Du es treiben willst, kannst Du dabei auch zuvor feststellen in welchem Raum sich jemand befindet und es auf diese zu begrenzen.

Ich finde Lösungen ohne Smartphone ohnehin eleganter, weil wenn ich dazu das Handy in die Hand nehmen muss, ist es eben nicht mehr wirklich smart…

Das habe ich bisher so nicht festgestellt, aber ich habe auch nicht drauf geachtet. Vielleicht hatte ich bisher “Glück” :wink:

Hallo … das hängt ganz sicher von den Energiespareinstellungen ab. Manche sind ziemlich sicher im Betriebssystem festgelegt und nicht veränderbar, einige vielleicht in der Hardware.

PS: Wie kann ich hier Zitate einfügen?

LG
Andrea

Hersteller von Hard- bzw. Software könnte natürlich auch eine Rolle spielen.

Den zu zitierenden Bereich markieren. Dann erscheint ein “Menü” oberhalb der Markierung

1 „Gefällt mir“

Den Teil des Beitrages, den Du zitieren möchtest einfach „aktivieren“, dann wird Dir schon „Zitat“ angeboten.

Schreib dem @discobot eine private Nachricht. Der führt Dich durch ein Tutorial zur Bedienung der Software.

1 „Gefällt mir“

Hallo! Um herauszufinden, was ich kann, schreibe @discobot Hilfe anzeigen.

Ich hab für mein Android in den Benachrichtungsautomatisierungen die Prio über ttl:0 und prio:high hoch gesetzt

    - service: notify.mobile_app_f101
      data:
        message: Bitte aufladen. {{ now() }}
        title: Akku {{states("sensor.f101_battery_level")}} %
        data:
          ttl: 0
          priority: high

siehe auch die Doku

1 „Gefällt mir“

Hallo,

So habe ich das – ohne Erfolg – bei der Fenstersensorwarnung gemacht:

alias: Nachricht an Fossibot
service: notify.mobile_app_f101
data:
  title: FENSTER OFFEN
  message: "Gäste-WC: Fenster länger offen oder Temperatursturz"
  data:
    sticky: "true"
    color: red
    visibility: public
    notification_icon: mdi:snowflake
    ttl: 0
    priority: high

Die Meldungen werden im 2-Minuten-Takt generiert. Heute morgen habe ich erst gar keine bekommen und dann eine ganze Weile nach dem Schließen des Fenster gab es 15 Meldungen auf einmal…

LG
Andrea

Vermute ich dann auch mal ganz stark.
Ist denn die Companion-App aus allen Akkuspareinstellungen raus?

1 „Gefällt mir“

Ja. Nicht in der Liste “Eingeschränkte Apps” der Energieeinstellungen und der allgemeine Schalter “Energiesparmodus” ist auch aus. Naja, so wichtig ist das nicht.

LG
Andrea