作者:重庆互联网小徐 发布时间:2024-04-29 浏览:20031 赞(1950) 收藏 评论(0)
由于控制层是开源的,小微SDK并不知道您的设备当前状态。另一方面,您的设备可能有物理按键,用户可以通过按键来对设备进行操作,这个过程小微SDK也是不知道的。然而很多场景下,小微SDK是需要知道设备状态的,如小程序可以实时显示设备状态,又例如您询问小微,这首歌是谁唱的,小微是需要知道设备当前播放状态的。
由于上述原因,我们要求您必须按照我们的规则来上报当前设备状态,否则你的服务将得不到保证。状态上报接口为:
reportPlayState(XWPlayStateInfo stateInfo)
您应该在设备状态变化或者收到需要上报的控制指令之后及时上报,只需要上报大资源,即打断后能够恢复的资源(isRecovery = true),例如音乐,FM。无需上报小资源,例如TTS播放。这里列举一下常用场景的上报:
切歌:报2次,首先第一首歌abort、然后第二首歌start(如果可以的话,先报preload,再start)。
播放过程中唤醒了开始语音请求(这时候正常音乐是要暂停的):上报paused
操作2点了一首新歌,并且要准备播放了:先报刚才那首暂停的歌abort,再报新歌start
操作2问了一下天气或者闲聊:首先无需任何上报,音箱播放天气或者闲聊的TTS,对话结束之后正常逻辑应该恢复播放音乐,然后这时候上报resume。
该播放的东西播完了,无事可做:上报idle
一首歌自然播放完毕,开始播放下一首:上报第一首stop,再上报第二首start
所有的URL资源,如果可以的话,start之前先报preload
播放列表资源全部播放完毕,退出播放,上报finished,注意携带skilid。此时如果自动去播放别的了,就该报什么报什么,如果什么也不播放了,就上报idle。
服务器有时会主动下发一些消息推送,当设备收到推送的消息时,需要设备去处理播报tts。我们要求您必须按照我们的规则去处理。否则你的服务将得不到保证。如:开机提示;iot设备控制结果或查询结果的推送等。注:服务器会过滤,避免在休息时间下发消息。
重庆互联网项目从2004年开始为各行各业提供互联网发展解决方案,专业从事网站、小程序、微信公众号、APP、电商平台、系统等互联网平台开发,帮助企业实现从传统行业到互联网的完美转型。截止目前,重庆互联网合作的企业遍布全国各地,20年的开发经验和完善的售后服务体系获得合作客户的高度认可!
关注重庆互联网官方公众号,即可获取粉丝专享福利!
欢迎广大用户为此页面进行评价,评价成功将获得积分奖励!