Как обрабатывать события Amazon AudioPlayer?

Я пишу простой Alexa Skill, который использует AudioPlayer для воспроизведения длинного аудиофайла. Этот ответ StackOverflow прекрасно демонстрирует использование директив для воспроизведения (и остановки ) audio, но я не совсем уверен, как перехватывать такие события AudioPlayer, как PlayBackStopped и PlayBackPaused. По сути, я пытаюсь позволить пользователю приостановить аудиопоток, а затем возобновить воспроизведение с того места, где он остановился в последний раз. Буду рад любым примерам на Python!


person Free Mason    schedule 14.01.2017    source источник


Ответы (1)


Я не совсем уверен, как перехватывать события AudioPlayer, такие как PlayBackStopped и PlayBackPaused.

Такие события, как PlaybackPaused, представляют собой аудиозапросы, уведомляющие проигрыватель о состоянии. Поэтому всякий раз, когда пользователь делает паузу в активном сеансе, вы получаете два события: одно — STOP, а другое — PlayBackPaused.

Я пытаюсь позволить пользователю приостановить аудиопоток, а затем возобновить воспроизведение с того места, на котором он остановился в последний раз.

Поэтому всякий раз, когда вы получаете PlayBackStopped, вы также получаете смещение в миллисекундах. Вы можете взять это смещение и сохранить в DynamoDB или любом другом постоянном хранилище. Когда пользователь возвращается, просто проверьте, есть ли у него какое-либо смещение, и начните оттуда.

Документация Amazon

Пример python ask-SDK многопотокового аудиоплеера.

person Aarth Tandel    schedule 27.08.2019