有奖捉虫:云通信与企业服务文档专题,速来> HOT
推断流回调用于推送直播流状态信息,包括直播推流成功和直播推流中断。您需在回调模板中配置推流回调和断流回调消息接收服务器地址,并将该模板与推流域名进行关联。在生成对应的推流地址并开始推送直播流后,腾讯云直播后台会将推流结果回调到您设置的接收服务器中。
本文主要讲解触发推断流回调事件后,腾讯云直播发送给用户的回调消息通知字段。

注意事项

阅读本文之前,希望您已经了解腾讯云直播是如何配置回调功能、您是如何接收回调消息的,具体请参见 如何接收事件通知

推断流事件参数说明

事件类型参数

事件类型
字段取值说明
直播推流
event_type = 1
直播断流
event_type = 0

回调公共参数

字段名称
类型
说明
t
int64
过期时间,事件通知签名过期 UNIX 时间戳。
来自腾讯云的消息通知默认过期时间是10分钟,如果一条消息通知中的 t 值所指定的时间已经过期,则可以判定这条通知无效,进而可以防止网络重放攻击。
t 的格式为十进制 UNIX 时间戳,即从1970年01月01日(UTC/GMT 的午夜)开始所经过的秒数。
sign
string
事件通知安全签名 sign = MD5(key + t)。说明:腾讯云把加密 key 和 t 进行字符串拼接后通过 MD5 计算得出 sign 值,并将其放在通知消息里,您的后台服务器在收到通知消息后可以根据同样的算法确认 sign 是否正确,进而确认消息是否确实来自腾讯云后台。
说明
key 为 功能配置>直播回调 中的回调密钥,主要用于鉴权。为了保护您的数据信息安全,建议您填写。




回调消息参数

字段名称
类型
说明
appid
int
用户 APPID
app
string
推流域名
appname
string
推流路径
stream_id
string
直播流名称
channel_id
string
同直播流名称
event_time
int64
事件消息产生的 UNIX 时间戳
sequence
string
消息序列号,标识一次推流活动,一次推流活动会产生相同序列号的推流和断流消息
node
string
直播接入点的 IP
user_ip
string
用户推流 IP
stream_param
string
用户推流 URL 所带参数
push_duration
string
断流事件通知推流时长,单位毫秒
errcode
int
推断流错误码
errmsg
string
推断流错误描述
set_id
int
判断是否为国内外推流。1-6为国内,7-200为国外
width
int
视频宽度,最开始推流回调的时候若视频头部信息缺失,可能为0
height
int
视频高度,最开始推流回调的时候若视频头部信息缺失,可能为0

断流原因

断流原因详情请参见 断流记录

回调消息示例

直播推流回调消息示例

{ "app":"test.domain.com", "appid":12345678, "appname":"live", "channel_id":"test_stream", "errcode":0, "errmsg":"ok", "event_time":1703731478, "event_type":1, "height":0, "idc_id":34, "node":"42.81.194.37", "sequence":"2210464508206756938", "set_id":2, "sign":"df49************************f5d4", "stream_id":"test_stream", "stream_param":"stream_param=test", "t":1703732078, "user_ip":"1.1.1.1", "width":0 }

直播断流回调消息示例

{ "app":"test.domain.com", "appid":12345678, "appname":"live", "channel_id":"test_stream", "errcode":1, "errmsg":"The push client actively stopped the push", "event_time":1703731606, "event_type":0, "height":0, "idc_id":34, "node":"42.81.194.37", "push_duration":"128581", "sequence":"2210464508206756938", "set_id":2, "sign":"3485************************56ae", "stream_id":"test_stream", "stream_param":"stream_param=test", "t":1703732206, "user_ip":"1.1.1.1", "width":0 }