【问题标题】:PlaybackNearlyFinished and PlaybackFinished occur almost at the same time?PlaybackNearlyFinished 和 PlaybackFinished 几乎同时发生?
【发布时间】:2017-11-18 02:23:32
【问题描述】:

事实证明,有时(不总是 btw 但非常频繁)PlaybackNearlyFinishedPlaybackFinished 几乎同时发生。同样令人困惑的是,这两个事件都传达了完全相同的偏移量,代表流的最末端:

发生这种情况时,PlaybackNearlyFinished 中安排的下一个流不会继续 - 播放刚刚结束。

除非这是 Alexa/Infrastructure 中的错误,否则我无法弄清楚如何实现播放列表的播放 - 无法可靠地安排即将播放的曲目...

我可以在我的代码中做些什么来让它正常工作吗?

我使用的是 Echo Dot 2 gen.,位于欧洲,使用 java SDK、AWS Lambda、Dynamo DB。

【问题讨论】:

    标签: alexa alexa-skills-kit alexa-skill


    【解决方案1】:

    看起来现在已经解决了——为了正确地排队下一个流,需要想出真正独特的流令牌。这意味着即使是相同的文件/url 也应该在一个唯一的令牌下排队。

    在上面的示例中,我使用播放列表中曲目的索引作为标记。一旦我像下面这样解决它,一切都开始像魅力一样工作:

    import org.apache.commons.lang3.RandomStringUtils;
    
    public class TokenService {
    
        public String createToken(int playbackPosition) {
            String suffix = RandomStringUtils.randomAlphanumeric(16);
            return String.valueOf(playbackPosition) + ":" + suffix;
        }
    
        public int tokenToPlaybackIndex(String token) {
            String positionStr = token.split(":")[0];
            return Integer.valueOf(positionStr);
        }
    }
    

    希望它对某人有所帮助!

    【讨论】:

      猜你喜欢
      • 2011-04-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-10
      • 2011-12-02
      • 1970-01-01
      相关资源
      最近更新 更多