玩转企业微信群聊机器人 用机器人定时提醒饭点 订餐时间 任务时间 下班时间 任务代办事项 每个人都可以快速拥有的一个Robot

今天突然发现企业微信群聊的时候有个机器人功能,点了点,玩起了企业微信群聊机器人。用企业微信群聊机器人可以实现很多有意思的功能,如果能给自己单独做个机器人就好了,现在必须拉个群才能玩,有点小尴尬!今天带大家玩一下企业微信群聊机器人,看起之后,你应该能够自大实现一个群聊机器人,并能开发出来定时提醒饭点、订餐时间、任务时间 下班时间、任务代办事项等等通知功能,来来,走一波~~

机器人入口

企业微信群聊机器人入口

企业微信群聊机器人入口

点击新创建机器人

创建企业微信群聊机器人

创建企业微信群聊机器人

创建完机器人,得到授权接口址址

企业微信群聊机器人设置

企业微信群聊机器人设置

这是一个非常轻量级的机器人,上手速度非常快,看看官方的入门文档配置,真的是秒入门,秒使用!接口地址自带授权token,完全不需要来回签名验证的,直接关心做自己最喜欢的机器人功能就好。

来瞅瞅官方文档与个人自媒体的差异:

官方文档是这么写,不喜欢看官方文档的可以直接跳过,到下面的实战环节!

如何使用群机器人在终端某个群组添加机器人之后,可以获取到webhook地址,然后开发者用户按以下说明构造post data向这个地址发起HTTP POST 请求,即可实现给该群组发送消息。下面举个简单的例子.假设webhook是:https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=633a31f6-7f9c-4bc4-97a0-0ec1eefa589以下是用curl工具往群组推送文本消息的示例(注意要将url替换成你的机器人webhook地址,content必须是utf8编码):curl 'http://in.qyapi.weixin.qq.com/cgi-bin/webhook/send?key=633a31f6-7f9c-4bc4-97a0-0ec1eefa5898' \   -H 'Content-Type: application/json' \   -d '   {        "msgtype": "text",        "text": {            "content": "hello world"        }   }'当前自定义机器人支持文本(text)、markdown(markdown)两种消息类型。消息类型及数据格式文本类型{    "msgtype": "text",    "text": {        "content": "广州今日天气:29度,大部分多云,降雨概率:60%",        "mentioned_list":["wangqing","@all"],        "mentioned_mobile_list":["13800001111","@all"]    }}参数  必须  说明msgtype  true  消息类型,此时固定为textcontent  true  文本内容,最长不超过2048个字节,必须是utf8编码mentioned_list  false  userid的列表,提醒群中的指定成员(@某个成员),@all表示提醒所有人,如果开发者获取不到userid,可以使用mentioned_mobile_listmentioned_mobile_list  false  手机号列表,提醒手机号对应的群成员(@某个成员),@all表示提醒所有人markdown类型{    "msgtype": "markdown",    "markdown": {        "content": "实时新增用户反馈<font color=\"warning\">132例</font>,请相关同事注意。\n         >类型:<font color=\"comment\">用户反馈</font> \n         >普通用户反馈:<font color=\"comment\">117例</font> \n         >VIP用户反馈:<font color=\"comment\">15例</font>"    }}参数  必须  说明msgtype  true  消息类型,此时固定为markdowncontent  true  markdown内容,最长不超过2048个字节,必须是utf8编码目前支持的markdown语法是如下的子集:标题 (支持16级标题,注意#与文字中间要有空格)# 标题一## 标题二### 标题三#### 标题四##### 标题五###### 标题六加粗**bold**链接[这是一个链接](http://work.weixin.qq.com/api/doc)行内代码段(暂不支持跨行)`code`引用> 引用文字字体颜色(只支持3种内置颜色)<font color="info">绿色</font><font color="comment">灰色</font><font color="warning">橙红色</font>图片类型{    "msgtype": "image",    "image": {        "base64": "DATA",        "md5": "MD5"    }}参数  必须  说明msgtype  true  消息类型,此时固定为imagebase64  true  图片内容的base64编码md5  true  图片内容(base64编码前)的md5值注:图片(base64编码前)最大不能超过2M,支持JPG,PNG格式图文类型{    "msgtype": "news",    "news": {       "articles" : [           {               "title" : "中秋节礼品领取",               "description" : "今年中秋节公司有豪礼相送",               "url" : "URL",               "picurl" : "http://res.mail.qq.com/node/ww/wwopenmng/images/independent/doc/test_pic_msg1.png"           }        ]    }}参数  必须  说明msgtype  true  消息类型,此时固定为newsarticles  是  图文消息,一个图文消息支持18条图文title  是  标题,不超过128个字节,超过会自动截断description  否  描述,不超过512个字节,超过会自动截断url  是  点击后跳转的链接。picurl  否  图文消息的图片链接,支持JPG、PNG格式,较好的效果为大图 1068*455,小图150*150消息发送频率限制每个机器人发送的消息不能超过20条/分钟。

实战环节

直接复制官方提供的curl命令执行的话,会报错,因为官方提供的是用来查看的,得调整一下,调整成这样子才可以跑起来:

curl "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxxxxx" -H "Content-Type: application/json"   -d "{\"msgtype\": \"text\",\"text\": {\"content\": \"hello world\" }}"

还有问题是curl发送中文的时候,在群里收到的是乱码,这个很让人揪心哦~。为了实现定时提醒功能,自然想到了windows定时任务!如果使用linux的话,也有类似的机制,今天就不介绍了。有同时使用jinkens做定时构建来玩,我也跳过了。我觉得今天的重点是还是使用一些比较常见的玩法。

如果喜欢使用english发信息的话,直接改改我上面提醒的curl命令,建个bat文件,现在windows任务中心创建一个定时任务就可以了。

玩法一 只能发英文的bot

 

  1. 建立一个bot.bat,内容跟截图错不多就可以。对于要提醒吃饭吃药下班做操等等提醒来说,只要将hello world修改成对应的英文内容就可。比如说:It is time for lanch.
  2. 企业微信群聊英文机器人enbot

    企业微信群聊英文机器人enbot

  3. 建立一个windows任务

win10进入任务管理直接输入“任务”,其他操作系统的话,可以在控制面板找找。

windows10任务计划入口

windows10任务计划入口

任务计划可以建很多,为了方便管理,建议先建一个目录叫做Robot,然后再新建任务计划到这个目录中。任务名字自己取,比如吃饭提醒什么的。

创建windows任务计划

创建windows任务计划

设置好触发时间

机器人任务计划配置

机器人任务计划配置

这里设置的是很天的上午11点50提醒。如果有些工作需要每周、每月提醒,则依据提示调整即可。

立即执行感受效果

立即执行机器人动作查看效果

立即执行机器人动作查看效果

到这里就完成了一个简单的bot机器人的设置,到约定时间,机器人就会执行,发送相应的消息。

玩法二 能发中文的bot

发英文的话,比较晦涩!不好Get到点。中文的bot可以使用其他脚本或开发语言完成,node.js\python都可以,不过,这里提供的方案是html+js+bat文件+winodws任务执行。

中文版企业微信群聊机器人

中文版企业微信群聊机器人

b.bat内容

start "C:\Users\Administrator\AppData\Local\Google\Chrome\Application\chrome.exe" D:\robot\robot.html 

QywxRobot.html内容

<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><script src="jquery-3.4.1.min.js"></script></head><body>    <input id="robotUrl" style="width:100%" type="text" value="https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxxxxx"/>  <textarea id="msg" style="width:100%;height:200px;" value="我是机器人好不"></textarea>  <button style="display:flex;margin:30px auto;" id="btnSend">发送</button>  <script>    //关注微信公众号 技术岛Jishudao 体验最新的技术潮流,获取更多实用小工具    //微信 13439975582    $(function(){      $("#btnSend").click(function(){        var botData = {            "msgtype": "text",            "text": {              "content": $("#msg").val()            }         };         $.ajax({            url: $("#robotUrl").val(),            type: 'post',            dataType: 'json',            data: JSON.stringify(botData),            success: function(res){              console.log(res)              if (res.code === 200) {                               }               },            error: function(e) {               }          });      });    });    </script></body></html>

jquery-3.4.1.min.js可以到网上找一个,也可以直接到我的仓库获取:https://github.com/Lancker/QywxRobot

任务设计可以参考上面的说明。

以上就是今天的玩转企业微信群聊机器人,欢迎加入【技术岛】微信技术交流群,加微信13439975582【注明技术岛】

此条目发表在未分类分类目录。将固定链接加入收藏夹。

发表评论

邮箱地址不会被公开。 必填项已用*标注