邀请服务器成员
更新时间: 2024/07/17 17:57:34
创建完服务器后,可以通过服务器实现成员管理。本文介绍如何通过服务端 API 邀请用户加入服务器。
功能介绍
圈组的成员管理通过服务器实现。服务器所有者可以邀请其他用户加入服务器,还可以通过身份组相关接口为加入的成员赋予“邀请他人加入服务器的权限”。拥有该权限的服务器成员都可以邀请其他用户加入服务器。其他用户也可主动申请加入服务器。通过服务器,还可实现踢人、更新成员封禁状态等更多成员管理方式。
成员管理方式 | 说明 |
---|---|
邀请他人加入服务器 | 创建服务器后用户可以选择邀请他人成为服务器成员。 |
生成邀请码 | 拥有申请邀请管理权限的用户可以生成加入服务器的邀请码。 |
申请加入服务器 | 用户申请成为某个服务器的成员。 |
通过邀请码加入 | 用户通过获取到的邀请码加入服务器。 |
踢出他人 | 拥有踢除他人权限的用户可以将其他成员踢出服务器。 |
主动退出服务器 | 用户加入服务器后如不想继续待在该服务器,可选择主动离开。离开后用户将不会收到该服务器下的消息和通知。 |
修改成员信息 | 如有相应权限,用户可修改自己或者他人的服务器成员信息。 |
其他 | 查询服务器的申请邀请历史记录、封禁成员等。 |
调用时机
用户已为服务器成员,且已经获得了“邀请他人加入服务器的权限”。圈组内的权限通过身份组进行管理。
使用限制
服务器存在如下与其成员数量相关的限制:
- 单个用户的服务器的数量上限(包括自己创建的和加入的)默认为 100 个。
- 单个服务器可容纳人数上限默认为 500000。
- 可在云信控制台配置上述上限。 在云信控制台选择应用,进入IM 即时通讯 > 功能配置 > 圈组 > 子功能配置 即可配置。
URL
httpPOST https://api.netease.im/nimserver/qchat/inviteServerMember.action HTTP/1.1
Content-Type:application/x-www-form-urlencoded;charset=utf-8
请求参数
- POST 请求中 Headers 的设置请参考API调用方式。
- POST 请求中 Body 的设置如下:
参数 | 类型 | 必须 | 说明 |
---|---|---|---|
accid | String | 是 | 邀请者的 IM 帐号 |
serverId | String | 是 | 服务器 ID |
invitedAccids | String | 是 | 被邀请者的 IM 帐号列表,JSON Array 格式,最大数量 200 |
msg | String | 是 | 发出邀请的消息内容,最大长度 150 字符 |
ttl | Long | 否 | 邀请有效期,单位:毫秒,默认 30 天 |
返回参数
参数 | 类型 | 说明 |
---|---|---|
code | int | 状态码 |
failAccid | String | 邀请失败的用户,包含 accid 和 msg 字段。accid:用户的 IM 账号,msg:失败原因,如该用户已被封禁 |
requestId | Long | 邀请 ID |
expireTime | Long | 邀请到期时间戳。如果服务器的邀请模式被设置为“邀请不需要同意直接加入”(即inviteMode=1 ),则返回 0 |
示例
cURL 请求示例
curlcurl -X POST -H "AppKey: go9dnk49**0803mgq3" -H "Nonce: 4tggger**t23t" -H "CurTime: 1443592222" -H "CheckSum: 9e9db3b6c9abb2e1962cf3e6f7316fcc55583f86" -H "Content-Type: application/x-www-form-urlencoded" -d 'serverId=1513535&accid=zhangsan&invitedAccids=%5B%22lisi%22%2C%22wangwu%22%5D&msg=invite' 'https://api.netease.im/nimserver/qchat/inviteServerMember.action'
返回示例
HTTP 响应:JSON
json"Content-Type": "application/json; charset=utf-8"
{
"code":200,
"failAccid": {
"accid": [],
"msg": "user server count exceed"
},
"failAccid2": {
"accid": [],
"msg": "server member ban exist"
},
"requestId": 111,
"expireTime": 111 //邀请到期时间戳。如果不需要同意直接加入,则返回0
}
状态码
状态码 | 说明 | 处理建议 |
---|---|---|
200 | 请求成功 | - |
403 | 非法操作或没有权限 |
|
404 | 对象不存在 |
|
414 | 参数错误 | 根据提示信息,检查传入参数的格式和限制条件 |
416 | 调用频率超限 | 降低调用频率 |
431 | HTTP 重复请求 | - |
此文档是否对你有帮助?