Skip to content

一个 Valine 的拓展应用,用来增强 Valine 的邮件通知。

License

Notifications You must be signed in to change notification settings

wiidede/Valine-Admin

 
 

Repository files navigation

valine-mail

valine-mail

本仓库是fork于 Druadach/Valine-Admin

可以追溯到 DesertsP/Valine-Admin

✨✨✨目的

  1. 更好的邮件通知
  2. 旧的唤醒策论需要LeanCloud实例的域名,但目前只能绑定备案后的域名,所以这里我直接在node程序中遍历未发送邮件的评论。
  3. ✨你无需再绑定域名(仅针对邮件功能)
  4. 你无需再创建定时任务!!!
  5. ✨服务器启动1分钟后尝试第一次扫描评论,然后每隔2分钟扫描一次评论,如果昨天的评论,都是通知过的,则结束循环
  6. ✨引入eslint
  7. ✨async/await function,所有云函数都改为异步,逻辑更合理
  8. ✨更详细的log输出
  9. 旧的策略依旧有效,但这不是本项目的目的

简介

此项目是一个对 Valine 评论系统的拓展应用,可增强 Valine 的邮件通知功能。基于 Leancloud 的云引擎与云函数。可以提供邮件 通知站长@ 通知 的功能,而且还支持自定义邮件通知模板。

点击查看演示

快速开始

首先需要确保 Valine 的基础功能是正常的,参考 Valine Docs

然后进入 Leancloud 对应的 Valine 应用中。

点击 云引擎 -> 设置 填写代码库并保存:https://github.com/wiidede/Valine-Admin

切换到部署标签页,分支使用 master,点击部署即可:

配置项

此外,你需要设置云引擎的环境变量以提供必要的信息,点击云引擎的设置页,设置如下信息:

详情

变量 示例 说明
SITE_NAME Deserts [必填]博客名称
SITE_URL https://panjunwen.com [必填]首页地址
SMTP_SERVICE QQ [新版支持]邮件服务提供商,支持 QQ、163、126、Gmail 以及 更多
SMTP_USER xxxxxx@qq.com [必填]SMTP登录用户
SMTP_PASS ccxxxxxxxxch [必填]SMTP登录密码(QQ邮箱需要获取独立密码)
SENDER_NAME Deserts [必填]发件人
SENDER_EMAIL xxxxxx@qq.com [必填]发件邮箱
ADMIN_URL https://xxx.leanapp.cn/ [建议]Web主机二级域名(云引擎域名),用于自动唤醒
BLOGGER_EMAIL xxxxx@gmail.com [可选]博主通知收件地址,默认使用SENDER_EMAIL
AKISMET_KEY xxxxxxxx [可选]Akismet Key 用于垃圾评论检测,设为MANUAL_REVIEW开启人工审核,留空不使用反垃圾

高级配置

垃圾评论检测

自定义邮件模板

自定义收件邮箱

自定义邮件服务器

Web 评论管理

Leancloud 休眠策略(必看)~~

开发指南

更新历史

  • 12.01 新增自助添加定时器方式。详见: LeanCloud 自带定时器[推荐方式]

  • 7.30 修复 @ 邮件通知出错 bug (需 Valine 1.3.0 支持),优化发件逻辑,站长发的评论不再收到邮件通知。

  • 7.7 兼容 valine v1.2.0-beta 版本对 at 的更改 点击查看

  • 7.1 修复 Web 后台登录安全 bug

  • 6.14 添加自定义邮件服务器功能. 点击查看

常见问题

为什么我收不到邮件?

  • 请确认评论时留下的邮箱不是环境变量里的 SMTP_USERTO_EMAIL 里的邮箱,原因详见 7.30 更新日志。
  • 请确认修改环境变量后已重启容器。
  • 对于 QQ / 网易 163 邮箱,请确认你输入的是 SMTP 的授权码,而不是登陆密码。QQ邮箱获取授权码 网易邮箱获取授权码

为什么我刚开始测试的时候是正常的,但后面的邮件没有通知?

请确认已针对 LeanCloud免费容器休眠策略配置了定时器,详见:LeanCloud 休眠策略

如何重启容器?

注: 更新新版本与更改环境变量均需要重启容器后生效。

About

一个 Valine 的拓展应用,用来增强 Valine 的邮件通知。

Resources

License

Stars

Watchers

Forks

Languages

  • JavaScript 57.3%
  • EJS 36.2%
  • CSS 6.5%