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' 条目中进行了解释:
我一直在为 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' 条目中进行了解释: