PlayStation 4 - Подключаем к Home Assistant

4 февр. 2019 г.

Я заядлый игроман и когда начал разбираться с Home Assistant не мог обойти стороной возможность завести в него и любимую PS4 Pro. 

Важно! Если у вас только HomeBridge, то не расстраивайтесь, на сайте уже есть отличная статья от Антона Самсонова по добавлению консоли в него.

Вместо предисловия

Компонент для нативной поддержки PS4 в Home Assistant находится в разработке, однако неизвестно сколько еще времени он будет разрабатываться т.к. с середины декабря 2018 года в соответствующей ветке на GitHub полная тишина. Мы не будем ждать и установим кастомный компонент здесь и сейчас.

Подготавливаем базу

Для начала установим NodeJS и npm т.к. кастомный компонент использует ps4-waker, для работы и установки которого необходим NodeJS и npm (Замкнутый круг, правда?):

sudo apt install nodejs
curl -L https://www.npmjs.com/install.sh | sh

Теперь необходимо зайти под рутом и установить ps4-waker:

sudo -i
npm i ps4-waker -g

Устанавливаем на смартфон приложение PS4 Second Screen: линк для iOS и линк для Android; логинимся под своим PSN аккаунтом и выкидываем приложение из оперативной памяти.

Включаем PS4, идем в Настройки - Сеть - Узнать состояние соединения и запоминаем IP консоли.

Не выходя из под рута начинаем процесс получения credentials при помощи терминала и приложения (PS4 должна быть включена перед запуском следующей команды):

ps4-waker -c .ps4-wake.credentials.json -d ip вашей PS4

Далее пошагово:

  • Получаем ответ "No credentials; Use the PS4 Second Screen App and try to connect to PS4-Waker";
  • Открываем установленное ранее на смартфон приложение и кликаем на "PS4-Waker";
  • Получаем ответ, начинающийся с "Got credentials! ..." и предложение ввести pin код;
  • Идем в консоль: "Настройки - Настройки подключения мобильного приложения - Добавить устройство" и видим pin из 8 цифр;
  • Вводим полученный pin в терминал без пробелов (8 цифр подряд) и нажимаем "Enter";
  • Получаем ответ об удачном сопряжении "Logged into device! Future uses should succeed";
  • Радуемся, сохраняем себе куда-нибудь значение user-credential (Полученное выше после фразы Got credentials!) формата "'a9fadfd09d1e637b9cb5e6a3d364aaf3fc2e1cc9a47c22fcb17cfe23eb0f09a5'";
  • Выходим из под рута командой EXIT.


На этом танцы с бубном ps4-waker закончены.

Добавляем кастомный компонент и настраиваем

Идем в директорию конфигов HA, создаем нужные директории и копируем кастомный компонент:

sudo -u homeassistant -H -s
cd /home/homeassistant/.homeassistant
mkdir custom_components
cd custom_components
mkdir media_player
cd media_player
wget https://raw.githubusercontent.com/hmn/home-assistant-config/master/custom_components/media_player/ps4.py
exit

Идем в configuration.yaml, добавляем новую платформу и перезагружаем HA:

media_player:
  - platform: ps4
    host: ip вашей ps4
    name: 'Playstation 4'
    filename: 'ps4-wake.credentials.json'
    games_filename: 'ps4-games.json'

Идем в "Уведомления" (Колокольчик в правом верхнем углу HA) и видим сообщение "Конфигуратор. Нажмите кнопку, чтобы настроить Playstation 4", кликаем по кнопке "Настроить". Во всплывающем окне вставляем ранее сохраненный user-credential и кликаем по кнопке "Confirm".

На этом процесс добавления Playstation 4 в Home Assistant завершен.

Теперь настроим карточку PS4 в Lovelace.

Добавляем карточку "Media Control".

Выбираем в выпадающем списке "Объект" только что добавленную консоль и кликам по кнопке "Сохранить".

Теперь при помощи данной карточки мы можем включать и отправлять в сон нашу PS4.

Добавим немного Magic:

  • Запустите на консоли любую игру и подождите несколько секунд;
  • Вуаля, название и изображение запущенной игры появилось в карточке HA.

  • После запуска каждой игры, в HA будет подтягиваться ее название и изображение;
  • И еще немного Magic, теперь из карточки можно запускать необходимую нам игру (Кликаем на троеточие у карточки и выбираем игру в поле "Источник"). 

Добавим PS4 в HomeKit (Дом)

Чтобы можно было включать и выключать консоль из приложения Дом (или любого другого HomeKit совместимого app) идем в configuration.yaml, добавляем в платформу HomeKit следующее и перезагружаем HA:

homekit:
    entity_config:
      media_player.playstation_4:
        feature_list:
          - feature: on_off

У вас может быть entity отличное от моего пример "media_player.playstation_4", указываем свое.

На этом вся настройка завершена и вы можете управлять PS4 как из Home Assistant так и из приложения Дом.


Мы в Telegram - t.me/soprut
  1. Олег Челбаев (sprut)
    Олег Челбаев (sprut) отредактировано 20 дней назад

    Как всегда отлично ))) Не зря подписался )))

  2. Антон Самсонов (samsonovs)
    Антон Самсонов (samsonovs) 20 дней назад

    Супер!

  3. (klishchenkov) 19 дней назад

    Спасибо за статью, пригодится!

  4. Белояр Иван (Ivan711)
    Белояр Иван (Ivan711) 19 дней назад

    Вроде как в прошлом обновлений обещали выкатить нормальную поддержку ps4, в виде компонента. Но пока тишина. Но я думаю это вопрос времени. 

    А так спасибо, статья хорошая :)

  5. (Kvasenok) 18 дней назад

    "Компонент для нативной поддержки PS4 в Home Assistantнаходится в разработке, однако неизвестно сколько еще времени он будет разрабатываться т.к. с середины декабря 2018 года в соответствующей ветке на GitHub полная тишина."

    А вот и нет, они просто переехали в новую ветку. И компонент почти готов. Более того, будет работать через интеграции, без нужды прописывать его в конфиг.

    • Алексей Леонтьев (c_ache)
      Алексей Леонтьев (c_ache) 18 дней назад

      Спасибо за актуальные данные. Понятно, что это вопрос времени, а статья направлена прежде всего на тех кому не хочется ждать =)

К списку статей

Похожие статьи

15 нояб. 2018 г.
Xiaomi Mi Remote 360 добавляем Apple HomeKit
4 сент. 2018 г.
Интеграция RGB ленты на ESP8266 с прошивкой tasmota в систему HomeBridge (HomeKit)
15 нояб. 2018 г.
Способы автоматизации механических ворот
15 июн. 2018 г.
Охранная система в гараж на ESP8266 с интеграцией в Apple HomeKit
27 авг. 2018 г.
Интегрируем ХА в HomeKit
28 авг. 2018 г.
От голого Raspbian до веб-интерфейса homebridge за четыре команды в терминале.
24 авг. 2018 г.
Пошаговая установка HomeAssistant
29 дек. 2018 г.
Ну что, в канун Нового года. Предлагаю небольшой провокационный список. Не надо его рассматривать как руководство к действию - это мои "мысли на тему". Позитива не ждите, но может кто-то сделает ответочку в позитивном стиле.
25 нояб. 2018 г.
Умное зеркало добавляем модули Airplay и Google Calendar
1 нояб. 2018 г.
Настройка Deconz USB стика ConBee от Dresden Elektronik в Hass.io и некоторые особенности эксплуатации