Перейти к содержанию

Приглушение ТВ на время команды: различия между версиями

Материал из Wiki yaboard
Нет описания правки
Нет описания правки
 
(не показано 8 промежуточных версий этого же участника)
Строка 1: Строка 1:
'''Отключение звука телевизора при общении с Алисой.'''
{{metadesc | Лайфхак: временно выключаем звук ТВ при помощи Home Assistant }}
__NOEDITSECTION__
__TOC__


При общении с колонкой она слышит в том числе и то, что говорят из телевизора. Приходится брать пульт и выключать звук вручную. Вся прелесть использования голосового помощника сходит на нет.
Нам потребуется:
Home assistent, ir remote, колонка с алисой, телевизор.
У меня не смарт тв, но имеется порт Ethernet для DLNA. В моем случае автоматизация проверяет, включен ли телевизор, чтобы не сотрясать воздух за зря. Если смарт тв и он заведен в HA, то Ir remote не понадобится.


https://youtu.be/ztIGfjLeR5U
== Проблема ==


Интеграция от AlexIT
https://github.com/AlexxIT/YandexStation
(Как тут у вас ссылкой добавить? нажимаю на понеле- добавить ссылку, заполняю форму и тишина....)
Эта интеграция умеет выдавать в HA состояние колонки. Если она имеет статус не Idle, то срабатывает цепочка в Node red. Нужно будет дополнительно создать Бинарный переключатель для этой автоматизации. Skript отправляет команду по mqtt на ir remote (прошивка Tasmota).


[[Файл:Node red.png]]
При общении с Алисой (в первую очередь в колонке) она слышит все голоса в комнате, в том числе из телевизора - и порой реагирует на неё.
 
Приходится брать пульт и выключать звук вручную, и вся прелесть использования голосового помощника сходит на нет.
 
 
== Решение ==
 
Нам понадобится:
* Home Assistant,
* IR-Remote,
* Колонка с алисой,
* Телевизор.
* [https://github.com/AlexxIT/YandexStation Интеграция от AlexIT]. Она умеет отдавать в HA состояние колонки. Если колонка не простаивает (статус Idle), тогда сработает цепочка в Node-RED.
* Дополнительный "Бинарный переключатель" для автоматизации: Skript отправляет команду по MQTT на IR-Remote (прошивка Tasmota).
 
 
У меня не смарт-ТВ, но имеется порт Ethernet для DLNA.
Автоматизация проверяет, включен ли телевизор, чтобы не производить ненужных действий.
Если телевизор имеет смарт-функции и заведен как устройство в Home Assistant - IR-Remote не понадобится.
 
 
[[Файл:Node red.png| Дополнительный бинарный переключатель]]
 
 
== Код Node-RED и комментарии ==
 
 
Данный код добавляется в Node-RED через импорт. Далее необходимо перенастроить ноды под свою конфигурацию. Дополнительно нужно создать бинарный переключатель tvmute в configuration.yaml
 
[[Файл:MuteTV-node-RED_01.png]]
 
[[Файл:MuteTV-node-RED_02.png]]
 
[[Файл:MuteTV-node-RED_03.png]]  


Нужно создать дополнительно один бинарный переключатель.
Код Node red:
{{#spoiler:show=Показать код | hide=Спрятать код |
{{#spoiler:show=Показать код | hide=Спрятать код |
<nowiki>
<nowiki>
Строка 22: Строка 47:
</nowiki>
</nowiki>
}}
}}
== Результат ==
И самое приятное, ради всего все усилия:
<youtube>ztIGfjLeR5U</youtube>
Успехов в реализации!
[[Category:Умный дом]]
[[Category:Решение проблем]]

Текущая версия от 06:20, 10 октября 2020

Проблема

При общении с Алисой (в первую очередь в колонке) она слышит все голоса в комнате, в том числе из телевизора - и порой реагирует на неё.

Приходится брать пульт и выключать звук вручную, и вся прелесть использования голосового помощника сходит на нет.

Решение

Нам понадобится:

  • Home Assistant,
  • IR-Remote,
  • Колонка с алисой,
  • Телевизор.
  • Интеграция от AlexIT. Она умеет отдавать в HA состояние колонки. Если колонка не простаивает (статус Idle), тогда сработает цепочка в Node-RED.
  • Дополнительный "Бинарный переключатель" для автоматизации: Skript отправляет команду по MQTT на IR-Remote (прошивка Tasmota).
У меня не смарт-ТВ, но имеется порт Ethernet для DLNA.
Автоматизация проверяет, включен ли телевизор, чтобы не производить ненужных действий. 
Если телевизор имеет смарт-функции и заведен как устройство в Home Assistant - IR-Remote не понадобится.


Дополнительный бинарный переключатель

Код Node-RED и комментарии

Данный код добавляется в Node-RED через импорт. Далее необходимо перенастроить ноды под свою конфигурацию. Дополнительно нужно создать бинарный переключатель tvmute в configuration.yaml

<button type="button" class="spoilers-button" aria-expanded="false">Показать код</button>

Результат

И самое приятное, ради всего все усилия:


Успехов в реализации!