#-------------------------------------------
# @CCOSTAN
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
# August Smart Lock support for my Front Door - [August Smart Lock](https://amzn.to/2SKGVDk) with Home Assistant.
#-------------------------------------------
######################################################################
##  August Smart Lock - https://amzn.to/2SKGVDk
######################################################################

#-------------------------------------------
# august:
#   login_method: email
#   username: !secret august_username
#   password: !secret august_password

# Moved Authentication to UI Integrations
# Added to the LOCK group
# Added a check lock routine to the Briefing.yaml - Will check locks whenever there is a speech event.

######################################################################
##  Door Lock Status Announcements - Only during normal hours.
######################################################################

automation:
  - alias: 'Door Locked Announcement'
    id: a4294b3b-51f3-4e32-8e71-b9ef865add3b
    trigger:
      - platform: state
        entity_id:
          - lock.front_door
        from: 'unlocked'
        to: 'locked'
        for: '00:00:30'

    action:
      - service: script.speech_engine
        data:
          DoorLocked: "The {{ trigger.to_state.name }} is now {{ trigger.to_state.state }}."

  - alias: 'Door UnLocked Announcement'
    id: 5922becc-3249-40ea-bdb4-db97cc40c413
    trigger:
      - platform: state
        entity_id:
          - lock.front_door
        to: 'unlocked'
        for: '00:10:00'

    action:
      - service: script.speech_engine
        data:
          DoorUnLocked: "The {{ trigger.to_state.name }} has been {{ trigger.to_state.state }} for 10 minutes. I will lock it in 10 minutes if it is still unlocked."

  - alias: 'August Battery Monitor'
    id: 82d6d09b-fba1-4320-8048-067043b490fc
    mode: single
    trigger:
      - platform: numeric_state
        entity_id: sensor.front_door_battery
        below: 25

    action:
      - service: script.notify_engine
        data:
          title: 'Low Battery'
          value1: 'The August Door lock is at {{ states("sensor.front_door_battery") }}% '
          apns_id: 'Battery_Alert'