Skip to content
ConnerPlayz edited this page May 14, 2020 · 54 revisions

Automation Examples

How to setup using NodeRed

Expand - Node-Red

[{"id":"4d55f1dc.9aa0e","type":"tab","label":"Alexa Actionable Notifications","disabled":false,"info":""},{"id":"7a7365e6.d7ad1c","type":"server-events","z":"4d55f1dc.9aa0e","name":"Alexa Actionable Notification","event_type":"alexa_actionable_notification","exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"x":300,"y":520,"wires":[["ef36f89c.454fa8"]]},{"id":"db5f8e8c.37415","type":"switch","z":"4d55f1dc.9aa0e","name":"Responses","property":"payload.event.event_response","propertyType":"msg","rules":[{"t":"eq","v":"ResponseYes","vt":"str"},{"t":"eq","v":"ResponseNo","vt":"str"},{"t":"eq","v":"ResponseNone","vt":"str"}],"checkall":"true","repair":false,"outputs":3,"x":1270,"y":400,"wires":[["8114ad4e.33317"],["3aa0fbe8.64f604"],["2cbd527a.30a12e"]]},{"id":"ef36f89c.454fa8","type":"switch","z":"4d55f1dc.9aa0e","name":"Event IDs","property":"payload.event.event_id","propertyType":"msg","rules":[{"t":"eq","v":"actionable_notification_event_name","vt":"str"},{"t":"eq","v":"actionable_notification_another_name","vt":"str"},{"t":"eq","v":"more","vt":"str"},{"t":"eq","v":"more still","vt":"str"},{"t":"eq","v":"even more","vt":"str"}],"checkall":"true","repair":false,"outputs":5,"x":510,"y":520,"wires":[["9edf5418.be1428"],["dc64e33b.c5d1e"],[],[],[]]},{"id":"504d8bc8.65bb74","type":"link in","z":"4d55f1dc.9aa0e","name":"1","links":["9edf5418.be1428"],"x":1155,"y":400,"wires":[["db5f8e8c.37415"]]},{"id":"9edf5418.be1428","type":"link out","z":"4d55f1dc.9aa0e","name":"1","links":["504d8bc8.65bb74"],"x":615,"y":480,"wires":[]},{"id":"54f8c335.7ffe3c","type":"bigtimer","z":"4d55f1dc.9aa0e","outtopic":"","outpayload1":"On","outpayload2":"","name":"Timer Based","comment":"","starttime":"720","endtime":"0","starttime2":0,"endtime2":0,"startoff":0,"endoff":0,"startoff2":0,"endoff2":0,"offs":0,"outtext1":"","outtext2":"","timeout":1440,"sun":true,"mon":true,"tue":true,"wed":true,"thu":true,"fri":true,"sat":true,"jan":true,"feb":true,"mar":true,"apr":true,"may":true,"jun":true,"jul":true,"aug":true,"sep":true,"oct":true,"nov":true,"dec":true,"day1":0,"month1":0,"day2":0,"month2":0,"day3":0,"month3":0,"day4":0,"month4":0,"day5":0,"month5":0,"day6":0,"month6":0,"day7":"","month7":"","day8":"","month8":"","day9":"","month9":"","day10":"","month10":"","day11":"","month11":"","day12":"","month12":"","d1":0,"w1":0,"d2":0,"w2":0,"d3":0,"w3":0,"d4":0,"w4":0,"d5":0,"w5":0,"d6":0,"w6":0,"xday1":0,"xmonth1":0,"xday2":0,"xmonth2":0,"xday3":0,"xmonth3":0,"xday4":0,"xmonth4":0,"xday5":0,"xmonth5":0,"xday6":0,"xmonth6":0,"xd1":0,"xw1":0,"xd2":0,"xw2":0,"xd3":0,"xw3":0,"xd4":0,"xw4":0,"xd5":0,"xw5":0,"xd6":0,"xw6":0,"suspend":false,"random":false,"repeat":false,"atstart":false,"odd":false,"even":false,"x":610,"y":760,"wires":[["858ea29f.cd12c"],[],[]]},{"id":"858ea29f.cd12c","type":"api-call-service","z":"4d55f1dc.9aa0e","name":"Ask","version":1,"debugenabled":false,"service_domain":"script","service":"activate_alexa_actionable_notification","entityId":"","data":"{\"text\":\"Place a Question Here\",\"event_id\":\"actionable_notification_another_name\",\"alexa_device\":\"media_player.which_alexa_device_you_want_to_talk\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":790,"y":760,"wires":[[]]},{"id":"c43b7a2a.d6aab8","type":"switch","z":"4d55f1dc.9aa0e","name":"Responses","property":"payload.event.event_response","propertyType":"msg","rules":[{"t":"eq","v":"ResponseYes","vt":"str"},{"t":"eq","v":"ResponseNo","vt":"str"},{"t":"eq","v":"ResponseNone","vt":"str"}],"checkall":"true","repair":false,"outputs":3,"x":1310,"y":740,"wires":[["61e57936.fef488"],["b83b55d3.f620b8"],["8d43e0a9.adfd3"]]},{"id":"dc64e33b.c5d1e","type":"link out","z":"4d55f1dc.9aa0e","name":"2","links":["ad0c236a.fa60a"],"x":680,"y":520,"wires":[]},{"id":"ad0c236a.fa60a","type":"link in","z":"4d55f1dc.9aa0e","name":"2","links":["dc64e33b.c5d1e"],"x":1195,"y":740,"wires":[["c43b7a2a.d6aab8"]]},{"id":"199d957b.96283b","type":"api-call-service","z":"4d55f1dc.9aa0e","name":"Ask","version":1,"debugenabled":false,"service_domain":"script","service":"activate_alexa_actionable_notification","entityId":"","data":"{\"text\":\"Place a Question Here\",\"event_id\":\"actionable_notification_event_name\",\"alexa_device\":\"media_player.which_alexa_device_you_want_to_talk\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1390,"y":220,"wires":[[]]},{"id":"8114ad4e.33317","type":"ui_text","z":"4d55f1dc.9aa0e","group":"","order":0,"width":0,"height":0,"name":"","label":"What you want when YES is said","format":"{{msg.payload}}","layout":"row-spread","x":1960,"y":400,"wires":[]},{"id":"3aa0fbe8.64f604","type":"ui_text","z":"4d55f1dc.9aa0e","group":"","order":0,"width":0,"height":0,"name":"","label":"What you want when NO is said","format":"{{msg.payload}}","layout":"row-spread","x":1950,"y":460,"wires":[]},{"id":"2cbd527a.30a12e","type":"ui_text","z":"4d55f1dc.9aa0e","group":"","order":0,"width":0,"height":0,"name":"","label":"What you want when NOTHING is said","format":"{{msg.payload}}","layout":"row-spread","x":1970,"y":520,"wires":[]},{"id":"61e57936.fef488","type":"ui_text","z":"4d55f1dc.9aa0e","group":"","order":0,"width":0,"height":0,"name":"","label":"What you want when YES is said","format":"{{msg.payload}}","layout":"row-spread","x":1600,"y":680,"wires":[]},{"id":"b83b55d3.f620b8","type":"ui_text","z":"4d55f1dc.9aa0e","group":"","order":0,"width":0,"height":0,"name":"","label":"What you want when NO is said","format":"{{msg.payload}}","layout":"row-spread","x":1590,"y":740,"wires":[]},{"id":"8d43e0a9.adfd3","type":"ui_text","z":"4d55f1dc.9aa0e","group":"","order":0,"width":0,"height":0,"name":"","label":"What you want when NOTHING is said","format":"{{msg.payload}}","layout":"row-spread","x":1610,"y":800,"wires":[]},{"id":"b46a103b.cbb8f","type":"server-state-changed","z":"4d55f1dc.9aa0e","name":"What do you want to be the trigger","version":1,"exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"entityidfilter":"","entityidfiltertype":"exact","outputinitially":false,"state_type":"str","haltifstate":"","halt_if_type":"str","halt_if_compare":"is","outputs":1,"output_only_on_state_change":true,"x":1040,"y":220,"wires":[["199d957b.96283b"]]},{"id":"214ed004.563d","type":"comment","z":"4d55f1dc.9aa0e","name":"Copy these response portions as many times as needed, for as many automations that you want","info":"","x":1290,"y":340,"wires":[]},{"id":"a4963b05.c6cf88","type":"comment","z":"4d55f1dc.9aa0e","name":"Change what happens for each response based on what you want to happen (call service, for example)","info":"","x":1570,"y":620,"wires":[]},{"id":"f1cd4ca0.26842","type":"comment","z":"4d55f1dc.9aa0e","name":"Just add the specific EVENT_ID here that matches what is in the \"Ask\" node then pipe it out to its corrisponding \"Responses\" node","info":"","x":510,"y":420,"wires":[]},{"id":"f0e88165.cdbcd","type":"comment","z":"4d55f1dc.9aa0e","name":"In the \"Ask\" node it gives directions on how to fill it out","info":"","x":1360,"y":140,"wires":[]},{"id":"19f4a8b7.8a8fc7","type":"comment","z":"4d55f1dc.9aa0e","name":"Another example with a timer","info":"","x":700,"y":700,"wires":[]}]

Asking when no one is home if the lights should be turned off

Expand - YAML

automation:
  - alias: Turn off the lights if no one responds to at home question
    trigger:
      platform: state
      entity_id: group.people
      to: 'off'
      for:
        minutes: 5

    action:
      - service: script.activate_alexa_actionable_notification
        data_template:
          text: 'Is anyone home?'
          event_id: 'alexa_notification_anyone_home'
          alexa_device: 'media_player.living_room_echo'

  - alias: No response for alexa_notification_anyone_home question 
    trigger:
      platform: event
      event_type: alexa_actionable_notification
      event_data:
        event_id: alexa_notification_anyone_home
        event_response: ResponseNone

    action:
      - service: light.turn_off
        entity_id: group.all_lights

No motion in bedroom for 30 mins ask if the lights should be turned off

Expand - YAML

automation:
  - alias: Bedroom lights left on for 30 minutes no motion detected
    trigger:
      platform: state
      entity_id: binary_sensor.bedroom_motion
      to: 'off'
      for:
        minutes: 30

    condition:
      - condition: state
        entity_id: light.bedroom_lights
        state: 'on'

    action:
      - service: script.activate_alexa_actionable_notification
        data_template:
          text: 'Is anyone in the bedroom?'
          event_id: 'alexa_notification_bedroom_occupied'
          alexa_device: 'media_player.bedroom_echo'

  - alias: No response for alexa_notification_bedroom_occupied question 
    trigger:
      platform: event
      event_type: alexa_actionable_notification
      event_data:
        event_id: alexa_notification_bedroom_occupied
        event_response: ResponseNo
    action:
      - service: light.turn_off
        entity_id: group.all_lights

Checks if garage is open past a certain time and asks if you want to close it

Expand - NodeRed

* This is Node-RED code only. *
* You will have to go thru and change the entities to your entity and your alexa devices. *
* If you don't know how to import this please look at the following picture. *

What it looks like:

[{"id":"5a8efc97.c224f4","type":"api-call-service","z":"e8fe01ef.ddafd","name":"Alexa Actionable Notification - Garage Door OPEN","server":"9f230d2c.1e00d","version":1,"debugenabled":false,"service_domain":"script","service":"activate_alexa_actionable_notification","entityId":"","data":"{\"text\":\"Its getting late and the garage is still open. Would you like me to close it?\",\"event_id\":\"actionable_notification_garage\",\"alexa_device\":\"media_player.your_device\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":750,"y":1240,"wires":[[]]},{"id":"b81c86aa.cffd98","type":"api-current-state","z":"e8fe01ef.ddafd","name":"Is Garage Open?","server":"cf2d0f67.b78c5","version":1,"outputs":2,"halt_if":"open","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"cover.your_device","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":430,"y":1240,"wires":[["5a8efc97.c224f4"],[]]},{"id":"29219c0.fd93164","type":"inject","z":"e8fe01ef.ddafd","name":"","topic":"","payload":"true","payloadType":"bool","repeat":"","crontab":"42 19 * * *","once":false,"onceDelay":0.1,"x":250,"y":1240,"wires":[["b81c86aa.cffd98"]]},{"id":"f2a004b3.987308","type":"api-call-service","z":"e8fe01ef.ddafd","name":"Garage Door - Close","server":"cf2d0f67.b78c5","version":1,"debugenabled":false,"service_domain":"cover","service":"close_cover","entityId":"cover.your_device","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1020,"y":1360,"wires":[[]]},{"id":"1cc5f7ea.344078","type":"switch","z":"e8fe01ef.ddafd","name":"Notification Response","property":"payload.event.event_response","propertyType":"msg","rules":[{"t":"eq","v":"ResponseYes","vt":"str"},{"t":"eq","v":"ResponseNo","vt":"str"},{"t":"eq","v":"ResponseNone","vt":"str"}],"checkall":"true","repair":false,"outputs":3,"x":780,"y":1360,"wires":[["f2a004b3.987308"],[],["f2a004b3.987308"]]},{"id":"1b3e6beb.9ca094","type":"switch","z":"e8fe01ef.ddafd","name":"Notification Check","property":"payload.event.event_id","propertyType":"msg","rules":[{"t":"eq","v":"actionable_notification_garage","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":550,"y":1360,"wires":[["1cc5f7ea.344078"]]},{"id":"4778008.13c87","type":"server-events","z":"e8fe01ef.ddafd","name":"Alexa Notification Response","server":"cf2d0f67.b78c5","event_type":"alexa_actionable_notification","exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"x":300,"y":1360,"wires":[["1b3e6beb.9ca094"]]},{"id":"9f230d2c.1e00d","type":"server","z":"","name":"Home Assistant","legacy":false,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":false,"cacheJson":true},{"id":"cf2d0f67.b78c5","type":"server","z":"","name":"Home Assistant"}]
Expand - YAML

automation:
  - alias: Garage door opened at 9pm.
    trigger:
      platform: time
      # Military time format. This trigger will fire at 9pm
      at: "21:00:00"

    action:
      - service: script.activate_alexa_actionable_notification
        data_template:
          text: 'Its getting late and the garage is still open. Would you like me to close it?'
          event_id: 'actionable_notification_garage'
          alexa_device: 'media_player.living_room_echo'
   
  - alias: Yes response to alexa_cooling_set_sleep.
    trigger:
      platform: event
      event_type: alexa_actionable_notificaiton
      event_data:
        event_id: actionable_notification_garage
        event_response: ResponseYes

    action:
      - service: cover.close_cover
        entity_id: cover.garage_door

Sends to one device and if that device gets ResponceNone it sends to another device.

Expand - Node-RED

How to Import code into node red:

[{"id":"831685e2.386948","type":"api-call-service","z":"416e642e.953dec","name":"TV","server":"cf2d0f67.b78c5","version":1,"debugenabled":false,"service_domain":"switch","service":"turn_off","entityId":"switch.sheldons_lights","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1050,"y":300,"wires":[[]]},{"id":"811cd95.ca88b28","type":"server-events","z":"416e642e.953dec","name":"Alexa Notification Response","server":"cf2d0f67.b78c5","event_type":"alexa_actionable_notification","exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"x":380,"y":300,"wires":[["6335fbd1.02b644"]]},{"id":"6335fbd1.02b644","type":"switch","z":"416e642e.953dec","name":"Notification Check","property":"payload.event.event_id","propertyType":"msg","rules":[{"t":"eq","v":"actionable_notification_testshelly","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":630,"y":300,"wires":[["4e38744a.eab68c"]]},{"id":"4e38744a.eab68c","type":"switch","z":"416e642e.953dec","name":"Notification Response","property":"payload.event.event_response","propertyType":"msg","rules":[{"t":"eq","v":"ResponseYes","vt":"str"},{"t":"eq","v":"ResponseNo","vt":"str"},{"t":"eq","v":"ResponseNone","vt":"str"}],"checkall":"true","repair":false,"outputs":3,"x":860,"y":300,"wires":[["831685e2.386948"],[],["b94a2d10.9ee13"]]},{"id":"ddb415e1.9565b8","type":"api-current-state","z":"416e642e.953dec","name":"TV ON","server":"cf2d0f67.b78c5","version":1,"outputs":2,"halt_if":"on","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"switch.your_lights","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":470,"y":220,"wires":[["13ce4701.711069"],[]]},{"id":"13ce4701.711069","type":"api-call-service","z":"416e642e.953dec","name":"Alexa Actionable Notification - Light On","server":"9f230d2c.1e00d","version":1,"debugenabled":false,"service_domain":"script","service":"activate_alexa_actionable_notification","entityId":"","data":"{\"text\":\"This is a test. Would you like me to turn off the lights?\",\"event_id\":\"actionable_notification_testshelly\",\"alexa_device\":\"media_player.downstairs\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":790,"y":220,"wires":[[]]},{"id":"8bc7288b.ee7378","type":"inject","z":"416e642e.953dec","name":"","topic":"","payload":"true","payloadType":"bool","repeat":"","crontab":"00 20 * * *","once":false,"onceDelay":0.1,"x":330,"y":220,"wires":[["ddb415e1.9565b8"]]},{"id":"4fa7f031.cebbf","type":"api-call-service","z":"416e642e.953dec","name":"Alexa Actionable Notification - Light On","server":"9f230d2c.1e00d","version":1,"debugenabled":false,"service_domain":"script","service":"activate_alexa_actionable_notification","entityId":"","data":"{\"text\":\"This is the second test on another device.\",\"event_id\":\"actionable_notification_testshelly2\",\"alexa_device\":\"media_player.conner_s_room\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1150,"y":360,"wires":[[]]},{"id":"4d23773d.1131d8","type":"api-call-service","z":"416e642e.953dec","name":"TV","server":"cf2d0f67.b78c5","version":1,"debugenabled":false,"service_domain":"switch","service":"turn_off","entityId":"switch.your_lights","data":"","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":1050,"y":460,"wires":[[]]},{"id":"7bf864f3.7dccec","type":"server-events","z":"416e642e.953dec","name":"Alexa Notification Response","server":"cf2d0f67.b78c5","event_type":"alexa_actionable_notification","exposeToHomeAssistant":false,"haConfig":[{"property":"name","value":""},{"property":"icon","value":""}],"x":380,"y":460,"wires":[["9d846357.21537"]]},{"id":"9d846357.21537","type":"switch","z":"416e642e.953dec","name":"Notification Check","property":"payload.event.event_id","propertyType":"msg","rules":[{"t":"eq","v":"actionable_notification_testshelly2","vt":"str"}],"checkall":"true","repair":false,"outputs":1,"x":630,"y":460,"wires":[["8cfb9ed5.82d93"]]},{"id":"8cfb9ed5.82d93","type":"switch","z":"416e642e.953dec","name":"Notification Response","property":"payload.event.event_response","propertyType":"msg","rules":[{"t":"eq","v":"ResponseYes","vt":"str"},{"t":"eq","v":"ResponseNo","vt":"str"},{"t":"eq","v":"ResponseNone","vt":"str"}],"checkall":"true","repair":false,"outputs":3,"x":860,"y":460,"wires":[["4d23773d.1131d8"],[],[]]},{"id":"b94a2d10.9ee13","type":"api-current-state","z":"416e642e.953dec","name":"TV ON","server":"cf2d0f67.b78c5","version":1,"outputs":2,"halt_if":"on","halt_if_type":"str","halt_if_compare":"is","override_topic":false,"entity_id":"switch.your_light","state_type":"str","state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","blockInputOverrides":false,"x":890,"y":360,"wires":[["4fa7f031.cebbf"],[]]},{"id":"cf2d0f67.b78c5","type":"server","z":"","name":"Home Assistant"},{"id":"9f230d2c.1e00d","type":"server","z":"","name":"Home Assistant","legacy":false,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":false,"cacheJson":true}]

Cooling temperature set too high when going to sleep

Expand - YAML

automation:
  - alias: Going to sleep and thermostat not set to 74.
    trigger:
      platform: state
      entity_id: group.people_sleep
      to: 'on'
      
    condition:
      - condition: template
        value_template: "{{ states.climate.thermostat.attributes.temperature > 74 }}"
      - condition: state
        entity_id: climate.building_36_technologies_unknown_type_0001_id_0001_mode
        state: 'cool'
        
    action:
      - service: script.activate_alexa_actionable_notification
        data_template:
          text: 'Would you like me to set the thermostat to 74?'
          event_id: 'alexa_cooling_set_sleep'
          alexa_device: 'media_player.bedroom_echo'

  - alias: Yes response to alexa_cooling_set_sleep.
    trigger:
      platform: event
      event_type: alexa_actionable_notificaiton
      event_data:
        event_id: alexa.cooling.sleep.set
        event_response: ResponseYes

    action:
      - service: climate.set_temperature
        entity_id: climate.thermostat
        data: 
          temperature: 74