"trigger: zone" löst nicht aus

Hallo Community,

ich möchte eine Automation auslösen wenn eine bestimmte Person eine Zone Betritt oder verlässt. Doch leider funktioniert sie nicht.
Für die Fehlersuche habe ich die Automation so gestrickt das ich 3 Auslöser prüfe (Person, das Gerät was die Person erkennt, Anzahl in Zone)

Leider löst sie nur bei Zonenanzahl aus. Wo liegt mein Fehler?
Ich würde es gern das es bei “Person” auslöst

alias: test
description: “”
triggers:

- trigger: zone
  entity_id: person.XYZ
  zone: zone.home
  event: enter
- trigger: zone
  entity_id: device_tracker.XYZ
  zone: zone.home
  event: enter
- trigger: numeric_state
  entity_id:
  - zone.home
    above: 0
    conditions: [ ]
    actions:
- data:
  message: ausgelöst
  action: notify.XYZ
  mode: parallel
  max: 5

:crayon:by HarryP: Code-/Logzeilen formatiert (bitte immer in </> einbinden)
s.a.: ( Neues Update & Features - Hier in der Community 🫶 )

Probier mal folgendes:

# Person verlässt Zone
triggers:
  - trigger: state
    entity_id:
      - person.orn
    to: not_home

# Person betritt Zone
triggers:
  - trigger: state
    entity_id:
      - person.orn
    to: home

Grundsätzlich sollte das schon funktionieren, ich habe ein ganz ähnliches Konstrukt am Start:

triggers:
  - trigger: zone
    entity_id: person.1
    zone: zone.erbach
    event: enter
    id: Garage
  - trigger: zone
    entity_id: person.2
    zone: zone.erbach
    event: enter
    id: Garage
  - trigger: zone
    entity_id: person.3
    zone: zone.erbach
    event: enter
    id: Garage
  - trigger: zone
    entity_id: person.4
    zone: zone.erbach
    event: enter
    id: Garage
conditions: []
actions:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - Garage
        sequence:
          - action: notify.mobile_app_iphone_von_carsten
            metadata: {}
            data:
              message: >-
                {{ trigger.to_state.name }}, {{ state_attr(trigger.entity_id,
                'friendly_name') }} hat Garage gleich erreicht.
              title: ⚠️ Garage
[...]

Also stellt sich die Frage, erkennt Home Assistant überhaupt, wenn Personen die Home Zone verlassen? I.d.r. erfordert das, dass Home Assistant von außerhalb (also wenn dein Device Tracker nicht zuhause ist) erreichbar ist.

hmm, ja, das geht natürlich :wink: hätte ich selbst drauf kommen können.
Da ich abe rmit dem visuellen Editor die ursprünglich Automation angelegt habe kam
- trigger: zone
zustande.
Ich schau mir mal den nächsten Beitrag von Jorge an, der scheint sowas wohl am laufen zu haben ….

Hallo Jorge,

ja, das mit dem tracken klappt schon (ansonsten würde doch auch Anzahl-In-Zone nicht funktionieren oder?)

hier die Status von den 3 Entitäten (Person, Gerät, zone)

Aber du hast ja auch als Auslöser die Zone in deiner Automation. Und die läuft? Jetzt würde mich interessieren wie geht das denn ???

Ich hab mit der Zonenerkennung auch schon so einiges getestet.

Letzte Person gegangen erste P gekommen

Wobei einige der Automationen inzwischen noch etwas angepasst wurden und noch eine dazugekommen ist. :wink:

Das stimmt natürlich, war aber aus Deinem Ursprungspost nicht ersichtlich. Das ist bei vielen, die anfangen sich damit zu beschäftigen ein Problem.

ok, soweit verstanden

ich habe das nochmal wie folgt abgeändert/ergänzt

alias: test
description: ""
triggers:
  - trigger: state                #1
    entity_id:
      - person.XYZ
    to: home
  - trigger: zone                 #2
    entity_id: person.XYZ
    zone: zone.home
    event: enter
  - trigger: zone                 #3
    entity_id: device_tracker.XYZ
    zone: zone.home
    event: enter
  - trigger: numeric_state        #4
    entity_id:
      - zone.home
    above: 0
conditions: []
actions:
  - data:
      message: ausgelöst
    action: notify.XYZ
mode: parallel
max: 5

die Automation löst nur bei #1 und #4 aus aber nicht wie bei @Jorge bei “trigger: zone”

Ich war gerade einkaufen und hab extra nochmal alle Automationen wieder aktiviert. Bei mir funktionieren alle 6 Trigger:

alias: Der letzte geht (device_tracker)
description: ""
triggers:
  - trigger: state
    entity_id:
      - device_tracker.orns_imer
    to: not_home
alias: Der letzte geht (device)
description: ""
triggers:
  - device_id: b3cad5b43ba638512d189aefd9b415f5
    domain: device_tracker
    entity_id: c2f0c88dfa75ec79ff79c2dcaff7c56f
    type: leaves
    trigger: device
    zone: zone.home
alias: Der letzte geht (event)
description: ""
triggers:
  - trigger: zone
    entity_id: person.orn
    zone: zone.home
    event: leave
alias: Der letzte geht (person)
description: ""
triggers:
  - trigger: state
    entity_id:
      - person.orn
    to: not_home

Diese letzten beiden beziehen sich nicht (direkt) auf eine Person, die dürften für Dich uninteressant sein.

alias: Der letzte geht (zone numeric)
description: ""
triggers:
  - trigger: numeric_state
    entity_id:
      - zone.home
    below: 1
alias: Der letzte geht (zone persons)
description: >-
  Bei zone.home.attributes.persons geht "[]", [] und "" nicht. '' wird beim
  Speichern automatisch zu "" umgewandelt. [] ist eine Liste. Das verträgt sich
  mit den gewünschten Format (String) nicht. Man verwendet deshalb ein Template
  als Trigger und fragt ab, ob die Liste leer ist.
triggers:
  - trigger: template
    value_template: "{{state_attr('zone.home', 'persons') | length == 0}}"

Wobei ich dazu sagen muss, dass alle Automationen nur mit einiger Verzögerung melden. Irgendwo in den Untiefen passt da irgendwas noch nicht.

Bei Dir sehe ich, dass Du mode: parallel nutzt. Funktioniert es denn, wenn Du den auf single änderst? :thinking:

na eigentlich geht es nur um so einen “trigger: zone”
diese reagieren nicht und es kommt kein ‘Trace’ in der automation
(mit dem ‘mode’ hat das nix zu tun)

ich kann es ja auch mal anders formulieren:

alias: test
description: ""
triggers:
  - trigger: zone
    entity_id: person.XYZ
    zone: zone.home
    event: enter
conditions: []
actions:
  - data:
      message: ausgelöst
    action: notify.XYZ
mode: single

warum funktioniert diese automation nicht???

:crayon:by HarryP: Zusammenführung Doppelpost (bei Änderungen oder hinzufügen von Inhalten bitte die „Bearbeitungsfunktion“ anstatt „Antworten“ zu nutzen)

Manchmal braucht die Zone ein wenig Zeit, um sich zu aktualisieren. Warum das so ist, hab ich noch nicht herausgefunden.

Dass die Zone prinzipiell funktioniert, hast Du ja bereits gezeigt.

Eigentlich bleibt nur alles akribisch zu kontrollieren. Da musst Du wohl mal mit dem Blick aufs Handy die Zone verlassen und Dir währenddessen den Verlauf und die traces ganz genau anschauen. :man_shrugging:

Nachtrag

Bei uns “prellt” die Zone auch gerne mal.

Warum? :man_shrugging:

noch’n Nachtrag

Wie groß ist Deine zone.home eigentlich? Ich hab jetzt mal 15 Minuten zugeschaut und dabei festgestellt, dass meine verschiedenen aktuellen Standorte, obwohl ich am Schreibtisch sitze, um fast 15m voneinander abweichen.

Meine Zonen “prellen” nicht:

Oben die Personen (der oberste bin ich, dank Home Office immer daheim), die Dauer-Abwesenheit ist eines der i.d.Z. ausgezogenen Kinder. (Sorry, für das schlechte Kaschieren des Zonen Namens ;))

Jeder von uns hat die HA Companion App auf dem Handy (alles iPhones) und die App darf die Standortdaten immer verwenden mit dem genauen Standort. Damit funktioniert es bei mir recht zuverlässig. Zu Android kann ich keine Tipps für die Einstellungen geben.

Wenn auch ich zuletzt festgestellt habe, dass die Benachrichtigungen etwas später kommen als zu vor (aber i.d.R. immer zeitnah).

Prellen nicht, aber Fehler hast Du auch drin …

… wenn auch erfreulich / erstaunlich wenig. Ich hab bei mir nochmal alles durchforstet und ein paar Einstellungen optimiert(?):

Die zone.home ist jetzt 50m statt 24m groß und in der Companion-App hab ich unter

→ Einstellungen → Companion-App → Sensoren → Regelmäßige Aktualisierung

auf 1 Minute umgestellt. Mal schauen, ob bzw. wieviel es bringt. :man_shrugging:

Im ersten Bild ist kein Fehler, da der blaue Balken eine ganz andere Zone ist, die unten gar nicht gezeigt wird (hat nur zufällig dieselbe Farbe). Der Drop im zweiten Bild ist vielleicht eher ein Fehler.

Die Sensor Einstellungen in der Companion App stehen auf 5 Minuten und ich vermute, dass diese nix mit dem Standort zu tun haben. Kann aber auch falsch liegen.

Meine Home Zone ist 23 Meter groß und umfasst mein Haus großzügig. Die Zone die ich für die Benachrichtigung nutze ist quasi eine erweitere Home Zone (zone.home ist quasi von der anderen umschlossen).

hmmm, ich weiß jetzt nicht mehr so genau ob es noch um mein thema ging, denn mit der Erfassung von Anwesenheiten in Zonen gibt es keine Probleme. wie auf dem bekannten Foto zu sehen.

in der obersten Zeile ist die “entity_id: person.XYZ” zu sehen
geändert durch das Gerät der Person XYZ, was in Zeile2 zu sehen ist
und in Zeile3 ist die Personenanzahl in der Home Zone zu sehen

Meine Frage ging in die Richtung das die Automation ‘trigger: Zone’ bei mir kein Trace auslöst, sobald die “entity_id: person.XYZ” heim kommt, obwohl die Person als Zuhause angezeigt wird.

Die Automation habe ich wie gesagt über den visuellen editor erstellt:

Wie ist es denn bei @Jorge?
In welchem Zeitversatz läuft denn deine Automation mit der Garageninfo? (ich meine jetzt nicht wenn die Nachricht ankommt, sondern wenn die Automation den Trace abspielt …

Sorry für das Off-Topic.

Zeitnah.

Die Automation wurde zum Zeitpunkt des Betretens der Zone Erbach ausgelöst:

Im heruntergeladenen Trace scheint eine andere Zeitzone verwendet zu werden, in der Trace Ansicht im WebUI stimmen die Zeiten.

ja, so wie es sein sollte … (dein timestamp ist Greenwichzeit +00:00, und wir leben ja in D mit +01:00, das passt)

Da hab ich jetzt 3 Fragezeichen über meinem Kopf schweben :thinking: warum das bei mir nicht auslöst …