无论返回的间隔如何,都会调用 reportPlaySeconds
reportPlaySeconds being called regardless of returned interval
我正在使用一些额外的逻辑来绕过这个问题,但我注意到 reportPlaySeconds
被调用而不管 interval
值 I return.
interval string(128) - Number of seconds to elapse before next report. Note: A value of 0 indicates that no reporting after the start of playback of that track should be issued.
这是一个示例请求请求:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.sonos.com/Services/1.1">
<SOAP-ENV:Header>
<ns1:credentials>
<ns1:deviceId>00-01-02-0A-0B-0C</ns1:deviceId>
<ns1:deviceProvider>Sonos</ns1:deviceProvider>
<ns1:sessionId>303-TEMP</ns1:sessionId>
</ns1:credentials>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns1:reportPlaySeconds>
<ns1:id>track_id</ns1:id>
<ns1:seconds>0</ns1:seconds>
</ns1:reportPlaySeconds>
</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:ns1="http://www.sonos.com/Services/1.1">
<SOAP-ENV:Body>
<ns1:reportPlaySecondsResponse>
<ns1:reportPlaySecondsResult>
<ns1:interval>0</ns1:interval>
</ns1:reportPlaySecondsResult>
</ns1:reportPlaySecondsResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
如果我没有正确理解文档,returning <ns1:interval>0</ns1:interval>
意味着不应再次调用 reportPlaySeconds
。我还使用 setPlayedSeconds
来计算更精细的报告,因此不需要额外的 reportPlaySeconds
调用。
有什么想法吗?
尽管文档确实说明您(提供者)可以通过在 reportPlaySecondsResult
中返回 interval
来更改报告间隔,但最新版本(版本 5.4)的固件中未启用该功能,内部版本 29.5-91030,2015 年 7 月 13 日发布)。
如您所见,无论 reportPlaySecondsResult
.
中返回的值如何,播放器都会继续以固定间隔报告
我已与文档团队开立了一张票以进行更新。
我正在使用一些额外的逻辑来绕过这个问题,但我注意到 reportPlaySeconds
被调用而不管 interval
值 I return.
interval string(128) - Number of seconds to elapse before next report. Note: A value of 0 indicates that no reporting after the start of playback of that track should be issued.
这是一个示例请求请求:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.sonos.com/Services/1.1">
<SOAP-ENV:Header>
<ns1:credentials>
<ns1:deviceId>00-01-02-0A-0B-0C</ns1:deviceId>
<ns1:deviceProvider>Sonos</ns1:deviceProvider>
<ns1:sessionId>303-TEMP</ns1:sessionId>
</ns1:credentials>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ns1:reportPlaySeconds>
<ns1:id>track_id</ns1:id>
<ns1:seconds>0</ns1:seconds>
</ns1:reportPlaySeconds>
</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:ns1="http://www.sonos.com/Services/1.1">
<SOAP-ENV:Body>
<ns1:reportPlaySecondsResponse>
<ns1:reportPlaySecondsResult>
<ns1:interval>0</ns1:interval>
</ns1:reportPlaySecondsResult>
</ns1:reportPlaySecondsResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
如果我没有正确理解文档,returning <ns1:interval>0</ns1:interval>
意味着不应再次调用 reportPlaySeconds
。我还使用 setPlayedSeconds
来计算更精细的报告,因此不需要额外的 reportPlaySeconds
调用。
有什么想法吗?
尽管文档确实说明您(提供者)可以通过在 reportPlaySecondsResult
中返回 interval
来更改报告间隔,但最新版本(版本 5.4)的固件中未启用该功能,内部版本 29.5-91030,2015 年 7 月 13 日发布)。
如您所见,无论 reportPlaySecondsResult
.
我已与文档团队开立了一张票以进行更新。