# Автоматизация отправки видео в робономику В этой статье рассматривается процесс сохранения и просмотра видео через web3 облако с использованием интергации Робономики. **Проверен она HAOS и Pre-installed image** Требования: - развернутый образ НА с робономикой - настроенная RTSP камера ## Добавление камеры в НА При настройке камеры нужно создать там юзера и пароль для него для возможности RTSP стриминга. Также некоторые камеры требуют отдельного включения RTSP стрима. Так как в каждой камере это делается отдельно, то в данной статье это не рассматривается. После того как вы настроили камеру вы или должну уже знать url адрес от стрима камеры, или вам его нужно найти. Чтобы найти информацию нужно вводить следующий запрос: "<Название камеры> rtsp stream". В данной статье используется камера фирмы tapo и путь для стрима у нее следующий - `rtsp://<IP Address>/stream1`. Открываем НА и идем в добавление интеграций. Нажимаем добавить интеграцию и вводим "generic camera": ![](https://hackmd.io/_uploads/rJx2yd9S3.png) выбираем и ожидаем установки. появится окно с вводом конфигурации: ![](https://hackmd.io/_uploads/SJRDxOcr2.png) В поле `STREAM source` вставляем ссылку на стрим. в поля `Username` и `Password` вводим данные пользователя созданного в камере. получится следующее: ![](https://hackmd.io/_uploads/H1MMVd5rh.png) прокручиваем настройку вниз и нажимаем "Submit" кнопку. **Если настраивается на Pre-installed image, то вылезет ошибка:** ![](https://hackmd.io/_uploads/B15IN_qH2.png) Это связано с тем, чтопо умолчанию в НА не устанавливается интеграция "stream". сейчас она начала установку, но чтобы закончить утановку нужно перезагрузить НА. Перезагружаем и повторяем все пункты установки интеграции "generic camera. после перезагрузки и повторной настройки конфигурации после нажатия кнопки "Submit" откроется следующее окно: ![](https://hackmd.io/_uploads/S108Su9Sn.png) ставил checkbox и подтверждаем. Далее заканчиваем установку. ![](https://hackmd.io/_uploads/r1TFBdcHh.png) В итоге мы увидим новую интеграцию с 1 entity. ![](https://hackmd.io/_uploads/HyKCHd5Sn.png) Добавим стрим на дашбоард. Для этого перейдем на него и создадим новую карточку типа "Picture Glance". Далее: - вводим title какой захотим - из image path удаляем данные - в camera_entity выбираем нашу камеру - в camera view выбираем live чтобы было меньше задержка Созраняем это все и получаем на дашборде наш стрим. ![](https://hackmd.io/_uploads/SkSIwdcSh.png) Настройка камеры на этом закончена. ## Добавление папки медиа Видео перед отправкой нужно будет куда-нибудь сохранять, причем у HA должен быть доступ к данной папке. Самый простой вариант в данном случае создать паку медиа, в которой НА хранит всю медиа. Как создать папку [тут](https://www.home-assistant.io/more-info/local-media/setup-media). Кратко перечислим основные варианты: - в образе робономики эта папка есть сразу - в НАOS есть изначально - в core идем через терминал в папку .homeassistant и создаем в ней - в докере добавляем в запускаюшую команду строчку ` -v /PATH_TO_YOUR_MEDIA:/media \` В итоге мы получаем в НА доступ к медиа. Переходим во вкладку "Media" -> "local media" и видим пустую папку(не видим ошибок): ![](https://hackmd.io/_uploads/S1FklsoSn.png) ## Вызов сервиса Попробуем отправить тестовое видео в робономику. Для этого перерходим в сервисы: "developer tools" -> "services". Ищим сервис `Robonomics: Save recording to robonomics`. ![](https://hackmd.io/_uploads/Bkx_J6hHh.png) Нажимаем "choose entity" и выбираем нашу камеру. далее прописываем путь до нашей созданной папке "media". общий вид пути будет следующим - `<PATH_TO_HOMEASSISTANT_FOLDER>/.homeassistant/media`. - в случае работы с нашим образом путь такой: `/home/homeassistant/.homeassistant/media`. - в случае HAOS: `/media/` Также можно настроить время записи камеры(по умолчанию 10 секунд). Конечный итог выглядит вот так: ![](https://hackmd.io/_uploads/BJWlI63Sn.png) Вызываем сервис и ждем некоторое время, пока не увидим зеленую галочку. Она означает что сервис вызвался и началась запис и отправка в робономику. ## Dapp чтобы просмотреть полученное видео идем в нашу [ДаПп.](https://vol4tim.github.io/videostream/) ![](https://hackmd.io/_uploads/SyX7Dphr3.png) тут надо вставить адрес нашего контроллера и нажать кнопку. Дожидаемся пока идет поиск твинов. В итоге получаем ipfs хэш со всеми записанными видео. ![](https://hackmd.io/_uploads/ry03_63S2.png) Далее выбираем аккаунт контроллера из выпадаемого списка и подписываем им сообщение для авторизации в web3 ipfs gateway, чтобы скачать все видео. В итоге видим все видео записанные нашим умным домом. ![](https://hackmd.io/_uploads/BJqWYphr3.png) Так как все видео в папке шифрованы ключем контроллера, то нам нужно вставить его для расшифровки. После этого активируется кнопка проигрывания видео. После нажатия на кнопку paly происходит выкачивание видео и оно станет доступным для воспроизведения.