Index
说明
本篇严格来说和第三方账号无关,但它却是使用第三方账号认证(二):钉钉小程序免登的功能拓展。
因此本篇将作为番外,单独叙述。
功能
这次我们将会为钉钉H5微应用添加通知功能。
在kintone上提交流程时,我们希望执行者能尽快进行处理。
如果该执行者绑定了钉钉的账号,那么我们希望钉钉能尽快弹出通知,来提醒对方。
设计
确定了功能需求后,接下就要进入设计阶段。
在通知提醒方面,钉钉已经给出了相关文档。
那么这个API最好是在IDP 服务端调用还是利用kintone.proxy调用?
这里直接给出答案,在IDP 服务端中调用。这样就能回避钉钉的白名单权限问题。
最后的问题,kintone上能在提交流程时取得相关的执行者信息吗?
回答是,通过组合 app.record.detail.process.proceed 和 app.record.detail.show 来间接获取。
代码
IDP端代码已更新,大家可以从以下链接获取:
同时,这次还需要kintone自定义js,这部分代码存放在:
配置
本次配置以使用第三方账号认证(二):钉钉小程序免登为基础,给出相应改进:
IdP端配置
这次在项目中集成了钉钉内网穿透工具,更新后请重新运行 npm install
修改package.json中的traversal下的${your_subdomain}。
最后运行npm run traversal 来实现穿透。
数据库
在钉钉管理app中添加以下字段:
字段名 | 类型 | 字段代码 | 描述 |
---|---|---|---|
AgentId | 单行文本框 | agentId | 钉钉微应用的AgentId |
钉钉端配置
进入钉钉H5微应用的权限管理,添加以下权限:
根据手机号姓名获取成员信息的接口访问权限
kintone系统管理
修改Process2Ding项目src目录下的index.js中的第一行,在${your_domain}中填入服务端域名。
运行 npm install 和 npm run build,生成编译后的js。
进入cybozu共通管理->系统管理->安全性->登录
将 dist/js/app.js 上传到 kintone系统管理->自定义->通过JavaScript / CSS自定义