Microsoft Flow | 微信 | LDP 整合开发
我们在使用自己的企业应用平台时,经常会遇到以下场景:
场景1 业务系统的通知太多,希望收到通知时同步发送企业微信来随时查看。
场景2 需要和其他ERP、BI、CRM等系统对接。
通常的解决方案是自行开发一套程序来实现平台到微信的同步功能。
如果这样做,我们就需要域名空间,要学会搭建web服务器,要github备份维护代码,要当心漏洞被攻击,要编写复杂的代码。(以下将以kintone平台为例进行说明)
但是我只想实现一个小小的微信提醒功能,却受到了这么大的约束!那是否有可以不需要服务器,不需要编写很多代码的实现方法呢?
其实简单的利用好免费的Microsoft Flow,就能实现这些功能,而且基本不需要编码能力。(具体Microsoft Flow是什么,小伙伴们可以自行去百度下哦。)
一、Microsoft Flow 如何联系起kintone和企业微信?
Microsoft Flow利用webhook将kintone和微信等其他第三方应用结合起来。
Webhook:是用户定义的一种HTTP回调,它通常由某些事件触发,然后向其指定的webhook站点发出HTTP请求。
可以通过以下这张图直观的了解这个实现过程:
那就让我们来一步一步实现这一功能吧。
二、微信篇
1、创建一个自建应用
首先在企业微信上创建一个应用接收来自kintone的通知。具体创建过程,可以参见企业微信说明。
微信发送信息的流程:
获取access_token
利用access_token调用发送微信api
2、获取access_token
请求方式:GET
请求地址:https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRECT
3、利用access_token调用发送微信api
请求方式:POST(HTTPS)
请求地址:https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN
请求内容:
1 2 3 4 5 6 7 8 9 |
|
所有微信API文档请参见微信官网:文档 - 企业微信开发者中心
三、Microsoft Flow篇
kintone => Microsoft Flow => 微信 流程图
1、添加kintone到Microsoft Flow 触发器
点击“从空白创建”。
添加[请求]触发器
请求正文JSON架构:
|
在高级选项中,
选择[method]为POST
2、添加微信api的连接器 -- 获取access_token
接下来再添加一个HTTP的连接器
设置[方法]:GET
设置Uri:https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRECT
(其中ID和SECRECT请使用实际申请的企业微信的corpid和corpsercret)
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']
正文:
1 2 3 4 5 6 7 8 9 |
|
touser 设置为所有人,agentid 为之前应用的agentid
4、生成webhook请求
步骤完成,保存下。再把画面迁移到最开始的那个触发器(当收到HTTP请求时),
这时候那个HTTP POST URL就已经生成好了,点击复制URL,这就是我们的webhook地址。
5、kintone端添加webhook
在kintone的应用的设置界面点击Webhook,粘贴刚才的webhook请求地址(请删除复制结果前面的https://),勾选需要执行webhook的发送通知条件,并且启用它。
最后别忘了更新应用才能生效哦!
四、验证
好了,我们已经完成了所有设置,添加一个应用数据来看看能否发送到企业微信上吧!
更多精彩内容请浏览:Microsoft Flow | 微信 | LDP 整合开发
Microsoft Flow | 微信 | LDP 整合开发相关推荐
- 微信公众平台开发(十一) 功能整合
一.简介 在前面的几篇微信功能开发文档中,各个微信的功能都是独立的,单一微信只能提供一种功能,这样不符合大众开发者和客户的需求.所以在这一篇文章中,我们将对前面开发出来的微信功能进行简单整合,以供读者 ...
- ASP.NET MVC5微信公众平台整合开发实战教程
<ASP.NET MVC5&微信公众平台整合开发实战(响应式布局.JQuery Mobile,Windows Azure.微信核心开发)> 课程讲师:57Code 课程分类:ASP ...
- 微信php功能整合,微信公众平台开发功能整合
一.简介 在前面的几篇微信功能开发文档中,各个微信的功能都是独立的,单一微信只能提供一种功能,这样不符合大众开发者和客户的需求.所以在这一篇文章中,我们将对前面开发出来的微信功能进行简单整合,以供读者 ...
- 微信公众号开发系列-13、基于RDIFramework.NET框架整合微信开发应用效果展示
微信公众号开发系列-13.基于RDIFramework.NET框架整合微信开发应用效果展示 1.前言 通过前面一系列文章的学习,我们对微信公众号开发已经有了一个比较深入和全面的了解. 微信公众号开发为 ...
- 基于Vue+SpringCloudAlibaba微服务电商项目实战-技术选型-004:快速整合微信公众号开发
004:快速整合微信公众号开发 1 微信公众号开发项目演示 2 微信公众号开发设计原理 3 基于natapp将本地项目发布到外网 4 对接微信公众号测试平台 5 第三方微信框架快速实现微信开发 6 微 ...
- 钉钉、阿里云和PaaS平台的整合开发
钉钉在企业移动办公领域有着很高的占有率,但是可能大家都会觉得,他在企业定制化,数据分析等领域有着很大的短板. 而我们的kintone作为PaaS平台,可以补足这个短板.很多开发者想知道如何利用钉钉还有 ...
- C#开发微信门户及应用(44)--微信H5页面开发的经验总结
在我们开发微信页面的时候,需要大量用到了各种呈现的效果,一般可以使用Boostrap的效果来设计不同的页面,不过微信团队也提供很多这方面的资源,包括JSSDK的接口,以及Weui的页面样式和相关功能页 ...
- 基于微信小程序开发的仿微信demo
(本文参考自github/liujians,地址:https://github.com/liujians/weApp) 作者声明: 基于微信小程序开发的仿微信demo 整合了ionic的样式库和we ...
- Microsoft SQL Server 2000整合规划
Microsoft SQL Server 2000整合规划 更新日期: 2004年06月24日 SQL Server技术文章 作者:Allan Hirt 投稿人:Tom Davidson和Shaun ...
最新文章
- The Shortest Statement CodeForces - 1051F LCA+最短路
- android telephony phone application
- python全栈开发_day52_html模板继承和静态配置
- org.apache.hadoop.hbase.ClockOutOfSyncException
- 在sql server数据库的一个表中如何查询共有多少字段
- 关于程序组织和组织技巧的学习
- pandas rolling方法_【干货】pandas相关工具包
- 查找在Git中删除文件的时间
- 从动态表单得到的一些思考
- JavaScript语法之语句、字面量、变量
- 搭建 Harbor v2.2.0 docker私库
- matlab细胞计数并求目标区域求面积
- c语言if函数嵌套公式例子,IF函数的嵌套使用案例
- java服务器限速下载_Java文件下载限速
- 实现百度地图marker平滑移动
- 初识 Mac机子 关机命令
- QT离线安装包下载地址
- 结果和过程到底哪个重要?
- jpa mysql_Spring boot通过JPA访问MySQL数据库
- 英语--罗塞塔学习总结
热门文章
- 虚拟机与主机之间不能复制粘贴问题
- Pandas操作dataframe对所有列/行求和 ,对指定列/行求和,对某一列/行求和,并添加新的列/行
- excel2010 中 启用宏,VBA使用 说明
- 美国500名iOS用户受害?黑客组织发动恶意广告
- 剑灵电信6区服务器位置,剑灵电信6区哪个服务器人多
- 中国:阿里、腾讯与微博:移动支付的新三国演义,美国:三星收购美移动支付服务LoopPay与苹果争抢未来移动支付市场
- G-dis - Mac上的Redis客户端
- [Neuronal Dynamics 笔记] I Foundations of Neuronal Dynamics - 2 The Hodgkin-Huxley Model
- 【迷人的爪哇】—Java数据类型和变量
- 关于mybatis的报错 attempted to return null from a method with a primitive return type (int)