🎉 initial commit
This commit is contained in:
		
							
								
								
									
										54
									
								
								blueprints/automation/homeassistant/motion_light.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								blueprints/automation/homeassistant/motion_light.yaml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,54 @@
 | 
			
		||||
blueprint:
 | 
			
		||||
  name: Motion-activated Light
 | 
			
		||||
  description: Turn on a light when motion is detected.
 | 
			
		||||
  domain: automation
 | 
			
		||||
  source_url: https://github.com/home-assistant/core/blob/dev/homeassistant/components/automation/blueprints/motion_light.yaml
 | 
			
		||||
  input:
 | 
			
		||||
    motion_entity:
 | 
			
		||||
      name: Motion Sensor
 | 
			
		||||
      selector:
 | 
			
		||||
        entity:
 | 
			
		||||
          domain: binary_sensor
 | 
			
		||||
          device_class: motion
 | 
			
		||||
    light_target:
 | 
			
		||||
      name: Light
 | 
			
		||||
      selector:
 | 
			
		||||
        target:
 | 
			
		||||
          entity:
 | 
			
		||||
            domain: light
 | 
			
		||||
    no_motion_wait:
 | 
			
		||||
      name: Wait time
 | 
			
		||||
      description: Time to leave the light on after last motion is detected.
 | 
			
		||||
      default: 120
 | 
			
		||||
      selector:
 | 
			
		||||
        number:
 | 
			
		||||
          min: 0
 | 
			
		||||
          max: 3600
 | 
			
		||||
          unit_of_measurement: seconds
 | 
			
		||||
 | 
			
		||||
# If motion is detected within the delay,
 | 
			
		||||
# we restart the script.
 | 
			
		||||
mode: restart
 | 
			
		||||
max_exceeded: silent
 | 
			
		||||
 | 
			
		||||
trigger:
 | 
			
		||||
  platform: state
 | 
			
		||||
  entity_id: !input motion_entity
 | 
			
		||||
  from: "off"
 | 
			
		||||
  to: "on"
 | 
			
		||||
 | 
			
		||||
action:
 | 
			
		||||
  - alias: "Turn on the light"
 | 
			
		||||
    service: light.turn_on
 | 
			
		||||
    target: !input light_target
 | 
			
		||||
  - alias: "Wait until there is no motion from device"
 | 
			
		||||
    wait_for_trigger:
 | 
			
		||||
      platform: state
 | 
			
		||||
      entity_id: !input motion_entity
 | 
			
		||||
      from: "on"
 | 
			
		||||
      to: "off"
 | 
			
		||||
  - alias: "Wait the number of seconds that has been set"
 | 
			
		||||
    delay: !input no_motion_wait
 | 
			
		||||
  - alias: "Turn off the light"
 | 
			
		||||
    service: light.turn_off
 | 
			
		||||
    target: !input light_target
 | 
			
		||||
							
								
								
									
										44
									
								
								blueprints/automation/homeassistant/notify_leaving_zone.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										44
									
								
								blueprints/automation/homeassistant/notify_leaving_zone.yaml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,44 @@
 | 
			
		||||
blueprint:
 | 
			
		||||
  name: Zone Notification
 | 
			
		||||
  description: Send a notification to a device when a person leaves a specific zone.
 | 
			
		||||
  domain: automation
 | 
			
		||||
  source_url: https://github.com/home-assistant/core/blob/dev/homeassistant/components/automation/blueprints/notify_leaving_zone.yaml
 | 
			
		||||
  input:
 | 
			
		||||
    person_entity:
 | 
			
		||||
      name: Person
 | 
			
		||||
      selector:
 | 
			
		||||
        entity:
 | 
			
		||||
          domain: person
 | 
			
		||||
    zone_entity:
 | 
			
		||||
      name: Zone
 | 
			
		||||
      selector:
 | 
			
		||||
        entity:
 | 
			
		||||
          domain: zone
 | 
			
		||||
    notify_device:
 | 
			
		||||
      name: Device to notify
 | 
			
		||||
      description: Device needs to run the official Home Assistant app to receive notifications.
 | 
			
		||||
      selector:
 | 
			
		||||
        device:
 | 
			
		||||
          integration: mobile_app
 | 
			
		||||
 | 
			
		||||
trigger:
 | 
			
		||||
  platform: state
 | 
			
		||||
  entity_id: !input person_entity
 | 
			
		||||
 | 
			
		||||
variables:
 | 
			
		||||
  zone_entity: !input zone_entity
 | 
			
		||||
  # This is the state of the person when it's in this zone.
 | 
			
		||||
  zone_state: "{{ states[zone_entity].name }}"
 | 
			
		||||
  person_entity: !input person_entity
 | 
			
		||||
  person_name: "{{ states[person_entity].name }}"
 | 
			
		||||
 | 
			
		||||
condition:
 | 
			
		||||
  condition: template
 | 
			
		||||
  value_template: "{{ trigger.from_state.state == zone_state and trigger.to_state.state != zone_state }}"
 | 
			
		||||
 | 
			
		||||
action:
 | 
			
		||||
  - alias: "Notify that a person has left the zone"
 | 
			
		||||
    domain: mobile_app
 | 
			
		||||
    type: notify
 | 
			
		||||
    device_id: !input notify_device
 | 
			
		||||
    message: "{{ person_name }} has left {{ zone_state }}"
 | 
			
		||||
@@ -0,0 +1,84 @@
 | 
			
		||||
blueprint:
 | 
			
		||||
  name: Confirmable Notification
 | 
			
		||||
  description: >-
 | 
			
		||||
    A script that sends an actionable notification with a confirmation before
 | 
			
		||||
    running the specified action.
 | 
			
		||||
  domain: script
 | 
			
		||||
  source_url: https://github.com/home-assistant/core/blob/master/homeassistant/components/script/blueprints/confirmable_notification.yaml
 | 
			
		||||
  input:
 | 
			
		||||
    notify_device:
 | 
			
		||||
      name: Device to notify
 | 
			
		||||
      description: Device needs to run the official Home Assistant app to receive notifications.
 | 
			
		||||
      selector:
 | 
			
		||||
        device:
 | 
			
		||||
          integration: mobile_app
 | 
			
		||||
    title:
 | 
			
		||||
      name: "Title"
 | 
			
		||||
      description: "The title of the button shown in the notification."
 | 
			
		||||
      default: ""
 | 
			
		||||
      selector:
 | 
			
		||||
        text:
 | 
			
		||||
    message:
 | 
			
		||||
      name: "Message"
 | 
			
		||||
      description: "The message body"
 | 
			
		||||
      selector:
 | 
			
		||||
        text:
 | 
			
		||||
    confirm_text:
 | 
			
		||||
      name: "Confirmation Text"
 | 
			
		||||
      description: "Text to show on the confirmation button"
 | 
			
		||||
      default: "Confirm"
 | 
			
		||||
      selector:
 | 
			
		||||
        text:
 | 
			
		||||
    confirm_action:
 | 
			
		||||
      name: "Confirmation Action"
 | 
			
		||||
      description: "Action to run when notification is confirmed"
 | 
			
		||||
      default: []
 | 
			
		||||
      selector:
 | 
			
		||||
        action:
 | 
			
		||||
    dismiss_text:
 | 
			
		||||
      name: "Dismiss Text"
 | 
			
		||||
      description: "Text to show on the dismiss button"
 | 
			
		||||
      default: "Dismiss"
 | 
			
		||||
      selector:
 | 
			
		||||
        text:
 | 
			
		||||
    dismiss_action:
 | 
			
		||||
      name: "Dismiss Action"
 | 
			
		||||
      description: "Action to run when notification is dismissed"
 | 
			
		||||
      default: []
 | 
			
		||||
      selector:
 | 
			
		||||
        action:
 | 
			
		||||
 | 
			
		||||
mode: restart
 | 
			
		||||
 | 
			
		||||
sequence:
 | 
			
		||||
  - alias: "Set up variables"
 | 
			
		||||
    variables:
 | 
			
		||||
      action_confirm: "{{ 'CONFIRM_' ~ context.id }}"
 | 
			
		||||
      action_dismiss: "{{ 'DISMISS_' ~ context.id }}"
 | 
			
		||||
  - alias: "Send notification"
 | 
			
		||||
    domain: mobile_app
 | 
			
		||||
    type: notify
 | 
			
		||||
    device_id: !input notify_device
 | 
			
		||||
    title: !input title
 | 
			
		||||
    message: !input message
 | 
			
		||||
    data:
 | 
			
		||||
      actions:
 | 
			
		||||
        - action: "{{ action_confirm }}"
 | 
			
		||||
          title: !input confirm_text
 | 
			
		||||
        - action: "{{ action_dismiss }}"
 | 
			
		||||
          title: !input dismiss_text
 | 
			
		||||
  - alias: "Awaiting response"
 | 
			
		||||
    wait_for_trigger:
 | 
			
		||||
      - platform: event
 | 
			
		||||
        event_type: mobile_app_notification_action
 | 
			
		||||
        event_data:
 | 
			
		||||
          action: "{{ action_confirm }}"
 | 
			
		||||
      - platform: event
 | 
			
		||||
        event_type: mobile_app_notification_action
 | 
			
		||||
        event_data:
 | 
			
		||||
          action: "{{ action_dismiss }}"
 | 
			
		||||
  - choose:
 | 
			
		||||
      - conditions: "{{ wait.trigger.event.data.action == action_confirm }}"
 | 
			
		||||
        sequence: !input confirm_action
 | 
			
		||||
      - conditions: "{{ wait.trigger.event.data.action == action_dismiss }}"
 | 
			
		||||
        sequence: !input dismiss_action
 | 
			
		||||
		Reference in New Issue
	
	Block a user