<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0"
  xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
  xmlns:atom="http://www.w3.org/2005/Atom">

<channel>

<title>timsa.ru: заметки с тегом smarthome</title>
<link>https://timsa.ru/tags/smarthome/</link>
<description>Моя записная книжка. Комментарии отключены из-за спама. Для вопросов используйте эту страничку</description>
<author></author>
<language>ru</language>
<generator>Aegea 11.0 (v4079)</generator>

<itunes:subtitle>Моя записная книжка. Комментарии отключены из-за спама. Для вопросов используйте эту страничку</itunes:subtitle>
<itunes:image href="" />
<itunes:explicit></itunes:explicit>

<item>
<title>Установка homeassistant</title>
<guid isPermaLink="false">194</guid>
<link>https://timsa.ru/all/homeassistant/</link>
<pubDate>Wed, 26 Jun 2024 21:31:54 +0500</pubDate>
<author></author>
<comments>https://timsa.ru/all/homeassistant/</comments>
<description>
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;apt-get update &amp;amp;&amp;amp; apt-get install curl net-tools iftop htop sudo python3 python3-dev python3-venv python3-pip bluez libffi-dev libssl-dev libjpeg-dev zlib1g-dev autoconf build-essential libopenjp2-7 libtiff6 libturbojpeg0-dev tzdata ffmpeg liblapack3 liblapack-dev libatlas-base-dev&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;настроить sudo, консольку&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;useradd -rm homeassistant
# mkdir /homeassistant # ставим в домашнюю
# chown homeassistant:homeassistant /homeassistant
sudo -u homeassistant -H -s
cd /home/homeassistant
python3 -m venv .
source bin/activate
python3 -m pip install wheel 
pip3 install homeassistant numpy mutagen
hass&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;для автозапуска&lt;br /&gt;
создаем файл /etc/systemd/system/home-assistant@homeassistant.service&lt;br /&gt;
с содержимым:&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;[Unit]
Description=Home Assistant
After=network-online.target

[Service]
Type=simple
User=%i
WorkingDirectory=/home/%i/.homeassistant
ExecStart=/home/%i/bin/hass -c &amp;quot;/home/%i/.homeassistant&amp;quot;
RestartForceExitStatus=100
Restart=on-failure
RestartSec=5s

[Install]
WantedBy=multi-user.target&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;далее&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;sudo systemctl --system daemon-reload
sudo systemctl enable home-assistant@homeassistant
sudo systemctl start home-assistant@homeassistant&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;ставим брокер MQTT&lt;/p&gt;
&lt;pre class="e2-text-code"&gt;&lt;code class=""&gt;curl -s https://assets.emqx.com/scripts/install-emqx-deb.sh | bash
apt-get install emqx
systemctl start emqx&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;по умолчанию admin:public&lt;/p&gt;
&lt;p&gt;UPD.:&lt;br /&gt;
Emqx по-большому счету совершенно ненужный сервант, запускает вагон сервисов, жрет ресурсы, а для работы умного дома функционала mosquitto хватит за глаза.&lt;/p&gt;
</description>
</item>

<item>
<title>Умный дом с Алисой от Яндекса</title>
<guid isPermaLink="false">124</guid>
<link>https://timsa.ru/all/umny-dom-s-alisoy-ot-yandeksa/</link>
<pubDate>Thu, 04 Feb 2021 15:56:33 +0500</pubDate>
<author></author>
<comments>https://timsa.ru/all/umny-dom-s-alisoy-ot-yandeksa/</comments>
<description>
&lt;p&gt;Решил прикрутить к своему умному дому голосовой интерфейс от Яндекса. Мой умный дом — страшный зверинец из разных систем, на разном железе и разном софте.&lt;br /&gt;
В нем всё самописное, поэтому открытых дверей ждать не приходится.&lt;/p&gt;
&lt;p&gt;Яндекс предполагает работу с нормальными сторонними сервисами, которые не поленились встроить регистрацию пользователей через OAuth. У меня такой нет, поэтому будем использовать яндексовскую же.&lt;/p&gt;
&lt;ol start="1"&gt;
&lt;li&gt;Идем на &lt;a href="https://oauth.yandex.ru/"&gt;https://oauth.yandex.ru/&lt;/a&gt; и нажимаем зарегистрировать новое приложение.&lt;br /&gt;
Название, описание, иконка — пофигу&lt;br /&gt;
Ссылка на приложение тоже, но я задал путь к скрипту, обрабатывающему запросы яндекса.&lt;br /&gt;
Платформы — веб-сервисы&lt;br /&gt;
Callback URI ставим «&lt;a href="https://social.yandex.net/broker/redirect"&gt;https://social.yandex.net/broker/redirect&lt;/a&gt;» (это самое главное). Всякие ошибки «redirect_uri не совпадает с Callback URL» — это отсюда.&lt;br /&gt;
Дальше доступы отмечаем&lt;br /&gt;
API Яндекс.Паспорта доступ к электронной почте (может и не надо, но не жалко)&lt;br /&gt;
Умный дом Яндекса ставим обе галочки.&lt;br /&gt;
Сохраняем.&lt;br /&gt;
Теперь у нас есть ID и Пароль.&lt;/li&gt;
&lt;/ol&gt;
&lt;ol start="2"&gt;
&lt;li&gt;Идем на Яндекс диалоги &lt;a href="https://dialogs.yandex.ru/developer"&gt;https://dialogs.yandex.ru/developer&lt;/a&gt; выбираем новый диалог — создать умный дом&lt;br /&gt;
Настройки:&lt;br /&gt;
задаем любое название;&lt;br /&gt;
endpoint url — самое главное — это опять путь к скрипту, который будет общаться с яндексом;&lt;br /&gt;
тип доступа — приватный;&lt;br /&gt;
подзаголовок пофигу что&lt;br /&gt;
имя разработчика также&lt;br /&gt;
описание тоже;&lt;br /&gt;
иконку — любую картинку;&lt;br /&gt;
авторизация — тут сложнее:&lt;br /&gt;
идентификатор — вышеполученный ID&lt;br /&gt;
секрет — вышеполученный Пароль&lt;br /&gt;
URL авторизации — &lt;a href="https://oauth.yandex.ru/authorize"&gt;https://oauth.yandex.ru/authorize&lt;/a&gt;&lt;br /&gt;
URL получения токена — &lt;a href="https://oauth.yandex.ru/token"&gt;https://oauth.yandex.ru/token&lt;/a&gt;&lt;br /&gt;
обновление не нужно&lt;br /&gt;
идентификатор группы действий (scope) пишем — login:email iot:control iot:view&lt;br /&gt;
это те самые доступы, как они описаны внутри системы. Без этого будем получать ошибку «Не удалось определить список запрашиваемых доступов (invalid_scope)».&lt;br /&gt;
Кстати чтобы их узнать можно пойти по ссылке &lt;a href="https://oauth.yandex.ru/client/ID/info"&gt;https://oauth.yandex.ru/client/ID/info&lt;/a&gt; где ID — тот самый ID приложения.&lt;br /&gt;
Сохраняем.&lt;/li&gt;
&lt;/ol&gt;
&lt;ol start="3"&gt;
&lt;li&gt;Нажимаем «Опубликовать», ошибок быть не должно. Переключаем движок на «Опубликовано» и идем в Тестирование.&lt;br /&gt;
Нажимаем  большой плюс, выбираем «Другое устройство». Где то тут оно пробросит нас на авторизацию OAuth попросит разрешения предоставить данные и добавит умный дом в список производителей.&lt;/li&gt;
&lt;/ol&gt;
&lt;ol start="4"&gt;
&lt;li&gt;Теперь идем в свой скрипт и начинаем прописывать устройства и их реакции.&lt;br /&gt;
Тут придется сначала изучить &lt;a href="https://yandex.ru/dev/dialogs/alice/doc/smart-home/about.html"&gt;https://yandex.ru/dev/dialogs/alice/doc/smart-home/about.html&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
</description>
</item>


</channel>
</rss>