群组管理

云通讯平台为开发者提供了一套完整的群组管理接口,便于开发者集成群组相关功能。群组管理相关接口包括创建群组,查询、修改群组属性,删除群组,按条件搜索公共群组,用户申请加入群组,管理员邀请用户加入群组,管理员删除成员,成员主动退出群组,设置群组成员角色接口。

创建群组

 1. 请求地址    

  • POST /{SoftVersion}/Application/{appId}/IM/Group/CreateGroup

 2. 请求包头

请参阅《鉴权说明

 3. 请求包体

属性类型约束说明
userName String 必选自定义账号或通讯账号
name String 必选 群组名字,最长为50个字符
type String 必选 群组类型
0:临时组(上限100人)
1:付费普通组(上限300人)
2:付费普通组(上限500人)
3:付费普通组 (上限1000人)
4:付费VIP组(上限2000人)
注意:讨论组取值范围0、1、2,如果大于2则默认2
permission String 可选
申请加入模式
0:默认直接加入
1:需要身份验证  
2:私有群组    缺省0
declared
String 可选 群组公告,最长为200个字符
target
String
可选
0:讨论组  
1:
群组  缺省1
groupDomain
String
可选
用户扩展字段

 

 4. 请求示例

  • POST /2013-12-26/Application/20150314000000110000000000000010/IM/Group/CreateGroup?sig=C1F20E7A97 
  • HTTP/1.1
  • Accept:application/json;
  • Content-Type:application/json;
  • charset=utf-8;
  • Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyM=

  • {
  •  "userName": "123",
  •  "name": "云通讯技术交流",
  •  "type": "0",
  •  "declared":"云通讯技术交流",
  •  "permission":"0"
  • }

        

5. 响应包体

属性类型约束说明
statusCode String 必选 请求状态码,取值000000(成功)。
groupId String 必选 群组ID

6. 响应示例    

  • HTTP/1.1 200 OK 
  • Content-Length: 641 

  • {"statusCode": "000000", "groupId": "g80000049837291"}       

修改群组属性

1. 请求地址

        

  • POST /{SoftVersion}/Application/{appId}/IM/Group/ModifyGroup

      

2. 请求包头

请参阅《鉴权说明

3. 请求包体

属性类型约束说明
userName String 必选自定义账号或通讯账号
groupId String 必选 群组ID
permission String 可选
申请加入模式
0:默认直接加入
1:需要身份验证  
2:私有群组    缺省0
name String 必选
群组名字,最长50个字符
declared String 可选 群组公告,最长为200个字符
groupDomain
String
可选
用户扩展字段

4. 请求示例

        

  • POST /2013-12-26/Application/20150314000000110000000000000010/IM/Group/ModifyGroup?sig=C1F20E7A97 
  • HTTP/1.1
  • Accept:application/json;
  • Content-Type:application/json;
  • charset=utf-8;
  • Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyM=

  • {
  •  "userName":"123",
  •  "groupId":"g12345678",
  •  "name":"云通讯",
  •  "declared":"技术交流",
  •  "permission":"1"
  • }

       

5. 响应包体

属性类型约束说明
statusCode String 必选 请求状态码,取值000000(成功)。

6. 响应示例    

  • HTTP/1.1 200 OK 
  • Content-Length: 641
  •  
  • {"statusCode":"000000"}

  

删除群组

1. 请求地址     

  • POST /{SoftVersion}/Application/{appId}/IM/Group/DeleteGroup

      

2. 请求包头

请参阅《鉴权说明

3. 请求包体

属性类型约束说明
userName String 必选自定义账号或通讯账号
groupId String 必选 群组ID

4. 请求示例   

  • POST /2013-12-26/Application/20150314000000110000000000000010/IM/Group/DeleteGroup?sig=C1F20E7A97 
  • HTTP/1.1
  • Accept:application/json;
  • Content-Type:application/json;
  • charset=utf-8;
  • Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyM=

  • {
  •  "userName":"123",
  •  "groupId":"g80000049837291"
  • }

        

5. 响应包体

属性类型约束说明
statusCode String 必选 请求状态码,取值000000(成功)。

6. 响应示例

  • HTTP/1.1 200 OK 
  • Content-Length: 641 

  • {"statusCode":"000000"}       

按条件搜索公共群组

1. 请求地址   

  • POST /{SoftVersion}/Application/{appId}/IM/Group/SearchPublicGroups

     

2. 请求包头

请参阅《鉴权说明

3. 请求包体

属性类型约束说明
userName String 必选自定义账号或通讯账号
groupId String 可选 根据群组ID查找(同时具备两个条件,查询以此为先)
name String 可选 根据群组名查找(模糊查询,群组名称为纯数字或纯字母时需要输入完整的群名称,结果中不包含私有群组)

4. 请求示例        

  • POST /2013-12-26/Application/20150314000000110000000000000010/IM/Group/SearchPublicGroup?sig=C1F20E7A97 
  • HTTP/1.1
  • Accept:application/json;
  • Content-Type:application/json;
  • charset=utf-8;
  • Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyM=

  • {
  •  "userName":"123",
  •  "groupId":"g80019283765",
  •  "name":"云通讯技术交流"
  • }       

5. 响应包体

属性类型约束说明
statusCode String 必选 请求状态码,取值000000(成功)。
groupId String  必选 群组ID
name String 必选 群组名字,最长50个字符
type String  必选 群组类型  
0:临时组(上限100人)
1:付费普通组(上限300人)
2:付费普通组(上限500人)
3:付费普通组 (上限1000人)
4:付费VIP组(上限2000人)
count String 必选 群组的成员人数
permission String 必选 申请加入模式 0:默认直接加入 1:需要身份验证

6. 响应示例      

  • HTTP/1.1 200 OK 
  • Content-Length: 641 

  • {
  •     "statusCode": "000000",
  •     "groups": {
  •       "group": {
  •         "groupId": "g80000049837921",
  •         "name": "云通讯",
  •         "count": "100",
  •         "type": "1",
  •         " permission":"0"
  •       }
  •    }
  • }

    

查询群组属性

1. 请求地址

  • POST /{SoftVersion}/Application/{appId}/IM/Group/QueryGroupDetail
  •         

2. 请求包头

请参阅《鉴权说明

3. 请求包体

属性类型约束说明
userName String 必选自定义账号或通讯账号
groupId String 必选 群组ID

4. 请求示例

  • POST /2013-12-26/Application/20150314000000110000000000000010/IM/Group/QueryGroupDetail?sig=C1F20E7A97 
  • HTTP/1.1
  • Accept:application/json;
  • Content-Type:application/json;
  • charset=utf-8;
  • Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyM=

  • {
  •  "userName":"123",
  •  "groupId":"g80000049837291"
  • }

      

5. 响应包体

属性类型约束说明
statusCode String 必选 请求状态码,取值000000(成功)。
name String 必选 群组名字,最长为50个字符
owner String 必选 群组所有者(默认为管理员)
declared String 必选 群组公告,最长为200个字符
count String 必选 群组成员人数
dateCreated String 必选 群组创建时间,格式为时间戳
permission
String 必选 申请加入模式
0:默认直接加入
1:需要身份验证 
target
String
必选
群组类型
0:讨论组  
1:
群组
groupDomain
String
可选
用户扩展字段

6. 响应示例     

  • HTTP/1.1 200 OK 
  • Content-Length: 641 

  •  "statusCode": "000000",
  •  "name": "云通讯技术交流",
  •  "owner": "8002837363838", 
  •  "type": "0",
  •  "declared": "云通讯技术交流",
  •  "permission": "0", 
  •  "count": "100",
  •  "dateCreated": "2013-7-25 15:23:30"
  • }

  

用户申请加入群组

1. 请求地址  

  • POST /{SoftVersion}/Application/{appId}/IM/Group/JoinGroup

      

2. 请求包头

请参阅《鉴权说明

3. 请求包体

属性类型约束说明
userName String 必选自定义账号或通讯账号
groupId String 必选 群组ID
declared String 可选 申请理由,最长为50个字符

4. 请求示例      

  • POST /2013-12-26/Application/20150314000000110000000000000010/IM/Group/JoinGroup?sig=C1F20E7A97 
  • HTTP/1.1
  • Accept:application/json;
  • Content-Type:application/json;
  • charset=utf-8;
  • Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyM=

  • {
  •  "userName": "123",
  •  "groupId": "g80000049837291",
  •  "declared": "hello"
  • }

     

5. 响应包体

属性类型约束说明
statusCode String 必选 请求状态码,取值000000(成功)。

6.响应示例       

  • HTTP/1.1 200 OK 
  • Content-Length: 641 

  • { "statusCode": "000000" }      

群组管理员邀请用户加入群组

1. 请求地址    

  • POST /{SoftVersion}/Application/{appId}/IM/Group/InviteJoinGroup

      

2. 请求包头

请参阅《鉴权说明

3. 请求包体

属性类型约束说明
userName String  必选自定义账号或通讯账号
groupId String 必选 群组ID
members list
必选 被邀请成员,默认一次最多可以邀请5人,且邀请的成员必须是已经在客户端登陆过的用户。
confirm String 可选
是否需要被邀请人确认
0 :需要
1:不需要(自动加入群组)缺省1
declared String 可选 邀请理由,最长为50个字符

4. 请求示例

  • POST /2013-03-22/Application/20150314000000110000000000000010/IM/Group/InviteJoinGroup?sig=C1F20E7A97 
  • HTTP/1.1
  • Accept:application/json;
  • Content-Type:application/json;
  • charset=utf-8;
  • Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyM=

  • {
  •     "groupId": "g80000049837291",
  •     "members": [      
  •         "8000000123456789",
  •         "8000000123456789"
  •     ],
  •     "declared": "hello",
  •     "confirm": "0"
  • }

     

5. 响应包体

属性类型约束说明
statusCode String 必选 请求状态码,取值000000(成功)
failsList可选加入失败详情节点
memberString可选账号
reasonString可选原因

6. 响应示例

  • HTTP/1.1 200 OK 
  • Content-Length: 641 

  • {
  •     "statusCode": "000000",
  •     "fails":[
  •     {"member":"12332","reason":"***"},
  •     {"member":"45631","reason":"***"}]
  • }

    

群组管理员删除成员

1. 请求地址  

  • POST /{SoftVersion}/Application/{appId}/IM/Group/DeleteGroupMember

2. 请求包头

请参阅《鉴权说明

3. 请求包体

属性类型约束说明
userName String 必选自定义账号或通讯账号
groupId String 必选 群组ID
members String 必选 待删除成员

4. 请求示例      

  • POST /2013-12-26/Application/20150314000000110000000000000010/IM/Group/DeleteGroupMember?sig=C1F20E7A97 
  • HTTP/1.1
  • Accept:application/json;
  • Content-Type:application/json;
  • charset=utf-8;
  • Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyM=

  • {
  •  "groupId": "g80000049837291",
  •  "members": ["8000000123456789","8000000123456785"]
  • }

      

5. 响应包体

属性类型约束说明
statusCode String 必选 请求状态码,取值000000(成功)。

6. 响应示例   

  • HTTP/1.1 200 OK 
  • Content-Length: 641 

  • { "statusCode": "000000"}        

成员主动退出群组

1. 请求地址 

  • POST /{SoftVersion}/Application/{appId}/IM/Group/LogoutGroup

        

2. 请求包头

请参阅《鉴权说明

3. 请求包体

属性类型约束说明
userName String 必选自定义账号或通讯账号
groupId String 必选 群组ID

4. 请求示例     

  • POST /2013-12-26/Application/20150314000000110000000000000010/IM/Group/LogoutGroup?sig=C1F20E7A97 
  • HTTP/1.1
  • Accept:application/json;
  • Content-Type:application/json;
  • charset=utf-8;
  • Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyM=

  • {
  •  "userName": "123",
  •  "groupId": "g80000049837291"
  • }

   

5. 响应包体

属性类型约束说明
statusCode String 必选 请求状态码,取值000000(成功)。

6. 响应示例

  • HTTP/1.1 200 OK 
  • Content-Length: 641 

  • {"statusCode": "000000"}      

设置群组成员角色

1. 请求地址    

  • POST /{SoftVersion}/Application/{appId}/IM/Group/SetMemberRole

       

2. 请求包头

请参阅《鉴权说明

3. 请求包体

属性类型约束说明
userName String 必选自定义账号或通讯账号
groupId String 必选 群组ID
member String 必选 成员帐号
role String 必选 角色 0创建者 1 管理员 2 普通成员

4. 请求示例 

  • POST /2013-12-26/Application/20150314000000110000000000000010/IM/Group/SetMemberRole?sig=C1F20E7A97 
  • HTTP/1.1
  • Accept:application/json;
  • Content-Type:application/json;
  • charset=utf-8;
  • Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3MjAwN2M6MjAxMzAyM=

  • {
  •  "userName": "123",
  •  "groupId": "g80000049837291",
  •  "member": "14128829087",
  •  "role": "1"
  • }

      

5. 响应包体

属性类型约束说明
statusCode String 必选 请求状态码,取值000000(成功)。

6. 响应示例       

  • HTTP/1.1 200 OK 
  • Content-Length: 641 

  • {" statusCode":"000000"}