5503 lines
238 KiB
JSON
5503 lines
238 KiB
JSON
[
|
||
{
|
||
"id": "c6382818-05ed-4590-be92-b367489fb0e1",
|
||
"automation": "- id: c6382818-05ed-4590-be92-b367489fb0e1\n alias: 'HELPER: Обновление списка пользователей, находящихся дома'\n triggers:\n - platform: state\n entity_id:\n - binary_sensor.andrei_is_home\n - person.master\n actions:\n - service: input_text.set_value\n target:\n entity_id: input_text.currently_home\n data:\n value: \"{% set home_users = [] %} {% if is_state('binary_sensor.andrei_is_home',\\\n \\ 'on') %}\\n {% set home_users = home_users + ['Andrei'] %}\\n{% endif %}\\\n \\ {{ home_users | join(', ') }}\\n\"",
|
||
"config": [
|
||
{
|
||
"name": "Andrei is home sensor",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.andrei_is_home",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Currently home input text",
|
||
"room": "unknown",
|
||
"type": "input_text",
|
||
"id": {
|
||
"entity_id": "input_text.currently_home",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "d8084e61-405b-4f92-8c86-527254cc6753",
|
||
"automation": "- id: d8084e61-405b-4f92-8c86-527254cc6753\n alias: HELPER:Переключение зимнего режима по месяцам\n description: 'Автоматизация, которая ежедневно проверяет, нужно ли включить или\n выключить зимний режим в зависимости от текущего месяца. Считаем «зимой» период\n с ноября (11) по март (3). Если время года подходит под зимний период, включаем\n boolean.winter_mode, иначе -- выключаем.\n\n '\n mode: single\n triggers:\n - platform: time\n at: 00:01:00\n - platform: homeassistant\n event: start\n conditions: []\n actions:\n - choose:\n - conditions:\n - condition: template\n value_template: '{{ now().month >= 11 or now().month <= 3 }}\n\n '\n sequence:\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.winter_mode\n default:\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.winter_mode",
|
||
"config": [
|
||
{
|
||
"name": "Winter mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.winter_mode",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "38ea50fb-09bc-4d39-a771-1727ab72f265",
|
||
"automation": "- id: 38ea50fb-09bc-4d39-a771-1727ab72f265\n alias: 'HELPER: Фаза: Включение датчика загрузки'\n description: Активируем system_startup_phase при старте Home Assistant\n mode: single\n triggers:\n - platform: homeassistant\n event: start\n actions:\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.system_startup_phase",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "03e3ffd0-4e1e-4200-b0e3-1ce6a2d77d6a",
|
||
"automation": "- id: 03e3ffd0-4e1e-4200-b0e3-1ce6a2d77d6a\n alias: 'HELPER: Фаза: Отключение датчика загрузки (2 минуты)'\n description: Выключаем input_boolean.system_startup_phase спустя 2 минуты после\n старта\n mode: single\n triggers:\n - platform: homeassistant\n event: start\n actions:\n - delay: 00:02:00\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.system_startup_phase",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "cc269239-a6dd-422f-ba2a-3d57e4c5981e",
|
||
"automation": "- id: cc269239-a6dd-422f-ba2a-3d57e4c5981e\n alias: 'HELPER: Установка режима тишины (23:00)'\n mode: single\n triggers:\n - platform: time\n at: '23:00:00'\n actions:\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.silent_mode",
|
||
"config": [
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "6ed14663-ebe5-4ab3-bc3b-43e682c45f3b",
|
||
"automation": "- id: 6ed14663-ebe5-4ab3-bc3b-43e682c45f3b\n alias: 'HELPER: Снятие режима тишины (09:00)'\n mode: single\n triggers:\n - platform: time\n at: 09:00:00\n actions:\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.silent_mode",
|
||
"config": [
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "7df1e59a-af5d-4496-be72-e687afdbf08e",
|
||
"automation": "- id: 7df1e59a-af5d-4496-be72-e687afdbf08e\n alias: 'HELPER: Обновление сенсора контроля уведомлений о уровне CO2'\n mode: single\n triggers:\n - platform: state\n entity_id: binary_sensor.livingroom_ventilation_status\n from: 'on'\n to: 'off'\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: input_boolean.turn_off\n target:\n entity_id:\n - input_boolean.co2_voice_notification_sensor\n - input_boolean.co2_text_notification_sensor",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Living room ventilation status",
|
||
"room": "living_room",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.livingroom_ventilation_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "CO2 voice notification sensor",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.co2_voice_notification_sensor",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "CO2 text notification sensor",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.co2_text_notification_sensor",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "5b187cde-0ad5-4132-bb68-a622dd15d6ff",
|
||
"automation": "- id: 5b187cde-0ad5-4132-bb68-a622dd15d6ff\n alias: 'HELPER: Сохранение состояний климатической техники'\n mode: single\n triggers:\n - platform: homeassistant\n event: shutdown\n actions:\n - choose:\n - conditions:\n - condition: state\n entity_id: climate.konditsioner\n state: 'on'\n - condition: state\n entity_id: input_boolean.winter_mode\n state: 'off'\n sequence:\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.climate_pre_restart_state\n default:\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.climate_pre_restart_state\n - choose:\n - conditions:\n - condition: state\n entity_id: switch.zhimi_mb3_a5d3_switch_status\n state: 'on'\n sequence:\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.fan_pre_restart_state\n default:\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.fan_pre_restart_state\n - choose:\n - conditions:\n - condition: state\n entity_id: switch.evolution_hf_878\n state: 'on'\n sequence:\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.humidifier_pre_restart_state\n default:\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.humidifier_pre_restart_state",
|
||
"config": [
|
||
{
|
||
"name": "Winter mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.winter_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Air conditioner",
|
||
"room": "living_room",
|
||
"type": "climate",
|
||
"id": {
|
||
"entity_id": "climate.konditsioner",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Zhimi fan switch",
|
||
"room": "living_room",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.zhimi_mb3_a5d3_switch_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Evolution humidifier",
|
||
"room": "living_room",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.evolution_hf_878",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Climate pre restart state",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.climate_pre_restart_state",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Fan pre restart state",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.fan_pre_restart_state",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Humidifier pre restart state",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.humidifier_pre_restart_state",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "457a6711-67fa-4cb2-bcab-63c0cc58e054",
|
||
"automation": "- id: 457a6711-67fa-4cb2-bcab-63c0cc58e054\n alias: 'HELPER: Восстановление состояний климатической техники'\n mode: single\n triggers:\n - platform: homeassistant\n event: start\n actions:\n - choose:\n - conditions:\n - condition: state\n entity_id: input_boolean.climate_pre_restart_state\n state: 'on'\n - condition: state\n entity_id: input_boolean.winter_mode\n state: 'off'\n sequence:\n - service: climate.turn_on\n target:\n entity_id: climate.konditsioner\n - choose:\n - conditions:\n - condition: state\n entity_id: input_boolean.fan_pre_restart_state\n state: 'on'\n sequence:\n - service: switch.turn_on\n target:\n entity_id: switch.zhimi_mb3_a5d3_switch_status\n - choose:\n - conditions:\n - condition: state\n entity_id: input_boolean.humidifier_pre_restart_state\n state: 'on'\n sequence:\n - service: switch.turn_on\n target:\n entity_id: switch.evolution_hf_878\n - service: input_boolean.turn_off\n target:\n entity_id:\n - input_boolean.climate_pre_restart_state\n - input_boolean.fan_pre_restart_state\n - input_boolean.humidifier_pre_restart_state",
|
||
"config": [
|
||
{
|
||
"name": "Winter mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.winter_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Air conditioner",
|
||
"room": "living_room",
|
||
"type": "climate",
|
||
"id": {
|
||
"entity_id": "climate.konditsioner",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Zhimi fan switch",
|
||
"room": "living_room",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.zhimi_mb3_a5d3_switch_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Evolution humidifier",
|
||
"room": "living_room",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.evolution_hf_878",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Climate pre restart state",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.climate_pre_restart_state",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Fan pre restart state",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.fan_pre_restart_state",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Humidifier pre restart state",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.humidifier_pre_restart_state",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "bee019e8-c011-4283-85df-4cbbbc00e92f",
|
||
"automation": "- id: bee019e8-c011-4283-85df-4cbbbc00e92f\n alias: 'Камеры: Управление в зависимости от присутствия'\n description: Включение/выключение камер в зависимости от того, кто дома, но с учетом\n режима форсированного отключения.\n mode: single\n triggers:\n - platform: state\n entity_id: binary_sensor.someone_is_home\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.force_camera_off\n state: 'off'\n actions:\n - choose:\n - conditions:\n - condition: state\n entity_id: binary_sensor.someone_is_home\n state: 'off'\n sequence:\n - service: switch.turn_on\n target:\n entity_id: group.cameras\n - service: notify.master\n data:\n message: 'Камеры включены: Никого нет дома.'\n - conditions:\n - condition: state\n entity_id: binary_sensor.someone_is_home\n state: 'on'\n sequence:\n - service: switch.turn_off\n target:\n entity_id: group.cameras\n - service: notify.master\n data:\n message: 'Камеры выключены: Кто-то дома.'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Someone is home",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.someone_is_home",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Force camera off",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.force_camera_off",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Cameras group",
|
||
"room": "unknown",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "group.cameras",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "98df0b92-1c60-4e48-a065-3412a0706124",
|
||
"automation": "- id: 98df0b92-1c60-4e48-a065-3412a0706124\n alias: 'Камеры: Блокировка включения при форсированном отключении'\n description: 'Эта автоматизация предназначена для предотвращения включения камер,\n когда активирован режим принудительного отключения (force_camera_off). Если один\n из переключателей камер переходит в состояние \"on\" при активном режиме, автоматизация\n немедленно отключает его и отправляет уведомление пользователю.\n\n '\n mode: parallel\n triggers:\n - platform: state\n entity_id:\n - switch.chuangmi_cn_309825146_ipc019_on_p_2_1\n - switch.chuangmi_cn_311366982_ipc019_on_p_2_1\n to: 'on'\n conditions:\n - condition: state\n entity_id: input_boolean.force_camera_off\n state: 'on'\n actions:\n - service: switch.turn_off\n target:\n entity_id:\n - switch.chuangmi_cn_309825146_ipc019_on_p_2_1\n - switch.chuangmi_cn_311366982_ipc019_on_p_2_1\n - service: notify.master\n data:\n message: Попытка включения камер заблокирована (форсированное отключение).",
|
||
"config": [
|
||
{
|
||
"name": "Force camera off",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.force_camera_off",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Chuangmi camera 1",
|
||
"room": "unknown",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.chuangmi_cn_309825146_ipc019_on_p_2_1",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Chuangmi camera 2",
|
||
"room": "unknown",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.chuangmi_cn_311366982_ipc019_on_p_2_1",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "779498b6-e63f-454d-8866-8e7e7a94d8e4",
|
||
"automation": "- id: 779498b6-e63f-454d-8866-8e7e7a94d8e4\n alias: 'MariaDB: Очистка базы в 3:00'\n description: 'Автоматизация запускается ежедневно в 03:00 и выполняет очистку базы\n данных с использованием сервиса recorder.purge, оставляя данные за последние 90\n дней. Это помогает предотвратить бесконтрольное разрастание БД.\n\n '\n mode: single\n trigger:\n - platform: time\n at: 03:40:00\n action:\n - service: recorder.purge\n data:\n keep_days: 90\n repack: false\n apply_to_entities: []",
|
||
"config": []
|
||
},
|
||
{
|
||
"id": "8a46561c-f48f-4c93-b53e-d1af940fdb6d",
|
||
"automation": "- id: 8a46561c-f48f-4c93-b53e-d1af940fdb6d\n alias: 'Рабочие дни: Выключение света, отпаривателя и ТВ (09:00-17:00)'\n description: 'В рабочие дни (ПН-ПТ) в период с 09:00 до 17:00, если режим уборки\n выключен и никого нет дома, отключаются все освещение, розетка отпаривателя и\n ТВ.\n\n '\n mode: single\n triggers:\n - platform: state\n entity_id: binary_sensor.someone_is_home\n to: 'off'\n - platform: time\n at: 09:00:00\n conditions:\n - condition: time\n weekday:\n - mon\n - tue\n - wed\n - thu\n - fri\n - condition: time\n after: 09:00:00\n before: '17:00:00'\n - condition: state\n entity_id: input_boolean.bathroom_cleaning_mode\n state: 'off'\n - condition: state\n entity_id: binary_sensor.someone_is_home\n state: 'off'\n actions:\n - service: homeassistant.turn_off\n target:\n entity_id: light.all_lights\n - service: switch.turn_off\n target:\n entity_id: switch.smart_plug_in_unit_vykliuchatel\n - service: homeassistant.turn_off\n target:\n entity_id: group.living_room_tv",
|
||
"config": [
|
||
{
|
||
"name": "Someone is home",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.someone_is_home",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "All lights group",
|
||
"room": "unknown",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.all_lights",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Smart plug switch",
|
||
"room": "unknown",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.smart_plug_in_unit_vykliuchatel",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Living room TV group",
|
||
"room": "living_room",
|
||
"type": "group",
|
||
"id": {
|
||
"entity_id": "group.living_room_tv",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom cleaning mode",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.bathroom_cleaning_mode",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "ee320693-2e76-435b-8012-3a908046d4d5e",
|
||
"automation": "- id: ee320693-2e76-435b-8012-3a908046d4d5e\n alias: Выключение отпаривателя при отсутствии дома\n description: 'Автоматизация отключает розетку отпаривателя (switch.smart_plug_in_unit_vykliuchatel),\n если датчик присутствия (binary_sensor.someone_is_home) фиксирует, что никого\n нет дома.\n\n '\n mode: single\n triggers:\n - platform: state\n entity_id: binary_sensor.someone_is_home\n to: 'off'\n conditions:\n - condition: state\n entity_id: binary_sensor.someone_is_home\n state: 'off'\n actions:\n - service: switch.turn_off\n target:\n entity_id: switch.smart_plug_in_unit_vykliuchatel",
|
||
"config": [
|
||
{
|
||
"name": "Someone is home",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.someone_is_home",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Smart plug switch",
|
||
"room": "unknown",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.smart_plug_in_unit_vykliuchatel",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "plant-send-pending-notifications",
|
||
"automation": "- id: plant-send-pending-notifications\n alias: 'Растения: Отправка отложенных уведомлений при возвращении домой'\n description: Если накопились уведомления за время отсутствия — отправим их по приходу.\n mode: single\n trigger:\n - platform: state\n entity_id: person.master\n to: home\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n action:\n - delay: 00:01:00\n - service: script.check_all_plants",
|
||
"config": [
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Check All Plants",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.check_all_plants",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "4370eb06-5640-4c42-adde-b91046f301f4-1",
|
||
"automation": "- id: 4370eb06-5640-4c42-adde-b91046f301f4-1\n alias: 'Растение. Молочай: Уведомление о поливе'\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.plant_alert_euphorbia_leuconeura_soil\n to: 'on'\n condition:\n - condition: state\n entity_id: person.master\n state: home\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: template\n value_template: '{% set last = states(''input_datetime.last_euphorbia_leuconeura_soil_notification'')\n %} {% set last_ts = as_timestamp(last) if last not in [''unknown'',''unavailable'',''none'']\n else 0 %} {% set cooldown = (states(''input_number.plants_notification_cooldown_hours'')\n | float(3) * 3600) | int %} {{ (now().timestamp() - last_ts) > cooldown }}'\n action:\n - service: script.plant_check_conditions\n data:\n plant_name: Молочай\n plant_name_latin: euphorbia_leuconeura",
|
||
"config": [
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plant alert euphorbia soil",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.plant_alert_euphorbia_leuconeura_soil",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Last euphorbia soil notification",
|
||
"room": "unknown",
|
||
"type": "input_datetime",
|
||
"id": {
|
||
"entity_id": "input_datetime.last_euphorbia_leuconeura_soil_notification",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plants notification cooldown hours",
|
||
"room": "unknown",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.plants_notification_cooldown_hours",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plant Check Conditions",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.plant_check_conditions",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "4370eb06-5640-4c42-adde-b91046f301f4-2",
|
||
"automation": "- id: 4370eb06-5640-4c42-adde-b91046f301f4-2\n alias: 'Растение. Молочай: Уведомление о температуре'\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.plant_alert_euphorbia_leuconeura_temperature\n to: 'on'\n condition:\n - condition: state\n entity_id: person.master\n state: home\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: template\n value_template: '{% set last = states(''input_datetime.last_euphorbia_leuconeura_temperature_notification'')\n %} {% set last_ts = as_timestamp(last) if last not in [''unknown'',''unavailable'',''none'']\n else 0 %} {% set cooldown = (states(''input_number.plants_notification_cooldown_hours'')\n | float(3) * 3600) | int %} {{ (now().timestamp() - last_ts) > cooldown }}'\n action:\n - service: script.plant_check_conditions\n data:\n plant_name: Молочай\n plant_name_latin: euphorbia_leuconeura",
|
||
"config": [
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plants notification cooldown hours",
|
||
"room": "unknown",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.plants_notification_cooldown_hours",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plant alert euphorbia temperature",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.plant_alert_euphorbia_leuconeura_temperature",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Last euphorbia temperature notification",
|
||
"room": "unknown",
|
||
"type": "input_datetime",
|
||
"id": {
|
||
"entity_id": "input_datetime.last_euphorbia_leuconeura_temperature_notification",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plant Check Conditions",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.plant_check_conditions",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "4370eb06-5640-4c42-adde-b91046f301f4-3",
|
||
"automation": "- id: 4370eb06-5640-4c42-adde-b91046f301f4-3\n alias: 'Растение. Молочай: Уведомление об освещенности'\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.plant_alert_euphorbia_leuconeura_illuminance\n to: 'on'\n condition:\n - condition: state\n entity_id: person.master\n state: home\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: template\n value_template: '{% set last = states(''input_datetime.last_euphorbia_leuconeura_illuminance_notification'')\n %} {% set last_ts = as_timestamp(last) if last not in [''unknown'',''unavailable'',''none'']\n else 0 %} {% set cooldown = (states(''input_number.plants_notification_cooldown_hours'')\n | float(3) * 3600) | int %} {{ (now().timestamp() - last_ts) > cooldown }}'\n action:\n - service: script.plant_check_conditions\n data:\n plant_name: Молочай\n plant_name_latin: euphorbia_leuconeura",
|
||
"config": [
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plants notification cooldown hours",
|
||
"room": "unknown",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.plants_notification_cooldown_hours",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plant alert euphorbia illuminance",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.plant_alert_euphorbia_leuconeura_illuminance",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Last euphorbia illuminance notification",
|
||
"room": "unknown",
|
||
"type": "input_datetime",
|
||
"id": {
|
||
"entity_id": "input_datetime.last_euphorbia_leuconeura_illuminance_notification",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plant Check Conditions",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.plant_check_conditions",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "plant-euphorbia-periodic-check",
|
||
"automation": "- id: plant-euphorbia-periodic-check\n alias: 'Растение. Молочай: Периодическая проверка'\n mode: single\n trigger:\n - platform: time_pattern\n hours: /6\n action:\n - service: script.plant_check_conditions\n data:\n plant_name: Молочай\n plant_name_latin: euphorbia_leuconeura",
|
||
"config": [
|
||
{
|
||
"name": "Plant Check Conditions",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.plant_check_conditions",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "3ee8085c-621a-49f0-98f6-cce0d5c3c49b",
|
||
"automation": "- id: 3ee8085c-621a-49f0-98f6-cce0d5c3c49b\n alias: 'Растение. Фикус лировидный: Уведомление о поливе'\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.plant_alert_ficus_lyrata_soil\n to: 'on'\n condition:\n - condition: state\n entity_id: person.master\n state: home\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: template\n value_template: '{% set last = states(''input_datetime.last_ficus_lyrata_soil_notification'')\n %} {% set last_ts = as_timestamp(last) if last not in [''unknown'',''unavailable'',''none'']\n else 0 %} {% set cooldown = (states(''input_number.plants_notification_cooldown_hours'')\n | float(3) * 3600) | int %} {{ (now().timestamp() - last_ts) > cooldown }}'\n action:\n - service: script.plant_check_conditions\n data:\n plant_name: Фикус лировидный\n plant_name_latin: ficus_lyrata",
|
||
"config": [
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plants notification cooldown hours",
|
||
"room": "unknown",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.plants_notification_cooldown_hours",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plant alert ficus soil",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.plant_alert_ficus_lyrata_soil",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Last ficus soil notification",
|
||
"room": "unknown",
|
||
"type": "input_datetime",
|
||
"id": {
|
||
"entity_id": "input_datetime.last_ficus_lyrata_soil_notification",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plant Check Conditions",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.plant_check_conditions",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "3ee8085c-621a-49f0-98f6-cce0d5c3c49c",
|
||
"automation": "- id: 3ee8085c-621a-49f0-98f6-cce0d5c3c49c\n alias: 'Растение. Фикус лировидный: Уведомление о температуре'\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.plant_alert_ficus_lyrata_temperature\n to: 'on'\n condition:\n - condition: state\n entity_id: person.master\n state: home\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: template\n value_template: '{% set last = states(''input_datetime.last_ficus_lyrata_temperature_notification'')\n %} {% set last_ts = as_timestamp(last) if last not in [''unknown'',''unavailable'',''none'']\n else 0 %} {% set cooldown = (states(''input_number.plants_notification_cooldown_hours'')\n | float(3) * 3600) | int %} {{ (now().timestamp() - last_ts) > cooldown }}'\n action:\n - service: script.plant_check_conditions\n data:\n plant_name: Фикус лировидный\n plant_name_latin: ficus_lyrata",
|
||
"config": [
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plants notification cooldown hours",
|
||
"room": "unknown",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.plants_notification_cooldown_hours",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plant alert ficus temperature",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.plant_alert_ficus_lyrata_temperature",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Last ficus temperature notification",
|
||
"room": "unknown",
|
||
"type": "input_datetime",
|
||
"id": {
|
||
"entity_id": "input_datetime.last_ficus_lyrata_temperature_notification",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Plant Check Conditions",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.plant_check_conditions",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "plant-ficus-periodic-check",
|
||
"automation": "- id: plant-ficus-periodic-check\n alias: 'Растение. Фикус лировидный: Периодическая проверка'\n mode: single\n trigger:\n - platform: time_pattern\n hours: /6\n action:\n - service: script.plant_check_conditions\n data:\n plant_name: Фикус лировидный\n plant_name_latin: ficus_lyrata",
|
||
"config": [
|
||
{
|
||
"name": "Plant Check Conditions",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.plant_check_conditions",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "dc1acbee-6ecd-45a4-8eae-ab69034c3117",
|
||
"automation": "- id: dc1acbee-6ecd-45a4-8eae-ab69034c3117\n alias: 'Ванная: Вытяжка, включение.'\n description: Включение вентилятора при высокой усреднённой влажности в ванной.\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.bathroom_humidity_max\n to: 'on'\n condition:\n - condition: state\n entity_id: fan.bathroom_relay_l1\n state: 'off'\n action:\n - service: fan.turn_on\n target:\n entity_id: fan.bathroom_relay_l1",
|
||
"config": [
|
||
{
|
||
"name": "Bathroom humidity max",
|
||
"room": "bathroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.bathroom_humidity_max",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom relay fan",
|
||
"room": "bathroom",
|
||
"type": "fan",
|
||
"id": {
|
||
"entity_id": "fan.bathroom_relay_l1",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "6ebb6fa8-9cd1-4ebd-839d-44d175e6c319",
|
||
"automation": "- id: 6ebb6fa8-9cd1-4ebd-839d-44d175e6c319\n alias: 'Ванная: Запуск таймера на продув по снижении влажности'\n description: При снижении влажности ниже минимального порога запускается таймер\n на 2 минуты перед отключением вентилятора.\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.bathroom_humidity_min\n to: 'on'\n action:\n - service: timer.start\n target:\n entity_id: timer.bathroom_fan_cooldown",
|
||
"config": [
|
||
{
|
||
"name": "Bathroom humidity min",
|
||
"room": "bathroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.bathroom_humidity_min",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom fan cooldown timer",
|
||
"room": "bathroom",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.bathroom_fan_cooldown",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "7a1db18b-0366-47cf-8260-6109b01447f9",
|
||
"automation": "- id: 7a1db18b-0366-47cf-8260-6109b01447f9\n alias: 'Ванная: Выключение вентилятора по окончании продува'\n description: После истечения таймера bathroom_fan_cooldown вентилятора автоматически\n выключают.\n mode: single\n trigger:\n - platform: event\n event_type: timer.finished\n event_data:\n entity_id: timer.bathroom_fan_cooldown\n action:\n - service: fan.turn_off\n target:\n entity_id: fan.bathroom_relay_l1",
|
||
"config": [
|
||
{
|
||
"name": "Bathroom relay fan",
|
||
"room": "bathroom",
|
||
"type": "fan",
|
||
"id": {
|
||
"entity_id": "fan.bathroom_relay_l1",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom fan cooldown timer",
|
||
"room": "bathroom",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.bathroom_fan_cooldown",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "5525cbdc-3a8d-4464-908e-795c8205b40c",
|
||
"automation": "- id: 5525cbdc-3a8d-4464-908e-795c8205b40c\n alias: 'Ванная: Освещение, вкл/выкл с выключателя'\n description: Управление светом через MQTT-выключатель.\n mode: restart\n trigger:\n - platform: device\n domain: mqtt\n device_id: cc6ef89720abb376a24e910e13f37902\n type: action\n subtype: single_left\n action:\n - if:\n condition: state\n entity_id: binary_sensor.is_night_mode\n state: 'on'\n then:\n - service: script.turn_on\n target:\n entity_id: script.bathroom_toggle_night_mode\n else:\n - service: script.turn_on\n target:\n entity_id: script.bathroom_toggle_day_mode",
|
||
"config": [
|
||
{
|
||
"name": "Bathroom MQTT switch device",
|
||
"room": "bathroom",
|
||
"type": "device",
|
||
"id": {
|
||
"entity_id": null,
|
||
"device_id": "cc6ef89720abb376a24e910e13f37902"
|
||
}
|
||
},
|
||
{
|
||
"name": "Is night mode",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.is_night_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom Toggle Day Mode",
|
||
"room": "Bathroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.bathroom_toggle_day_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom Toggle Night Mode",
|
||
"room": "Bathroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.bathroom_toggle_night_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Turn On",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.turn_on",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "0007279c-13b5-402b-9aef-bf264273fa90",
|
||
"automation": "- id: 0007279c-13b5-402b-9aef-bf264273fa90\n alias: 'Ванная: Освещение, вкл по движению и датчикам открытия'\n description: Включает свет в зависимости от времени суток.\n mode: restart\n trigger:\n - platform: state\n entity_id: binary_sensor.bathroom_open_door\n from: 'off'\n to: 'on'\n for:\n seconds: 1\n - platform: state\n entity_id: binary_sensor.bathroom_motions\n from: 'off'\n to: 'on'\n for:\n seconds: 1\n condition:\n - condition: state\n entity_id: input_boolean.bathroom_cleaning_mode\n state: 'off'\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.bathroom_lights_startup_protection\n state: 'off'\n action:\n - if:\n condition: state\n entity_id: binary_sensor.is_night_mode\n state: 'on'\n then:\n - service: script.turn_on\n target:\n entity_id: script.bathroom_turn_on_night_mode\n else:\n - service: script.turn_on\n target:\n entity_id: script.bathroom_turn_on_day_mode",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom cleaning mode",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.bathroom_cleaning_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Is night mode",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.is_night_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom open door",
|
||
"room": "bathroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.bathroom_open_door",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom motions",
|
||
"room": "bathroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.bathroom_motions",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom lights startup protection",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.bathroom_lights_startup_protection",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom Turn On Day Mode",
|
||
"room": "Bathroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.bathroom_turn_on_day_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom Turn On Night Mode",
|
||
"room": "Bathroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.bathroom_turn_on_night_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Turn On",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.turn_on",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "50323f55-c6dd-483a-8799-af3c57e3e363",
|
||
"automation": "- id: 50323f55-c6dd-483a-8799-af3c57e3e363\n alias: 'Ванная: Отмена таймера при обнаружении движения'\n description: Отменяет таймер, если снова появилось движение.\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.bathroom_motions\n to: 'on'\n condition:\n - condition: state\n entity_id: timer.timer_bathroom\n state: active\n - condition: state\n entity_id: input_boolean.bathroom_cleaning_mode\n state: 'off'\n action:\n - service: timer.cancel\n target:\n entity_id: timer.timer_bathroom",
|
||
"config": [
|
||
{
|
||
"name": "Bathroom cleaning mode",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.bathroom_cleaning_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom motions",
|
||
"room": "bathroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.bathroom_motions",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom timer",
|
||
"room": "bathroom",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.timer_bathroom",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "e519fa4c-bbad-4b0d-b06c-8521b3b10131",
|
||
"automation": "- id: e519fa4c-bbad-4b0d-b06c-8521b3b10131\n alias: 'Ванная: Запуск таймера при отсутствии движения'\n description: Если движения нет 1 минуту, запускает таймер авто-выключения.\n mode: restart\n trigger:\n - platform: state\n entity_id: binary_sensor.bathroom_motions\n to: 'off'\n for:\n minutes: 1\n condition:\n - condition: state\n entity_id: group.bathroom_all_lights\n state: 'on'\n - condition: state\n entity_id: input_boolean.bathroom_cleaning_mode\n state: 'off'\n action:\n - service: timer.start\n target:\n entity_id: timer.timer_bathroom\n data:\n duration: '{{ (states(''input_number.bathroom_timer_duration'') | float * 60)\n | int }}'",
|
||
"config": [
|
||
{
|
||
"name": "Bathroom cleaning mode",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.bathroom_cleaning_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom motions",
|
||
"room": "bathroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.bathroom_motions",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom timer",
|
||
"room": "bathroom",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.timer_bathroom",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom timer duration",
|
||
"room": "bathroom",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.bathroom_timer_duration",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom all lights group",
|
||
"room": "bathroom",
|
||
"type": "group",
|
||
"id": {
|
||
"entity_id": "group.bathroom_all_lights",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "b30b7ad8-6563-4279-a78f-1a113f9cb252",
|
||
"automation": "- id: b30b7ad8-6563-4279-a78f-1a113f9cb252\n alias: 'Ванная: Освещение, выключение по таймеру'\n description: Выключает свет по истечении таймера.\n mode: single\n trigger:\n - platform: event\n event_type: timer.finished\n event_data:\n entity_id: timer.timer_bathroom\n condition:\n - condition: state\n entity_id: input_boolean.bathroom_cleaning_mode\n state: 'off'\n action:\n - service: light.turn_off\n target:\n entity_id: group.bathroom_all_lights",
|
||
"config": [
|
||
{
|
||
"name": "Bathroom cleaning mode",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.bathroom_cleaning_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom timer",
|
||
"room": "bathroom",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.timer_bathroom",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom all lights group",
|
||
"room": "bathroom",
|
||
"type": "group",
|
||
"id": {
|
||
"entity_id": "group.bathroom_all_lights",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "0c5020c3-e674-4789-8086-38dbc07253d7",
|
||
"automation": "- id: 0c5020c3-e674-4789-8086-38dbc07253d7\n alias: 'Ванная: Включение реле основного света при недоступности спотов'\n description: Включает резервный свет, если >=2 спотов 'unavailable'.\n mode: single\n trigger:\n - platform: state\n entity_id:\n - light.bathroom_spot_r1_philips\n - light.bathroom_spot_r2_philips\n - light.bathroom_spot_l1_philips\n - light.bathroom_spot_c1_philips\n - light.bathroom_spot_c2_philips\n to: unavailable\n for:\n seconds: 30\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.bathroom_lights_startup_protection\n state: 'off'\n - condition: state\n entity_id: light.bathroom_main\n state: 'off'\n - condition: template\n value_template: \"{% set unavailable_count = \\n [states.light.bathroom_spot_r1_philips,\\n\\\n \\ states.light.bathroom_spot_r2_philips,\\n states.light.bathroom_spot_l1_philips,\\n\\\n \\ states.light.bathroom_spot_c1_philips,\\n states.light.bathroom_spot_c2_philips]\\n\\\n \\ | selectattr('state', 'eq', 'unavailable')\\n | list | length %}\\n{{ unavailable_count\\\n \\ >= 2 }}\\n\"\n action:\n - service: light.turn_on\n target:\n entity_id: light.bathroom_main\n - service: notify.master\n data:\n message: ⚠️ Включено резервное освещение в ванной. Недоступны споты.",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom lights startup protection",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.bathroom_lights_startup_protection",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom spot R1 Philips",
|
||
"room": "bathroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.bathroom_spot_r1_philips",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom spot R2 Philips",
|
||
"room": "bathroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.bathroom_spot_r2_philips",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom spot L1 Philips",
|
||
"room": "bathroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.bathroom_spot_l1_philips",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom spot C1 Philips",
|
||
"room": "bathroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.bathroom_spot_c1_philips",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom spot C2 Philips",
|
||
"room": "bathroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.bathroom_spot_c2_philips",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom main light",
|
||
"room": "bathroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.bathroom_main",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "14a6f0ef-8217-4fc6-8dca-067875b950a7",
|
||
"automation": "- id: 14a6f0ef-8217-4fc6-8dca-067875b950a7\n alias: 'Ванная: Выключение света после перезагрузки'\n description: Выключает свет после старта, если нет движения.\n mode: single\n trigger:\n - platform: homeassistant\n event: start\n action:\n - delay:\n seconds: 30\n - condition: state\n entity_id: binary_sensor.bathroom_motions\n state: 'off'\n for:\n minutes: 1\n - service: light.turn_off\n target:\n entity_id:\n - group.bathroom_all_lights\n - light.bathroom_main",
|
||
"config": [
|
||
{
|
||
"name": "Bathroom motions",
|
||
"room": "bathroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.bathroom_motions",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom all lights group",
|
||
"room": "bathroom",
|
||
"type": "group",
|
||
"id": {
|
||
"entity_id": "group.bathroom_all_lights",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom main light",
|
||
"room": "bathroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.bathroom_main",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "048bc34f-9e6d-475c-84ed-0af54dedeed9",
|
||
"automation": "- id: 048bc34f-9e6d-475c-84ed-0af54dedeed9\n alias: 'Ванная: Таймер защиты при запуске'\n mode: single\n trigger:\n - platform: homeassistant\n event: start\n action:\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.bathroom_lights_startup_protection\n - delay:\n minutes: 5\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.bathroom_lights_startup_protection",
|
||
"config": [
|
||
{
|
||
"name": "Bathroom lights startup protection",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.bathroom_lights_startup_protection",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "a658b6fc-d264-4c6b-8185-e3b503f5a7e5",
|
||
"automation": "- id: a658b6fc-d264-4c6b-8185-e3b503f5a7e5\n alias: 'Спальня: Отключение розетки при зарядке телефона Андрея ночью'\n description: 'Отключение розетки для зарядки Google Pixel 8 PRO, чтобы предотвратить\n перезарядку и перегрев устройства ночью.\n\n '\n mode: single\n trigger:\n - platform: numeric_state\n entity_id: sensor.pixel_8_pro_battery_level\n above: 99\n for:\n minutes: 1\n condition:\n - condition: state\n entity_id: sensor.pixel_8_pro_battery_state\n state: charging\n - condition: time\n after: 01:00:00\n before: 07:00:00\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: template\n value_template: '{{ states(''sensor.pixel_8_pro_battery_level'') not in [''unknown'',\n ''unavailable''] }}'\n - condition: state\n entity_id: switch.0x00158d0002530ba3\n state: 'on'\n action:\n - service: switch.turn_off\n target:\n entity_id: switch.0x00158d0002530ba3\n - service: system_log.write\n data:\n message: 'Розетка зарядки отключена ночью (уровень: {{ states(''sensor.pixel_8_pro_battery_level'')\n }}%).'\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Pixel 8 Pro battery level",
|
||
"room": "bedroom",
|
||
"type": "sensor",
|
||
"id": {
|
||
"entity_id": "sensor.pixel_8_pro_battery_level",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Pixel 8 Pro battery state",
|
||
"room": "bedroom",
|
||
"type": "sensor",
|
||
"id": {
|
||
"entity_id": "sensor.pixel_8_pro_battery_state",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bedroom plug",
|
||
"room": "bedroom",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.0x00158d0002530ba3",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "9f1229c2-0ce2-4483-9953-1f6cdc6fa18e",
|
||
"automation": "- id: 9f1229c2-0ce2-4483-9953-1f6cdc6fa18e\n alias: Уведомление о низкой температуре в спальне (усреднённое значение)\n description: 'Уведомление, если температура в спальне ниже 20° и открыта дверь/окно.\n\n '\n mode: single\n trigger:\n - platform: numeric_state\n entity_id: sensor.temperatura_v_spalne_sglazhennaia\n below: 20\n for:\n minutes: 1\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'off'\n - condition: state\n entity_id: binary_sensor.0x00158d00044d5d11_contact\n state: 'on'\n - condition: state\n entity_id: binary_sensor.someone_is_home\n state: 'on'\n - condition: template\n value_template: '{{ states(''sensor.temperatura_v_spalne_sglazhennaia'') not in\n [''unknown'', ''unavailable''] }}'\n - condition: state\n entity_id: input_boolean.bedroom_th_notice\n state: 'off'\n action:\n - variables:\n message: Температура в спальне ниже 20°. Динозавры любят тепло! Закройте балкон\n в спальне.\n - choose:\n - conditions:\n - condition: state\n entity_id: person.master\n state: home\n sequence:\n - service: notify.master\n data:\n message: '{{ message }}'\n - service: script.yandex_tts_temp_status\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.bedroom_th_notice\n - service: timer.start\n target:\n entity_id: timer.bedroom_th_notice_reset\n data:\n duration: 00:{{ states('input_number.low_th_notification_reset_period') | int\n }}:00\n - service: system_log.write\n data:\n message: Уведомление о низкой температуре в спальне отправлено ({{ states('sensor.temperatura_v_spalne_sglazhennaia')\n }}°).\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Someone is home",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.someone_is_home",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bedroom temperature smoothed",
|
||
"room": "bedroom",
|
||
"type": "sensor",
|
||
"id": {
|
||
"entity_id": "sensor.temperatura_v_spalne_sglazhennaia",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bedroom contact sensor",
|
||
"room": "bedroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.0x00158d00044d5d11_contact",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bedroom temperature notice",
|
||
"room": "bedroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.bedroom_th_notice",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bedroom notice reset timer",
|
||
"room": "bedroom",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.bedroom_th_notice_reset",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Low temperature notification reset period",
|
||
"room": "unknown",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.low_th_notification_reset_period",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS Temp Status",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_temp_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "fdf3d865-6bdb-4c9b-9acd-fa7f7dc432d6",
|
||
"automation": "- id: fdf3d865-6bdb-4c9b-9acd-fa7f7dc432d6\n alias: 'HELPER: Сброс уведомлений о температуре в спальне'\n mode: single\n trigger:\n - platform: event\n event_type: timer.finished\n event_data:\n entity_id: timer.bedroom_th_notice_reset\n action:\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.bedroom_th_notice\n - service: system_log.write\n data:\n message: Флаг уведомления о температуре в спальне сброшен.\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "Bedroom temperature notice",
|
||
"room": "bedroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.bedroom_th_notice",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bedroom notice reset timer",
|
||
"room": "bedroom",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.bedroom_th_notice_reset",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "fc57ec27-9c9d-489a-8f5f-050b489466f7",
|
||
"automation": "- id: fc57ec27-9c9d-489a-8f5f-050b489466f7\n alias: 'Прихожая: Вкл/выкл света кнопкой'\n description: Тоггл света по кнопке; после — старт/отмена таймера по факту.\n mode: restart\n trigger:\n - platform: device\n domain: mqtt\n device_id: cfd464e1cbfa3da2ddd4f2109d74eb4e\n type: action\n subtype: single\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n action:\n - type: toggle\n device_id: 61c0ac07893316543e261176eb0cb5f9\n entity_id: 89add52cab26b9b6bcad7e86fd6387ec\n domain: light\n - choose:\n - conditions:\n - condition: or\n conditions:\n - condition: state\n entity_id: light.hallway_switch\n state: 'on'\n - condition: state\n entity_id: light.gateway_light_04cf8c977cdd\n state: 'on'\n sequence:\n - service: timer.start\n target:\n entity_id: timer.timer_hallway\n data:\n duration: '{{ (states(''input_number.hallway_timer_duration'') | float(1.5)\n * 60) | int }}'\n default:\n - service: timer.cancel\n target:\n entity_id: timer.timer_hallway\n - service: system_log.write\n data:\n message: Свет в прихожей toggled по кнопке.\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway MQTT device",
|
||
"room": "hallway",
|
||
"type": "device",
|
||
"id": {
|
||
"entity_id": null,
|
||
"device_id": "cfd464e1cbfa3da2ddd4f2109d74eb4e"
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway light device",
|
||
"room": "hallway",
|
||
"type": "device",
|
||
"id": {
|
||
"entity_id": null,
|
||
"device_id": "61c0ac07893316543e261176eb0cb5f9"
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway switch light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.hallway_switch",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Gateway light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.gateway_light_04cf8c977cdd",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway timer",
|
||
"room": "hallway",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.timer_hallway",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway timer duration",
|
||
"room": "hallway",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.hallway_timer_duration",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway Light Entity",
|
||
"room": "Hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "89add52cab26b9b6bcad7e86fd6387ec",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "3c9a07a9-58ee-4287-87ee-734687c93bba",
|
||
"automation": "- id: 3c9a07a9-58ee-4287-87ee-734687c93bba\n alias: 'Прихожая: Включение освещения при открытии двери'\n description: Включает свет при устойчиво открытой двери.\n mode: restart\n trigger:\n - platform: state\n entity_id: binary_sensor.hallway_door_contact\n to: 'on'\n for:\n seconds: 5\n condition:\n - condition: state\n entity_id: light.hallway_switch\n state: 'off'\n - condition: time\n after: 08:30:00\n before: '23:00:00'\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: template\n value_template: '{{ states(''binary_sensor.hallway_door_contact'') not in [''unknown'',''unavailable'','''']\n }}'\n action:\n - service: light.turn_on\n target:\n entity_id: light.hallway_switch\n - service: timer.start\n target:\n entity_id: timer.timer_hallway\n data:\n duration: '{{ (states(''input_number.hallway_timer_duration'') | float(1.5)\n * 60) | int }}'\n - service: system_log.write\n data:\n message: Свет в прихожей включён по двери.\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway switch light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.hallway_switch",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway timer",
|
||
"room": "hallway",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.timer_hallway",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway timer duration",
|
||
"room": "hallway",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.hallway_timer_duration",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway door contact",
|
||
"room": "hallway",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.hallway_door_contact",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "7f815fb8-98f4-437a-96fc-06984d9a4a25",
|
||
"automation": "- id: 7f815fb8-98f4-437a-96fc-06984d9a4a25\n alias: 'Прихожая: Вкл света при движении и низкой освещенности'\n description: Включает подсветку шлюза при движении и низкой освещённости.\n mode: restart\n trigger:\n - platform: state\n entity_id: binary_sensor.hallway_motion_occupancy\n to: 'on'\n for:\n seconds: 10\n condition:\n - condition: numeric_state\n entity_id: sensor.illumination_04cf8c977cdd\n below: 250\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: template\n value_template: '{{ states(''binary_sensor.hallway_motion_occupancy'') not in\n [''unknown'',''unavailable'',''''] }}'\n action:\n - service: light.turn_on\n target:\n entity_id: light.gateway_light_04cf8c977cdd\n data:\n brightness_pct: 7\n - service: timer.start\n target:\n entity_id: timer.timer_hallway\n data:\n duration: '{{ (states(''input_number.hallway_timer_duration'') | float(1.5)\n * 60) | int }}'\n - service: system_log.write\n data:\n message: Свет в прихожей включён по движению.\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Gateway light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.gateway_light_04cf8c977cdd",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway timer",
|
||
"room": "hallway",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.timer_hallway",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway timer duration",
|
||
"room": "hallway",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.hallway_timer_duration",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway motion occupancy",
|
||
"room": "hallway",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.hallway_motion_occupancy",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Gateway illumination sensor",
|
||
"room": "hallway",
|
||
"type": "sensor",
|
||
"id": {
|
||
"entity_id": "sensor.illumination_04cf8c977cdd",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "3b6e37de-3b10-4201-afad-221dbe4cd4a0",
|
||
"automation": "- id: 3b6e37de-3b10-4201-afad-221dbe4cd4a0\n alias: 'Прихожая: Запуск таймера при отсутствии движения'\n description: Стартует таймер, когда движение прекратилось.\n mode: restart\n trigger:\n - platform: state\n entity_id: binary_sensor.hallway_motion_occupancy\n to: 'off'\n for:\n seconds: 10\n condition:\n - condition: or\n conditions:\n - condition: state\n entity_id: light.hallway_switch\n state: 'on'\n - condition: state\n entity_id: light.gateway_light_04cf8c977cdd\n state: 'on'\n - condition: state\n entity_id: input_boolean.bathroom_cleaning_mode\n state: 'off'\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n action:\n - service: timer.start\n target:\n entity_id: timer.timer_hallway\n data:\n duration: '{{ (states(''input_number.hallway_timer_duration'') | float(1.5)\n * 60) | int }}'\n - service: system_log.write\n data:\n message: Таймер прихожей запущен (отсутствие движения).\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom cleaning mode",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.bathroom_cleaning_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway switch light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.hallway_switch",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Gateway light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.gateway_light_04cf8c977cdd",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway timer",
|
||
"room": "hallway",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.timer_hallway",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway timer duration",
|
||
"room": "hallway",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.hallway_timer_duration",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway motion occupancy",
|
||
"room": "hallway",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.hallway_motion_occupancy",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "479b917d-e4c2-4149-97e7-d12779b9f3ce",
|
||
"automation": "- id: 479b917d-e4c2-4149-97e7-d12779b9f3ce\n alias: 'Прихожая: Перезапуск таймера при обнаружении движения'\n description: Продлевает освещение при новом движении.\n mode: restart\n trigger:\n - platform: state\n entity_id: binary_sensor.hallway_motion_occupancy\n to: 'on'\n for:\n seconds: 5\n condition:\n - condition: or\n conditions:\n - condition: state\n entity_id: light.hallway_switch\n state: 'on'\n - condition: state\n entity_id: light.gateway_light_04cf8c977cdd\n state: 'on'\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n action:\n - service: timer.cancel\n target:\n entity_id: timer.timer_hallway\n - service: timer.start\n target:\n entity_id: timer.timer_hallway\n data:\n duration: '{{ (states(''input_number.hallway_timer_duration'') | float(1.5)\n * 60) | int }}'\n - service: system_log.write\n data:\n message: Таймер прихожей перезапущен (движение).\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway switch light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.hallway_switch",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Gateway light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.gateway_light_04cf8c977cdd",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway timer",
|
||
"room": "hallway",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.timer_hallway",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway timer duration",
|
||
"room": "hallway",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.hallway_timer_duration",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway motion occupancy",
|
||
"room": "hallway",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.hallway_motion_occupancy",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "7f6bdbae-a73b-4509-8db8-43f71a3525ca",
|
||
"automation": "- id: 7f6bdbae-a73b-4509-8db8-43f71a3525ca\n alias: 'Прихожая: Выключение света по таймеру'\n description: Выключает освещение по окончании таймера (кроме режима уборки).\n mode: single\n trigger:\n - platform: event\n event_type: timer.finished\n event_data:\n entity_id: timer.timer_hallway\n condition:\n - condition: state\n entity_id: input_boolean.bathroom_cleaning_mode\n state: 'off'\n action:\n - service: light.turn_off\n target:\n entity_id:\n - light.hallway_switch\n - light.gateway_light_04cf8c977cdd\n - service: system_log.write\n data:\n message: Свет в прихожей выключен по таймеру.\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "Bathroom cleaning mode",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.bathroom_cleaning_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway switch light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.hallway_switch",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Gateway light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.gateway_light_04cf8c977cdd",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway timer",
|
||
"room": "hallway",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.timer_hallway",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "first-door-home-automation",
|
||
"automation": "- id: first-door-home-automation\n alias: 'Прихожая: Включение света при первом открытии двери после прихода домой'\n description: Если человек только пришёл (менее 10 минут), первое открытие двери\n включает свет.\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.hallway_door_contact\n to: 'on'\n for:\n seconds: 5\n condition:\n - condition: state\n entity_id: input_boolean.hallway_first_door_open\n state: 'off'\n - condition: state\n entity_id: person.master\n state: home\n - condition: template\n value_template: '{{ (as_timestamp(now()) - as_timestamp(states.person.master.last_changed))\n < 600 }}'\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: template\n value_template: '{{ states(''binary_sensor.hallway_door_contact'') not in [''unknown'',''unavailable'','''']\n }}'\n action:\n - service: light.turn_on\n target:\n entity_id: light.hallway_switch\n - service: light.turn_on\n target:\n entity_id: light.gateway_light_04cf8c977cdd\n data:\n brightness_pct: 100\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.hallway_first_door_open\n - service: timer.start\n target:\n entity_id: timer.timer_hallway\n data:\n duration: '{{ (states(''input_number.hallway_timer_duration'') | float(1.5)\n * 60) | int }}'\n - service: system_log.write\n data:\n message: Свет в прихожей включён при первом входе.\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway switch light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.hallway_switch",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Gateway light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.gateway_light_04cf8c977cdd",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway timer",
|
||
"room": "hallway",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.timer_hallway",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway timer duration",
|
||
"room": "hallway",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.hallway_timer_duration",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway door contact",
|
||
"room": "hallway",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.hallway_door_contact",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway first door open",
|
||
"room": "hallway",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.hallway_first_door_open",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "reset-first-door-flag",
|
||
"automation": "- id: reset-first-door-flag\n alias: 'Прихожая: Сброс флага первого открытия двери'\n description: Сбрасывает флаг при уходе (not_home).\n mode: single\n trigger:\n - platform: state\n entity_id: person.master\n to: not_home\n action:\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.hallway_first_door_open\n - service: system_log.write\n data:\n message: Флаг первого открытия двери сброшен (ушёл из дома).\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway first door open",
|
||
"room": "hallway",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.hallway_first_door_open",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "37a7b942-71ea-456e-8f9e-1718c8c34a8d",
|
||
"automation": "- id: 37a7b942-71ea-456e-8f9e-1718c8c34a8d\n alias: 'Уведомление. Яндекс: Звонок в дверь'\n description: Алиса произносит фразу и мигает светом при нажатии кнопки.\n mode: restart\n trigger:\n - platform: device\n domain: mqtt\n device_id: d2c3001cdc59660c456de45aec09da91\n type: action\n subtype: single\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'off'\n - condition: state\n entity_id: binary_sensor.someone_is_home\n state: 'on'\n action:\n - variables:\n was_on_led: '{{ is_state(''light.working_room_led'', ''on'') }}'\n - service: script.yandex_tts_click_outdoor_button\n - repeat:\n count: '{{ states(''input_number.hallway_blink_count'') | int }}'\n sequence:\n - service: light.turn_on\n target:\n entity_id:\n - light.gateway_light_04cf8c977cdd\n - light.working_room_led\n - delay: 00:00:01\n - service: light.turn_off\n target:\n entity_id:\n - light.gateway_light_04cf8c977cdd\n - light.working_room_led\n - delay: 00:00:01\n - choose:\n - conditions:\n - condition: template\n value_template: '{{ was_on_led }}'\n sequence:\n - service: light.turn_on\n target:\n entity_id: light.working_room_led\n default:\n - service: light.turn_off\n target:\n entity_id: light.working_room_led\n - service: system_log.write\n data:\n message: Обработан звонок в дверь (мигание выполнено).\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Someone is home",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.someone_is_home",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Gateway light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.gateway_light_04cf8c977cdd",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Outdoor button MQTT device",
|
||
"room": "hallway",
|
||
"type": "device",
|
||
"id": {
|
||
"entity_id": null,
|
||
"device_id": "d2c3001cdc59660c456de45aec09da91"
|
||
}
|
||
},
|
||
{
|
||
"name": "Working room LED",
|
||
"room": "working_room",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.working_room_led",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway blink count",
|
||
"room": "hallway",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.hallway_blink_count",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS Click Outdoor Button",
|
||
"room": "Hallway",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_click_outdoor_button",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "26345165-2c00-489c-af7b-c4b92110c937",
|
||
"automation": "- id: 26345165-2c00-489c-af7b-c4b92110c937\n alias: Уведомление. Входную кнопку пытаются снять\n description: TTS + Telegram при встряхивании кнопки.\n mode: single\n trigger:\n - platform: device\n domain: mqtt\n device_id: d2c3001cdc59660c456de45aec09da91\n type: action\n subtype: shake\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'off'\n action:\n - service: script.yandex_tts_shaking_outdoor_button\n - service: notify.master\n data:\n message: ⚠️ Внимание! Входную кнопку пытаются снять 🛑\n - service: system_log.write\n data:\n message: Обнаружена попытка снятия входной кнопки.\n level: warning",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Outdoor button MQTT device",
|
||
"room": "hallway",
|
||
"type": "device",
|
||
"id": {
|
||
"entity_id": null,
|
||
"device_id": "d2c3001cdc59660c456de45aec09da91"
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS Shaking Outdoor Button",
|
||
"room": "Hallway",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_shaking_outdoor_button",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "b29835d5-9911-47ec-8630-2adda70be854",
|
||
"automation": "- id: b29835d5-9911-47ec-8630-2adda70be854\n alias: 'Кухня: Переключение освещения выключателями'\n description: 'Управление основным светом и подсветкой фартука через кухонный выключатель\n (правая клавиша) и сценический выключатель (1_single / 2_single).\n\n '\n mode: restart\n trigger:\n - platform: device\n domain: mqtt\n device_id: cc6ef89720abb376a24e910e13f37902\n type: action\n subtype: single_right\n id: kitchen_switch_right\n - platform: device\n domain: mqtt\n device_id: 719cda594198c3eafa3817b9230f2afa\n type: action\n subtype: 1_single\n id: scenic_1_single\n - platform: device\n domain: mqtt\n device_id: 719cda594198c3eafa3817b9230f2afa\n type: action\n subtype: 2_single\n id: scenic_2_single\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n action:\n - choose:\n - conditions:\n - condition: trigger\n id: kitchen_switch_right\n sequence:\n - type: toggle\n device_id: cc6ef89720abb376a24e910e13f37902\n entity_id: 6ecc35aae49d8307be87809073a32233\n domain: light\n - conditions:\n - condition: trigger\n id: scenic_1_single\n sequence:\n - service: light.toggle\n target:\n entity_id: light.kitchen_fartuh\n - conditions:\n - condition: trigger\n id: scenic_2_single\n sequence:\n - service: light.toggle\n target:\n entity_id: light.kitchen_main_light",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom MQTT switch device",
|
||
"room": "bathroom",
|
||
"type": "device",
|
||
"id": {
|
||
"entity_id": null,
|
||
"device_id": "cc6ef89720abb376a24e910e13f37902"
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen scenic switch device",
|
||
"room": "kitchen",
|
||
"type": "device",
|
||
"id": {
|
||
"entity_id": null,
|
||
"device_id": "719cda594198c3eafa3817b9230f2afa"
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen fartuh light",
|
||
"room": "kitchen",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.kitchen_fartuh",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen main light",
|
||
"room": "kitchen",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.kitchen_main_light",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen Main Light Entity",
|
||
"room": "Kitchen",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "6ecc35aae49d8307be87809073a32233",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "dc8af8f7-c0f5-4244-867b-00fc546039ba",
|
||
"automation": "- id: dc8af8f7-c0f5-4244-867b-00fc546039ba\n alias: 'Кухня: Предупреждение о необходимости включения вытяжки (гистерезис)'\n description: 'При включении binary_sensor.kitchen_need_ventilation (off→on) отправляем\n уведомление и выставляем флаг kitchen_fan_cool_down, чтобы не повторяться.\n\n '\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.kitchen_need_ventilation\n from: 'off'\n to: 'on'\n condition:\n - condition: state\n entity_id: input_boolean.kitchen_fan_cool_down\n state: 'off'\n - condition: state\n entity_id: timer.kitchen_notification_cooldown_timer\n state: idle\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'off'\n action:\n - service: script.yandex_tts_kitchen_fan_alert\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.kitchen_fan_cool_down\n - service: timer.start\n target:\n entity_id: timer.kitchen_notification_cooldown_timer\n data:\n duration: '{{ (states(''input_number.kitchen_notification_cooldown_min'') |\n float(30) * 60) | int }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen need ventilation",
|
||
"room": "kitchen",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.kitchen_need_ventilation",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen fan cool down",
|
||
"room": "kitchen",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.kitchen_fan_cool_down",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen notification cooldown timer",
|
||
"room": "kitchen",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.kitchen_notification_cooldown_timer",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen notification cooldown minutes",
|
||
"room": "kitchen",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.kitchen_notification_cooldown_min",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS Kitchen Fan Alert",
|
||
"room": "Kitchen",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_kitchen_fan_alert",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "8b7c3a73-7d74-4e6f-b1d5-4a9c1e3a9c12",
|
||
"automation": "- id: 8b7c3a73-7d74-4e6f-b1d5-4a9c1e3a9c12\n alias: 'Кухня: Сброс предупреждения о необходимости вытяжки (гистерезис)'\n description: Когда условия нормализовались (off), сбрасываем флаг.\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.kitchen_need_ventilation\n from: 'on'\n to: 'off'\n condition: []\n action:\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.kitchen_fan_cool_down",
|
||
"config": [
|
||
{
|
||
"name": "Kitchen need ventilation",
|
||
"room": "kitchen",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.kitchen_need_ventilation",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen fan cool down",
|
||
"room": "kitchen",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.kitchen_fan_cool_down",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "10f4f44c-a559-4281-9a1b-18aac1fd845b",
|
||
"automation": "- id: 10f4f44c-a559-4281-9a1b-18aac1fd845b\n alias: 'Кухня: Сброс флага вытяжки при старте'\n mode: single\n trigger:\n - platform: homeassistant\n event: start\n condition:\n - condition: state\n entity_id: binary_sensor.kitchen_need_ventilation\n state: 'off'\n action:\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.kitchen_fan_cool_down",
|
||
"config": [
|
||
{
|
||
"name": "Kitchen need ventilation",
|
||
"room": "kitchen",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.kitchen_need_ventilation",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen fan cool down",
|
||
"room": "kitchen",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.kitchen_fan_cool_down",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "e2d5d614-46cf-4706-9bfe-7a17cd81f0c1",
|
||
"automation": "- id: e2d5d614-46cf-4706-9bfe-7a17cd81f0c1\n alias: 'Кухня: Автоматическое включение вытяжки'\n description: Включает вытяжку, когда need_ventilation устойчиво on 1 минуту.\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.kitchen_need_ventilation\n from: 'off'\n to: 'on'\n for:\n minutes: 1\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: switch.sonoff_10024c81be\n state: 'off'\n action:\n - service: switch.turn_on\n target:\n entity_id: switch.sonoff_10024c81be",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen need ventilation",
|
||
"room": "kitchen",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.kitchen_need_ventilation",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen fan switch",
|
||
"room": "kitchen",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.sonoff_10024c81be",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "d2986069-fb9c-4425-afc7-1b17f96cfff3",
|
||
"automation": "- id: d2986069-fb9c-4425-afc7-1b17f96cfff3\n alias: 'Кухня: Запуск таймера задержки выключения вытяжки'\n description: Стартует таймер, когда условия нормализовались.\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.kitchen_need_ventilation\n from: 'on'\n to: 'off'\n condition:\n - condition: state\n entity_id: switch.sonoff_10024c81be\n state: 'on'\n action:\n - service: timer.start\n target:\n entity_id: timer.kitchen_fan_delay_timer\n data:\n duration: '{{ (states(''input_number.kitchen_fan_delay_min'') | float(1) * 60)\n | int }}'",
|
||
"config": [
|
||
{
|
||
"name": "Kitchen need ventilation",
|
||
"room": "kitchen",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.kitchen_need_ventilation",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen fan switch",
|
||
"room": "kitchen",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.sonoff_10024c81be",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen fan delay timer",
|
||
"room": "kitchen",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.kitchen_fan_delay_timer",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen fan delay minutes",
|
||
"room": "kitchen",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.kitchen_fan_delay_min",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "95fecbf7-3ac8-4b4a-a7a8-a857a307be68",
|
||
"automation": "- id: 95fecbf7-3ac8-4b4a-a7a8-a857a307be68\n alias: 'Кухня: Выключение вытяжки по таймеру'\n description: Выключает вытяжку по окончании таймера, если условия нормальны.\n mode: single\n trigger:\n - platform: event\n event_type: timer.finished\n event_data:\n entity_id: timer.kitchen_fan_delay_timer\n condition:\n - condition: state\n entity_id: binary_sensor.kitchen_need_ventilation\n state: 'off'\n action:\n - service: switch.turn_off\n target:\n entity_id: switch.sonoff_10024c81be",
|
||
"config": [
|
||
{
|
||
"name": "Kitchen need ventilation",
|
||
"room": "kitchen",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.kitchen_need_ventilation",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen fan switch",
|
||
"room": "kitchen",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.sonoff_10024c81be",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen fan delay timer",
|
||
"room": "kitchen",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.kitchen_fan_delay_timer",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "b44e93fc-7746-4ff5-8846-2d350fecb813",
|
||
"automation": "- id: b44e93fc-7746-4ff5-8846-2d350fecb813\n alias: Уведомление о необходимости проветривания (усреднённое значение)\n description: CO2 выше жёсткого порога — уведомить (TTS/Telegram), проставить флаг.\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.livingroom_ventilation_need\n to: 'on'\n condition:\n - condition: state\n entity_id: input_boolean.co2_voice_notification_sensor\n state: 'off'\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n action:\n - choose:\n - conditions:\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'off'\n - condition: state\n entity_id: person.master\n state: home\n sequence:\n - service: script.yandex_tts_co2_alert\n - conditions:\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'on'\n - condition: state\n entity_id: person.master\n state: home\n sequence:\n - service: notify.master\n data:\n message: Уровень CO2 превышает норму. Рекомендуется проветрить гостиную.\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.co2_voice_notification_sensor",
|
||
"config": [
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "CO2 voice notification sensor",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.co2_voice_notification_sensor",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Living room ventilation need",
|
||
"room": "living_room",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.livingroom_ventilation_need",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS CO2 Alert",
|
||
"room": "Living Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_co2_alert",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "31a294d7-4c2d-4289-a8b0-04f2cea38553",
|
||
"automation": "- id: 31a294d7-4c2d-4289-a8b0-04f2cea38553\n alias: Уведомление о завершении проветривания (усреднённое значение)\n description: CO2 устойчиво ниже мягкого порога — уведомить (TTS/Telegram), проставить\n флаг.\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.livingroom_ventilation_status\n from: 'off'\n to: 'on'\n for:\n minutes: 1\n condition:\n - condition: state\n entity_id: input_boolean.co2_text_notification_sensor\n state: 'off'\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n action:\n - choose:\n - conditions:\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'off'\n - condition: state\n entity_id: person.master\n state: home\n sequence:\n - service: script.yandex_tts_co2_normal\n - conditions:\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'on'\n - condition: state\n entity_id: person.master\n state: home\n sequence:\n - service: notify.master\n data:\n message: Проветривание завершено. Уровень CO2 в норме.\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.co2_text_notification_sensor",
|
||
"config": [
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Living room ventilation status",
|
||
"room": "living_room",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.livingroom_ventilation_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "CO2 text notification sensor",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.co2_text_notification_sensor",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS CO2 Normal",
|
||
"room": "Living Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_co2_normal",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "469fe5d8-4b48-40bb-b967-0d09a83ee4f0",
|
||
"automation": "- id: 469fe5d8-4b48-40bb-b967-0d09a83ee4f0\n alias: 'HELPER: Сброс уведомлений СО2'\n mode: restart\n trigger:\n - platform: state\n entity_id:\n - input_boolean.co2_voice_notification_sensor\n - input_boolean.co2_text_notification_sensor\n to: 'on'\n action:\n - delay: 00:{{ states('input_number.co2_notification_reset_period') | int }}:00\n - service: input_boolean.turn_off\n target:\n entity_id:\n - input_boolean.co2_voice_notification_sensor\n - input_boolean.co2_text_notification_sensor",
|
||
"config": [
|
||
{
|
||
"name": "CO2 voice notification sensor",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.co2_voice_notification_sensor",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "CO2 text notification sensor",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.co2_text_notification_sensor",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "CO2 notification reset period",
|
||
"room": "unknown",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.co2_notification_reset_period",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "9fff2de3-f169-4fda-8a8a-91966fc51f13",
|
||
"automation": "- id: 9fff2de3-f169-4fda-8a8a-91966fc51f13\n alias: 'Гостиная: переключение бра (кнопка 4, одиночное нажатие)'\n mode: restart\n trigger:\n - platform: device\n domain: mqtt\n device_id: 719cda594198c3eafa3817b9230f2afa\n type: action\n subtype: 4_single\n condition: []\n action:\n - service: light.toggle\n target:\n entity_id: light.livingroom_scone_dimmer",
|
||
"config": [
|
||
{
|
||
"name": "Kitchen scenic switch device",
|
||
"room": "kitchen",
|
||
"type": "device",
|
||
"id": {
|
||
"entity_id": null,
|
||
"device_id": "719cda594198c3eafa3817b9230f2afa"
|
||
}
|
||
},
|
||
{
|
||
"name": "Living room scone dimmer",
|
||
"room": "living_room",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.livingroom_scone_dimmer",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "54ea7c3d-a37d-4ce4-80ff-f2da00a450c2",
|
||
"automation": "- id: 54ea7c3d-a37d-4ce4-80ff-f2da00a450c2\n alias: 'Гостиная: переключение люстры (кнопка 3, одиночное нажатие)'\n mode: restart\n trigger:\n - platform: device\n domain: mqtt\n device_id: 719cda594198c3eafa3817b9230f2afa\n type: action\n subtype: 3_single\n condition: []\n action:\n - service: light.toggle\n target:\n entity_id: light.livingroom_main_switch_left",
|
||
"config": [
|
||
{
|
||
"name": "Kitchen scenic switch device",
|
||
"room": "kitchen",
|
||
"type": "device",
|
||
"id": {
|
||
"entity_id": null,
|
||
"device_id": "719cda594198c3eafa3817b9230f2afa"
|
||
}
|
||
},
|
||
{
|
||
"name": "Living room main switch left",
|
||
"room": "living_room",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.livingroom_main_switch_left",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "916eb0c3-eee6-409d-9ce2-4dc00c9f7051",
|
||
"automation": "- id: 916eb0c3-eee6-409d-9ce2-4dc00c9f7051\n alias: 'Гостиная: переключение правого света (кнопка 4, двойное нажатие)'\n mode: restart\n trigger:\n - platform: device\n domain: mqtt\n device_id: 719cda594198c3eafa3817b9230f2afa\n type: action\n subtype: 4_double\n condition: []\n action:\n - service: light.toggle\n target:\n entity_id: light.livingroom_main_switch_right",
|
||
"config": [
|
||
{
|
||
"name": "Kitchen scenic switch device",
|
||
"room": "kitchen",
|
||
"type": "device",
|
||
"id": {
|
||
"entity_id": null,
|
||
"device_id": "719cda594198c3eafa3817b9230f2afa"
|
||
}
|
||
},
|
||
{
|
||
"name": "Living room main switch right",
|
||
"room": "living_room",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.livingroom_main_switch_right",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "f4e42442-155e-4d0a-87c2-3f21fd72025d",
|
||
"automation": "- id: f4e42442-155e-4d0a-87c2-3f21fd72025d\n alias: 'Гостиная: Климат, отключить устройства при открытии двери'\n description: Через 1 минуту открытой двери выключить климат/очиститель/увлажнитель,\n запомнив их состояние.\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.doors_in_kitchen_livingroom\n to: 'on'\n for:\n minutes: 1\n condition: []\n action:\n - choose:\n - conditions:\n - condition: template\n value_template: '{{ not is_state(''climate.konditsioner'', ''off'') }}'\n - condition: state\n entity_id: input_boolean.winter_mode\n state: 'off'\n sequence:\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.door_open_climate_pre_state\n - service: climate.turn_off\n target:\n entity_id: climate.konditsioner\n - choose:\n - conditions:\n - condition: state\n entity_id: switch.zhimi_mb3_a5d3_switch_status\n state: 'on'\n sequence:\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.door_open_fan_pre_state\n - service: switch.turn_off\n target:\n entity_id: switch.zhimi_mb3_a5d3_switch_status\n - choose:\n - conditions:\n - condition: state\n entity_id: switch.evolution_hf_878\n state: 'on'\n sequence:\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.door_open_humidifier_pre_state\n - service: switch.turn_off\n target:\n entity_id: switch.evolution_hf_878",
|
||
"config": [
|
||
{
|
||
"name": "Winter mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.winter_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Air conditioner",
|
||
"room": "living_room",
|
||
"type": "climate",
|
||
"id": {
|
||
"entity_id": "climate.konditsioner",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Zhimi fan switch",
|
||
"room": "living_room",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.zhimi_mb3_a5d3_switch_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Evolution humidifier",
|
||
"room": "living_room",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.evolution_hf_878",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Doors in kitchen living room",
|
||
"room": "living_room",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.doors_in_kitchen_livingroom",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Door open climate pre state",
|
||
"room": "living_room",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.door_open_climate_pre_state",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Door open fan pre state",
|
||
"room": "living_room",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.door_open_fan_pre_state",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Door open humidifier pre state",
|
||
"room": "living_room",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.door_open_humidifier_pre_state",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "0347cae6-1b2f-436a-a54c-792feafa9620",
|
||
"automation": "- id: 0347cae6-1b2f-436a-a54c-792feafa9620\n alias: 'Гостиная: Климат, восстановление состояния устройств'\n description: При закрытии двери восстановить устройства, если они были выключены\n автоматикой.\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.doors_in_kitchen_livingroom\n to: 'off'\n condition: []\n action:\n - choose:\n - conditions:\n - condition: state\n entity_id: input_boolean.door_open_climate_pre_state\n state: 'on'\n - condition: state\n entity_id: input_boolean.winter_mode\n state: 'off'\n sequence:\n - service: climate.turn_on\n target:\n entity_id: climate.konditsioner\n - choose:\n - conditions:\n - condition: state\n entity_id: input_boolean.door_open_fan_pre_state\n state: 'on'\n sequence:\n - service: switch.turn_on\n target:\n entity_id: switch.zhimi_mb3_a5d3_switch_status\n - choose:\n - conditions:\n - condition: state\n entity_id: input_boolean.door_open_humidifier_pre_state\n state: 'on'\n sequence:\n - service: switch.turn_on\n target:\n entity_id: switch.evolution_hf_878\n - service: input_boolean.turn_off\n target:\n entity_id:\n - input_boolean.door_open_climate_pre_state\n - input_boolean.door_open_fan_pre_state\n - input_boolean.door_open_humidifier_pre_state",
|
||
"config": [
|
||
{
|
||
"name": "Winter mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.winter_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Air conditioner",
|
||
"room": "living_room",
|
||
"type": "climate",
|
||
"id": {
|
||
"entity_id": "climate.konditsioner",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Zhimi fan switch",
|
||
"room": "living_room",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.zhimi_mb3_a5d3_switch_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Evolution humidifier",
|
||
"room": "living_room",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.evolution_hf_878",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Doors in kitchen living room",
|
||
"room": "living_room",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.doors_in_kitchen_livingroom",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Door open climate pre state",
|
||
"room": "living_room",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.door_open_climate_pre_state",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Door open fan pre state",
|
||
"room": "living_room",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.door_open_fan_pre_state",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Door open humidifier pre state",
|
||
"room": "living_room",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.door_open_humidifier_pre_state",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "b9867c28-be9f-425e-9fee-0aea777d04c0",
|
||
"automation": "- id: b9867c28-be9f-425e-9fee-0aea777d04c0\n alias: 'HELPER: Защита — не включать кондиционер при активном Зимнем режиме'\n description: Если включён зимний режим, любое включение кондиционера тут же отменяется.\n mode: single\n trigger:\n - platform: state\n entity_id: climate.konditsioner\n from: 'off'\n condition:\n - condition: state\n entity_id: input_boolean.winter_mode\n state: 'on'\n action:\n - service: climate.turn_off\n target:\n entity_id: climate.konditsioner\n - service: notify.master\n data:\n message: 'Кондиционер принудительно отключён: включён Зимний режим.'\n - service: script.yandex_tts_kondicioner_warning",
|
||
"config": [
|
||
{
|
||
"name": "Winter mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.winter_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Air conditioner",
|
||
"room": "living_room",
|
||
"type": "climate",
|
||
"id": {
|
||
"entity_id": "climate.konditsioner",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS Kondicioner Warning",
|
||
"room": "Living Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_kondicioner_warning",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "4d19ce98-16f7-41ea-afcf-34ffb4e64b4a",
|
||
"automation": "- id: 4d19ce98-16f7-41ea-afcf-34ffb4e64b4a\n alias: 'Уведомление. Телеграм: Необходимо заменить фильтр'\n description: Если ресурс фильтра <10% в течение 1 мин — уведомить и пометить.\n mode: single\n trigger:\n - platform: numeric_state\n entity_id: sensor.konditsioner_filter_remaining_life\n below: 10\n for:\n minutes: 1\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'off'\n - condition: state\n entity_id: input_boolean.filter_replace_notified\n state: 'off'\n - condition: time\n after: 08:00:00\n before: '20:00:00'\n action:\n - service: notify.master\n data:\n message: Необходимо заменить фильтр в кондиционере\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.filter_replace_notified",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Air conditioner filter remaining life",
|
||
"room": "living_room",
|
||
"type": "sensor",
|
||
"id": {
|
||
"entity_id": "sensor.konditsioner_filter_remaining_life",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Filter replace notified",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.filter_replace_notified",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "da15cbba-b4f0-42e5-8bcd-5e9affe17073",
|
||
"automation": "- id: da15cbba-b4f0-42e5-8bcd-5e9affe17073\n alias: 'HELPER: Сброс уведомления о замене фильтра'\n description: Если ресурс фильтра снова >10% (1 мин), сбросить флаг.\n mode: single\n trigger:\n - platform: numeric_state\n entity_id: sensor.konditsioner_filter_remaining_life\n above: 10\n for:\n minutes: 1\n condition: []\n action:\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.filter_replace_notified",
|
||
"config": [
|
||
{
|
||
"name": "Air conditioner filter remaining life",
|
||
"room": "living_room",
|
||
"type": "sensor",
|
||
"id": {
|
||
"entity_id": "sensor.konditsioner_filter_remaining_life",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Filter replace notified",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.filter_replace_notified",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "12858001-138d-4238-97f9-e5a501c6fe18",
|
||
"automation": "- id: 12858001-138d-4238-97f9-e5a501c6fe18\n alias: 'Уведомление: Розетка недоступна (электричество отключено)'\n description: Уведомляет, если розетка стала недоступной (ИБП/электричество).\n mode: single\n trigger:\n - platform: state\n entity_id:\n - switch.my_multi_outlet_left\n - switch.my_multi_outlet_right\n to: unavailable\n for:\n minutes: 1\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'off'\n - condition: state\n entity_id: binary_sensor.someone_is_home\n state: 'on'\n action:\n - service: notify.master\n data:\n message: '⚠️ Внимание! Розетка {{ trigger.entity_id }} недоступна. Возможно,\n отключено электричество или проблемы с ИБП.\n\n '\n - service: system_log.write\n data:\n message: Розетка {{ trigger.entity_id }} недоступна — уведомление отправлено.\n level: warning",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Someone is home",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.someone_is_home",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Multi outlet left",
|
||
"room": "unknown",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.my_multi_outlet_left",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Multi outlet right",
|
||
"room": "unknown",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.my_multi_outlet_right",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "server_room_fan_control",
|
||
"automation": "- id: server_room_fan_control\n alias: 'Контроль температуры серверной: управление вентилятором'\n description: High — включаем вентилятор; Off — запускаем подтверждение низкой температуры.\n mode: restart\n trigger:\n - platform: state\n entity_id: binary_sensor.server_temp_high\n from: 'off'\n to: 'on'\n id: high\n - platform: state\n entity_id: binary_sensor.server_temp_high\n from: 'on'\n to: 'off'\n id: low\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: template\n value_template: '{{ states(''sensor.0xa4c13861a18df7c8_temperature'') not in [''unknown'',''unavailable'']\n }}\n\n '\n action:\n - choose:\n - conditions:\n - condition: trigger\n id: high\n sequence:\n - service: timer.cancel\n target:\n entity_id:\n - timer.server_temp_off_persist\n - timer.server_fan_delay\n - service: fan.turn_on\n target:\n entity_id: fan.server_fan\n - service: system_log.write\n data:\n message: 'Вентилятор сервера включён (темп: {{ states(''sensor.0xa4c13861a18df7c8_temperature'')\n }}°).'\n level: info\n - conditions:\n - condition: trigger\n id: low\n - condition: state\n entity_id: fan.server_fan\n state: 'on'\n sequence:\n - service: timer.start\n target:\n entity_id: timer.server_temp_off_persist\n data:\n duration: '{{ (states(''input_number.server_temp_off_persist_min'') | float(30)\n * 60) | int }}'\n - service: system_log.write\n data:\n message: Запущен таймер подтверждения низкой температуры сервера.\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Server temperature high",
|
||
"room": "server_room",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.server_temp_high",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Server temperature sensor",
|
||
"room": "server_room",
|
||
"type": "sensor",
|
||
"id": {
|
||
"entity_id": "sensor.0xa4c13861a18df7c8_temperature",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Server temp off persist timer",
|
||
"room": "server_room",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.server_temp_off_persist",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Server fan delay timer",
|
||
"room": "server_room",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.server_fan_delay",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Server fan",
|
||
"room": "server_room",
|
||
"type": "fan",
|
||
"id": {
|
||
"entity_id": "fan.server_fan",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Server temp off persist minutes",
|
||
"room": "server_room",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.server_temp_off_persist_min",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "server_temp_off_persist_finished",
|
||
"automation": "- id: server_temp_off_persist_finished\n alias: 'Сервер: стабильная низкая температура — задержка выключения вентилятора'\n description: После подтверждённо низкой температуры запускаем задержку выключения\n вентилятора.\n mode: single\n trigger:\n - platform: event\n event_type: timer.finished\n event_data:\n entity_id: timer.server_temp_off_persist\n condition:\n - condition: state\n entity_id: binary_sensor.server_temp_high\n state: 'off'\n - condition: state\n entity_id: fan.server_fan\n state: 'on'\n action:\n - service: timer.start\n target:\n entity_id: timer.server_fan_delay\n data:\n duration: '{{ (states(''input_number.server_fan_delay_min'') | float(5) * 60)\n | int }}'\n - service: system_log.write\n data:\n message: Запущен таймер задержки выключения вентилятора сервера.\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "Server temperature high",
|
||
"room": "server_room",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.server_temp_high",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Server temp off persist timer",
|
||
"room": "server_room",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.server_temp_off_persist",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Server fan delay timer",
|
||
"room": "server_room",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.server_fan_delay",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Server fan",
|
||
"room": "server_room",
|
||
"type": "fan",
|
||
"id": {
|
||
"entity_id": "fan.server_fan",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Server fan delay minutes",
|
||
"room": "server_room",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.server_fan_delay_min",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "server_fan_delay_off",
|
||
"automation": "- id: server_fan_delay_off\n alias: Выключение вентилятора сервера по таймеру\n description: Выключает вентилятор после таймера, если температура всё ещё низкая.\n mode: single\n trigger:\n - platform: event\n event_type: timer.finished\n event_data:\n entity_id: timer.server_fan_delay\n condition:\n - condition: state\n entity_id: binary_sensor.server_temp_high\n state: 'off'\n action:\n - service: fan.turn_off\n target:\n entity_id: fan.server_fan\n - service: system_log.write\n data:\n message: 'Вентилятор сервера выключен по таймеру (темп: {{ states(''sensor.0xa4c13861a18df7c8_temperature'')\n }}°).'\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "Server temperature high",
|
||
"room": "server_room",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.server_temp_high",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Server temperature sensor",
|
||
"room": "server_room",
|
||
"type": "sensor",
|
||
"id": {
|
||
"entity_id": "sensor.0xa4c13861a18df7c8_temperature",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Server fan delay timer",
|
||
"room": "server_room",
|
||
"type": "timer",
|
||
"id": {
|
||
"entity_id": "timer.server_fan_delay",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Server fan",
|
||
"room": "server_room",
|
||
"type": "fan",
|
||
"id": {
|
||
"entity_id": "fan.server_fan",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "29873ab9-335c-4c39-9898-b01b5a482606",
|
||
"automation": "- id: 29873ab9-335c-4c39-9898-b01b5a482606\n alias: 'Кабинет: Вкл/выкл подсветки рабочей зоны кнопкой'\n description: 'Одиночное нажатие физической кнопки переключает (toggle) подсветку\n рабочего стола.\n\n '\n mode: restart\n trigger:\n - platform: device\n domain: mqtt\n device_id: 8067572bca7252311fc2ce6152f90f34\n type: action\n subtype: single\n discovery_id: 0x00158d0003cffd82 action_single\n condition: []\n action:\n - type: toggle\n device_id: 3a9919ab25ad577158f751a70c35f8e2\n entity_id: light.working_room_led\n domain: light",
|
||
"config": [
|
||
{
|
||
"name": "Working room LED",
|
||
"room": "working_room",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.working_room_led",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Workroom LED button device",
|
||
"room": "working_room",
|
||
"type": "device",
|
||
"id": {
|
||
"entity_id": null,
|
||
"device_id": "8067572bca7252311fc2ce6152f90f34"
|
||
}
|
||
},
|
||
{
|
||
"name": "Workroom LED device",
|
||
"room": "working_room",
|
||
"type": "device",
|
||
"id": {
|
||
"entity_id": null,
|
||
"device_id": "3a9919ab25ad577158f751a70c35f8e2"
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "abe6206a-a428-4b31-928f-789c38355279",
|
||
"automation": "- id: abe6206a-a428-4b31-928f-789c38355279\n alias: Уведомление о низкой температуре в мастерской (усреднённое значение)\n mode: single\n trigger:\n - platform: numeric_state\n entity_id: sensor.srednee_znachenie_temperatury_v_masterskoi_2\n below: 20\n for:\n minutes: 1\n condition:\n - condition: state\n entity_id: binary_sensor.masterskaia_balkon_contact\n state: 'on'\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.workroom_th_notice\n state: 'off'\n - condition: template\n value_template: \"{{ states('sensor.srednee_znachenie_temperatury_v_masterskoi_2')\\\n \\ not in ['unknown','unavailable'] and\\n states('binary_sensor.masterskaia_balkon_contact')\\\n \\ not in ['unknown','unavailable'] }}\\n\"\n action:\n - variables:\n telegram_message: Температура в мастерской ниже 20°. Это мастерская, а не холодильник!\n Закройте дверь.\n - choose:\n - conditions:\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'off'\n - condition: state\n entity_id: person.master\n state: home\n sequence:\n - service: media_player.play_media\n target:\n entity_id: media_player.yandex_station_ff98f0294437799304d0788d\n data:\n media_content_id: 'Внимание! Температура в мастерской ниже двадцати градусов.\n Закройте дверь!\n\n '\n media_content_type: text\n - conditions:\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'on'\n - condition: state\n entity_id: person.master\n state: home\n sequence:\n - service: notify.master\n data:\n message: '{{ telegram_message }}'\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.workroom_th_notice\n - service: system_log.write\n data:\n message: Отправлено уведомление о низкой температуре в мастерской (<20°C).\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Workroom temperature average",
|
||
"room": "workroom",
|
||
"type": "sensor",
|
||
"id": {
|
||
"entity_id": "sensor.srednee_znachenie_temperatury_v_masterskoi_2",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Workroom balcony contact",
|
||
"room": "workroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.masterskaia_balkon_contact",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Workroom temperature notice",
|
||
"room": "workroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.workroom_th_notice",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex station",
|
||
"room": "unknown",
|
||
"type": "media_player",
|
||
"id": {
|
||
"entity_id": "media_player.yandex_station_ff98f0294437799304d0788d",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "9bdeb719-0792-4176-8451-367273fdbb4c",
|
||
"automation": "- id: 9bdeb719-0792-4176-8451-367273fdbb4c\n alias: 'HELPER: Сброс уведомлений о температуре в мастерской'\n mode: single\n trigger:\n - platform: state\n entity_id: input_boolean.workroom_th_notice\n to: 'on'\n action:\n - delay: 00:{{ states('input_number.low_th_notification_reset_period') | int }}:00\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.workroom_th_notice",
|
||
"config": [
|
||
{
|
||
"name": "Low temperature notification reset period",
|
||
"room": "unknown",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.low_th_notification_reset_period",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Workroom temperature notice",
|
||
"room": "workroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.workroom_th_notice",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "set_telegram_allowed_users_on_start",
|
||
"automation": "- id: set_telegram_allowed_users_on_start\n alias: Set Telegram Allowed Users on Start\n initial_state: true\n triggers:\n - platform: homeassistant\n event: start\n actions:\n - service: input_text.set_value\n target:\n entity_id: input_text.telegram_allowed_users\n data:\n value: secret telegram_allowed_users_list",
|
||
"config": [
|
||
{
|
||
"name": "Telegram allowed users",
|
||
"room": "unknown",
|
||
"type": "input_text",
|
||
"id": {
|
||
"entity_id": "input_text.telegram_allowed_users",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_start",
|
||
"automation": "- id: telegram_bot_start\n alias: Telegram Bot Start (Приветствие)\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_command\n event_data:\n command: /start\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: telegram_bot.send_message\n data:\n target: '{{ trigger.event.data.chat_id }}'\n parse_mode: html\n message: <b>Добро пожаловать в умный дом</b>\n - service: script.send_main_menu\n data:\n target: '{{ trigger.event.data.chat_id }}'\n - service: system_log.write\n data:\n message: 'Telegram бот запущен (user: {{ trigger.event.data.user_id }})'\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Main Menu",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_main_menu",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_main_menu",
|
||
"automation": "- id: telegram_bot_main_menu\n alias: Telegram Bot Main Menu\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_command\n event_data:\n command: /main_menu\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.send_main_menu\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Main Menu",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_main_menu",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_menu_back",
|
||
"automation": "- id: telegram_bot_menu_back\n alias: Telegram Bot Menu Back\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /menu_back\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: telegram_bot.delete_message\n data:\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n - service: script.send_main_menu\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Main Menu",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_main_menu",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_livingroom_control",
|
||
"automation": "- id: telegram_bot_livingroom_control\n alias: Telegram Bot Living Room Menu\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /livingroom_control\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: telegram_bot.delete_message\n data:\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n - service: script.send_livingroom_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Living Room Status",
|
||
"room": "Living Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_livingroom_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_workroom_control",
|
||
"automation": "- id: telegram_bot_workroom_control\n alias: Telegram Bot Workroom Menu\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /workroom_control\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: telegram_bot.delete_message\n data:\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n - service: script.send_workroom_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Workroom Status",
|
||
"room": "Workroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_workroom_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_bedroom_control",
|
||
"automation": "- id: telegram_bot_bedroom_control\n alias: Telegram Bot Bedroom Menu\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /bedroom_control\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: telegram_bot.delete_message\n data:\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n - service: script.send_bedroom_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Bedroom Status",
|
||
"room": "Bedroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_bedroom_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_kitchen_control",
|
||
"automation": "- id: telegram_bot_kitchen_control\n alias: Telegram Bot Kitchen Menu\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /kitchen_control\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: telegram_bot.delete_message\n data:\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n - service: script.send_kitchen_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Kitchen Status",
|
||
"room": "Kitchen",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_kitchen_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_bathroom_control",
|
||
"automation": "- id: telegram_bot_bathroom_control\n alias: Telegram Bot Bathroom Menu\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /bathroom_control\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: telegram_bot.delete_message\n data:\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n - service: script.send_bathroom_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Bathroom Status",
|
||
"room": "Bathroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_bathroom_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_hallway_control",
|
||
"automation": "- id: telegram_bot_hallway_control\n alias: Telegram Bot Hallway Menu\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /hallway_control\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: telegram_bot.delete_message\n data:\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n - service: script.send_hallway_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Hallway Status",
|
||
"room": "Hallway",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_hallway_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_system_control",
|
||
"automation": "- id: telegram_bot_system_control\n alias: Telegram Bot System Control\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /system_control\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: telegram_bot.delete_message\n data:\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n - service: script.send_system_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send System Status",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_system_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_livingroom_main_switch_left",
|
||
"automation": "- id: telegram_bot_toggle_livingroom_main_switch_left\n alias: Telegram Bot Toggle Livingroom Main Switch Left\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_livingroom_main_switch_left\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.livingroom_main_switch_left\n domain: light\n menu_script: script.send_livingroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Living room main switch left",
|
||
"room": "living_room",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.livingroom_main_switch_left",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Living Room Status",
|
||
"room": "Living Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_livingroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_livingroom_main_switch_right",
|
||
"automation": "- id: telegram_bot_toggle_livingroom_main_switch_right\n alias: Telegram Bot Toggle Livingroom Main Switch Right\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_livingroom_main_switch_right\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.livingroom_main_switch_right\n domain: light\n menu_script: script.send_livingroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Living room main switch right",
|
||
"room": "living_room",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.livingroom_main_switch_right",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Living Room Status",
|
||
"room": "Living Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_livingroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_livingroom_scone_dimmer",
|
||
"automation": "- id: telegram_bot_toggle_livingroom_scone_dimmer\n alias: Telegram Bot Toggle Livingroom Scone Dimmer\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_livingroom_scone_dimmer\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.livingroom_scone_dimmer\n domain: light\n menu_script: script.send_livingroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Living room scone dimmer",
|
||
"room": "living_room",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.livingroom_scone_dimmer",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Living Room Status",
|
||
"room": "Living Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_livingroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_livingroom_socket_corner_r",
|
||
"automation": "- id: telegram_bot_toggle_livingroom_socket_corner_r\n alias: Telegram Bot Toggle Livingroom Socket Corner R\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_livingroom_socket_corner_r\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: switch.livingroom_socket_corner_r\n domain: switch\n menu_script: script.send_livingroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Living room socket corner R",
|
||
"room": "living_room",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.livingroom_socket_corner_r",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Living Room Status",
|
||
"room": "Living Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_livingroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_livingroom_socket_l",
|
||
"automation": "- id: telegram_bot_toggle_livingroom_socket_l\n alias: Telegram Bot Toggle Livingroom Socket L\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_livingroom_socket_l\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: switch.livingroom_socket_l\n domain: switch\n menu_script: script.send_livingroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Living room socket L",
|
||
"room": "living_room",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.livingroom_socket_l",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Living Room Status",
|
||
"room": "Living Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_livingroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_livingroom_socket_r",
|
||
"automation": "- id: telegram_bot_toggle_livingroom_socket_r\n alias: Telegram Bot Toggle Livingroom Socket R\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_livingroom_socket_r\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: switch.livingroom_socket_r\n domain: switch\n menu_script: script.send_livingroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Living room socket R",
|
||
"room": "living_room",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.livingroom_socket_r",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Living Room Status",
|
||
"room": "Living Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_livingroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_workroom_light",
|
||
"automation": "- id: telegram_bot_toggle_workroom_light\n alias: Telegram Bot Toggle Workroom Light\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_workroom_light\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.workroom_switch\n domain: light\n menu_script: script.send_workroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Workroom switch",
|
||
"room": "workroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.workroom_switch",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Workroom Status",
|
||
"room": "Workroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_workroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_workroom_led",
|
||
"automation": "- id: telegram_bot_toggle_workroom_led\n alias: Telegram Bot Toggle Workroom LED\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_workroom_led\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.working_room_led\n domain: light\n menu_script: script.send_workroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Working room LED",
|
||
"room": "working_room",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.working_room_led",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Workroom Status",
|
||
"room": "Workroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_workroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_workroom_plug",
|
||
"automation": "- id: telegram_bot_toggle_workroom_plug\n alias: Telegram Bot Toggle Workroom Plug\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_workroom_plug\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: switch.smart_plug_in_unit_vykliuchatel\n domain: switch\n menu_script: script.send_workroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Smart plug switch",
|
||
"room": "unknown",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.smart_plug_in_unit_vykliuchatel",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Workroom Status",
|
||
"room": "Workroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_workroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_bedroom_light",
|
||
"automation": "- id: telegram_bot_toggle_bedroom_light\n alias: Telegram Bot Toggle Bedroom Light\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_bedroom_light\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.bedroom_switch_main\n domain: light\n menu_script: script.send_bedroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bedroom switch main",
|
||
"room": "bedroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.bedroom_switch_main",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Bedroom Status",
|
||
"room": "Bedroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_bedroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_bedroom_scone_t",
|
||
"automation": "- id: telegram_bot_toggle_bedroom_scone_t\n alias: Telegram Bot Toggle Bedroom Tatiana's Scone\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_bedroom_scone_t\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.bedroom_left_switch_right\n domain: light\n menu_script: script.send_bedroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bedroom left switch right",
|
||
"room": "bedroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.bedroom_left_switch_right",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Bedroom Status",
|
||
"room": "Bedroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_bedroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_bedroom_scone_a_small",
|
||
"automation": "- id: telegram_bot_toggle_bedroom_scone_a_small\n alias: Telegram Bot Toggle Bedroom Andrei's Scone Small\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_bedroom_scone_a_small\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.bedroom_right_switch_left\n domain: light\n menu_script: script.send_bedroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bedroom right switch left",
|
||
"room": "bedroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.bedroom_right_switch_left",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Bedroom Status",
|
||
"room": "Bedroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_bedroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_bedroom_scone_a_big",
|
||
"automation": "- id: telegram_bot_toggle_bedroom_scone_a_big\n alias: Telegram Bot Toggle Bedroom Andrei's Scone Big\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_bedroom_scone_a_big\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.bedroom_right_switch_right\n domain: light\n menu_script: script.send_bedroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bedroom right switch right",
|
||
"room": "bedroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.bedroom_right_switch_right",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Bedroom Status",
|
||
"room": "Bedroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_bedroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_bedroom_plug_left",
|
||
"automation": "- id: telegram_bot_toggle_bedroom_plug_left\n alias: Telegram Bot Toggle Bedroom Plug Left\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_bedroom_plug_left\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: switch.0x00158d0002530bd9\n domain: switch\n menu_script: script.send_bedroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bedroom plug left",
|
||
"room": "bedroom",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.0x00158d0002530bd9",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Bedroom Status",
|
||
"room": "Bedroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_bedroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_bedroom_plug_right",
|
||
"automation": "- id: telegram_bot_toggle_bedroom_plug_right\n alias: Telegram Bot Toggle Bedroom Plug Right\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_bedroom_plug_right\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: switch.0x00158d0002530ba3\n domain: switch\n menu_script: script.send_bedroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bedroom plug",
|
||
"room": "bedroom",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.0x00158d0002530ba3",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Bedroom Status",
|
||
"room": "Bedroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_bedroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_kitchen_main_light",
|
||
"automation": "- id: telegram_bot_toggle_kitchen_main_light\n alias: Telegram Bot Toggle Kitchen Main Light\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_kitchen_main_light\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.kitchen_main_light\n domain: light\n menu_script: script.send_kitchen_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen main light",
|
||
"room": "kitchen",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.kitchen_main_light",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Kitchen Status",
|
||
"room": "Kitchen",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_kitchen_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_kitchen_fartuh",
|
||
"automation": "- id: telegram_bot_toggle_kitchen_fartuh\n alias: Telegram Bot Toggle Kitchen Fartuh\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_kitchen_fartuh\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: switch.kitchen_fartuh\n domain: switch\n menu_script: script.send_kitchen_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Kitchen fartuh switch",
|
||
"room": "kitchen",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.kitchen_fartuh",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Kitchen Status",
|
||
"room": "Kitchen",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_kitchen_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_bathroom_light",
|
||
"automation": "- id: telegram_bot_toggle_bathroom_light\n alias: Telegram Bot Toggle Bathroom Light\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_bathroom_light\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.light_bathroom\n domain: light\n menu_script: script.send_bathroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom light",
|
||
"room": "bathroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.light_bathroom",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Bathroom Status",
|
||
"room": "Bathroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_bathroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_bathroom_fan",
|
||
"automation": "- id: telegram_bot_toggle_bathroom_fan\n alias: Telegram Bot Toggle Bathroom Fan\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_bathroom_fan\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: fan.bathroom_relay_l1\n domain: fan\n menu_script: script.send_bathroom_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom relay fan",
|
||
"room": "bathroom",
|
||
"type": "fan",
|
||
"id": {
|
||
"entity_id": "fan.bathroom_relay_l1",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Bathroom Status",
|
||
"room": "Bathroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_bathroom_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_hallway_light",
|
||
"automation": "- id: telegram_bot_toggle_hallway_light\n alias: Telegram Bot Toggle Hallway Light\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_hallway_light\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.hallway_switch\n domain: light\n menu_script: script.send_hallway_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Hallway switch light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.hallway_switch",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Hallway Status",
|
||
"room": "Hallway",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_hallway_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_hallway_gateway_light",
|
||
"automation": "- id: telegram_bot_toggle_hallway_gateway_light\n alias: Telegram Bot Toggle Hallway Gateway Light\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_hallway_gateway_light\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.gateway_light_04cf8c977cdd\n domain: light\n menu_script: script.send_hallway_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Gateway light",
|
||
"room": "hallway",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.gateway_light_04cf8c977cdd",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send Hallway Status",
|
||
"room": "Hallway",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_hallway_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_router_socket",
|
||
"automation": "- id: telegram_bot_toggle_router_socket\n alias: Telegram Bot Toggle Router Socket\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_router_socket\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: switch.my_multi_outlet_left\n domain: switch\n menu_script: script.send_system_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Multi outlet left",
|
||
"room": "unknown",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.my_multi_outlet_left",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send System Status",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_system_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_minipc_socket",
|
||
"automation": "- id: telegram_bot_toggle_minipc_socket\n alias: Telegram Bot Toggle MiniPC Socket\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_minipc_socket\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: switch.my_multi_outlet_right\n domain: switch\n menu_script: script.send_system_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Multi outlet right",
|
||
"room": "unknown",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "switch.my_multi_outlet_right",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send System Status",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_system_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_bathroom_power",
|
||
"automation": "- id: telegram_bot_toggle_bathroom_power\n alias: Telegram Bot Toggle Bathroom Power\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_bathroom_power\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: light.bathroom_main\n domain: light\n menu_script: script.send_system_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom main light",
|
||
"room": "bathroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.bathroom_main",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send System Status",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_system_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_silent_mode",
|
||
"automation": "- id: telegram_bot_toggle_silent_mode\n alias: Telegram Bot Toggle Silent Mode\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_silent_mode\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: input_boolean.silent_mode\n domain: input_boolean\n menu_script: script.send_system_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send System Status",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_system_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_toggle_force_cctv_mode",
|
||
"automation": "- id: telegram_bot_toggle_force_cctv_mode\n alias: Telegram Bot Toggle Force CCTV Off Mode\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /toggle_force_cctv_mode\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: script.toggle_device\n data:\n entity: input_boolean.force_camera_off\n domain: input_boolean\n menu_script: script.send_system_status\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n user_id: '{{ trigger.event.data.user_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Force camera off",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.force_camera_off",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send System Status",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_system_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Toggle Device",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.toggle_device",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_confirm_reboot",
|
||
"automation": "- id: telegram_bot_confirm_reboot\n alias: Telegram Bot Confirm Reboot\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /confirm_reboot\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: telegram_bot.send_message\n data:\n target: '{{ trigger.event.data.chat_id }}'\n parse_mode: html\n message: <b>⚠️ Подтвердите перезагрузку системы</b>\n inline_keyboard: \"{{ [\\n [ [\\\"✅ Подтвердить\\\", \\\"/force_reboot\\\"] ],\\n \\\n \\ [ [\\\"❌ Отмена\\\", \\\"/system_control\\\"] ]\\n ] | tojson }}\\n\"\n - service: system_log.write\n data:\n message: 'Запрос на подтверждение reboot (user: {{ trigger.event.data.user_id\n }})'\n level: warning",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_force_reboot",
|
||
"automation": "- id: telegram_bot_force_reboot\n alias: Telegram Bot Force Reboot\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /force_reboot\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: telegram_bot.send_message\n data:\n target: '{{ trigger.event.data.chat_id }}'\n parse_mode: html\n message: <b>⚠️ Система будет перезагружена через 5 секунд</b>\n - delay:\n seconds: 5\n - service: homeassistant.restart\n - service: system_log.write\n data:\n message: 'Система перезагружена через Telegram (user: {{ trigger.event.data.user_id\n }})'\n level: warning",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_pve_status_refresh",
|
||
"automation": "- id: telegram_bot_pve_status_refresh\n alias: Telegram Bot PVE Status Refresh\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /pve_status_refresh\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: telegram_bot.delete_message\n data:\n message_id: '{{ trigger.event.data.message.message_id }}'\n chat_id: '{{ trigger.event.data.chat_id }}'\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_reboot_haos12",
|
||
"automation": "- id: telegram_bot_reboot_haos12\n alias: Telegram Bot Reboot HAOS12\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /reboot_haos12\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.qemu_haos12_3_100_reboot\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "QEMU HAOS12 Reboot",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.qemu_haos12_3_100_reboot",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_start_mariadb",
|
||
"automation": "- id: telegram_bot_start_mariadb\n alias: Telegram Bot Start LXC MariaDB\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /start_mariadb\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_mariadb_101_start\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC MariaDB 101 Start",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_mariadb_101_start",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_stop_mariadb",
|
||
"automation": "- id: telegram_bot_stop_mariadb\n alias: Telegram Bot Stop LXC MariaDB\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /stop_mariadb\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_mariadb_101_stop\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC MariaDB 101 Stop",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_mariadb_101_stop",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_reboot_mariadb",
|
||
"automation": "- id: telegram_bot_reboot_mariadb\n alias: Telegram Bot Reboot LXC MariaDB\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /reboot_mariadb\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_mariadb_101_reboot\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC MariaDB 101 Reboot",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_mariadb_101_reboot",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_start_jackett",
|
||
"automation": "- id: telegram_bot_start_jackett\n alias: Telegram Bot Start LXC Jackett\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /start_jackett\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_jackett_102_start\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Jackett 102 Start",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_jackett_102_start",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_stop_jackett",
|
||
"automation": "- id: telegram_bot_stop_jackett\n alias: Telegram Bot Stop LXC Jackett\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /stop_jackett\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_jackett_102_stop\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Jackett 102 Stop",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_jackett_102_stop",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_reboot_jackett",
|
||
"automation": "- id: telegram_bot_reboot_jackett\n alias: Telegram Bot Reboot LXC Jackett\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /reboot_jackett\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_jackett_102_reboot\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Jackett 102 Reboot",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_jackett_102_reboot",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_start_jellyfin",
|
||
"automation": "- id: telegram_bot_start_jellyfin\n alias: Telegram Bot Start LXC Jellyfin\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /start_jellyfin\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_jellyfin_103_start\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Jellyfin 103 Start",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_jellyfin_103_start",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_stop_jellyfin",
|
||
"automation": "- id: telegram_bot_stop_jellyfin\n alias: Telegram Bot Stop LXC Jellyfin\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /stop_jellyfin\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_jellyfin_103_stop\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Jellyfin 103 Stop",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_jellyfin_103_stop",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_reboot_jellyfin",
|
||
"automation": "- id: telegram_bot_reboot_jellyfin\n alias: Telegram Bot Reboot LXC Jellyfin\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /reboot_jellyfin\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_jellyfin_103_reboot\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Jellyfin 103 Reboot",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_jellyfin_103_reboot",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_start_deluge",
|
||
"automation": "- id: telegram_bot_start_deluge\n alias: Telegram Bot Start LXC Deluge\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /start_deluge\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_deluge_104_start\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Deluge 104 Start",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_deluge_104_start",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_stop_deluge",
|
||
"automation": "- id: telegram_bot_stop_deluge\n alias: Telegram Bot Stop LXC Deluge\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /stop_deluge\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_deluge_104_stop\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Deluge 104 Stop",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_deluge_104_stop",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_reboot_deluge",
|
||
"automation": "- id: telegram_bot_reboot_deluge\n alias: Telegram Bot Reboot LXC Deluge\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /reboot_deluge\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_deluge_104_reboot\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Deluge 104 Reboot",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_deluge_104_reboot",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_start_torrserver",
|
||
"automation": "- id: telegram_bot_start_torrserver\n alias: Telegram Bot Start LXC TorrServer\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /start_torrserver\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_debian_105_start\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Debian 105 Start",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_debian_105_start",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_stop_torrserver",
|
||
"automation": "- id: telegram_bot_stop_torrserver\n alias: Telegram Bot Stop LXC TorrServer\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /stop_torrserver\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_debian_105_stop\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Debian 105 Stop",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_debian_105_stop",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_reboot_torrserver",
|
||
"automation": "- id: telegram_bot_reboot_torrserver\n alias: Telegram Bot Reboot LXC TorrServer\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /reboot_torrserver\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_debian_105_reboot\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Debian 105 Reboot",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_debian_105_reboot",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_start_minimserver",
|
||
"automation": "- id: telegram_bot_start_minimserver\n alias: Telegram Bot Start LXC Minim Server\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /start_minimserver\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_minim_107_start\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Minim 107 Start",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_minim_107_start",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_stop_minimserver",
|
||
"automation": "- id: telegram_bot_stop_minimserver\n alias: Telegram Bot Stop LXC Minim Server\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /stop_minimserver\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_minim_107_stop\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Minim 107 Stop",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_minim_107_stop",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "telegram_bot_reboot_minimserver",
|
||
"automation": "- id: telegram_bot_reboot_minimserver\n alias: Telegram Bot Reboot LXC Minim Server\n initial_state: true\n triggers:\n - platform: event\n event_type: telegram_callback\n event_data:\n data: /reboot_minimserver\n conditions:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n actions:\n - service: button.press\n target:\n entity_id: button.lxc_minim_107_reboot\n - delay:\n seconds: 5\n - service: script.send_pve_status\n data:\n target: '{{ trigger.event.data.chat_id }}'",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "LXC Minim 107 Reboot",
|
||
"room": "Server Room",
|
||
"type": "button",
|
||
"id": {
|
||
"entity_id": "button.lxc_minim_107_reboot",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Send PVE Status",
|
||
"room": "Server Room",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.send_pve_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "064cbd85-8d52-40ac-98bd-98164ad1434c",
|
||
"automation": "- id: 064cbd85-8d52-40ac-98bd-98164ad1434c\n alias: 'HELPER: Сохранение/восстановление состояния стиральной машины при рестарте\n HA'\n mode: single\n trigger:\n - platform: homeassistant\n event: shutdown\n id: shutdown\n - platform: homeassistant\n event: start\n id: start\n action:\n - choose:\n - conditions:\n - condition: trigger\n id: shutdown\n sequence:\n - choose:\n - conditions:\n - condition: state\n entity_id: binary_sensor.washing_machine_active\n state: 'on'\n sequence:\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.washing_machine_pre_restart_state\n default:\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.washing_machine_pre_restart_state\n - conditions:\n - condition: trigger\n id: start\n sequence:\n - choose:\n - conditions:\n - condition: state\n entity_id: input_boolean.washing_machine_pre_restart_state\n state: 'on'\n sequence:\n - service: system_log.write\n data:\n message: 'System start: стиральная машина была активна до перезагрузки.'\n level: warning\n - service: input_boolean.turn_off\n target:\n entity_id:\n - input_boolean.washing_machine_running\n - input_boolean.washing_machine_pre_restart_state",
|
||
"config": [
|
||
{
|
||
"name": "Washing machine active",
|
||
"room": "bathroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.washing_machine_active",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Washing machine pre restart state",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.washing_machine_pre_restart_state",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Washing machine running",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.washing_machine_running",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "04a14878-99d3-4030-a17d-bfa3c75b1f9b",
|
||
"automation": "- id: 04a14878-99d3-4030-a17d-bfa3c75b1f9b\n alias: 'HELPER: Стиральная машина: Управление статусом (старт/окончание)'\n description: Включает running при >5 Вт; выключает при <5 Вт (2 мин), если цикл\n длился не меньше минимума.\n mode: restart\n trigger:\n - platform: numeric_state\n entity_id: sensor.bathroom_washing_machine_power\n above: 5\n id: start\n - platform: numeric_state\n entity_id: sensor.bathroom_washing_machine_power\n below: 5\n for:\n minutes: 2\n id: finish\n condition:\n - condition: template\n value_template: '{{ states(''sensor.bathroom_washing_machine_power'') not in [''unknown'',\n ''unavailable''] }}\n\n '\n action:\n - choose:\n - conditions:\n - condition: trigger\n id: start\n sequence:\n - service: input_boolean.turn_on\n target:\n entity_id: input_boolean.washing_machine_running\n - service: input_datetime.set_datetime\n target:\n entity_id: input_datetime.washing_machine_started_at\n data:\n datetime: '{{ now().strftime(''%Y-%m-%d %H:%M:%S'') }}'\n - service: system_log.write\n data:\n message: Стиральная машина запущена.\n level: info\n - conditions:\n - condition: trigger\n id: finish\n - condition: state\n entity_id: input_boolean.washing_machine_running\n state: 'on'\n - condition: template\n value_template: '{% set started = as_timestamp(states(''input_datetime.washing_machine_started_at''))\n %} {% set min_sec = (states(''input_number.wm_min_cycle_min'') | float(10)\n * 60) | int %} {{ started is number and (now().timestamp() - started) >=\n min_sec }}\n\n '\n sequence:\n - service: input_boolean.turn_off\n target:\n entity_id: input_boolean.washing_machine_running\n - service: system_log.write\n data:\n message: Стиральная машина завершена.\n level: info\n default:\n - choose:\n - conditions:\n - condition: trigger\n id: finish\n - condition: state\n entity_id: input_boolean.washing_machine_running\n state: 'on'\n sequence:\n - service: system_log.write\n data:\n message: Низкая мощность обнаружена, но цикл < минимального времени —\n игнорируем окончание.\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "Washing machine running",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.washing_machine_running",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Washing machine power",
|
||
"room": "bathroom",
|
||
"type": "sensor",
|
||
"id": {
|
||
"entity_id": "sensor.bathroom_washing_machine_power",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Washing machine started at",
|
||
"room": "bathroom",
|
||
"type": "input_datetime",
|
||
"id": {
|
||
"entity_id": "input_datetime.washing_machine_started_at",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Washing machine min cycle minutes",
|
||
"room": "bathroom",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.wm_min_cycle_min",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "d1e78a7d-56c3-4d4e-b2a4-8a23f1a62a45",
|
||
"automation": "- id: d1e78a7d-56c3-4d4e-b2a4-8a23f1a62a45\n alias: 'Уведомление: Стирка завершена (TTS + Telegram)'\n description: При finished=on отправляет TTS и Telegram, если не startup/silent и\n цикл длился достаточно.\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.washing_machine_finished\n to: 'on'\n for:\n minutes: 2\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'off'\n - condition: state\n entity_id: binary_sensor.someone_is_home\n state: 'on'\n - condition: state\n entity_id: input_boolean.washing_machine_running\n state: 'off'\n - condition: template\n value_template: '{% set started = as_timestamp(states(''input_datetime.washing_machine_started_at''))\n %} {% set min_sec = (states(''input_number.wm_min_cycle_min'') | float(10) *\n 60) | int %} {{ started is number and (now().timestamp() - started) >= min_sec\n }}\n\n '\n action:\n - service: script.yandex_tts_washing_machine_finished\n - service: notify.master\n data:\n message: 🏠 Стирка закончена! 🧼\n - service: system_log.write\n data:\n message: Уведомление о завершении стирки отправлено.\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Someone is home",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.someone_is_home",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Washing machine running",
|
||
"room": "bathroom",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.washing_machine_running",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Washing machine started at",
|
||
"room": "bathroom",
|
||
"type": "input_datetime",
|
||
"id": {
|
||
"entity_id": "input_datetime.washing_machine_started_at",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Washing machine min cycle minutes",
|
||
"room": "bathroom",
|
||
"type": "input_number",
|
||
"id": {
|
||
"entity_id": "input_number.wm_min_cycle_min",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Washing machine finished",
|
||
"room": "bathroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.washing_machine_finished",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS Washing Machine Finished",
|
||
"room": "Bathroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_washing_machine_finished",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "washing_machine_reminder_no_motion",
|
||
"automation": "- id: washing_machine_reminder_no_motion\n alias: 'Уведомление: Напоминание о стирке при отсутствии движения'\n description: Через 15 мин после finished=on, если нет движения и дверь закрыта —\n напомнить через TTS.\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.washing_machine_finished\n to: 'on'\n for:\n minutes: 15\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'off'\n - condition: state\n entity_id: binary_sensor.someone_is_home\n state: 'on'\n - condition: state\n entity_id: binary_sensor.bathroom_motions\n state: 'off'\n - condition: state\n entity_id: binary_sensor.bathroom_open_door\n state: 'off'\n action:\n - service: script.yandex_tts_washing_machine_reminder\n - service: system_log.write\n data:\n message: Напоминание о стирке отправлено.\n level: info",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Someone is home",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.someone_is_home",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom open door",
|
||
"room": "bathroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.bathroom_open_door",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom motions",
|
||
"room": "bathroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.bathroom_motions",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Washing machine finished",
|
||
"room": "bathroom",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.washing_machine_finished",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS Washing Machine Reminder",
|
||
"room": "Bathroom",
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_washing_machine_reminder",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "2f26dfda-2840-424a-a840-8c4acda8eaf6",
|
||
"automation": "- id: 2f26dfda-2840-424a-a840-8c4acda8eaf6\n alias: 'Уведомление. Яндекс: Приветствие'\n description: Отключение камеры, включение света в прихожей и доклад о климате\n mode: single\n trigger:\n - platform: event\n event_type: yandex_speaker\n event_data:\n value: С возвращением, дорогой мне человек! Я скучала без тебя!\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'off'\n action:\n - service: light.turn_on\n target:\n entity_id: light.light_bathroom\n - delay:\n seconds: 4\n - service: script.yandex_tts_ppm_status\n - delay:\n seconds: 6\n - service: script.yandex_tts_temp_status\n - delay:\n seconds: 3\n - service: script.yandex_tts_hum_status",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Bathroom light",
|
||
"room": "bathroom",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.light_bathroom",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS Humidity Status",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_hum_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS PPM Status",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_ppm_status",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS Temp Status",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_temp_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "661464a3-ab6d-438e-847b-f2b6ddfee59a",
|
||
"automation": "- id: 661464a3-ab6d-438e-847b-f2b6ddfee59a\n alias: 'Уведомление. Яндекс: Прощание'\n description: Выключает весь свет, включает камеры и произносит прощальное сообщение\n через Яндекс.\n mode: single\n trigger:\n - platform: event\n event_type: yandex_speaker\n event_data:\n value: Я буду скучать! Возвращайся быстрее\n action:\n - delay: 00:00:04\n - service: script.yandex_tts_door_status\n - service: light.turn_off\n target:\n entity_id: light.all_lights\n - service: switch.turn_on\n target:\n entity_id: group.cameras\n - choose:\n - conditions:\n - condition: state\n entity_id: person.master\n state: home\n sequence:\n - service: notify.master\n data:\n message: Свет в квартире выключен! Приятной дороги!",
|
||
"config": [
|
||
{
|
||
"name": "Master person",
|
||
"room": "unknown",
|
||
"type": "person",
|
||
"id": {
|
||
"entity_id": "person.master",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Cameras group",
|
||
"room": "unknown",
|
||
"type": "switch",
|
||
"id": {
|
||
"entity_id": "group.cameras",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "All lights group",
|
||
"room": "unknown",
|
||
"type": "light",
|
||
"id": {
|
||
"entity_id": "light.all_lights",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS Door Status",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_door_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"id": "a8c5eb07-9381-46d5-bc65-0f52dd7079a8",
|
||
"automation": "- id: a8c5eb07-9381-46d5-bc65-0f52dd7079a8\n alias: 'Уведомление. Яндекс: Температура ниже установленного уровня'\n mode: single\n trigger:\n - platform: state\n entity_id: binary_sensor.temperature_below_20\n to: 'on'\n for:\n minutes: 1\n condition:\n - condition: state\n entity_id: input_boolean.system_startup_phase\n state: 'off'\n - condition: state\n entity_id: input_boolean.silent_mode\n state: 'off'\n action:\n - service: script.yandex_tts_door_status",
|
||
"config": [
|
||
{
|
||
"name": "System startup phase",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.system_startup_phase",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Silent mode",
|
||
"room": "unknown",
|
||
"type": "input_boolean",
|
||
"id": {
|
||
"entity_id": "input_boolean.silent_mode",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Temperature below 20",
|
||
"room": "unknown",
|
||
"type": "binary_sensor",
|
||
"id": {
|
||
"entity_id": "binary_sensor.temperature_below_20",
|
||
"device_id": null
|
||
}
|
||
},
|
||
{
|
||
"name": "Yandex TTS Door Status",
|
||
"room": null,
|
||
"type": "script",
|
||
"id": {
|
||
"entity_id": "script.yandex_tts_door_status",
|
||
"device_id": null
|
||
}
|
||
}
|
||
]
|
||
}
|
||
] |