通知接口
所有文档
menu

音视频直播 LSS

通知接口

产品详情立即使用

LSS提供通知功能方便您实时掌握直播状态。通过在创建域名或创建流时指定通知,您可以在直播状态改变等情形下第一时间收到LSS推送的通知消息。

通知类型及格式

通知类型

通知类型 描述 结构体
SessionStatusChanged 直播流状态改变时触发 "body":{"previous":"READY","current":"ONGOING"},其中:
previous: 直播流改变前状态
current: 直播流改变后状态
StreamingStatusChanged 直播流状态改变时触发 "body":{"previous":null,"current":"STREAMING"},其中:
previous: 直播流改变前状态
current: 直播流改变后状态
当直播流状态为ONGOING时,流才会有直播流状态,null表示没有直播流状态
RecordFileGenerated 录制文件生成时触发 同步录制到VOD(视频点播)消息体:
"body":{"createTime":"2016-11-22T02:47:54Z","mediaId":"mda-gkxkuqznz28u812y","mediaTitle":"lss-gkxk2fwvy3wqyh4r/20161122104721"},其中:
mediaId:系统生成的媒资的唯一标识mediaId
mediaTitle:媒资名称
同步录制到BOS(对象存储)消息体:
"body":{"bucket":"live-bucket","key":"lss-fkig2241twm00z6b/recording_20151109143507.mp4","createTime":"2016-03-09T06:36:10Z","format":"mp4"},其中:
bucket: 录制文件存储的BOS bucket
key: 录制文件的object key
createTime: 录制文件的生成时间
format: 录制文件的格式:
mp4(选择mp4录制模板只有mp4视频生产的回调)
m3u8(如果未配置录制自动合并,则只有m3u8格式的回调;如果配置了自动合并,则除了m3u8的回调,还会在录制最后有一个ts切片生成的回调,用户可以忽略这个类型的回调。)
flv(选择flv录制模板只有flv视频生产的回调)
ThumbnailFileGenerated 缩略图生成时触发 "body": {"bucket": "<bucket>", "key": "<key>", "createTime": "2016-07-12T08:20:16Z ", "mode": "manual", "format": "jpg"},其中:
bucket: 存储缩略图文件的BOS Bucket名称
key: 缩略图文件在BOS存储中的Key
createTime: 缩略图生成时间
mode: 缩略图生成模式
format: 缩略图文件格式
IllegalContentDetected 开启黄反审核后,检测到非法内容时触发 "body": {"alarmType": "PORN", "confidence": "90", "imageUrl": "<image_url>},其中:
alarmType: 非法内容类型
confidence: 置信度
imageUrl: 非法图片链接

通知格式

LSS通过HTTP请求将通知消息POST到您所配置的通知接口,用户通知接口收到HTTP POST请求BODY示例。具体内容和格式与通知类型相对应,这里以“缩略图生成时触发”时通知接口为例:

{
    "sessionId":"lss-gjwmww88txi41gqt",
    "playDomain":"play.bcelive.com",
    "app":"live",
    "stream":"onszf1j2gn8gb80462",
    "requestId":"2585d6cb-9edd-4961-bab0-3a9c568da0f0",
    "body":{
        "bucket":"video-live-thumbnail",
        "key":"/lss-gjwmww88txi41gqt.jpg",
        "createTime":"2016-10-21T07:44:26Z",
        "mode":"manual",
        "format":"jpg"
    },
	"notifyTime":"2016-12-21T07:44:26Z",
	"type":"ThumbnailFileGenerated"
}

messageBody字段的值为字符串类型,可以通过常用的JSON库转为标准的JSON格式。

字段说明:

字段 描述
sessionId 直播流ID
playDomain 直播域名
app 应用名称
stream 流名称
body 直播通知内容,body的具体内容和格式与通知类型相对应,即不同的通知类型,body中包含的子字段也不同。
notifyTime 文件生成时间
type 直播通知类型

创建通知

接口描述

通过用户提供的回调地址创建通知,在创建域名时可以指定通知接口,则直播过程中直播状态改变等情况下,LSS会向您指定的回调地址推送通知消息。默认情况下,同一个域名下的流使用同一个通知接口。

说明:如果客户端响应超时或返回500,LSS 会重新发送通知。

请求语法

POST /v<version>/notification HTTP/1.1
accept-encoding: gzip, deflate
x-bce-date: <utc-date-string>
host:lss.bj.baidubce.com
x-bce-request-id: <bce-request-id>
content-type: application/json
authorization: <bce-authorization-string>

请求头域

无特殊请求头域。

请求参数

参数 字段类型 必要性 字段描述 可选值 默认值
name String 必选 接口名称。开头必须是小写字母,
其余可以是小写字母、_或数字组成,
最多不超过40个字符
- -
endpoint String 必选 通知消息接口地址,不超过256字符 - -

请求示例

POST /v5/notification HTTP/1.1
accept-encoding: gzip, deflate
x-bce-date: 2015-07-03T09:28:13Z
user-agent: python-requests/2.4.0 CPython/2.7.9 Darwin/14.3.0
host:lss.bj.baidubce.com
x-bce-request-id: 8776558c-81d9-4f97-8e2c-f977a286095d
content-type: application/json
authorization: bce-authorization-string

{
  "name": "live_notification", 
  "endpoint": "http://live.notificaitonDomain.com/"
}

响应头域

无特殊响应头域。

响应参数

N/A

响应示例

HTTP/1.1 200 OK
x-bce-request-id: 8776558c-81d9-4f97-8e2c-f977a286095d
Date: Fri, 03 Jul 2015 09:28:13 GMT
Transfer-Encoding: chunked
Content-Type: application/json;charset=UTF-8

查询通知

接口描述

查询通知的接口名称和接口地址。

请求语法

GET /v<version>/notification/<name> HTTP/1.1
accept-encoding: gzip, deflate
x-bce-date: <utc-date-string>
host:lss.bj.baidubce.com
x-bce-request-id: <bce-request-id>
content-type: application/json
authorization: <bce-authorization-string>

请求头域

无特殊请求头域。

请求参数

参数 字段类型 必要性 字段描述 可选值 默认值
name String 必选 通知名称 - -

请求示例

GET /v5/notification/live_notification HTTP/1.1
accept-encoding: gzip, deflate
x-bce-date: 2015-07-03T09:28:13Z
host:lss.bj.baidubce.com
x-bce-request-id: 8776558c-81d9-4f97-8e2c-f977a286095d
content-type: application/json
authorization: bce-authorization-string

响应头域

无特殊响应头域。

响应参数

参数 字段类型 字段描述
name String 接口名称
endpoint String 通知消息接口地址

响应示例

HTTP/1.1 200 OK
x-bce-request-id: 8776558c-81d9-4f97-8e2c-f977a286095d
Date: Fri, 03 Jul 2015 09:28:13 GMT
Transfer-Encoding: chunked
Content-Type: application/json;charset=UTF-8

{
  "name" : "live_notification",
  "endpoint" : "http://live.notificaitonDomain.com/"
}

通知列表

接口描述

获取已创建的全部通知。

请求语法

GET /v<version>/notification HTTP/1.1
accept-encoding: gzip, deflate
x-bce-date: <utc-date-string>
host:lss.bj.baidubce.com
x-bce-request-id: <bce-request-id>
content-type: application/json
authorization: <bce-authorization-string>

请求头域

无特殊请求头域。

请求参数

N/A

请求示例

GET /v5/notification HTTP/1.1
accept-encoding: gzip, deflate
x-bce-date: 2015-07-03T09:28:13Z
host:lss.bj.baidubce.com
x-bce-request-id: 8776558c-81d9-4f97-8e2c-f977a286095d
content-type: application/json
authorization: bce-authorization-string

响应头域

无特殊响应头域。

响应参数

参数 字段类型 字段描述
notifications Object 通知列表
+ name String 通知名称
+ endpoint String 通知消息接收地址

响应示例

HTTP/1.1 200 OK
x-bce-request-id: 8776558c-81d9-4f97-8e2c-f977a286095d
Date: Fri, 03 Jul 2015 09:28:13 GMT
Transfer-Encoding: chunked
Content-Type: application/json;charset=UTF-8

{
  "notifications" : [ {
    "name" : "live_notification",
    "endpoint" : "http://live.notificaitonDomain.com/"
  }, {
    "name" : "my_notification",
    "endpoint" : "http://my.notificaitonDomain.com/"
  } ]
}

删除通知

接口描述

删除指定的直播通知。

请求语法

DELETE /v<version>/notification/<name> HTTP/1.1
accept-encoding: gzip, deflate
x-bce-date: <utc-date-string>
host:lss.bj.baidubce.com
x-bce-request-id: <bce-request-id>
content-type: application/json
authorization: <bce-authorization-string>

请求头域

无特殊请求头域。

请求参数

N/A

请求示例

DELETE /v5/notification/live_notification HTTP/1.1
accept-encoding: gzip, deflate
x-bce-date: 2015-07-03T09:28:13Z
user-agent: python-requests/2.4.0 CPython/2.7.9 Darwin/14.3.0
host:lss.bj.baidubce.com
x-bce-request-id: 8776558c-81d9-4f97-8e2c-f977a286095d
content-type: application/json
authorization: bce-authorization-string

响应头域

无特殊响应头域。

响应参数

N/A

响应示例

HTTP/1.1 200 OK
x-bce-request-id: 8776558c-81d9-4f97-8e2c-f977a286095d
Date: Fri, 03 Jul 2015 09:28:13 GMT
Transfer-Encoding: chunked
Content-Type: application/json;charset=UTF-8
上一篇
统计接口
下一篇
轮播接口