调用SetLiveStreamsNotifyUrlConfig设置推流回调配置。
使用说明
本接口支持配置推流域名的回调地址及其鉴权信息。
QPS限制
本接口的单用户QPS限制为15次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。更多信息,请参见QPS限制。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
Action | String | 是 | SetLiveStreamsNotifyUrlConfig | 系统规定参数。取值:SetLiveStreamsNotifyUrlConfig。 |
DomainName | String | 是 | demo.aliyundoc.com | 您的推流域名。 |
NotifyUrl | String | 是 | http://guide.aliyundoc.com/notify | 直播流信息推送到的URL地址。 |
NotifyReqAuth | String | 否 | yes | 是否开启鉴权。取值:
说明 不填默认为no。 鉴权逻辑请参考下文的推流回调鉴权说明。 |
NotifyAuthKey | String | 否 | 123456 | 鉴权key。 说明 当请求参数NotifyReqAuth取值为yes时,本参数必填。 取值要求:
|
返回数据
名称 | 类型 | 示例值 | 描述 |
RequestId | String | 40A4F36D-A7CC-473A-88E7-154F92242566 | 请求ID。 |
示例
请求示例
http(s)://live.aliyuncs.com/?Action=SetLiveStreamsNotifyUrlConfig
&DomainName=demo.aliyundoc.com
&NotifyUrl=http://guide.aliyundoc.com/notify
&<公共请求参数>
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<?xml version="1.0" encoding="UTF-8" ?>
<SetLiveStreamsNotifyUrlConfigResponse>
<RequestId>4C747C97-7ECD-4C61-8A92-67AD806331FF</RequestId>
</SetLiveStreamsNotifyUrlConfigResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"SetLiveStreamsNotifyUrlConfigResponse" : {
"RequestId" : "4C747C97-7ECD-4C61-8A92-67AD806331FF"
}
}
错误码
HttpCode | 错误码 | 错误信息 | 描述 |
400 | ConfigAlreadyExists | Config has already exist. | 配置已添加。 |
访问错误中心查看更多错误码。
回调逻辑说明
直播推流状态回调中开播(publish)状态回调逻辑:
RTMP推流在阿里云直播服务收到On Publish消息后2秒内,如果推流端不主动断开,阿里云直播服务就会发推流成功回调。
假设您有推流域名A和播流域名B,如果您的域名B使用拉流直播(固定拉流和触发回源拉流)需要回调,请在域名A配置推流回调。配置后域名B的拉流回调逻辑与上一条一致,建联后默认2秒无主动断开即认为拉流成功。
推流回调鉴权说明
推流回调鉴权功能默认关闭,用户可在配置推流回调地址时启用鉴权。启用功能后,鉴权逻辑如下:
1. 阿里云视频直播发起回调请求时在HTTP(S)请求头中带上ALI-LIVE-TIMESTAMP
和ALI-LIVE-SIGNATURE
字段,供回调消息接收服务端进行签名认证。其中,ALI-LIVE-SIGNATURE
的值由如下计算而得:
ALI-LIVE-SIGNATURE=MD5SUM(MD5CONTENT)
MD5CONTENT=<回调域名>|<ALI-LIVE-TIMESTAMP取值>|<鉴权KEY>
2. 回调消息接收服务端接收回调消息时,将回调域名、ALI-LIVE-TIMESTAMP取值、鉴权Key进行拼接后计算MD5值,得到加密字符串,再将计算出的加密字符串与视频直播发起的HTTP(S)请求头中的ALI-LIVE-SIGNATURE字段值进行对比。如果不一致,则请求非法。
特殊错误码
错误代码 |
描述 |
HTTP 状态码 |
语义 |
InternalError |
The request processing has failed due to some unknown error. |
500 |
后台发生未知错误。 |
InvalidDomain.NotFound |
The domain provided does not exist in our records. |
404 |
当前账户下未查到域名。 |
IllegalOperation |
Illegal domain operate is not permitted. |
403 |
不支持当前操作,如:非直播类域名。 |
InvalidNotifyUrl.Malformed |
Specified parameter NotifyUrl is not valid. |
400 |
回调地址不是一个合法的HTTP地址。 |
InvalidNotifyUrl.Unsafe |
Specified NotifyUrl is not safe. |
400 |
非安全的NotifyUrl值。 |