智慧服务,成就美好体验 项目咨询

主页 > 服务与支持 > 开发平台 > 服务端API参考 > 会议管理 > 接口参考 预约会议

入门使用

预约会议

更新时间:2019-11-19

描述

管理员或普通用户可以通过该接口创建会议。

接口原型

表1 接口原型

请求方法

POST

请求地址

/conferences

传输协议

HTTPS

请求参数

表2 输入参数

参数

是否必须

类型

位置

描述

Authorization

String

Header

授权令牌。将执行鉴权响应的accessToken

进行Base64转码操作

样例:Basic Base64(accessToken)

conferenceType

Int

Body

0 : 普通会议。

1:周期会议,此时“cycleParams”必须填写。(预留字段)

默认值为0。

startTime

String

Body

会议开始时间。使用UTC时间。

说明:

创建预约会议时,如果没有指定开始时间或填空串,则表示会议马上开始。

格式:YYYY-MM-DD HH:MM。

length

Int

Body

会议持续时长,单位分钟,最大值为1440。

默认值为30。

subject

String

Body

会议主题。长度限制为128个字符。

mediaTypes

String

Body

会议的媒体类型。

由1个或多个枚举String组成,多个枚举时,每个枚举值之间通过“,”逗号分隔,枚举值如下:

  • “Voice”:语音。
  • “Video”:标清视频。
  • “HDVideo”:高清视频(与Video互斥,如果同时选择Video、HDVideo,则系统默认选择Video)。
  • “Telepresence”:智真(与HDVideo、Video互斥,如果同时选择,系统使用Telepresence)。(预留字段)
  • “Data”:多媒体(AS根据系统配置决定是否自动添加Data)。

attendees

Attendee[0..*]

Body

预定会议时,指定的与会者列表。

该与会者列表可以用于发送会议通知、会议提醒、会议开始时候进行自动邀请。

cycleParams

有条件必选

CycleParams

Body

周期会议的参数,当会议是周期会议的时候该参数必须填写,否则服务器忽略该参数。

该参数包括周期会议的开始日期、结束日期、会议的周期和周期中的开会时间点。

(预留字段)

isAutoRecord

Int

Body

会议是否自动启动录制,在录播类型为:录播、录播+直播时才生效。

  • 1:自动启动录制。
  • 0:不自动启动录制。

默认值为0。

encryptMode

Int

Body

会议媒体加密模式。默认值由企业级的配置填充

  • 0:自适应加密。
  • 1 : 强制加密。
  • 2 : 不加密。

language

String

Body

会议的默认语言,默认值由会议AS定义。

对于系统支持的语言,按照RFC3066规范传递。

  • zh-CN:简体中文。
  • en-US:美国英文。

timeZoneID

String

Body

开始时间的时区信息。

时区信息,参考时区映射关系

recordType

Int

Body

录播类型。

  • 0: 禁用 。
  • 1: 直播 。
  • 2: 录播。
  • 3: 直播+录播。

默认值:0

liveChannelID

String

Body

直播推流频道ID,召开会议时,优先根据此ID查询频道的URL,查询不到则放弃推流;若不存在频道ID则直接使用liveAddress/ auxAddress两个URL。

liveAddress

String

Body

主流直播地址,最大不超过255个字符,在录播类型为:直播、录播+直播时才生效。

auxAddress

String

Body

辅流直播地址,最大不超过255个字符,在录播类型为:直播、录播+直播时才生效。

recordAuxStream

Int

Body

是否录制辅流,在录播类型为:录播、录播+直播时才生效。

  • 0:否。
  • 1:是。

默认不录制。

confConfigInfo

ConfConfigInfo

Body

会议其他配置信息。

vmrFlag

Int

Body

是否使用VMR召开预约会议。

  • 0:不使用VMR。
  • 1:使用个人VMR。

默认值:0

vmrID

String

Body

用于识别用户开会时绑定的VMR会议室。

  • 不为空,则用ID查询VMR信息。
  • 为空,则查用户所有VMR,如果有个人VMR,用个人VMRID;没有个人VMR,取最小VMRID。
表3 Attendee 数据结构

参数

是否必须

类型

描述

userUUID

String

与会者的用户uuid

accountId

String

与会者帐号,兼容终端老版本。如果没有携带userUUID,就通过accountId查询用户信息。

name

String

与会者名称或昵称。长度限制为96个字符。

长度:0-96。

role

Int

会议中的角色。

  • 0:普通与会者。
  • 1:会议主席。

默认值为0。

phone

String

电话号码(可支持SIP、TEL号码格式)。最大不超过127个字符。

说明:

“type”“telepresence”时,且设备为三屏智真,则该字段填写中屏号码。(三屏智真为预留字段)

phone2

String

取值类型同参数“phone”。(预留字段)

说明:

“type”“telepresence”时,且设备为三屏智真,则该字段填写左屏号码。

phone3

String

取值类型同参数“phone”。(预留字段)

说明:

“type”“telepresence”时,且设备为三屏智真,则该字段填写右屏号码。

email

String

邮件地址。最大不超过255个字符。

sms

String

短信通知的手机号码。最大不超过32个字符。

isAutoInvite

Int

会议开始时是否自动邀请该与会者。

  • 0:不自动邀请。
  • 1:自动邀请。

默认值:1。

type

String

默认值由会议AS定义,号码类型枚举如下:

  • “normal”:语音、高清、标清与会者地址(默认),软终端用户。
  • “telepresence”:智真与会者地址类型,单屏、三屏智真均属此类。(预留字段)
  • “terminal”:会议室或硬终端。
  • “outside”:外部与会人。
  • mobile”:软终端用户手机。
  • “telephone”:软终端用户固定电话,暂不使用。

默认值为“normal”

address

String

终端所在会议室信息。

deptName

String

组织名称。最大不超过128个字符。

表4 CycleParams 数据结构

参数

是否必须

类型

描述

startDate

String

周期会议的开始日期,格式:YYYY-MM-DD。

开始日期不能早于当前日期。

endDate

String

周期会议的结束日期,格式:YYYY-MM-DD。

开始日期和结束日期间的时间间隔最长不能超过1年。

cycle

String

周期类型。

  • “Day”:天。
  • “Week”:星期。
  • “Month”:月。

Interval

Int

  • “cycle”选择了“Day”,表示每几天召开一次,取值范围[1,60]。
  • “cycle”选择了“Week”,表示每几周召开一次,取值范围[1,5]。
  • “cycle”选择了“Month”,Interval表示隔几月,取值范围[1,12]。

默认值都为1。

poInt

Int[0..*]

周期内的会议召开点。仅当按周和月时有效。

例如:

  • “cycle”选择了“Week”,poInt中填入了两个元素1和3,则表示每个周一和周三召开会议,0表示周日。
  • “cycle”选择了“Month”,poInt中填入了12和20则表示每个月的12号和20号召开会议,99表示月末。
表5 ConfConfigInfo 数据结构

参数

是否必须

类型

描述

isGuestFreePwd

Boolean

来宾是否免密。

  • True:免密。
  • False:不免密。

默认值由会议模板决定,适用于随机id会议。

isSendNotify

Boolean

是否需要发送会议邮件通知。

  • True:需要。
  • False:不需要。

默认值由会议模板决定。

isSendSms

Boolean

是否需要发送会议通知。

  • True:需要。
  • False:不需要。

默认值由会议模板决定。

响应参数

表6 参数说明

参数

类型

描述

returnCode

Int

返回码。

returnDesc

String

返回描述。

data

ConferenceInfo[0..*]

会议信息。

表7 ConferenceInfo 数据结构

参数名称

参数类型

描述

conferenceID

String

会议ID。长度限制为32个字符。

subject

String

会议主题。长度限制为128个字符。

size

Int

会议方数。

timeZoneID

String

时区参考。

startTime

String

会议起始时间 (YYYY-MM-DD HH:MM )。

endTime

String

会议结束时间 (YYYY-MM-DD HH:MM )。

mediaTypes

String

会议的媒体类型。

由1个或多个枚举String组成,多个枚举时,每个枚举值之间通过”,”逗号分隔。

  • “Voice”:语音。
  • “Video”:标清视频。
  • “HDVideo”:高清视频(与“Video”互斥,如果同时选择“Video”“HDVideo”,则系统默认选择“Video”)。
  • “Telepresence”:智真(与“HDVideo”“Video”互斥,如果同时选择,系统使用“Telepresence”)。(预留字段)
  • “Data”:多媒体。

conferenceState

String

(目前只会返回Created和Schedule状态, 如果会议已经召开返回Created状态,否则返回Schedule状态)

  • “Schedule”:预定状态。
  • “Creating”:正在创建状态。
  • “Created”:会议已经被创建,并正在召开。
  • “Destroyed”:会议已经关闭。

language

String

会议语言。

accessNumber

String

会议接入码。

passwordEntry

PasswordEntry

会议密码条目。预订者返回主席密码和来宾密码。

  • 主席查询时返回主席密码。
  • 来宾查询时返回来宾密码。

userUUID

String

会议预订者userUUID。

scheduserName

String

会议预订者帐号名称。长度最大限制为96个字符。

multiStreamFlag

Int

标识是否为多流视频会议。

  • 0:单流会议。
  • 1:多流会议。

conferenceType

Int

  • 0 : 普通会议。
  • 1 : 周期会议(预留字段)。

cycleParams

CycleParams

周期会议的参数。当会议是周期会议的时候携带该参数。

该参数包括周期会议的开始日期、结束日期、会议的周期和周期中的开会时间点。

(预留字段)

isAutoMute

Int

是否入会自动静音。

isAutoRecord

Int

是否自动开启录音。

chairJoinUri

String

主席会议链接地址。

guestJoinUri

String

普通与会者会议链接地址。

recordType

Int

录播类型。

  • 0: 禁用 。
  • 1: 直播 。
  • 2: 录播 。
  • 3: 直播+录播。

auxAddress

String

辅流直播地址。

liveAddress

String

主流直播地址。

recordAuxStream

Int

是否录制辅流。

  • 0:否。
  • 1:是。

liveUrl

String

直播地址。

confConfigInfo

ConfConfigInfo

会议其他配置信息。

vmrFlag

Int

是否使用VMR召开预约会议。

  • 0:不使用VMR。
  • 1:使用VMR。

    界面显示会议ID需要使用“vmrConferenceID”作为会议ID;查询会议详情、登录会控、一键入会等会议业务操作依然使用“conferenceID”字段。

vmrConferenceID

String

如果“vmrFlag”“1”,则该字段不为空。

confUUID

String

会议的UUID。

isHasRecordFile

Boolean

  • True:该历史会议含有录播文件。
  • False:该历史会议不含有录播文件。

partAttendeeInfo

Attendee[0..*]

与会方信息。硬件终端/与会人最多各显示20条记录。

terminlCount

Int

硬终端个数。

normalCount

Int

普通终端个数。

deptName

String

会议预定者的组织名称。

表8 PasswordEntry 数据结构

参数

数据类型

描述

conferenceRole

String

会议角色。

  • “chair”:会议主席。
  • “general”:普通与会者。

password

String

会议中角色的密码,明文。

请求消息示例

POST /conferences
Connection: keep-alive
Authorization: Basic VFZQdG9tOUcwN2NMWGhMQ1phaXpRUDFsNkdlUzVvT05Q
Content-Type: application/json
user-agent: WeLink-desktop
Content-Length: 548
Host: api.meeting.huaweicloud.com
User-Agent: Apache-HttpClient/4.5.3 (Java/1.8.0_191)

{
    "mediaTypes": "Voice,Data",
    "attendees": [
    {
        "name": "user01",
        "role": 1,
        "phone": "+8657*******"
     }],
    "conferenceType": 0,
    "subject": "user01的会议"
}
 

响应消息示例

 

HTTP/1.1 200 
Date: Sat, 09 Mar 2019 07:11:20 GMT
Content-Type: application/json;charset=UTF-8
Content-Length: 1153
Connection: keep-alive
http_proxy_id: 79ea4d8bdb461a4b811a117f9cf3dbde
Server: api-gateway
X-Request-Id: 1ccc1d7937dd0f66067aeecb9f1df241

{
    "returnCode": 0,
    "returnDesc": "Success",
    "data": [
    {
        "conferenceID": "914271782",
        "mediaTypes": "Voice,Data,Video",
        "subject": "user01的会议",
        "size": 1,
        "timeZoneID": "56",
        "startTime": "2019-03-10 00:00",
        "endTime": "2019-03-10 02:00",
        "conferenceState": "Created",
        "accessNumber": "+8657*******",
        "language": "zh-CN",
        "passwordEntry": [
        {
            "conferenceRole": "chair",
            "password": "222400"
        },
        {
            "conferenceRole": "general",
            "password": "896775"
        }],
        "userUUID": "ff8080816933ab4801694865840a00c2",
        "scheduserName": "user01",
        "multiStreamFlag": 1,
        "conferenceType": 0,
        "isAutoMute": 1,
        "isAutoRecord": 0,
        "chairJoinUri": "https://nmeeting.huaweicloud.com:443/#/j/914271782?p=488a106894bf2d6f6bb6586a88b92e3f7e524a72bec23840",
        "guestJoinUri": "https://nmeeting.huaweicloud.com:443/#/j/914271782?p=47bc6947ee90a1f1be3b90c6f6e2bac59fb448e9bd90cc3c",
        "recordType": 0,
        "recordAuxStream": 0,
        "confConfigInfo": 
        {
            "inviteMode": "AUTO_INVITE",
            "prolongLength": 15,
            "dispatchMode": "AUTO_DISPATCH",
            "isGuestFreePwd": false,
            "isSendNotify": true,
            "isSendSms": true,
            "isAutoMute": true
        },
        "vmrFlag": 0,
        "scheduleVmr": false,
        "isHasRecordFile": false,
        "partAttendeeInfo": [
        {
            "phone": "+8657*******",
            "name": "user01",
            "role": 1,
            "isMute": 1,
            "type": "normal"
        }],
        "terminlCount": 0,
        "normalCount": 0,
        "deptName": "huawei_ffl ",
        "confUUID": "19d6009f67fe11e9b78bbf16aed73b3c"
    }]
}
 

CURL命令示例

curl -k -i -H 'content-type: application/json' -X POST -H 'Authorization:Basic T2FmNUppeGxvYms0MkZ4am45ZmdPR0dBOE1EYVZtMFBP'' -d '{"conferenceType": "0","subject": "user01 conference","mediaTypes": "HDVideo","attendees": [{"name": "user01","role": 1,"phone": "+8657*******"}]}' 'https://api.meeting.huaweicloud.com/conferences'