Fenster zählen offen/ kipp (HmIP-SRH Fenstergriff - 3 optionen)

Hi, hat jemand ein fertiges Scipt/ automation um die offene gekippten Fenster mit dem Homematik HmIP-SRH zu zählen.

hier gibt es drei Zustände.
würde mich freuen, wenn jemand schon etwas in der Richtung hat.

aktuell zähle ich das noch via IObroker und übergebe via Mqtt an HA aber würde die letzten Kleinigkeiten auch gerne auf HA migrieren

Danke

options:
  - closed
  - tilted
  - open
interface_id: RasperryMatik-HmIP-RF
address: 0007DA499931FC:1
model: HmIP-SRH
parameter: STATE
function: Verschluss
value_state: restored
device_class: enum
friendly_name: Schlafzimmer Fenster

Moin,

jeweils einen Zähler als Helfer anlegen der zum Speichern der Vorgänge genutzt und jeweils eine Automation der auf open bzw. tilted triggered und den entsprechenden Zähler erhöht. Fertig sind deine Zähler :slight_smile:

Solltest nur den Zustand unknown ausschließen von dem gewechselt wird, um Fehlzählungen zu vermeiden.

von der Theorie her… :slight_smile:
aber irgendwie hänge ich fest.

das habe ich bisher, aber ich glaube das wird so nix.

alias: Fenster derzeit gekippt
description: ""
triggers:
  - alias: Gekippt
    trigger: state
    entity_id:
      - sensor.kuche_terassentur
      - sensor.badezimmer_fenster
    to: tilted
    id: Kipp
  - alias: geschlossen
    trigger: state
    entity_id:
      - sensor.kuche_terassentur
      - sensor.badezimmer_fenster
    to: closed
    id: geschlossen
conditions: []
actions:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - Kipp
        sequence:
          - action: counter.increment
            metadata: {}
            data: {}
            target:
              entity_id:
                - counter.anzahl_gekippter_fenster
      - conditions:
          - condition: trigger
            id:
              - geschlossen
        sequence:
          - action: counter.decrement
            metadata: {}
            data: {}
            target:
              entity_id:
                - counter.anzahl_gekippter_fenster
mode: single

Ok, wenn du zählen möchtest wieviel Fenster aktuell auf Gekippt sind dann sieht das eigentlich schon gut aus und müsste so funktionieren…

mein ziehl war es alle auf und gekippt zu zählen, aber habe jetzt irgendwie eine Gedanken Lücke.

den status nach auf oder gekippt, den habe ich glaube ich.
Aber
das fenster kann von zb. von gekippt jeden anderen Status erhalten
-offen

  • geschlossen

da klappt es nicht mit “zähler” verringern, da ich nicht weiß welcher status genommen wurde, oder es wird arg kompliziert

ok, dann beschreibe doch mal das verhalten das du erwartest :slight_smile:

Eigentlich easy: habe 8 Fenster und will die Anzahl offen/ Kipp (geschlossen) habe, als Zahl.

Die Summer der drei Stati muss ja immer 8 ergeben

probier es damit:

alias: Fenster derzeit gekippt
description: ""
triggers:
  - alias: Gekippt
    trigger: state
    entity_id:
      - sensor.kuche_terassentur
      - sensor.badezimmer_fenster
    to: tilted
    id: Kipp
  - alias: not gekippt
    trigger: state
    entity_id:
      - sensor.kuche_terassentur
      - sensor.badezimmer_fenster
    from: tilted
    id: geschlossen
conditions: []
actions:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - Kipp
        sequence:
          - action: counter.increment
            metadata: {}
            data: {}
            target:
              entity_id:
                - counter.anzahl_gekippter_fenster
      - conditions:
          - condition: trigger
            id:
              - geschlossen
        sequence:
          - action: counter.decrement
            metadata: {}
            data: {}
            target:
              entity_id:
                - counter.anzahl_gekippter_fenster
mode: single

probiere es aus und melde mich - bin allerdings erst später wieder online.
Danke schonmal

Ich habe jetzt drei Template Helfer (Zahl) angelegt, jeweils für offenn, geschlossen und gekippt.

bisher schaut das gut aus.

{% set sensors = ['sensor.wohnzimmer_terassentur', 'sensor.schlafzimmer_fenster', 'sensor.kuche_terassentur', 'sensor.jessica_fenster', 'sensor.daniel_fenster', 'sensor.badezimmer_fenster'] %}
{{ sensors | map('states') | select('eq', 'tilted') | list | count }}