HEOS:修订间差异
无编辑摘要 |
无编辑摘要 |
||
(未显示同一用户的1个中间版本) | |||
第13行: | 第13行: | ||
查看设备ip,如路由器中,如: | 查看设备ip,如路由器中,如: | ||
<syntaxhighlight lang="sh" > | <syntaxhighlight lang="sh" > | ||
telnet 192.168.1.10 | telnet 192.168.1.10 1255 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
登录telnet设备交互终端,打字可能不显示,按 Ctrl + ] 退出,再按回车进入telnet设备,即可显示。 | 登录telnet设备交互终端,打字可能不显示,按 Ctrl + ] 退出,再按回车进入telnet设备,即可显示。 | ||
第19行: | 第19行: | ||
*3.虚拟终端交互命令 | *3.虚拟终端交互命令 | ||
<syntaxhighlight lang="python" > | <syntaxhighlight lang="python" > | ||
# | # 查看播放器设备信息,可以查看到pid,设备名称,设备型号,版本,序列号等。 | ||
heos://player/get_players | heos://player/get_players | ||
heos://player/get_player_info?pid=1 | |||
heos://player/get_play_state?pid=1 | |||
heos://player/get_now_playing_media?pid=1 | |||
heos://player/get_volume?pid=1 | |||
heos://player/get_queue?pid=1&range=0,10 | |||
heos://player/play_next?pid=1 | |||
</syntaxhighlight> | |||
=== python中使用 === | |||
使用python内置的telnetlib模块,但是该模块将在Python 3.13中移除。 | |||
<syntaxhighlight lang="python" > | |||
import telnetlib | |||
import time | |||
# 登录 | |||
tn = telnetlib.Telnet('192.168.3.188', 1255) | |||
# 发送命令 | |||
tn.write(b'heos://player/get_players\n') | |||
# 读取响应 | |||
time.sleep(0.1) | |||
response = tn.read_very_eager().decode('ascii') | |||
print(response) | |||
tn.close() | |||
</syntaxhighlight> | </syntaxhighlight> | ||
telnetlib读取返回结果有多个方法,如: | |||
* read_very_eager():立刻读取,最好加个延时如0.1秒,防止设备还没返回结果。 | |||
* read_all(): | |||
* read_until(): | |||
==资源== | ==资源== |
2024年8月8日 (四) 17:51的最新版本
HEOS 是 Denon 推出的多房间音乐系统。
简介
时间轴
HEOS CLI
使用Telnet交互
- 1.Telnet客户端
Windows Vista之前,Telnet内置,Vista之后版本,在控制面板》程序和功能》启动或关闭windows功能》启用Telnet客户端。 在cmd终端输入telnet即可打开telnet客户端。
- 2.登录支持HEOS的设备
查看设备ip,如路由器中,如:
telnet 192.168.1.10 1255
登录telnet设备交互终端,打字可能不显示,按 Ctrl + ] 退出,再按回车进入telnet设备,即可显示。
- 3.虚拟终端交互命令
# 查看播放器设备信息,可以查看到pid,设备名称,设备型号,版本,序列号等。
heos://player/get_players
heos://player/get_player_info?pid=1
heos://player/get_play_state?pid=1
heos://player/get_now_playing_media?pid=1
heos://player/get_volume?pid=1
heos://player/get_queue?pid=1&range=0,10
heos://player/play_next?pid=1
python中使用
使用python内置的telnetlib模块,但是该模块将在Python 3.13中移除。
import telnetlib
import time
# 登录
tn = telnetlib.Telnet('192.168.3.188', 1255)
# 发送命令
tn.write(b'heos://player/get_players\n')
# 读取响应
time.sleep(0.1)
response = tn.read_very_eager().decode('ascii')
print(response)
tn.close()
telnetlib读取返回结果有多个方法,如:
- read_very_eager():立刻读取,最好加个延时如0.1秒,防止设备还没返回结果。
- read_all():
- read_until():
资源
官网
- HEOS CLI协议规范:https://assets.denon.com/documentmaster/us/heos_cli_protocolspecification-version_04062020.pdf