接口描述
描述:查询当前会中成员列表,仅包括会中的成员。如果用户已离会,则不返回。企业超级管理员、会议创建者、会议主持人和同企业的会议联席主持人可以查询该数据。
请求方式: GET
接口操作者权限点:会议创建者、联席主持人、主持人、管理员、临时管理员角色。
接口请求域名:
https://api.meeting.qq.com/v1/meetings/{meeting_id}/real-time-participants
输入参数
参数名称 | 是否必须 | 备注 |
meeting_id | 是 | 会议的唯一 ID。 |
sub_meeting_id | 否 | String 周期性会议子会议 ID。 说明:可通过查询用户的会议列表、查询会议接口获取返回的子会议 ID,即 current_sub_meeting_id;如果是周期性会议,此参数必传。 |
operator_id | 是 | 操作者 ID。operator_id 必须与 operator_id_type 配合使用。根据 operator_id_type 的值,operator_id 代表不同类型。 |
operator_id_type | 是 | Integer 操作者 ID 的类型: 1:企业内用户 userid 2:open_id 3:rooms_id |
page | 是 | 当前页,页码起始值为1。 |
page_size | 是 | 分页大小,最大50条。 |
输出参数
名称 | 类型 | 是否必须 | 备注 |
meeting_id | String | 否 | 会议的唯一 ID。 |
meeting_code | String | 否 | 会议号码。 |
subject | String | 否 | 会议主题(base64)。 |
schedule_start_time | String | 否 | 预定会议开始时间戳(单位秒)。 |
schedule_end_time | String | 否 | 预定会议结束时间戳(单位秒)。 |
status | String | 否 | 当前会议状态: 1:MEETING_STATE_INVALID: 非法或未知的会议状态,错误状态。 2:MEETING_STATE_INIT: 会议待开始。会议预定到预定结束时间前,会议尚无人进会。 3:MEETING_STATE_CANCELLED: 会议已取消。主持人主动取消会议,待开始的会议才能取消,且取消的会议无法再进入。 4:MEETING_STATE_STARTED: 会议已开始。会议中有人则表示会议进行中。 5:MEETING_STATE_ENDED: 会议已删除。会议已过预定结束时间且尚无人进会时,主持人删除会议,已删除的会议无法再进入。 6:MEETING_STATE_NULL: 会议无状态。会议已过预定结束时间,会议尚无人进会。 7:MEETING_STATE_RECYCLED: 会议已回收。会议已过预定开始时间30天,则会议号将被后台回收,无法再进入。 |
participants | Participant 对象数组 | 否 | 参会人员对象数组。 |
current_page | Number | 否 | 当前页。 |
current_size | Number | 否 | 当前页实际大小。 |
total_count | Number | 否 | 根据条件筛选后的总人数。 |
total_page | Number | 否 | 根据条件筛选后的总分页数 |
Participant 对象
名称 | 类型 | 是否必须 | 其他信息 |
userid | String | 否 | 同企业内部为企业唯一用户标识,其他企业、个人、小程序入会不会返回。 |
open_id | String | 否 | OAuth2.0 鉴权用户请使用 open_id。 |
ms_open_id | String | 否 | 当场会议的用户临时 ID,可用于会控操作,适用于所有用户。 |
user_name | String | 否 | 入会用户名(base64)。 |
join_time | String | 否 | 参会者加入会议时间戳(单位秒)。 |
instanceid | Integer | 否 | 用户的终端设备类型: 0:PSTN 1:PC 2:Mac 3:Android 4:iOS 5:Web 6:iPad 7:Android Pad 8:小程序 9:voip、sip 设备(即MRA设备) 10:linux 20:Rooms for Touch Windows 21:Rooms for Touch MacOS 22:Rooms for Touch Android 30:Controller for Touch Windows 32:Controller for Touch Android 33:Controller for Touch iOS/iPadOS |
user_role | String | 否 | 用户角色: 0:普通成员角色 1:创建者角色 2:主持人 3:创建者+主持人 4:游客 5:游客+主持人 6:联席主持人 7:创建者+联席主持人 |
join_type | String | 否 | 入会方式: 0:PSTN 普通用户,标准的手机或固话类型 1:普通 VOIP 用户 2:附属投屏 VOIP 3:linux sdk for VOIP 4:附属语音 PSTN 5:附属视频 PSTN 6:linux sdk for PSTN |
app_version | String | 否 | 用户的客户端版本。当用户在会中时才能返回。 |
audio_state | Boolean | 否 | 麦克风状态: true:开启 false:关闭 |
video_state | Boolean | 否 | 摄像头状态: true:开启 false:关闭 |
screen_shared_state | Boolean | 否 | 屏幕共享状态: true:开启 false:关闭 |
customer_data | String | 否 | 如果参会成员是通过专属链接进会,给出用户专属字段 。 |
错误码列表
状态码 | 错误码 | 错误描述 |
400 | 9042 | 无权限进行该操作,建议检查操作者身份或资源归属。 |
400 | 190301 | 请求重放错误,请求头里的 X-TC-Timestamp 和 X-TC-Nonce 每次请求时需重新生成,不能使用和过去五分钟内相同的 timestamp 和 nonce。 |
400 | 190004 | 参数非法,请对照接口文档检查您的参数。 |
500 | 960000 | 网络错误,请稍后重试。 |
500 | 190001 | 存在未注册的用户。 |
500 | 190310 | 每分钟总接口调用次数超过限制。 |
500 | 41 | 网络错误,请稍后重试。 |
500 | 9003 | MEETING NOT EXIST。 |
500 | 10005 | 网络异常。 |
示例代码
输入示例
https://api.meeting.qq.com/v1/meetings/17970399xxxxxxxx37836/real-time-participants?operator_id=test_restapi_user_496&page=1&page_size=20&operator_id_type=1
输出示例
{"meeting_id": "179xxxxxxxxxxxx37836","meeting_code": "xxxxxxxx","subject": "Z2V0XxxxxxxxxxxxxxxxxxxxWNpcGFudHNfOTg5","schedule_start_time": "16xxxxxxx10","schedule_end_time": "16xxxxxxx10","status": "4","participants": [{"userid": "test_restapi_user_497","open_id": "","ms_open_id": "68+lhnxxxxxxxxxxxxxxxxhqQC7o4kFb3xxxxxxxxxxxxh+tJ3+j2xkYT1","user_name": "dGVzxxxxxxxxxxxxxxJfNDk3","join_time": "16xxxxxxx11","instanceid": 2,"user_role": 0,"join_type": 1,"app_version": "x.x.x.x","audio_state": true,"video_state": true,"screen_shared_state": true}],"current_page": 1,"current_size": 1,"total_count": 1,"total_page": 1}