文档

直播互动消息回调配置

更新时间:

直播互动提供进入群和退出群的回调事件,您可通过设置指定的回调事件及时获取其状态。通过阅读本文,您可以了解回调接口和回调鉴权的详情。

前提条件

  • 您已经通过提交工单(具体方式,请参见联系我们)的方式配置回调URL和鉴权Key,要求如下:

    • 回调URL:公网可访问。

    • 鉴权key:长度不超过32位。

  • 如果要使用RAM用户(子账号)调用IM服务接口,需要为其授予AliyunLiveFullAccess的权限策略。具体操作,请参见创建RAM用户并授权

回调接口说明

回调类型

HTTP(S),建议使用HTTPS。

回调方法

GET

回调示例

GET https://客户的回调地址?action=join_group&appId=a3*ewa&time=1676***494&gro
upId=a432c9d8-****-***-ad58-cc830016fabd&userId=w3dsqw**23saa

参数字段说明:

参数

类型

必选

描述

action

String

回调事件,取值:

  • join_group:进入群。

  • leave_group:退出群。

appId

String

应用ID。

time

Long

事件产生的时间,用UNIX时间戳表示,单位:毫秒。

groupId

String

群ID。

userId

String

用户ID。

响应结果

{
"code": 200
}

在响应body中,当code为200,表示客户处理回调事件成功;当code 非200时,阿里云则认为客户服务处理失败,会进行重试,确保事件通知客户服务。

回调鉴权

鉴权参数

在进行HTTP(S)请求回调时,在请求头增加ALI-IM-TIMESTAMPALI-IM-SIGNATURE参数字段,供回调消息接收服务端进行签名认证。

参数

描述

ALI-IM-TIMESTAMP

HTTP(S)请求发起时间,用UNIX时间戳表示。

ALI-IM-SIGNATURE

签名字符串,用32位MD5值表示,算法请参见下文。

计算签名字符串

计算ALI-IM-SIGNATURE时,需要依赖以下字段:

字段

描述

示例

回调URL

HTTP(S)请求回调地址。

https://www.example.com/your/callback

ALI-IM-TIMESTAMP

HTTP(S)请求发起时间,用UNIX时间戳表示。

1519375990

鉴权key

用户预设的签名Key,最长32位,必须同时包含大小写字母和数字。

Test123

将上述三个字段以竖线(|)拼接,再计算MD5值:

MD5Content = 回调URL|ALI-IM-TIMESTAMP|鉴权key
ALI-IM-SIGNATURE = md5sum(MD5Content)

ALI-IM-SIGNATURE计算示例如下:

ALI-IM-SIGNATURE = md5sum(https://www.example.com/your/callback|1519375990|Test123) = c72b60894140fa98920f1279219b****

回调消息接收端校验规则

回调消息接收端将设置的回调URL、ALI-IM-TIMESTAMP和鉴权Key字符串进行拼接,然后进行MD5值计算并得到加密串,再将加密串与请求头中ALI-IM-SIGNATURE字段进行对比,如果不一致,则表示非法请求。例如,经过MD5计算得到的加密串的值为c72b60894140fa98920f1279219b****,而请求头中ALI-IM-SIGNATURE字段值为79271e2cb028d10d9a8702626fd8****,此时前后加密串不一致,鉴权失败,表示非法请求。