- alias: Humidity in humidor too low
id: 4ccbd0aa-829a-45d3-abe7-33ae2552215b
triggers:
trigger: numeric_state
entity_id: sensor.atc_3d13_humidity
below: 65
for:
minutes: 30
actions:
- action: notify.telegram_group_system
data:
message: Влажность в хьюмидоре ниже 65% (текущая {{ states("sensor.atc_3d13_humidity")
}}%)
- alias: Humidity in humidor too high
id: f6158c69-c088-4258-a623-6c2ee3c2cf72
triggers:
trigger: numeric_state
entity_id: sensor.atc_3d13_humidity
above: 80
for:
minutes: 30
actions:
- action: notify.telegram_group_system
data:
message: Влажность в хьюмидоре выше 80% (текущая {{ states("sensor.atc_3d13_humidity")
}}%)
- alias: Temperature in humidor too low
id: 0d95f393-ab18-4aef-8eb9-9bf5165d6638
triggers:
trigger: numeric_state
entity_id: sensor.atc_3d13_temperature
below: 20
for:
minutes: 30
actions:
- action: notify.telegram_group_system
data:
message: Температура в хьюмидоре ниже 20°C (текущая {{ states("sensor.atc_3d13_temperature")
}}°C)
- alias: Temperature in humidor too high
id: dcfce935-f705-4ae5-be45-ffb780b3f290
triggers:
trigger: numeric_state
entity_id: sensor.atc_3d13_temperature
above: 25
for:
minutes: 30
actions:
- action: notify.telegram_group_system
data:
message: Температура в хьюмидоре выше 25°C (текущая {{ states("sensor.atc_3d13_temperature")
}}°C)
- alias: PowerOff all media when nobody at home
id: 0e2312c7-3cab-413a-aefb-20ff5802c718
triggers:
trigger: state
entity_id: group.family_persons
to: not_home
for:
minutes: 5
conditions:
- or:
- condition: state
entity_id: group.all_tv
state: 'on'
- condition: state
entity_id: group.all_chromecasts
state: 'on'
- condition: state
entity_id:
- media_player.yandex_station_lite_detskaia
- media_player.yandex_station_mini2_gostinaia
- media_player.yandex_station_mini2_spalnia
- media_player.yandex_station_lite_prikhozhaya
state: playing
- condition: state
entity_id: group.all_xbox
state: 'on'
actions:
- action: homeassistant.turn_off
target:
entity_id: group.all_tv
- action: media_player.media_stop
target:
entity_id:
- group.all_chromecasts
- action: media_player.turn_off
target:
entity_id:
- group.all_yandex_stations
- group.all_xbox
- alias: Home Presence Alert
id: 12b0184c-bb8b-436a-887a-733d0ddac126
mode: parallel
triggers:
trigger: state
entity_id:
- person.alexander
- person.irina
- person.tatiana
- person.olga
- person.egor
- person.kirill
conditions:
- and:
- condition: template
value_template: '{{ trigger.to_state.state = trigger.from_state.state }}'
actions:
- action: notify.telegram_group_flat_1
data:
message: '{{ trigger.to_state.attributes.friendly_name }} {% if trigger.to_state.state
== ''home'' %}дома {% elif trigger.to_state.state == ''Дача'' %}на даче {%
else %}скорее всего вне дома. {% endif %}
'
- alias: Entrance Door - Opened
id: 067c832a-9626-4f61-8d19-444d6156e889
triggers:
trigger: state
entity_id: binary_sensor.0x158d00031c790f_contact
from: 'off'
to: 'on'
actions:
action: notify.telegram_group_flat_1
data:
message: Открыта входная дверь
- alias: Entrance Door - Closed
id: c6df423a-a1ec-41fb-b600-3874ffef758b
triggers:
trigger: state
entity_id: binary_sensor.0x158d00031c790f_contact
from: 'on'
to: 'off'
actions:
action: notify.telegram_group_flat_1
data:
message: Входная дверь закрыта.
- alias: Torrent Completed [notify to group system]
id: fe45c917-f489-4c38-a3a1-c66e5fedb07f
triggers:
trigger: event
event_type: transmission_downloaded_torrent
actions:
action: notify.telegram_group_system
data:
message: Загрузка torrent-файла завершена
- alias: Полнолуние [notify to group system]
id: d698bdcc-4ce9-4954-a118-8a1f29cf327e
triggers:
trigger: state
entity_id: sensor.moon
to: full_moon
actions:
action: notify.telegram_group_system
data:
message: Сегодня полнолуние
- alias: Gas Alert
id: 0ca74008-65a2-4ed1-b860-e27e57b216f2
triggers:
trigger: state
entity_id: binary_sensor.0x00158d000413b210_gas
from: 'off'
to: 'on'
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
title: '*Внимание*'
message: 'Сработал датчик *газа* на кухне.
Откройте окна и перекройте подачу газа (за холодильником).
'
inline_keyboard:
- Отключить датчик:/poweroff_gas_sensor
- alias: Gas Alert - Telegram control - poweroff_gas_sensor
id: 3254a184-a04f-4b31-bbe9-1a00e403f134
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /poweroff_gas_sensor
actions:
- action: switch.turn_off
target:
entity_id: switch.blitzwolf_shp13_02_3ad702fe_on_off
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: Команда отправлена
- action: telegram_bot.edit_message
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
title: '*Внимание*'
message: 'Сработал датчик *газа* на кухне.
Датчик *газа* отключен
'
- alias: Gas Alert - Sensor Powered Off More Than 30 Min
id: 3e69fa5f-34f2-4e5e-86e2-467aad2420b6
triggers:
trigger: state
entity_id: switch.blitzwolf_shp13_02_3ad702fe_on_off
to: 'off'
for: 00:30:00
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
title: '*Внимание*'
message: 'Питание датчика *газа* отключено более 30 минут
'
inline_keyboard:
- Включить датчик:/poweron_gas_sensor
- alias: Gas Alert - Telegram control - poweroff_gas_sensor
id: 50892fe7-741c-4b4d-a71c-a498be52d6b7
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /poweron_gas_sensor
actions:
- action: switch.turn_on
target:
entity_id: switch.blitzwolf_shp13_02_3ad702fe_on_off
- action: telegram_bot.answer_callback_query
data_template:
callback_query_id: '{{ trigger.event.data.id }}'
message: Команда отправлена
- action: telegram_bot.edit_message
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
title: '*Внимание*'
message: 'Питание датчика *газа* отключено более 30 минут
Датчик *газа* включен
'
- alias: Boiler - Low Temperature Alert
id: fe98880b-2fcd-4b6f-9ded-adc174b9b958
triggers:
- trigger: numeric_state
entity_id: sensor.boiler_water_temp
below: 50
- trigger: numeric_state
entity_id: sensor.boiler_water_temp
below: 40
- trigger: numeric_state
entity_id: sensor.boiler_water_temp
below: 30
conditions:
condition: template
value_template: '{{ (trigger.to_state.state | int) = 0 }}'
actions:
- action: notify.telegram_group_flat_1
data:
title: '*Внимание*'
message: 'Температура воды в бойлере *{{ trigger.to_state.state }}*°C
'
- alias: Kettle - Boil Finished Notification
id: c5eaa742-7ea5-4c0b-8d43-d3ce69232a3e
triggers:
- trigger: state
entity_id: binary_sensor.kettle_status
from: 'on'
to: 'off'
conditions: '{{ states(''input_boolean.ha_shutdown'') == ''off'' }}'
actions:
- action: notify.telegram_group_flat_1
data:
message: Чайник *вскипел*
- alias: Washing Machine - Wash Finished Notification
id: eed153ad-dca8-464d-8cc5-b30421eec1a1
triggers:
- trigger: state
entity_id: binary_sensor.washer_status
from: 'on'
to: 'off'
conditions: '{{ states(''input_boolean.ha_shutdown'') == ''off'' }}'
actions:
- action: notify.telegram_group_flat_1
data:
title: 'Стиральная машина:'
message: Стирка *закончена*, не забудьте достать белье.
- alias: Dryer Machine - Drying Finished Notification
id: e572fd6c-06d2-4c34-a218-4b709734c6e0
triggers:
- trigger: state
entity_id: binary_sensor.dryer_status
from: 'on'
to: 'off'
conditions: '{{ states(''input_boolean.ha_shutdown'') == ''off'' }}'
actions:
- action: notify.telegram_group_flat_1
data:
title: 'Сушильная машина:'
message: Сушка *закончена*, не забудьте достать белье.
- alias: Dishwasher - Dishwashing Finished Notification
id: 9ef4d500-e688-4b70-b565-43ebb754bfe2
triggers:
- trigger: state
entity_id: binary_sensor.dishwasher_status
from: 'on'
to: 'off'
conditions: '{{ states(''input_boolean.ha_shutdown'') == ''off'' }}'
actions:
- action: notify.telegram_group_flat_1
data:
title: 'Посудомоечная машина:'
message: Программа *закончена*, посуда вымыта.
- alias: Yandex Station SW Updated
id: 3f22e8f0-6f31-49c1-bca1-ce19184c5184
mode: queued
max: 10
triggers:
- trigger: state
entity_id:
- sensor.yandex_station_lite_detskaia_sw_version
- sensor.yandex_station_lite_prikhozhaya_sw_version
- sensor.yandex_station_mini2_gostinaia_sw_version
- sensor.yandex_station_mini2_spalnia_sw_version
conditions:
- '{{ trigger.to_state.state = trigger.from_state.state }}'
- '{% set ignore = [''unknown'', ''unavailable'', ''none'', None, null, '''', ''null'']
%} {{ trigger.to_state.state not in ignore and trigger.from_state.state not in
ignore }}
'
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
message: '_Yandex Station:_ Изменилась версия прошивки в
{%- if ''detskaia'' in trigger.entity_id %} *Детской*.
{%- elif ''gostinaia'' in trigger.entity_id %} *Гостиной*.
{%- elif ''spalnia'' in trigger.entity_id %} *Спальне*.
{%- elif ''prikhozhaya'' in trigger.entity_id %} *Прихожей*.
{%- endif %}
Было: {{ trigger.from_state.state }}
Стало: {{ trigger.to_state.state }}
'
- alias: 'HA: Mount NFS Share from NAS01 [/nmt/nas]'
id: eb3ef8ea-e19a-4b1e-b7ff-482089a346b5
triggers:
- trigger: homeassistant
event: start
actions:
- action: switch.turn_on
target:
entity_id: switch.mount_mnt_nas
- alias: 'HA: Create Daily Backup'
id: acac055e-ea1e-41cd-9f46-62e7a8c006aa
initial_state: true
triggers:
- trigger: time
at: 01:00:00
actions:
- action: auto_backup.backup_full
data:
name: Daily Backup {{ now().strftime('%Y-%m-%d') }}
keep_days: 7
- alias: 'HASS: ERRORs in System Log - Counter'
id: 3b8230a5-49d5-437b-8bd9-d3f72f95425f
triggers:
trigger: event
event_type: system_log_event
event_data:
level: ERROR
mode: parallel
max: 50
actions:
- action: counter.increment
target:
entity_id: counter.syslog_errors
- alias: 'HASS: WARNINGs in System Log - Counter'
id: acdf3489-b611-445c-bd24-2efc9c431124
triggers:
trigger: event
event_type: system_log_event
event_data:
level: WARNING
mode: parallel
max: 50
actions:
- action: counter.increment
target:
entity_id: counter.syslog_warnings
- alias: 'HASS: Create Group of Battery Devices'
id: 823d8378-6723-4e71-93ce-29c59946347a
triggers:
- trigger: homeassistant
event: start
- trigger: time_pattern
hours: /2
actions:
- action: group.set
data:
object_id: battery_devices
entities: "{%- \n for state in states.sensor \n if is_state_attr(state.entity_id,\
\ 'device_class', 'battery') and\n (state.entity_id.endswith(\"_battery\"\
) or state.entity_id.endswith(\"_power\"))\n%} {{ state.entity_id }}{%- if\
\ not loop.last -%}, {%- endif -%} {%- endfor %}"
- alias: Fix for reload automations
id: 4c7a9752-b7d2-4c41-acf6-7d175f6b9d39
triggers:
- trigger: event
event_type: call_service
event_data:
domain: automation
service: reload
- trigger: event
event_type: automation_reloaded
actions:
- action: "{% if trigger.event.event_type == 'call_service' -%}\n automation.turn_off\n\
{% else -%}\n automation.turn_on\n{% endif -%}"
target:
entity_id: automation.device_needs_attention_notify_to_group_system
- alias: Update HA DB SQL sensors
id: e41348f5-2915-4a51-8d88-e5f00e7c0b67
triggers:
- trigger: time_pattern
hours: /1
minutes: '22'
actions:
- action: homeassistant.update_entity
target:
entity_id:
- sensor.hass_db_events_rows_count
- sensor.hass_db_states_rows_count
- sensor.hass_db_statistics_rows_count
- sensor.hass_db_total_rows_count
- sensor.hass_db_size
- alias: Update MES sensors
id: 7f460de3-11dc-4e23-886c-a14b7db8bfeb
triggers:
- trigger: time_pattern
minutes: '33'
conditions:
- condition: time
after: 07:00:00
before: '22:50:00'
actions:
- action: homeassistant.update_entity
target:
entity_id:
- sensor.mes_55384_014_37_meter_44259893
- alias: Update Ping sensors for TV
id: a164b9f1-bd13-465e-a76b-7831cdfc63d9
triggers:
- trigger: time_pattern
seconds: '10'
actions:
- action: homeassistant.update_entity
target:
entity_id: binary_sensor.samsungtv_40c5100
- alias: Restart Stuck Add-on Z2M-2
id: 0617529b-bc60-48c0-8954-6936aa95ef50
triggers:
- trigger: state
entity_id: binary_sensor.z2m_2_stuck
from: 'off'
to: 'on'
conditions:
- condition: state
entity_id: sensor.addons_mostuitto_state
state: started
actions:
- parallel:
- action: hassio.addon_restart
data:
addon: 4b41db2d_zigbee2mqtt
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
parse_mode: html
title: Внимание
message: Z2M-2 похоже завис, перезапускаем...
- alias: 'HASS: Login Failed [notify to group system]'
id: 142e502b-3e63-49e3-b790-9150f155dc6d
mode: queued
max: 5
triggers:
- trigger: state
entity_id: persistent_notification.http_login
conditions:
- condition: template
value_template: '{{ trigger.to_state.state = off }}'
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
disable_web_page_preview: true
message: '*Внимание*
Неудачная попытка входа, ошибка авторизации
Источник: {{ state_attr(''persistent_notification.http_login'',''message'')
| regex_findall_index(''from (.*)\. '') }}
_http://whatismyipaddress.com/ip/{{ state_attr(''persistent_notification.http_login'',''message'')
| regex_findall_index(''\((.*)\)'') }}_
'
- action: persistent_notification.dismiss
data:
notification_id: http_login
- alias: 'HASS: IP Banned [notify to group system]'
id: ba2318c5-5c2e-4575-aa13-02f53063793d
mode: queued
max: 5
triggers:
- trigger: state
entity_id: persistent_notification.ip_ban
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
disable_web_page_preview: true
message: '*Внимание*
Заблокирован IP: {{ state_attr(''persistent_notification.ip_ban'', ''message'').split(''Too
many login attempts from '')[1] }}
_http://whatismyipaddress.com/ip/{{ state_attr(''persistent_notification.ip_ban'',
''message'').split(''Too many login attempts from '')[1] }}_
'
- action: persistent_notification.dismiss
data:
notification_id: ip_ban
- alias: 'HASS: Home Assistant Start'
id: 60f94d65-93d1-49e5-94d7-ca58471d02c4
triggers:
- trigger: homeassistant
event: start
actions:
- action: homeassistant.update_entity
target:
entity_id: sensor.errors_in_system_log_command_line
- wait_for_trigger:
- trigger: state
entity_id: sensor.errors_in_system_log_command_line
timeout: 00:00:01
- action: homeassistant.update_entity
target:
entity_id: sensor.warnings_in_system_log_command_line
- wait_for_trigger:
- trigger: state
entity_id: sensor.warnings_in_system_log_command_line
timeout: 00:00:01
- action: notify.telegram_group_system
data:
message: '_INFO:_ Home Assistant *запущен* за {{ states(''sensor.start_time'')
}} сек.
Ошибок: *{{ states(''sensor.errors_in_system_log_command_line'') }}*, Предупреждений:
*{{ states(''sensor.warnings_in_system_log_command_line'') }}*
'
- action: script.turn_on
target:
entity_id: script.hass_errors_counter_set_at_startup
- action: script.turn_on
target:
entity_id: script.hass_warnings_counter_set_at_startup
- action: script.turn_on
target:
entity_id: script.auto_reboot_by_errors_after_boot
- alias: 'HASS: Home Assistant Shutdown'
id: 44bdbc77-2894-4c80-9739-6c690bde13f9
triggers:
trigger: homeassistant
event: shutdown
actions:
- action: input_boolean.turn_on
data:
entity_id: input_boolean.ha_shutdown
- action: notify.telegram_group_system
data:
message: _INFO:_ Home Assistant *остановлен*.
- alias: 'HASS: ERRORs in System Log [notify to group system]'
id: e4140626-d5b1-4a6c-abe1-f99ae0547f0b
initial_state: false
triggers:
trigger: event
event_type: system_log_event
event_data:
level: ERROR
actions:
- action: notify.telegram_group_system
data:
message: _{{ trigger.event.data.level }}:_ {{ trigger.event.data.message }}
- alias: 'HASS: WARNINGs in System Log [notify to group system]'
id: 42541570-874a-46a9-86d0-0db433aaec5b
initial_state: false
triggers:
trigger: event
event_type: system_log_event
event_data:
level: WARNING
actions:
- action: notify.telegram_group_system
data:
message: _{{ trigger.event.data.level }}:_ {{ trigger.event.data.message }}
- alias: 'HASS: System Config Errors [notify to group system]'
id: 3770bcbf-435a-43b2-bfde-b04711e32b61
triggers:
- trigger: event
event_type: call_service
event_data:
domain: persistent_notification
service: create
conditions:
- or:
- condition: template
value_template: '{{ trigger.event.data.service_data.notification_id == ''homeassistant.check_config''
}}'
- condition: template
value_template: '{{ trigger.event.data.service_data.notification_id == ''invalid_config''
}}'
actions:
- action: notify.telegram_group_system
data:
message: '*Внимание, конфигурация содержит ошибки*
{% if trigger.event.data.service_data.notification_id == ''homeassistant.check_config''
-%}
Перезапуск HA отменён, подробности в логах.
{% elif trigger.event.data.service_data.notification_id == ''invalid_config''
-%}
{{ trigger.event.data.service_data.message }}
{% endif %}
'
- action: persistent_notification.dismiss
data:
notification_id: '{{ trigger.event.data.service_data.notification_id }}'
- alias: 'HASS: ERRORs in Automations [notify to group system]'
id: 67d49afb-cac6-45e2-99b0-0ad5904d84b2
mode: queued
triggers:
- trigger: event
event_type: system_log_event
event_data:
level: ERROR
conditions:
- condition: template
value_template: "{{ \n trigger.event.data.message | regex_search('Error while\
\ executing automation') or\n trigger.event.data.message | regex_search('Error\
\ executing script')\n}}"
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
parse_mode: html
message: "INFO: Ошибка выполнения автоматизации: \n{{ trigger.event.data.message\
\ }}.\n"
- alias: 'HASS: Critical Error [notify to group system]'
id: d70721b8-e0f2-415a-b917-331781a463ee
mode: queued
triggers:
- trigger: event
event_type: system_log_event
event_data:
level: FATAL
- trigger: event
event_type: system_log_event
event_data:
level: CRITICAL
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
parse_mode: html
message: 'Критическая ошибка системы:
{{ trigger.event.data.message }}
'
- alias: 'HA: Update Entities Notifications'
id: d69b4310-532c-4cda-9a77-3434e6319fef
mode: queued
max: 50
max_exceeded: silent
triggers:
- trigger: event
event_type: state_changed
conditions:
- '{{ trigger.event.data.entity_id.startswith(''update.'') }}'
- '{{ trigger.event.data.old_state is not none and trigger.event.data.new_state
is not none }}'
- or:
- condition: template
value_template: "{% set ignore = ['unknown', 'unavailable', 'none', None, null,\
\ ''] %}\n {{ \n trigger.event.data.new_state.state == 'on' and\n (version(trigger.event.data.new_state.attributes.latest_version)\
\ = version(trigger.event.data.old_state.attributes.latest_version) or\n \
\ version(trigger.event.data.new_state.attributes.latest_version) > version(trigger.event.data.old_state.attributes.latest_version))\
\ and\n trigger.event.data.new_state.attributes.latest_version not in ignore\
\ and\n trigger.event.data.new_state.attributes.latest_version is not none\n\
\ }}\n"
- condition: template
value_template: "{% set ignore = ['unknown', 'unavailable', 'none', None, null,\
\ ''] %}\n {{ \n trigger.event.data.old_state.state == 'on' and trigger.event.data.new_state.state\
\ == 'off' and\n (version(trigger.event.data.new_state.attributes.installed_version)\
\ = version(trigger.event.data.old_state.attributes.installed_version) or\n\
\ version(trigger.event.data.new_state.attributes.installed_version) >\
\ version(trigger.event.data.old_state.attributes.installed_version)) and\n\
\ trigger.event.data.new_state.attributes.installed_version not in ignore\
\ and\n trigger.event.data.new_state.attributes.installed_version is not\
\ none\n }}\n"
actions:
- variables:
latest_version: '{{ trigger.event.data.new_state.attributes.latest_version }}'
installed_version: '{{ state_attr(trigger.event.data.entity_id, ''installed_version'')
}}'
old_installed_version: '{{ trigger.event.data.old_state.attributes.installed_version
}}'
friendlyname: '{{- trigger.event.data.new_state.name | regex_replace(''( Update$|
Firmware$| Обновление прошивки$)'', '''', True) -}}'
- if:
- condition: template
value_template: '{{ trigger.event.data.new_state.attributes.installed_version
= trigger.event.data.old_state.attributes.installed_version }}'
then:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
parse_mode: html
message: 'INFO: {{ friendlyname }} - обновлен ({{ old_installed_version
}} -> {{ latest_version }}).
'
else:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
parse_mode: html
message: 'INFO: {{ friendlyname }} - доступно обновление ({{
installed_version }} -> {{ latest_version }}).
'
- alias: Device Needs Attention [notify to group system]
id: 89bb378c-13b5-4051-bd08-3f226dbc8834
mode: queued
max: 30
triggers:
- trigger: event
event_type: state_changed
conditions:
- condition: template
value_template: '{{ states(''input_boolean.ha_shutdown'') == ''off'' }}'
- condition: template
value_template: '{{ states(''sensor.ha_uptime'') > ''1'' }}'
- condition: template
value_template: "{{ not trigger.event.data.entity_id | regex_search\n (\n '^group.battery_devices$|'\n\
\ '^binary_sensor.lamp_status_|'\n '^sensor.lamp_status_|'\n '^sensor.mirobot_1s_|'\n\
\ '^sensor.xiaomi_vacuum_cleaner_|'\n '^switch.smartir_|'\n '^sensor.openweathermap_|'\n\
\ '.*\\.smartmi_humidifier_\\d{2}_\\w+|'\n '^sensor\\.tplink_smartplug_01_|'\n\
\ '^sensor\\.gosund_sp111_\\d{2}_|'\n '^(switch|button)\\.gosund_sp111_\\\
d{2}_restart|'\n '^sensor\\..*_ble|'\n '^(binary_sensor|switch)\\.domofon_|'\n\
\ '^(binary_sensor|sensor|light)\\.sonoff_basic_|'\n '^(binary_sensor|sensor)\\\
.sonoff_mini_r2_|'\n '^(switch|button)\\.(esp32_miscale2|esp32_bt_proxy)_\\\
d{2}_restart.*|'\n '^sensor\\.xiaomi_mi_scale_2_.*|'\n '^number\\..*_(min|max)_weight|'\n\
\ '^button\\..*_identify|'\n '^sensor\\..*_(weight_current|current_weight)|'\n\
\ '^sensor\\..*_(impedance_current|current_impedance)|'\n '^media_player\\\
.plex_.*|'\n '^(binary_sensor|sensor|switch|button)\\.reolinkcam_(01|02)_.*|'\n\
\ '.*ed5e33eb_0ca3_4263_a681_a68b1045a5e6.*|'\n '^sensor\\.oneplus_8t_ibeacon_.*|'\n\
\ '^binary_sensor\\..*_oneplus_8t_presence$|'\n '^binary_sensor\\..*_holy_iot_.*_presence$|'\n\
\ '^binary_sensor\\..*_nut_gray_1_presence$|'\n '^binary_sensor\\..*_amazfit_gtr_4_presence$|'\n\
\ '^.*\\.nas01_.*|'\n '^vacuum\\.xiaomi_vacuum_cleaner$|'\n '^sensor\\.esp32_bt_proxy_\\\
d{2}_rssi$|'\n '^sensor\\..*_estimated_distance$|'\n '^(sensor|number|switch|button|binary_sensor)\\\
.galaxy_tab_a_8_0_2019_.*$|'\n '^camera\\.reolinkcam_01_rtsp.*$|'\n '^(sensor|binary_sensor|button|switch)\\\
.shellyem_.*|'\n '^sensor\\.ch_main_energy_.*|'\n '^sensor\\..*_geocoded_location$|'\n\
\ '^sensor\\.double_take_.*|'\n '^sensor\\.processor_use$|'\n '^binary_sensor\\\
.avb0r$|'\n '^sensor\\.dacha_nearest_.*|'\n '^sensor\\.dacha_.*_di.*|'\n \
\ '^(media_player|remote)\\.xbox_ch_01|'\n '^(media_player|remote)\\.xbox_v_gostinoi|'\n\
\ '^sensor\\..*_sonoff_pow_r3_0._power_factor$|'\n 'sensor\\.ch_lte_modem_.*|'\n\
\ 'sensor\\.ch_(water|septic)_pump_run_time_.*|'\n '.*\\.rch_.*'\n )\n}}"
- condition: template
value_template: '{{ trigger.event.data.new_state.state = trigger.event.data.old_state.state
}}'
- condition: template
value_template: '{{ trigger.event.data.new_state.state in [''unknown'', ''unavailable'']
}}'
actions:
- condition: template
value_template: '{{ states(''input_boolean.ha_shutdown'') == ''off'' }}'
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
parse_mode: html
disable_notification: true
message: 'INFO: Объект {{ trigger.event.data.entity_id }} сменил статус
на {{ trigger.event.data.new_state.state }}.
'
- alias: Low Battery Alert [notify to group system]
id: 6d87e0a2-8a6b-4b20-bd28-900af1620584
mode: queued
max: 30
triggers:
- trigger: event
event_type: state_changed
conditions:
- condition: template
value_template: "{{ not trigger.event.data.entity_id | regex_search\n (\n '^sensor\\\
.galaxy_tab_a_8_0_2019_battery'\n )\n}}"
- condition: template
value_template: '{{ trigger.event.data.entity_id in (expand(''group.battery_devices'')
| map(attribute=''entity_id'')) }}'
- condition: template
value_template: '{{ not trigger.event.data.new_state.state in [''unknown'', ''unavailable'']
}}'
- condition: template
value_template: '{{ (trigger.event.data.new_state.state | int) < (states(''input_number.low_battery_alert_threshold'')
| int) }}'
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
parse_mode: html
title: Внимание, низкий заряд батареи
message: '{{ trigger.event.data.new_state.attributes.friendly_name }}: {{ trigger.event.data.new_state.state
}} %
'
- alias: New Network Device Notification
id: 7e5b4f9a-eb87-487f-8e1a-4b980de13734
mode: parallel
triggers:
trigger: event
event_type: device_tracker_new_device
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
parse_mode: html
title: Найдено новое устройство в сети
message: 'MAC: {{ trigger.event.data.mac }}
'
- alias: Auto Backup Completed [notify to group system]
id: fef0c4de-e2ba-419b-b49e-ff39449e6481
triggers:
trigger: event
event_type: auto_backup.backup_successful
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
parse_mode: html
message: 'INFO: Создание резервной копии завершилось успешно.
Имя: {{ trigger.event.data.name }}
'
- alias: Auto Backup Failure [notify to group system]
id: 24f2bb2c-3e2c-47b5-ba9a-a92f0f5bf63a
triggers:
trigger: event
event_type: auto_backup.backup_failed
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
parse_mode: html
title: Внимание
message: 'Создание резервной копии завершилось ошибкой.
Имя: {{ trigger.event.data.name }}
Ошибка: {{ trigger.event.data.error }}
'
- alias: Telegram Bot - Mirror text
id: d35faec4-c949-4358-8aff-00e11b560444
triggers:
trigger: event
event_type: telegram_text
actions:
action: notify.telegram_group_system
data:
message: '*{{ trigger.event.data.from_first }} {{ trigger.event.data.from_last
}} [{{ trigger.event.data.user_id }}] пишет:*
{{ trigger.event.data.text }}
'
- alias: Telegram Bot - Start
id: d50c7e2c-9f67-40f2-9495-41ba1140c9b5
triggers:
- trigger: event
event_type: telegram_command
event_data:
command: /start
- trigger: event
event_type: telegram_command
event_data:
command: /start@HAutoBot
actions:
action: telegram_bot.send_message
data:
target: '{{ trigger.event.data.user_id }}'
message: Привет! Помощь - /help
- alias: Telegram Bot - Help
id: 1e265eea-3d26-4a04-8402-f25a828f841d
triggers:
- trigger: event
event_type: telegram_command
event_data:
command: /help
- trigger: event
event_type: telegram_command
event_data:
command: /help@HAutoBot
actions:
action: telegram_bot.send_message
data:
target: '{{ trigger.event.data.user_id }}'
parse_mode: html
message: 'Доступные комманды:
/status - Текущий статус устройств
/whoishome - Кто дома?
/weather - Погода дома
/weather_ch - Погода на даче
/ping - Проверить доступность сервиса HASS
'
- alias: Telegram Bot - Ping
id: 936c648b-18b6-4636-a941-cc3f3361fdd0
triggers:
- trigger: event
event_type: telegram_command
event_data:
command: /ping
- trigger: event
event_type: telegram_command
event_data:
command: /ping@HAutoBot
actions:
action: telegram_bot.send_message
data:
target: '{{ trigger.event.data.user_id }}'
message: 'Pong! _{{ now().strftime("%d.%m.%Y %H:%M:%S") }}_
Current version: {{ states(''sensor.current_version'') }}
DB Size: {{ states(''sensor.hass_db_size'') }} {{ state_attr(''sensor.hass_db_size'',''unit_of_measurement'')
}}
Uptime: {{ states(''sensor.ha_uptime'') }} min.
'
- alias: Telegram Bot - Who is home?
id: f3af5ecc-3eb8-4542-8207-97f90b6f5abf
triggers:
- trigger: event
event_type: telegram_command
event_data:
command: /whoishome
- trigger: event
event_type: telegram_command
event_data:
command: /whoishome@HAutoBot
actions:
action: telegram_bot.send_message
data:
target: '{{ trigger.event.data.chat_id }}'
message: 'Сейчас дома:
{%- set entites = expand(''group.family_persons'') %}{% for prs in entites
%}{% if prs.state == "home" %}
{{ prs.attributes.friendly_name }}{% endif %}{% endfor %}
{% if is_state("group.family_persons", "not_home") %}Никого нет{% endif %}
'
- alias: Telegram Bot - Weather
id: b0b0a539-14fb-440c-b57c-269460961819
triggers:
- trigger: event
event_type: telegram_command
event_data:
command: /weather
- trigger: event
event_type: telegram_command
event_data:
command: /weather@HAutoBot
actions:
- action: telegram_bot.send_photo
data:
target: '{{ trigger.event.data.user_id }}'
file: /config/www/weather_icons/{{ states("weather.danilovskii") }}.webp
caption: 'Температура {{ states(''sensor.danilovskii_temperature'') }}°C
Ощущается как {{ states(''sensor.danilovskii_feels_like_temperature'') }}°C
Влажность {{ states(''sensor.danilovskii_humidity'') }}%
Давление {{ states(''sensor.danilovskii_pressure'') }} hPa ({{ states(''sensor.openweathermap_moskva_danilovskii_pressure_mmhg'')
}} mmHg)
'
- alias: Telegram Bot - Weather Country House
id: c5ac3f4b-80b8-479f-96bf-45274aeba2ec
triggers:
- trigger: event
event_type: telegram_command
event_data:
command: /weather_ch
- trigger: event
event_type: telegram_command
event_data:
command: /weather_ch@HAutoBot
actions:
- action: telegram_bot.send_photo
data:
target: '{{ trigger.event.data.user_id }}'
file: /config/www/weather_icons/{{ states("weather.nivki_2") }}.webp
caption: 'Температура {{ states(''sensor.nivki_2_temperature'') }}°C
Ощущается как {{ states(''sensor.nivki_2_feels_like_temperature'') }}°C
Влажность {{ states(''sensor.nivki_2_humidity'') }}%
Давление {{ states(''sensor.nivki_2_pressure'') }} hPa ({{ states(''sensor.openweathermap_stupino_nivki_2_pressure_mmhg'')
}} mmHg)
'
- alias: Telegram Bot - Status
id: 51572bf5-4960-4034-b09a-17d202c07c18
triggers:
- trigger: event
event_type: telegram_command
event_data:
command: /status
- trigger: event
event_type: telegram_command
event_data:
command: /status@HAutoBot
actions:
action: telegram_bot.send_message
data:
target: '{{ trigger.event.data.user_id }}'
message: '*Климат*
Гостинная: *{{ states(''sensor.temperature_in_livingroom'') }}°C*, {{ states(''sensor.humidity_in_livingroom'')
}}%
Детская: *{{ states(''sensor.temperature_in_nursery'') }}°C*, {{ states(''sensor.humidity_in_nursery'')
}}%
Спальня: *{{ states(''sensor.temperature_in_bedroom'') }}°C*, {{ states(''sensor.humidity_in_bedroom'')
}}%
Ванная: *{{ states(''sensor.temperature_in_bathroom'') }}°C*, {{ states(''sensor.humidity_in_bathroom'')
}}%
Туалет: *{{ states(''sensor.temperature_in_toilet'') }}°C*, {{ states(''sensor.humidity_in_toilet'')
}}%
Кладовая: *{{ states(''sensor.temperature_in_storeroom'') }}°C*, {{ states(''sensor.humidity_in_storeroom'')
}}%
*Статус устройств*
`-= Датчики протечки =-`
Нептун (кладовая, туалет, ванна, кухня): *{{ states(''binary_sensor.neptun_water_leakage'')
}}*
Aqara кладовая: *{{ states(''binary_sensor.0x158d000400e77d_moisture'') }}*
Aqara под ванной (слева): *{{ states(''binary_sensor.0x158d0004030d84_moisture'')
}}*
Aqara справа от ванной: *{{ states(''binary_sensor.lumi_lumi_sensor_wleak_aq1_ias_zone'')
}}*
`-= Вытяжка =-`
Ванная: *{{ states(''binary_sensor.bathroom_extractor_fan'') }}*
Туалет: *{{ states(''binary_sensor.toilet_extractor_fan'') }}*
`-= Кондиционеры =-`
Детская: *{{ states(''binary_sensor.0x158d00039cf974_contact'') }}*
Гостинная: *{{ states(''binary_sensor.0x158d0003d54725_contact'') }}*
Спальня: *{{ states(''binary_sensor.0x158d0004073b67_contact'') }}*
`-= Крупная бытовая техника =-`
Водонагреватель: *{{ states(''binary_sensor.boiler_status'') }}* ({{ states(''sensor.tplink_smartplug_01_current_consumption'')
}} W)
Стиральная машина: *{{ states(''binary_sensor.washer_status'') }}* ({{ states(''sensor.tplink_smartplug_02_current_consumption'')
}} W)
Сушильная машина: *{{ states(''binary_sensor.dryer_status'') }}* ({{ states(''sensor.gosund_sp111_09_watt'')
}} W)
Посудомоечная машина: *{{ states(''binary_sensor.dishwasher_status'') }}*
({{ states(''sensor.gosund_sp111_06_watt'') }} W)
Холодильник: *{{ states(''binary_sensor.fridge_status'') }}* ({{ states(''sensor.gosund_sp111_04_watt'')
}} W)
Духовой шкаф: *{{ states(''binary_sensor.oven_status'') }}* ({{ states(''sensor.gosund_sp111_10_watt'')
}} W)
`-= Свет =-`
Споты в прихожей: *{{ states(''light.sonoff_1000f2f14a'') }}*
Споты в коридоре: *{{ states(''light.sonoff_1000f2a500'') }}*
Люстра в детской: *{{ states(''light.ikea_e27_detskaia'') }}*
Подсветка окна в детской: *{{ states(''light.detskaia_podsvetka_na_okne'')
}}*
Лампа на столе в детской слева: *{{ states(''light.ikea_e14_level_light_color_on_off'')
}}*
Лампа на столе в детской справа: *{{ states(''light.ikea_of_sweden_tradfri_bulb_e14_ws_opal_600lm_light'')
}}*
Люстра в гостиной: *{{ states(''light.sonoff_1000f3035d'') }}*
Споты в гостиной: *{{ states(''light.sonoff_1000f30a9e'') }}*
Бра в гостиной: *{{ states(''light.sonoff_1000ab3c28'') }}*
Подсветка онка в гостиной: *{{ states(''light.gostinaia_podsvetka_na_okne'')
}}*
Лампа на столе в гостиной: *{{ states(''light.ikea_e27_level_light_color_on_off'')
}}*
Споты на кухне: *{{ states(''light.sonoff_1000b72483'') }}*
Подсветка кухни: *{{ states(''light.kukhnia_lenta'') }}*
Люстра на кухне: *{{ states(''light.ikea_e27_kukhnia'') }}*
Споты в Ванной: *{{ states(''light.sonoff_zbmini_04_on_off'') }}*
Споты в Туалете: *{{ states(''light.sonoff_zbmini_03_on_off'') }}*
Люстра в кладовой: *{{ states(''light.sonoff_1000b6831b'') }}*
Люстра в спальне: *{{ states(''light.sonoff_1001053235'') }}*
Бра в спальне - лево: *{{ states(''light.sonoff_01minizb_47ef08fe_on_off'')
}}*
Бра в спальне - право: *{{ states(''light.sonoff_1001045426'') }}*
Лампа на столе в спальне: *{{ states(''light.spalnia_stol'') }}*
`-= Шторы =-`
Кухня - левая: *{{ states(''cover.tze200_rddyvrci_ts0601_5c2fbdfe_window_covering'')
}}*
Кухня - правая: *{{ states(''cover.tze200_rddyvrci_ts0601_df30bdfe_window_covering'')
}}*
`-= Розетки =-`
Розетка Xiaomi WiFi Plug 01: *{{ states(''switch.mi_smartplugwifi_01'') }}*
`-= ТВ =-`
Спальня: *{{ states(''media_player.ue43ru7470'') }}*
Гостинная: *{{ states(''media_player.ue46es5507'') }}*
Кухня: *{{ states(''media_player.ue32es5500'') }}*
Детская: *{{ states(''binary_sensor.samsungtv_40c5100'') }}*
`-= Chromecast =-`
Гостинная: *{{ states(''media_player.gostinaia'') }}*
Детская: *{{ states(''media_player.detskaia'') }}*
`-= Yandex =-`
Прихожая: *{{ states(''media_player.yandex_station_lite_prikhozhaya'') }}*
Детская: *{{ states(''media_player.yandex_station_lite_detskaia'') }}*
Гостинная: *{{ states(''media_player.yandex_station_mini2_gostinaia'') }}*
Спалья: *{{ states(''media_player.yandex_station_mini2_spalnia'') }}*
`-= Разное =-`
Входная дверь: *{{ states(''sensor.entrance_door_status'') }}*
Датчик газа: *{{ states(''binary_sensor.0x00158d000413b210_gas'') }}*
Датчик газа (питание): *{{ states(''switch.blitzwolf_shp13_02_3ad702fe_on_off'')
}}*
Mi Robot: *{{ states(''vacuum.xiaomi_vacuum_cleaner'') }}*
Transmission Status: *{{ states(''sensor.transmission_status'') }}*
Plex Users: *{{ states(''sensor.plex_plexonubuntu'') }}*
'
- alias: 'Alice: Lumos'
id: 1385db9f-772d-474e-b9bc-237c073ba44a
mode: restart
triggers:
- trigger: event
event_type: yandex_intent
event_data:
text: Люмос
room: Гостиная
id: Living_Room_Lumos
- trigger: event
event_type: yandex_intent
event_data:
text: Люмос максима
room: Гостиная
id: Living_Room_Lumos_Maxima
- trigger: event
event_type: yandex_intent
event_data:
text: Нокс
room: Гостиная
id: Living_Room_Nox
- trigger: event
event_type: yandex_intent
event_data:
text: Люмос
room: Детская
id: Nursery_Lumos
- trigger: event
event_type: yandex_intent
event_data:
text: Люмос максима
room: Детская
id: Nursery_Lumos_Maxima
- trigger: event
event_type: yandex_intent
event_data:
text: Нокс
room: Детская
id: Nursery_Nox
actions:
choose:
- alias: Nursery Lumos
conditions:
- condition: trigger
id: Nursery_Lumos
sequence:
- action: light.turn_on
target:
entity_id: light.ikea_e27_detskaia
- alias: Nursery Lumos Maxima
conditions:
- condition: trigger
id: Nursery_Lumos_Maxima
sequence:
- action: light.turn_on
target:
area_id: 24758c6268dd46168d35620719b05ed0
- alias: Nursery Nox
conditions:
- condition: trigger
id: Nursery_Nox
sequence:
- action: light.turn_off
target:
entity_id: light.ikea_e27_detskaia
- alias: Living Room Lumos
conditions:
- condition: trigger
id: Living_Room_Lumos
sequence:
- action: light.turn_on
target:
entity_id: light.sonoff_1000f30a9e
- alias: Living Room Lumos Maxima
conditions:
- condition: trigger
id: Living_Room_Lumos_Maxima
sequence:
- action: light.turn_on
target:
area_id: 38de229de4ae4b9c9aebbb4973528a2f
- alias: Living Room Nox
conditions:
- condition: trigger
id: Living_Room_Nox
sequence:
- action: light.turn_off
target:
entity_id: light.sonoff_1000f30a9e
- alias: Mirror Yandex Station input_select Name to ID
id: 1ec5424e-f770-486c-b4cf-ed29e65dcb36
triggers:
trigger: state
entity_id: input_select.yandex_station_target_name
actions:
- action: input_text.set_value
target:
entity_id: input_text.yandex_station_target_id
data:
value: "{% if trigger.to_state.state == 'Детская' %}\n media_player.yandex_station_lite_detskaia\n\
{% elif trigger.to_state.state == 'Гостиная' %}\n media_player.yandex_station_mini2_gostinaia\n\
{% elif trigger.to_state.state == 'Спальня' %}\n media_player.yandex_station_mini2_spalnia\n\
{% elif trigger.to_state.state == 'Прихожая' %}\n media_player.yandex_station_lite_prikhozhaya\n\
{% endif %}\n"
- alias: 'Auto Reboot: Reset Automatic Reboot Counter'
id: 950840e8-8ef1-4984-8996-6ddee1f56cb7
triggers:
- trigger: state
entity_id: sensor.ha_uptime
to: '10'
conditions:
condition: template
value_template: '{{ (states(''counter.auto_reboot'') | int) > 0 }}'
actions:
- action: counter.set_value
target:
entity_id: counter.auto_reboot
data:
value: '0'
- alias: 'Auto Reboot: Telegram Control - Cancel Auto Reboot'
id: 5524cadd-7b96-41f8-b489-90782e17af80
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /cancel_auto_reboot
actions:
- action: script.turn_off
target:
entity_id: script.auto_reboot_by_errors_after_boot
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: Команда отправлена
- action: telegram_bot.edit_message
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
title: '*Внимание*'
message: Автоматическая перезагрузка Home Assistant *отменена*
- alias: Forgotten car key - Alex
id: abdaa9e1-cfbc-4c00-b22c-db82f01cd214
triggers:
- trigger: state
entity_id: binary_sensor.amazfit_gtr_4_presence
from: 'on'
to: 'off'
conditions:
- condition: state
entity_id: binary_sensor.holy_iot_white_1_presence
state: 'on'
- condition: state
entity_id: binary_sensor.holy_iot_black_1_presence
state: 'off'
actions:
- wait_template: '{{ is_state(''binary_sensor.holy_iot_white_1_presence'', ''off'')
}}'
timeout: 00:00:30
- if:
- '{{ not wait.completed }}'
then:
- parallel:
- action: telegram_bot.send_message
data:
target: secret tlg_stall_id
parse_mode: html
title: Внимание
message: Возможно, ты забыл ключ от машины
- action: notify.mobile_app_kb2003
data:
title: Ключ от машины
message: Возможно, ты забыл ключ от машины...
data:
ttl: 0
priority: high
channel: alarm_stream
importance: max
color: red
clickAction: entityId:binary_sensor.holy_iot_white_1_presence
- alias: Forgotten school pass reminder - Egor
id: 0a72e0b9-d7f2-41b9-90b3-5d1a601de887
triggers:
- trigger: state
entity_id: binary_sensor.0x158d00031c790f_contact
from: 'on'
to: 'off'
conditions:
- condition: time
after: 07:30:00
before: 08:30:00
- condition: state
entity_id: binary_sensor.workday_sensor
state: 'on'
- condition: state
entity_id: calendar.semia_alexander_borisov_school_vacation_egor
state: 'off'
- condition: state
entity_id: binary_sensor.holy_iot_green_1_presence
state: 'on'
actions:
- wait_template: '{{ is_state(''binary_sensor.holy_iot_green_1_presence'', ''off'')
}}'
timeout: 00:00:30
- if:
- '{{ not wait.completed }}'
then:
- parallel:
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
parse_mode: html
title: Внимание
message: Возможно, Егор забыл пропуск в школу...
- action: notify.mobile_app_kb2003
data:
title: Пропуск в школу
message: Возможно, Егор забыл пропуск в школу...
data:
ttl: 0
priority: high
channel: alarm_stream
importance: max
color: red
clickAction: entityId:binary_sensor.holy_iot_green_1_presence
- action: media_player.play_media
target:
entity_id: media_player.yandex_station_lite_prikhozhaya
data:
media_content_id: Внимание, возможно, Егор забыл пропуск в школу
media_content_type: text
extra:
volume_level: 0.7
- alias: Catch Possible Frigate FFmpeg Errors
id: ad6c6761-94ba-4edb-b744-b844c5f0d2d6
triggers:
- trigger: state
entity_id: binary_sensor.frigate_reolinkcam_02_ffmpeg_problem
from: 'off'
to: 'on'
actions:
- parallel:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
title: '*Frigate Warning*'
message: 'Возможна проблема с камерой Reolink 02,
будет выполнена попытка перезагрузки Frigate.
'
- action: shell_command.restart_frigate_srv01
- alias: Движение в детской
id: 6166ef07-c478-44e3-a226-24d7737d6646
initial_state: false
triggers:
trigger: state
entity_id: binary_sensor.0x158d00044cea8e_motion
from: 'off'
to: 'on'
actions:
- action: notify.telegram_group_flat_1
data:
message: 'В *Детской* обнаружено движение:'
- action: notify.telegram_group_flat_1
data:
message: Camera Snapshot 1
data:
photo:
- url: secret dafangcam_03_snapshot_url
- delay:
seconds: 1
- action: notify.telegram_group_flat_1
data:
message: Camera Snapshot 2
data:
photo:
- url: secret dafangcam_03_snapshot_url
- delay:
seconds: 1
- action: notify.telegram_group_flat_1
data:
message: Camera Snapshot 3
data:
photo:
- url: secret dafangcam_03_snapshot_url
- alias: Вкл контроль движения в детской
id: f46ce78b-11b1-42e9-b217-34ed6eabb7bb
triggers:
trigger: time
at: '23:30:00'
actions:
- action: automation.turn_on
target:
entity_id: automation.dvizhenie_v_detskoi
- alias: Выкл контроль движения в детской
id: 0ffb0c86-cd64-4990-9571-da1799709488
triggers:
trigger: time
at: 07:00:00
actions:
- action: automation.turn_off
target:
entity_id: automation.dvizhenie_v_detskoi
- alias: Вход в квартиру
id: 47a5b56e-5c41-4ae6-a3c2-25984c67b1b5
triggers:
trigger: state
entity_id: binary_sensor.0x158d00031c790f_contact
from: 'off'
to: 'on'
conditions:
- condition: state
entity_id: binary_sensor.0x158d000309920a_motion
state: 'off'
actions:
- delay:
seconds: 3
- action: notify.telegram_group_flat_1
data:
message: Camera Snapshot 1
data:
photo:
- url: secret dafangcam_02_snapshot_url
- delay:
seconds: 1
- action: notify.telegram_group_flat_1
data:
message: Camera Snapshot 2
data:
photo:
- url: secret dafangcam_02_snapshot_url
- delay:
seconds: 2
- action: notify.telegram_group_flat_1
data:
message: Camera Snapshot 3
data:
photo:
- url: secret dafangcam_02_snapshot_url
- delay:
seconds: 3
- action: notify.telegram_group_flat_1
data:
message: Camera Snapshot 4
data:
photo:
- url: secret dafangcam_02_snapshot_url
- alias: DafangCam-02 Turn Off Night Mode by Light
id: ff6813b7-a4a7-4682-bacb-c28290e43f88
triggers:
trigger: state
entity_id: light.sonoff_1000f2f14a
to: 'on'
actions:
- action: switch.turn_off
target:
entity_id: switch.dafangcam02_night_mode
- action: switch.turn_on
target:
entity_id: switch.dafangcam02_ir_filter
- action: switch.turn_off
target:
entity_id: switch.dafangcam02_ir_led
- alias: Staircase - Person detected
id: 56d572c7-3750-4988-8294-aa241a4f4b31
triggers:
- trigger: state
entity_id: binary_sensor.reolinkcam_01_person_occupancy
from: 'off'
to: 'on'
actions:
- parallel:
- sequence:
- delay:
seconds: 1
- action: telegram_bot.send_message
data:
target: secret tlg_group_staircase
message: '{{ now().strftime(''%d.%m.%Y, %H:%M:%S'') }}
Обнаружен человек на лестничной клетке:
'
- action: telegram_bot.send_photo
data:
target: secret tlg_group_staircase
url: secret reolinkcam_01_snapshot_url
verify_ssl: false
- sequence:
- action: telegram_bot.send_video
data:
target: secret tlg_group_staircase
url: secret go2rtc_reolinkcam_01_mp4_7s
- alias: Staircase - Send recorded video
id: 692afba6-c94d-477f-9ac4-d064643898ce
triggers:
trigger: event
event_type: folder_watcher
event_data:
event_type: deleted
file: staircase_movement.mp4.tmp
actions:
- action: telegram_bot.send_video
data:
target: secret tlg_group_staircase
file: /config/video/staircase_movement.mp4
caption: secret look_at_cam_reolinkcam_01
timeout: 180
- alias: Staircase - Motion detected - Frigate
id: 1550b036-824f-47d8-9dcf-674b475c5060
mode: single
max_exceeded: silent
triggers:
- trigger: mqtt
topic: frigate_srv01/events
payload: reolinkcam_01
value_template: '{{ value_json[''after''][''camera''] }}'
variables:
id: '{{ trigger.payload_json[''after''][''id''] }}'
camera: '{{ trigger.payload_json[''after''][''camera''] }}'
target_chat: secret tlg_group_staircase
type: '{{ trigger.payload_json[''type''] }}'
base_url: secret external_url
conditions:
- '{{ type = ''end'' }}'
actions:
- action: telegram_bot.send_message
data:
target: '{{ target_chat }}'
message: '{{ now().strftime(''%d.%m.%Y, %H:%M:%S'') }}
Обнаружено движение на лестничной клетке,
(ID: {{ id }}):
'
- action: telegram_bot.send_photo
data:
target: '{{ target_chat }}'
url: '{{base_url}}/api/frigate/notifications/{{id}}/snapshot.jpg'
- repeat:
sequence:
- wait_for_trigger:
- trigger: mqtt
topic: frigate_srv01/events
payload: '{{ id }}'
value_template: '{{ value_json[''after''][''id''] }}'
timeout:
minutes: 2
continue_on_timeout: false
- condition: template
value_template: '{{ wait.trigger.payload_json[''type''] == ''end'' }}'
- action: telegram_bot.send_video
data:
target: '{{ target_chat }}'
url: '{{base_url}}/api/frigate/notifications/{{id}}/{{camera}}/clip.mp4'
until: '{{ wait.trigger.payload_json[''type''] == ''end'' }}'
- alias: Homecoming Greeting
id: 8431232f-319a-4184-94e9-bc070403eec4
mode: queued
max: 5
triggers:
- trigger: state
entity_id: sensor.double_take_alexander_b
to: dafangcam_02
id: alex
- trigger: state
entity_id: sensor.double_take_irina_b
to: dafangcam_02
id: irina
conditions:
- condition: template
value_template: '{{ (as_timestamp(now()) - as_timestamp(as_local(states[''binary_sensor.0x158d00031c790f_contact''].last_changed)))
< 90 }}'
actions:
- choose:
- conditions:
- '{{ trigger.id == ''alex'' }}'
- '{{ is_state(''person.alexander'', ''home'') }}'
- '{{ (as_timestamp(now()) - as_timestamp(as_local(states.person.alexander.last_changed)))
< 600 }}'
sequence:
- action: script.homecoming_greeting
data:
pers_name: Александр
match_filename: '{{ trigger.to_state.attributes.match.filename }}'
- conditions:
- '{{ trigger.id == ''irina'' }}'
- '{{ is_state(''person.irina'', ''home'') }}'
- '{{ (as_timestamp(now()) - as_timestamp(as_local(states.person.irina.last_changed)))
< 600 }}'
sequence:
- action: script.homecoming_greeting
data:
pers_name: Ирина
match_filename: '{{ trigger.to_state.attributes.match.filename }}'
- alias: Country House CCTV - Toggle Camera
id: 97f7f60b-61c2-482b-894a-c12704418075
triggers:
- trigger: state
entity_id: binary_sensor.coutry_house_presence
actions:
choose:
- alias: Presence Sensor To On
conditions: '{{ trigger.to_state.state == ''on'' }}'
sequence:
- action: switch.turn_off
target:
entity_id: switch.frigate_srv01_reolinkcam_02
- alias: Presence Sensor To Off
conditions: '{{ trigger.to_state.state == ''off'' }}'
sequence:
- action: switch.turn_on
target:
entity_id: switch.frigate_srv01_reolinkcam_02
- alias: Country House CCTV - Person detected
id: a0d9386b-ecf4-46f1-92d8-6ad1a777d1d9
triggers:
- trigger: state
entity_id: binary_sensor.reolinkcam_02_person_occupancy
from: 'off'
to: 'on'
conditions:
- condition: state
entity_id: binary_sensor.coutry_house_presence
state: 'off'
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_country_house
message: '{{ now().strftime(''%d.%m.%Y, %H:%M:%S'') }}
На даче обнаружен человек:
'
- action: telegram_bot.send_photo
data:
target: secret tlg_group_country_house
url: secret reolinkcam_02_snapshot_url
caption: secret look_at_cam_reolinkcam_02
timeout: 60
- alias: CH Set current cost per kWh
id: 28450e89-7fdf-459d-bcbd-9e3ea9377de7
triggers:
- trigger: state
entity_id: sensor.country_house_enegry_cost_mes_t1
not_to:
- unavailable
- unknown
not_from:
- unavailable
- unknown
conditions:
- '{{ trigger.to_state.state | is_number() }}'
actions:
- action: input_number.set_value
target:
entity_id: input_number.country_house_enegry_cost_current
data:
value: '{{ trigger.to_state.state | float(0) }}'
- alias: CH Set Main Energy Meter values for predict
id: 3570493e-c074-4d88-b8ce-a196cb1a60a6
triggers:
- trigger: state
entity_id:
- input_number.country_house_enegry_meter_value
not_to:
- unavailable
- unknown
not_from:
- unavailable
- unknown
actions:
- action: input_number.set_value
target:
entity_id: input_number.country_house_enegry_meter_predicted_value
data:
value: '{{ trigger.to_state.state | float(0) }}'
- alias: CH Predict energy meter readings
id: 36df2266-8486-42de-b42d-d7b956c24e40
triggers:
- trigger: time
at: '23:59:55'
actions:
- action: input_number.set_value
target:
entity_id: input_number.country_house_enegry_meter_predicted_value
data:
value: '{{ ((states(''input_number.country_house_enegry_meter_predicted_value'')
| float(0)) + (states(''sensor.rch_ch_main_energy_daily_total'') | float(0)))
| round(2) }}'
- alias: CH Push Energy Meter reading
id: d20af113-a06c-4eec-a1a0-0a8a4f8f6fa9
triggers:
- trigger: state
entity_id:
- sensor.ch_energy_meter_value_saved_for_transfer
not_to:
- unavailable
- unknown
not_from:
- unavailable
- unknown
conditions:
- '{{ (now().strftime(''%d'') | int(0)) == (states(''input_number.country_house_enegry_meter_value_transfer_day'')
| int(0)) }}'
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_country_house
title: '*Электроэнергия:*'
message: 'Зафиксировано новое значение кВт⋅ч для передачи в МЭС.
Предыдущее: {{ trigger.from_state.state }}
Текущее: {{ trigger.to_state.state }}
Расход: {{ (trigger.to_state.state | int(0)) - (trigger.from_state.state |
int(0)) }} кВт⋅ч
Примерная сумма счета: {{ (((trigger.to_state.state | float(0)) - (trigger.from_state.state
| float(0))) * (states(''input_number.country_house_enegry_cost_current'')
| float(0))) | round(1) }} руб.
'
- action: script.turn_on
target:
entity_id: script.ch_push_energy_readings_to_mes
- alias: CH Energy Meter readings accepted notification
id: 99ae89c3-a865-4c3b-841c-729bbbc4b447
triggers:
- trigger: state
entity_id:
- binary_sensor.mes_55384_014_37_meter_44259893_readings_accepted
to: 'on'
not_from:
- unavailable
- unknown
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_country_house
title: '*Электроэнергия:*'
message: Переданные показания учтены в МЭС ({{ states('sensor.mes_55384_014_37_meter_44259893_zone_t1_period_indication')
}} кВт⋅ч).
- alias: Дача Водяной Насос - Telegram Control - Включение
id: c4ff5d52-df3b-4e02-a8ef-f4a11323dcb4
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /water_pump_on
actions:
- action: switch.turn_on
target:
entity_id: switch.rch_sonoff_pow_r3_02
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: Команда отправлена
- action: telegram_bot.edit_replymarkup
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
inline_keyboard: []
- alias: Wait for switch.rch_sonoff_pow_r3_02
wait_for_trigger:
- trigger: state
entity_id: switch.rch_sonoff_pow_r3_02
from: 'off'
to: 'on'
timeout: 00:00:10
continue_on_timeout: false
- action: telegram_bot.send_message
data:
target: '{{ trigger.event.data.chat_id }}'
message: Насос включен.
- alias: Дача - Telegram Control - Turn On Away Mode
id: 86da4969-92fa-49c9-aba3-23ab804e7194
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /ch_turn_on_away_mode
actions:
- action: scene.turn_on
target:
entity_id: scene.rch_ch_away
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: Команда отправлена
- action: telegram_bot.edit_replymarkup
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
inline_keyboard: []
- action: telegram_bot.send_message
data:
target: secret tlg_group_country_house
message: Включен Away Mode
- alias: Central Heating State Notification
id: a50dc6a0-b2d1-45d9-bab8-7fc62e43fb05
mode: queued
max: 10
triggers:
- trigger: state
entity_id: binary_sensor.central_heating_nursery
id: nursery
not_to:
- unavailable
- unknown
not_from:
- unavailable
- unknown
- trigger: state
entity_id: binary_sensor.central_heating_livingroom
id: livingroom
not_to:
- unavailable
- unknown
not_from:
- unavailable
- unknown
- trigger: state
entity_id: binary_sensor.central_heating_kitchen
id: kitchen
not_to:
- unavailable
- unknown
not_from:
- unavailable
- unknown
- trigger: state
entity_id: binary_sensor.central_heating_bedroom
id: bedroom
not_to:
- unavailable
- unknown
not_from:
- unavailable
- unknown
conditions: '{{ states(''sensor.ha_uptime'') = ''0'' }}'
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
title: '*Внимание*'
message: '{%- if trigger.id == "nursery" %}{% set room = "детской" %}{% set
temp = states(''sensor.lumi_lumi_weather_824e9807_temperature'') %}
{%- elif trigger.id == "livingroom" %}{% set room = "гостиной" %}{% set temp
= states(''sensor.lumi_lumi_weather_bf387507_temperature'') %}
{%- elif trigger.id == "kitchen" %}{% set room = "кухне" %}{% set temp = states(''sensor.lumi_lumi_weather_4dad5507_temperature'')
%}
{%- elif trigger.id == "bedroom" %}{% set room = "спальне" %}{% set temp =
states(''sensor.lumi_lumi_weather_temperature'') %}
{%- endif %}
Отопление в {{ room }} {% if trigger.to_state.state == ''on'' %}*включено*{%else%}*выключено*{%endif%}.
Температура в районе трубы отопления {{ temp }}°C.
'
- alias: Thermo alert [Nursery]
id: bb3a7df3-3e20-4ebe-8b49-bc9ba69ad2b6
triggers:
- trigger: template
value_template: '{{ (states(''sensor.temperature_in_nursery'') | float(0)) < 22
}}'
for:
minutes: 5
- trigger: template
value_template: '{{ (states(''sensor.temperature_in_nursery'') | float(0)) > 25
}}'
for:
minutes: 5
actions:
- action: notify.telegram_group_flat_1
data:
message: 'В *Детской* {% if (trigger.to_state.state | float(0)) > 23 -%} жарко,
{% elif (trigger.to_state.state | float(0)) < 23 -%} холодно, {% endif -%}
температура: *{{ trigger.to_state.state }}°C*'
- alias: Thermo alert [Living Room]
id: 0e135e8d-3ad5-40cb-9d8f-9ab3df6b91bd
triggers:
- trigger: template
value_template: '{{ (states(''sensor.temperature_in_livingroom'') | float(0))
< 22 }}'
for:
minutes: 5
- trigger: template
value_template: '{{ (states(''sensor.temperature_in_livingroom'') | float(0))
> 25 }}'
for:
minutes: 5
actions:
- action: notify.telegram_group_flat_1
data:
message: 'В *Гостиной* {% if (trigger.to_state.state | float(0)) > 23 -%} жарко,
{% elif (trigger.to_state.state | float(0)) < 23 -%} холодно, {% endif -%}
температура: *{{ trigger.to_state.state }}°C*'
- alias: Thermo alert [Bedroom]
id: 524b5b92-0f5d-4429-88d2-9903ec325389
triggers:
- trigger: template
value_template: '{{ (states(''sensor.temperature_in_bedroom'') | float(0)) < 21
}}'
for:
minutes: 5
- trigger: template
value_template: '{{ (states(''sensor.temperature_in_bedroom'') | float(0)) > 24.5
}}'
for:
minutes: 5
actions:
- action: notify.telegram_group_flat_1
data:
message: 'В *Спальне* {% if (trigger.to_state.state | float(0)) > 23 -%} жарко,
{% elif (trigger.to_state.state | float(0)) < 23 -%} холодно, {% endif -%}
температура: *{{ trigger.to_state.state }}°C*'
- alias: AC - long running [8h]
id: 09f64418-db04-4327-a714-57d9ea39d1ed
triggers:
trigger: state
entity_id:
- binary_sensor.0x158d00039cf974_contact
- binary_sensor.0x158d0003d54725_contact
- binary_sensor.0x158d0004073b67_contact
from: 'off'
to: 'on'
for:
hours: 8
actions:
action: notify.telegram_group_flat_1
data:
message: 'Внимание, *{{ trigger.to_state.attributes.friendly_name.replace(''Геркон
'','''').replace('' on_off'','''') }}* работает больше 8 часов.
'
- alias: AC - long running [16h]
id: 970eef7a-4b66-4186-88ff-a0542c13c10a
triggers:
trigger: state
entity_id:
- binary_sensor.0x158d00039cf974_contact
- binary_sensor.0x158d0003d54725_contact
- binary_sensor.0x158d0004073b67_contact
from: 'off'
to: 'on'
for:
hours: 16
actions:
action: notify.telegram_group_flat_1
data:
message: 'Внимание, *{{ trigger.to_state.attributes.friendly_name.replace(''Геркон
'','''').replace('' on_off'','''') }}* работает больше *16* часов.
'
- alias: AC - long running [24h]
id: 106513d8-941c-4bfe-8f42-1fe9c95a77de
triggers:
trigger: state
entity_id:
- binary_sensor.0x158d00039cf974_contact
- binary_sensor.0x158d0003d54725_contact
- binary_sensor.0x158d0004073b67_contact
from: 'off'
to: 'on'
for:
hours: 24
actions:
action: notify.telegram_group_flat_1
data:
message: 'Внимание, *{{ trigger.to_state.attributes.friendly_name.replace(''Геркон
'','''').replace('' on_off'','''') }}* работает больше *24* часов.
'
- alias: Carbon dioxide alert
id: 5c2a3b8f-9bc7-4c73-a0b7-62f53e2d8d4a
mode: queued
max: 10
triggers:
- trigger: template
value_template: '{{ (states(''sensor.co2_in_nursery'') | int(0)) >= 1000 }}'
for:
minutes: 10
- trigger: template
value_template: '{{ (states(''sensor.co2_in_livingroom'') | int(0)) >= 1000 }}'
for:
minutes: 10
- trigger: template
value_template: '{{ (states(''sensor.co2_in_bedroom'') | int(0)) >= 1000 }}'
for:
minutes: 10
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
title: '*Внимание*'
message: "Повышенное содержание углекислого газа в \n{%- if 'nursery' in trigger.entity_id\
\ %} *Детской*\n{%- elif 'livingroom' in trigger.entity_id %} *Гостиной*\n\
{%- elif 'bedroom' in trigger.entity_id %} *Спальне*\n{%- endif %} (*{{ states(trigger.entity_id)\
\ }}* ppm).\nНеобходимо проветрить комнату."
- alias: Domofon - Opened by Button Notification
id: cb5e25c1-dcb7-4b75-a6c4-6b12eb84f86b
triggers:
trigger: state
entity_id: binary_sensor.domofon_button
to: 'on'
conditions:
- condition: state
entity_id: binary_sensor.domofon_incoming_call
state: 'on'
actions:
action: notify.telegram_group_flat_1
data:
message: '_Домофон_: открыт кнопкой'
- alias: Domofon - Incoming Call Notification
id: 741a9858-1687-4b2d-8afd-73373e8cc8ba
triggers:
trigger: state
entity_id: binary_sensor.domofon_incoming_call
to: 'on'
actions:
- parallel:
- action: notify.telegram_group_flat_1
data:
message: '_Домофон_: входящий звонок... {% if is_state(''switch.domofon_automatically_open'',
''on'') or is_state(''switch.domofon_automatically_open_once'', ''on'')
%}(*откроется автоматически*){% endif %}'
data:
inline_keyboard:
- '{{ ''-'' if is_state(''switch.domofon_automatically_open'', ''on'') or
is_state(''switch.domofon_automatically_open_once'', ''on'') else ''Открыть:/domofon_open,
Отклонить:/domofon_reject'' }}'
- sequence:
- condition: '{{ is_state(''switch.domofon_automatically_open_once'', ''off'')
}}'
- action: script.domofon_alice_notify
- alias: Domofon - Alice Intent control
triggers:
- trigger: event
event_type: yandex_intent
event_data:
text: Открой домофон
id: open
actions:
choose:
- alias: Open Door
conditions:
- condition: trigger
id: open
sequence:
- action: esphome.domofon_accept_call
- alias: Domofon - Telegram Control - domofon_open
id: 99d5c580-c382-48b3-bd2d-f6eb00b62c31
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /domofon_open
actions:
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: '{{ ''Открываю...'' if is_state(''binary_sensor.domofon_incoming_call'',
''on'') else ''Нет входящего звонка'' }}'
- action: esphome.domofon_accept_call
- action: telegram_bot.edit_message
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
message: '_Домофон_: входящий звонок...
{{ ''Домофон *открыт*'' if is_state(''binary_sensor.domofon_incoming_call'',
''on'') else '''' }}
'
- alias: Domofon - Telegram Control - domofon_reject
id: a50fb75b-0083-4866-8496-bdd013332a88
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /domofon_reject
actions:
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: '{{ ''Отклоняю...'' if is_state(''binary_sensor.domofon_incoming_call'',
''on'') else ''Нет входящего звонка'' }}'
- action: esphome.domofon_reject_call
- action: telegram_bot.edit_message
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
message: '_Домофон_: входящий звонок...
{{ ''Звонок *сброшен*'' if is_state(''binary_sensor.domofon_incoming_call'',
''on'') else '''' }}
'
- alias: Domofon - Mute and UnMute by Time
id: 97a74c5f-6a9f-4af6-9f8e-2a7fcd0a5070
triggers:
- platform: time
at: '21:00:00'
- platform: time
at: 08:00:00
actions:
- action: "{% if trigger.now.hour == 21 -%}\n switch.turn_on\n{% elif trigger.now.hour\
\ == 8 -%}\n switch.turn_off\n{% endif %}"
data:
entity_id: switch.domofon_mute_sound
- alias: Domofon - ESP Board Lost Connection
id: 6cac01e7-945c-4f37-8b2d-d75e03107d76
triggers:
- trigger: state
entity_id: binary_sensor.domofon_status
not_to:
- unavailable
- unknown
not_from:
- unavailable
- unknown
conditions:
- condition: template
value_template: '{{ states(''input_boolean.ha_shutdown'') == ''off'' }}'
- condition: template
value_template: '{{ states(''sensor.ha_uptime'') > ''1'' }}'
actions:
- action: notify.telegram_group_system
data:
message: "*Внимание*\n{% if trigger.to_state.state == 'off' -%}\n _Домофон_:\
\ потеряно подключение к HA.\n{% elif trigger.to_state.state == 'on' -%}\n\
\ _Домофон_: восстановлено подключение к HA\n{% endif %}\n"
- alias: Domofon - Open Once for Couriers
id: c916925d-cd33-4f30-882b-4049e52acf12
triggers:
- trigger: state
entity_id:
- sensor.kb2003_last_notification
- sensor.2109119dg_last_notification
condition:
- or:
- condition: template
value_template: '{{ trigger.to_state.state | regex_search(''Курьер .* будет
у вас в течение .*'') }}'
- condition: template
value_template: '{{ trigger.to_state.state | regex_search(''В течение .* курьер
.* будет у вас'') }}'
- condition: template
value_template: '{{ trigger.to_state.state | regex_search(''Курьер в пути. .*'')
}}'
- condition: template
value_template: '{{ trigger.to_state.state | regex_search(''Курьер забрал заказ
и везёт его к вам'') }}'
- condition: template
value_template: '{{ trigger.to_state.state | regex_search(''Везёт заказ из Маркет
Express'') }}'
- condition: template
value_template: '{{ trigger.to_state.state | regex_search(''Уже спешит к вам'')
}}'
- condition: template
value_template: '{{ trigger.to_state.state | regex_search(''Будет через *.'')
}}'
- condition: template
value_template: '{{ trigger.to_state.state | regex_search(''Скоро заказ будет
у вас'') }}'
- condition: template
value_template: '{{ trigger.to_state.state | regex_search(''И уже спешит доставить
его вам'') }}'
actions:
- action: switch.turn_on
target:
entity_id: switch.domofon_automatically_open_once
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
message: '_Домофон_: Курьер уже в пути, домофон откроется автоматически.'
inline_keyboard:
- Отключить звук:/domofon_mute_once
- alias: Domofon - Telegram Control - domofon_mute_once
id: 97093f78-f059-4918-b451-ca50f698a49d
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /domofon_mute_once
actions:
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: Команда отправлена
- action: switch.turn_on
target:
entity_id: switch.domofon_mute_sound_once
- action: telegram_bot.edit_message
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
message: '_Домофон_: Курьер уже в пути, домофон откроется автоматически.
Звонок домофона *отключен* (однократно).
'
- alias: Domofon - Open Once at Enter to Home Zone
id: 40d4a1f6-576c-438a-b20f-ba161d9bd3ee
max_exceeded: silent
triggers:
- trigger: zone
entity_id:
- person.alexander
- person.irina
zone: zone.domofon
event: enter
actions:
- action: switch.turn_on
target:
entity_id: switch.domofon_automatically_open_once
- action: switch.turn_on
target:
entity_id: switch.domofon_mute_sound_once
- action: notify.telegram_group_flat_1
data:
message: '_Домофон_: включен режим однократного авто-открытия.'
- wait_for_trigger:
- trigger: state
entity_id: binary_sensor.0x158d00031c790f_contact
to: 'on'
timeout: 00:10:00
- choose:
- conditions: '{{ is_state(''switch.domofon_automatically_open_once'', ''on'')
}}'
sequence:
- action: switch.turn_off
target:
entity_id: switch.domofon_automatically_open_once
- action: switch.turn_off
target:
entity_id: switch.domofon_mute_sound_once
- action: notify.telegram_group_flat_1
data:
message: '_Домофон_: отключен режим однократного авто-открытия.'
- alias: Doorbell Ringing
id: 420fe43c-f00d-46b6-a787-032b0c58bd47
mode: single
max_exceeded: silent
triggers:
- trigger: state
entity_id: binary_sensor.doorbell_ringing
to: 'on'
actions:
- choose:
- alias: Mute On
conditions: '{{ is_state(''input_boolean.doorbell_mute'', ''on'') }}'
sequence:
- action: switch.turn_on
target:
entity_id: switch.galaxy_tab_a_8_0_2019_screen
- action: button.press
target:
entity_id: button.galaxy_tab_a_8_0_2019_load_start_url
- action: telegram_bot.send_photo
data:
target: secret tlg_group_flat_1
url: secret reolinkcam_01_snapshot_url
verify_ssl: false
caption: '*Внимание*, в дверь звонят _(звонок отключен)_'
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
message: secret look_at_cam_reolinkcam_01
- action: media_player.play_media
target:
entity_id: media_player.yandex_station_mini2_gostinaia
data:
media_content_id: Внимание, в дверь звонят
media_content_type: text
extra:
volume_level: '{% set time = now().hour %}{% if time >= 21 or time < 9
%}0.5{% else %}0.7{% endif %}'
- alias: Mute Off
conditions: "{{\n is_state('input_boolean.doorbell_mute', 'off') and\n is_state('switch.sonoff_mini_r2_01_doorbell','off')\n\
}}\n"
sequence:
- action: switch.turn_on
target:
entity_id: switch.sonoff_mini_r2_01_doorbell
- action: switch.turn_on
target:
entity_id: switch.galaxy_tab_a_8_0_2019_screen
- action: button.press
target:
entity_id: button.galaxy_tab_a_8_0_2019_load_start_url
- action: telegram_bot.send_photo
data:
target: secret tlg_group_flat_1
url: secret reolinkcam_01_snapshot_url
verify_ssl: false
caption: '*Внимание*, в дверь звонят'
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
message: secret look_at_cam_reolinkcam_01
- alias: Doorbell - Mute and UnMute by Time
id: 325f3e23-39b1-47f5-a415-e5da5e4845e3
triggers:
- trigger: time
at: '21:00:00'
id: turn_on
- trigger: time
at: 08:00:00
id: turn_off
actions:
choose:
- alias: Mute On
conditions:
- condition: trigger
id: turn_on
sequence:
- action: input_boolean.turn_on
target:
entity_id: input_boolean.doorbell_mute
- alias: Mute Off
conditions:
- condition: trigger
id: turn_off
sequence:
- action: input_boolean.turn_off
target:
entity_id: input_boolean.doorbell_mute
- alias: Energy - Apartment - Set Start Time of Tariffs
id: 7dc9e636-2951-407e-b50f-31d6b0b22961
triggers:
- trigger: time_pattern
hours: /1
minutes: '15'
conditions: '{{ not states(''sensor.mes_07762_153_47_account'') in (''unavailable'')
}}'
actions:
- action: input_datetime.set_datetime
target:
entity_id: input_datetime.apartment_enegry_start_time_peak_1
data:
time: '{% set time = (state_attr(''sensor.mes_07762_153_47_account'', ''zone_t1_description'')
| regex_findall_index(''^(\d+-\d+)'')).replace(''-'','':'') -%} {% if (time.split('':'')[0]
| int) < 10 %}0{{ time }}:00{% else %}{{ time }}:00{% endif %}
'
- action: input_datetime.set_datetime
target:
entity_id: input_datetime.apartment_enegry_start_time_peak_2
data:
time: '{% set time = (state_attr(''sensor.mes_07762_153_47_account'', ''zone_t1_description'')
| regex_findall_index('',.(\d+-\d+)'')).replace(''-'','':'') -%} {% if (time.split('':'')[0]
| int) < 10 -%}0{{ time }}:00{%- else -%}{{ time }}:00{% endif %}
'
- action: input_datetime.set_datetime
target:
entity_id: input_datetime.apartment_enegry_start_time_halfpeak_1
data:
time: '{% set time = (state_attr(''sensor.mes_07762_153_47_account'', ''zone_t3_description'')
| regex_findall_index(''^(\d+-\d+)'')).replace(''-'','':'') -%} {% if (time.split('':'')[0]
| int) < 10 %}0{{ time }}:00{% else %}{{ time }}:00{% endif %}
'
- action: input_datetime.set_datetime
target:
entity_id: input_datetime.apartment_enegry_start_time_halfpeak_2
data:
time: '{% set time = (state_attr(''sensor.mes_07762_153_47_account'', ''zone_t3_description'')
| regex_findall_index('',.(\d+-\d+)'')).replace(''-'','':'') -%} {% if (time.split('':'')[0]
| int) < 10 -%}0{{ time }}:00{%- else -%}{{ time }}:00{% endif %}
'
- action: input_datetime.set_datetime
target:
entity_id: input_datetime.apartment_enegry_start_time_night
data:
time: '{% set time = (state_attr(''sensor.mes_07762_153_47_account'', ''zone_t2_description'')
| regex_findall_index(''^(\d+-\d+)'')).replace(''-'','':'') -%} {% if (time.split('':'')[0]
| int) < 10 %}0{{ time }}:00{% else %}{{ time }}:00{% endif %}
'
- alias: Energy - Apartment - Set Current Tariff
id: 0266f51b-5a79-4c13-b925-f50952cc49ed
triggers:
- trigger: time
at:
- input_datetime.apartment_enegry_start_time_peak_1
- input_datetime.apartment_enegry_start_time_peak_2
id: peak
- trigger: time
at:
- input_datetime.apartment_enegry_start_time_halfpeak_1
- input_datetime.apartment_enegry_start_time_halfpeak_2
id: halfpeak
- trigger: time
at: input_datetime.apartment_enegry_start_time_night
id: night
actions:
choose:
- alias: Set Peak Tariff
conditions:
- condition: trigger
id: peak
sequence:
- action: input_number.set_value
target:
entity_id: input_number.apartment_enegry_cost_current
data:
value: '{{ states(''sensor.apartment_enegry_cost_peak'') | float(0) }}'
- action: select.select_option
target:
entity_id: group.all_energy_utility_meters
data:
option: peak
- alias: Set Halfpeak Tariff
conditions:
- condition: trigger
id: halfpeak
sequence:
- action: input_number.set_value
target:
entity_id: input_number.apartment_enegry_cost_current
data:
value: '{{ states(''sensor.apartment_enegry_cost_halfpeak'') | float(0)
}}'
- action: select.select_option
target:
entity_id: group.all_energy_utility_meters
data:
option: halfpeak
- alias: Set Night Tariff
conditions:
- condition: trigger
id: night
sequence:
- action: input_number.set_value
target:
entity_id: input_number.apartment_enegry_cost_current
data:
value: '{{ states(''sensor.apartment_enegry_cost_night'') | float(0) }}'
- action: select.select_option
target:
entity_id: group.all_energy_utility_meters
data:
option: night
- alias: RSS feed notifications
id: 7acc6aec-3319-44e8-bf1c-dc36109f1b89
mode: queued
max: 100
triggers:
trigger: event
event_type: feedreader
actions:
- choose:
- alias: Home Assistant News and Blog Posts
conditions:
condition: template
value_template: '{{ trigger.event.data.link | regex_search(''www.home-assistant.io'')
and (states(''sensor.ha_uptime'') | int) > 1 }}
'
sequence:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
disable_web_page_preview: true
parse_mode: html
title: 'INFO:'
message: 'Новое пост на www.home-assistant.io:
{{ trigger.event.data.title }}
{{ trigger.event.data.link }}
'
- alias: Home Assistant Alerts
conditions:
condition: template
value_template: '{{ trigger.event.data.link | regex_search(''alerts.home-assistant.io'')
}}
'
sequence:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
disable_web_page_preview: true
parse_mode: html
title: Внимание
message: 'Новое сообщение на alerts.home-assistant.io:
{{ trigger.event.data.title }}
{{ trigger.event.data.link }}
'
- alias: MCHS Moscow Alerts
conditions:
condition: template
value_template: '{{ trigger.event.data.link | regex_search(''moscow.mchs.gov.ru'')
}}
'
sequence:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
parse_mode: html
title: Внимание
message: 'Новое оповещение от МЧС (Москва):
{{ trigger.event.data.title }}
{{ trigger.event.data.link }}'
- alias: GitHub HA Repo - Push config
id: 816f1400-5e51-4e5c-bc3a-f07e1e4202dd
mode: queued
max: 5
triggers:
- trigger: state
entity_id: input_button.git_commint_and_push
id: button
- trigger: event
event_type: timer.finished
event_data:
entity_id: timer.git_time_to_push
id: timer_finished
- trigger: state
entity_id: input_boolean.git_autocommit
from: 'off'
to: 'on'
id: enable
- trigger: state
entity_id: sensor.git_number_of_modified_files
not_to:
- unavailable
- unknown
not_from:
- unavailable
- unknown
id: files
actions:
choose:
- conditions: '{{ trigger.id == ''button'' }}'
sequence:
- action: shell_command.git_commint_and_push
- action: homeassistant.update_entity
target:
entity_id: sensor.git_number_of_modified_files
- conditions: '{{ trigger.id == ''enable'' }}'
sequence:
- if:
- '{{ (states(''sensor.git_number_of_modified_files'') | int(0)) > 0 }}'
then:
- action: timer.start
target:
entity_id: timer.git_time_to_push
- conditions: '{{ trigger.id == ''timer_finished'' }}'
sequence:
- if:
- '{{ is_state(''input_boolean.git_autocommit'', ''on'') }}'
then:
- action: shell_command.git_commint_and_push
- action: homeassistant.update_entity
target:
entity_id: sensor.git_number_of_modified_files
else:
- action: timer.start
target:
entity_id: timer.git_time_to_push
- conditions: '{{ trigger.id == ''files'' }}'
sequence:
choose:
- conditions: '{{ (trigger.to_state.state | int(0)) == 0 }}'
sequence:
- action: timer.cancel
target:
entity_id: timer.git_time_to_push
- conditions: '{{ (trigger.to_state.state | int(0)) > (trigger.from_state.state
| int(0)) }}'
sequence:
- action: timer.start
target:
entity_id: timer.git_time_to_push
- alias: GitHub HA Repo - Stars
id: b8a8f7d3-1875-4271-b576-1586f2ab425f
triggers:
- trigger: webhook
webhook_id: secret github_ha_repo_stars_webhook
local_only: false
allowed_methods:
- POST
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
parse_mode: html
disable_web_page_preview: true
title: 'GitHub HA Repo:'
message: 'Star {{ trigger.json.action }}
https://github.com/avbor/HomeAssistantConfig/stargazers'
- alias: Smartmi Humidifier - Заданчивается вода
id: 992f84be-ee32-497c-833f-7ddc8eb574a4
triggers:
trigger: numeric_state
entity_id:
- sensor.smartmi_humidifier_01_detskaia_water_level
- sensor.smartmi_humidifier_02_spalnia_water_level
below: 15
conditions:
condition: template
value_template: '{{ (trigger.to_state.state | int) != 0 }}'
actions:
- action: notify.telegram_group_system
data:
message: '{% if ''_01_'' in trigger.entity_id -%} *Smartmi Humidifier 01* (Детская):
заканчивается вода (осталось *{{ trigger.to_state.state }}*%)! {% elif ''_02_''
in trigger.entity_id -%} *Smartmi Humidifier 02* (Спальня): заканчивается
вода (осталось *{{ trigger.to_state.state }}*%)! {% endif -%}'
- alias: Smartmi Humidifier - Выключение по остатку воды
id: 41f9fd8c-50e9-43d3-8f1a-777705683f72
triggers:
trigger: numeric_state
entity_id:
- sensor.smartmi_humidifier_01_detskaia_water_level
- sensor.smartmi_humidifier_02_spalnia_water_level
below: 10
conditions:
condition: template
value_template: '{{ (trigger.to_state.state | int) != 0 }}'
actions:
- action: humidifier.turn_off
target:
entity_id: '{% if ''_01_'' in trigger.entity_id -%} humidifier.smartmi_humidifier_01_detskaia
{% elif ''_02_'' in trigger.entity_id -%} humidifier.smartmi_humidifier_02_spalnia
{% endif -%}'
- action: notify.telegram_group_system
data:
message: '{% if ''_01_'' in trigger.entity_id -%} *Smartmi Humidifier 01* (Детская):
выключен (остаток воды *{{ trigger.to_state.state }}*%)! {% elif ''_02_''
in trigger.entity_id -%} *Smartmi Humidifier 02* (Спальня): выключен (остаток
воды *{{ trigger.to_state.state }}*%)! {% endif -%}'
- alias: Smartmi Humidifier 01 - Выбор режима
id: dd7a9cd6-0161-4af7-9dce-3359e27dfb7c
triggers:
trigger: state
entity_id: input_select.smartmi_humidifier_01_detskaia_mode
actions:
action: script.set_smartmi_humidifier_mode
data:
humidifier_entity: humidifier.smartmi_humidifier_01_detskaia
humidifier_mode: '{{ trigger.to_state.state }}'
- alias: Smartmi Humidifier 01 - Mode Revers Sync
id: 8d2b93ea-d103-42e7-90bb-8ee4ca5c0648
triggers:
- trigger: state
entity_id: sensor.smartmi_humidifier_01_detskaia_mode
to:
- Auto
- Silent
- Medium
- High
not_from:
- unavailable
- unknown
actions:
- if:
- '{{ states(''sensor.smartmi_humidifier_01_detskaia_mode'') != states(''input_select.smartmi_humidifier_01_detskaia_mode'')
}}'
then:
- action: input_select.select_option
target:
entity_id: input_select.smartmi_humidifier_01_detskaia_mode
data:
option: '{{ states(''sensor.smartmi_humidifier_01_detskaia_mode'') }}'
- alias: Увлажнение детской - Старт [время]
id: cb8d8af5-8a41-4ed8-a1c1-05b4a823fcdd
triggers:
trigger: time
at: '20:00:00'
conditions:
- condition: state
entity_id: humidifier.smartmi_humidifier_01_detskaia
state: 'off'
- condition: numeric_state
entity_id: sensor.humidity_in_nursery
below: input_number.target_humidity_01_detskaia
- condition: numeric_state
entity_id: sensor.smartmi_humidifier_01_detskaia_water_level
above: 25
actions:
action: humidifier.turn_on
target:
entity_id: humidifier.smartmi_humidifier_01_detskaia
- alias: Увлажнение детской - Стоп [время]
id: e2a3cd54-5f73-4e8c-b110-483c2f6be654
triggers:
trigger: time
at: 07:00:00
conditions:
- condition: state
entity_id: humidifier.smartmi_humidifier_01_detskaia
state: 'on'
- condition: state
entity_id: input_boolean.smartmi_humidifier_01_detskaia_autocontrol
state: 'off'
actions:
action: humidifier.turn_off
target:
entity_id: humidifier.smartmi_humidifier_01_detskaia
- alias: Увлажнение детской - Старт [Влажность]
id: c948d3e9-40c8-48f8-a8d8-dba65319d61b
triggers:
trigger: state
entity_id:
- sensor.humidity_in_nursery
- input_number.target_humidity_01_detskaia
- input_boolean.smartmi_humidifier_01_detskaia_autocontrol
conditions:
- condition: state
entity_id: input_boolean.smartmi_humidifier_01_detskaia_autocontrol
state: 'on'
- condition: template
value_template: '{{ (states(''sensor.humidity_in_nursery'') | round(0)) < (states(''input_number.target_humidity_01_detskaia'')
| int) }}
'
- condition: state
entity_id: humidifier.smartmi_humidifier_01_detskaia
state: 'off'
- condition: numeric_state
entity_id: sensor.smartmi_humidifier_01_detskaia_water_level
above: 15
actions:
- action: humidifier.turn_on
target:
entity_id: humidifier.smartmi_humidifier_01_detskaia
- alias: Увлажнение детской - Стоп [Влажность]
id: ce34b5e0-d1d9-45b0-8a66-65eb392383ec
triggers:
trigger: state
entity_id:
- sensor.humidity_in_nursery
- input_number.target_humidity_01_detskaia
- input_boolean.smartmi_humidifier_01_detskaia_autocontrol
conditions:
- condition: state
entity_id: input_boolean.smartmi_humidifier_01_detskaia_autocontrol
state: 'on'
- condition: template
value_template: '{{ (states(''sensor.humidity_in_nursery'') | round(0)) >= (states(''input_number.target_humidity_01_detskaia'')
| int) }}
'
- condition: state
entity_id: humidifier.smartmi_humidifier_01_detskaia
state: 'on'
actions:
- action: humidifier.turn_off
target:
entity_id: humidifier.smartmi_humidifier_01_detskaia
- alias: Smartmi Humidifier 02 - Выбор режима
id: 23a943a3-9594-4392-bdb4-468eccc9a50b
triggers:
trigger: state
entity_id: input_select.smartmi_humidifier_02_spalnia_mode
actions:
action: script.set_smartmi_humidifier_mode
data:
humidifier_entity: humidifier.smartmi_humidifier_02_spalnia
humidifier_mode: '{{ trigger.to_state.state }}'
- alias: Smartmi Humidifier 02 - Mode Revers Sync
id: 501ee548-817e-4210-af88-dcbbd2d4d2de
triggers:
- trigger: state
entity_id: sensor.smartmi_humidifier_02_spalnia_mode
to:
- Auto
- Silent
- Medium
- High
not_from:
- unavailable
- unknown
actions:
- if:
- '{{ states(''sensor.smartmi_humidifier_02_spalnia_mode'') != states(''input_select.smartmi_humidifier_02_spalnia_mode'')
}}'
then:
- action: input_select.select_option
target:
entity_id: input_select.smartmi_humidifier_02_spalnia_mode
data:
option: '{{ states(''sensor.smartmi_humidifier_02_spalnia_mode'') }}'
- alias: Увлажнение спальни - Старт [Влажность]
id: a9f8c4d8-7b10-4128-8411-1aa68a330760
triggers:
trigger: state
entity_id:
- sensor.humidity_in_bedroom
- input_number.target_humidity_02_spalnia
- input_boolean.smartmi_humidifier_02_spalnia_autocontrol
conditions:
- condition: state
entity_id: input_boolean.smartmi_humidifier_02_spalnia_autocontrol
state: 'on'
- condition: template
value_template: '{{ (states(''sensor.humidity_in_bedroom'') | round(0)) < (states(''input_number.target_humidity_02_spalnia'')
| int) }}
'
- condition: state
entity_id: humidifier.smartmi_humidifier_02_spalnia
state: 'off'
- condition: numeric_state
entity_id: sensor.smartmi_humidifier_02_spalnia_water_level
above: 15
actions:
- action: humidifier.turn_on
target:
entity_id: humidifier.smartmi_humidifier_02_spalnia
- alias: Увлажнение спальни - Стоп [Влажность]
id: ec2f9de0-dacb-4a84-b0c9-0b5eb8e2b4f9
triggers:
trigger: state
entity_id:
- sensor.humidity_in_bedroom
- input_number.target_humidity_02_spalnia
- input_boolean.smartmi_humidifier_02_spalnia_autocontrol
conditions:
- condition: state
entity_id: input_boolean.smartmi_humidifier_02_spalnia_autocontrol
state: 'on'
- condition: template
value_template: '{{ (states(''sensor.humidity_in_bedroom'') | round(0)) >= (states(''input_number.target_humidity_02_spalnia'')
| int) }}
'
- condition: state
entity_id: humidifier.smartmi_humidifier_02_spalnia
state: 'on'
actions:
- action: humidifier.turn_off
target:
entity_id: humidifier.smartmi_humidifier_02_spalnia
- alias: Kitchen Covers Control by Light
id: 24f83b60-8392-4278-8725-6d1a33a0a483
triggers:
- trigger: numeric_state
entity_id: sensor.outdoor_illuminance
below: input_number.kitchen_covers_illuminance_threshold
for: 00:10:00
id: dark
- trigger: numeric_state
entity_id: sensor.outdoor_illuminance
above: input_number.kitchen_covers_illuminance_threshold
for: 00:10:00
id: lightly
conditions: '{{ is_state(''input_boolean.kitchen_covers_auto'', ''on'') }}'
actions:
choose:
- alias: Darkens (Close)
conditions:
- condition: trigger
id: dark
sequence:
- condition: '{{ states(''cover.kitchen_covers'') in [''open'', ''opening'']
}}'
- action: cover.close_cover
target:
entity_id: cover.kitchen_covers
- alias: Brightens (Open)
conditions:
- condition: trigger
id: lightly
sequence:
- condition: '{{ states(''cover.kitchen_covers'') in [''closed'', ''closing'']
}}'
- action: cover.open_cover
target:
entity_id: cover.kitchen_covers
- alias: Kitchen Covers Control by IKEA Switch
id: def20597-6652-43e3-836c-6a1e191967d3
mode: queued
max: 5
max_exceeded: silent
triggers:
- trigger: event
event_type: zha_event
event_data:
device_ieee: 50:32:5f:ff:fe:70:d7:69
id: ikea_sw_5
actions:
choose:
- alias: 'command: on or move_with_on_off'
conditions: '{{ trigger.event.data.command in (''on'', ''move_with_on_off'')
}}'
sequence:
- action: cover.open_cover
target:
entity_id: cover.kitchen_covers
- alias: 'command: off or move'
conditions: '{{ trigger.event.data.command in (''off'', ''move'') }}'
sequence:
- action: cover.close_cover
target:
entity_id: cover.kitchen_covers
- alias: 'command: stop'
conditions: '{{ trigger.event.data.command == ''stop'' }}'
sequence:
- action: cover.stop_cover
target:
entity_id: cover.kitchen_covers
- alias: Свет в Ванной
id: 9a24416b-82b6-4fa8-81a7-ea6c71daa727
mode: queued
max: 10
max_exceeded: silent
triggers:
- trigger: state
entity_id: timer.bathroom_presence
to: idle
id: timer_idle
- trigger: state
entity_id: binary_sensor.lumi_lumi_sensor_magnet_on_off
id: magnet
- trigger: state
entity_id: binary_sensor.trust_iaszone
to: 'on'
id: motion_on
- trigger: state
entity_id: binary_sensor.0xa4c138792ba1d268_presence
to: 'on'
id: presence_on
- trigger: event
event_type: zha_event
event_data:
device_ieee: 00:15:8d:00:03:d1:77:62
command: click
id: click
actions:
choose:
- alias: Timer Idle
conditions:
- condition: trigger
id: timer_idle
sequence:
choose:
- alias: Presence On
conditions: '{{ states(''binary_sensor.0xa4c138792ba1d268_presence'') ==
''on'' }}'
sequence:
- action: timer.start
target:
entity_id: timer.bathroom_presence
- alias: Motion On
conditions: '{{ states(''binary_sensor.trust_iaszone'') == ''on'' }}'
sequence:
- action: timer.start
target:
entity_id: timer.bathroom_presence
- alias: Motion Off
conditions: '{{ states(''binary_sensor.trust_iaszone'') == ''off'' }}'
sequence:
choose:
- alias: Motion detected > 5 min ago
conditions: '{{ (as_timestamp(now()) - as_timestamp(states.binary_sensor.trust_iaszone.last_changed))
> 300 }}'
sequence:
- parallel:
- sequence:
- condition: '{{ is_state(''light.sonoff_zbmini_04_on_off'', ''on'')
}}'
- action: light.turn_off
target:
entity_id: light.sonoff_zbmini_04_on_off
- sequence:
- condition: '{{ is_state(''fan.bathroom_extractor'', ''on'') }}'
- condition: '{{ is_state(''binary_sensor.bathroom_high_humidity'',
''off'') }}'
- action: fan.turn_off
target:
entity_id: fan.bathroom_extractor
- alias: Motion detected <= 5 min ago
conditions: '{{ (as_timestamp(now()) - as_timestamp(states.binary_sensor.trust_iaszone.last_changed))
<= 300 }}'
sequence:
- condition: '{{ is_state(''light.sonoff_zbmini_04_on_off'', ''on'')
}}'
- action: light.turn_off
target:
entity_id: light.sonoff_zbmini_04_on_off
- delay:
seconds: 0.3
- action: light.turn_on
target:
entity_id: light.sonoff_zbmini_04_on_off
- wait_template: '{{ is_state(''binary_sensor.trust_iaszone'', ''on'')
}}'
timeout: 00:01:00
- if:
- '{{ not wait.completed }}'
then:
- parallel:
- sequence:
- condition: '{{ is_state(''light.sonoff_zbmini_04_on_off'', ''on'')
}}'
- action: light.turn_off
target:
entity_id: light.sonoff_zbmini_04_on_off
- sequence:
- condition: '{{ is_state(''fan.bathroom_extractor'', ''on'')
}}'
- condition: '{{ is_state(''binary_sensor.bathroom_high_humidity'',
''off'') }}'
- action: fan.turn_off
target:
entity_id: fan.bathroom_extractor
- alias: Magnet
conditions:
- condition: trigger
id: magnet
sequence:
choose:
- alias: To On
conditions: '{{ trigger.from_state.state == ''off'' and trigger.to_state.state
== ''on'' }}'
sequence:
- condition: '{{ is_state(''light.sonoff_zbmini_04_on_off'', ''off'') }}'
- action: light.turn_on
target:
entity_id: light.sonoff_zbmini_04_on_off
- action: timer.start
target:
entity_id: timer.bathroom_presence
- alias: To Off
conditions: '{{ trigger.from_state.state == ''on'' and trigger.to_state.state
== ''off'' }}'
sequence:
- parallel:
- sequence:
- condition: '{{ is_state(''binary_sensor.trust_iaszone'', ''off'')
}}'
- condition: '{{ is_state(''light.sonoff_zbmini_04_on_off'', ''on'')
}}'
- action: light.turn_off
target:
entity_id: light.sonoff_zbmini_04_on_off
- sequence:
- condition: '{{ is_state(''fan.bathroom_extractor'', ''on'') }}'
- condition: '{{ is_state(''binary_sensor.bathroom_high_humidity'',
''off'') }}'
- condition: '{{ is_state(''binary_sensor.trust_iaszone'', ''off'')
}}'
- action: fan.turn_off
target:
entity_id: fan.bathroom_extractor
- alias: Presence
conditions:
- condition: trigger
id: presence_on
sequence:
- action: timer.start
target:
entity_id: timer.bathroom_presence
- alias: Motion
conditions:
- condition: trigger
id: motion_on
sequence:
- action: timer.start
target:
entity_id: timer.bathroom_presence
- parallel:
- sequence:
- condition: '{{ is_state(''fan.bathroom_extractor'', ''off'') }}'
- action: fan.turn_on
target:
entity_id: fan.bathroom_extractor
- sequence:
- condition: '{{ is_state(''light.sonoff_zbmini_04_on_off'', ''off'') }}'
- action: light.turn_on
target:
entity_id: light.sonoff_zbmini_04_on_off
- alias: Button
conditions:
- condition: trigger
id: click
sequence:
choose:
- alias: Single click
conditions: '{{ trigger.event.data.args.click_type == ''single'' }}'
sequence:
- action: light.toggle
data:
entity_id: light.sonoff_zbmini_04_on_off
- delay: 00:00:02
- choose:
- alias: Light On
conditions: '{{ is_state(''light.sonoff_zbmini_04_on_off'', ''on'')
}}'
sequence:
- action: fan.turn_on
target:
entity_id: fan.bathroom_extractor
- alias: Light Off
conditions: '{{ is_state(''light.sonoff_zbmini_04_on_off'', ''off'')
}}'
sequence:
- condition: '{{ is_state(''binary_sensor.bathroom_high_humidity'',
''off'') }}'
- action: fan.turn_off
target:
entity_id: fan.bathroom_extractor
- alias: Double click
conditions: '{{ trigger.event.data.args.click_type == ''double'' }}'
sequence:
- action: fan.toggle
target:
entity_id: fan.bathroom_extractor
- alias: Ванная - вытяжка
id: 9c4552b3-11ee-4364-bf40-2b142c5f97e6
triggers:
- trigger: state
entity_id: binary_sensor.bathroom_high_humidity
to: 'on'
for:
minutes: 3
id: high_humidity
- trigger: state
entity_id: binary_sensor.bathroom_high_humidity
to: 'off'
for:
minutes: 10
id: normal_humidity
actions:
choose:
- alias: High humidity
conditions:
- condition: trigger
id: high_humidity
sequence:
- condition: '{{ is_state(''fan.bathroom_extractor'', ''off'') }}'
- action: fan.turn_on
target:
entity_id: fan.bathroom_extractor
- alias: Normal humidity
conditions:
- condition: trigger
id: normal_humidity
sequence:
- condition: '{{ is_state(''fan.bathroom_extractor'', ''on'') }}'
- action: fan.turn_off
target:
entity_id: fan.bathroom_extractor
- alias: Кнопки IKEA в Спальне
id: ffd8dce9-55d7-449c-a5ed-280604c00930
triggers:
- trigger: event
event_type: zha_event
event_data:
device_ieee: 84:fd:27:ff:fe:90:a6:46
id: ikea_sw_1
- trigger: event
event_type: zha_event
event_data:
device_ieee: 84:fd:27:ff:fe:9e:e4:06
id: ikea_sw_2
actions:
choose:
- alias: 'command: on'
conditions:
- condition: template
value_template: '{{ trigger.event.data.command == ''on'' }}'
sequence:
- action: light.toggle
target:
entity_id: light.sonoff_1001053235
- alias: 'command: off'
conditions:
- condition: template
value_template: '{{ trigger.event.data.command == ''off'' }}'
sequence:
choose:
- alias: If Group is On
conditions:
- condition: state
entity_id: group.light_spalnia_bra
state: 'on'
sequence:
- action: homeassistant.turn_off
target:
entity_id: group.light_spalnia_bra
- alias: If Group is Off
conditions:
- condition: state
entity_id: group.light_spalnia_bra
state: 'off'
sequence:
- action: homeassistant.turn_on
target:
entity_id: group.light_spalnia_bra
- alias: 'command: move_with_on_off'
conditions:
- condition: template
value_template: '{{ trigger.event.data.command == ''move_with_on_off'' }}'
sequence:
- action: light.toggle
target:
entity_id: light.spalnia_stol
- alias: 'command: move'
conditions:
- condition: template
value_template: '{{ trigger.event.data.command == ''move'' }}'
sequence:
- action: light.turn_off
target:
entity_id: group.all_lamps
- alias: Sunrise Lighting (Bedroom)
id: 35fa00c7-72bd-4a5f-9bef-7bcf13a3bf49
triggers:
- trigger: time
at: input_datetime.sunrise_in_bedroom
condition:
- and:
- condition: state
entity_id: binary_sensor.workday_sensor
state: 'on'
- condition: state
entity_id: calendar.semia_alexander_borisov_vacation
state: 'off'
- condition: sun
before: sunrise
before_offset: 00:30:00
actions:
- action: script.turn_on
target:
entity_id: script.sunrise_in_bedroom_left
- alias: Wait for OnePlus presence at livingroom
wait_for_trigger:
- trigger: state
entity_id: binary_sensor.living_room_oneplus_8t_presence
from: 'off'
to: 'on'
for: 00:03:00
timeout: 00:30:00
- parallel:
- if:
- '{{ is_state(''script.sunrise_in_bedroom_left'', ''on'') }}'
then:
- action: script.turn_off
target:
entity_id: script.sunrise_in_bedroom_left
- if:
- '{{ is_state(''light.ikea_of_sweden_tradfri_bulb_e14_ws_opal_600lm_light_2'',
''on'') }}'
then:
- action: light.turn_off
target:
entity_id: light.ikea_of_sweden_tradfri_bulb_e14_ws_opal_600lm_light_2
- alias: Turn Off All Light When Nobody at Home
id: b06cbc8a-6488-412b-8842-e6c72b004ff1
triggers:
trigger: state
entity_id: group.family_persons
to: not_home
for:
minutes: 5
conditions:
- condition: state
entity_id: group.all_lamps
state: 'on'
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
title: '*Внимание*'
message: 'Дома никого нет, но остался включенным свет:
{{ ((expand(''group.all_lamps'') | selectattr(''state'', ''eq'', ''on'') |
map(attribute=''name'') | list)) | replace("''","") | replace(", ", "\n")
}}
'
inline_keyboard:
- Выключить свет:/turn_off_all_lamps
- alias: Light - Telegram Control - Turn Off All Lamps
id: a395b9eb-6a18-40bd-a7f4-6e3f133049ba
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /turn_off_all_lamps
actions:
- action: homeassistant.turn_off
target:
entity_id: group.all_lamps
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: Команда отправлена
- action: telegram_bot.edit_replymarkup
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
inline_keyboard: []
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
message: Свет выключен.
- alias: Кнопка Xiaomi в Коридоре
id: 69f5d88e-f0b9-4f31-9951-fe9f7bd60906
mode: queued
max: 5
max_exceeded: silent
triggers:
- trigger: event
event_type: zha_event
event_data:
device_ieee: 00:15:8d:00:04:5a:11:53
command: click
id: click
- trigger: event
event_type: zha_event
event_data:
device_ieee: 00:15:8d:00:04:5a:11:53
command: hold
id: hold
actions:
choose:
- alias: Action Click
conditions:
- condition: trigger
id: click
sequence:
choose:
- alias: Single click
conditions: '{{ trigger.event.data.args.click_type == ''single'' }}'
sequence:
- action: light.toggle
target:
entity_id: light.sonoff_1000f2a500
- alias: Double click
conditions: '{{ trigger.event.data.args.click_type == ''double'' }}'
sequence:
- action: light.toggle
target:
entity_id: light.sonoff_1000f2f14a
- alias: Action Hold
conditions:
- condition: trigger
id: hold
sequence:
- action: light.turn_off
target:
entity_id:
- group.light_detskaia
- group.light_prikhozhaya
- group.light_koridor
- group.light_gostinaia
- group.light_kukhnia
- group.light_kladovaya
- alias: Свет в Прихожей
id: b564ba72-9799-4438-b7c0-2a72a61a864c
mode: queued
max: 5
max_exceeded: silent
triggers:
- trigger: state
entity_id: timer.hallway_light
id: timer
- trigger: state
entity_id: binary_sensor.0x158d00031c790f_contact
id: magnet
- trigger: state
entity_id: binary_sensor.0x158d000309920a_motion
id: motion
action:
choose:
- alias: Timer
conditions:
- condition: trigger
id: timer
sequence:
choose:
- alias: To Off
conditions: '{{ trigger.to_state.state == ''idle'' }}'
sequence:
choose:
- alias: Frigate Presence On
conditions: '{{ states(''binary_sensor.dafangcam_02_person_occupancy'')
== ''on'' }}'
sequence:
- action: timer.start
target:
entity_id: timer.hallway_light
- alias: Motion On
conditions: '{{ states(''binary_sensor.0x158d000309920a_motion'') ==
''on'' }}'
sequence:
- action: timer.start
target:
entity_id: timer.hallway_light
- alias: Motion Off
conditions: '{{ states(''binary_sensor.0x158d000309920a_motion'') ==
''off'' }}'
sequence:
- action: light.turn_off
target:
entity_id: light.sonoff_1000f2f14a
- alias: Magnet
conditions:
- condition: trigger
id: magnet
sequence:
choose:
- alias: To On
conditions: '{{ trigger.from_state.state == ''off'' and trigger.to_state.state
== ''on'' }}'
sequence:
- action: light.turn_on
target:
entity_id: light.sonoff_1000f2f14a
- action: timer.start
target:
entity_id: timer.hallway_light
- alias: Motion
conditions:
- condition: trigger
id: motion
sequence:
choose:
- alias: To On
conditions: '{{ trigger.to_state.state == ''on'' }}'
sequence:
- action: timer.start
target:
entity_id: timer.hallway_light
- condition: state
entity_id: light.sonoff_1000f2f14a
state: 'off'
- action: light.turn_on
target:
entity_id: light.sonoff_1000f2f14a
- alias: To Off
conditions: '{{ trigger.to_state.state == ''off'' }}'
sequence:
- action: timer.finish
target:
entity_id: timer.hallway_light
- alias: Кнопка Xiaomi в Прихожей
id: c8299171-1d2a-428f-8f5f-d24d28e82b48
mode: queued
max: 5
max_exceeded: silent
triggers:
- trigger: event
event_type: zha_event
event_data:
device_ieee: 00:15:8d:00:04:5a:11:b1
command: click
id: click
- trigger: event
event_type: zha_event
event_data:
device_ieee: 00:15:8d:00:04:5a:11:b1
command: hold
id: hold
actions:
choose:
- alias: Action Click
conditions:
- condition: trigger
id: click
sequence:
choose:
- alias: Single click
conditions: '{{ trigger.event.data.args.click_type == ''single'' }}'
sequence:
- action: light.toggle
target:
entity_id: light.sonoff_1000f2f14a
- alias: Double click
conditions: '{{ trigger.event.data.args.click_type == ''double'' }}'
sequence:
- action: light.toggle
target:
entity_id: light.sonoff_1000f2a500
- alias: Action Hold
conditions:
- condition: trigger
id: hold
sequence:
- action: light.turn_off
target:
entity_id: group.all_lamps
- alias: Кнопка Xiaomi на Кухне
id: 3dd87840-2d90-4823-a4af-844395be2a2a
mode: queued
max: 5
max_exceeded: silent
triggers:
- trigger: event
event_type: zha_event
event_data:
device_ieee: 00:15:8d:00:03:5f:f6:31
command: click
id: click
actions:
choose:
- alias: Action Click
conditions:
- condition: trigger
id: click
sequence:
choose:
- alias: Single click
conditions: '{{ trigger.event.data.args.click_type == ''single'' }}'
sequence:
- action: light.toggle
target:
entity_id: light.kukhnia_lenta
- alias: Double click
conditions: '{{ trigger.event.data.args.click_type == ''double'' }}'
sequence:
- action: light.toggle
target:
entity_id: light.ikea_e27_kukhnia
- alias: Подсветка на кухне (сенсор движения - вкл)
id: 72c4f7ac-f72c-47fd-bf06-6e3671d12b1d
triggers:
trigger: state
entity_id: binary_sensor.0x158d0003fac0ec_motion
to: 'on'
conditions:
- condition: numeric_state
entity_id: sensor.0x158d0003fac0ec_illuminance
below: 10
actions:
action: light.turn_on
target:
entity_id: light.kukhnia_lenta
- alias: Подсветка на кухне (сенсор движения - выкл)
id: 47413029-b8c2-4ec1-ad98-7c72b271766d
triggers:
trigger: state
entity_id: binary_sensor.0x158d0003fac0ec_motion
to: 'off'
for:
minutes: 3
actions:
action: light.turn_off
target:
entity_id: light.kukhnia_lenta
- alias: Кнопка Xiaomi в Гостиной
id: 20b084dc-0393-44e3-897d-3cec019647a1
mode: queued
max: 5
max_exceeded: silent
triggers:
- trigger: event
event_type: zha_event
event_data:
device_ieee: 00:15:8d:00:03:5a:9b:c5
command: click
id: click
- trigger: event
event_type: zha_event
event_data:
device_ieee: 00:15:8d:00:03:5a:9b:c5
command: hold
id: hold
actions:
choose:
- alias: Action Click
conditions:
- condition: trigger
id: click
sequence:
choose:
- alias: Single click
conditions: '{{ trigger.event.data.args.click_type == ''single'' }}'
sequence:
- action: light.toggle
target:
entity_id: light.sonoff_1000ab3c28
- alias: Double click
conditions: '{{ trigger.event.data.args.click_type == ''double'' }}'
sequence:
- action: light.toggle
target:
entity_id: light.sonoff_1000f3035d
- alias: Action Hold
conditions:
- condition: trigger
id: hold
sequence:
- action: light.toggle
target:
entity_id: light.gostinaia_podsvetka_na_okne
- alias: Подсветка на окне в Гостиной
id: 32c18d2f-1d01-4458-b5e2-05048b73a3d7
triggers:
- trigger: numeric_state
entity_id: sensor.outdoor_illuminance
below: input_number.livingroom_window_light_illuminance_threshold
for: 00:10:00
id: dark
- trigger: numeric_state
entity_id: sensor.outdoor_illuminance
above: input_number.livingroom_window_light_illuminance_threshold
for: 00:10:00
id: lightly
- trigger: time
at: 00:30:00
id: time
- trigger: state
entity_id: group.family_persons
from: not_home
to: home
id: to_home
conditions: '{{ is_state(''input_boolean.livingroom_window_light_auto'', ''on'')
}}'
actions:
choose:
- alias: Darkens (Turn On)
conditions:
- condition: trigger
id: dark
sequence:
- condition: state
entity_id: light.gostinaia_podsvetka_na_okne
state: 'off'
- action: light.turn_on
target:
entity_id: light.gostinaia_podsvetka_na_okne
- alias: Brightens (Turn Off)
conditions:
- or:
- condition: trigger
id: lightly
- condition: trigger
id: time
sequence:
- condition: state
entity_id: light.gostinaia_podsvetka_na_okne
state: 'on'
- action: light.turn_off
target:
entity_id: light.gostinaia_podsvetka_na_okne
- alias: Came Home
conditions:
- and:
- condition: trigger
id: to_home
- condition: numeric_state
entity_id: sensor.outdoor_illuminance
below: input_number.livingroom_window_light_illuminance_threshold
sequence:
- condition: state
entity_id: light.gostinaia_podsvetka_na_okne
state: 'off'
- action: light.turn_on
target:
entity_id: light.gostinaia_podsvetka_na_okne
- alias: Пульт IKEA в Гостиной
id: 94f03734-3e9f-47cd-80c6-af9f37236974
mode: restart
triggers:
- trigger: event
event_type: zha_event
event_data:
device_ieee: d0:cf:5e:ff:fe:33:93:f6
actions:
- alias: Set variables
variables:
target_lamp: light.ikea_e27_level_light_color_on_off
- choose:
- alias: toggle
conditions: '{{ trigger.event.data.command == ''toggle'' }}'
sequence:
- action: light.toggle
target:
entity_id: '{{ target_lamp }}'
- alias: step_with_on_off
conditions: '{{ trigger.event.data.command == ''step_with_on_off'' }}'
sequence:
- action: light.turn_on
target:
entity_id: '{{ target_lamp }}'
data:
brightness_step: 8
- alias: move_with_on_off
conditions: '{{ trigger.event.data.command == ''move_with_on_off'' }}'
sequence:
repeat:
until: '{{ wait.trigger is not none }}'
sequence:
- action: light.turn_on
target:
entity_id: '{{ target_lamp }}'
data:
brightness_step: 8
- wait_for_trigger:
trigger: event
event_type: zha_event
event_data:
device_ieee: '{{ trigger.event.data.device_ieee }}'
command: stop
timeout:
milliseconds: 200
- alias: step
conditions: '{{ trigger.event.data.command == ''step'' }}'
sequence:
- action: light.turn_on
target:
entity_id: '{{ target_lamp }}'
data:
brightness_step: -8
- alias: move
conditions: '{{ trigger.event.data.command == ''move'' }}'
sequence:
repeat:
until: '{{ wait.trigger is not none }}'
sequence:
- action: light.turn_on
target:
entity_id: '{{ target_lamp }}'
data:
brightness_step: -8
- wait_for_trigger:
trigger: event
event_type: zha_event
event_data:
device_ieee: '{{ trigger.event.data.device_ieee }}'
command: stop
timeout:
milliseconds: 200
- alias: press
conditions: '{{ trigger.event.data.command == ''press'' }}'
sequence:
choose:
- alias: left button
conditions: '{{ (trigger.event.data.args[0] | int(0)) == 257 }}'
sequence:
- action: light.turn_on
target:
entity_id: '{{ target_lamp }}'
data:
color_temp: '{% set color_t = (state_attr(target_lamp, ''color_temp'')
| int(0)) %} {{ iif ((color_t - 10) > 172, color_t - 10, 172) }}'
- alias: right button
conditions: '{{ (trigger.event.data.args[0] | int(0)) == 256 }}'
sequence:
- action: light.turn_on
target:
entity_id: '{{ target_lamp }}'
data:
color_temp: '{% set color_t = (state_attr(target_lamp, ''color_temp'')
| int(0)) %} {{ iif ((color_t + 10 ) < 454, color_t + 10, 454) }}'
- alias: hold
conditions: '{{ trigger.event.data.command == ''hold'' }}'
sequence:
choose:
- alias: left button
conditions: '{{ (trigger.event.data.args[0] | int(0)) == 3329 }}'
sequence:
repeat:
until: '{{ wait.trigger is not none }}'
sequence:
- action: light.turn_on
target:
entity_id: '{{ target_lamp }}'
data:
color_temp: '{% set color_t = (state_attr(target_lamp, ''color_temp'')
| int(0)) %} {{ iif ((color_t - 10) > 172, color_t - 10, 172)
}}'
- wait_for_trigger:
trigger: event
event_type: zha_event
event_data:
device_ieee: '{{ trigger.event.data.device_ieee }}'
command: release
timeout:
milliseconds: 200
- alias: right button
conditions: '{{ (trigger.event.data.args[0] | int(0)) == 3328 }}'
sequence:
repeat:
until: '{{ wait.trigger is not none }}'
sequence:
- action: light.turn_on
target:
entity_id: '{{ target_lamp }}'
data:
color_temp: '{% set color_t = (state_attr(target_lamp, ''color_temp'')
| int(0)) %} {{ iif ((color_t + 10) < 454, color_t + 10, 454)
}}'
- wait_for_trigger:
trigger: event
event_type: zha_event
event_data:
device_ieee: '{{ trigger.event.data.device_ieee }}'
command: release
timeout:
milliseconds: 200
- alias: Кнопка Xiaomi в Детской
id: b1b33068-e33a-4955-94a0-80bc3b8f61fd
mode: queued
max: 5
max_exceeded: silent
triggers:
- trigger: event
event_type: zha_event
event_data:
device_ieee: 00:15:8d:00:03:3e:fd:9e
command: click
id: click
- trigger: event
event_type: zha_event
event_data:
device_ieee: 00:15:8d:00:03:3e:fd:9e
command: hold
id: hold
actions:
choose:
- alias: Action Click
conditions:
- condition: trigger
id: click
sequence:
choose:
- alias: Single click
conditions: '{{ trigger.event.data.args.click_type == ''single'' }}'
sequence:
choose:
- alias: Bulb unavailable
conditions: '{{ is_state(''light.ikea_e27_detskaia'', ''unavailable'')
}}'
sequence:
- action: light.turn_off
target:
entity_id: light.sonoff_zbmini_01_on_off
- delay: 00:00:01
- action: light.turn_on
target:
entity_id: light.sonoff_zbmini_01_on_off
- wait_for_trigger:
- trigger: state
entity_id: light.ikea_e27_detskaia
to: 'on'
timeout: 00:00:30
- action: light.turn_on
target:
entity_id: light.ikea_e27_detskaia
data:
brightness: 255
- alias: Relay off
conditions: '{{ is_state(''light.sonoff_zbmini_01_on_off'', ''off'')
}}'
sequence:
- action: light.turn_on
target:
entity_id: light.sonoff_zbmini_01_on_off
- wait_for_trigger:
- trigger: state
entity_id: light.ikea_e27_detskaia
to: 'on'
timeout: 00:00:30
- action: light.turn_on
target:
entity_id: light.ikea_e27_detskaia
data:
brightness: 255
- alias: Relay on
conditions: '{{ is_state(''light.sonoff_zbmini_01_on_off'', ''on'')
}}'
sequence:
- action: light.toggle
target:
entity_id: light.ikea_e27_detskaia
- alias: Double click
conditions: '{{ trigger.event.data.args.click_type == ''double'' }}'
sequence:
- action: light.turn_on
target:
entity_id: light.ikea_e27_detskaia
data:
transition: '0.5'
brightness: "{%- if (state_attr('light.ikea_e27_detskaia', 'brightness')\
\ | int(0)) <= 3 %}\n 51\n{% elif (state_attr('light.ikea_e27_detskaia',\
\ 'brightness') | int(0)) <= 51 %}\n 102\n{% elif (state_attr('light.ikea_e27_detskaia',\
\ 'brightness') | int(0)) <= 102 %}\n 153\n{% elif (state_attr('light.ikea_e27_detskaia',\
\ 'brightness') | int(0)) <= 153 %}\n 204\n{% elif (state_attr('light.ikea_e27_detskaia',\
\ 'brightness') | int(0)) <= 204 %}\n 255\n{% elif (state_attr('light.ikea_e27_detskaia',\
\ 'brightness') | int(0)) <= 255 %}\n 3\n{% endif %}\n"
- alias: Triple click
conditions: '{{ trigger.event.data.args.click_type == ''triple'' }}'
sequence:
- action: light.turn_on
target:
entity_id: light.ikea_e27_detskaia
data:
color_temp: 270
- delay: '00:00:00.0500'
- action: light.turn_on
target:
entity_id: light.ikea_e27_detskaia
data:
transition: '0.5'
brightness: 255
- alias: Action Hold
conditions:
- condition: trigger
id: hold
sequence:
- action: light.toggle
target:
entity_id: light.detskaia_podsvetka_na_okne
- alias: Подсветка на окне в Детской
id: 319b4fe1-b76d-459f-ac43-3187f0c9079a
triggers:
- trigger: numeric_state
entity_id: sensor.outdoor_illuminance
below: input_number.nursery_window_light_illuminance_threshold
for: 00:10:00
id: dark
- trigger: numeric_state
entity_id: sensor.outdoor_illuminance
above: input_number.nursery_window_light_illuminance_threshold
for: 00:10:00
id: lightly
- trigger: state
entity_id: group.family_persons
from: not_home
to: home
id: to_home
conditions: '{{ is_state(''input_boolean.nursery_window_light_auto'', ''on'') }}'
actions:
choose:
- alias: Darkens (Turn On)
conditions:
- condition: trigger
id: dark
sequence:
- condition: state
entity_id: light.detskaia_podsvetka_na_okne
state: 'off'
- action: light.turn_on
target:
entity_id: light.detskaia_podsvetka_na_okne
- alias: Brightens (Turn Off)
conditions:
- or:
- condition: trigger
id: lightly
sequence:
- condition: state
entity_id: light.detskaia_podsvetka_na_okne
state: 'on'
- action: light.turn_off
target:
entity_id: light.detskaia_podsvetka_na_okne
- alias: Came Home
conditions:
- and:
- condition: trigger
id: to_home
- condition: numeric_state
entity_id: sensor.outdoor_illuminance
below: input_number.nursery_window_light_illuminance_threshold
sequence:
- condition: state
entity_id: light.detskaia_podsvetka_na_okne
state: 'off'
- action: light.turn_on
target:
entity_id: light.detskaia_podsvetka_na_okne
- alias: Лампы на столе в Детской
id: 2d312381-a7c3-4d33-874b-d7771d8ff178
triggers:
- trigger: time
at: 00:30:00
id: time_off
actions:
choose:
- alias: Time (Turn Off)
conditions:
- condition: trigger
id: time_off
sequence:
- parallel:
- sequence:
- condition: '{{ is_state(''light.ikea_e14_level_light_color_on_off'', ''on'')
}}'
- action: light.turn_off
target:
entity_id: light.ikea_e14_level_light_color_on_off
- sequence:
- condition: '{{ is_state(''light.ikea_of_sweden_tradfri_bulb_e14_ws_opal_600lm_light'',
''on'') }}'
- action: light.turn_off
target:
entity_id: light.ikea_of_sweden_tradfri_bulb_e14_ws_opal_600lm_light
- alias: Sunrise Lighting (Nursery)
id: d50bfe78-2e35-4870-a24c-71d0f6ebf969
triggers:
- trigger: time
at: input_datetime.sunrise_in_nursery
conditions:
- and:
- condition: state
entity_id: binary_sensor.workday_sensor
state: 'on'
- condition: sun
before: sunrise
before_offset: 00:30:00
- condition: state
entity_id: calendar.semia_alexander_borisov_school_vacation_egor
state: 'off'
- condition: state
entity_id: calendar.semia_alexander_borisov_school_vacation_kirill
state: 'off'
actions:
- action: script.turn_on
target:
entity_id: script.sunrise_in_nursery
- alias: Kids must sleep at night
id: a2e4ec8e-926f-44bf-96fb-0029bd137f32
triggers:
trigger: state
entity_id: light.ikea_e27_detskaia
to: 'on'
for:
minutes: 2
conditions:
condition: time
after: 00:00
before: 06:30
actions:
- action: homeassistant.turn_off
target:
entity_id: light.ikea_e27_detskaia
- action: notify.telegram_group_flat_1
data:
message: _{{ now().strftime("%d.%m.%Y %H:%M:%S") }}_ автоматически выключен
свет в детской.
- alias: Кубик Aqara в Детской
id: 3ac0562a-feca-479d-ba2a-4bf0cc1fe5ce
mode: queued
max: 5
max_exceeded: silent
triggers:
- trigger: event
event_type: zha_event
event_data:
device_ieee: 00:15:8d:00:05:29:2a:d9
actions:
choose:
- alias: Rotate
conditions: '{{ trigger.event.data.command in (''rotate_right'', ''rotate_left'')
}}'
sequence:
- action: light.turn_on
target:
entity_id: light.ikea_e14_level_light_color_on_off
data:
brightness: '{{ (state_attr(''light.ikea_e14_level_light_color_on_off'',
''brightness'') | int(0)) + (trigger.event.data.args.relative_degrees
| int) }}'
- alias: Flip
conditions: '{{ trigger.event.data.command in (''flip'') }}'
sequence:
choose:
- alias: Flip 90
conditions: '{{ (trigger.event.data.args.flip_degrees | int) == 90 }}'
sequence:
- action: light.toggle
target:
entity_id: light.ikea_e14_level_light_color_on_off
data:
brightness: 255
- alias: Люстра в Кладовой
id: 4144c0c9-bd8e-4ed4-a6f4-42cf9d5b6228
mode: queued
max: 3
max_exceeded: silent
triggers:
- trigger: state
entity_id: binary_sensor.lumi_lumi_sensor_magnet_50659603_on_off
id: magnet
- trigger: state
entity_id: binary_sensor.lumi_lumi_sensor_motion_aq2_7b4e5f07_ias_zone
id: motion
- trigger: state
entity_id: timer.storeroom_light
id: timer
actions:
choose:
- alias: Magnet
conditions:
- condition: trigger
id: magnet
sequence:
choose:
- alias: To On
conditions: '{{ trigger.from_state.state == ''off'' and trigger.to_state.state
== ''on'' }}'
sequence:
- action: light.turn_on
target:
entity_id: light.sonoff_1000b6831b
- action: timer.start
target:
entity_id: timer.storeroom_light
- alias: To Off
conditions: '{{ trigger.from_state.state == ''on'' and trigger.to_state.state
== ''off'' }}'
sequence:
- action: timer.finish
target:
entity_id: timer.storeroom_light
- alias: Motion
conditions:
- condition: trigger
id: motion
sequence:
choose:
- alias: To On
conditions: '{{ trigger.to_state.state == ''on'' }}'
sequence:
- action: timer.start
target:
entity_id: timer.storeroom_light
- condition: state
entity_id: light.sonoff_1000b6831b
state: 'off'
- action: light.turn_on
target:
entity_id: light.sonoff_1000b6831b
- alias: To Off
conditions: '{{ trigger.to_state.state == ''off'' }}'
sequence:
choose:
- alias: Door closed
conditions: '{{ is_state(''binary_sensor.lumi_lumi_sensor_magnet_50659603_on_off'',
''off'') }}'
sequence:
- action: light.turn_off
target:
entity_id: light.sonoff_1000b6831b
- alias: Door opened
conditions: '{{ is_state(''binary_sensor.lumi_lumi_sensor_magnet_50659603_on_off'',
''on'') }}'
sequence:
- action: timer.finish
target:
entity_id: timer.storeroom_light
- alias: Timer
conditions:
- condition: trigger
id: timer
sequence:
choose:
conditions: '{{ trigger.to_state.state == ''idle'' }}'
sequence:
choose:
- alias: Motion On
conditions: '{{ states(''binary_sensor.lumi_lumi_sensor_motion_aq2_7b4e5f07_ias_zone'')
== ''on'' }}'
sequence:
- action: timer.start
target:
entity_id: timer.storeroom_light
- alias: Motion Off
conditions: '{{ states(''binary_sensor.lumi_lumi_sensor_motion_aq2_7b4e5f07_ias_zone'')
== ''off'' }}'
sequence:
- action: light.turn_off
target:
entity_id: light.sonoff_1000b6831b
- alias: Свет в Туалете
id: 7fa56654-f362-4f13-97ca-9d8e4ff52ccb
mode: queued
max: 10
max_exceeded: silent
triggers:
- trigger: state
entity_id: timer.toilet_presence
to: idle
id: timer_idle
- trigger: state
entity_id: binary_sensor.lumi_lumi_sensor_magnet_9bef9603_on_off
id: magnet
- trigger: state
entity_id: binary_sensor.adurolight_vms_adurolight_f604cd01_ias_zone
to: 'on'
id: motion_on
- trigger: state
entity_id: binary_sensor.0xa4c138b96f4627bc_presence
to: 'on'
id: presence_on
- trigger: event
event_type: zha_event
event_data:
device_ieee: 00:15:8d:00:03:d1:5d:00
command: click
id: click
actions:
choose:
- alias: Timer Idle
conditions:
- condition: trigger
id: timer_idle
sequence:
choose:
- alias: Presence On
conditions: '{{ states(''binary_sensor.0xa4c138b96f4627bc_presence'') ==
''on'' }}'
sequence:
- action: timer.start
target:
entity_id: timer.bathroom_presence
- alias: Motion On
conditions: '{{ states(''binary_sensor.adurolight_vms_adurolight_f604cd01_ias_zone'')
== ''on'' }}'
sequence:
- action: timer.start
target:
entity_id: timer.toilet_presence
- alias: Motion Off
conditions: '{{ states(''binary_sensor.adurolight_vms_adurolight_f604cd01_ias_zone'')
== ''off'' }}'
sequence:
choose:
- alias: Motion detected > 2 min ago
conditions: '{{ (as_timestamp(now()) - as_timestamp(states.binary_sensor.adurolight_vms_adurolight_f604cd01_ias_zone.last_changed))
> 120 }}'
sequence:
- parallel:
- sequence:
- condition: '{{ is_state(''light.sonoff_zbmini_03_on_off'', ''on'')
}}'
- action: light.turn_off
target:
entity_id: light.sonoff_zbmini_03_on_off
- sequence:
- condition: '{{ is_state(''fan.toilet_extractor'', ''on'') }}'
- action: fan.turn_off
target:
entity_id: fan.toilet_extractor
- alias: Motion detected <= 2 min ago
conditions: '{{ (as_timestamp(now()) - as_timestamp(states.binary_sensor.adurolight_vms_adurolight_f604cd01_ias_zone.last_changed))
<= 120 }}'
sequence:
- condition: '{{ is_state(''light.sonoff_zbmini_03_on_off'', ''on'')
}}'
- action: light.turn_off
target:
entity_id: light.sonoff_zbmini_03_on_off
- delay:
seconds: 0.3
- action: light.turn_on
target:
entity_id: light.sonoff_zbmini_03_on_off
- wait_template: '{{ is_state(''binary_sensor.adurolight_vms_adurolight_f604cd01_ias_zone'',
''on'') }}'
timeout: 00:00:30
- if:
- '{{ not wait.completed }}'
then:
- parallel:
- sequence:
- condition: '{{ is_state(''light.sonoff_zbmini_03_on_off'', ''on'')
}}'
- action: light.turn_off
target:
entity_id: light.sonoff_zbmini_03_on_off
- sequence:
- condition: '{{ is_state(''fan.toilet_extractor'', ''on'') }}'
- action: fan.turn_off
target:
entity_id: fan.toilet_extractor
- alias: Magnet
conditions:
- condition: trigger
id: magnet
sequence:
choose:
- alias: To On
conditions: '{{ trigger.from_state.state == ''off'' and trigger.to_state.state
== ''on'' }}'
sequence:
- condition: '{{ is_state(''light.sonoff_zbmini_03_on_off'', ''off'') }}'
- action: light.turn_on
target:
entity_id: light.sonoff_zbmini_03_on_off
- action: timer.start
target:
entity_id: timer.toilet_presence
- alias: To Off
conditions: '{{ trigger.from_state.state == ''on'' and trigger.to_state.state
== ''off'' }}'
sequence:
- condition: '{{ is_state(''binary_sensor.adurolight_vms_adurolight_f604cd01_ias_zone'',
''off'') }}'
- condition: '{{ is_state(''light.sonoff_zbmini_03_on_off'', ''on'') }}'
- action: light.turn_off
target:
entity_id: light.sonoff_zbmini_03_on_off
- condition: '{{ is_state(''fan.toilet_extractor'', ''on'') }}'
- action: fan.turn_off
target:
entity_id: fan.toilet_extractor
- alias: Presence
conditions:
- condition: trigger
id: presence_on
sequence:
- action: timer.start
target:
entity_id: timer.bathroom_presence
- alias: Motion
conditions:
- condition: trigger
id: motion_on
sequence:
- action: timer.start
target:
entity_id: timer.toilet_presence
- parallel:
- sequence:
- condition: '{{ is_state(''fan.toilet_extractor'', ''off'') }}'
- action: fan.turn_on
target:
entity_id: fan.toilet_extractor
- sequence:
- condition: '{{ is_state(''light.sonoff_zbmini_03_on_off'', ''off'') }}'
- action: light.turn_on
target:
entity_id: light.sonoff_zbmini_03_on_off
- alias: Button
conditions:
- condition: trigger
id: click
sequence:
choose:
- alias: Single click
conditions: '{{ trigger.event.data.args.click_type == ''single'' }}'
sequence:
- action: light.toggle
target:
entity_id: light.sonoff_zbmini_03_on_off
- action: fan.toggle
target:
entity_id: fan.toilet_extractor
- alias: Double click
conditions: '{{ trigger.event.data.args.click_type == ''double'' }}'
sequence:
- action: fan.toggle
target:
entity_id: fan.toilet_extractor
- alias: New Year Light [Scheduled]
id: 63ea7cdd-f8bc-4a4d-b3ce-72fc493e7392
triggers:
- trigger: time
at: input_datetime.new_year_illumination_on
id: 'on'
- trigger: time
at: input_datetime.new_year_illumination_off
id: 'off'
actions:
choose:
- conditions: '{{ trigger.id == ''on'' }}'
sequence:
- action: scene.turn_on
target:
entity_id: scene.new_year_light_on
- conditions: '{{ trigger.id == ''off'' }}'
sequence:
- if: '{{ states("sensor.date")[-5:] != "01-01" }}'
then:
- action: scene.turn_on
target:
entity_id: scene.new_year_light_off
- alias: New Year Light [Home Presence]
id: e0299715-bb22-4667-b4ad-7cf0b72bd433
triggers:
- trigger: state
entity_id: group.family_persons
from: not_home
to: home
id: home
- trigger: state
entity_id: group.family_persons
to: not_home
for:
minutes: 5
id: not_home
actions:
choose:
- conditions: '{{ trigger.id == ''home'' }}'
sequence:
- action: scene.turn_on
target:
entity_id: scene.new_year_light_on
- conditions: '{{ trigger.id == ''not_home'' }}'
sequence:
- action: scene.turn_on
target:
entity_id: scene.new_year_light_off
- alias: Radio - Selected Name to URL
id: 113d01d2-80b9-4a5e-9745-ad34cb66ea4d
triggers:
- trigger: homeassistant
event: start
- trigger: state
entity_id: input_select.radio_station
actions:
- action: input_text.set_value
target:
entity_id: input_text.radio_url_to_play
data:
value: "{% if is_state(\"input_select.radio_station\", \"Радио Jazz\") -%}\n\
\ http://nashe1.hostingradio.ru/jazz-128.mp3\n{% elif is_state(\"input_select.radio_station\"\
, \"Monte Carlo\") -%}\n http://montecarlo.hostingradio.ru/montecarlo128.mp3\n\
{% elif is_state(\"input_select.radio_station\", \"Monte Carlo Lounge\") -%}\n\
\ http://stream.zeno.fm/953wvvz4gseuv\n{% elif is_state(\"input_select.radio_station\"\
, \"Наше Радио\") -%}\n http://nashe5.hostingradio.ru/nashe-128.mp3\n{% elif\
\ is_state(\"input_select.radio_station\", \"ENERGY\") -%}\n http://ic2.101.ru:8000/v1_1\n\
{% elif is_state(\"input_select.radio_station\", \"Русское Радио\") -%}\n\
\ http://rusradio.hostingradio.ru/rusradio128.mp3\n{% elif is_state(\"input_select.radio_station\"\
, \"Maximum\") -%}\n http://maximum.hostingradio.ru/maximum128.mp3\n{% elif\
\ is_state(\"input_select.radio_station\", \"Детское Радио\") -%}\n http://ic7.101.ru:8000/a199\n\
{% elif is_state(\"input_select.radio_station\", \"Детское Радио (Старое радио)\"\
) -%}\n http://195.91.237.50:8000/detskoe128\n{% endif %}"
- alias: Radio - Selected Name to Device
id: fda46b3d-2b94-4aeb-b58d-69d537756cd5
triggers:
- trigger: homeassistant
event: start
- trigger: state
entity_id: input_select.output_device
action:
- action: input_text.set_value
target:
entity_id: input_text.output_device_to_play
data:
value: "{% if is_state(\"input_select.output_device\", \"Гостинная (TV)\") -%}\n\
\ media_player.gostinaia\n{% elif is_state(\"input_select.output_device\"\
, \"Детская (TV)\") -%}\n media_player.detskaia\n{% elif is_state(\"input_select.output_device\"\
, \"Ванная (Home Mini)\") -%}\n media_player.mini_v_vannoi\n{% elif is_state(\"\
input_select.output_device\", \"Гостинная (Яндекс)\") -%}\n media_player.yandex_station_mini2_gostinaia\n\
{% elif is_state(\"input_select.output_device\", \"Спальня (Яндекс)\") -%}\n\
\ media_player.yandex_station_mini2_spalnia\n{% elif is_state(\"input_select.output_device\"\
, \"Детская (Яндекс)\") -%}\n media_player.yandex_station_lite_detskaia\n\
{% endif %}"
- alias: Radio - Volume Control
id: a5915a17-ec28-4adf-a3c3-6ac08f71d11f
triggers:
trigger: state
entity_id: input_number.volume_radio
actions:
action: media_player.volume_set
target:
entity_id: '{{ states(''input_text.output_device_to_play'') }}'
data:
volume_level: '{{ states(''input_number.volume_radio'') }}'
- alias: Samsung TV ue43ru7470 Turn On
triggers:
- trigger: samsungtv.turn_on
entity_id: media_player.ue43ru7470
actions:
- action: wake_on_lan.send_magic_packet
data:
mac: 8c:79:f5:51:2f:d1
- alias: Samsung TV ue32es5500 Turn On
triggers:
- trigger: samsungtv.turn_on
entity_id: media_player.ue32es5500
actions:
- action: shell_command.chromecast_tv_on
data:
ip_addr: 172.16.16.194
- alias: Samsung TV ue46es5507 Turn On
triggers:
- trigger: samsungtv.turn_on
entity_id: media_player.ue46es5507
actions:
- action: shell_command.chromecast_tv_on
data:
ip_addr: 172.16.16.211
- alias: 'Scene: Children go to Bed'
id: 4ecf7cf0-fc2e-4769-9d95-548dc4d52ba2
mode: restart
triggers:
- trigger: event
event_type: yandex_intent
event_data:
text: Дети ложатся спать
id: sleep
actions:
choose:
- alias: Go to Bed
conditions:
- condition: trigger
id: sleep
sequence:
- action: scene.turn_on
target:
entity_id: scene.children_go_to_bed
data:
transition: 2
- action: script.turn_off
target:
entity_id: script.nursery_alice_stop_watchdog_1h
- wait_for_trigger:
- trigger: state
entity_id: media_player.yandex_station_lite_detskaia
to:
- 'off'
- paused
timeout: 01:00:00
continue_on_timeout: false
- action: script.turn_on
target:
entity_id: script.nursery_alice_stop_watchdog_1h
- alias: Sync Shopping List with Yandex
id: 930a85ab-d531-42e7-a1a6-86bdfe0a628f
mode: single
max_exceeded: silent
triggers:
- trigger: time_pattern
minutes: '35'
id: time
- trigger: event
event_type: shopping_list_updated
id: event
- trigger: state
entity_id:
- person.alexander
- person.irina
to: not_home
id: state
actions:
- wait_template: '{{ is_state_attr(''media_player.yandex_station_lite_prikhozhaya'',
''alice_state'', ''IDLE'') }}'
- if:
- alias: Event trigger
condition: trigger
id: event
then:
- delay: 00:05:00
- if:
- '{{ state_attr(''media_player.yandex_station_lite_prikhozhaya'', ''volume_level'')
!= 0.1 }}'
then:
- repeat:
sequence:
- action: media_player.volume_set
target:
entity_id: media_player.yandex_station_lite_prikhozhaya
data:
volume_level: 0.1
- wait_template: '{{ state_attr(''media_player.yandex_station_lite_prikhozhaya'',
''volume_level'') == 0.1 }}'
timeout: 00:00:01
until:
- '{{ state_attr(''media_player.yandex_station_lite_prikhozhaya'', ''volume_level'')
== 0.1 }}'
- '{{ repeat.index <= 3 }}'
- if:
- '{{ state_attr(''media_player.yandex_station_lite_prikhozhaya'', ''is_volume_muted'')
!= true }}'
then:
- repeat:
sequence:
- action: media_player.volume_mute
target:
entity_id: media_player.yandex_station_lite_prikhozhaya
data:
is_volume_muted: true
- wait_template: '{{ state_attr(''media_player.yandex_station_lite_prikhozhaya'',
''is_volume_muted'') == true }}'
timeout: 00:00:01
until:
- '{{ state_attr(''media_player.yandex_station_lite_prikhozhaya'', ''is_volume_muted'')
== true }}'
- '{{ repeat.index <= 3 }}'
- delay: 00:00:01
- action: media_player.play_media
target:
entity_id: media_player.yandex_station_lite_prikhozhaya
data:
media_content_id: update
media_content_type: shopping_list
- delay: 00:00:03
- wait_template: '{{ is_state_attr(''media_player.yandex_station_lite_prikhozhaya'',
''alice_state'', ''LISTENING'') }}'
- action: media_player.volume_mute
target:
entity_id: media_player.yandex_station_lite_prikhozhaya
data:
is_volume_muted: false
- alias: Планшет в Прихожей - включение экрана
id: d8f01254-9cde-41a8-b35a-f296621d3ac9
mode: queued
max: 5
max_exceeded: silent
triggers:
- trigger: state
entity_id: light.sonoff_1000f2f14a
not_to:
- unavailable
- unknown
not_from:
- unavailable
- unknown
actions:
choose:
- alias: To On
conditions: '{{ trigger.from_state.state == ''off'' and trigger.to_state.state
== ''on'' }}'
sequence:
- action: switch.turn_on
target:
entity_id: switch.galaxy_tab_a_8_0_2019_screen
- action: media_player.volume_set
target:
entity_id: media_player.galaxy_tab_a_8_0_2019
data:
volume_level: "{% if is_state('binary_sensor.time_between_21_08','off')\
\ -%}\n 0.8\n{% else -%}\n 0.3\n{% endif -%}"
- alias: To Off
conditions: '{{ trigger.from_state.state == ''on'' and trigger.to_state.state
== ''off'' }}'
sequence:
- action: switch.turn_off
target:
entity_id: switch.galaxy_tab_a_8_0_2019_screen
- action: media_player.volume_set
target:
entity_id: media_player.galaxy_tab_a_8_0_2019
data:
volume_level: 0
- action: fully_kiosk.load_url
target:
device_id: 41638a8b36f2ac6228aed99d142fd286
data:
url: about:blank
- alias: Планшет в Прихожей - поддержание заряда
id: 82fb6789-4385-44cc-b721-90b892063447
max_exceeded: silent
triggers:
- trigger: numeric_state
entity_id:
- sensor.galaxy_tab_a_8_0_2019_battery
- sensor.sm_t295_hallway_battery_level
below: 30
for:
minutes: 5
id: low
- trigger: numeric_state
entity_id:
- sensor.galaxy_tab_a_8_0_2019_battery
- sensor.sm_t295_hallway_battery_level
above: 80
for:
minutes: 5
id: hight
actions:
choose:
- alias: Battery Low
conditions:
- condition: trigger
id: low
sequence:
- condition: '{{ is_state(''switch.sonoff_mini_r2_02_switch'', ''off'') }}'
- action: switch.turn_on
target:
entity_id: switch.sonoff_mini_r2_02_switch
- alias: Battery Charged
conditions:
- condition: trigger
id: hight
sequence:
- condition: '{{ is_state(''switch.sonoff_mini_r2_02_switch'', ''on'') }}'
- action: switch.turn_off
target:
entity_id: switch.sonoff_mini_r2_02_switch
- alias: 'Sonoff Dongles: Persistent Notifications'
id: 2f4e6840-deb7-4629-80f1-8a34347e64e0
mode: queued
max: 5
triggers:
- trigger: state
entity_id: binary_sensor.sonoff_dongle_e_usb_stick_exist
not_from:
- unavailable
- unknown
id: e
- trigger: state
entity_id: binary_sensor.sonoff_dongle_p_usb_stick_exist
not_from:
- unavailable
- unknown
id: p
actions:
- choose:
- conditions: '{{ trigger.id == ''e'' }}'
sequence:
- choose:
- conditions: '{{ trigger.to_state.state == ''off'' }}'
sequence:
- action: persistent_notification.create
data:
title: Sonoff ZBDongle-E Disconnected
message: 'Sonoff ZBDongle-E **отключен** от VM,
недоступны все устройства интеграции **ZHA**.
'
notification_id: zbe_disconnected
- conditions: '{{ trigger.to_state.state == ''on'' }}'
sequence:
- action: persistent_notification.dismiss
data:
notification_id: zbe_disconnected
- action: persistent_notification.create
data:
title: Sonoff ZBDongle-E Connected
message: 'Sonoff ZBDongle-E **подключен**,
проверьте работу **ZHA** и **Multiprotocol Add-on**.
'
notification_id: zbe_connected
- conditions: '{{ trigger.id == ''p'' }}'
sequence:
- choose:
- conditions: '{{ trigger.to_state.state == ''off'' }}'
sequence:
- action: persistent_notification.create
data:
title: Sonoff ZBDongle-P Disconnected
message: 'Sonoff ZBDongle-P **отключен** от VM,
недоступны все устройства **Zigbee2MQTT**.
'
notification_id: zbp_disconnected
- conditions: '{{ trigger.to_state.state == ''on'' }}'
sequence:
- action: persistent_notification.dismiss
data:
notification_id: zbp_disconnected
- action: persistent_notification.create
data:
title: Sonoff ZBDongle-P Connected
message: 'Sonoff ZBDongle-P **подключен**,
проверьте работу **Zigbee2MQTT**.
'
notification_id: zbp_connected
- alias: 'Sonoff Dongles: Attach USB Stick to HA VM'
id: 165f7294-7880-4aaf-955c-d5f301bb1e72
mode: parallel
max: 5
triggers:
- trigger: state
entity_id: binary_sensor.sonoff_dongle_e_usb_stick_exist
to: 'off'
id: e
- trigger: state
entity_id: binary_sensor.sonoff_dongle_p_usb_stick_exist
to: 'off'
id: p
actions:
- choose:
- conditions: '{{ trigger.id == ''e'' }}'
sequence:
- parallel:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
title: '*Внимание*'
message: 'Sonoff Dongle E отключен от VM, будет запущен процесс автоматического
подключения.
'
- repeat:
sequence:
- action: shell_command.attach_sonoff_dongle_e_to_ha_vm
- delay: 00:03:00
until:
- condition: state
entity_id: binary_sensor.sonoff_dongle_e_usb_stick_exist
state: 'on'
- conditions: '{{ trigger.id == ''p'' }}'
sequence:
- parallel:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
title: '*Внимание*'
message: 'Sonoff Dongle P отключен от VM, будет запущен процесс автоматического
подключения.
'
- repeat:
sequence:
- action: shell_command.attach_sonoff_dongle_p_to_ha_vm
- delay: 00:03:00
until:
- condition: state
entity_id: binary_sensor.sonoff_dongle_p_usb_stick_exist
state: 'on'
- alias: 'Sonoff Dongles: USB Stick Attached to HA VM'
id: cc1601bd-a416-4fb1-9af9-4a436b7557e9
mode: queued
max: 5
triggers:
- trigger: state
entity_id: binary_sensor.sonoff_dongle_e_usb_stick_exist
from: 'off'
to: 'on'
id: e
- trigger: state
entity_id: binary_sensor.sonoff_dongle_p_usb_stick_exist
from: 'off'
to: 'on'
id: p
actions:
- choose:
- conditions: '{{ trigger.id == ''e'' }}'
sequence:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
title: '*Внимание*'
message: 'Sonoff Dongle E подключен.
'
inline_keyboard:
- Перезапустить HA:/sd_ha_restart, Перезагрузить VM:/sd_vm_reboot
- conditions: '{{ trigger.id == ''p'' }}'
sequence:
- action: telegram_bot.send_message
data:
target: secret tlg_group_system
title: '*Внимание*'
message: 'Sonoff Dongle P подключен.
'
inline_keyboard:
- Перезапустить HA:/sd_ha_restart, Перезагрузить VM:/sd_vm_reboot
- alias: Sonoff Dongles - Restart HA
id: a5621d7e-91e5-4f14-a6b2-80c774d415ac
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /sd_ha_restart
actions:
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: Команда отправлена
- action: telegram_bot.edit_replymarkup
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
inline_keyboard: []
- action: homeassistant.restart
- alias: Sonoff Dongles - Reboot VM
id: 08dfe08a-3901-46f3-b16a-e807edf80986
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /sd_vm_reboot
actions:
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: Команда отправлена
- action: telegram_bot.edit_replymarkup
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
inline_keyboard: []
- action: hassio.host_reboot
- alias: Оповещение о начале уборки
id: 61fb954b-3450-4fc6-9848-cc5304b54a16
triggers:
trigger: state
entity_id: vacuum.xiaomi_vacuum_cleaner
to: cleaning
conditions:
condition: template
value_template: '{{ trigger.from_state.state = ''unavailable''}}
'
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
message: '_Mi Robot_: начал уборку.'
inline_keyboard:
- Остановить:/vacuum_stop, На базу:/vacuum_go_home
- alias: Vacuum - Telegram Control - Stop
id: 78e4ee4f-d0d7-4d23-9e3c-4ec125f19400
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /vacuum_stop
actions:
- action: vacuum.pause
target:
entity_id: vacuum.xiaomi_vacuum_cleaner
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: Команда отправлена
- action: telegram_bot.edit_message
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
message: '_Mi Robot_: начал уборку.
Уборка остановлена.
'
inline_keyboard:
- На базу:/vacuum_go_home
- alias: Vacuum - Telegram Control - Go to Base
id: 0b1fd434-4044-4ce7-ab8a-262d6250407a
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /vacuum_go_home
actions:
- action: vacuum.pause
target:
entity_id: vacuum.xiaomi_vacuum_cleaner
- delay: 1
- action: vacuum.return_to_base
target:
entity_id: vacuum.xiaomi_vacuum_cleaner
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: Команда отправлена
- action: telegram_bot.edit_message
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
message: '_Mi Robot_: начал уборку.
Уборка остановлена, робот отправлен на базу.
'
- alias: Оповещение о возращении пылесоса на базу [notify to group flat]
id: 68311ec4-1030-4d7d-a2ea-e9cb21f7f40c
triggers:
trigger: state
entity_id: vacuum.xiaomi_vacuum_cleaner
to: docked
conditions:
condition: template
value_template: '{{ trigger.from_state.state = ''unavailable''}}
'
actions:
- action: notify.telegram_group_flat_1
data:
message: '_Mi Robot_: вернулся на базу (закончил уборку).'
- alias: Оповещение о забытом пылесосе [notify to group flat]
id: db76ec80-b5d6-4991-8a6c-9272b25c1a39
triggers:
trigger: state
entity_id: vacuum.xiaomi_vacuum_cleaner
to: idle
for:
minutes: 15
actions:
- action: notify.telegram_group_flat_1
data:
message: '_Mi Robot_: потерялся и бездельничает, отправляем на базу.'
- action: vacuum.return_to_base
target:
entity_id: vacuum.xiaomi_vacuum_cleaner
- alias: Оповещение об ошибке [notify to group flat]
id: fe6bb5c1-f886-4161-bad7-4bf04be83258
triggers:
trigger: state
entity_id: vacuum.xiaomi_vacuum_cleaner
to: error
conditions:
condition: template
value_template: '{{ trigger.from_state.state = ''unavailable''}}
'
actions:
- action: notify.telegram_group_flat_1
data:
message: '_Mi Robot_: Произошла *ошибка*
{{ state_attr(''vacuum.xiaomi_vacuum_cleaner'', "error") }}
'
- alias: Ежедневная уборка по будням [утро]
id: 67acac52-bf44-4661-9140-2e40f0006175
triggers:
trigger: state
entity_id: group.family_persons
to: not_home
for:
minutes: 20
conditions:
- and:
- condition: time
after: 08:30:00
before: '10:30:00'
weekday:
- mon
- tue
- wed
- thu
- fri
- condition: template
value_template: '{{ now().day = states.automation.ezhednevnaia_uborka_po_budniam_utro.attributes.last_triggered.day
| default(0) }}'
actions:
- action: vacuum.set_fan_speed
target:
entity_id: vacuum.xiaomi_vacuum_cleaner
data:
fan_speed: Turbo
- action: vacuum.start
target:
entity_id: vacuum.xiaomi_vacuum_cleaner
- alias: Регулярная уборка прихожей
id: 6c64060c-0a65-4caf-8064-1d5cdfea50a3
triggers:
trigger: state
entity_id: binary_sensor.0x158d00031c790f_contact
from: 'on'
to: 'off'
conditions:
- and:
- condition: time
after: 09:30:00
before: '21:30:00'
- condition: template
value_template: '{{ (as_timestamp(now())-(as_timestamp(state_attr("automation.reguliarnaia_uborka_prikhozhei",
"last_triggered")))>480) }}'
- or:
- condition: state
entity_id: vacuum.xiaomi_vacuum_cleaner
state: docked
- condition: state
entity_id: vacuum.xiaomi_vacuum_cleaner
state: idle
actions:
- action: script.turn_on
target:
entity_id: script.start_vacuum_hallway_by_door_sensor
- alias: Set cleaning mode
id: 8fef5cc1-030e-4549-91b4-ffe25207672c
triggers:
trigger: state
entity_id: input_select.vacuum_power
actions:
- action: "{% if trigger.to_state.state == 'Silent' %}\n script.set_vacuum_power_silent\n\
{% elif trigger.to_state.state == 'Standard' %}\n script.set_vacuum_power_standard\n\
{% elif trigger.to_state.state == 'Medium' %}\n script.set_vacuum_power_medium\n\
{% elif trigger.to_state.state == 'Turbo' %}\n script.set_vacuum_power_turbo\n\
{% elif trigger.to_state.state == 'Gentle' %}\n script.set_vacuum_power_gentle\n\
{% endif %}\n"
- alias: Wakeup Radio - Childrens
id: 75d1f4fc-c40b-433a-b6bc-ed480b53365e
triggers:
trigger: time
at: input_datetime.wakeup_radio_in_nursery
conditions:
- condition: state
entity_id: binary_sensor.workday_sensor
state: 'on'
- condition: state
entity_id: calendar.semia_alexander_borisov_school_vacation_egor
state: 'off'
- condition: state
entity_id: calendar.semia_alexander_borisov_school_vacation_kirill
state: 'off'
actions:
- if:
- '{{ state_attr(''media_player.yandex_station_lite_detskaia'', ''volume_level'')
!= 0.1 }}'
then:
- repeat:
sequence:
- action: media_player.volume_set
target:
entity_id: media_player.yandex_station_lite_detskaia
data:
volume_level: 0.1
- wait_template: '{{ state_attr(''media_player.yandex_station_lite_detskaia'',
''volume_level'') == 0.1 }}'
timeout: 00:00:01
until:
- '{{ state_attr(''media_player.yandex_station_lite_detskaia'', ''volume_level'')
== 0.1 }}'
- '{{ repeat.index <= 3 }}'
- if:
- '{{ state_attr(''media_player.yandex_station_lite_detskaia'', ''is_volume_muted'')
!= true }}'
then:
- repeat:
sequence:
- action: media_player.volume_mute
target:
entity_id: media_player.yandex_station_lite_detskaia
data:
is_volume_muted: true
- wait_template: '{{ state_attr(''media_player.yandex_station_lite_detskaia'',
''is_volume_muted'') == true }}'
timeout: 00:00:01
until:
- '{{ state_attr(''media_player.yandex_station_lite_detskaia'', ''is_volume_muted'')
== true }}'
- '{{ repeat.index <= 3 }}'
- delay: 00:00:01
- action: yandex_station.send_command
target:
entity_id: media_player.yandex_station_lite_detskaia
data:
command: sendText
text: Включи {{ states('input_text.wakeup_radio_in_nursery_query') }}
- delay: 00:00:10
- if:
- '{{ state_attr(''media_player.yandex_station_lite_detskaia'', ''volume_level'')
!= 0.1 }}'
then:
- action: media_player.volume_set
target:
entity_id: media_player.yandex_station_lite_detskaia
data:
volume_level: '0.1'
- alias: Volume Up 4 times
repeat:
while:
- condition: template
value_template: '{{ repeat.index <= 4 }}'
sequence:
- delay: 00:03:00
- action: media_player.volume_up
target:
entity_id: media_player.yandex_station_lite_detskaia
- action: yandex_station.send_command
target:
entity_id: media_player.yandex_station_lite_detskaia
data:
command: sendText
text: Повтори за мной 'Доброе утро дети, пора вставать!'
- alias: Water Leak Detected
id: 2eb96392-3d8a-41b7-87f2-7c6e5c5b6232
triggers:
trigger: state
entity_id:
- binary_sensor.neptun_water_leakage
- binary_sensor.0x158d000400e77d_moisture
- binary_sensor.0x158d0004030d84_moisture
- binary_sensor.lumi_lumi_sensor_wleak_aq1_ias_zone
from: 'off'
to: 'on'
actions:
- action: script.turn_on
target:
entity_id: script.water_valves_close
- alias: Catch Neptun Activated
id: 0e013823-d5f8-4362-b7aa-2be3c25da064
mode: queued
triggers:
trigger: state
entity_id: binary_sensor.lumi_lumi_sensor_magnet_opening
from: 'on'
to: 'off'
for: 00:00:05
conditions:
condition: state
entity_id: input_boolean.neptun_activated
state: 'off'
actions:
- action: input_boolean.turn_on
target:
entity_id: input_boolean.neptun_activated
- alias: Catch Neptun DeActivated
id: f17481ec-0be2-4774-b2cb-53fffab68781
mode: queued
triggers:
trigger: state
entity_id: switch.sonoff_1000b68886
from: 'off'
to: 'on'
conditions:
condition: state
entity_id: input_boolean.neptun_activated
state: 'on'
actions:
- action: input_boolean.turn_off
target:
entity_id: input_boolean.neptun_activated
- alias: Restart Neptun [twice a month]
id: 896b9256-93fc-41d2-8ffc-a4c6503f62e0
triggers:
- trigger: time
at: '11:00:00'
conditions:
- and:
- condition: time
weekday: mon
- condition: template
value_template: '{{ (as_timestamp(now())|timestamp_custom (''%W'') | int % 2)
== 1 }}'
actions:
- action: switch.turn_off
target:
entity_id: switch.sonoff_1000b68886
- delay: 5
- action: switch.turn_on
target:
entity_id: switch.sonoff_1000b68886
- action: notify.telegram_group_flat_1
data:
message: '_INFO:_ Нептун был перезапущен.
'
- alias: PowerOff Valves After 60 Seconds
id: ac6042cd-ab15-4ff2-a0ed-9f873830d221
triggers:
- trigger: state
entity_id:
- switch.rele_aqara_vodoprovodnye_krany_l1
- switch.rele_aqara_vodoprovodnye_krany_l2
to: 'on'
for: 00:01:00
actions:
action: switch.turn_off
target:
entity_id: '{{ trigger.entity_id }}'
- alias: Valves Relay Software Interlock
id: f16be388-8c31-43d0-905b-d9c31968414c
triggers:
- trigger: state
entity_id: switch.rele_aqara_vodoprovodnye_krany_l1
to: 'on'
id: open
- trigger: state
entity_id: switch.rele_aqara_vodoprovodnye_krany_l2
to: 'on'
id: close
actions:
- choose:
- alias: open_channel_to_on
conditions:
- condition: trigger
id: open
sequence:
- if:
- '{{ is_state(''switch.rele_aqara_vodoprovodnye_krany_l2'', ''on'') }}'
then:
- action: switch.turn_off
target:
entity_id: switch.rele_aqara_vodoprovodnye_krany_l2
- alias: close_channel_to_on
conditions:
- condition: trigger
id: close
sequence:
- if:
- '{{ is_state(''switch.rele_aqara_vodoprovodnye_krany_l1'', ''on'') }}'
then:
- action: switch.turn_off
target:
entity_id: switch.rele_aqara_vodoprovodnye_krany_l1
- alias: Оповещения об активации датчиков [notify to group flat]
id: 54d437ce-2ec6-4779-93cb-3f36fe99b44c
triggers:
- trigger: state
entity_id: binary_sensor.neptun_water_leakage
to: 'on'
id: neptun_on
- trigger: state
entity_id: binary_sensor.0x158d000400e77d_moisture
from: 'off'
to: 'on'
id: aqara_storeroom_on
- trigger: state
entity_id: binary_sensor.0x158d0004030d84_moisture
from: 'off'
to: 'on'
id: aqara_under_bath_on
- trigger: state
entity_id: binary_sensor.lumi_lumi_sensor_wleak_aq1_ias_zone
from: 'off'
to: 'on'
id: aqara_03_near_door
actions:
- choose:
- alias: neptun_on
conditions:
- condition: trigger
id: neptun_on
sequence:
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
title: '*Внимание*'
message: 'Сработал датчик протечки *Нептун*.
Водопроводные краны перекрыты
Необходимо проверить Кухню, Ванную, Туалет, Кладовую.
'
inline_keyboard:
- Открыть краны:/water_valves_open
- alias: aqara_storeroom_on
conditions:
- condition: trigger
id: aqara_storeroom_on
sequence:
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
title: '*Внимание*'
message: 'Сработал датчик протечки Aqara в *Кладовой*.
Водопроводные краны перекрыты
Необходимо проверить наличие воды за стиральной машиной.
'
inline_keyboard:
- Открыть краны:/water_valves_open
- alias: aqara_under_bath_on
conditions:
- condition: trigger
id: aqara_under_bath_on
sequence:
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
title: '*Внимание*'
message: 'Сработал датчик протечки Aqara в *Ванной*.
Водопроводные краны перекрыты
Необходимо проверить наличие воды *слева под ванной*.
'
inline_keyboard:
- Открыть краны:/water_valves_open
- alias: aqara_03_near_door
conditions:
- condition: trigger
id: aqara_03_near_door
sequence:
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
title: '*Внимание*'
message: 'Сработал датчик протечки Aqara в *Ванной*.
Водопроводные краны перекрыты
Необходимо проверить наличие воды *рядом с ванной, справа*.
'
inline_keyboard:
- Открыть краны:/water_valves_open
- alias: Оповещение о деактивации Нептуна [notify to group flat]
id: 344fff46-b0f1-41c3-b6e7-6386b5bc1256
triggers:
trigger: state
entity_id: binary_sensor.neptun_water_leakage
to: 'off'
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
message: Нептун деактивирован.
- alias: Оповещение об отключенном Нептуне (>2 мин)
id: 1a017a47-40b1-4315-892e-36760a8e86ec
triggers:
trigger: state
entity_id: switch.sonoff_1000b68886
to: 'off'
for: 00:02:00
actions:
- action: telegram_bot.send_message
data:
target: secret tlg_group_flat_1
title: '*Внимание*'
message: 'Питание контроллера Нептун отключено более 2х минут
'
inline_keyboard:
- Включить:/neptune_poweron
- alias: Neptune - Telegram Control - Open
id: d42cd9f6-1a89-4116-8348-d99970407b75
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /neptune_poweron
actions:
- action: switch.turn_on
target:
entity_id: switch.sonoff_1000b68886
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: Команда отправлена
- action: telegram_bot.edit_message
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
message: 'Питание контроллера Нептун отключено более 2х минут
Нептун включен.
'
- alias: Water Valves - Telegram Control - Open
id: b5321723-bc10-4146-88a5-7080d0fe70a8
triggers:
trigger: event
event_type: telegram_callback
event_data:
data: /water_valves_open
actions:
- action: script.turn_on
target:
entity_id: script.water_valves_open
- action: telegram_bot.answer_callback_query
data:
callback_query_id: '{{ trigger.event.data.id }}'
message: Команда отправлена
- action: telegram_bot.edit_replymarkup
data:
message_id: '{{ trigger.event.data.message.message_id }}'
chat_id: '{{ trigger.event.data.chat_id }}'
inline_keyboard: []
- alias: Wait for script.water_valves_open to stop
wait_for_trigger:
- trigger: state
entity_id: script.water_valves_open
from: 'on'
to: 'off'
timeout: 00:00:40
continue_on_timeout: false
- action: telegram_bot.send_message
data:
target: '{{ trigger.event.data.chat_id }}'
message: Водопроводные краны открыты.
- alias: Update Saures Sensors after HA Start
id: c0192c64-d64b-45b6-ab2e-91170c12f591
triggers:
- trigger: homeassistant
event: start
actions:
- wait_template: '{{ has_value(''sensor.saures_api_sid'') }}'
- action: homeassistant.update_entity
target:
entity_id: sensor.saures_controller_1113513_battery
- alias: Ya Music - Selected Name to Device
id: 2a16fa66-67a7-4960-95b0-9b766528f44d
triggers:
- trigger: homeassistant
event: start
- trigger: state
entity_id: input_select.yandex_station_start_stream_to
actions:
- action: input_text.set_value
target:
entity_id: input_text.yandex_station_device_to_play
data:
value: "{% if is_state(\"input_select.yandex_station_start_stream_to\", \"Ванная\
\ (Home Mini)\") -%}\n Мини в Ванной\n{% elif is_state(\"input_select.yandex_station_start_stream_to\"\
, \"Гостинная (Яндекс)\") -%}\n media_player.yandex_station_mini2_gostinaia\n\
{% elif is_state(\"input_select.yandex_station_start_stream_to\", \"Спальня\
\ (Яндекс)\") -%}\n media_player.yandex_station_mini2_spalnia\n{% elif is_state(\"\
input_select.yandex_station_start_stream_to\", \"Детская (Яндекс)\") -%}\n\
\ media_player.yandex_station_lite_detskaia\n{% endif %}"
- alias: Ya Music - Volume Control
id: 0303b471-3e9c-436a-84c0-cc5784eee706
triggers:
trigger: state
entity_id: input_number.volume_ya_music
actions:
- if:
- '{{ ''Мини в Ванной'' in states(''input_text.yandex_station_device_to_play'')
}}'
then:
- action: media_player.volume_set
target:
entity_id: media_player.mini_v_vannoi
data:
volume_level: '{{ states(''input_number.volume_ya_music'') }}'
else:
- action: media_player.volume_set
target:
entity_id: '{{ states(''input_text.yandex_station_device_to_play'') }}'
data:
volume_level: '{{ states(''input_number.volume_ya_music'') }}'
- alias: Синхронизация состояния Алисы в Прихожей с Мини в Ванной
id: 82c05e64-0259-4f54-8d17-952d241ef34e
triggers:
- trigger: state
entity_id: media_player.mini_v_vannoi
from: playing
to: 'off'
conditions:
condition: state
entity_id: media_player.yandex_station_lite_prikhozhaya
state: playing
actions:
- action: media_player.media_pause
target:
entity_id: media_player.yandex_station_lite_prikhozhaya
- delay: 00:00:01
- action: media_player.select_source
target:
entity_id: media_player.yandex_station_lite_prikhozhaya
data:
source: Станция
- alias: Stop Yandex Station
triggers:
- trigger: event
event_type: yandex_intent
event_data:
text: Выключи колонку в детской
id: nursery
- trigger: event
event_type: yandex_intent
event_data:
text: Выключи колонку в гостиной
id: livingroom
- trigger: event
event_type: yandex_intent
event_data:
text: Выключи колонку на кухне
id: livingroom
- trigger: event
event_type: yandex_intent
event_data:
text: Выключи колонку в спальне
id: bedroom
- trigger: event
event_type: yandex_intent
event_data:
text: Выключи колонку в прихожей
id: hallway
actions:
- choose:
- conditions: '{{ trigger.id == ''nursery'' }}'
sequence:
- action: media_player.turn_off
target:
entity_id: media_player.yandex_station_lite_detskaia
- conditions: '{{ trigger.id == ''livingroom'' }}'
sequence:
- action: media_player.turn_off
target:
entity_id: media_player.yandex_station_mini2_gostinaia
- conditions: '{{ trigger.id == ''bedroom'' }}'
sequence:
- action: media_player.turn_off
target:
entity_id: media_player.yandex_station_mini2_spalnia
- conditions: '{{ trigger.id == ''hallway'' }}'
sequence:
- action: media_player.turn_off
target:
entity_id: media_player.yandex_station_lite_prikhozhaya