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.success 接口成功的回调
       2.error 接口失败的回调
  • 返回接口均为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) {
        
    }
})

参数说明

参数类型说明
includeEmployeeInfoBoolean是否包含当前机构的雇员信息, 默认值为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) {
        
    }
})

参数说明

参数类型说明
multipleBoolean是否多选,true表示多选,false表示单选,默认为true
chooseMyselfBoolean是否可以选择自己,默认为true
usersArray[String]默认选中的用户列表,String取userId
maxNumber人数限制,当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) {
        
    }
})

参数说明

参数类型说明
userIdString必填,用户的唯一标识

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) {
        
    }
})

参数说明

参数类型说明
mediaIdString媒体资源标识,如果基于mediaId下载,url和name可以不传
urlString下载地址,优先级大于mediaId
nameString文件名,基于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) {
        
    }
})

参数说明

参数类型说明
urlsArray[String]一组图片访问地址
mediaIdsArray[String]一组图片的mediaId, 优先级大于urls
currentNumber当前下标,默认为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) {
        
    }
})

参数说明

参数类型说明
urlString访问地址

3.7 票据接口

3.7.1 获取用户票据
WorkPlus.getUserTicket({
    success: function(data) {
        
    },
    error: function(error) {
        
    }
})

成功返回数据

{
    "userTicket": "xxxxxx"
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值