Sonos getMetadata 请求 100 多个项目

Sonos getMetadata request 100+ items

我一直在为 Sonos 开发音乐服务,一切都准备就绪 运行。我遇到的问题是 Sonos 通过它的 getMetadata 调用只请求 99 个项目,我的一些库有 300 多首曲目,所以我最好把它们全部列出来。

我在 Sonos api 文档中找不到任何关于如何列出 100 个或更多项目的信息,但我认为这是可能的,因为他们的 getScrollIndices (http://musicpartners.sonos.com/node/103) 参考页面暗示到一个比 100 首曲目大得多的图书馆。

您可以通过在 presentationmap.xml 文件中将 BrowseOptions.PageSize 值设置为更适合您的服务的值来设置 getMetadata 调用中请求的默认项目数。

例如:

<?xml version="1.0" encoding="utf-8" ?>
<Presentation>
   <!-- I chose 400 based on your 300+ value in the question. -->
   <BrowseOptions PageSize="400" />
</Presentation>

您可以在下面的 link 中找到文档。向下滚动到 'Browse Options':

http://musicpartners.sonos.com/node/222

您可以在此处找到有关如何配置 Sonos 以在本地测试期间读取您的 Presentation Map 的文档:

http://musicpartners.sonos.com/node/134

本质上,您需要在服务器上托管 XML 文件(通常是托管 Sonos API 代码的同一台服务器),并在 customSD 中配置 URL直接指向 presentationmap.xml 文件的表单。

注意:Sonos 缓存 XML 文件以提高性能。当您更改文件时,您必须增加 customSD 表格中的版本,以便 Sonos 控制器强制重新加载。这在此处文档的 'Version' 条目中进行了解释:

http://musicpartners.sonos.com/node/134