由于 HAP(HomeKit Accessories Protocol)的开放性质,配合 HomeBridge / HomeAssistant 庞大的插件库,几乎做到了万物皆可 HomeKit 的程度。今天我们就来把家中的 PlayStation 游戏机的唤醒和休眠加入到 「家庭」应用中并控制。

HomeKit 与 HomeBridge

本文以 HomeBridge 为例,HomeBridge 运行在 Ubuntu 系统的树莓派上。安装和使用 HomeBridge 请参考这篇文章:

本次接入的原理是根据 Github 上开源的 PlayStation 唤醒软件进行配置,再接入到 HomeBridge 调用运行配置好的唤醒软件。从而达到曲线救国的 PlayStation 的 HomeKit 化,接下来我们就分步骤进行安装与配置。

安装控制软件

本方法使用 playactor 控制软件来操控 PlayStation 系统。由于 PlayStation 并不支持传统的 WoL ,现在有的方法原理都是基于索尼自家的 PS Remote Play 这款软件的原理进行开发的。

根据 playactor 项目的文档,本项目支持 PS4 的全部操作和 PS5 的部分操作。在加入 HomeKit 之后我们仅需要用到 Wake 与 Standby 两个指令即可。

首先我们进入到运行 HomeBridge 的主机中,安装软件。 在终端中输入:

sudo npm install playactor

等待安装完成。如果是 Docker 中运行的 HomeBridge 请直接在 HomeBridge 的终端中安装软件。

账号认证

接下来我们进入到 HomeBridge 的后台:

点击右上角三个点,进入「终端」,接下来我们使用 HomeBridge 用户进行认证。

进入终端

  1. 启动你的 PlayStation 4 / 5。

  2. 在「终端」中输入:playactor browse运行。

  3. 屏幕上会显示你的 PlayStation 信息,如果你有多台 PlayStation 请分别记住他们的名字。

  4. 输入:playactor login --host-name <你的主机名称> --no-open-urls,此时屏幕上会显示一个 URL 地址,点进进入。

  5. 在地址中输入你的 PlayStation 账号密码。

  6. 转跳页面之后复制 URL 地址,拷贝进「终端」并回车。

  7. 根据提示,进入 PlayStation 的设定 > 主机 > 远程游玩 > 关联设备找到 8 位数字,输入到终端中。

  8. PlayStation 右上角跳出正在远程控制时,证明认证成功。

  9. 在终端中输入:playactor standby --host-name <你的主机名称>,若 PlayStation 开始进入休眠证明软件运行正常。

配置 HomeBridge

接下来进入 HomeBridge 进行插件配置。这里有多种插件可以选择:

  • HomeBridge-cmdswitch2

https://www.npmjs.com/package/homebridge-cmdswitch2

  • HomeBridge-WoL

https://www.npmjs.com/package/homebridge-wol

笔者选择 WoL 插件进行接入,因为具有 Return Early 功能,按下开关之后不用等待响应。如使用 cmdswitch2 配置过程也大同小异。

配置以 GUI 为例,打开 WoL 插件:

  1. 输设备名称。

  2. Pinging configuration中随便输入一个 IP 地址,在 Ping Command 中输入:playactor check --host-name <你的主机名称> | grep -i '200 Ok'

  3. 随意设定一个 Ping command timeout 时间。

  4. Wake configuration中随便输入一个 MAC 地址,随便输入一个广播地址。

  5. 更改 Wake grace time 为0

  6. 输入 Wake commandplayactor wake --host-name <你的主机名称>

  7. 设定 Wake command timeout 为45

  8. 设定Shutdown configuration中的 Shutdown command 为playactor standby --host-name <你的主机名称>

  9. Miscellaneous中打开 return early。

保存并重启 HomeBridge ,此时你的 PlayStation 就已经接入 HomeKit 中了,可以实时查看状态,控制唤醒以及休眠。

如果你使用 HomeAssistant 那么操作也大同小异,只需要举一反三就可以把你的 PlayStation 接入 HomeKit。

虽然 PlayStation 本身的唤醒机制就已经十分优秀了,使用 HomeKit 或者 Siri 唤醒可以说是多此一举。但是接入进 HomeKit 以后,可以联动触发非常多的场景。比如设定游戏模式等等,具体玩法就由各位自行探究了,本文仅作抛砖引玉。

原文链接:https://sspai.com/post/70986

作者:EstrellaXD

责编:广陵止息