# 播放控制

当用户在设备上通过按键/界面控制音频播放时,你可以发送请求告知云端,云端会根据你的请求返回一个音频资源,你的设备需等待云端的返回并进行对应的执行。

注意

  1. 当用户在设备上通过按键/界面控制资源播放时,如果你可以在设备上自行处理该用户请求,请自行在设备上进行处理,无需发送请求至云端。
  2. 如果你无法在设备上自行处理该用户请求,你可以发送playback_controller.control_command,由云端判断用户控制的是什么资源。
  3. 为了防止网络状态不好时用户无法暂停资源播放,用户点击PAUSE按钮,设备必须在设备自行处理暂停操作。
消息类型 名称 必须实现
request control_command 否,需云端支持播放控制才需实现

# context

"iflyos_context": {
  ...
  "playback_controller": {
    "version": "1.0"
  },
  ...
}

参数 类型 说明 必填
version String 模块版本,现在是1.0

版本说明

版本 说明 更新日期
1.0 基础实现 2019-07-01

# request

{
  "iflyos_header": {...},
  "iflyos_context": {...},
  "iflyos_request": {
    "header": {
      "name": "playback_controller.control_command",
      "request_id": "xxxxxxxx"
    },
    "payload": {
      "type": "PAUSE"
    }
  }
}
参数 类型 说明 必填
iflyos_header Object 构建的通用 iflyos_header
iflyos_context Object 构建的通用 iflyos_context
type String 状态类型,详细信息见下表

type类型说明:

type 类型 说明 是否有回复
PAUSE 执行了暂停动作之后,发送此类型并告知当前 resource_id 是,得到pause回复
RESUME 执行了继续播放之后,发送此类型并告知当前 resource_id 是,会收到一个带offset的播放内容,应该优先用offset进行播放对应资源
NEXT 按键下一首,发送此类型并告知当前 resource_id 是,得到下一首内容
PREVIOUS 按键上一首,发送此类型并告知当前 resource_id 是,得到上一首内容
EXIT 按键关闭,发送此类型消息并告知当前resource_id