查询用户的会议列表

最近更新时间:2024-08-15 14:44:12

我的收藏

接口描述

描述:获取某指定用户的进行中或待开始的会议列表。企业 secret 鉴权用户可查询任何该企业该用户创建的有效会议,OAuth2.0 鉴权用户只能查询通过 OAuth2.0 鉴权创建的有效会议。
请求方式:GET
接口请求域名
https://api.meeting.qq.com/v1/meetings?userid={userid}&instanceid={instanceid}


输入参数

以下请求参数列表仅列出了接口请求参数,HTTP 请求头公共参数请参见签名验证章节的 公共参数说明
参数名称
必选
参数类型
参数描述
userid
String
调用方用于标识用户的唯一 ID(企业内部请使用企业唯一用户标识;OAuth2.0 鉴权用户请使用 openId)。
instanceid
Integer
用户的终端设备类型:
0:PSTN
1:PC
2:Mac
3:Android
4:iOS
5:Web
6:iPad
7:Android Pad
8:小程序
9:voip、sip 设备
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
pos
Integer
分页获取用户会议列表的查询起始时间值,UNIX 秒级时间戳,只能查询开始时间在本时间之后(包含)的会议(由于存在相同开始时间的会议,所以分页查询后需要根据查询结果的 meeting_id 去重)。
因目前一次查询返回会议数量最多为20,当用户会议较多时,如果会议总数量超过20,则需要再次查询。此参数为非必选参数,默认值为0,表示从北京时间当日零点开始查询。
查询返回输出参数“remaining”不为0时,表示还有会议需要继续查询。返回参数“next_pos”的值即为下一次查询的 pos 的值。
多次调用该查询接口直到输出参数“remaining”值为0。
cursory
Integer
分页获取用户会议列表,查询的会议的最后一次修改时间值,UNIX 毫秒级时间戳,分页游标。
因目前一次查询返回会议数量最多为20,当用户会议较多时,如果会议总数量超过20,则需要再次查询。此参数为非必选参数,默认值为0,表示第一次查询利用会议开始时间北京时间当日零点进行查询。
查询返回输出参数“remaining”不为0时,表示还有会议需要继续查询。返回参数“next_cursory”的值即为下一次查询的 cursory 的值。
多次调用该查询接口直到输出参数“remaining”值为0。
当只使用 pos 作为分页条件时,可能会出现查询不到第二页,数据排序出现重复数据等情况与 pos 配合使用。
is_show_all_sub_meetings
String
是否显示周期性会议的所有子会议,默认值为0。
0:只显示周期性会议的第一个子会议
1:显示所有周期性会议的子会议

输出参数

参数名称
参数类型
参数描述
meeting_number
integer
会议数量。
meeting_info_list
MeetingInfo 对象数组
会议列表。
next_pos
Integer
下次查询时请求里需要携带的 pos 参数。
remaining
Integer
是否还剩下会议;因目前一次查询返回会议数量最多为20,如果会议总数量超过20则此字段被置为非0,表示需要再次查询,且下次查询的“pos”参数需从本次响应的“next_pos”字段取值。
next_cursory
Integer
分页获取用户会议列表,查询的会议的最后一次修改时间值,UNIX 毫秒级时间戳,分页游标。
因目前一次查询返回会议数量最多为20,当用户会议较多时,如果会议总数量超过20,则需要再次查询。此参数为非必选参数,默认值为0,表示第一次查询利用会议开始时间北京时间当日零点进行查询。
查询返回输出参数“remaining”不为0时,表示还有会议需要继续查询。返回参数“next_cursory”的值即为下一次查询的 cursory 的值。
多次调用该查询接口直到输出参数“remaining”值为0。
当只使用 pos 作为分页条件时,可能会出现查询不到第二页,数据排序出现重复数据等情况与 pos 配合使用。

MeetingInfo 对象

参数名称
参数类型
参数描述
subject
String
会议主题。
meeting_id
String
会议的唯一标识 。
meeting_code
String
会议 App 的呼入号码。
hosts
User 对象数组
会议主持人的用户 ID,如果无指定,主持人将被设定为上文的 userid,即 API 调用者。
current_hosts
User 对象数组
会议当前主持人列表。
start_time
String
会议开始时间戳(单位秒)。
end_time
String
会议结束时间戳(单位秒)。
join_meeting_role
String
查询者在会议中的角色:
creator:创建者
hoster:主持人
invitee:被邀请者
meeting_type
Integer
会议类型:
0:普通会议
1:周期性会议
2:微信专属会议
4:Rooms 投屏会议
5:个人会议号会议
6:网络研讨会
recurring_rule
RecurringRule 对象
周期性会议设置。
media_set_type
Integer
该参数仅提供给支持混合云的企业可见,默认值为0。
0:公网会议
1:专网会议
has_more_sub_meeting
Integer
0:无更多。
1:有更多子会议特例。
remain_sub_meetings
Integer
剩余子会议场数。
current_sub_meeting_id
String
当前子会议 ID(进行中 / 即将开始)。
status
String
当前会议状态:
MEETING_STATE_INVALID:非法或未知的会议状态,错误状态。
MEETING_STATE_INIT:待开始,会议预定到预定结束时间前,会议中无人。
MEETING_STATE_CANCELLED:已取消,主持人主动取消会议,待开始的会议才能取消,取消的会议无法再进入。
MEETING_STATE_STARTED:会议中,只要会议中有人即表示进行中。
MEETING_STATE_ENDED:已删除,结束时间后且会议中无人时,被主持人删除,已删除的会议无法再进入。
MEETING_STATE_NULL:无状态,过了预定结束时间,会议中无人。
MEETING_STATE_RECYCLED:已回收,过了预定开始时间30天,会议号被后台回收,无法再进入。
type
Integer
会议类型:
0:预约会议类型
1:快速会议类型
sub_meetings
SubMeeting 对象数组
周期性子会议列表。

SubMeeting 对象

参数名称
参数类型
参数描述
sub_meeting_id
String
子会议 ID。
status
Integer
子会议状态:
0:默认(存在)
1:已删除
start_time
String
子会议开始时间(UTC 秒)。
end_time
String
子会议结束时间(UTC 秒)。

RecurringRule 对象

参数名称
必选
参数类型
参数描述
recurring_type
integer
周期性会议频率,默认值为0。
0:每天
1:每周一至周五
2:每周
3:每两周
4:每月
until_type
integer
结束重复类型,默认值为0。
0:按日期结束重复
1:按次数结束重复
until_date
integer
结束日期时间戳,默认值为当前日期 + 7天。
until_count
integer
限定会议次数(1-50次)默认值为7次。

Setting 对象

参数名称
参数类型
参数描述
mute_enable_join
Bool
加入静音状态。
allow_unmute_self
Bool
静音自解除允许 。

错误码列表

状态码
错误码
错误描述
400
500014
账号无权限。
400
190301
请求重放错误,请求头里的 X-TC-Timestamp 和 X-TC-Nonce 每次请求时需重新生成,不能使用和过去五分钟内相同的 timestamp 和 nonce。
400
190300
请求头里的时间戳参数 X-TC-Timestamp 取值与服务器当前时间差距超过5分钟,视为非法请求。
400
190004
参数非法,请对照接口文档检查您的参数。
500
41
网络错误,请稍后重试。
500
13000
缓存查询会议信息失败。
500
500001
会议号无效。
500
20000
请检查参数类型。
500
202007
成员不在会中。
500
9042
无权限进行该操作,建议检查操作者身份或资源归属。
500
13704
查询会议列表失败。
500
13703
查询会议失败。
500
13702
查询会议详情失败。
500
9108
用户 sdkID 认证失败。
500
960000
网络错误,请稍后重试。
500
190001
存在未注册的用户。
500
190310
每分钟总接口调用次数超过限制。

示例

示例1(单页)

输入示例

https://api.meeting.qq.com/v1/meetings?userid=tester1&instanceid=1

输出示例

{
"meeting_number": 1,
"next_pos": 0,
"remaining": 0,
"meeting_info_list": [
{
"subject": "tester's meeting",
"meeting_id": "7567173273889276131",
"meeting_code": "806146667",
"status": "MEETING_STATE_ENDED",
"start_time": "1572085800",
"end_time": "1572089400",
"hosts": [
"tester"
],
"join_meeting_role": "invitee",
"meeting_type": 1,
//周期性会议会返回以下信息
"recurring_rule": {
"recurring_type": 0,
"until_type": 1,
"until_count": 4
},
"has_more_sub_meetings": 0,
"remain_sub_meetings": 3,
"current_sub_meeting_id": "1599046220"
}
]
}

示例2(多页)

输入示例(第一次拉取)

https://api.meeting.qq.com/v1/meetings?userid=tester1&instanceid=1

输出示例

{
"meeting_number": 1,
"next_pos": 1572085800,
"remaining": 1,
"meeting_info_list": [
{
"subject": "tester's meeting",
"meeting_id": "7567173273889276131",
"meeting_code": "806146667",
"status": "MEETING_STATE_ENDED",
"start_time": "1572085800",
"end_time": "1572089400",
"hosts": [
"tester"
],
"join_meeting_role": "invitee",
"meeting_type": 1,
//周期性会议会返回以下信息
"recurring_rule": {
"recurring_type": 0,
"until_type": 1,
"until_count": 4
},
"has_more_sub_meetings": 0,
"remain_sub_meetings": 3,
"current_sub_meeting_id": "1599046220"
}
]
}

输入示例(第二次拉取)

https://api.meeting.qq.com/v1/meetings?userid=tester1&instanceid=1&pos=1572085800

输出示例

{
"meeting_number": 1,
"next_pos": 0,
"remaining": 0,
"meeting_info_list": [
{
"subject": "tester's meeting-2",
"meeting_id": "7567173273889276131",
"meeting_code": "806146667",
"status": "MEETING_STATE_ENDED",
"start_time": "1572085801",
"end_time": "1572089401",
"hosts": [
"tester"
],
"join_meeting_role": "invitee",
"meeting_type": 1,
//周期性会议会返回以下信息
"recurring_rule": {
"recurring_type": 0,
"until_type": 1,
"until_count": 4
},
"has_more_sub_meetings": 0,
"remain_sub_meetings": 3,
"current_sub_meeting_id": "1599046220"
}
]
}