全部产品
视频直播

连麦回调格式说明

更新时间:2017-09-19 11:32:58   分享:   

功能介绍

连麦状态实时信息回调,可以及时通知用户连麦的可用状态及使用状态。

注意事项

原理:通过HTTP接口向用户服务器发送POST请求,将连麦的可用状态及结果通知通过post body方式实时反馈给用户,用户服务器通过200响应返回接口来获取该请求的post body的数据从而得到实时的反馈结果。

URL无需标识,只需可正常访问,URL的应答有要求如下:

如果访问超时,会重试这个URL,目前超时时间是5s,重试次数是5次,重试间隔为1s或2s。

配置引导

支持在控制台配置,为可选配置。

连麦回调

混流回调通知

用户需要在如上所示的连麦控制台上设置连麦回调通知。

用于通知使用方混流的回调通知,由服务端调用,服务会使用用户在连麦控制台上设置回调的URL,以post一个json格式内容的方式通知给用户, 对于混流来讲,回调包含两种,一种是混流可用回调,一种是混流结果通知回调。

  1. http://notify_url
  2. json 格式:
  3. {
  4. NotificationType”: MixAvailableNotification”,
  5. NotificationId : xxx-xxxx-xxxx-xxxxx”,
  6. NotificationData : { 。。。。}
  7. }

参数说明

参数 描述
NotificationType 该Notification类型,对于混流来讲,分别为:MixAvailableNotification对应混流可用回调和MixResultNotification对应混流结果通知回调
NotificationID 该Notification唯一ID,便于问题跟踪和日志追溯
NotificationData Notification数据json格式,不同Notification类型,会有不同的Notification数据格式
混流可用回调

用于通知使用方以某路流为主流是否可以调用混流API StartMultipleStreamMixService接口。

  1. http://notify_url
  2. json 格式:
  3. {
  4. NotificationType”: MixAvailableNotification”,
  5. NotificationId : xxx-xxxx-xxxx-xxxxx”,
  6. NotificationData : {
  7. MainMixDomain”: live.aliyunlive.com”,
  8. MainMixApp”: live_mix”,
  9. MainMixStream : test001”,
  10. Event : MixAvailable
  11. }
  12. }

NotificationData参数说明

参数 描述
MainMixDomain 主流域名
MainMixApp 主流Appname
MainMixStream 主流流名
Event 事件

Event说明

Event 类型 描述
MixAvailable 该流已经ready,可以进行混流StartMultipleStreamMixService接口调用。

注意:若回调返回HTTP状态码为200,服务端不再发送该回调。

混流结果通知回调

用于通知使用方调用混流API后的异步结果通知或者混流过程中的内容是否发生改变。

回调格式样例

  1. http://notify_url
  2. json 格式:
  3. {
  4. NotificationType”: MixResultNotification”,
  5. NotificationId : xxx-xxxx-xxxx-xxxxx”,
  6. NotificationData”: {
  7. MainMixDomain”: live.aliyunlive.com”,
  8. MainMixApp”: live_mix”,
  9. MainMixStream : test001”,
  10. MixDomain”: live.aliyunlive.com”,
  11. MixApp”: live1”,
  12. MixStream : test002”,
  13. MixTemplate : mhd”,
  14. Event : MixResult ,
  15. Code : Success”,
  16. Message”: xxx
  17. }
  18. }

NotificationData参数说明参数说明

参数 描述
MainMixDomain 主流域名
MainMixApp 主流Appname
MainMixStream 主流流名
MixDomain 副流域名
MixApp 副流Appname
MixStream 副流流名
MixTemplate 混流布局模板,诸如msd/mhd等
Event 混流事件
Code 结果成功或者失败
Message 错误描述

Event类型说明

Event 值 描述
MixResult 混流结果

Code类型说明

Code 值 语意 画面状态 建议操作
Success 混流成功 主副流叠加成功 触发相应业务逻辑
MainStreamNotExist 因主流不存在导致的混流异常 服务端停止输出视频流,画面停留在混流最后一帧 等待主流重推后业务恢复或者停止连麦(调用Stop)
MixStreamNotExist 因副流不存在导致的混流异常 主流继续播放,副流最后一帧叠加在主流上 等待副流重推后业务恢复或者停止连麦(调用Remove或者Stop)
InternalError 内部错误导致的混流异常 不确定 等待内部重试或者停止连麦(调用Stop)
  • 注意事项:
    • InternalError表示的由于内部错误导致的异常,业务可以根据需要选择等待系统自动恢复或重试或者停止连麦。
    • 主流中断或副流中断对连麦画面的影响是不一样的,主流中断时,整体视频流会中断;副流中断时,整体视频流会继续,叠加视频中主流部分继续播放,副流部分停止在最后一帧。主流中断后在5分钟内继续推流,系统会自动恢复前期的多人混流状态,如果超过5分钟,主流前期的混流状态讲会被系统清除,客户端需要自己主动调用StartMultipleStreamMixService和 AddMixStream接口。辅流中断后然后继续恢复推流,系统也会自动恢复前期多人混流状态,且没有5分钟时间限制。
    • 当收到回调code为MainStreamNotExist时,主流的混流接口不可调用,需等到主流混流可用通知以后才能继续调用。
    • 若回调返回HTTP状态码为200,服务端不再发送该回调。

示例

混流可用回调

  1. POST: http://www.mydomain.com
  2. body json 格式:
  3. {
  4. "NotificationType": "MixAvailableNotification",
  5. "NotificationId": "850ab958-a5d8-4a30-8b3f-65e8a9b3d4d3",
  6. "NotificationData": {
  7. "MainMixDomain": "live.aliyunlive.com",
  8. "MainMixApp": "live_mix",
  9. "MainMixStream": "test001",
  10. "Event": "MixAvailable"
  11. }
  12. }

混流结果通知回调

  1. POST: http://www.mydomain.com
  2. body json 格式:
  3. {
  4. "NotificationType": "MixResultNotification",
  5. "NotificationId": "120Cb952-a5d8-4a30-8b3f-65e8a1b2a3c4",
  6. "NotificationData": {
  7. "MainMixDomain": "live.aliyunlive.com",
  8. "MainMixApp": "live_mix",
  9. "MainMixStream": "test001",
  10. "MixDomain": "live.aliyunlive.com",
  11. "MixApp": "live1",
  12. "MixStream": "test002",
  13. "MixTemplate": "mhd",
  14. "Event": "MixResult",
  15. "Code": "Success",
  16. "Message": ""
  17. }
  18. }
本文导读目录
本文导读目录
以上内容是否对您有帮助?