[ { "id": "8sleep - Combined Automation", "automation": "- alias: 8sleep - Combined Automation\n description: Handles wake display, temperature cycling, auto-off display, and sending\n temperatures to Eight Sleep API\n triggers:\n - id: button_on\n entity_id: binary_sensor.esphome_web_5c4f38_button\n from: 'off'\n to: 'on'\n trigger: state\n - id: button_off\n entity_id: binary_sensor.esphome_web_5c4f38_button\n from: 'on'\n to: 'off'\n for:\n seconds: 30\n trigger: state\n - id: button_off\n entity_id:\n - binary_sensor.esphome_web_5c4f38_button\n to: 'off'\n for:\n seconds: 30\n trigger: state\n from: unavailable\n - id: '-2'\n entity_id: input_select.eight_sleep_temperature_choices\n to: '-2'\n for:\n seconds: 10\n trigger: state\n - id: '-1'\n entity_id: input_select.eight_sleep_temperature_choices\n to: '-1'\n for:\n seconds: 10\n trigger: state\n - id: '0'\n entity_id: input_select.eight_sleep_temperature_choices\n to: '0'\n for:\n seconds: 10\n trigger: state\n - id: '1'\n entity_id: input_select.eight_sleep_temperature_choices\n to: '1'\n for:\n seconds: 10\n trigger: state\n conditions: []\n actions:\n - choose:\n - conditions:\n - condition: trigger\n id: button_on\n sequence:\n - if:\n - condition: state\n entity_id: light.esphome_web_5c4f38_backlight\n state: 'off'\n then:\n - action: light.turn_on\n metadata: {}\n data: {}\n target:\n entity_id: light.esphome_web_5c4f38_backlight\n else:\n - action: input_select.select_next\n metadata: {}\n data:\n cycle: true\n target:\n entity_id: input_select.eight_sleep_temperature_choices\n - conditions:\n - condition: trigger\n id: button_off\n sequence:\n - target:\n entity_id: light.esphome_web_5c4f38_backlight\n action: light.turn_off\n data: {}\n - conditions:\n - condition: or\n conditions:\n - condition: trigger\n id: '-2'\n - condition: trigger\n id: '-1'\n - condition: trigger\n id: '0'\n - condition: trigger\n id: '1'\n sequence:\n - condition: not\n conditions:\n - condition: state\n entity_id: sensor.jack_s_eight_sleep_side_bed_state_type\n state: 'off'\n - choose:\n - conditions:\n - condition: trigger\n id: '-2'\n sequence:\n - target:\n entity_id: sensor.jack_s_eight_sleep_side_bed_temperature\n data:\n sleep_stage: bedTimeLevel\n target: -20\n duration: 0\n action: eight_sleep.heat_set\n - conditions:\n - condition: trigger\n id: '-1'\n sequence:\n - target:\n entity_id: sensor.jack_s_eight_sleep_side_bed_temperature\n data:\n sleep_stage: current\n target: -10\n duration: 0\n action: eight_sleep.heat_set\n - conditions:\n - condition: trigger\n id: '0'\n sequence:\n - target:\n entity_id: sensor.jack_s_eight_sleep_side_bed_temperature\n data:\n sleep_stage: current\n target: 0\n duration: 0\n action: eight_sleep.heat_set\n - conditions:\n - condition: trigger\n id: '1'\n sequence:\n - target:\n entity_id: sensor.jack_s_eight_sleep_side_bed_temperature\n data:\n sleep_stage: current\n target: 10\n duration: 0\n action: eight_sleep.heat_set\n default: []\n mode: single", "config": [ { "name": "button", "room": "bedroom", "type": "binary_sensor", "id": { "entity_id": "binary_sensor.esphome_web_5c4f38_button", "device_id": null } }, { "name": "backlight", "room": "bedroom", "type": "light", "id": { "entity_id": "light.esphome_web_5c4f38_backlight", "device_id": null } }, { "name": "eight sleep temperature choices", "room": "bedroom", "type": "input_select", "id": { "entity_id": "input_select.eight_sleep_temperature_choices", "device_id": null } }, { "name": "jack's eight sleep side bed state type", "room": "bedroom", "type": "sensor", "id": { "entity_id": "sensor.jack_s_eight_sleep_side_bed_state_type", "device_id": null } }, { "name": "jack's eight sleep side bed temperature", "room": "bedroom", "type": "sensor", "id": { "entity_id": "sensor.jack_s_eight_sleep_side_bed_temperature", "device_id": null } } ] } ]