HEOS:修订间差异

无编辑摘要
无编辑摘要
 
(未显示同一用户的2个中间版本)
第12行: 第12行:
*2.登录支持HEOS的设备
*2.登录支持HEOS的设备
查看设备ip,如路由器中,如:
查看设备ip,如路由器中,如:
<syntaxhighlight lang="ssh" >
<syntaxhighlight lang="sh" >
telnet 192.168.1.10 255 1255
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交互

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():

资源

官网

网站