mqtt-hisensetv:通过MQTT服务控制Hisense智能电视
项目介绍
mqtt-hisensetv 是一个开源项目,旨在通过MQTT协议与Hisense智能电视进行通信,实现对其远程控制的各项功能。该项目主要针对运行mosquitto MQTT服务的Hisense智能电视(如75P7型号),用户可以通过MQTT客户端发送特定的命令,控制电视的开关机、音量调节、频道切换、应用启动等。
项目技术分析
mqtt-hisensetv 利用了Hisense电视内置的MQTT服务,该服务默认运行在TCP端口36669。电视使用的是mosquitto 1.4.2版本的MQTT服务器,主要用于与官方Hisense遥控应用进行交互。
该项目的核心技术包括:
- MQTT协议:一种轻量级的消息传输协议,适用于低带宽和不可靠的网络。
- JSON格式:用于封装和传输控制命令及电视状态信息。
- Mosquitto客户端:用于与电视的MQTT服务器进行通信,发送和接收消息。
项目及技术应用场景
mqtt-hisensetv 的应用场景主要包括但不限于以下几种:
- 智能家居集成:集成到智能家居系统中,实现电视与其他智能家居设备的联动控制。
- 自定义遥控应用:开发自定义的遥控应用,通过MQTT发送控制命令,提供更为个性化和便捷的遥控体验。
- 自动化脚本:编写自动化脚本,通过MQTT服务自动执行电视控制命令,例如定时开关机、自动切换频道等。
项目特点
- 兼容性:已知兼容Hisense 65P7、75P7和VIDAA U 2.5等型号的电视。
- 安全性:项目支持加密连接,并可以通过设置验证为off来使用自签名证书。
- 灵活性:用户可以订阅所有主题或特定主题,获取电视状态信息,如当前频道、音量、信号源等。
- 功能丰富:支持从开关机、音量调节到启动应用等丰富的控制功能。
以下是具体的项目特点和功能:
MQTT连接与认证
用户需使用以下设置通过MQTT客户端连接电视:
- 主机:电视的IP地址
- 端口:36669
- 用户名:hisenseservice
- 密码:multimqttservice
连接后,用户可以订阅所有主题(#)或特定主题,接收电视状态更新。
电视状态与源列表获取
获取电视当前状态:
- 发布:
/remoteapp/tv/ui_service/HomeAssistant/actions/gettvstate
- 订阅:
/remoteapp/mobile/broadcast/ui_service/state
获取电视信号源列表:
- 发布:
/remoteapp/tv/ui_service/HomeAssistant/actions/sourcelist
- 订阅:
/remoteapp/mobile/HomeAssistant/ui_service/data/sourcelist
应用启动
启动YouTube应用:
- 发布:
/remoteapp/tv/ui_service/HomeAssistant/actions/launchapp
- 参数:
{"name": "YouTube", "urlType": 37, "storeType": 0, "url": "youtube"}
启动Netflix应用:
- 发布:
/remoteapp/tv/ui_service/HomeAssistant/actions/launchapp
- 参数:
{"name": "Netflix", "urlType": 37, "storeType": 0, "url": "netflix"}
启动PrimeVideo应用:
- 发布:
/remoteapp/tv/ui_service/HomeAssistant/actions/launchapp
- 参数:
{"name": "Amazon", "urlType": 37, "storeType": 0, "url": "amazon"}
电视控制
将电视设置为待机模式:
- 发布:
/remoteapp/tv/remote_service/HomeAssistant/actions/sendkey
- 参数:
"KEY_POWER"
切换信号源:
- 发布:
/remoteapp/tv/ui_service/homeAssistant/actions/changesource
- 参数:
{"sourceid": "0", "sourcename": "TV"}
其他控制
-
获取当前音量:
- 发布:
/remoteapp/tv/platform_service/AutoHTPC/actions/getvolume
- 参数:无
- 发布:
-
设置音量:
- 发布:
/remoteapp/tv/platform_service/AutoHTPC/actions/changevolume
- 参数:
"50"
(音量级别0-100)
- 发布:
-
获取并切换信号源:
- 发布:
/remoteapp/tv/ui_service/AutoHTPC/actions/gettvstate
- 发布:
/remoteapp/tv/ui_service/AutoHTPC/actions/sourcelist
- 发布:
-
获取并切换信号源:
- 发布:
/remoteapp/tv/ui_service/AutoHTPC/actions/changesource
- 参数:
{"sourceid": "3"}
- 发布:
-
导航和内容交互:
- 发布:
/remoteapp/tv/remote_service/AutoHTPC/actions/sendkey
- 参数:
"KEY_UP"
、"KEY_DOWN"
、"KEY_LEFT"
、"KEY_RIGHT"
、"KEY_OK"
等
- 发布:
-
列举电视上安装的应用:
- 发布:
/remoteapp/tv/ui_service/HomeAssistant/actions/applist
- 发布:
通过上述功能,mqtt-hisensetv 为用户提供了极大的便捷性和自定义性,适用于各种智能家居和自动化场景。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考