我目前正在研究新的 SONOS 集成。我已经构建了此处概述的最低限度的功能,并且 python 测试套件通过了所有测试:
SUITE Summary: Passed. Passed: 60, Warnings: 0, Failed: 0.
我在新 SID 上添加了自定义服务描述,包括服务名称、两个端点、轮询间隔、匿名身份验证、正确的字符串 URL、音乐服务容器类型和未选择的功能。
我可以在我的 SONOS 客户端中添加我的服务,但收到消息“无法浏览音乐”。我知道可能有很多事情在起作用,但是这里有什么跳出来的吗?我的大脑疲惫不堪,我希望我错过了一些明显的东西!:)
谢谢你的帮助!
编辑:
这是一个示例“根”getMetadata 请求:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:SOAPServerWSDL" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:getMetadata>
<id xsi:type="xsd:string">root</id>
<index xsi:type="xsd:integer">0</index>
<count xsi:type="xsd:integer">10</count>
<recursive xsi:type="xsd:boolean">false</recursive>
</ns1:getMetadata>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
及其结果:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://api-server.dev/index.php/sonos" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Body>
<ns1:getMetadataResponse xmlns:ns1="urn:SOAPServerWSDL">
<getMetadataResult xsi:type="tns:metadata">
<index xsi:type="xsd:integer">0</index>
<count xsi:type="xsd:integer">2</count>
<total xsi:type="xsd:integer">2</total>
<mediaCollection xmlns="" xsi:type="tns:mediaCollection">
<id xsi:type="xsd:string">genres</id>
<title xsi:type="xsd:string">Playlists</title>
<itemType xsi:type="xsd:string">collection</itemType>
</mediaCollection>
<mediaCollection xmlns="" xsi:type="tns:mediaCollection">
<id xsi:type="xsd:string">my_playlists</id>
<title xsi:type="xsd:string">My Playlists</title>
<itemType xsi:type="xsd:string">collection</itemType>
</mediaCollection>
</getMetadataResult>
</ns1:getMetadataResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
这些以及其他函数都通过了 python 自检。¯\_(ツ)_/¯