我们在使用kintone时,经常会遇到以下场景:
场景1 业务系统的通知太多,希望收到通知时同步发送企业微信来随时查看。
场景2 需要和其他ERP、BI、CRM等系统对接。
通常的解决方案是自行开发一套程序来实现kintone到微信的同步功能。
如果这样做,我们就需要域名空间,要学会搭建web服务器,要github备份维护代码,要当心漏洞被攻击,要编写复杂的代码。
但是我只想实现一个小小的微信提醒功能,却受到了这么大的约束!那是否有可以不需要服务器,不需要编写很多代码的实现方法呢?
其实简单的利用好免费的Microsoft Flow,就能实现这些功能,而且基本不需要编码能力。(具体Microsoft Flow是什么,小伙伴们可以自行去百度下哦。)
Microsoft Flow 如何联系起kintone和企业微信?
Microsoft Flow利用webhook将kintone和微信等其他第三方应用结合起来。
Webhook:是用户定义的一种HTTP回调,它通常由某些事件触发,然后向其指定的webhook站点发出HTTP请求。
可以通过以下这张图直观的了解这个实现过程:
那就让我们来一步一步实现这一功能吧。
微信篇
创建一个自建应用
首先在企业微信上创建一个应用接收来自kintone的通知。具体创建过程,可以参见企业微信说明。
微信发送信息的流程:
获取access_token
利用access_token调用发送微信api
获取access_token
请求方式:GET
请求地址:https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRECT
利用access_token调用发送微信api
请求方式:POST(HTTPS)
请求地址:https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN
请求内容:
{ "touser" : "@@all", "msgtype" : "text", "agentid" : 1000002, "text" : { "content " : "添加记录成功" }, "safe":0 }
所有微信API文档请参见微信官网:https://work.weixin.qq.com/api/doc
Microsoft Flow篇
kintone => Microsoft Flow => 微信 流程图
添加kintone到Microsoft Flow 触发器
点击“从空白创建”。
添加[请求]触发器
请求正文JSON架构:
{ "type": "object", "properties": { "type": { "type": "string" }, "app": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" } } }, "recordTitle": { "type": "string" }, "url": { "type": "string" } } }
在高级选项中,
选择[method]为POST
添加微信api的连接器 -- 获取access_token
接下来再添加一个HTTP的连接器
设置[方法]:GET
设置Uri:https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRECT
(其中ID和SECRECT请使用实际申请的企业微信的corpid和corpsercret)
添加微信发送信息的连接器
接着再添加一个HTTP的连接器
方法:POST
Uri:https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN
这里access_token的值设置为之前那个HTTP连接器获取到的动态内容。
查阅Microsoft Flow 官方api可以得出:actions('HTTP')['outputs']['body']['access_token']
正文:
{ "touser" : "@@all", "msgtype" : "text", "agentid" : 1000002, "text" : { "content " : "添加记录成功" }, "safe":0 }
touser 设置为所有人,agentid 为之前应用的agentid
生成webhook请求
步骤完成,保存下。再把画面迁移到最开始的那个触发器(当收到HTTP请求时),
这时候那个HTTP POST URL就已经生成好了,点击复制URL,这就是我们的webhook地址。
kintone端添加webhook
在kintone的应用的设置界面点击Webhook,粘贴刚才的webhook请求地址(请删除复制结果前面的https://),勾选需要执行webhook的发送通知条件,并且启用它。
最后别忘了更新应用才能生效哦!
验证
好了,我们已经完成了所有设置,添加一个应用数据来看看能否发送到企业微信上吧!