有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

接口描述

描述
支持查询网络研讨会参会成员列表。
如果会议还未开始,调用此接口查询会返回空列表。
企业 secret 鉴权用户(会议创建者)可获取任何该企业用户创建的有效会议中的参会成员,企业 secret 鉴权用户(企业超级管理员)可获取任何该企业下创建的有效会议中的参会成员,OAuth 2.0鉴权用户(会议创建者)只能获取用户通过 OAuth 2.0鉴权创建的有效会议中的参会成员。
当您需要实时监测参会成员入会状态或退会状态时,您可以通过订阅 用户入会 用户离会 的事件,接收事件通知。
请求方式:GET
接口请求域名
https://api.meeting.qq.com/v1/meetings/{meetingId}/participants?userid={userId}&sub_meeting_id=1234454


输入参数

以下请求参数列表仅列出了接口请求参数,HTTP 请求头公共参数请参见签名验证章节的 公共参数说明
参数名称
必选
参数类型
参数描述
meetingId
String
会议的唯一 ID。
sub_meeting_id
String
周期性会议子会议 ID。说明:可通过查询用户的会议列表、查询会议接口获取返回的子会议 ID,即 current_sub_meeting_id;如果是周期性会议,此参数必传。
operator_id
String
操作者 ID。operator_id 必须与 operator_id_type 配合使用。根据 operator_id_type 的值,operator_id 代表不同类型。
operator_id_type
Integer
操作者 ID 的类型:
3:rooms_id
说明:当前仅支持 rooms_id。如操作者为企业内 userid 或 openId,请使用 userid 字段。
userid
String
会议创建者的用户 ID(企业内部请使用企业唯一用户标识;OAuth 2.0鉴权用户请使用 openId)。
pos
int
分页获取参会成员列表的查询起始位置值。当参会成员较多时,建议使用此参数进行分页查询,避免查询超时。此参数为非必选参数,默认值为0,从头开始查询。 设置每页返回的数量,请参考参数“size”的说明。查询返回输出参数“has_remaining”为 true,表示该会议人数较多,还有一定数量的参会成员需要继续查询。返回参数“next_pos”的值即为下一次查询的 pos 的值。多次调用该查询接口直到输出参数“has_remaining”值为 false。
size
int
拉取参会成员条数,目前每页支持最大100条。
start_time
int
参会时间过滤起始时间(单位秒)。说明:时间区间不允许超过31天,如果为空默认当前时间前推31天;start_time 和 end_time 都没传时最大查询时间跨度90天;对于周期性会议查询暂时不生效,请使用分页参数查询。
end_time
int
参会时间过滤终止时间(单位秒)。说明:时间区间不允许超过31天,如果为空默认取当前时间;start_time 和 end_time 都没传时最大查询时间跨度90天;对于周期性会议查询暂时不生效,请使用分页参数查询。

输出参数

参数名称
参数类型
参数描述
meeting_id
String
会议的唯一 ID。
meeting_code
String
会议号码。
subject
String
会议主题。
schedule_start_time
String
预定会议开始时间戳(单位秒)。
schedule_end_time
String
预定会议结束时间戳(单位秒)。
participants
Participant 对象数组
参会人员对象数组。
has_remaining
boolean
是否还有未拉取的数据,该接口可多次拉取到的数据总量上限为5w条。
next_pos
int
和“has_remaining”一起,数据量比较大的情况下支持参会成员列表的多次获取。
total_count
int
当前参会总人次。

Participant 对象

参数名称
参数类型
参数描述
userid
String
参会者用户 ID。
使用企业自建应用鉴权方式(JWT)时,该值为企业唯一用户标识。
ms_open_id
String
当场会议的用户临时 ID,可用于会控操作,适用于所有用户。
uuid
String
用户的身份 ID,仅适用于单场会议。
open_id
String
已授权用户的 ID。
使用第三方应用鉴权方式(OAuth 2.0)时,该值为已授权用户的 open_id。
其他情况为空。
user_name
String
入会用户名(base 64)。
is_enterprise_user
Boolean
是否是企业内部成员。
true:企业内成员,若 userid 为空且该字段为 true 表示已离职企业成员。
false:非企业内成员。
phone
String
参会者手机号 hash 值 SHA256(手机号 + "/" + secretid)。
join_time
String
参会者加入会议时间戳(单位秒)。
left_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
Integer
用户角色:
0:普通成员角色
1:创建者角色
2:主持人
3:创建者+主持人
4:游客
5:游客+主持人
6:联席主持人
7:创建者+联席主持人
webinar_member_role
Integer
网络研讨会成员角色:
0:普通参会角色
1:内部嘉宾
2:外部嘉宾
3:邀请链接入会嘉宾
4:观众
IP
String
用户的 IP 地址。当用户在会中时才能返回。
location
String
用户的地理位置信息。当用户在会中时才能返回。
link_type
String
用户的连接方式:UDP、TCP、未知,当用户在会中时才能返回。
join_type
Integer
入会方式:
0:PSTN 普通用户,标准的手机或固话类型
1:普通 VOIP 用户
2:附属投屏 VOIP
3:linux sdk for VOIP
4:附属语音 PSTN
5:附属视频 PSTN
6:linux sdk for PSTN
net
String
网络类型:有线、WIFI、2G、3G、4G、未知。当用户在会中时才能返回。
app_version
String
用户的客户端版本。当用户在会中时才能返回。
audio_state
Bool
麦克风状态:
true:开启
false:关闭
video_state
Bool
摄像头状态:
true:开启
false:关闭
screen_shared_state
Bool
屏幕共享状态:
true:开启
false:关闭
customer_data
String
如果参会成员是通过专属链接进会。
给出用户专属字段 。

错误码列表

状态码
错误码
错误描述
400
9003
会议信息不存在。
400
190301
请求重放错误,请求头里的 X-TC-Timestamp 和 X-TC-Nonce 每次请求时需重新生成,不能使用和过去五分钟内相同的 timestamp 和 nonce。
500
41
网络错误,请稍后重试。
500
190310
每分钟总接口调用次数超过限制。
400
200001
API 请求头缺失必填字段。
403
9042
无权限操作。
500
190001
存在未注册的用户。
400
500014
账号无权限。
400
190004
参数非法,请对照接口文档检查您的参数。
500
10000
用户信息 API 调用通用错误返回。
500
960000
网络错误,请稍后重试。

示例

示例1(单页)

输入示例

GET https://api.meeting.qq.com/v1/meetings/144115214488302892/participants?userid=owner1&size=20


输出示例

{
"meeting_id":"144115214488302892",
"meeting_code":"746950080",
"subject":"Test Meeting",
"schedule_start_time":"1572085800",
"schedule_end_time":"1572089400",
"has_remaining":false,
"participants":[
{
"userid":"test1",
"user_name":"dBVzdDE=",
"phone":"0A07C3D999F5E29535D809857B5C44C51B819798542B241EC286F7DC828E0C01",
"join_time":"1572085800",
"left_time":"1572089400",
"instanceid":1
},
{
"userid":"test2",
"user_name":"dGvzdDI=",
"phone":"0A07C3D999F5E29535D809857B5C44C51B819798542B241EC286F7DC828E0C01",
"join_time":"1572085800",
"left_time":"1572089400",
"instanceid":1
}
]
}

示例2(多页)

输入示例(第一次拉取)

GET https://api.meeting.qq.com/v1/meetings/144115214488302892/participants?userid=owner1&size=1

输出示例

{
"meeting_id":"144115214488302892",
"meeting_code":"746950080",
"subject":"Test Meeting",
"schedule_start_time":"1572085800",
"schedule_end_time":"1572089400",
"has_remaining":true,
"next_pos":5678,
"participants":[
{
"userid":"test1",
"user_name":"dBVzdDE=",
"phone":"0A07C3D999F5E29535D809857B5C44C51B819798542B241EC286F7DC828E0C01",
"join_time":"1572085800",
"left_time":"1572089400",
"instanceid":1
}
]
}

输入示例(第二次拉取)

GET https://api.meeting.qq.com/v1/meetings/144115214488302892/participants?userid=owner1&pos=5678&size=1

输出示例

{
"meeting_id":"144115214488302892",
"meeting_code":"746950080",
"subject":"Test Meeting",
"schedule_start_time":"1572085800",
"schedule_end_time":"1572089400",
"has_remaining":false,
"participants":[
{
"userid":"test2",
"user_name":"dGvzdDI=",
"phone":"0A07C3D999F5E29535D809857B5C44C51B819798542B241EC286F7DC828E0C01",
"join_time":"1572085800",
"left_time":"1572089400",
"instanceid":1
}
]
}