目录

一、引言与源码

二、企业微信的注册与配置

1.注册

2.配置

(1)加入企业

(2)开启微信插件

(3)测试是否能在微信接收消息

3.创建机器人

三、推送天气模块

(1)注册

(2)创建项目

(3)获取key

四、配置文件

1.下载源码与查看文件

2.配置机器人Webhook

(1)复制粘贴Webhook

(2)示例

3.开头语模块

(1)打开推送开关

(2)输入数据

(3)示例如下:

4.课表模块

(1)打开推送开关

(2)设置开学时间

(3)设置推送第几天的课表

(4)填充课程列表

(5)完整示例

5.天气模块

(1)打开推送开关

(2)输入数据

(3)完整示例:

6.纪念日模块

(1)打开推送开关

(2)输入数据

(3)完整示例

7.结束语模块

(1)打开推送开关

(2)输入数据

(3)完整示例:

8.彩虹屁模块

9.艾特所有人

10.压缩!!

五、使用阿里云函数定时推送

1.注册与实名认证

2.开通云函数服务

3.创建云函数

4.上传代码包并测试

5.定时推送

6.查看运行日志

六、结语


一、引言与源码

注:企业微信推送比公众号推送更优——因为消息提示很明显,甚至还可以艾特ta来看

上一篇文章讲了如何使用企业微信进行推送,这里直接把推送的源码给大家,可以直接部署阿里云函数上面,免费进行每日定时推送。不需要拥有自己的服务器,免费就能定时推送

源码地址 :企业微信推送源码 (gitee.com)

源码下载方式:

更新日志:

———— 2023.1.25初版 - 可推送纪念日与天气 ————

———— 2023.2.16更新 - 新增了课表推送模块 ————

———— 2023.2.17更新 - 新增了  彩虹屁模块  ————

———— 2023.2.27 修复bug: 服务器时间不是北京时间 而导致推送错误 ————

———— 2023.3.02 修复 bug: 由于天气接口超时导致偶尔推送失败 ————

下面按照步骤进行,就能进行推送了

二、企业微信的注册与配置

这个步骤已经在上一篇有了,不过方便起见还是在这里再写一次

1.注册

每个人都可以注册很多个企业微信(免费版企业最大人数是200人,不认证不会影响api使用,足够我们个人使用了)

网址: 企业微信 (qq.com)  注册:

同时,手机或电脑下载企业微信客户端 

2.配置

(1)加入企业

注册成功后进入管理后台。让自己和想要推送的人加入企业

(2)开启微信插件

为了让我们的企业微信能直接在微信上看,需要开启微信插件

        注意,自己和想要推送的人,都需要扫下面那个码,关注微信插件(可以给微信插件设置一个好看的头像)

(3)测试是否能在微信接收消息

能够在 微信端和企业微信端 都收到公告就代表已经成功进入企业,且成功使用微信插件

3.创建机器人

打开企业微信手机客户端  ,进入全员群(只要你加入了企业,就会自动进入这个群),点击右上角进入详情,选择“群机器人”

然后进入,点击右上角“添加”,然后进入后再点右上角“新建”,然后输入机器人名字,即可新建一个机器人。建立成功后,会给你一个Webhook地址,保管好不要泄露 ,然后添加到群

这个Webhook地址复制好,下面会用到

三、推送天气模块

如果你不需要推送天气,这个步骤可以直接跳过

(1)注册

进入此网址,进行注册 注册 | 和风天气 (qweather.com)

按照提示,进行邮箱和手机号的验证  (这里我已经注册过了,无法重复注册,无法演示,见谅)

(2)创建项目

注册成功后,登录进入用户中心 (不知道地址的点这 用户中心 | 和风天气 (qweather.com))

然后点击控制台(如果点击控制台后提示需要完善信息,就去完善一下,再点击控制台,比如联系方式和密码等)

进入控制台后,点击 项目管理,选择添加项目 

每个人都能申请一个免费项目,输入名称选择“免费订阅”  (我已经有一个免费订阅了,所以这里是灰色的无法选择,你们选择免费订阅即可)

选择 Web API ,输入key名称  ,然后点击创建

(3)获取key

创建好后,回到项目管理页面,点击查看,然后复制key,保留备用,下面会用到

四、配置文件

1.下载源码与查看文件

在下面给的地址中下载源码 这里为了减少操作难度,使用下载zip进行演示 (除了使用下载zip的方式,也可以通过git拉取代码)

源码地址 :企业微信推送源码 (gitee.com)

下载方式:

下载好zip文件后解压使用记事本或编译器打开 input.js 文件(这里使用记事本进行演示)

打开文件,可以看到文件中有8个模块,机器人Webhook、开头语、课表、天气、倒数日、结束语、彩虹屁模块、是否艾特所有人,分别对应下图:  (机器人Webhook是用来发送消息的)

      对应关系 : 

注:还有一个彩虹屁模块没截图出来,在“结束语模块”和“艾特模块”之间

2.配置机器人Webhook

(1)复制粘贴Webhook

这个是必填项,有了这个东西,才能用机器人来发送消息

在上文的“企业微信”部分,我们拿到了机器人的 Webhook地址,拿过来复制到里面

在两个单引号的中间粘贴,注意不要删除掉引号了

(2)示例

配置好后如下图:

3.开头语模块

开头语的位置对应如下:(不需要开头语的可以跳过此步骤)

(1)打开推送开关

把open的内容改为 true (默认填的是false,不要加引号!)

(2)输入数据

在 content 里面输入你想要的开头语(在两个单引号中间输入,引号不能删掉)

可以输入emoji表情 (在CSDN搜索emoji,就能找到emoji大全了,复制想要的表情拿来用),还可以输入\n 来实现换行效果,可以使用空格来进行文本缩进

(3)示例如下:

4.课表模块

2023.2.16更新:新增课表模块

课表的位置对应如下:(不需要课表的可以跳过此步骤)

(1)打开推送开关

把open的内容改为 true (默认填的是false,不要加引号!)

(2)设置开学时间

格式为 [ 年, 月, 日 ],注意逗号需要是英文逗号

除此之外,开学时间需要为周一,比如 2023.2.20  ,如果开学时间不是周一的,需要往前推到周一 (假设是 2023.2.21 周二 开学,那么这里填 2023.2.20 周一  、 假设是2023.2.19 周日开学,那么这里填 2023.2.13 周一 )

(3)设置推送第几天的课表

目前只能选择今天或明天(也就是0 和 1),如果填了其它数字会导致未知错误

想推送今天的课表就填0,想推送明天的课表就填1 (不需要加引号)

(4)填充课程列表

下图给了两个示例,可以自行添加更多数据 (一个蓝色框就是一个课程数据,复制粘贴之后改内容即可)

注意,name和address是有单引号的,week和day是没有单引号的

考虑到一周会有多个相同的课程,week和day是数组

示例:比如在 第1~3周 的 周1和周3 上课,那么week填 [1,2,3] , day填 [1,3] 、、如果只在 第1~3周 的 周2 上课,那么 week填 [1,2,3] , day填 [2]   (注意数组的元素之间用英文逗号隔开)

(5)完整示例

5.天气模块

天气的位置对应如下:(不需要天气的可以跳过此步骤)

2023.2.16更新:新增课表模块,天气的位置将在课表后面

(1)打开推送开关

把open的内容改为 true (默认填的是false,不要加引号!)

(2)输入数据

然后输入你想要天气的地点  (可以是 省、市、县、国家 等,但是县级可能会出现重名导致获取错误)(在两个单引号中间输入,引号不能删掉,引号内不要有多余的空格)

然后输入我们上面获取到的和风天气的key (在两个单引号中间输入,引号不能删掉,引号内不要有多余的空格)

然后选择你想推送第几天的天气  0是今天,1是明天,2是后天 (目前仅支持这三天)

(3)完整示例:

6.纪念日模块

纪念日的位置对应如下:(不需要纪念日的可以跳过此步骤)

(1)打开推送开关

把open的内容改为 true (默认填的是false,不要加引号!)

(2)输入数据

然后输入纪念日列表,这里提供了两个示例  (一个大括号 { } 包裹的是一个示例,每个大括号的后面要加英文逗号

蓝色框框是示例1,紫色框框是示例2,在输入纪念日名称和日期的时候,在两个单引号中间输入,引号不能删掉,引号内不要有多余的空格,日期格式为  YYYY-MM-DD (比如 '2023-01-25' )

如果觉得两个不够用,就复制粘贴,想要几个复制几个,比如下图,复制蓝色部分

然后粘贴,改改name和time即可

(3)完整示例

7.结束语模块

结束语的位置对应如下:(不需要结束语的可以跳过此步骤)

建议结束语和彩虹屁选择其中一个即可,或者也可以自己发挥

(1)打开推送开关

把open的内容改为 true (默认填的是false,不要加引号!)

(2)输入数据

然后在 content 里面输入你想要的开头语(在两个单引号中间输入,引号不能删掉)

可以输入emoji表情 (在CSDN搜索emoji,就能找到emoji大全了,复制想要的表情拿来用),还可以输入\n 来实现换行效果,可以使用空格来进行文本缩进

(3)完整示例:

8.彩虹屁模块

建议结束语和彩虹屁选择其中一个即可,或者也可以自己发挥

彩虹屁示例:

文案位置图就不放了(没截,懒得截),文案的位置在 “结束语”的后面,“艾特所有人”的前面

如果需要彩虹屁,就把这个打开,不需要的可以跳过此步骤

输入true代表开启,输入false代表关闭  (不要加引号!

9.艾特所有人

如果需要艾特所有人,就把这个打开,不需要的可以跳过此步骤

输入true代表开启,输入false代表关闭  (不要加引号!

10.压缩!!

经过上面的步骤,已经完成了配置,现在要进行压缩(因为阿里云函数需要上传代码压缩包)

把这些全部都重新压缩为一个新的压缩包,命名为 push  (可以命名为其它,但是要记住名字,下面有讲名字的重要性)

压缩前记得确保刚刚修改的内容有保存好

五、使用阿里云函数定时推送

经过上面的步骤,已经完整的把自己专属的推送配置好了,现在只需要运行代码即可

电脑里装了NodeJS的同学,可以在cmd命令行中输入 node index.js ,然后打开指定网址,即可测试能否成功运行代码

为了实现每日定时推送,又不想买服务器,就可以使用免费的阿里云函数来进行定时推送

1.注册与实名认证

进入此网址 阿里云注册页 (aliyun.com)

打开支付宝,进行扫码,一键注册,并进行实名认证等

进入账号中心,实名认证  账号中心 (aliyun.com)

选择实名认证的方式,推荐第一种,很快就能弄好

2.开通云函数服务

认证成功后,打开这个网址,开通云函数服务 移动研发平台EMAS按量付费 (aliyun.com)

打钩后,点击立即开通

开通成功后,进入控制台 EMAS (aliyun.com)   按照以下步骤进行

然后打开平台服务

创建,记得在“支付方式”中选择 “套餐”,就能免费了(虽然按量收费也不贵,但是白嫖到底嘿嘿)

然后进行套餐的购买,勾选以下内容  (不要勾选自动续费,免费的套餐不能自动续费,如果打钩了,接下来的支付按钮就是灰色了,无法支付)

然后打钩服务协议,点击支付即可

再次点击支付成功开通

 点击进入控制台,等5-8分钟,空间构建需要时间,耐心等

3.创建云函数

创建好服务空间后,等5-8分钟,空间构建需要时间,耐心等  (可以刷新控制台页面来判断是否构建成功  控制台页面:EMAS控制台)

上图为“服务中”,就代表构建成功,然后点击此处进行创建云函数

输入函数名字,需要和上面我们重新压缩好的压缩包名称一样!!! (本文目录 四 - 8 的步骤)

然后进行其他配置

然后点击确定,即可创建成功

4.上传代码包并测试

创建函数成功后,点击管理

选择上传,找到我们刚刚重新压缩的那个压缩包  (再次提醒,压缩包的名字需要和云函数名字相同)

然后部署代码,尝试代码执行

直接点确定即可

 返回结果如下,代表代码执行成功返回结果不是这个?请检查input.js文件内是否出现错误,按照本文操作重新检查一次,修改后重新压缩上传!)

代码执行成功,但是手机没有收到消息? 请检查微信插件是否开通、是否启用机器人、是否配置成功机器人Webhook地址、是否将机器人加入群聊等  (按照本文操作重新检查一次

5.定时推送

代码测试成功后,即可设置定时推送

进入云函数管理页面

按照下图操作,进行配置

输入cron表达式,一共有6个位置,每个位置用空格隔开,可以输入数字等   * 代表任何时间都执行  (具体可以搜索cron表达式进行学习)

下图的代表 在每天的21:00:00 执行此函数,点击确定即可

比如你想每天的 早上 6:30:00 推送,就可以输入 0 30 6 * * *

比如你想 每个小时的30分 的时候都推送(一小时推送一次),就输入 0 30 * * * *

如果这一块还有不懂的可以评论区问我

到此,整个推送配置完毕!可以坐等设置的时间,等待自动定时推送

6.查看运行日志

如果发现到点了,但是没有推送,可以点击此处查看函数的运行日志

比如,如果发现是函数请求超时,尝试把定时触发的时间改一下(白天8点左右的时候,和风天气接口经常超时),或者修改函数的超时时间配置

六、结语

本文到此结束,如果想知道推送详细代码和原理的,可以查看我另一篇文章 :超详细 企业微信推送每日天气或课表(所有东西都可推送)_l煎饼果子的博客

也可以自己修改代码,来实现自己的自定义推送

写文不易,点点关注、赞和收藏

如果还是有不懂的地方,可以在评论区问我

企业微信推送天气、课表、纪念日、每日一句等(含源码和详细步骤)相关推荐

  1. 企业微信推送应用消息-图片(news)/图文(npmnews)/卡片/文字

    发送应用消息 前言 一.HTTP发送get.post方法 1.引入依赖库 2.get.post方法 二.构造发送json与企业微信返回类 1. 构造json对象 2.获取token 三.发送请求 总结 ...

  2. 【逗老师带你学IT】PRTG监控系统通过企业微信推送图文混排告警消息

    往期回顾: [逗老师带你学IT]PRTG监控系统通过企业微信推送告警消息 [逗老师带你学IT]PRTG HTTP API获取指定传感器流量图表图片 在往期的文章里,我们讲了 1.如何在PRTG产生告警 ...

  3. java 通过企业微信推送消息

    首先我们要知道企业微信推送消息的步骤,企业微信官方提供了多个API供我们调用,这里我们只讲我们需要的API: 企业微信的官方开放的API地址:https://work.weixin.qq.com/ap ...

  4. sqlserver 调用接口往企业微信推送消息

    其实解决问题的方法有很多,对于定时推送的功能来说,.net和java 都有自己的定时功能,但对于这些不熟悉,只熟悉sqlserver 的人来说,肯定希望从sqlserver下手.于是,我就尝试做了下, ...

  5. 企业微信推送消息延迟_通过企业微信发送提醒消息 支持markdown

    师太大佬: 最近一直在使用方糖推送,看到LOC大佬的企业微信推送感觉NB,隧稍作修改发上来分享给大家食用~ LOC大佬的GITHUB:https://github.com/kaixin1995/Inf ...

  6. 插件实现了钉钉和企业微信推送消息

    项目需要开发一个消息推送插件,今天整理一下做一个记录. 消息推送插件实现了钉钉和企业微信推送消息的功能. 首先介绍的是钉钉的实现方式: 1.需要在钉钉后台创建一个应用,并且需要记录下agentId.a ...

  7. 企业微信sdk调用,触发企业微信推送联系人列表

    企业微信sdk调用,触发企业微信推送联系人列表 /**      * 触发推送企业微信联系人列表任务      * @author wechat:happybabby110      * @blog ...

  8. Github Actions + 腾讯云函数实现微信推送天气、课表,上课提醒,每日晚安心语

    前言: 最近发现dy很火的一个小项目,刚好想学习一下微信公众号推送相关知识.基于别人的项目(只有天气推送,原作者忘了抱歉!),增加了一些自己的需求:1.每日推送天气的时候顺便推送当天的课程: 2.如果 ...

  9. 企业微信推送消息延迟_iPhone手机微信推送消息总是延迟怎么办?

    在有些时候我们的苹果手机屏幕页面总是有微信消失提示,但是我们打开微信页面刷新很久也看不到相应的消息记录,让我们总是没有办法及时回复一些好友消息.如果是一些工作上的关键信息就很麻烦了,毕竟现在微信已经深 ...

最新文章

  1. 只要7天 传统便利店就能免费升级无人超市
  2. 策略模式原来这么简单!
  3. java 编写线程公共类_002-java多线程工具类
  4. python如何执行代码漏洞_织梦dedecms最新远程代码执行利用脚本(python)
  5. SQL Server 2008 复习(一)
  6. ARM(IMX6U)ARM Cortex-A7中断系统(GPIO按键中断驱动蜂鸣器)
  7. python自动输入_使用Python和pywin32自动输入数据
  8. Linux常用命令(第二版) --文件管理命令
  9. composition java_阿里P7架构师通过源码浅析Java中的资源加载
  10. 怎样解决mysql最后一步提示未响应
  11. pythoncqt_python基础篇
  12. 想发SCI但自己没有原始数据?推荐 8 个好用的公共数据库
  13. 计算机绘图CAD实训指导,【精品】CAD计算机绘图实习指导书
  14. SequoiaDB 网络通信三剑客(maxsocketpernode,maxsocketperthread,maxsocketthread)
  15. 操作系统-IO与零拷贝【万字文,比较详细的解析】
  16. KDE-Graphics(KDE图形图像软件)先容
  17. C语言关键字 restrict(一)
  18. xlsx发现不可读取的内容,是否恢复此工作簿的内容?
  19. createjs初学-关于Ticker
  20. java取当前周期、月初至月末、季度初至季度末日期

热门文章

  1. 微信小程序-体验版(预览)接口请求失败/超时
  2. 荣耀智慧屏正在加速电视产业变革
  3. linux和windows木马排查思路
  4. 运算符号“?”的运用
  5. 20 个关于程序员的笑话,看懂了,你就不会羡慕工资高了!
  6. 猿人学-Android端爬虫比赛开赛
  7. 几种T卡座的检测方法
  8. google搜索圣经
  9. c语言中的线程管理,深入解析C++编程中线程池的使用
  10. 宁波大学计算机王老师,赵杰煜_宁波大学研究生导师信息