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

目录

 一、引言与源码

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

 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)     

源码下载方式:

可以使用zip下载,也可以直接git clone拉下来

更新日志:

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

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

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

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

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

———— 2023.4.20 更新 - 课表模块的节次显示 ————

———— 2023.4.20 修复 - 纪念日模块的 YYYY 模式的小 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,jie是没有单引号的

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

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

节次:如果周一的高等数学在第一节课,周四的高等数学在第五节课,那么就填 day:[1, 4] ,jie:[1,5],每个位置一一对应

(5)课表模块结束语

位置如下,如果在课表模块结束时有什么想说的话,可以写在这,比如你有自己的课表小程序,就可以把小程序链接放在这,方便点击

(6)完整示例

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煎饼果子的博客

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

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

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

  • 10
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 26
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 26
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值