别人家的男朋友安排
不需要搭建服务器,不需要代码,通过GitHub Actions就可以实现。
当然会一点代码的,你也可以修改成自己的模板。
此方法也适用于普通用户关注微信公众号之后向他们推送消息。
废话不多说,直接开始
1.申请一个微信公众平台测试号
使用测试号除了没有支付权限外,其他权限全部都有,用起来非常方便
申请方式
- 可以直接点击下方测试号链接
微信公众号平台测试号申请入口
- 或者搜索微信公众平台测试号,去申请,如下图
2.测试号
-
appID和appsecret
-
申请成功后,页面上会生成测试号二维码用户扫码,然后就会生成user_id。
-
创建模板
点击新增测试模板,标题可以自定义方便自己看,不会发送给用户;
模板的内容除了中文,还可设置参数,但要注意参数格式:{{开头_DATA}}
,DATA要大写。
3.进入作者github仓库,点击fork,创建到自己的仓库下,如下图:
作者github仓库:点击跳转
4.设置变量
如图,切换到Settings -> Secrets -> Actions,点击New repository secret,如下图,注意大写
APP_ID:
公众平台 appID
APP_SECRET:
公众平台 appSecret
TEMPLATE_ID:
模板 ID
USER_ID:
多个接收人的OpenID可用换行分隔
BIRTHDAY:
多个接收人的倒数日(原生日),换行分隔;
格式如 05-20,1999-11-04 这种
START_DATE:
正数日期,格式:2008-08-08
CITY:
准确到地级市,不要加市。比如:北京、天津、郑州。
TIPS:
- 第一次登录微信公众平台测试号给的 app secret 是错误的,刷新一下页面即可,现在应该是修复了;
- 生日的日期格式是:
05-20
,纪念日的格式是2022-08-09
,请注意区分。
城市请写到地级市,比如:北京,广州,承德 - 变量中粘贴的各种英文字符串不要有空格,不要有换行,除了模板之外都没有换行
- Github Actions 的定时任务,在 workflow 的定义是 0 0 * * *,是 UTC 时间的零点,北京时间的八点。但是由于 Github 同一时间任务太多,因此会有延迟。
5.启用自己项目下的Action,运行代码
启用后可以直接运行,看看女朋友的手机有没有收到推送吧! 这个定时任务是每天早晨9点多左右会推送,如果会编程的同学可以自己自定义一些东西~
6.最终的测试效果
7.代码操作
如果你有一个自己的服务器,或是不会关机的电脑,可以通过如下方式使用代码。本项目使用Python3。
以下步骤面向具有一定编程基础的同学,需要了解git和Python的基本使用。如果你是纯小白,建议参考上面的教程通过Github Actions来使用本项目。
如果仍想尝试通过代码方式运行,请先安装好git和Python3,git的安装教程可参考这里,Python3的安装可参考这里。
- 首先clone本仓库:
git clone https://github.com/rxrw/daily_morning.git
- 安装依赖:
cd daily_morning
pip3 install -r requirements.txt
-
根据示例完成配置文件
config.yaml
。app_id
、app_secret
、user_ids
和template_id
的配置可参考使用说明
-
运行代码
timer.py
,即可实现每日定时发送:
python3 timer.py
附:当然,如果你有多个女朋友,你可以在微信公众平台上为她们设置不同的模板,并且为每个人分别建立一个配置文件,例如:xiaomei.yaml
和xiaohong.yaml
(注意在配置时千万不要写错了user_ids
)。然后同时运行两个服务:
python3 timer.py --cfg xiaomei.yaml &
python3 timer.py --cfg xiaohong.yaml &
原作者:rxrw 给别人家的女朋友发早安 daily_morning