起因是在微博刷到大佬 @ES_今天实验做出来了嘛 的一条微博把PS5接入HomeKit,感觉十分有趣,于是就在GitHub上面搜索到了一个现成(开源万岁)的实现方式,通过PS5的远程连接实现的唤醒PS5。

https://weibo.com/3210274501/LaLe0vDDi

准备

这里就不赘述 HomeBridge 的安装了,贴一个大佬的教程作为参考:

 

然后以下是远程唤醒PS5的项目地址:

https://github.com/dhleong/playactor

安装

a. 安装 playactor

sudo npm install -g playactor

b. 配置连接PS5

i 获取机器的id

运行 playactor browse 可以查看当前网络中PS5设备:

这里我们可以获得我们PS5 的 id : 00EXXXXXXXX0 。

ii 连接设备

运行 playactor login --host-id 00EXXXXXXXX0  --no-open-urls 

--no-open-urls  这个参数是由于我是用的树莓派无法直接打开浏览器进行后续认证,所以通过返回登陆链接来进行登陆。

此时将返回的连接在浏览器中打开:

 

后面就是登陆的操作,成功登陆后会看到一个页面写着 redirect,此时已经登陆成功了。将地址粘贴到终端然后回车绑定:

然后到PS5的设置->主机->远程游玩->关联设备中获取验证码并输入终端中:

iii 控制PS5

登陆 playactor login --host-id XXXXXXXXXXXX

唤醒 playactor wake --host-id XXXXXXXXXXXX

待机 playactor standby --host-id XXXXXXXXXXXX

检查PS5当前状态 playactor check --host-id XXXXXXXXXXXX
 

要是只有一台设备的话可以不指定 host-id :

登陆 playactor login --ps5

唤醒 playactor wake --ps5

待机 playactor standby --ps5

检查PS5当前状态 playactor check --ps5

接入Homebridge

这个可以借助Homebridge中的开关插件,下面几个应该都可以,大家个人喜好选择:
Homebridge-cmdaccessory 
Homebridge-cmdswitch2 
Homebridge-cmd4
Homebridge-cmdtriggerswitch 

 

我自己用的是 Homebridge-cmdaccessory ,搜索安装即可:

cmdaccessory

原理是通过唤醒和待机命令作为开关,然后通过 playactor check  --ps5 | grep -i '200 Ok' 轮询获取PS5的当前状态。

最后配置如下:

{
    "platform": "cmdAccessory",
    "name": "CMD Accessory",
    "switches": [
        {
            "name": "PS5",
            "on_cmd": "playactor wake --ps5",
            "off_cmd": "playactor standby  --ps5",
            "state_cmd": "playactor check  --ps5 | grep -i '200 Ok'",
            "polling": true,
            "interval": 120,
            "manufacturer": "Sony",
            "serial": "00EXXXXXXXX0",
            "type": "Switch"
        }
    ]
}

遇到的问题

异常

首次安装完毕后在Homebridge中唤醒PS5一直报错,但是直接在终端中输入命令时又可以成功执行,然后怀疑问题可能出在不同用户上,我的Homebridge安装创建了Homebridge的用户。当我切换到homeBridge时执行命令确实会报错,然后我重新进行绑定后就可以正常使用了。

后面查看一下GitHub中的issue发现首次绑定成功后会将配置写在当前用户目录下/home/homebridge/.config/playactor,所以在Homebridge的WebUI上会调用失败。

最后

成果图

一顿操作安装完毕后,发现其实这个功能使用频率真的很低很低😂。当你折腾好后给女朋友演示在手机的Homekit上打开了PS5后就变得索然无味了,但是折腾的过程还是十分有趣的。毕竟谁会不想把心爱的PS5接入HoneKit呢(doge

参考资料

Homebridge Integration Guide

https://github.com/dhleong/playactor/issues/15