energywave

Home Assistant - Avvisi Alexa Frigorifero

Mar 17th, 2021 (edited)
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 4.87 KB | None | 0 0
  1. # Abilitare la condivisione del timer seguente verso Alexa e creare una routine quando si dice "Alexa, sto ritirando la spesa"
  2. # attivando questo timer. In tal modo per un'ora si inibiranno le notifiche di frigo e freezer aperti troppo a lungo
  3. # Consigliato per la sanità mentale della moglie e quindi del proprio benessere psicofisico :)
  4. timer:
  5.   ritiro_spesa:
  6.     name: Sto ritirando la spesa
  7.     duration: '01:00:00'
  8.     icon: mdi:shopping-outline
  9.  
  10. automation:
  11.  # Automazione che parte quando viene attivato il timer (sia da UI che da routine Alexa), così che venga notificato da Alexa che per un'ora non
  12.   # verrà effettuato il controllo.
  13.   - alias: 'Attivato timer ritiro spesa'
  14.     trigger:
  15.       - platform: state
  16.         entity_id: timer.ritiro_spesa
  17.         to: active
  18.     action:
  19.       - service: script.multinotify
  20.         data:
  21.           message: "Va bene, non ti avviserò di frigo e freezer aperti troppo a lungo per la prossima ora!"
  22.           alexa_target: media_player.pian_terreno
  23.           alexa_volume_target: media_player.pian_terreno
  24.  
  25.   # Frigo aperto da troppo tempo
  26.   - alias: 'Frigorifero aperto da troppo tempo'
  27.     trigger:
  28.       - platform: state
  29.         entity_id: binary_sensor.frigorifero
  30.         to: 'on'
  31.         for: '00:00:30'
  32.     condition:
  33.       - condition: state
  34.         entity_id: input_boolean.notifiche_frigo
  35.         state: 'on'
  36.       - condition: state
  37.         entity_id: timer.ritiro_spesa
  38.         state: 'idle'
  39.     action:
  40.       - service: script.multinotify
  41.         data:
  42.           title: Frigorifero aperto
  43.           message: >
  44.            {% set secondi = (now().timestamp()-as_timestamp(states.binary_sensor.frigorifero.last_changed)) | round(0) %}
  45.             {{["Il frigorifero è aperto da " ~ secondi ~ " secondi, che ne dici di chiuderlo?",
  46.                "I pinguini stanno abbandonando il frigorifero! Chiudilo prima che siano scappati tutti!",
  47.                "Il caldo sta entrando nel frigo o il freddo sta uscendo? Non lo so, l'importante è che lo chiudi!",
  48.                "Il frigorifero aperto da " ~ secondi ~ " secondi non è una buona idea!",
  49.                "Studi scientifici dimostrano che lasciando aperta la porta del frigorifero succedono cose spiacevoli.",
  50.                "Secondo me " ~ secondi ~ " secondi di frigorifero aperto sono abbastanza. Per favore, chiudilo!",
  51.                "Hey, che ne dici di chiudere il frigorifero? " ~ secondi ~ " secondi di freddo buttato via possono bastare!"] | random}}
  52.           alexa_target: media_player.pian_terreno
  53.           alexa_volume_target: media_player.pian_terreno
  54.       - delay: 30
  55.       - alias: 'Ripete di chiudere finchè la porta è aperta'
  56.         repeat:
  57.           while:
  58.             - condition: state
  59.               entity_id: binary_sensor.frigorifero
  60.               state: 'on'
  61.             - condition: template
  62.               value_template: "{{ repeat.index <= 5 }}"
  63.             - condition: state
  64.               entity_id: input_boolean.notifiche_frigo
  65.               state: 'on'
  66.             - condition: state
  67.               entity_id: timer.ritiro_spesa
  68.               state: 'idle'
  69.           sequence:
  70.             - service: script.multinotify
  71.               data:
  72.                 message: >
  73.                  {% set secondi = (now().timestamp()-as_timestamp(states.binary_sensor.frigorifero.last_changed)) | round(0) %}
  74.                   {{["Sono già " ~ secondi ~ " secondi che il frigo è aperto!",
  75.                      "Dopo " ~ secondi ~ " secondi di apertura è davvero ora di chiudere il frigo",
  76.                      secondi ~ " secondi di frigorifero aperto possono bastare, chiudilo dai!",
  77.                      "I pinguini stanno scappando tutti dal frigorifero, chiudilo prima che sia troppo tardi!",
  78.                      "Sono già " ~ secondi ~ " secondi che il frigo è aperto, chiudilo per favore!",
  79.                      "Hey, che ne dici di chiudere il frigo? Sono già " ~ secondi ~ " secondi che è aperto!",
  80.                      "Sprecare energia elettrica lasciando aperto il frigo non mi sembra una buona idea!",
  81.                      "Il frigorifero è aperto da " ~ secondi ~ " secondi, chiudilo!"] | random}}
  82.                 alexa_target: media_player.pian_terreno
  83.                 alexa_volume_target: media_player.pian_terreno
  84.             - delay: 30
  85.       - condition: state
  86.         entity_id: binary_sensor.frigorifero
  87.         state: 'on'
  88.       - condition: state
  89.         entity_id: input_boolean.notifiche_frigo
  90.         state: 'on'
  91.       - condition: state
  92.         entity_id: timer.ritiro_spesa
  93.         state: 'idle'
  94.       - service: script.multinotify
  95.         data:
  96.           message: 'Allora, io mi sono stufata di ripetertelo. Il frigorifero è aperto e va chiuso. Non te lo dico più ma il problema rimane, caspita!'
  97.           alexa_target: media_player.pian_terreno
  98.           alexa_volume_target: media_player.pian_terreno
  99.  
Add Comment
Please, Sign In to add comment