Skip to content

本项目用于在你的朋友们生日前7天,3天以及当天给你自己的邮箱发送邮件作为提醒

License

Notifications You must be signed in to change notification settings

PhiFever/BirthdayReminder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

生日提醒机器人

本项目用于在你的朋友们生日前7天,3天以及当天给你自己的邮箱发送邮件作为提醒

项目构建

本项目使用的Python版本为3.11.6,本地运行需要添加与下文secrets同名的环境变量。

使用说明:

  1. 首先你需要一个开启了SMTP服务邮箱,用于发送提醒邮件,此处以使用QQ邮箱为例,首先需要在QQ邮箱的设置中开启POP3/SMTP服务并记录授权码,具体操作可以参考这里

  2. 在github上fork本项目,然后在你的仓库中点击Settings,进入Settings页面,点击左侧的Secrets->Actions,点击New repository secret,添加4个Secrets。

    1. 名为SENDER,值为你用来发送信息的邮箱地址。[email protected]
    2. 名为MAIL_PASS,值为你的邮箱授权码。
    3. 名为RECEIVER,值为你接收信息的邮箱地址。可以为多个邮箱,用英文分号分隔。[email protected];[email protected]
    4. 名为KEY,值为你用来加解密peopleInfo.yaml的密钥,可以为任意32 字节字符串。
    5. (可选)名为WEBHOOK,值为你飞书机器人的webhook地址,用于发送提醒信息。eg.https://open.feishu.cn/open-apis/bot/v2/hook/xxx 飞书机器人的配置可以参考这里,若使用关键词筛选,请添加关键词“生日”,“好友”。
    6. (可选,且只有在你配置了WEBHOOK且在飞书机器人采用签名校验方式进行安全设置时需要执行)名为SECRET,值为你飞书机器人的密钥
  3. 在peopleInfo.yaml文件中添加你的朋友们的生日信息,格式如下(可参照/config/peopleInfo_example.yaml):

    Name: 朋友的名字
    Birthdate: 朋友的生日,格式为yyyy-mm-dd,年份不知道的话填0000,月日必须填写正确。
    Calendar : 阴历(lunar)或者阳历(solar)
    Email: 朋友的邮箱地址,可选,不填写则不会在生日当天给朋友发送邮件。(目前不支持)
    

    例如:

    - Birthdate: '1879-2-24'
      Calendar: solar
      Email: ''
      Name: 爱因斯坦
    
  4. 在你的仓库中点击Actions,点击左侧的Birthday Reminder,点击右侧的Run workflow,点击Run workflow,即可开始运行测试。

  5. 成功后会在每天的早上北京时间6:30开始执行,每天执行一次,你可以在Actions中查看执行结果。若有符合条件的朋友生日快到了,则会在你的邮箱中收到提醒邮件。

  6. 如需修改相关信息,可以在本地添加环境变量KEY后运行decrypt.py解密peopleCipherInfo.yaml文件,修改后手动执行一次main.py,最后将得到的新的peopleCipherInfo.yaml上传到自己的仓库即可完成更新。

致谢

本项目基于birthdayBot修改而来,感谢原作者。

License

MIT License

Copyright (c) 2023 龙雀

About

本项目用于在你的朋友们生日前7天,3天以及当天给你自己的邮箱发送邮件作为提醒

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages