Upnp 设备检测

Upnp 设备检测

我正在跟进和其他类似的帖子,以便使用 upnp 协议检测我的支持 dlna 的扬声器。我的手机 (android) 检测并控制扬声器;但我想从我的电脑上执行此操作并将其连接为 dlna。

第一航站楼:

$ cat test.txt
M-SEARCH * HTTP/1.1
HOST: 239.255.255.250:1900
MAN: ssdp:discover
MX: 10
ST: ssdp:all

第二航站楼:

$ nc -buvv 239.255.255.250 1900 < test.txt
Connection to 239.255.255.250 1900 port [udp/ssdp] succeeded!

第三航站楼:

$ sudo tcpdump -vv -A -s 0 -i wlan0 udp port 1900 and host 239.255.255.250
15:56:10.949878 IP (tos 0x0, ttl 1, id 41655, offset 0, flags [DF], proto UDP (17), length 29)
    alarmpi.55492 > 239.255.255.250.ssdp: [udp sum ok] UDP, length 1
E.....@...$....~.......l.   ..X
15:56:10.950707 IP (tos 0x0, ttl 1, id 41656, offset 0, flags [DF], proto UDP (17), length 29)
    alarmpi.55492 > 239.255.255.250.ssdp: [udp sum ok] UDP, length 1
E.....@...$....~.......l.   ..X
15:56:11.951350 IP (tos 0x0, ttl 1, id 41732, offset 0, flags [DF], proto UDP (17), length 29)
    alarmpi.55492 > 239.255.255.250.ssdp: [udp sum ok] UDP, length 1
E.....@...$....~.......l.   ..X
15:56:12.951929 IP (tos 0x0, ttl 1, id 41748, offset 0, flags [DF], proto UDP (17), length 29)
    alarmpi.55492 > 239.255.255.250.ssdp: [udp sum ok] UDP, length 1
E.....@...$....~.......l.   ..X
15:56:13.952504 IP (tos 0x0, ttl 1, id 41788, offset 0, flags [DF], proto UDP (17), length 29)
    alarmpi.55492 > 239.255.255.250.ssdp: [udp sum ok] UDP, length 1
E....<@...$s...~.......l.   ..X
15:56:13.960469 IP (tos 0x0, ttl 1, id 41789, offset 0, flags [DF], proto UDP (17), length 114)
    alarmpi.55492 > 239.255.255.250.ssdp: [udp sum ok] UDP, length 86
E..r.=@...$....~.......l.^..M-SEARCH * HTTP/1.1
HOST: 239.255.255.250:1900
MAN: ssdp:discover
MX: 10
ST: ssdp:all

看上去好像在工作,但是没有检测到任何东西。

有人知道我做错了什么吗?

谢谢

答案1

使用 dirkt 注释,我能够检测到我的 dlna 设备

gssdp-discover -i wlan0 --timeout=3

然后我修改了该帖子的内容:http://djoepnpoep.blogspot.co.za/2015/07/command-line-dlnaupnp-av-with-curl.html。很抱歉,由于声誉/链接限制,我无法发布我的解决方案......但小心使用“和行尾,这很容易。

我现在正在寻找有关 dlna 控制(播放、停止、暂停、恢复、声音控制)的更广泛的文档

对于我非常有限的需求来说,安装 pulseaudio 和 pulseaudio-dlna 似乎不是更明智的解决方案。

再次感谢。

编辑:朝这个方向看之后,我发现一些似乎可以完成这项工作的 .js 库:https://github.com/rexboy7/plug.play.js

相关内容