#-------------------------------------------
#  Realtime Debugging Related Packages
# @CCOSTAN
# Original Repo : https://github.com/CCOSTAN/Home-AssistantConfig
#-------------------------------------------
# homeassistant:
#   customize_glob:
#     "sensor.carlo_6*":
#
#     "sensor.staceys_iphone_*":

notify:
  - platform: ios
  - name: ios_family
    platform: group
    services:
      - service: mobile_app_stacey_6s
      - service: mobile_app_carlo_xsmax
      - service: mobile_app_paige_6s
  - name: ios_parents
    platform: group
    services:
      - service: mobile_app_stacey_6s
      - service: mobile_app_carlo_xsmax

mobile_app:

ios:
  push:
    categories:
      - name: Medicine
        identifier: 'tablet'
        actions:
          - identifier: 'TABLET_TAKEN'
            title: 'Tablet Taken'
            activationMode: 'background'
            authenticationRequired: no
            destructive: yes

          - identifier: 'NOT_HOME'
            title: 'I am not Home'
            activationMode: 'background'
            authenticationRequired: no
            destructive: no

## - Reminders to take my medicine
input_boolean:
  medicine:
    name: Medicine Reminder
    initial: off
    icon: mdi:tablet

automation:
  - alias: Tablet Already taken
    trigger:
      platform: event
      event_type: ios.notification_action_fired
      event_data:
        actionName: TABLET_TAKEN
    action:
      - service: input_boolean.turn_on
        entity_id: input_boolean.medicine

  - alias: Remind Me Later
    trigger:
      platform: event
      event_type: ios.notification_action_fired
      event_data:
        actionName: NOT_HOME
    action:
      - service: script.notify_engine
        data_template:
          title: 'Medicine Reminder'
          value1: 'Ok. I will remind you when you get home.'
          who: 'carlo'
      - wait_template: >-
          {{ states.device_tracker.carlo.state == 'home' }}
      - service: script.notify_engine
        data_template:
          title: 'Medicine Reminder'
          value1: 'Ok. I will remind you when you get home.'
          who: 'carlo'
      - service: notify.ios_carloxsmax
        data:
          message: "Now that your home, please take your medicine!"

  - alias: Medicine Reminder
    initial_state: true
    trigger:
      - platform: time_pattern
        minutes: '/45'
      - platform: time
        at: '21:30:00'
      - platform: state
        entity_id: device_tracker.carlo
        to: 'home'

    condition:
      - condition: time
        after: '21:30:00'
      - condition: state
        entity_id: device_tracker.carlo
        state: 'home'
      - condition: state
        entity_id: input_boolean.medicine
        state: 'off'

    action:
      - service: script.notify_engine
        data_template:
          title: 'Medicine Alert!'
          value1: 'Please take your Medicine!'
          ios_category: "tablet"
          who: "carlo"

## Reminders to take my Medicine! - End.