检测Apple TV第4代何时从睡眠中醒来

Guy*_*zmo 7 bluetooth home-automation hdmi apple-tv tvos

我正在研究一些家庭自动化程序,我希望能够做的事情之一是检测我的第四代Apple TV是否已经从睡眠中醒来.当有人按下Siri遥控器上的按钮将其唤醒时,通常只会发生这种情况.

我有一台PC(连接到与Apple TV相同的电视机),它有一个Pulse-Eight USB-CEC适配器,所以我尝试的第一件事就是使用CEC确定Apple TV何时清醒.不幸的是,它不可靠,因为监视Apple TV的电源状态以查看它何时唤醒会产生误报.(我应该注意,我没有在Apple TV上启用"控制电视和接收器",并且无法为我正在处理的特定项目打开它,因为我需要Apple TV才能更改电视的输入. )

我正在考虑其他一些方法来做到这一点.我对任何可能性持开放态度,包括:

  • 在Apple TV上使用私有API
  • 在Apple TV的背景中运行"始终开启"程序,当Apple TV唤醒时发送信号,如果可能的话.(我怀疑它不是.)
  • 监控Siri Remote和Apple TV之间的蓝牙通信,如果可能的话
  • 以某种方式过滤HDMI-CEC命令,以便我可以打开"控制电视和接收器",允许Apple TV的CEC命令打开和关闭电视,并排除更改电视输入的命令.
  • 任何其他方法,无论多么黑巧或荒谬,只要它有效!

有没有人有什么建议?我已经没事了!

Guy*_*zmo 1

六年半后,我终于找到了一种更好的方法来获取 Apple TV 的电源状态。

我可以简单地使用pyatvpower_state ,它有一个名为返回 Apple TV 当前电源状态的函数。