我有与Sonos后端集成的下一个问题。
Root collection包含一些集合,如精选播放列表,精选版本,我的播放列表,收藏曲目,收藏版本。
前两个集合具有数据,并且在Sonos控制器上可见。 但其他“用户”集合在Sonos上是空的。
来自API的回复是相同的,两者都有数据。请参阅下面的请求/响应(来自自测工具)。
MediaCollection定义:
<ns1:mediaCollection>
<ns1:id>FEATURED_PLAYLISTS</ns1:id>
<ns1:itemType>collection</ns1:itemType>
<ns1:title>Featured Playlists</ns1:title>
</ns1:mediaCollection>
<ns1:mediaCollection>
<ns1:id>FAVOURITE_PLAYLISTS</ns1:id>
<ns1:itemType>collection</ns1:itemType>
<ns1:title>Favourite Playlists</ns1:title>
</ns1:mediaCollection>
请求1(WORKS):getMetadata(FEATURED_PLAYLISTS,0,100,无)
<SOAP-ENV:Envelope xmlns:ns0="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.sonos.com/Services/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="http://www.sonos.com/Services/1.1" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header>
<tns:credentials>
<tns:deviceId>00-00-00-00-00-00:Z</tns:deviceId>
<tns:deviceProvider>Sonos</tns:deviceProvider>
<tns:sessionId>21743ab4b6413a5e5b4a7e50b7cf57bd45a2e969</tns:sessionId>
</tns:credentials>
</SOAP-ENV:Header>
<ns0:Body>
<ns1:getMetadata>
<ns1:id>FEATURED_PLAYLISTS</ns1:id>
<ns1:index>0</ns1:index>
<ns1:count>100</ns1:count>
</ns1:getMetadata>
</ns0:Body>
</SOAP-ENV:Envelope>
回应1:
<SOAP-ENV:Envelope xmlns:ns1="http://www.sonos.com/Services/1.1" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<ns1:getMetadataResponse>
<ns1:getMetadataResult>
<ns1:index>0</ns1:index>
<ns1:count>91</ns1:count>
<ns1:total>91</ns1:total>
<ns1:mediaCollection>
<ns1:id>PLAYLIST:65002</ns1:id>
<ns1:itemType>playlist</ns1:itemType>
<ns1:title>Klassiske album</ns1:title>
<ns1:canPlay>true</ns1:canPlay>
<ns1:canEnumerate>true</ns1:canEnumerate>
<ns1:canCache>true</ns1:canCache>
<ns1:albumArtURI>http://example.com/1_200.jpg</ns1:albumArtURI>
</ns1:mediaCollection>
<ns1:mediaCollection>
<ns1:id>PLAYLIST:132</ns1:id>
<ns1:itemType>playlist</ns1:itemType>
<ns1:title>Nytt og norsk</ns1:title>
<ns1:canPlay>true</ns1:canPlay>
<ns1:canEnumerate>true</ns1:canEnumerate>
<ns1:canCache>true</ns1:canCache>
<ns1:albumArtURI>http://example.com/2_200.jpg</ns1:albumArtURI>
</ns1:mediaCollection> ...
请求2(不工作):getMetadata(FAVOURITE_PLAYLISTS,0,100,无)
<SOAP-ENV:Envelope xmlns:ns0="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.sonos.com/Services/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="http://www.sonos.com/Services/1.1" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header>
<tns:credentials>
<tns:deviceId>00-00-00-00-00-00:Z</tns:deviceId>
<tns:deviceProvider>Sonos</tns:deviceProvider>
<tns:sessionId>21743ab4b6413a5e5b4a7e50b7cf57bd45a2e969</tns:sessionId>
</tns:credentials>
</SOAP-ENV:Header>
<ns0:Body>
<ns1:getMetadata>
<ns1:id>FAVOURITE_PLAYLISTS</ns1:id>
<ns1:index>0</ns1:index>
<ns1:count>100</ns1:count>
</ns1:getMetadata>
</ns0:Body>
</SOAP-ENV:Envelope>
回应2:
<SOAP-ENV:Envelope xmlns:ns1="http://www.sonos.com/Services/1.1" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<ns1:getMetadataResponse>
<ns1:getMetadataResult>
<ns1:index>0</ns1:index>
<ns1:count>5</ns1:count>
<ns1:total>5</ns1:total>
<ns1:mediaCollection>
<ns1:id>PLAYLIST:75151</ns1:id>
<ns1:itemType>playlist</ns1:itemType>
<ns1:title>Rockfestival 2015</ns1:title>
<ns1:canPlay>true</ns1:canPlay>
<ns1:canEnumerate>true</ns1:canEnumerate>
<ns1:canCache>true</ns1:canCache>
<ns1:albumArtURI>http://example.com/3_200.jpg</ns1:albumArtURI>
</ns1:mediaCollection>
<ns1:mediaCollection>
<ns1:id>PLAYLIST:40732</ns1:id>
<ns1:itemType>playlist</ns1:itemType>
<ns1:title>New tracks</ns1:title>
<ns1:canPlay>true</ns1:canPlay>
<ns1:canEnumerate>true</ns1:canEnumerate>
<ns1:canCache>true</ns1:canCache>
<ns1:albumArtURI>http://example.com/4_200.jpg</ns1:albumArtURI>
</ns1:mediaCollection> ...
问题:为什么Sonos上缺少用户数据?
编辑1:
竞争getMetadata响应:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:ns1="http://www.sonos.com/Services/1.1" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<ns1:getMetadataResponse>
<ns1:getMetadataResult>
<ns1:index>0</ns1:index>
<ns1:count>5</ns1:count>
<ns1:total>5</ns1:total>
<ns1:mediaCollection>
<ns1:id>PLAYLIST:75151</ns1:id>
<ns1:itemType>playlist</ns1:itemType>
<ns1:title>Malakoff Rockfestival 2015</ns1:title>
<ns1:canPlay>true</ns1:canPlay>
<ns1:canEnumerate>true</ns1:canEnumerate>
<ns1:canCache>true</ns1:canCache>
<ns1:albumArtURI>http://static.beat.no/covers/7d/static/img/sleeveart/00/033/740/0003374041_200.jpg</ns1:albumArtURI>
</ns1:mediaCollection>
<ns1:mediaCollection>
<ns1:id>PLAYLIST:40732</ns1:id>
<ns1:itemType>playlist</ns1:itemType>
<ns1:title>Anbefalte nye låter</ns1:title>
<ns1:canPlay>true</ns1:canPlay>
<ns1:canEnumerate>true</ns1:canEnumerate>
<ns1:canCache>true</ns1:canCache>
<ns1:albumArtURI>http://static.beat.no/covers/7d/static/img/sleeveart/00/047/247/0004724773_200.jpg</ns1:albumArtURI>
</ns1:mediaCollection>
<ns1:mediaCollection>
<ns1:id>PLAYLIST:9318</ns1:id>
<ns1:itemType>playlist</ns1:itemType>
<ns1:title>Beat Topp 20</ns1:title>
<ns1:canPlay>true</ns1:canPlay>
<ns1:canEnumerate>true</ns1:canEnumerate>
<ns1:canCache>true</ns1:canCache>
<ns1:albumArtURI>http://static.beat.no/covers/7d/static/img/sleeveart/00/046/345/0004634531_200.jpg</ns1:albumArtURI>
</ns1:mediaCollection>
<ns1:mediaCollection>
<ns1:id>PLAYLIST:15803</ns1:id>
<ns1:itemType>playlist</ns1:itemType>
<ns1:title>Cupfinale!</ns1:title>
<ns1:canPlay>true</ns1:canPlay>
<ns1:canEnumerate>true</ns1:canEnumerate>
<ns1:canCache>true</ns1:canCache>
<ns1:albumArtURI>http://static.beat.no/covers/7d/static/img/sleeveart/00/001/351/0000135178_200.jpg</ns1:albumArtURI>
</ns1:mediaCollection>
<ns1:mediaCollection>
<ns1:id>PLAYLIST:18477</ns1:id>
<ns1:itemType>playlist</ns1:itemType>
<ns1:title>Dubstep</ns1:title>
<ns1:canPlay>true</ns1:canPlay>
<ns1:canEnumerate>true</ns1:canEnumerate>
<ns1:canCache>true</ns1:canCache>
<ns1:albumArtURI>http://static.beat.no/covers/7d/static/img/sleeveart/00/044/241/0004424171_200.jpg</ns1:albumArtURI>
</ns1:mediaCollection>
</ns1:getMetadataResult>
</ns1:getMetadataResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>