创建群组之前的回调
功能说明
App 业务服务端可以通过该回调获取用户创建群组的请求,同时业务服务端可以拒绝用户创建群组的请求,或对请求做修改和干预。
注意事项
- 为启用回调,必须配置回调 URL,并开启本条回调协议对应的开关。配置方法详见 回调说明 文档。
- 回调的方向是 OpenIM Server 向 App 后台发起 HTTP/HTTPS POST 请求。
- APP 业务服务端需在超时时间内响应此请求。
可能触发该回调的场景
- App 用户通过客户端创建群组
- App 管理员通过 REST API 创建群组
回调发生时机
- OpenIM Server 准备创建群组之前。
接口说明
请求 URL 示例
此处CallbackCommand
为:callbackBeforeCreateGroupCommand
{WEBHOOK_ADDRESS}/callbackBeforeCreateGroupCommand?contenttype=json
请求包示例
{
"callbackCommand": "callbackBeforeCreateGroupCommand",
"groupID": "12345",
"groupName": "MyGroup",
"notification": "Welcome to MyGroup!",
"introduction": "This is a group for discussing example topics.",
"faceURL": "http://example.com/path/to/face/image.png",
"ownerUserID": "user123",
"createTime": 1673048592000,
"memberCount": 10,
"ex": "Extra data",
"status": 1,
"creatorUserID": "user123",
"groupType": 1,
"needVerification": 1,
"lookMemberInfo": 1,
"applyMemberFriend": 0,
"notificationUpdateTime": 1673048592000,
"notificationUserID": "user456",
"initMemberList": [
{
"userID": "user789",
"roleLevel": 60
},
{
"userID": "user101112",
"roleLevel": 20
}
]
}
请求包字段说明
对象 | 类型 | 描述 |
---|---|---|
callbackCommand | string | 回调命令,这里是创建群组之前的回调 |
groupID | string | 群组的唯一标识符 |
groupName | string | 群组的名称 |
notification | string | 群组的通知信息 |
introduction | string | 群组的简介 |
faceURL | string | 群组的图标的URL |
ownerUserID | string | 群组所有者的用户ID |
createTime | int64 | 群组创建的时间戳(毫秒) |
memberCount | uint32 | 群组的成员数量 |
ex | string | 额外的数据字段 |
status | int32 | 群组的状态 |
creatorUserID | string | 群组的创建者的用户ID |
groupType | int32 | 群类型,固定为2。 |
needVerification | int32 | 是否需要验证加入群组 |
lookMemberInfo | int32 | 是否可以查看群成员信息 |
applyMemberFriend | int32 | 是否可以申请加群成员为好友 |
notificationUpdateTime | int64 | 群通知的更新时间戳(毫秒) |
notificationUserID | string | 更新群通知的用户ID |
initMemberList | array | 群组初始成员的列表,包括userID和roleLevel两个子字段 |
initMemberList.userID | string | 初始成员的用户ID |
initMemberList.roleLevel | int32 | 初始成员的角色等级 |
应答包示例
允许创建
{
"actionCode": 0,
"errCode": 0,
"errMsg": "",
"errDlt": "",
"nextCode": 0,
"groupID": "G001",
"groupName": "MyGroup",
"notification": "Welcome to MyGroup!",
"introduction": "A group for discussions",
"faceURL": "http://example.com/groupface.png",
"ownerUserID": "user01",
"ex": "Some extra data",
"status": 1,
"creatorUserID": "user02",
"groupType": 1,
"needVerification": 0,
"lookMemberInfo": 1,
"applyMemberFriend": 1
}
应答包字段说明
字段 | 值 | 说明 |
---|---|---|
actionCode | 0 | 表示业务系统的回调是否正确执行。0 表示操作成功。 |
errCode | 5001 | 表示自定义错误码,范围在5000-9999之间。在 actionCode 不等于0时设置;在 nextCode 等于1时设置。 |
errMsg | "An error message" | 自定义错误码对应的简单错误信息。 |
errDlt | "Detailed error information" | 自定义错误码对应的详细错误信息。 |
nextCode | 1 | 下一步执行指令,1 表示拒绝继续执行,actionCode 等于0 时设置。 |
groupID | string | 群组的唯一标识符。 |
groupName | string | 群组的名字。 |
notification | string | 群组的通知/公告消息。 |
introduction | string | 群组的简介。 |
faceURL | string | 群组的图标或者图片的URL。 |
ownerUserID | string | 群组拥有者的用户ID。 |
ex | string | 额外的数据或信息。 |
status | int32 | 群组的状态。 |
creatorUserID | string | 创建群组的用户ID。 |
groupType | int32 | 群类型,固定为2。 |
needVerification | int32 | 是否需要验证才能加入群组。 |
lookMemberInfo | int32 | 是否可以查看群组成员信息。 |
applyMemberFriend | int32 | 是否可以申请成为群组成员的好友。 |