0

我正在使用一些额外的逻辑来绕过这个问题,但我注意到reportPlaySeconds无论interval我返回的值如何都会被调用。

结果文档指出:

间隔字符串(128) - 下一次报告之前经过的秒数。注意:值 0 表示在该曲目开始播放后不应发出报告。

这是一个示例请求请求:

<?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>

如果我正确理解了文档,则不应再次调用返回<ns1:interval>0</ns1:interval>手段。reportPlaySeconds我还setPlayedSeconds用来计算更精细的报告,因此reportPlaySeconds不需要额外的调用。

有任何想法吗?

4

1 回答 1

1

interval尽管文档确实声明您(提供者)可以通过返回来更改报告间隔reportPlaySecondsResult,但从最新版本(版本 5.4,内部版本 29.5-91030,2015 年 7 月 13 日发布)开始,固件中未启用该功能。

如您所见,无论在reportPlaySecondsResult.

我已经向文档团队开了一张票以进行更新。

于 2015-07-21T15:50:36.700 回答