WorkPlus JS SDK

概述

WorkPlus JS SDK提供基于WorkPlus开放平台接口的封装,开发者可以借助JS SDK直接使用选联系人,文件预览保存,获取用户信息等平台服务

1.使用说明

1.1 引入js

在首页引入如下js文件:

http://www.foreverht.com/js/w...

引入js后会得到一个全局变量WorkPlus,支持AMD/CMD

1.2 通过config接口初始化

WorkPlus.config({    debug: true,  // 开启调试日志, 默认false    ticket: xxxxx,    clientId: xxxxx})

暂时不添加权限认证,可以支持白名单

1.3 通过ready接口处理成功

WorkPlus.ready(function(){})

注意:所有的接口调用都必须在ready成功回调之后

1.4 通过error接口处理失败

WorkPlus.error(function(error){})error对象包括错误码和错误信息{  code: 1, //错误码  message: 'Platform Error', //错误信息}

2.接口调用约定

  1. 所有接口均为异步

  2. 每个接口均传一个对象作为参数,以下是通用参数

   1.success 接口成功的回调   2.error 接口失败的回调
  1. 返回接口均为json对象
   例如:   WorkPlus.getCurrentUserInfo({       success: function(data) {       },       error: function(error) {       }   })

3.接口文档

3.1 联系人接口

3.1.1 获取当前用户信息

WorkPlus.getCurrentUserInfo({    includeEmployeeInfo: true,    success: function(data) {    },    error: function(error) {    }})

参数说明

参数
类型
说明

includeEmployeeInfo
Boolean
是否包含当前机构的雇员信息, 默认值为false

返回数据

{    "user_id": "4da8a27748514c05871bccdc84bc5b0c",     "domain_id": "atwork",     "status": "ACTIVATED",     "username": "15986301302",     "name": "熊小二",     "pinyin": "xiongxiaoer",     "initial": "xxe",     "nickname": "特甜",     "avatar": "Z3JvdXAxL00wMC8wMC8yQi9yQkFDLUZlV3p4MkFYa2JuQUFBZXBCTHpUY284NTIuanBn",     "phone": "15986301302",     "email": "test@test.com",     "gender": "MALE",     "disabled": false    "employeeName": "特甜", // 所在当前组织的雇员名    "employee": {   // includeEmployeeInfo为true时才会返回            "domain_id": "atwork",             "org_code": "68810189-8431-40f0-90b7-aa7f61c1a3e7",             "employee_type_id": 29,             "employee_type": "正式员工",             "id": 155,             "name": "特甜",             "type": "EMPLOYEE",             "sort_order": 999,             "user_id": "4da8a27748514c05871bccdc84bc5b0c",             "username": "15986301302",             "nickname": "熊小二123456789123456789123456789",             "status": "ACTIVATED",             "senior": false,             "gender": "UNKNOWN",             "pinyin": "tetian",             "initial": "tt",             "avatar": "Z3JvdXAxL00wMC8wMC8yQi9yQkFDLUZlV3p4MkFYa2JuQUFBZXBCTHpUY284NTIuanBn",             "more_info": { },             "settings": { },             "mobile": "15986301302",             "created": 0,             "last_modified": 0,             "expired": 0,             "disabled": false,             "positions": [                {                    "employee_id": 155,                     "org_id": 75,                     "org_name": "恒拓高科测试轻应用",                     "job_title": "",                     "path": "/75/",                     "type": "ORG",                     "primary": true,                     "chief": false                }            ],             "properties": [ ],         }}

3.1.2 选择联系人

WorkPlus.chooseContacts({    multiple: true,    chooseMyself: true,    users: [userId, userId],    max: 10    success: function(data) {    },    error: function(error) {    }})

参数说明

参数
类型
说明

multiple
Boolean
是否多选,true表示多选,false表示单选,默认为true

chooseMyself
Boolean
是否可以选择自己,默认为true

users
Array[String]
默认选中的用户列表,String取userId

max
Number
人数限制,当multiple为true才生效,可选范围1-1500

返回数据(联系人数组,包括默认勾选的)

[        {            "domain_id": "atwork",             "org_code": "68810189-8431-40f0-90b7-aa7f61c1a3e7",             "employee_type_id": 29,             "employee_type": "正式员工",             "id": 457,             "name": "中钢大大",             "type": "EMPLOYEE",             "sort_order": 1,             "user_id": "0a400b655f37465daac0da7eb63b2d49",             "username": "workplus",             "nickname": "中钢大大",             "status": "ACTIVATED",             "senior": false,             "gender": "MALE",             "birthday": 1469404800000,             "pinyin": "zhonggangdada",             "initial": "zgdd",             "more_info": { },             "settings": { },             "mobile": "",             "email": "aaaaa@qq.com",             "created": 0,             "last_modified": 0,             "expired": 0,             "disabled": false,             "positions": [                {                    "employee_id": 457,                     "org_id": 75,                     "org_name": "恒拓高科测试轻应用",                     "job_title": "VPN",                     "path": "/75/",                     "type": "ORG",                     "primary": true,                     "chief": false                }            ]        }  ]

3.1.3 打开与某人的会话

WorkPlus.openSession({    userId: 'xxx',    success: function(data) {    },    error: function(error) {    }})

参数说明

参数
类型
说明

userId
String
必填,用户的唯一标识

3.2 文件接口

3.2.1 文件上传

文件上传等于选择文件+上传

WorkPlus.uploadFile({    success: function(data) {    },    error: function(error) {    },    process: function(process) {    }})

成功返回数据

{    "mediaId": "xxxx",    "downloadURL": "http://xxxxxx"}

上传中返回数据: process范围0-100

3.2.2 文件下载

WorkPlus.downloadFile({    mediaId: 'xxx',    url: 'http://xxxx',    name: 'test',    success: function(data) {    },    error: function(error) {    },    process: function(process) {    }})

参数说明

参数
类型
说明

mediaId
String
媒体资源标识,如果基于mediaId下载,url和name可以不传

url
String
下载地址,优先级大于mediaId

name
String
文件名,基于url下载文件时必填

成功返回数据: true
上传中返回数据: process范围0-100

3.3 图片接口

3.3.1 图片上传

图片上传等于选择图片+上传, 默认生成缩略图

WorkPlus.uploadImage({    success: function(data) {    },    error: function(error) {    },    process: function(process) {    }})

成功返回数据

{    "mediaId": "xxxx",    "thumbMediaId": "xxxx", // 缩略图ID    "downloadURL": "http://xxxxxx",    "thumbDownloadURL": "http://xxxxxx"}

上传中返回数据: process范围0-100

3.3.2 图片预览

WorkPlus.previewImage({    urls: [],    mediaIds: [],    current: 0,    success: function(data) {    },    error: function(error) {    }})

参数说明

参数
类型
说明

urls
Array[String]
一组图片访问地址

mediaIds
Array[String]
一组图片的mediaId, 优先级大于urls

current
Number
当前下标,默认为0,从第一张图片开始预览

3.4 消息接口

3.4.1 发送文本消息

3.4.2 发送链接消息

3.5 位置接口

3.5.1 获取当前经纬度

3.6 浏览器接口

3.6.1 打开链接

WorkPlus.openURL({    url: 'http://www.foreverht.com',    success: function(data) {    },    error: function(error) {    }})

参数说明

参数
类型
说明

url
String
访问地址

js-sdk

版权声明

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部