doudz / homeassistant-zigate

zigate component for Home Assistant
MIT License
48 stars 15 forks source link

[HELP WANTED] Wait template sur un switch Xiaomi #135

Closed Bredin76 closed 3 years ago

Bredin76 commented 3 years ago

Bonjour,

Je souhaite commander une lumière avec un bouton xiaomi en prévoyant une temporisation Cinématique attendue :

Je vois ça sous la forme d'une automation

- id: '1598608713975'
  alias: Gestion lumière WC
  description: ''
  trigger:
  - event_data:
      entity_id: zigate.00158d00023335ce
      name: onoff
      value: true
    event_type: zigate.attribute_updated
    platform: event
  - event_data:
      entity_id: zigate.00158d00023e8541
      name: onoff
      value: true
    event_type: zigate.attribute_updated
    platform: event
  condition: []
  action:
    entity_id: light.zigate_0017880102c54080_11
    service: light.turn_on
``wait_template: "{{ is_state( trigger.entity_id, 'on') }}"
  timeout: '00:05:00'`` 
    entity_id: light.zigate_0017880102c54080_11
    service: light.turn_off
  mode: single

Vous l'aurez compris, je cherche à reproduire le trigger d'entrée dans l'automation dans le wait wait_template: "{{ is_state( trigger.entity_id, 'on') }}" timeout: '00:05:00' et là, ca dépasse mes compétences. J'ai beau éplucher la doc des states et de zigate, je ne trouve pas de solutions.

Quand je récupere les states disponibles dans le domaine zigate je ne vois rien avec le nom onoff que je cherche.

Il me manque sans doute une clef de logique...

du coup j'ai bricolé en découvrant que le state disponible sur mon bouton correspond grosso-modo au moment ou il a été cliqué pour la dernière fois. challenge donc ce state avec now() et j'ai du ajouter un délai avant le wait pck il capte 2 clic semble t-il ( j'appuis et je relâche ) donc ma lumière restait allumée seulement le temps ou j'avais le doigt sur le bouton)

``

Pouvez vous m'aider ?

NOTA : S'il y a de la doc quelque part pour savoir comment récupérer des informations en provenance de la zigate je suis prenneur...

doudz commented 3 years ago

Et pourquoi pas simplement

- id: '1598608713975'
  alias: Gestion lumière WC
  description: ''
  trigger:
    platform: state
    entity_id: light.zigate_0017880102c54080_11
    to: on
    for:
      minutes: 5
  action:
    entity_id: light.zigate_0017880102c54080_11
    service: light.turn_off
Bredin76 commented 3 years ago

Et pourquoi pas simplement

Parce que je n'avais pas simplement pensé à gérer ça par 2 automations... je pensais faire ça en une seule Merci, ca fonctionne parfaitement !

Je clôture!