- id: behaviour_put_laundry_away
  alias: "[Behaviour] Put laundry away"
  mode: single
  trigger:
    - platform: state
      entity_id:
        - input_boolean.washing_machine_done
      to: "off"
      for:
        hours: 24
        minutes: 0
        seconds: 0
  condition: [ ]
  action:
    - service: input_boolean.turn_on
      data: { }
      target:
        entity_id: input_boolean.put_laundry_away

- id: behaviour_put_laundry_away_reminder
  alias: "[Behaviour] Put laundry away reminder"
  trigger:
    - platform: state
      entity_id:
        - input_boolean.put_laundry_away
      to: "on"
  condition: [ ]
  action:
    - service: notify.mobile_app_iphone
      data:
        message: "Put laundry away"
        data:
          actions:
            - action: LAUNDRY_PUT_AWAY
              title: Mark done
    - delay:
        hours: 0
        minutes: 30
        seconds: 0
        milliseconds: 0
    - choose:
        - conditions:
            - condition: state
              entity_id: input_boolean.put_laundry_away
              state: 'on'
          sequence:
            - service: input_boolean.turn_off
              target:
                entity_id: input_boolean.put_laundry_away
            - service: input_boolean.turn_on
              target:
                entity_id: input_boolean.put_laundry_away

- id: mobile_action-laundry_put_away
  alias: '[Mobile-action] Laundry put away'
  description: ''
  mode: single
  trigger:
    - platform: event
      event_type: mobile_app_notification_action
      event_data:
        action: LAUNDRY_PUT_AWAY
  action:
    - service: input_boolean.turn_off
      target:
        entity_id: input_boolean.put_laundry_away