本篇梳理把 O2OA 平台以自建应用形式接入企业微信的完整路径:先注册企业号并取得企业标识、通讯录同步密钥与自建应用标识,再完成域名验证和工作台主页地址配置,随后修改接入配置文件并重启服务,最后用服务接口手工拉取通讯录。需注意同步以企业微信架构为准,本地已有人员会保留并可能重复,建议同步完成后再编辑信息;拉取请求不重复触发,密钥无效时可换用同步专用密钥。
O2OA 平台提供原生开发的安卓和 IOS 移动 APP,支持以自建应用方式集成到企业微信,同步企业微信通讯录作为本地组织人员架构,并将待办等通知直接推送到企业微信进行消息提醒。本文介绍如何将 O2OA 集成到企业微信,实现微信办公。
O2OA 成功接入企业微信后,会自动从企业微信拉取所有人员和组织进行同步,组织和人员以企业微信中创建的架构为准(本地已创建的人员和组织将保留,不会被删除,可能会造成人员和组织重复)。
O2OA 接入企业微信建议先配置好企业微信应用,待组织和人员从企业微信同步完成后,再进行组织和人员的信息编辑,避免人员和组织信息的重复创建。
注册地址:https://work.weixin.qq.com/,注册过程需要提供企业相关信息。
注册成功后,使用管理员账号登录企业微信,在[我的企业]页面最后一行可获取企业的 CropId,如下图所示:
在管理工具 - 通讯录同步配置中查询和配置 API 信息。
配置同步方式、权限,并且获取Secret,该Secret就是后续需要配置到O2OA里的syncSecret信息:注册成功后,使用管理员账号登录企业微信,如下图所示:
点击[应用与小程序],进入如下图所示界面:
如上图所示,点击[创建应用],在自建程序区域继续创建应用:
填写好应用相关信息后进行应用创建:填写好应用相关信息后进行应用创建:
应用LOGO:可以自行制作合适大小的LOGO,此LOGO将在企业微信中展示。 应用名称:此应用的具体名称,可以随意命名,如O2OA,企业办公,XXOA都可以。 应用介绍:此应用的具体用途介绍。 可见范围:可使用此应用的人员范围设定,可以选择组织和个人成员。
应用创建完成后,如下图所示界面:
您可以在界面中获取 AgentId 信息,该信息以及之前获取的 CropId 将配置到 O2OA 相关的接入配置中,请牢记。
应用创建完成后需要验证域名,即 O2OA 服务器外网访问的域名需要按如下方式验证。企业微信通过验证证明该域名地址属于开发者所有,才能进行后续单点认证等操作。
https://open.weixin.qq.com/connect/oauth2/authorize?appid=CORPID&redirect_uri=https%3A%2F%2F[host][port]%2Fx_desktop%2Fqiyeweixinsso.html%3Fredirect%3Dportalmobile.html%3Fid%3D*********&response_type=code&scope=snsapi_base&agentid=1000004&#wechat_redirect
其中:
appid : 企业的corpId host : O2OA服务器提供服务的域名 port : O2OA服务器提供服务的端口 AgentId : 应用的agentId redirect_uri参数需要使用urlencode进行编码,不然会遇到50001错误,redirect_uri不是可信域名。 这个url是:http://[host]:[port]/x_desktop/qiyeweixinsso.html?redirect=portalmobile.html?id=************ 这样的形式。后面跟了一个redirect参数,就是需要跳转到一个门户页面,id就是门户的id,不配置这个参数也行,进入的是一个默认的待办列表页面。
第四步创建应用后,应用详情中有一个 secret,将其配置到 O2OA 的 CropSecret 中,具体参数说明见第六步:
1、进入 o2oa 安装目录,将 o2server/configSample 目录下的 qiyeweixin.json 拷贝到 o2server/config 目录(如已复制,请跳过此步骤);
2、使用文本编辑器打开 qiyeweixin.json 进行编辑:
{
"enable": false,
"syncCron": "10 0/10 * * * ?",
"forceSyncCron": "10 45 8,12 * * ?",
"apiAddress": "https://qyapi.weixin.qq.com",
"corpId": "",
"syncSecret": "",
"corpSecret": "",
"agentId": "",
"token": "",
"encodingAesKey": "",
"workUrl": "",
"messageRedirectPortal": "",
"messageEnable": false,
"scanLoginEnable": false,
"attendanceSyncEnable": false,
"attendanceSyncAgentId": "",
"attendanceSyncSecret": "",
}参数说明:
"enable": "是否启用企业微信接入: true | false", "syncCron": "拉入同步时间表达式, 默认每10分钟同步一次(10 0/10 * * * ?).", "forceSyncCron": "强制拉入同步cron, 默认在每天的8点和12点强制进行同步(10 45 8,12 * * ?)", "apiAddress": "企业微信api服务器地址, https://qyapi.weixin.qq.com", "corpId": "企业微信参数corpId(从企业微信后台管理信息中获取 '企业ID')", "syncSecret":"企业微信同步通讯录Secret", "corpSecret": "企业微信参数corpSecret(从企业微信后台管理信息中获取 'Secret')", "agentId": "企业微信参数agentId(从企业微信后台管理信息中获取 'AgentId')", "messageEnable": "是否允许推送消息到企业微信: true | false", "token":"回调token", "encodingAesKey": "回调encodingAesKey###", "workUrl":"这个参数是为了企业微信推送的工作消息开启超链接功能,这里配置o2oa服务器地址, 如:http://dev.o2oa.net/x_desktop/" "messageRedirectPortal":"这个参数是配置一个门户id,是上面工作消息打开后处理完成跳转的门户页面" "messageEnable": "推送消息到企业微信###", "scanLoginEnable": "企业微信扫码登录###", "attendanceSyncEnable": "是否启用考勤信息###", "attendanceSyncAgentId": "企业微信考勤打卡应用id###", "attendanceSyncSecret": "企业微信考勤打卡应用secret###"
token 和 encodingAesKey 可以先填 1,否则无法保存,对微信集成不会产生影响。
完成以上配置后重启 O2OA,即可完成企业微信接入,在企业微信 - 工作台中可以看到自己配置的企业应用。
注意企业微信同步通讯录 Secret 的配置:由于企业微信版本不同,如果配置 corpSecret 无效,请改用 syncSecret。
服务地址:http://o2oa 服务器域名:20030/x_program_center/jest/index.html
服务名称:QiyeweixinAction.pullSync
如下图所示,点击 GET 之后,观察服务器控制台或日志文件(o2server/logs)即可查看到同步日志。
不要多次点击 GET,点击一次后,控制台会显示正在拉取组织人员信息的相关日志。
相关问题讨论
与企业微信集成,弹出登录页面
O2OA 平台拥有配套的原生开发的安卓和 IOS 移动 APP,可以以自建应用的方式集成到企业微信,同步企业微信的企业通讯录作为本地组织人员架构,并且可以将待办等通知直接推送到企业微信进行消息提醒。
查看原帖讨论 · 16,657 次浏览
企业微信集成问题
O2OA 平台拥有配套的原生开发的安卓和 IOS 移动 APP,可以以自建应用的方式集成到企业微信,同步企业微信的企业通讯录作为本地组织人员架构,并且可以将待办等通知直接推送到企业微信进行消息提醒。
查看原帖讨论 · 12,565 次浏览
相关内容
下一篇:钉钉-O2OA集成到阿里钉钉