群事件通知

1 创建群

对应客户端接口createGroup

{"action":"AEC_GROUP_CREATE","userId":"xxx","addUsers":"userId1,userId2,...","userDefineData":"xxxxx"}

userDefineData:客户端创建群时groupName参数的值,可以根据自己的业务逻辑来决定其内容,比如里面可以传群名也可以传json。

userId: 要创建群的用户

addUsers:用逗号分开的群成员列表,里面已经包含了创建者。

成功时返回格式:

{"status":"1","data":"newGroupId"}

其中newGroupId为您新创建的群号。

2 同步全部群成员

收到此请求时,需要返回此groupId的全部成员

{"action":"AEC_GROUP_SYNC_ALL","groupId":"xxx"}

成功时返回格式:

{
"status": "1",
"data": {
"groupList": "userId1,userIdx...",
"ignoreList": "userId1,userIdx,..."
}
}

其中,groupList表示这个群的所有群成员,用逗号分开。

ignoreList为可选参数,表示对该群开启了消息免打扰的所有群成员,用逗号分开。如果为空,请不要传该字段。

3 删除群

表示用户想要删除群,可在此判断用户是否有删除权限,比如是否为创建者。如果有权限,删除您服务器里面的群数据。

{"action":"AEC_GROUP_DEL", "userId":"xxx","groupId":"xxx"}
//返回 {"status":"x"}

4 新增群成员

对应客户端接口addGroupMembers

{"action":"AEC_GROUP_ADD_USER","userId":"xxx","groupId":"xxx","addUsers":"userId1,userId2,...","userDefineData":"xxxxx"}
//返回 {"status":"x"}

addUsers :是指用户希望添加到该群的成员列表,用逗号分隔,如果添加单个用户,则没有逗号。
userDefineData:(可选),客户端SDK发过来的自定义数据,您可以根据自己的业务逻辑来决定其内容。

5 新增群成员并同步全部群成员

{"action" : "AEC_GROUP_ADD_USER_AND_SYNC_ALL", "userId" : "xxx","groupId":"xxx","addUsers":"userId1,userId2,...","userDefineData(可选)":"xxxxx"}
//返回 {"status":"x","data":{"groupList":"userId1,userId2,...","ignoreList(可选)":"userId1,userId2,..."}}

和AEC_GROUP_ADD_USER类似,但此时需要返回全部的群成员,类似AEC_GROUP_SYNC_ALL。

groupList表示这个群的所有成员,ignoreList为可选参数,表示所有开启了群消息免打扰的群成员。

群消息免打扰是指该群的消息将不会推送至此用户

6 删除群成员

对应客户端接口deleteGroupMembers

{"action":"AEC_GROUP_REMOVE_USER","userId":"xxx","groupId":"xxx","removeUsers":"userId1,userId2,..."}
//返回 {"status":"x"}

removeUsers是指用户希望从群内删除的成员列表,用逗号分隔,如果删除单个用户,则没有逗号。

7 删除群成员并同步全部群成员

{"action":"AEC_GROUP_REMOVE_USER_AND_SYNC_ALL", "userId":"xxx","groupId":"xxx","removeUsers":"userId1,userId2,..."}
//返回 {"status":"x","data":{"groupList":"userId1,userId2,...","ignoreList(可选)":"userId1,userId2,..."}}

和AEC_GROUP_REMOVE_USER类似,但此时需要返回全部的群成员,类似AEC_GROUP_SYNC_ALL。

groupList表示这个群的所有成员,ignoreList为可选参数,表示所有开启了群消息免打扰的群成员。

群消息免打扰是指该群的消息将不会推送至此用户

8 设置免打扰模式

{"action" : "AEC_SET_GROUP_PUSH_IGNORE", "userId" : "xxx","groupId":"xxx"}
//返回 {"status":"x"}

用户请求设置该群为免打扰状态,设置后该群的消息将不会推送至此用户。

9 设置免打扰模式并同步群成员

{"action" : "AEC_SET_GROUP_PUSH_IGNORE_AND_SYNC_ALL", "userId" : "xxx","groupId":"xxx"}
//返回 {"status":"x","data":{"groupList":"userId1,userId2,...","ignoreList(可选)":"userId1,userId2,..."}}

和AEC_SET_GROUP_PUSH_IGNORE类似,但此时需要返回全部的群成员,类似AEC_GROUP_SYNC_ALL。

groupList表示这个群的所有成员,ignoreList为可选参数,表示所有开启了群消息免打扰的群成员。

群消息免打扰是指该群的消息将不会推送至此用户

10 取消免打扰

{"action" : "AEC_UNSET_GROUP_PUSH_IGNORE", "userId" : "xxx","groupId":"xxx"}
//返回 {"status":"x"}

用户请求取消设置该群为免打扰状态,该群的消息将会推送至此用户。

11 取消免打扰并同步群成员

{"action" : "AEC_UNSET_GROUP_PUSH_IGNORE_AND_SYNC_ALL", "userId" : "xxx","groupId":"xxx"}
//返回 {"status":"x","data":{"groupList":"userId1,userId2,...","ignoreList(可选)":"userId1,userId2,..."}}

和AEC_UNSET_GROUP_PUSH_IGNORE类似,但此时需要返回全部的群成员,类似AEC_GROUP_SYNC_ALL。

groupList表示这个groupId的所有成员,ignoreList为可选参数,表示所有开启了群消息免打扰的群成员。

群消息免打扰是指该群的消息将不会推送至此用户