Русскоязычный инженер встроил радио из Cyberpunk 2077 в свой дом. И пошагово расписал, как повторить
В своём блоге на «Хабре» пользователь с ником Firemoon расписал историю, как интегрировал сделанное более двух лет назад радио из игры Cyberpunk 2077 (на основе проекта Ka-Radio32) в умный дом через Home Assistant. Он решился реализовать это, чтобы соединить все домашние смарт-гаджеты в единую сеть на базе локального хаба. В случае с другими устройствами особых сложностей не возникло, но встраивание в умный дом этого радио стало настоящим испытанием, поскольку у проекта Ka-Radio32 нет интеграции с Home Assistant (даже пользовательской), а разработка своего расширения оказалась сложным процессом, даже несмотря на наличие подробной документации. Тем не менее Firemoon всё же удалось сделать это, и он подробно расписал свой подход. В процессе программисту пришлось выбрать разработку с использованием контейнеров (DevContainers) и VSCode, чтобы работать в изолированной среде; создать обёртку для API в виде Python-класса, который взаимодействует через HTTP-запросы; интегрировать логику управления радио (настройку громкости, выбор станции, воспроизведение/остановку) через платформу MediaPlayer Home Assistant. В дополнение ко всему Firemoon реализовал улучшенную совместимость с Apple HomeKit, где радио стало отображаться как ресивер — то есть отдельное «устройство», а не «объект». Подробный процесс создания и настройки программист расписал в блоге, прикрепив фрагменты кода скриптов и ссылки на полезные сопутствующие материалы.
В своём блоге на «Хабре» пользователь с ником Firemoon расписал историю, как интегрировал сделанное более двух лет назад радио из игры Cyberpunk 2077 (на основе проекта Ka-Radio32) в умный дом через Home Assistant. Он решился реализовать это, чтобы соединить все домашние смарт-гаджеты в единую сеть на базе локального хаба. В случае с другими устройствами особых сложностей не возникло, но встраивание в умный дом этого радио стало настоящим испытанием, поскольку у проекта Ka-Radio32 нет интеграции с Home Assistant (даже пользовательской), а разработка своего расширения оказалась сложным процессом, даже несмотря на наличие подробной документации. Тем не менее Firemoon всё же удалось сделать это, и он подробно расписал свой подход.
В процессе программисту пришлось выбрать разработку с использованием контейнеров (DevContainers) и VSCode, чтобы работать в изолированной среде; создать обёртку для API в виде Python-класса, который взаимодействует через HTTP-запросы; интегрировать логику управления радио (настройку громкости, выбор станции, воспроизведение/остановку) через платформу MediaPlayer Home Assistant.
В дополнение ко всему Firemoon реализовал улучшенную совместимость с Apple HomeKit, где радио стало отображаться как ресивер — то есть отдельное «устройство», а не «объект».
Подробный процесс создания и настройки программист расписал в блоге, прикрепив фрагменты кода скриптов и ссылки на полезные сопутствующие материалы.