开放平台

    概述

    介绍蜜蜂(略)

    本文档面向蜜蜂的二次开发人员,可以通过本文档所描述的接口创建微应用,为企业实现更多丰富且个性化的企业移动应用。主要解决在蜜蜂内部集成企业现有的WEB应用,提供统一认证的登录机制,以及向企业WEB应用服务器开放实时推送通知的业务接口。

    企业微应用

    企业微应用是企业在蜜蜂上建立的微应用,只提供给自己企业内部使用。企业内部任何的Web站点都可以成为一个企业微应用。

    蜜蜂移动客户端提供内嵌浏览器, 企业微应用在蜜蜂客户端的表现形式是以一个WEB页面的形式在内嵌浏览器中显示。

    客户端展现方式

    PC端:

    img

    移动端:

    img

    总体结构

    蜜蜂PC客户端使用系统默认的浏览器, 蜜蜂移动客户端提供内嵌的浏览器; 构架如下图:

    img

    开始开发

    接入指南

    1. 新建WEB应用

    登录蜜蜂管理中心(蜜蜂管理中心https://oncloud.quanshi.com/ucadmin/), 在一级分类中,切换到“应用管理”页面, 如下图:

    img

    点击“新增应用”按钮,进入配置应用的界面填写应用配置信息, 如下图:

    img

    1. WEB应用配置

    应用标题:蜜蜂客户端中应用列表中的应用标题。

    应用描述:蜜蜂客户端中应用列表中的应用描述。

    应用授权码: 调用API接口的授权码,可以当成应用登录API服务器的密码。

    应用查询接口:蜜蜂客户端查询应用的未处理计数标记,在应用列表中可以显示唯独计数。

    **平台URL:**客户端打开WEB应用的URL地址, 每个类型的客户端有单独的一个地址,便于PC与移动端用不同的站点。

    消息推送接口及密钥: 蜜蜂服务器向客户的WEB应用服务器推送消息的接口以及加密数据的密钥。

    **适用范围:**设定WEB应用的权限,仅仅被授权的用户才可以在客户的应用列表中显示此应用。

    启用代理: 蜜蜂客户端通过蜜蜂的代理服务器访问应用的WEB服务器; 针对未向公网公开服务器的客户, 需要在客户的网络与全时的蜜蜂网络之间建立VPN、专线等网络通道; 具体实施请联系蜜蜂的产品与销售。

    立即启用: 设定应用的是否有效的状态。

    应用消息是否可输入:设定蜜蜂客户的应用消息窗口,用户是否可以输入消息; 用户输入的消息,将会通过“消息推送接口及密钥”设置的参数推送到客户的服务器。

    获取凭据

    调用蜜蜂的OpenAPI接口需要登录蜜蜂的OpenAPI服务器, 登录成功后获得一个登录Token。

    登录蜜蜂API服务器有两种身份:

    超级管理员:

    用登录蜜蜂管理中心的帐号登录API服务器, 此种身份的权限是无限制的; 可以调用API服务器的任何接口。

    应用管理员:

    使用应用的ID, 以及应用的授权码登录API服务器, 此种身份的权限仅仅可以调用与应用 相关的API接口。

    获取凭据的接口定义情况“OpenAPI参考”节。

    OpenAPI 规范

    OpenAPI是提供给客户应用/业务服务器调用, 完成制定功能的API接口。

    特点:

    1. 使用HTTPS协议作为基础的通讯协议, 采用HTTPS 协议作为基础安全保障;

    2. 所有的HTTP请求使用POST方法;

    3. 请求参数和响应的结果均采用UTF-8编码的JSON结构 封装到消息体里; HTTP请求的Content-Type头值为: “application/json; charset=utf-8”;

    4. HTTP请求URL的路径区分API接口;

    5. HTTP请求的Body部分做为API接口的参数;

    除获取凭据的接口外,所有的接口请求参数格式如下, 其中data部分是API接口的参数, 不同的API接口data部分定义不同, 其它都是调用凭据数据。

    {
    	“username”:“登录用户名”,
    	“token”:“登录凭据”,
    	“data”:{}
    }
    
    1. 所有的答复的JSON格式如下, errorCode为0表示调用成功, data返回结果数据, 不同的API接口data的定义不同; errorCode不为0表示调用失败, errorMessage返回失败描述。
    {
     	“errorCode”: 0,
    	“data”:{}
    	“errorMessage”:“xxxxxxxx”,
    	“requestId”:“xxxxxxxxxxx”
    }
    
    1. 蜜蜂接口URL前缀: **https://bee.quanshi.com/ucopenapi/

    OpenAPI参考

      1. 凭据

        1. 获取凭据

    接口URL: /auth/token/create
    请求参数
    role Integer

    登录角色;
    0: 超级管理员登录(默认)

    2: 应用管理登录

    username String 用户名, 登录管理中心管理帐号的登录名; 必填
    password String 登录密码;必填。
    appId Integer 应用ID, 当role为2时,必填。

    示例:

    {

    “role”: 0,

    “username”: “administrator@quanshi.com”,

    “password”: “11111111”,

    “appId”: 23

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data.token String 登录凭据
    data.username String 登录用户名

    示例

    {

    “errorCode”: 0,

    “data”: {

    “username”: “administrator@quanshi.com”,

    “token”: “xxxxxxxxx-xxxxxxxxx-xxxxxxxxx”

    }

    “errorMessage”:null,

    “requestId”: “xxxxx-xxxxx”

    }

    1. 校验凭据

    接口URL: /auth/token/check
    请求参数
    username String 用户名, 登录管理中心管理帐号的登录名; 必填
    token String 调用获取凭据接口返回的token。

    示例:

    {

    “username”: “administrator@quanshi.com”,

    “token”: “xxxxxxx-xxxxxxxxxxx-xxxxxxxx”

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data.token String 登录凭据
    data.username String 登录用户名

    示例

    {

    “errorCode”: 0,

    “data”: {

    “username”: “administrator@quanshi.com”,

    “token”: “xxxxxxxxx-xxxxxxxxx-xxxxxxxxx”

    }

    “errorMessage”:null,

    “requestId”: “xxxxx-xxxxx”

    }

    1. 销毁凭据

    接口URL: /auth/token/delete
    请求参数
    username String 用户名, 登录管理中心管理帐号的登录名; 必填
    token String 调用获取凭据接口返回的token。

    示例:

    {

    “username”: “administrator@quanshi.com”,

    “token”: “xxxxxxx-xxxxxxxxxxx-xxxxxxxx”

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    <无>

    示例

    {

    “errorCode”: 0,

    “errorMessage”:null,

    “requestId”: “xxxxx-xxxxx”

    }


    1. 应用消息

      1. 文本消息

    接口URL: /appmsg/text2/send
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.toUsers Array 接收人用户名,字符串数组;toUsers, toPartyIds指定消息接受者,不能同时为空。
    data.toPartyIds Array 部门ID, 整形数组; toUsers, toPartyIds指定消息接受者,不能同时为空。
    data.appId Integer 微应用ID;必填
    data.title String 标题;选填。
    data.content String 消息内容;必填。
    data.detailContent String 详细内容链接;选填。
    data.detailAuth Integer 是否用统一认证的方式打开详细内容的连接;1:是, 0:否(默认);选填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "toUsers": [

    "user1@quanshi.com",

    "user2@quanshi.com"

    ],

    "toPartyIds": [

    100,

    200

    ],

    "appId": 80,

    "title": "message title",

    "content": "message contet",

    "detailContent": "http://www.baidu.com",

    "detailAuth": "1"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data. Array 发送结果数组
    data[0].toUser String 接收消息的用户名
    data[0].toPartyId Integer 接收消息的部门ID
    data[0].errorCode Integer 消息投递结果,0: 成功,非0: 失败。
    Data[0].errorMessage String 失败时的提示。

    示例

    {

    "errorCode": 0,

    "data": [

    {

    "toUser": "user1@quanshi.com",

    "errorCode": 0,

    "errorMessage": ""

    },

    {

    "toPartyId": 100,

    "errorCode": 10010,

    "errorMessage": "invalid token"

    }

    ],

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }


    1. 图片消息

    接口URL: /appmsg/image/send
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.toUsers Array 接收人用户名,字符串数组;toUsers, toPartyIds指定消息接受者,不能同时为空。
    data.toPartyIds Array 部门ID, 整形数组; toUsers, toPartyIds指定消息接受者,不能同时为空。
    data.appId Integer 微应用ID;必填
    data.mediaId String 图片文件的URL地址或者在蜜蜂文件服务器上的ID;必填。
    data.mediaType Integer 图片类型, 1:mediaId是一个文件ID, 2:mediaID是文件URL地址;必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "toUsers": [

    "user1@quanshi.com",

    "user2@quanshi.com"

    ],

    "toPartyIds": [

    100,

    200

    ],

    "appId": 80,

    "mediaId": "http://www.baidu.com/image/1.image",

    "mediaType": 2

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data. Array 发送结果数组
    data[0].toUser String 接收消息的用户名
    data[0].toPartyId Integer 接收消息的部门ID
    data[0].errorCode Integer 消息投递结果,0: 成功,非0: 失败。
    Data[0].errorMessage String 失败时的提示。

    示例

    {

    "errorCode": 0,

    "data": [

    {

    "toUser": "user1@quanshi.com",

    "errorCode": 0,

    "errorMessage": ""

    },

    {

    "toPartyId": 100,

    "errorCode": 10010,

    "errorMessage": "invalid token"

    }

    ],

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }


    1. 文件消息

    接口URL: /appmsg/file/send
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.toUsers Array 接收人用户名,字符串数组;toUsers, toPartyIds指定消息接受者,不能同时为空。
    data.toPartyIds Array 部门ID, 整形数组; toUsers, toPartyIds指定消息接受者,不能同时为空。
    data.appId Integer 微应用ID; 必填
    data.mediaId String 文件的URL地址或者在蜜蜂文件服务器上的ID;必填。
    data.mediaType Integer 文件类型, 1:mediaId是一个文件ID, 2:mediaID是文件URL地址;必填。
    data.fileName String 文件名;必填。
    data.fileSize Integer 文件大小, 单位字节; 选填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "toUsers": [

    "user1@quanshi.com",

    "user2@quanshi.com"

    ],

    "toPartyIds": [

    100,

    200

    ],

    "appId": 80,

    "mediaId": "http://www.baidu.com/image/1.gzip ",

    "mediaType": 2,

    "fileName": "1.gzip ",

    "fileSize": 10240

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data. Array 发送结果数组
    data[0].toUser String 接收消息的用户名
    data[0].toPartyId Integer 接收消息的部门ID
    data[0].errorCode Integer 消息投递结果,0: 成功,非0: 失败。
    Data[0].errorMessage String 失败时的提示。

    示例

    {

    "errorCode": 0,

    "data": [

    {

    "toUser": "user1@quanshi.com",

    "errorCode": 0,

    "errorMessage": ""

    },

    {

    "toPartyId": 100,

    "errorCode": 10010,

    "errorMessage": "invalid token"

    }

    ],

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }


    1. 定制消息

    接口URL: /appmsg/customized/send
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.toUsers Array 接收人用户名,字符串数组;toUsers, toPartyIds指定消息接受者,不能同时为空。
    data.toPartyIds Array 部门ID, 整形数组; toUsers, toPartyIds指定消息接受者,不能同时为空。
    data.appId Integer 微应用ID; 必填
    data.data1 String 定制化数据;必填。
    data.data2 String 定制化数据;选填。
    data.data3 String 定制化数据;选填。
    data.data4 String 定制化数据;选填。
    data.webPushData String 向IOS客户端推送消息的内容;如无内容或者不填,则不向IOS客户端推送消息;选填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "toUsers": [

    "user1@quanshi.com",

    "user2@quanshi.com"

    ],

    "toPartyIds": [

    100,

    200

    ],

    "appId": 80,

    "data1": "dafdsfdsfsdf",

    "data2": "sdfsdf",

    "data3": "eeeeeeeeeeeeeeeeee",

    "data4": "werwr123232423423432",

    "webPushData": "this is a push message."

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data. Array 发送结果数组
    data[0].toUser String 接收消息的用户名
    data[0].toPartyId Integer 接收消息的部门ID
    data[0].errorCode Integer 消息投递结果,0: 成功,非0: 失败。
    Data[0].errorMessage String 失败时的提示。

    示例

    {

    "errorCode": 0,

    "data": [

    {

    "toUser": "user1@quanshi.com",

    "errorCode": 0,

    "errorMessage": ""

    },

    {

    "toPartyId": 100,

    "errorCode": 10010,

    "errorMessage": "invalid token"

    }

    ],

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }


    1. OA消息

    接口URL: /appmsg/oa/send
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.toUsers Array 接收人用户名,字符串数组;toUsers, toPartyIds指定消息接受者,不能同时为空。
    data.toPartyIds Array 部门ID, 整形数组; toUsers, toPartyIds指定消息接受者,不能同时为空。
    data.appId Integer 微应用ID; 必填
    data.status Integer OA消息默认状态, 后选值0-20; 选填, 默认:0.
    data.title String 起始状态时标题栏内容,必填
    data.color String 起始状态标题底色;请看“OA消息标题栏”节; 选填。
    data.titleStyle String 起始状态标题栏风格, 可选值:“simple”,“default”(默认),选填。
    data.titleElements String 标题栏元素;请看“OA消息标题栏”节; 选填。
    data.elements String 内容元素;请看“OA消息标题栏”节; 必填。
    detailURL String 详情URL, 选填。
    detailAuth String 是否用统一认证的方式打开详细内容的连接, 默认:否;选填。
    exData String 扩展数据,选填。
    customizedType String 扩展数据,选填。
    customizedData String 扩展数据,选填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "toUsers": [

    "user1@quanshi.com",

    "user2@quanshi.com"

    ],

    "toPartyIds": [

    100,

    200

    ],

    "appId": 80,

    "status": 0,

    "color": "blue",

    "tilte": "标题栏内容",

    "titleStyle": "simple",

    "titleElements": [

    {

    "stauts": 5,

    "tilte": "转变后的标题栏内容1",

    "color": "red"

    },

    {

    "stauts": 15,

    "tilte": "转变后的标题栏内容2",

    "color": "red"

    }

    ],

    "elements": [

    {

    "type": "text",

    "content": [

    {

    "url": null,

    "bold": null,

    "color": "#0000FF",

    "size": null,

    "urlauth": null,

    "text": "需要审批的内容"

    }

    ],

    "imageType": null,

    "imageId": null,

    "buttons": null,

    "status": "11"

    }

    ],

    "detailURL": "http://www.baidu.com",

    "detailAuth": 1

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data. Array 发送结果数组
    data[0].toUser String 接收消息的用户名
    data[0].toPartyId Integer 接收消息的部门ID
    data[0].errorCode Integer 消息投递结果,0: 成功,非0: 失败。
    Data[0].errorMessage String 失败时的提示。

    示例

    {

    "errorCode": 0,

    "data": [

    {

    "errorCode": 0,

    "toUser": "shengjun.wu@quanshi.com",

    "toPartyId": null,

    "errorMessage": null,

    "msgId": "8C931A60-D540-8F8A-73F4-3656104B7FE8"

    }

    ],

    "errorMessage": "Successful!",

    "requestId": "b-ucopenapi1-9534dafa-6b2c-4ab3-8dd0-e562b4a3c286"

    }

    备注:定制客户端使用的接口,非定制客户端请忽略该接口
    1. 改变OA消息状态

    接口URL: /appmsg/oa/status/change
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.msgId String OA消息发送接口返回的MsgId,必填。
    data.newStatus Integer OA消息新的状态,必填。
    data.externalData Object OA消息新状态的额外数据,用来修改OA消息的显示内容;选填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "msgId": "sdfsdf-sdfsdf-12313-sdfsdfsd",

    "newStatus": 6,

    "externalData": {

    "name1": "value1"

    }

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data.

    示例

    {

    "errorCode": 0,

    "data":null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 待处理事件通知

    说明:用于应用本身的待处理提示:小红点显隐(非用于应用消息的未读计数)

    接口URL: /appmsg/new/event/notify
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.toUsers Array 接收人用户名,字符串数组;toUsers, toPartyIds指定消息接受者,不能同时为空。
    data.toPartyIds Array 部门ID, 整形数组; toUsers, toPartyIds指定消息接受者,不能同时为空。
    data.appId Integer 微应用ID; 必填
    data.eventCount Integer 待处理事件计数;必填。
    data.extend String 扩展数据;选填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "toUsers": [

    "user1@quanshi.com",

    "user2@quanshi.com"

    ],

    "toPartyIds": [

    100,

    200

    ],

    "appId": 80,

    "eventCount": 5,

    "extend": "sdfsdfsdfsdf"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data. Array 发送结果数组
    data[0].toUser String 接收消息的用户名
    data[0].toPartyId Integer 接收消息的部门ID
    data[0].errorCode Integer 消息投递结果,0: 成功,非0: 失败。
    Data[0].errorMessage String 失败时的提示。

    示例

    {

    "errorCode": 0,

    "data": [

    {

    "toUser": "user1@quanshi.com",

    "errorCode": 0,

    "errorMessage": ""

    },

    {

    "toPartyId": 100,

    "errorCode": 10010,

    "errorMessage": "invalid token"

    }

    ],

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }


    1. 聊天消息

      1. 文本消息

    接口URL: /immsg/text/send
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.fromUser String 消息发人帐号,必填
    data.toUsers Array 接收人用户名,字符串数组;toUsers, toGroups指定消息接受者,不能同时为空。
    data.toGroups Array 部门ID, 整形数组; toUsers, toGroups指定消息接受者,不能同时为空。
    data.content String 文本消息内容,必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "fromUser": "test1@quanshi.com",

    "toUsers": [

    "user1@quanshi.com",

    "user2@quanshi.com"

    ],

    "toGroups": [

    100,

    200

    ],

    "content": "sdfsdfsdfsdf"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data. Array 发送结果数组
    data[0].toUser String 接收消息的用户名
    data[0].toGroup Integer 接收消息的讨论组ID
    data[0].errorCode Integer 消息投递结果,0: 成功,非0: 失败。
    Data[0].errorMessage String 失败时的提示。

    示例

    {

    "errorCode": 0,

    "data": [

    {

    "toUser": "user1@quanshi.com",

    "errorCode": 0,

    "errorMessage": ""

    },

    {

    "toGroup": 100,

    "errorCode": 10010,

    "errorMessage": "invalid token"

    }

    ],

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 统一认证/登录

      1. Session检查

    接口URL: /status/session/check
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Array 传入待检查Session参数数组
    data[0].account String 蜜蜂帐号,必填。
    data[0].sessionId String 蜜蜂回话ID,必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": [

    {

    "account": "user1@quanshi.com",

    "sessionId": "sdfjsdfsdfsd-sdfsdfsdf-123123"

    },

    {

    "account": "user2@quanshi.com",

    "sessionId": "sdfjsdfsdfsd-sdfsdfsdf-123123"

    }

    ]

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data. Array 检测结果数组
    data[0].errorCode Integer 结果码,0:成功,非0: 失败。
    data[0].errorMessage String 错误提示信息。
    data[0].account String 检测蜜蜂帐号。
    data[0].sessionId String 蜜蜂回话ID。
    data[0].displayName String 蜜蜂帐号显示名称。
    data[0].sex Integer 蜜蜂帐号性别, 0: 男,1:女。
    data[0].mobile String 蜜蜂帐号移动电话。
    data[0].fixTel String 蜜蜂帐号固定电话。
    data[0].position String 蜜蜂帐号的职务。
    data[0].email String 蜜蜂帐号的注册邮箱。
    data[0].department String 蜜蜂帐号的部门。
    data[0].siteId Integer 蜜蜂帐号的站点ID。
    data[0].adminAccount String 蜜蜂帐号的管理员账号(任意一个有效的账号)。
    data[0].iconUrl String 头像URL,选填

    示例

    {

    "errorCode": 0,

    "data": [

    {

    "errorCode": 0,

    "errorMessage": "",

    "account": "user1@quanshi.com",

    "sessionId": "sdfsdfsdf-sdfsdf-s-dfsdfsd",

    "displayName": "测试1",

    "sex": 1,

    "mobile": 13912345678,

    "fixTel": "010-12345678",

    "position": "总经理",

    "email": "user1@quanshi.com",

    "department": "研发部",

    "siteId": 343234,

    "adminAccount": "admin111@quanshi.com",

    "iconUrl":"http://XXXXXXX"

    },

    {

    "errorCode": 0,

    "errorMessage": "",

    "account": "user2@quanshi.com",

    "sessionId": "sdfsdfsdf-sdfsdf-s-dfsdfsd",

    "displayName": "测试2",

    "sex": 1,

    "mobile": 13912345678,

    "fixTel": "010-12345678",

    "position": "总经理",

    "email": "user2@quanshi.com",

    "department": "研发部",

    "siteId": 343234,

    "adminAccount": "admin111@quanshi.com",

    "iconUrl":"http://XXXXXXX"

    }

    ],

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }


    1. 帐号

      1. 创建帐号


    接口URL:
    /account/create
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.loginname String 登录帐号,必填。
    data.lastname String 姓, 必填。
    data.firstname String 名, 必填。
    data.displayname String 显示名称,必填
    data.namepinyin String 姓名拼音,选填。
    data.position String 职务,选填。
    data.mobile String 手机号,选填
    data.email String 邮箱地址,选填
    data.country String 国家,选填
    data.officephone String 办公电话,选填
    data.pbxNubmer String PBX分机号
    data.beeStatus Boolean 蜜蜂帐号状态, 选填。
    data.pbxStatus Boolean PBX电话功能状态,选填。
    data.confStatus Boolean 发起云会议功能状态,选填
    data.confPhoneStatus Boolean 云会议中使用电话功能状态,选填
    data.callStatus Boolean 呼功能状态,选填
    data.callPhoneStatus Boolean 呼中使用电话功能状态,选填
    data.yunpanStatus Boolean 云盘功能状态,选填
    data.sendDocInChat Boolean 聊天发送文件功能状态,选填
    data.inviteStatus Boolean 会议邀请参会人功能状态,选填
    data.departments Array 部门全路径名称,每级部门是一个数组单元,必填
    data.departments[0] String 各级部门名称

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "loginname": "test@quanshi.com",

    "lastname": "quanshi",

    "firstname": "test",

    "displayname": "test quanshi",

    "namepinyin": "",

    "position": "",

    "mobile": "",

    "email": "",

    "country": "",

    "officephone": "0512-62886816",

    "pbxNubmer": 1234,

    "beeStatus": true,

    "pbxStatus": true,

    "confStatus": true,

    "confPhoneStatus": true,

    "callStatus": true,

    "callPhoneStatus": false,

    "yunpanStatus": true,

    "sendDocInChat": false,

    "inviteStatus": true,

    "departments": [

    "全时公司",

    "研发部"

    ]

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data

    示例

    {

    "errorCode": 0,

    "data":null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 修改帐号


    接口URL:
    /account/update
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    Token String 登录凭据,由“获取凭据”接口返回;必填。
    data.loginname String 登录帐号,必填。
    data.lastname String 姓, 必填。
    data.firstname String 名, 必填。
    data.displayname String 显示名称,必填
    data.namepinyin String 姓名拼音,选填。
    data.position String 职务,选填。
    data.mobile String 手机号,选填
    data.email String 邮箱地址,选填
    data.country String 国家,选填
    data.officephone String 办公电话,选填
    data.pbxNumber String PBX分机号
    data.beeStatus Boolean 蜜蜂帐号状态, 选填。
    data.pbxStatus Boolean PBX电话功能状态,选填。
    data.confStatus Boolean 发起云会议功能状态,选填
    data.confPhoneStatus Boolean 云会议中使用电话功能状态,选填
    data.callStatus Boolean 呼功能状态,选填
    data.callPhoneStatus Boolean 呼中使用电话功能状态,选填
    data.yunpanStatus Boolean 云盘功能状态,选填
    data.sendDocInChat Boolean 聊天发送文件功能状态,选填
    data.inviteStatus Boolean 会议邀请参会人功能状态,选填

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "loginname": "test@quanshi.com",

    "lastname": "quanshi",

    "firstname": "test",

    "displayname": "test quanshi",

    "namepinyin": "",

    "position": "",

    "mobile": "",

    "email": "",

    "country": "",

    "officephone": "0512-62886816",

    "pbxNubmer": 1234,

    "beeStatus": true,

    "pbxStatus": true,

    "confStatus": true,

    "confPhoneStatus": true,

    "callStatus": true,

    "callPhoneStatus": false,

    "yunpanStatus": true,

    "sendDocInChat": false,

    "inviteStatus": true,

    "departments": [

    "全时公司",

    "研发部"

    ]

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data

    示例

    {

    "errorCode": 0,

    "data":null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 删除帐号


    接口URL:
    /account/delete
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data String 用户帐号登录名

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": "test@quanshi.com"

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data

    示例

    {

    "errorCode": 0,

    "data":null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 修改密码


    接口URL:
    /account/modifypassword
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.loginname String 用户帐号登录名
    data.password String 用户帐号新的密码。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "loginname": "test@quanshi.com",

    "password": "new password"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data

    示例

    {

    "errorCode": 0,

    "data":null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 获取帐号信息


    接口URL:
    /account/getinfo
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data String 蜜蜂帐号登录名,必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": "test@quanshi.com"

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data.loginname String 登录帐号,必填。
    data.lastname String 姓, 必填。
    data.firstname String 名, 必填。
    data.displayname String 显示名称,必填
    data.namepinyin String 姓名拼音,选填。
    data.position String 职务,选填。
    data.mobile String 手机号,选填
    data.email String 邮箱地址,选填
    data.country String 国家,选填
    data.officephone String 工作电话,选填
    data.pbxNubmer String PBX分机号
    data.beeStatus Boolean 蜜蜂帐号状态, 选填。
    data.pbxStatus Boolean PBX电话功能状态,选填。
    data.confStatus Boolean 发起云会议功能状态,选填
    data.confPhoneStatus Boolean 云会议中使用电话功能状态,选填
    data.callStatus Boolean 呼功能状态,选填
    data.callPhoneStatus Boolean 呼中使用电话功能状态,选填
    data.yunpanStatus Boolean 云盘功能状态,选填
    data.sendDocInChat Boolean 聊天发送文件功能状态,选填
    data.inviteStatus Boolean 会议邀请外部人员功能状态,选填
    data.departments Array 部门全路径名称,每级部门是一个数组单元,必填
    data.departments[0] String 各级部门名称
    data.iconUrl String 头像URL,选填
    data.iconFileId String 头像的文件id,选填
    data. sex Integer 性别: 1-男 2-女,选填
    data.officeAddress String 办公地址,选填
    data. countryCode String 工作电话-国别码,选填
    data.cityCode String 工作电话-区号,选填
    data. subCode String 工作电话-分机号,选填
    data. isManager Integer 是否为领导: 1-是,选填
    data.superUserInfo. loginname String 上级登录名,选填
    data.superUserInfo. displayname String 上级展示名称,选填

    示例

    {

    "errorCode": 0,

    "data": {

    "loginname": "adiadacd@d123.com",

    "lastname": "姓",

    "firstname": "名",

    "displayname": "展示名称",

    "namepinyin": "ZSMC",

    "position": "员工",

    "mobile": "11222255462",

    "email": "adiadacd@d123.com",

    "country": null,

    "officephone": "55448748",

    "pbxNumber": null,

    "beeStatus": true,

    "pbxStatus": false,

    "confStatus": true,

    "confPhoneStatus": true,

    "callStatus": true,

    "callPhoneStatus": false,

    "yunPanStatus": false,

    "sendDocInChat": true,

    "inviteStatus": true,

    "iconUrl": "http://beefs.quanshi.com:80/ucfserver/hddown?fid=NTQ1MzczMC84Lzx8Oj4yMDE3XzdfMTFfMTVfOV80OF82MTQucG5nXl5edGFuZ2hkZnNeXl43Mzk1MzZkYjczOWZjMDRkMDNlNzllNThhZjY3ZDIyOF5eXnRhbmdoZGZzXl5eODY5OQ$&u=5453730",

    "iconFileId":"NTQ1MzczMC84Lzx8Oj4yMDE3XzdfMTFfMTVfOV80OF82MTQucG5nXl5edGFuZ2hkZnNeXl43Mzk1MzZkYjczOWZjMDRkMDNlNzllNThhZjY3ZDIyOF5eXnRhbmdoZGZzXl5eODY5OQ$",

    "sex": 2,

    "officeAddress": "苏州",

    "countryCode": "86",

    "cityCode": "0512",

    "subCode": "2254",

    "isManager": 1,

    "superUserInfo": {

    "loginname": "tbe2@test.com",

    "displayname": "Kimi(基米·莱科宁)"

    },

    "departments": [

    [

    "蜜蜂测试-14",

    "研发测试"

    ]

    ]

    },

    "errorMessage": "Successful!",

    "requestId": "A120197-ac74a31f-bc83-4aa1-8cd1-b46de5953ce5"

    }

    1. 获取帐号状态


    接口URL:
    /account/getstatus
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data String 蜜蜂帐号登录名,必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": "test@quanshi.com"

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data.loginname String 登录帐号,必填。
    data.beeStatus Boolean 蜜蜂帐号状态, 选填。

    示例

    {

    "errorCode": 0,

    "data": {

    "loginname": "test@quanshi.com",

    "beeStatus": true

    },

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 禁用帐号


    接口URL:
    /account/disable
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data String 蜜蜂帐号登录名,必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": "test@quanshi.com"

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data

    示例

    {

    "errorCode": 0,

    "data":null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 启用帐号


    接口URL:
    /account/enable
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data String 蜜蜂帐号登录名,必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": "test@quanshi.com"

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data

    示例

    {

    "errorCode": 0,

    "data":null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 移动帐号


    接口URL:
    /account/movedepartment
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.loginame String 蜜蜂帐号登录名,必填。
    data.parentNameLink Array 新部门的名称ID数组,必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "loginname": "user1@quanshi.com",

    "parentNameLink": [

    "研发部",

    "北京研发团队"

    ]

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data

    示例

    {

    "errorCode": 0,

    "data":null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 根据ID获取账号信息


    接口URL:
    /account/infoById/get
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data String 用户ID,必填。

    示例:

    {

    "token": "9fd51ec2-67c3-4986-acfd-491f0a73a947",

    "username": "admin@ucb20151104.quanshi.com",

    "data": "64045321"

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data.loginname String 登录帐号,必填。
    data.lastname String 姓, 必填。
    data.firstname String 名, 必填。
    data.displayname String 显示名称,必填
    data.namepinyin String 姓名拼音,选填。
    data.position String 职务,选填。
    data.mobile String 手机号,选填
    data.email String 邮箱地址,选填
    data.country String 国家,选填
    data.officephone String 办公电话,选填
    data.pbxNubmer String PBX分机号
    data.beeStatus Boolean 蜜蜂帐号状态, 选填。
    data.pbxStatus Boolean PBX电话功能状态,选填。
    data.confStatus Boolean 发起云会议功能状态,选填
    data.confPhoneStatus Boolean 云会议中使用电话功能状态,选填
    data.callStatus Boolean 呼功能状态,选填
    data.callPhoneStatus Boolean 呼中使用电话功能状态,选填
    data.yunpanStatus Boolean 云盘功能状态,选填
    data.sendDocInChat Boolean 聊天发送文件功能状态,选填
    data.inviteStatus Boolean 会议邀请外部人员功能状态,选填
    data.departments Array 部门全路径名称,每级部门是一个数组单元,必填
    data.departments[0] String 各级部门名称
    data.iconUrl String 头像URL,选填
    data.iconFileId String 头像的文件id,选填
    data.externalUserName String AD域账户名选填
    data. sex Integer 性别: 1-男 2-女,选填
    data.officeAddress String 办公地址,选填
    data. countryCode String 工作电话-国别码,选填
    data.cityCode String 工作电话-区号,选填
    data. subCode String 工作电话-分机号,选填
    data. isManager Integer 是否为领导: 1-是,选填
    data.superUserInfo. loginname String 上级登录名,选填
    data.superUserInfo. displayname String 上级展示名称,选填

    示例

    {

    {

    "errorCode": 0,

    "data": {

    "loginname": "testb_confe001@test.com",

    "lastname": "hello_last",

    "firstname": "sjb0300",

    "displayname": "testb_confe001@test.com",

    "namepinyin": "TESTB_CONFE001@TEST.COM",

    "position": null,

    "mobile": "18910051245",

    "email": "testb_confe001@test.com",

    "country": null,

    "officephone": "98765432111",

    "pbxNumber": "2001",

    "beeStatus": false,

    "pbxStatus": true,

    "confStatus": true,

    "confPhoneStatus": true,

    "callStatus": true,

    "callPhoneStatus": true,

    "yunPanStatus": true,

    "sendDocInChat": true,

    "inviteStatus": true,

    "iconUrl": "http://testbeefs.quanshi.com:80/ucfserver/hddown?fid=NjQwNDUzMjEvOC88fDo-MjAxN181XzNfMTdfNl8xNl8yLmpwZ15eXnRhbmdoZGZzXl5eZjVjMDdmODkyMThiN2JjZjllMmM0NmU4ZDg4ZWQxOTReXl50YW5naGRmc15eXjczNjM$&u=64045321",

    "iconFileId": "NjQwNDUzMjEvOC88fDo-MjAxN181XzNfMTdfNl8xNl8yLmpwZ15eXnRhbmdoZGZzXl5eZjVjMDdmODkyMThiN2JjZjllMmM0NmU4ZDg4ZWQxOTReXl50YW5naGRmc15eXjczNjM$",

    "sex": 2,

    "officeAddress": "苏州",

    "countryCode": "86",

    "cityCode": "0512",

    "subCode": "2254",

    "isManager": 1,

    "superUserInfo": {

    "loginname": "tbe2@test.com",

    "displayname": "Kimi(基米·莱科宁)"

    },

    "departments": [

    [

    "上海杰事杰新材料(集团)股份有限公司",

    "测试",

    "sj_testb"

    ]

    ],

    "externalUserName": "testb_001"

    },

    "errorMessage": "Successful!",

    "requestId": "ubuntu-9f03d246-f934-43d5-97f0-f99436225c8c"

    }

    1. 部门

      1. 创建部门

    接口URL: /department/create
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.parentNameLink Array 父部门名字数组,必填。
    data.name String 新建部门名称,必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "parentNameLink": [

    "研发部",

    "北京研发团队"

    ],

    "name": "前端研发组"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data

    示例

    {

    "errorCode": 0,

    "data":null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 修改部门

    接口URL: /department/update
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.parentNameLink Array 父部门名字数组,必填。
    data.oldName String 部门老的名称,必填
    data.name String 部门新名称,必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "parentNameLink": [

    "研发部",

    "北京研发团队"

    ],

    "oldName": "前端研发组",

    "name": "PC研发组"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data

    示例

    {

    "errorCode": 0,

    "data":null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 删除部门

    接口URL: /department/delete
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.nameLink Array 部门名字数组,必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "nameLink": [

    "研发部",

    "北京研发团队",

    "PC研发组"

    ]

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data

    示例

    {

    "errorCode": 0,

    "data":null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 移动部门

    接口URL: /department/move
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.oldNameLink Array 需要移动部门名字数组,必填。
    data.nameLink 移动到新父部门名字数组,必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "oldNameLink": [

    "研发部",

    "北京研发团队",

    "PC研发组"

    ],

    "nameLink": [

    "研发部",

    "上海研发团队"

    ]

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Array 部门新的名字数组

    示例

    {

    "errorCode": 0,

    "data": [

    "研发部",

    "上海研发团队",

    "PC研发组"

    ],

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 枚举部门

    接口URL: /department/enum
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.nameLink Array 需要枚举部门名字数组,必填。
    data.childType String 枚举类型,可选值:”department”:枚举子部门,“user”:枚举部门所属帐号,“all”:枚举所有子部门、帐号; 选填,默认“all”。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "nameLink": [

    "研发部",

    "上海研发团队"

    ],

    "childType": "all"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data.departments Array 子部门的名字数组。
    data.departments[0] String 子部门名称。
    data.users Array 所属此部门的帐号对象数组
    data.users[0].loginname String 蜜蜂帐号登录名。
    data.user[0].lastname String
    data.user[0].firstname String
    data.user[0].displayname String 显示名称
    data.user[0].namepinyin String 姓名拼音
    data.user[0].mobile String 移动电话
    data.user[0].position String 职务
    data.user[0].officephone String 办公电话
    data.user[0].iconUrl String 头像URL
    data.user[0].iconFileId String 头像的文件id

    示例

    {

    "errorCode": 0,

    "users": [

    {

    "loginname": "test1@quanshi.com",

    "firstname": "名",

    "lastname": "姓",

    "mobile": 13912345678,

    "officephone": "010-12345678",

    "position": "工程师",

    "displayname": "姓名",

    "namepinyin": "xingming",

    "iconUrl": "http://beefs.quanshi.com:80/ucfserver/hddown?fid=NTQ1MzczMC84Lzx8Oj4yMDE3XzdfMTFfMTVfOV80OF82MTQucG5nXl5edGFuZ2hkZnNeXl43Mzk1MzZkYjczOWZjMDRkMDNlNzllNThhZjY3ZDIyOF5eXnRhbmdoZGZzXl5eODY5OQ$&u=5453730",

    "iconFileId":"NTQ1MzczMC84Lzx8Oj4yMDE3XzdfMTFfMTVfOV80OF82MTQucG5nXl5edGFuZ2hkZnNeXl43Mzk1MzZkYjczOWZjMDRkMDNlNzllNThhZjY3ZDIyOF5eXnRhbmdoZGZzXl5eODY5OQ$"

    }

    }

    ],

    "departments": [

    "基础C库组",

    "界面",

    "JavaScript组"

    ],

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 查询部门ID

    接口URL: /department/getid
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.nameLink Array 部门名字数组,必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "nameLink": [

    "研发部",

    "北京研发团队",

    "PC研发组"

    ]

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Integer 部门ID

    示例

    {

    "errorCode": 0,

    "data":1234,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }


    1. 讨论组

      1. 创建讨论组

    接口URL: /group/create
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.owner String 讨论组创建者帐号,必填。
    data.groupName String 讨论组名称,必填。
    data.members Array 讨论组成员帐号数组, 必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "groupName": "测试讨论组",

    "owner": "user1@quanshi.com",

    "members": [

    "user1@quanshi.com",

    "user2@quanshi.com"

    ]

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data.groupId Integer 讨论组ID

    示例

    {

    "errorCode": 0,

    "data": {

    "groupId": 1234

    },

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 退出讨论组

    接口URL: /group/quit
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.groupId Integer 讨论组ID,必填。
    data.userName String 退出讨论组的帐号名。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "groupId": 1234,

    "userName": "user1@quanshi.com"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data

    示例

    {

    "errorCode": 0,

    "data":null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 文件

      1. 上传文件

    接口URL: /file/upload
    请求参数(POST请求方法, multipart请求方式)
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    fileName String 文件名,必填。
    type String 文件类型,可选值:“file”:普通文件,“image”:图片文件, 必填。
    FILE 上传文件内容; 字段名称不限制,类型是文件即可; 对应HTML中FILE类型。

    示例:

    POST /ucopenapi/file/upload HTTP/1.0

    Host: testcloud.quanshi.com

    X-Real-IP: 10.255.0.84

    X-Forwarded-For: 10.255.0.84

    Connection: close

    User-Agent: UCHttpCurl v1.0

    Accept: */*

    Content-Length: 74677

    Content-Type: multipart/form-data; boundary=----------------------------0b9679e9180b

    ------------------------------0b9679e9180b

    Content-Disposition: form-data; name="username"

    user1@quanshi.com

    ------------------------------0b9679e9180b

    Content-Disposition: form-data; name="token"

    a7a894b4-9dc2-49fb-a235-dbcb501f8e44

    ------------------------------0b9679e9180b

    Content-Disposition: form-data; name="type"

    image

    ------------------------------0b9679e9180b

    Content-Disposition: form-data; name="filename"

    2006_10_30_53259_4053259.jpg

    ------------------------------0b9679e9180b

    Content-Disposition: form-data; name="file"; filename="2006_10_30_53259_4053259.jpg"

    Content-Type: image/jpeg

    ......JFIF.....`.`.....C...............

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    Data.fileId String 文件ID

    示例

    {

    "errorCode": 0,

    "data": {

    "fileId": "NjIwNzM5MTkvMjU2LzIwMDZfMTBfMzBfNTMyNTlfNDA1MzI1OS5qcGdeXl50YW5naGRmc15eXjZEOTIwNDdFRTc0MjMxQUUzOEI3Q0U3MjM3ODgzQzlFXl5edGFuZ2hkZnNeXl43Mzk5Mg$"

    },

    "errorMessage": "Successful!",

    "requestId": "a7ec873d-6d69-4954-a863-9f9ca4580502"

    }

    1. 下载文件

    接口URL: /file/download
    请求参数(GET请求方法,下列都是GET方法的变量)
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    fileId String 文件ID,必填。

    示例:

    /file/download?username=user1%40quanshi.com&token=a7a894b4-9dc2-49fb-a235-dbcb501f8e44&fileId=NjIwNzM5MTkvMjU2LzIwMDZfMTBfMzBfNTMyNTlfNDA1MzI1OS5qcGdeXl50YW5naGRmc15eXjZEOTIwNDdFRTc0MjMxQUUzOEI3Q0U3MjM3ODgzQzlFXl5edGFuZ2hkZnNeXl43Mzk5Mg%24

    答复( HTTP协议200答复返回文件内容, 其它答复返回错误)
    1. JSAPI授权

      1. 获取微应用Ticket


    接口URL:

    /ticket/get或者

    https://bee.quanshi.com/ ucopenapi/ticket/getticket

    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.appId Integer 微应用ID,必填。
    data.build Integer 是否重新生成新的Ticket, 可选值: “yes”, “no”; 默认no, 选填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "appId": 1469,

    "build": "no"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data.appId Integer 微应用ID。
    data.ticket String 为应用Ticket。

    示例

    {

    "errorCode": 0,

    "data": {

    "appId": 1234,

    "ticket": "sdfsdfsdfsdf"

    },

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }


    1. PBX通话

      1. 查询通话记录


    接口URL:
    /pbx/record/query
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data.beginTime Integer 查询起始时间,Unix时间戳,必填。
    data.endTime Integer 查询结束时间,Unix时间戳,必填。
    data.userName String 查询制定帐号的通话记录, 选填; 如果不填,则查询所有的PBX通话记录

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "beginTime": 1469980800,

    "endTime": 1472572800,

    "userName": "test@quanshi.com"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Array 通话记录数组
    data[0].uuid String 通话唯一标识
    data[0].callerUserName String 主叫方用户名。
    data[0].callerNumber String 主叫方电话号码。
    data[0].callerPbxNumber String 主叫方PBX分机号。
    data[0].calledUserName String 被叫方用户名。
    data[0].calledNumber String 被叫方电话号码。
    data[0].calledPbxNumber String 被叫方PBX分机号。
    data[0].billSeconds Integer 计费时长,单位:秒。
    data[0].callTime Integer 呼叫时间,Unix时间戳。
    data[0].answerTime Integer 应答时间,Unix时间戳。
    data[0].hangupTime Integer 挂机时间,Unix时间戳。
    data[0].recordUrl String 录音文件下载URL

    示例

    {

    "errorCode": 0,

    "data": [

    {

    "uuid": "user1@quanshi.com",

    "callerUserName": 0,

    "callerNumber": "",

    "callerPbxNumber": "",

    "calledUserName": 0,

    "calledNumber": "",

    "calledPbxNumber": "",

    "billSeconds": 100,

    "callTime": "",

    "answerTime": "",

    "hangupTime": "",

    "recordUrl": ""

    }

    ],

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }


    1. 日程(会议)

      1. 新建日程


    接口URL:
    /calendar/create
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object 日程对象
    data.title String 日程标题,必填。
    data.location String 日程地点,选填。
    data.summary String 日程摘要,选填。
    data.owner String 日程主持人用户名,必填。
    data.members Array 内部参会人用户名称数组,选填。
    data.members[0] String 内部参会人用户名,选填。
    data.externalMembers Array 外部参会人用户名称数组,选填。
    data.externalMembers[0] String 外部参会人用户名,选填。
    data.startTime Integer 日程起始时间,Unix时间戳,必填 (单位:秒)
    data.duration Integer 日程时长,单位“分钟”,必填。
    data.priority Integer 优先级, 0:不重要,1:重要; 选填,默认:0。
    data.enableGNet Bool 是否启用“全时云会议”, 选填,默认:false。
    data.callBackUrl String 回调地址(POST接口,接受JSON类型请求参数,响应为http 200成功状态码)
    data.allowBox Integer 允许全时盒子入会,0(默认):不允许,1:允许
    data. liveOpenFlag Integer 是否开启直播(1:开启 0:不开启)
    data. livePassword String 直播密码(6位数字与英文组成,开启直播时传入,可不传)

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "title": "会议主题",

    "location": "第一会议室",

    "summary": "会议摘要",

    "owner": "test@quanshi.com",

    "members": [

    "test1@quanshi.com",

    "test2@quanshi.com"

    ],

    "externalMembers": [

    "1234123@qq.com",

    "test@sina.com"

    ],

    "startTime": 1479200617,

    "duration": 20,

    "priority": 1,

    "enableGNet": true,

    "callBackUrl":"http://call.back.url.com/aa",

    "allowBox":1

    "liveOpenFlag":1

    "livePassword":"xxxxxxxxx"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Object 日程信息
    data.owner String 日程主持人用户名
    data.calendarId Integer 主叫方用户名。
    data.groupId Integer 日程讨论组Id
    data. liveOpenFlag Integer 是否开启直播
    data. livePassword String 直播密码

    示例

    {

    "errorCode": 0,

    "data": {

    "owner": "test@quanshi.com",

    "calendarId": 100,

    "groupId": 200,

    "liveOpenFlag":1

    "livePassword":"xxxxxxxxx"

    },

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 编辑日程


    接口URL:
    /calendar/update
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object 日程对象
    data.calendarId Integer 日程Id
    data.title String 日程标题,必填。
    data.location String 日程地点,选填。
    data.summary String 日程摘要,选填。
    data.owner String 日程主持人用户名,必填。
    data.members Array 内部参会人用户名称数组,选填。
    data.members[0] String 内部参会人用户名,选填。
    data.externalMembers Array 外部参会人用户名称数组,选填。
    data.externalMembers[0] String 外部参会人用户名,选填。
    data.startTime Integer 日程起始时间,Unix时间戳,必填
    data.duration Integer 日程时长,单位“分钟”,必填。
    data.priority Integer 优先级, 0:不重要,1:重要; 选填,默认:0。
    data.enableGNet Bool 是否启用“全时云会议”, 选填,默认:false。
    data.allowBox Integer 允许全时盒子入会,0(默认):不允许,1:允许
    data. liveOpenFlag Integer 是否开启直播
    data. livePassword String 直播密码

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "calendarId": 100,

    "title": "会议主题",

    "location": "第一会议室",

    "summary": "会议摘要",

    "owner": "test@quanshi.com",

    "members": [

    "test1@quanshi.com",

    "test2@quanshi.com"

    ],

    "externalMembers": [

    "1234123@qq.com",

    "test@sina.com"

    ],

    "startTime": 1479200617,

    "duration": 20,

    "priority": 1,

    "enableGNet": true,

    "allowBox":1

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Object 日程信息
    data.owner String 日程主持人用户名
    data.calendarId Integer 主叫方用户名。
    data.groupId Integer 日程讨论组Id

    示例

    {

    "errorCode": 0,

    "data": {

    "owner": "test@quanshi.com",

    "calendarId": 100,

    "groupId": 200

    },

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 取消日程


    接口URL:
    /calendar/cancel
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object
    data.owner String 日程主持人用户名, 必填。
    data.calendarId Integer 日程Id, 必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "calendarId": 100,

    "owner": "test@quanshi.com"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Null

    示例

    {

    "errorCode": 0,

    "data": null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 获取日程细节


    接口URL:
    /calendar/get
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object
    data.calendarId Integer 日程Id,必填。

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "calendarId": 100

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Object 日程对象
    data.calendarId Integer 日程Id
    data.status Integer 日程状态, 0:取消,1:正常。
    data.title String 日程标题,必填。
    data.location String 日程地点,选填。
    data.summary String 日程摘要,选填。
    data.owner String 日程主持人用户名,必填。
    data.members Array 内部参会人信息数组,选填。
    data.members[0].
    loginname
    String 内部参会人用户名。
    data.members[0].status Integer 内部参会人状态; 1: 等待, 2: 删除, 3:接受,4:拒绝。
    data.externalMembers Array 外部参会人信息数组,选填。
    data.externalMembers[0].email String 外部参会人邮件地址,选填。
    data.externalMembers[0].status Integer 外部参会人状态; 1: 等待, 2: 删除, 3:接受,4:拒绝。
    data.duration Integer 日程时长,单位“分钟”,必填。
    data.priority Integer 优先级, 0:不重要,1:重要; 选填,默认:0。
    data.enableGNet Bool 是否启用“全时云会议”, 选填,默认:false。

    示例

    {

    "errorCode": 0,

    "data": {

    "calendarId": 100,

    "title": "会议主题",

    "location": "第一会议室",

    "summary": "会议摘要",

    "owner": "test@quanshi.com",

    "members": [

    {

    "loginname": "test1@quanshi.com",

    "status": 1

    },

    {

    "loginname": "test2@quanshi.com",

    "status": 2

    }

    ],

    "externalMembers": [

    {

    "email": "123123@quanshi.com",

    "status": 1

    },

    {

    "email": "12312@qq.com",

    "status": 1

    }

    ],

    "startTime": 1479200617,

    "duration": 20,

    "priority": 1,

    "enableGNet": true

    },

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 列出日程


    接口URL:
    /calendar/list
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object
    data.startTime Integer 起始时间,Unix时间戳,必填。
    data.endTime Integer 结束时间,Unix时间戳,必填。
    data.loginname String 查询指定用户的日程,选填,默认查询所有日程。
    data.direction Integer 查询方向, 0: 从开始时间向后查询,1:从结束时间向前查询; 默认: 0; 最大列出会议数量100.

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "startTime": 1472659200,

    "endTime": 1475164800,

    "loginname": "test@quanshi.com",

    "direction": 0

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Array 日程对象数组
    data[0].calendarId Integer 日程Id
    data[0].status Integer 日程状态, 0:取消,1:正常。
    data[0].title String 日程标题,必填。
    data[0].location String 日程地点,选填。
    data[0].summary String 日程摘要,选填。
    data[0].owner String 日程主持人用户名,必填。
    data[0].members Array 内部参会人信息数组,选填。
    data[0].members[0].
    loginname
    String 内部参会人用户名。
    data[0].members[0].status Integer 内部参会人状态; 1: 等待, 2: 删除, 3:接受,4:拒绝。
    data[0].externalMembers Array 外部参会人信息数组,选填。
    data[0].externalMembers[0].email String 外部参会人邮件地址,选填。
    data[0].externalMembers[0].status Integer 外部参会人状态; 1: 等待, 2: 删除, 3:接受,4:拒绝。
    data[0].duration Integer 日程时长,单位“分钟”,必填。
    data[0].priority Integer 优先级, 0:不重要,1:重要; 选填,默认:0。
    data[0].enableGNet Bool 是否启用“全时云会议”, 选填,默认:false。

    示例

    {

    "errorCode": 0,

    "data": [

    {

    "calendarId": 100,

    "title": "会议主题",

    "location": "第一会议室",

    "summary": "会议摘要",

    "owner": "test@quanshi.com",

    "members": [

    {

    "loginname": "test1@quanshi.com",

    "status": 1

    },

    {

    "loginname": "test2@quanshi.com",

    "status": 2

    }

    ],

    "externalMembers": [

    {

    "email": "123123@quanshi.com",

    "status": 1

    },

    {

    "email": "12312@qq.com",

    "status": 1

    }

    ],

    "startTime": 1479200617,

    "duration": 20,

    "priority": 1,

    "enableGNet": true

    }

    ],

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 获取入会链接


    接口URL:
    /calendar/confernce/link/get
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object
    data.calendarId Integer 日程Id;必填
    data.attendeeUser String

    参会人用户名(loginName) ;选填

    备注:

    1可以为空;

    2不为空的话必须能够通过attendeeUser找到其profile。

    3 attendeeUser有值时,身份是根据profile获取,参数中role无效。

    data.attendeeName String

    自定义名称 ;选填

    备注:

    1会中显示的名称。如果不为空则有最高显示优先级。

    2 attendeeUser为空时必填。

    data.role Integer

    身份区分 ;选填

    1主持人 0参与人

    备注:

    1当attendeeUser为空时必填;

    2不填默认参会人身份

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "calendarId": 521121,

    "attendeeUser": "xxxx",

    "attendeeName": "new name",

    "role": "1"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Object
    data.link String 入会链接

    示例:

    {

    "errorCode": 0,

    "data":

    {

    "link": "https://max.qushi.com/www/tools/loadilient?u=XXX"

    },

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 外呼参会人


    接口URL:
    /calendar/conference/attendee/dailout
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object
    data.calendarId Integer 日程Id;必填
    data.attendees Array 需要召集的参会人列表;必填
    data.attendees[0].phone String

    外呼号码,规则如下:必填

    ##1国际标准写法:

    +861059933596,

    分机+861059933596-3666

    ##2 直接的外呼号码:

    如59933596,01059933596,13810366687,013810366687

    ##3 ACM发送给应用的号码格式:

    (86)1059933596,分机(86)1059933596-3666

    ##4 分机号码可以用-或者w,,,分开,逗号的个数不限,如59933636-3596,599333636w,,,3596

    data.attendees[0].role Integer

    身份区分 ;必填

    1主持人 0参与人

    data.timeoutMinute Integer 外呼通知时效,单位:分钟,不传值默认两天;可选

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "calendarId": 521121,

    "attendees": [

    {

    "phone": "051212345678",

    "role": 1

    },

    {

    "phone": "13812341234",

    "role": 0

    }

    ],

    "timeoutMinute":2880

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Object
    data.result Array
    data.result[0].phone String 外呼号码
    data.result[0].attendeeId String ACM外呼唯一标记,挂断电话时需要使用该数据

    示例:

    {

    "errorCode": 0,

    "data": {

    "result": [

    {

    "phone": "(86)0512-12345678",

    "attendeeId": "8525285"

    },

    {

    "phone": "(86)13852525263",

    "attendeeId": "5685412"

    }

    ]

    },

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 挂断参会人


    接口URL:
    /calendar/conference/attendee/hangup
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object
    data.calendarId Integer 日程Id;必填
    data.attendeeIds Array
    data.attendeeIds[0] String

    ACM外呼唯一标记;必填

    //使用外呼成功时返回的attendeeId

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "calendarId": 4145,

    "attendeeIds": [

    "45788",

    "86952",

    "8632"

    ]

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Object 调用成功时,返回的data字段为null

    示例:

    {

    "errorCode": 0,

    "data":

    {

    null

    },

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 获取会议录制播放地址


    接口URL:
    /calendar/conference/replay/get
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object
    data.calendarId Integer 日程Id;必填

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "calendarId": 4145

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data String 会议录制播放地址

    示例:

    {

    "errorCode": 0,

    "data": {

    "https://xxxxxxxxxxxxxxxxxxx"

    },

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    备注:

    会议结束并且会议期间需要录制,待录制服务器发出录制完成通知后才能得到录制播放地址。

    1. 获取会议录制下载地址


    接口URL:
    /calendar/conference/record/get
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object
    data.calendarId Integer 日程Id;必填

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "calendarId": 96525

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data String 下载链接

    示例:

    {

    "errorCode": 0,

    "data": {

    "https://xxxxxxxxxxxx"

    },

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    备注:

    会议结束并且会议期间需要录制,待录制服务器发出录制完成通知后才能得到录制下载地址。

    1. 日程变化通知


    接口说明:
    调用ucopenapi/calendar/create 创建日程接口,传入了callBackUrl参数;当日程发生以下变化时,会调用callBackUrl参数的地址,并传入以下请求参数,以此来通知客户服务器;接口Method需为POST,接受请求参数为:Json类型,接收到请求后请响应http 200成功状态码
    请求参数
    type String

    “calendar”:日程创建/更新/取消

    “record”: 会议录制

    “report”: 会议报告

    “entermeeting”: 参会者进入会议

    “leavemeeting”: 参会者退出会议

    “dialout”:发起外呼

    data Object 回调请求参数
    示例:

    日程创建/更新/取消

    {

    "type" : "calendar ",

    "date" : {

    "id" : "142204",

    "title" : "%E5%85%BC%E5%AE%B9%E6%B5%8B%E8%AF%95Foxmail071201",

    "summary" : "%E6%99%AE%E9%80%9A%E4%BC%9A%E8%AE%AE",

    "description" : "",

    "dtstart" : 1499844600,

    "dtend" : 1499848200,

    "location" : "",

    "status" : "CONFIRMED",

    "siteId" : 76458,

    "hostId" : "63712166",

    "hostLoginName" : "admin1@ucb_me.quanshi.com",

    "importance" : 0,

    "isGnet" : 1,

    "attendees" : [{

    "id" : "63712167",

    "joinUrl" : "http://mtest.qsh1.cn/k/k1kldq",

    "loginname" : "tb_me1@qs.com"

    }, {

    "id" : "63712168",

    "joinUrl" : "http://mtest.qsh1.cn/k/6nbpu9",

    "loginname" : "tb_me1@qs.com"

    }

    ],

    "externalAttendees" : [{

    "id" : "jing.pu@quanshi.com",

    "joinUrl" : "http://mtest.qsh1.cn/k/xg0yv2"

    }

    ],

    "conferenceId" : "2016874",

    "hostPassword" : "201501000003167702",

    "attendeePassword" : "201501000003167703",

    "attendeeJoinUrl" : "https://meetnow.quanshi.com/ucb_meetingd_0/j/dahnqt",

    "hostJoinUrl" : "https://meetnow.quanshi.com/ucb_meetingd_0/j/yapdje",

    "room" : [{

    "roomId" : 932,

    "roomName" : "\"\\u84b2\\u9759\\u7684\\u4f1a\\u8bae\\u5ba41\"",

    "roomNote" : "",

    "roomStatus" : 1

    }

    ],

    "equip" : [{

    "equipId" : 225,

    "equipName" : "\"\\u84b2\\u9759\\u7684\\u8bbe\\u59073\"",

    "equipNote" : "",

    "equipStatus" : 1

    }

    ]

    }

    }

    会议录制

    {

    "type" : "record",

    "date" : {

    "confId":"xxx",

    "eventId":xxx,

    "videoURL":"xxx",

    "thumbnail":"xxx",

    "operatorId":123,

    "videoLength":213,

    "videoSize":312

    }

    }

    会议报告

    {

    "type" : "report",

    "date" : {

    "confId":"xxx",

    "eventId":xxx,

    "reportName":"xxx",

    "downloadUrl":"xxx"

    }

    }

    参会者进入会议

    {

    "type" : "entermeeting",

    "date" : {

    "confId":"xxx",

    "eventId":xxx,

    "billingCode":"xxx",

    "userId":xxx,

    "loginName":"xxx",

    "attendeeJoinUrl" : "https://meetnow.quanshi.com/ucb_meetingd_0/j/dahnqt",

    "hostJoinUrl" : "https://meetnow.quanshi.com/ucb_meetingd_0/j/yapdje",

    }

    }

    参会者退出会议

    {

    "type" : "leavemeeting",

    "date" : {

    "confId":"xxx",

    "eventId":xxx,

    "billingCode":"xxx",

    "userId":xxx,

    "loginName":"xxx",

    "attendeeJoinUrl" : "https://meetnow.quanshi.com/ucb_meetingd_0/j/dahnqt",

    "hostJoinUrl" : "https://meetnow.quanshi.com/ucb_meetingd_0/j/yapdje",

    }

    }

    外呼时通知

    {

    "type" : "openmonitor",

    "date" : {

    "callSeq": "43433-gjfjgikko32r4r4",

    "partyId": "ewe4dg343rgrg",

    "ov": "2",

    "nv": "0",

    "dcr": "0",

    "calendarid": 324324,

    "billingCode": "43452",

    "phoneNumber": "15622253562"

    }

    }

    type=calendar 日程信息创建/更新/删除; 可选
    calendar.id Integer 日程Id可选
    calendar.title String 日程标题,可选。
    calendar.summary String 日程摘要,可选。
    calendar.description String 描述,可选
    calendar.dtstart Long 开始时间,可选
    calendar.dtend Long 结束时间,可选
    calendar.location String 日程地点,可选。
    calendar.status Integer 日程状态, 0:取消,1:正常。可选
    calendar.siteId Integer 站点ID,可选
    calendar.hostId String 主持人ID,可选
    calendar. hostLoginName String 主持人loginname,可选
    calendar.importance Integer 重要等级,可选
    calendar.isGnet Bool 是否启用“全时云会议”,可选,默认:false。
    calendar.attendees Array 参会者,可选
    calendar.attendees[0].id Integer 参会者ID,可选
    calendar.attendees[0].joinUrl String 参会者入会链接,可选,限制百人内会议
    calendar.attendees[0]. loginname Integer 参会者loginnane,可选
    calendar.externalAttendees Array 外部参会者,可选
    calendar.externalAttendees[0].id Integer 外部参会者ID,可选
    calendar.externalAttendees[0].joinUrl String 外部参会者入会链接,可选,限制百人内会议
    calendar.conferenceId String 会议ID,可选
    calendar.hostPassword String 主持人密码,可选
    calendar.attendeePassword String 参会人密码,可选
    calendar.attendeeJoinUrl String 参会人入会链接,可选
    calendar.hostJoinUrl String 主持人入会链接,可选
    calendar.room Array 会议室,可选 ##创建日程时该对象无效
    calendar.room[0].roomId Integer 会议室ID,可选
    calendar.room[0].roomName String 会议室名称,可选
    calendar.room[0].roomNote String 会议室备注,可选
    calendar.room[0].roomStatus Integer 会议室状态,可选
    calendar.equip 设备,可选 ##创建日程时该对象无效
    calendar.equip[0].equipId Integer 设备ID,可选
    calendar.equip[0].equipName String 设备名称,可选
    calendar.equipNote String 设备备注,可选
    calendar.equipStatus Integer 设备状态,可选
    type=record 会议录制; 可选
    record.confId String 会议ID,可选
    record.eventId Integer 日程ID,可选
    record.videoURL String 录制视频地址,可选
    record.thumbnail String 缩略图,可选
    record.operatorId Integer 操作ID,可选
    record.videoLength Integer 视频长度,可选
    record.videoSize Integer 视频大小,可选
    type=report 会议报告; 可选
    report.confId String 会议ID,可选
    report.eventId Integer 日程ID,可选
    report.reportName String 报告名称,可选
    report.downloadUrl String 下载地址,可选
    type=entermeeting 参会者进入会议; 可选
    entermeeting.confId String 会议ID,可选
    entermeeting.eventId Integer 日程ID,可选
    entermeeting.billingCode String 会议billingCode,可选
    entermeeting.userId String 参会人用户ID,可选
    entermeeting.loginName String 参会人用户loginName,可选
    entermeeting.attendeeJoinUrl String 参会人入会链接,可选
    entermeeting.hostJoinUrl String 主持人入会链接,可选
    type=leavemeeting 参会者退出会议; 可选
    leavemeeting.confId String 会议ID,可选
    leavemeeting.eventId Integer 日程ID,可选
    leavemeeting.billingCode String 会议billingCode,可选
    leavemeeting.userId String 参会人用户ID,可选
    leavemeeting.loginName String 参会人用户loginName,可选
    leavemeeting.attendeeJoinUrl String 参会人入会链接,可选
    leavemeeting.hostJoinUrl String 主持人入会链接,可选
    type=openmonitor 外呼时ACM通知,可选
    openmonitor.callSeq String Openmonitor外呼业务sequence,可选
    openmonitor.partyId String ACM外呼唯一标识,可选
    openmonitor.ov String 外呼前旧状态,可选
    openmonitor.nv String 外呼后新状态,可选
    openmonitor.dcr String 断线原因,可选
    openmonitor.calendarid Integer 所属日程ID,可选
    openmonitor.billingCode String 会议billingCode,可选
    openmonitor.phoneNumber String 电话号码,可选
    1. 获取直播流地址


    接口URL:
    /calendar/live/url
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object
    data. eventId Integer 日程Id;必填
    data. pwd String 直播密码;选填

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "eventId":216592,

    "pwd":"111111

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Object
    data.status Integer 蜜蜂通道状态, 0:已创建,1:直播开始,2:直播结束, 3合并中,4:会议结束点播中,5:会议结束无点播,6:已关闭
    data.httpPullUrl String 只有在status为1或4才返回
    data.hlsPullUrl String 只有在status为1或4才返回
    data.rtmpPullUrl String 只有在status为1或4才返回

    示例:

    {

    "errorCode": 0,

    "data": {

    "status": 1,

    "httpPullUrl": "xxxxxxxxxxx",

    "hlsPullUrl": "xxxxxxxxxxx",

    "rtmpPullUrl": "xxxxxxxxxxx"

    },

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    备注:

    会议结束并且会议期间需要录制,待录制服务器发出录制完成通知后才能得到录制下载地址。

    1. 设置是否允许移动端入会


    接口URL:
    /calendar/confsettingupdate
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object
    data. allow_mobile Integer 是否允许移动端入会 0:不允许 1:允许
    data. userId String 用户id ,用来修改该用户的会议属性

    示例:

    {

    "username": "admin@quanshi.com",

    "token": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",

    "data": {

    "allow_mobile":0,

    "userId":81325817

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Object Null,通过errorCode来判断是否成功

    示例:

    {

    "errorCode": 0,

    "data":null

    "errorMessage": " Successful",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    1. 广播(BBS)

      1. 新建公告


    接口URL:
    /bbs/bbs/create
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object 日程对象
    data.owner String 公告发布人, loginName, 必填。
    data.boardId Integer 公告板ID,选填,boardId与groupId必填一个。
    data.groupId Integer 讨论组ID,选填,boardId与groupId必填一个。
    data.title String 公告标题,必填。
    data.content String 公告内容,选填。
    data.desc String 公告摘要,选填。
    data.link String 公告详情URL, 选填。
    data.attachments Array 公告封面(附件)数组, 选填。
    data.attachments [0].url String 公告封面图片URL地址,选填。
    data.attachments [0].fid String 公告封面图片文件ID,上传文件的ID,选填。
    data.attachments [0].size Integer 公告封面图片文件大小,单位字节,选填。
    data.isBrowser Integer 是否使用默认浏览器打开link页面, 0:不使用,1: 使用; 默认:0, 选填。
    data.isAuth Integer 打开link链接是否携带统一认证信息, 0: 不携带,1: 携带, 默认:1, 选填。

    示例:

    {

    "username": "admin@ucc20151104.quanshi.com",

    "token": "xxxxxx-xxxxxxxxxx-xxxxxxx-xxxxxxxx",

    "data": {

    "owner": "testc_lzhou@quanshi.com",

    "groupId":50035099,

    "title": "测试公告标题",

    "content": "公告内容",

    "desc":"公告描述",

    "link":"http://www.baidu.com",

    "attachments":[{ "url":"https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png"

    }]

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Object 公告信息
    data.id String 公告ID

    示例

    {

    "errorCode": 0,

    "data": {

    "id": 50001960

    },

    "errorMessage": "Successful!",

    "requestId": "ubuntu-23097121-00d7-40c6-8761-b0b3865b550d"

    }

    1. 土豆任务(Task)

      1. 新建清单


    接口URL:
    /task/mf/create
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object 任务清单对象
    data.owner String 清单所有人,蜜蜂用户loginName,必填。
    data.name String 清单名称, 必填

    示例:

    {

    "username": "admin@ucc20151104.quanshi.com",

    "token": "xxxxxx-xxxxxxxxxx-xxxxxxx-xxxxxxxx",

    "data": {

    "owner": "testc_lzhou@quanshi.com",

    "name": "任务清单名称",

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Object 清单信息
    data.id Integer 清单ID

    示例

    {

    "errorCode": 0,

    "data": {

    "id": 50001960

    },

    "errorMessage": "Successful!",

    "requestId": "ubuntu-23097121-00d7-40c6-8761-b0b3865b550d"

    }

    1. 新建任务


    接口URL:
    /task/task/create
    请求参数
    username String 登录用户名, 同“获取凭据”接口中的用户名;必填。
    token String 登录凭据,由“获取凭据”接口返回;必填。
    data Object 日程对象
    data.owner String 任务所有人,蜜蜂用户loginName,必填。
    data.name String 任务名称, 必填
    data.mfId Integer 任务所属清单Id,必填。
    data.executor String 任务执行人,蜜蜂用户loginName,选填。
    data.endTime Long 任务截至时间, Unix时间戳,选填。
    data.isStar Integer 是否星标任务,选填。0:否,1:是; 默认:0.
    data.isComplete Integer 任务是否已经结束,选填。0:否,1:是; 默认:0.

    示例:

    {

    "username":"admin@ucadminc.quanhshi.com",

    "token":"36ea2f21-4cb7-4c5d-b034-13e4b0f1ce40",

    "data":{

    "owner":"testc_camel70@quanshi.com",

    "name": "测试ta22sk111",

    "mfId":50002138,

    "executor":"testc_camel70@quanshi.com",

    "isStar":1

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Object 任务信息
    data.id Integer 任务ID

    示例

    {

    "errorCode": 0,

    "data": {

    "id": 50001960

    },

    "errorMessage": "Successful!",

    "requestId": "ubuntu-23097121-00d7-40c6-8761-b0b3865b550d"

    }


    1. OA消息

      1. 简介

    蜜蜂的普通应用消息只能用来显示通知信息,缺乏消息发送者、接受者间的交互手段,这里OA(办公自动化)消息就是为了解决这个问题而出现,其基本需求如下:

    1. OA消息支持简单的交互功能,有OA流程处理按钮(或链接)。

    2. OA消息有状态,客户应用服务器调用OpenAPI可以设置OA消息的状态;客户端依消息的不同状态显示不同的内容。

    3. OA消息文本内容支持富文本;可以定制显示文本的:字号、颜色、样式( 加粗、斜体)

    OA消息显示示例图:

    1. 总体构架

    OA消息工作流程

    如图所示,OA服务器(客户应用服务器)可以在OA消息的流通中,根据消息格式规则构建消息内容,推送互动流程的进行。

    OA消息根据不同状态显示不同的内容; 当处于未处理状态时,有供交互点击处理的按钮; 当处于已处理状态时,显示OA消息的状态和内容。

    OA消息的操作按钮的名称和行为由OA消息定义,OA消息按钮的点击触发后台发起一次HTTP请求, HTTP请求的URL由OA消息定义。

    OA服务器调用API(OpenAPI)接口修改OA消息的状态,蜜蜂服务器通知客户端(发起方、处理方)更新指定OA消息的显示。

    1. OA消息状态

    OA消息状态是一个0-20的数值。

    OA消息状态分为两类:1-10是已处理状态; 11-20未处理状态; 0:保留。

    已处理状态:客户端每次显示OA消息时,不需要再次向蜜蜂服务器查询消息状态。

    未处理状态:客户端每次显示OA消息时,都必须向蜜蜂服务器查询此OA消息的当前状态。

    OA消息状态默认是0。

    1. OA消息定义

    OA消息内容组成

    如上图,描述了一个OA消息的组成结构:

    每个消息由消息标题与若干个消息元素构成, 消息元素最多10个。消息标题的内容有OA消息给出,是一个固定的元素,每个OA消息必须有。

    每个元素显示时独占消息的一行, 元素与消息显示控件同宽。高度由消息内容定义,针对消息内容自适应。

    每个消息元素可以指定一个状态值,只有当消息的当前状态与元素的状态值相等时,才会显示此消息元素。

    OA消息的参数定义请看“OpenAPI参考/应用消息”节, 有发送OA消息的具体参数参考。

    其中Element字段是一个数组, 每个数组的成员是一个OA消息元素的对象; 不同的消息元素,对象参数的定义是不同的;每个元素都有字段“type”, “status”, 分别定义元素的类型、显示状态。

    1. 文本元素

      1. Json对象定义

    名称 类型 必填 作用
    type String 指定元素类型,固定值:“text”
    status Integer 当前元素的显示状态
    content String 内容是纯文本时, UI直接以默认的颜色、字号显示文本内容,不加粗、斜体.
    Object 富文本对象, 描述的是一段相同格式富文本
    Array 富文本对象数组, 描述若干段不同格式的富文本; 每个数组成员描述一段相同格式的富文本。
    name String 附加数据对象名; 如果附加数据中有类型为Text,且名称为此name字段的值, 则附加数据中对象替消息中的Content字段内容。

    富文本对象

    名称 类型 必填 作用
    size Integer 定义显示文字的大小,共有3(大),2(中),1(小)三种字号,默认值:2
    color String 字符串, 颜色值定义格式“#<RGB颜色的十六进制值>”, 如:黑色 #000000, 红色 #FF0000; 默认是黑色。
    bold Integer

    指定是否加粗显示文字;

    候选值:1(加粗),0(不加粗),默认值:0。

    urlauth Integer 整形,指定打开本对象url字段的链接时,是否附上统一认证信息。
    url String 字符串,定义一个URL连接;当此字段存在且不为空时,忽略color的用户定义值,color显示使用默认颜色
    text String 字符串, UTF-8格式的文本内容。
    1. 示例:

    {

    “username”: “username”,

    “token”: “xxxxxxxxxxxx-xxxxxxxxxxxxxx”,

    “data”: {

    “title” : “hello”,

    “elements”: [{

    “type”: “text”,

    “status”: 1,

    “content” :[{

    “text”: “hello, world”,

    “color”: “#ff0000”

    }, {

    “text”: “www.baidu.com”,

    “url”: “http://www.baidu.com”

    }]

    }]

    }

    }

    1. 图片元素

      1. Json对象定义

    名称 类型 必填 作用
    type String 指定元素类型,固定值:“image”
    status Integer 当前元素的显示状态;
    imageType String 字符串, 指定imageId值的类型,候选值:fileid,url。默认url。
    imageId String

    指定图片文件的地址。

    当imageType是fileid时, imageid字段的内容是一个Image文件在FS中的ID。如:“imageid”: “123123kjsdkfjsdkfsdlfsdfksdfksdfjsdfl”,当imagetype是url时,imageid字段的内容是一个图片文件的URL, 如:“imageid”: “http://www.baidu.com/icon.png”。

    name String 附加数据对象名,如果附加数据中有类型为image,且名称为此name字段的值, 则附加数据中对象替消息中的imageId字段内容。
    1. 示例:

    {

    “username”: “username”,

    “token”: “xxxxxxxxxxxx-xxxxxxxxxxxxxx”,

    “data”: {

    “title” : “hello”,

    “elements”: [{

    “type”: “image”,

    “status”: 1,

    “imageId” : “http://www.baidu.com/sample.png”

    }]

    }

    }

    1. Action元素

      1. Json对象定义

    名称 类型 必填 作用
    type String 指定元素类型,固定值:“action”
    status Integer 当前元素的显示状态;
    buttons Array Button对象数组;每个对象描述一个按钮。
    buttons[0].title String 按钮标题
    buttons[0].url String 按钮被Click时,触发的URL链接。
    buttons[0].urlauth String 数值,打开URL时是否要带上认证信息,1:带,0:不带;默认0.
    buttons[0]
    .needSuggestion
    Integer 1:需要意见, 0:不需要意见; 默认不需要。
    buttons[0]
    .noEmptySuggestion
    Integer 1: 意见内容不能为空, 0: 意见内容可为空:默认0.
    buttons[0]
    .sggestionTitle
    String 审核意见”输入框图的标题,PC端有效。
    buttons[0]
    .suggestionName
    String 审核意见对象名
    buttons[0]
    .needSignature
    Integer 1:需要手写签名, 0:不需要手写签名; 默认不需要。
    buttons[0]
    signatureName
    String 手写签名对象名
    1. 示例

    {

    “username”: “username”,

    “token”: “xxxxxxxxxxxx-xxxxxxxxxxxxxx”,

    “data”: {

    “title” : “hello”,

    “elements”: [{

    “type”: “action”,

    “status”: 1,

    “buttons” : [{

    “title”: “OK”,

    “url”: “http://www.oa.com/post?action=ok”

    }, {

    “title”: “Cancel”,

    “url”: “http://www.oa.com/post?action=cancel”

    }]

    }]

    }

    }

    1. 审核意见

    通过在oa消息的action消息的button元素中指定处理该OA消息时是否需要审核意见及相关信息,然后在客户端根据needSuggestion、noEmptySuggestion、sggestionTitle、suggestionName四个元素,在oa消息被处理时由客户端判断是否需要“审核意见”才能完成action事件。

    如果Action元素的Button对象设定了需要审核意见的属性,在点击按钮时,会弹出类似下面的界面,用户可以填写审核意见:

    1. 手写签名

    用户在OA消息的Action元素中的按钮被点击时,是否需要填写一个手写签名; 手写签名最后会以一个图片的形式提交给消息中指定的URL。

    1. OA消息显示

    OA消息的每个内容元素都有对应的消息状态,只有当前的消息状态与消息元素的预定义状态相等时,才显示此消息元素。

    当OA消息处于待处理状态时,每次显示消息之前必须向蜜蜂服务器查询此OA消息的状态; 如果元素没有定义status值,则默认为null; 此元素在任何状态下都显示。

    1. OA消息标题栏

    OA消息标题栏不是在Element字段中定义的, 有单独的title、color、titleElements字段定义。

    title: 默认状态下标题栏的内容;

    color: 默认状态下标题栏的颜色;可选颜色有:“red”(赤红), “yellow”(蜜蜂黄), “green”(柳绿), “gray”(铅灰), “blue”(主题蓝), “lightblue”(薄蓝); “white”(白色),默认值: 主题蓝。

    titleStyle:指定标题栏的风格,可选值有:default(默认), simple(简单)。

    默认风格标题栏的OA消息样图:

    简单风格标题栏的OA消息样图:

    1. 修改标题栏内容

    titleElements: 不同状态下标题栏的内容与颜色, 是一个对象数组, 格式如下:

    "titleElements":[{

    "stauts": 15

    "title": "asdfasdrqwerqwer",

    "color": "blue",

    },

    {

    "stauts":18

    "title": "asdfasdrqwerqwer",

    "color": "red"

    }].

    此JSON数组对象中status,title,color字段的定义与OA消息的title,color,status定义相同。

    1. 改变消息显示内容

      1. 修改状态

    修改OA消息的状态,则OA消息中与消息状态不一致的元素不会显示, 与消息新状态一致的元素会显示; 不同状态显示不同的元素,以达到修改消息显示内容的目的。

    标题栏的显示也是根据不同状态切换。

    1. 修改附加数据

    调用OA消息statuschange接口时可以修改消息的附加数据,以达到修改消息元素内容的目的。

    1. OA消息附加数据

      1. 概念

    附加数据是指调用OA消息statuschange接口时, 传递给externalData字段的参数。

    1. 作用

    由客户的业务服务器(如OA服务器等)传递给蜜蜂API服务器, 修改现有OA消息指定元素的显示内容; 请求看“Text”、“Image”元素的name字段定义。

    1. 格式

    附加数据的是以JSON格式定义的一个对象;

    {

    “text”:{

    “textName1”: ”NewHello”

    },

    “image”:{

    }

    }

    有两个子对象text, image; 分别对应文本元素、图片元素的定义; 文本元素与图片元素对象的字段名对应OA消息中相同类型,且name字段名称与此字段名对应的元素。


    1. 微应用开发

      1. 网页统一认证

    在蜜蜂客户端中打开应用或者在应用消息中打开网址, 蜜蜂客户端向服务器发起请求时,会URL中附加两个变量: uc_account, uc_token。

    当客户的WEB服务器接收到此请求时,将以上附加的两个变量作为“统一认证/登录”接口的参数调用“统一认证/登录”接口, 蜜蜂的API服务器返回 身份校验 的结果以及当前请求帐号/身份的详细信息。

    构架如图:

    1. API消息URL链接

      1. 链接URL

    OA消息文本元素的内容JSON描述部分可以赋值一个URL, 显示的时候就像网页的URL连接;点击此链接时, PC客户端直接在浏览器中打开URL,移动客户端在内嵌的WebView中打开此URL。 除URL外,还可以指定一个附加属性;当附加属性设置“urlauth”为1时,则打开URL的规则与打开应用中心的应用是一样的,会带上统一认证的信息, 默认”urlauth”为0.

    1. 详情URL

    每个OA消息或者其它类型的消息有一个对应的详情URL字段,当在客户端界面点击详情的区域(由产品定义)时,PC客户端直接在浏览器中打开URL,移动客户端在内嵌的WebView中打开此URL。 由独立的字段detailAuth定义是否在打开时带上认证信息。

    1. Action URL

    OA 消息Action元素按钮的URL, 不使用浏览器或者WebView打开;在后台发起一个HTTP POST 方法请求。所有Action按钮打开URL方式还有一个附加属性;当附加属性设置“urlauth”为1时,则打开URL的规则与打开应用中心的应用是一样的,会带上统一认证的信息,默认”urlauth”为0.

    发起ActionURL请求时,会带有一个HTTP请求的Body, 格式:application/json; 格式如下:

    {

    “text”:{
    “opinion1”:”value1” // opinion1:本次意见对象名称, 由OA消息的

    Action按钮的suggestionName属性定义,value1:意见内容

    },

    “image”: {

    “opinion2”:”fileId” // opinion2: 本次审核的手写签名对象名称,由OA

    消息的Action按钮的signatureName属性定义,fileId:手写签名的图片文件ID。

    }

    }

    Action URL请求的答复也有固定的格式, 客户的服务器必须以下的格式返回给蜜蜂客户的:

    {

    “externalData”:{

    “text”:{

    “opinion1”:”value1”,//opinion1:本次意见名,value1:意见内容

    }

    },

    “status”: <newstatus>

    }

    status: OA消息新的消息状态, 客户端要以此消息状态刷新消息的显示;

    externalData: 定义域oa/statuschange接口保持一致。

    1. JSAPI调用指南

    1. 在应用网页中引入蜜蜂JavaScript API脚步文件, 文件URL地址是:/js/bee-1.0.0.js; 如:

    <html>

    <head>

    …..

    </head>

    <script language=”javascript”src=/js/
    bee-1.0.0.js
    >

    </script>

    <body>

    ……

    </body>

    </html>

    1. 在bee.onReady事件中调用bee.config接口初始化蜜蜂JSAPI模块;config接口的参数请看JSAPI参考。

    2. 每个JSAPI接口的参数是一个对象, 对象内有两个固定的参数:success, fail; 这两个参数分别对应成功、失败的回调函数; 回调函数的参数是一个对象, 由每个接口定义内容。

      1. 网页JSAPI授权

        1. 描述

    蜜蜂移动端虽然对网页开发者开放了一些能力,但出于安全考虑,要对调用功能进行验证。本节就是说明如何安全调用蜜蜂开放的能力。

    1. 步骤

    1. 应用服务器调用OpenAPI接口ticket/getticket获取ticket(调用蜜蜂JSAPI功能的临时票据)。

    2. 应用服务器获得ticket,对每一个要打开的网页,根据url、服务器时间timestamp、随机生成的16字节字符串randomStr生成签名字符串,将签名及url、timestamp、randomStr传递给要在webview中显示的网页; 网页加载完毕,调用JSAPI功能bee.config验证签名。

    3. bee.config验证通过,则该页面可以使用JSAPI开发能力,否则不允许使用。

      1. 签名算法

    ticket: 从openapi获取的ticket;

    url:当前网页URL;

    timestamp:客户端时间戳(s);

    ramdomStr:随机生成的16字节字符串;

    按顺序$ticket$url$timestamp$ramdomStr串联字符串,按sha1算法生成签名signature。

    $str = $ticket.$url.$timestamp.$ramdomStr;

    $signature = sha1($str);

    1. 待处理标记

      1. 描述

    蜜蜂客户每次显示应用列表时,会调用“应用查询接口”获取当前应用的待处理情况, 根据获取的待处理结果值,决定是否在应用图标上显示待处理标记。

    注意:应用有未读消息也会在微应用图标上显示待处理标记。

    1. 接口定义

    客户端以POST方法请求“应用查询接口“定义的URL, 并且携带统一认证信息; 接口定义如下:


    接口URL:
    <管理中心配置的应用查询接口URL>
    方法 POST
    请求参数(URL变量)
    uc_account String 统一认证的用户登录名
    uc_token String 统一认证的Token

    示例

    http://app.quanshi.com/getevent?uc_account=test@quanshi.com&uc_token=xxxxxxxxxxxx

    应用查询接口URL返回的数据格式必须是JSON; JSON对象定义如下:
    code Integer 结果标记, 0: 成功, 非0: 失败。
    data.eventCount Integer 应用待处理事件数量。

    示例

    {

    "data" : {

    "eventCount" : 1

    },

    "code" : 0

    }

    1. JSAPI参考

      1. 基础接口

        1. 配置JSAPI

    函数名称: bee.config( arg )
    请求参数
    arg.debug Boolean 必填 是否启用Debug模式,默认:false。
    arg.signature String 必填 认证签名值,请看“网页JSAPI授权”节。
    arg.timestamp String 必填 时间戳,请看“网页JSAPI授权”节。
    arg.randomStr String 必填 随机字符串,请看“网页JSAPI授权”节。
    success Function 选填 执行成功回调函数
    fail Function 选填 执行失败回调函数
    success回调函数参数对象定义
    (无)
    failure回调函数参数对象定义
    res.errorCode Integer 返回错误码
    示例

    bee.config({

    debug: true,

    signature: 'sdfdsfsdf',

    timestamp: '',

    randomStr: '',

    success: function() {

    },

    fail: function(res) {

    }

    });

    1. 接口检测

    函数名称: bee.checkJsApi( arg )
    请求参数
    arg.jsApiList Array 必填 待检查JSAPI接口方法名数组。
    success Function 选填 执行成功回调函数
    fail Function 选填 执行失败回调函数
    success回调函数参数对象定义
    res.checkResult Array 接口检测结果数组
    res.checkResult[0].<methondName> Boolean 接口方法是否支持。
    failure回调函数参数对象定义
    res.errorCode Integer 返回错误码
    示例

    bee.checkJsApi({

    jsApiList: ['chooseImage'],

    success: function(res) {

    // res.checkRsult = //{"checkResult":[{"chooseImage":true},{"chooseImagex":false}]}

    }

    fail: function(res) {

    var errorCode = res.errorCode;

    }

    });


    1. 图像接口

      1. 选择图片

    函数名称: bee.chooseImage( arg )
    请求参数
    arg.count Integer 选填 选择图片的数量,最小1, 最大9; 默认:5。
    arg.sizeType String 选填 返回图片的类型,可选值:“original”:原图,“compressed”:压缩图; 默认:压缩图。
    arg.sourceType Array 选填

    选择图片的来源, 可选值:["album"]: 从相册中选择图片, ["camera"]直接用相机拍摄图片;

    ["album", "camera"] : 弹出菜单让用户选择来源。

    success Function 选填 执行成功回调函数
    fail Function 选填 执行失败回调函数
    success回调函数参数对象定义
    res.localPaths Array 返回图片的本地路径数组
    res.sourceType String 表示图片的来源,后选值: "album", "camera" 定义参考入参定义。
    failure回调函数参数对象定义
    res.errorCode Integer 返回错误码
    示例

    bee.chooseImage({

    count: 1,

    sizeType: "original",

    success: function(res) {

    var localPaths = res.localPaths;

    //如:["/sdcard/xxxa.jpg", "/sdcard/yyyb.jpg"]

    }

    fail: function(res) {

    var errorCode = res.errorCode;

    }

    });

    1. 预览图片

    函数名称: bee.previewImage( arg )
    请求参数
    arg.currentIndex Integer 必填 当前显示图片的下标,从0开始。
    arg.urls Array 必填 图片URL地址数组。
    success Function 选填 执行成功回调函数
    fail Function 选填 执行失败回调函数
    success回调函数参数对象定义
    failure回调函数参数对象定义
    res.errorCode Integer 返回错误码
    示例

    bee.previewImage({

    currentIndex: 0,

    urls: ['http://img3.douban.com/view/photo/photo/public/p2152117150.jpg', 'http://img4.doubanio.com/view/photo/photo/public/p1353993776.jpg', 'http://img3.douban.com/view/photo/photo/public/p2152134700.jpg'],

    fail: function(res) {

    var errorCode = res.errorCode;

    }

    });

    1. 上传图片

    函数名称: bee.uploadImage( arg )
    请求参数
    arg.localPath String 必填 需要上传图片的本地路径,由chooseImage接口获得。
    success Function 选填 执行成功回调函数
    fail Function 选填 执行失败回调函数
    cancel Function 选填 取消上传回调函数
    success回调函数参数对象定义
    res.serverId String 返回上传成功后的文件ID。
    failure回调函数参数对象定义
    res.errorCode Integer 返回错误码
    cancel回调函数参数对象定义
    res.errorCode Integer 返回错误码
    示例

    bee.uploadImage({

    localPath: '',

    success: function(res) {

    var serverId = res.serverId;

    }

    fail: function(res) {

    // 失败后的回调函数

    var errorCode = res.errorCode;

    }

    cancel: function(res) {

    // 取消后的回调函数

    }

    });

    1. 下载图片

    函数名称: bee.downloadImage( arg )
    请求参数
    arg.serverId String 必填 需要下载的图片的文件ID,由uploadImage接口返回。
    success Function 选填 执行成功回调函数
    fail Function 选填 执行失败回调函数
    cancel Function 选填 取消下载回调函数
    success回调函数参数对象定义
    res.localPath String 返回文件下载成功后的本地路径。
    failure回调函数参数对象定义
    res.errorCode Integer 返回错误码
    cancel回调函数参数对象定义
    res.errorCode Integer 返回错误码
    示例

    bee.downloadImage({

    serverId: '',

    // 需要下载的图片的服务器端ID,由uploadImage接口获得

    success: function(res) {

    var localPath = res.localPath; // 返回图片下载后的本地路径

    },

    fail: function(res) {

    // 失败后的回调函数

    var errorCode = res.errorCode;

    }

    cancel: function(res) {

    // 取消后的回调函数

    }

    });


    1. 地理位置接口

      1. 获取地址坐标

    函数名称: bee.getLocation( arg )
    请求参数
    arg.type String 必填 获取地理坐标类型;可选:“wgs84”:GPS坐标。
    success Function 选填 执行成功回调函数
    fail Function 选填 执行失败回调函数
    success回调函数参数对象定义
    res.latitude FLOAT 纬度,浮点数; 范围:90 ~ -90。
    res.longitude FLOAT 经度,浮点数; 范围:180 ~ -180。
    res.speed Integer 速度, 单位:米/秒。
    res.accuracy 位置精度。
    failure回调函数参数对象定义
    res.errorCode Integer 返回错误码
    示例

    bee.getLocation({

    type: 'wgs84',

    // 默认为wgs84的gps坐标,其他类型的坐标后续增加

    success: function(res) {

    var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90

    var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。

    var speed = res.speed; // 速度,以米/每秒计

    var accuracy = res.accuracy; // 位置精度

    }

    fail: function(res) {

    // 失败后的回调函数

    var errorCode = res.errorCode;

    }

    });


    1. 消息接口

      1. 发送文本到微应用服务器

    函数名称: bee.sendTextMessageToApp( arg )
    请求参数
    arg.message String 必填 文本消息内容
    success Function 选填 执行成功回调函数
    fail Function 选填 执行失败回调函数
    success回调函数参数对象定义
    failure回调函数参数对象定义
    res.errorCode Integer 返回错误码
    示例

    bee.sendTextMessageToApp({

    message: 'message',

    // 文本消息内容

    success: function(res) {

    // 成功后的回调函数

    },

    fail: function(res) {

    // 失败后的回调函数

    var errorCode = res.errorCode;

    }

    });

    1. 发送图片到微应用服务器

    函数名称: bee.sendTextMessageToApp( arg )
    请求参数
    arg.localPath String 必填 图片的本地路径。
    success Function 选填 执行成功回调函数
    fail Function 选填 执行失败回调函数
    success回调函数参数对象定义
    failure回调函数参数对象定义
    res.errorCode Integer 返回错误码
    示例

    bee.sendImageMessageToApp({

    localPath: 'localPath',

    // 本地图片路径

    success: function(res) {

    // 成功后的回调函数

    },

    fail: function(res) {

    // 失败后的回调函数

    var errorCode = res.errorCode;

    }

    });

    1. 发送文件到微应用服务器

    函数名称: bee.sendFileMessageToApp( arg )
    请求参数
    arg.localPath String 必填 文件的本地路径。
    success Function 选填 执行成功回调函数
    fail Function 选填 执行失败回调函数
    success回调函数参数对象定义
    failure回调函数参数对象定义
    res.errorCode Integer 返回错误码
    示例

    bee.sendImageMessageToApp({

    localPath: 'localPath',

    // 本地文件路径

    success: function(res) {

    // 成功后的回调函数

    },

    fail: function(res) {

    // 失败后的回调函数

    var errorCode = res.errorCode;

    }

    });


    1. 扫一扫接口

      1. 读取扫描码

    函数名称: bee.scanCode( arg )
    请求参数
    arg.needResult Integer 选填 扫描结果处理方式, 0: 扫描结果蜜蜂处理, 1: 直接返回扫描结果; 默认:0。
    arg.scanType Array 选填 扫描类型,字符串数组;可选值:“qrCode”,“barCode”;默认两者都有。
    success Function 选填 执行成功回调函数
    fail Function 选填 执行失败回调函数
    success回调函数参数对象定义
    res.type String 扫描码的类型。
    res.resultStr String 扫描码的值。
    failure回调函数参数对象定义
    res.errorCode Integer 返回错误码
    示例

    bee.scanCode({

    needResult: 0,

    scanType: ["qrCode", "barCode"],

    success: function(res) {

    var type = res.resultType; // 当needResult 为 1 时,返回扫码的类型

    var result = res.resultStr; // 当needResult 为 1 时,返回扫码的内容

    },

    cancel: function(res) {}

    fail: function(res) {

    var errorCode = res.errorCode;

    }

    });

    1. 界面操作

      1. 显示/隐藏右上角菜单

    函数名称: bee.showOptionMenu( arg )
    请求参数
    arg.show Boolean 必填 true: 显示, false: 隐藏。
    示例

    bee.showOptionMenu({

    show: ture //显示或隐藏右上角菜单按钮,可选值true或false

    });

    1. 批量隐藏右上角菜单项

    函数名称: bee.hideOptionMenuItems( arg )
    请求参数
    arg.menuList Array 必填

    菜单项名称数组; 可选的菜单项:

    分享到蜜蜂联系人: "menuItem:share:contacts"

    分享到蜜蜂动态: "menuItem:share:bee2"

    在浏览器中打开: "menuItem:openInBrowser"

    分享 (更多) : "menuItem:share"

    示例

    bee.hideOptionMenuItems({

    menuList: ["menuItem:share:bee2", "menuItem:openInBrowser"]

    });

    1. 批量显示右上角菜单项

    函数名称: bee.showOptionMenuItems( arg )
    请求参数
    arg.menuList Array 必填

    菜单项名称数组; 可选的菜单项:

    分享到蜜蜂联系人: "menuItem:share:contacts"

    分享到蜜蜂动态: "menuItem:share:bee2"

    在浏览器中打开: "menuItem:openInBrowser"

    分享 (更多) : "menuItem:share"

    示例

    bee.showOptionMenuItems({

    menuList: ["menuItem:share:bee2", "menuItem:openInBrowser"]

    });

    1. 隐藏所有右上角菜单项

    函数名称: bee.hideAllFuncOptionMenuItem()
    请求参数
    示例
    bee.hideAllFuncOptionMenuItem();
    1. 设置返回按钮工作模式

    函数名称: bee.setBackModel( arg )
    请求参数
    arg String 必填

    可选值:default,mainpage, event;
    default:返回上一个也页面;
    mainpage:返回首页

    event: 调用页面的bee.onback() 方法; 页面需要实现onback回调方法; onback( url), 参数url为当前页面的URL。

    示例
    bee.setBackModel('default');
    1. 关闭当前窗口

    函数名称: bee.closeWindow()
    请求参数
    示例
    bee.closeWindow();


    1. 电话接口

    函数名称: bee.pbxCall( arg )
    请求参数
    arg.phoneNumber String 必填 被呼叫的电话号码。
    arg.contactName String 选填 被叫方的姓名,用来显示。
    arg.contactAvatar String 选填 被叫方的头像图片文件URL; 是一个HTTP URL地址。
    arg.postUrl String 选填 呼叫对方过程中,请求此URL通知呼叫事件;是一个Post请求; 请求的Body格式是JSON; 内容看下面的定义。
    arg.postData String 选填 客户定制数据, 在请求postUrl时,作为Body的一个参数原样返回。
    PostURL HTTP请求的BODY定义

    {

    "callInfo": {

    "userName": "被叫方姓名",

    "phoneNumber": "13584815575", // 被叫电话号码

    "duration": 20, // 通话时长,单位秒。

    "callUUID": "N1qXc1leKm0ZAJpD-PkJOqsIuPL6Cn5m", // 通话唯一标识。

    "createTime": 1469672854318, // 呼叫时间

    "callResult": 0 // 呼叫结果; 0:接通, 1: 未接听, 2:呼叫取消, 3:  // 被拒绝接听。

    },

    "customData": "5555" // 客户定制数据

    }

    success参数对象定义
    (无)
    failure参数对象定义
    (无)


    1. 事件接口

      1. onReady事件

    函数名称: bee.onReady()
    当蜜蜂JSAPI初始化完成后,此事件被调用。
    传入参数
    <无>
    1. 消息推送

    2. 公共应用接入(未实现,保留阶段)

    公共应用是指集成在蜜蜂不需要接入方自建服务的第三方应用。

    1. 公共应用接入流程

    请参照以下流程:

    1准备工作:

    1.1创建全时企业账号

    1.2 提供文档8.2事件通知接口(非必须)

    2接入流程:

    C:\Users\wentao.zhuang\Desktop\未命名文件.png

    1. 事件通知

      1. 描述

    全时通知微应用,将启用、禁用某站点的通知回调给接入方。该接口由接入方实现,全时将某站点启动、禁用变更时,会调用该接口通知接入方。

    1. 接口描述


    接口URL:
    <接入方定义>
    协议 HTTP
    方法 POST
    秘钥 xihmP8EWXIF8GBlg(用于AES加密的key值)
    *在申请接入公共应用时确定
    备注 Content-Type:application/json 编码:utf-8
    请求参数(URL变量)
    customerName String 客户名称
    siteId String 站点ID,代表全时一个客户站点
    account String 客户管理员账号
    action Integer 0-禁用、1-启用
    sign String

    签名(规则:先AES加密,再Base64加密

    加密内容为customerName、account、siteId、action参数值的字符串拼接)

    示例

    {

    "customerName" : "全时线下测试客户",

    "account" : "admin@quanshi.com",

    "siteId" : 771524,

    "action" : 0,

    "sign": "96Q/rGSIqokQmmQ+u3md/dNUj1arbyeJRUKaRUJGUKIS9xGO4cX4fek8Z2HYY6krRV5lzrgM7Xq+EpnkaT054A=="

    }

    应用查询接口URL返回的数据格式必须是JSON; JSON对象定义如下:
    code Integer 结果标记, 0: 成功, 非0: 失败。

    示例

    {

    "code" : 0

    }

    1. 日程状态变化通知(保留接口,请勿使用)


    接口URL:
    /callback/calendar/status/get
    请求参数
    method String

    回调自定义方法标签,必填

    ·从uniformserver回调时,值为“invite”

    ·从openmonitor回调时,值为“openmonitor”

    timestamp Long 时间戳,可选
    msgId String 日志ID,可选
    siteId Integer 站点ID,可选
    userData String

    回调用户地址,json格式: 可选

    {"ucopenapi_user_callback":"http://callback.quanshi.com/"}

    event Object 日程信息创建/更新/删除; 可选
    event.id Integer 日程Id可选
    event.title String 日程标题,可选。
    event.summary String 日程摘要,可选。
    event.description String 描述,可选
    event.dtstart Long 开始时间,可选
    event.dtend Long 结束时间,可选
    event.location String 日程地点,可选。
    event.status Integer 日程状态, 0:取消,1:正常。可选
    event.siteId Integer 站点ID,可选
    event.hostId String 主持人ID,可选
    event.importance Integer 重要等级,可选
    event.isGnet Bool 是否启用“全时云会议”,可选,默认:false。
    event.attendees Array 参会者,可选
    event.attendees[0].id Integer 参会者ID,可选
    event.externalAttendees Array 外部参会者,可选
    event.externalAttendees.id Integer 外部参会者ID,可选
    event.conferenceId String 会议ID,可选
    event.hostPassword String 主持人密码,可选
    event.attendeePassword String 参会人密码,可选
    event.attendeeJoinUrl String 参会人入会链接,可选
    event.hostJoinUrl String 主持人入会链接,可选
    event.room Array 会议室,可选 ##创建日程时该对象无效
    event.room[0].roomId Integer 会议室ID,可选
    event.room[0].roomName String 会议室名称,可选
    event.room[0].roomNote String 会议室备注,可选
    event.room[0].roomStatus Integer 会议室状态,可选
    event.equip 设备,可选 ##创建日程时该对象无效
    event.equip[0].equipId Integer 设备ID,可选
    event.equip[0].equipName String 设备名称,可选
    event.equipNote String 设备备注,可选
    event.equipStatus Integer 设备状态,可选
    event. String extrasInfo 保留参数,对日程进行操作,传递的该参数,原样返回
    record Object 会议录制; 可选
    record.confId String 会议ID,可选
    record.eventId Integer 日程ID,可选
    record.videoURL String 录制视频地址,可选
    record.thumbnail String 缩略图,可选
    record.operatorId Integer 操作ID,可选
    record.videoLength Integer 视频长度,可选
    record.videoSize Integer 视频大小,可选
    report Object 会议报告; 可选
    report.confId String 会议ID,可选
    report.eventId Integer 日程ID,可选
    report.reportName String 报告名称,可选
    report.downloadUrl String 下载地址,可选
    entermeeting Object 参会者进入会议; 可选
    entermeeting.confId String 会议ID,可选
    entermeeting.eventId Integer 日程ID,可选
    entermeeting.billingCode String 会议billingCode,可选
    entermeeting.userId String 参会人用户ID,可选
    leavemeeting Object 参会者退出会议; 可选
    leavemeeting.confId String 会议ID,可选
    leavemeeting.eventId Integer 日程ID,可选
    leavemeeting.billingCode String 会议billingCode,可选
    leavemeeting.userId String 参会人用户ID,可选
    openmonitor Object 外呼时ACM通知,可选
    openmonitor.callSeq String Openmonitor外呼业务sequence,可选
    openmonitor.partyId String ACM外呼唯一标识,可选
    openmonitor.ov String 外呼前旧状态,可选
    openmonitor.nv String 外呼后新状态,可选
    openmonitor.dcr String 断线原因,可选
    openmonitor.calendarid Integer 所属日程ID,可选
    openmonitor.billingCode String 会议billingCode,可选
    openmonitor.phoneNumber String 电话号码,可选

    示例:

    日程信息创建/更新/删除时通知示例:

    {

    "method": "invite",

    "timestamp": 1499843966945,

    "msgId": "uniformserver-10.255.0.66-1499843966.490466071.659",

    "siteId": 76458,

    "userData": "{\"ucopenapi_user_callback\":\"http: //callback.quanshi.com/\"}",

    "event": {

    "id": "142204",

    "title": "%E5%85%BC%E5%AE%B9%E6%B5%8B%E8%AF%95Foxmail071201",

    "summary": "%E6%99%AE%E9%80%9A%E4%BC%9A%E8%AE%AE",

    "description": "",

    "dtstart": 1499844600,

    "dtend": 1499848200,

    "location": "",

    "status": "CONFIRMED",

    "siteId": 76458,

    "hostId": "63712166",

    "importance": 0,

    "isGnet": 1,

    "attendees": [

    {

    "id": "63712167"

    },

    {

    "id": "63712168"

    }

    ],

    "externalAttendees": [

    {

    "id": "jing.pu@quanshi.com"

    }

    ],

    "conferenceId": "2016874",

    "hostPassword": "201501000003167702",

    "attendeePassword": "201501000003167703",

    "attendeeJoinUrl": "https: //meetnow.quanshi.com/ucb_meetingd_0/j/dahnqt",

    "hostJoinUrl": "https://meetnow.quanshi.com/ucb_meetingd_0/j/yapdje",

    "room": [ ##创建日程时该对象无效

    {

    "roomId": 932,

    "roomName": "dff",

    "roomNote": "",

    "roomStatus": 1

    }

    ],

    "equip": [ ##创建日程时该对象无效

    {

    "equipId": 225,

    "equipName": "efwfew",

    "equipNote": "",

    "equipStatus": 1

    }

    ],

    "extrasInfo":{}

    }

    }

    会议录制通知示例:

    {

    "method": "invite",

    "timestamp": 1499843966945,

    "msgId": "uniformserver-10.255.0.66-1499843966.490466071.659",

    "siteId": 76458,

    "userData": "{\"ucopenapi_user_callback\":\"http: //callback.quanshi.com/\"}",

    "record": {

    "confId": "3223",

    "eventId": 4433,

    "videoURL": "http://url.qs.com/video",

    "thumbnail": "http://url.qs.com/sss",

    "operatorId": 123,

    "videoLength": 213,

    "videoSize": 312

    }

    }

    会议报告通知示例:

    {

    "method": "invite",

    "timestamp": 1499843966945,

    "msgId": "uniformserver-10.255.0.66-1499843966.490466071.659",

    "siteId": 76458,

    "userData": "{\"ucopenapi_user_callback\":\"http: //callback.quanshi.com/\"}",

    "report": {

    "confId": "3332",

    "eventId": 44443,

    "reportName": "reportname1",

    "downloadUrl": "http://dddd"

    }

    }

    参会者进入会议

    {

    "method": "invite",

    "timestamp": 1499843966945,

    "msgId": "uniformserver-10.255.0.66-1499843966.490466071.659",

    "siteId": 76458,

    "userData": "{\"ucopenapi_user_callback\":\"http: //callback.quanshi.com/\"}",

    "entermeeting": {

    "confId": "332",

    "eventId": 4423,

    "billingCode": "343342",

    "userId": 33224

    }

    }

    参会者退出会议

    {

    "method": "invite",

    "timestamp": 1499843966945,

    "msgId": "uniformserver-10.255.0.66-1499843966.490466071.659",

    "siteId": 76458,

    "userData": "{\"ucopenapi_user_callback\":\"http: //callback.quanshi.com/\"}",

    "leavemeeting": {

    "confId": "43433",

    "eventId": 553,

    "billingCode": "5656",

    "userId": 4343

    }

    }

    外呼时ACM通知

    {

    "method": "openmonitor",

    "timestamp": 1499843966945,

    "msgId": "",

    "userData": "",

    "openmonitor": {

    "callSeq": "43433-gjfjgikko32r4r4",

    "partyId": "ewe4dg343rgrg",

    "ov": "2",

    "nv": "0",

    "dcr": "0",

    "calendarid": 324324,

    "billingCode": "43452",

    "phoneNumber": "15622253562"

    }

    }

    答复(仅仅描述调用成功后的data字段, 调用失败在OpenAPI规范中已有描述)
    data Object 无返回值

    示例:

    {

    "errorCode": 0,

    "data":null,

    "errorMessage": "",

    "requestId": "xxxx-xx-ysdf-sdfsdfsf-wqeqw123"

    }

    备注1:回调用户接口定义
    data.type String

    "calendar":日程创建/更新/删除

    //对应【会议状态变化通知接口】请求参数event

    "record":会议录制

    "report":会议报告

    "entermeeting":参会者进入会议

    "leavemeeting":参会者退出会议

    "openmonitor":外呼时ACM返回消息

    data.data Object 同【会议状态变化通知】接口请求参数相同