Microsoft Flow | 微信 | LDP 整合开发

  • Microsoft Flow | 微信 | LDP 整合开发已关闭评论
  • 144 次浏览
  • A+
所属分类:Web前端
摘要

我们在使用自己的企业应用平台时,经常会遇到以下场景:场景1 业务系统的通知太多,希望收到通知时同步发送企业微信来随时查看。

我们在使用自己的企业应用平台时,经常会遇到以下场景:

  • 场景1 业务系统的通知太多,希望收到通知时同步发送企业微信来随时查看。

  • 场景2 需要和其他ERP、BI、CRM等系统对接。

通常的解决方案是自行开发一套程序来实现平台到微信的同步功能。

如果这样做,我们就需要域名空间,要学会搭建web服务器,要github备份维护代码,要当心漏洞被攻击,要编写复杂的代码。(以下将以kintone平台为例进行说明)

Microsoft Flow | 微信 | LDP 整合开发

但是我只想实现一个小小的微信提醒功能,却受到了这么大的约束!那是否有可以不需要服务器,不需要编写很多代码的实现方法呢?

其实简单的利用好免费的Microsoft Flow,就能实现这些功能,而且基本不需要编码能力。(具体Microsoft Flow是什么,小伙伴们可以自行去百度下哦。)

一、Microsoft Flow 如何联系起kintone和企业微信?

Microsoft Flow利用webhook将kintone和微信等其他第三方应用结合起来。

Webhook:是用户定义的一种HTTP回调,它通常由某些事件触发,然后向其指定的webhook站点发出HTTP请求。

可以通过以下这张图直观的了解这个实现过程:

Microsoft Flow | 微信 | LDP 整合开发

那就让我们来一步一步实现这一功能吧。

二、微信篇

1、创建一个自建应用

首先在企业微信上创建一个应用接收来自kintone的通知。具体创建过程,可以参见企业微信说明。

Microsoft Flow | 微信 | LDP 整合开发

微信发送信息的流程:

  • 获取access_token

  • 利用access_token调用发送微信api

2、获取access_token

请求方式:GET

请求地址:https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRECT

Microsoft Flow | 微信 | LDP 整合开发

3、利用access_token调用发送微信api

请求方式:POST(HTTPS)
请求地址:https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN

请求内容:

Microsoft Flow | 微信 | LDP 整合开发

所有微信API文档请参见微信官网:https://developer.work.weixin.qq.com/document

三、Microsoft Flow篇

kintone => Microsoft Flow => 微信 流程图

Microsoft Flow | 微信 | LDP 整合开发

1、添加kintone到Microsoft Flow 触发器

点击“从空白创建”。

Microsoft Flow | 微信 | LDP 整合开发

 

添加[请求]触发器 

Microsoft Flow | 微信 | LDP 整合开发

请求正文JSON架构:

Microsoft Flow | 微信 | LDP 整合开发

 

{       "type": "object",          "properties": {                 "type": {                          "type": "string"                  },                  "app": {                          "type": "object",                          "properties": {                                  "id": {                                          "type": "string"                                  },                                 "name": {                                         "type": "string"                                 }                          }                  },                  "recordTitle": {                          "type": "string"                   },                   "url": {                           "type": "string"                   }          }  }

在高级选项中,
选择[method]为POST

2、添加微信api的连接器 -- 获取access_token

接下来再添加一个HTTP的连接器

Microsoft Flow | 微信 | LDP 整合开发

设置[方法]:GET

设置Uri:https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRECT

(其中ID和SECRECT请使用实际申请的企业微信的corpid和corpsercret)

Microsoft Flow | 微信 | LDP 整合开发

 

3、添加微信发送信息的连接器 

接着再添加一个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']

Microsoft Flow | 微信 | LDP 整合开发

正文:

{     "touser" : "@@all",     "msgtype" : "text",     "agentid" : 1000002,     "text" : {           "content " : "添加记录成功"     },     "safe":0  }

touser 设置为所有人,agentid 为之前应用的agentid

4、生成webhook请求

步骤完成,保存下。再把画面迁移到最开始的那个触发器(当收到HTTP请求时),

这时候那个HTTP POST URL就已经生成好了,点击复制URL,这就是我们的webhook地址。

Microsoft Flow | 微信 | LDP 整合开发

 

5、kintone端添加webhook

在kintone的应用的设置界面点击Webhook,粘贴刚才的webhook请求地址(请删除复制结果前面的https://),勾选需要执行webhook的发送通知条件,并且启用它。

Microsoft Flow | 微信 | LDP 整合开发

 

最后别忘了更新应用才能生效哦!

Microsoft Flow | 微信 | LDP 整合开发

 

四、验证

好了,我们已经完成了所有设置,添加一个应用数据来看看能否发送到企业微信上吧!

想尝试一下吗?快来注册账号体验:?https://cybozudev.kf5.com/hc/kb/article/1307437/