input_boolean:
  routine_welcome_home:
    name: Coming home · Say welcome
    initial: on
    icon: mdi:account-plus-outline

script:
  routine_coming_home:
    alias: Routine · Coming home
    sequence:
      # Enter home mode.
      - service: script.security_camera_off
      - service: light.turn_on
        entity_id: light.living_room_all_lights
      - service: script.music_join_sonoses

      # Check if welcome home is enabled, proceed with welcome routine.
      - condition: state
        entity_id: input_boolean.routine_welcome_home
        state: "on"

      - service: script.coming_home_welcome_home

  coming_home_welcome_home:
    alias: Routine · Coming home · Welcome home
    sequence:
      - service: script.say
        data_template:
          partials:
            - !include ../../templates/partials/greeting.yaml
            - !include ../../templates/partials/time.yaml
            # - "Here's the current status:" // TODO: figure out if there will be anything to say?
            - !include ../../templates/partials/window_suggestions.yaml
      - wait_template: "{{ is_state('input_boolean.sarah_talking', 'off') }}"
        timeout: 00:02:00
      - delay: 00:00:01

      - service: script.say
        data_template:
          message: >-

            {{
              [
                "I'll put some music on.",
                "I'll play some music.",
                "Here's some music."
              ] | random
            }}
      - delay: 00:00:02

      - service: script.music_play

automation:
  - alias: Routine · Coming home · Left work
    trigger:
      platform: event
      event_type: telegram_callback
      event_data:
        command: "/leaving_work_to_home"
    action:
      - service: telegram_bot.edit_replymarkup
        data_template:
          message_id: "last"
          chat_id: "{{ trigger.event.data.chat_id }}"
          inline_keyboard:
      - service: notify.telegram
        data_template:
          title: "🏠 *Presence Module · Leaving Work*"
          message: >-

            {{
              [
                "Okay, I'll be expecting you!",
                "Awesome! I'm prepping for your arrival",
                "Cool, I'll be ready!"
              ] | random
            }}
