说明:距离该文章发布已经过很长时间,无法保证内容的时效性。

更新说明

2020.12.28更新:

由于酷推机器人被封杀,所以现在也可以通过Qmsg酱用javascript推送了!支持waline!参考文档:通过CoolPush实时推送hexo评论

代码如下:

<!-- Qmsg -->
<script>
var title2="msg=W4J1e's blog又有新评论啦~!\n"
var SCKEY_Qmsg="https://qmsg.zendee.cn/send/你的key"
var ValineButton=document.getElementsByClassName("vsubmit vbtn")[0];
function send_valine_Qmsg(){
var pagename=document.title;
var wz=pagename.indexOf('|');
var res=pagename.substring(0,wz);
var pageurl=document.URL;
var ptime=new Date();
var vnick=document.getElementsByClassName("vnick vinput")[0].value;
var vmail=document.getElementsByClassName("vmail vinput")[0].value;
var vlink=document.getElementsByClassName("vlink vinput")[0].value;
var veditor=document.getElementsByClassName("veditor vinput")[0].value;
var data="昵称:"+vnick+"\n邮箱:"+vmail+"\n网站地址:"+vlink+"\n当前页面:"+pagename+"\n评论内容:"+veditor+"\n跳转链接:"+pageurl+"\n评论时间"+ptime.toLocaleString();
var httpRequest = new XMLHttpRequest();//第一步:创建需要的对象
httpRequest.open('POST',SCKEY_Qmsg, true); //第二步:打开连接
httpRequest.setRequestHeader("Content-type","application/x-www-form-urlencoded");//设置请求头 注:post方式必须设置请求头(在建立连接后设置请求头)
httpRequest.send(title2+data);//发送请求
};

document.body.addEventListener('click', function(e) {
if(e.target.className.indexOf('vsubmit') === -1) {
return;
}
send_valine_Qmsg();
})

前言

在许久之前尝试过按照大佬们的文档在leancloud配置Qmsg酱的推送,但是一直没有成功,后来用js推送的方式也不太稳定。

此前日志报错代码:

QQ提醒失败: Request failed with status code 404

昨晚向Qmsg酱的开发者大佬@蝶衣 请教了一会,于是再度研究了一下大佬们的文档和代码,找到了头绪。

此内容基于大佬 @小康 的内容更新,由于大佬不再用valine评论系统,因此放弃了对该项目的维护,所以我folk过来之后决定长期维护下去。

废话不多说,下面开始准备折腾磨人的Qmsg酱吧!

认领一只Qmsg酱

1.打开Qmsg酱官网,可以选择QQ登陆

点击这里➡ Qmsg酱官网

2.选择你中意的Qmsg酱并且添加她为QQ好友

图形用户界面

3.添加你要接收推送的QQ号码

在选择Qmsg酱的旁边菜单添加,描述随意。

4.拼接你的接口地址

点击最右边的KEY,可以看到一长串字符,复制下来备用:

[key]

5.测试你的Qmsg是否认领成功

点击文档,查看接口地址,复制下来,把你的KEY粘贴在最后:

adr

然后将接口地址粘贴到浏览器地址栏,在末尾加上?msg= ,在等于后面随便输入文字,回车,如果成功你会看到Qmsg酱给你发来的消息:

test

在Leancloud创建应用

相信你有一个应用服务于valine的应用了,如果没有请参考Valine的文档

Valine作者文档: Valine快速开始

通过云引擎部署项目

1.在云引擎部署

deploy

在Git部署的地址栏里输入这个仓库地址,然后点击部署:

https://github.com/W4J1e/Hexo-Valine-ASPush

2.配置变量

最后记得保存(本文只谈Qmsg酱推送,其它如server酱、邮件推送和评论后台管理可以自行参考原作者的配置):

变量参数如下:

变量名 说明 示例
SITE_NAME [必填]网站名称 W4J1e’s blog
SITE_URL [必填] 博客地址,末尾不要加 / Https://w4j1e.xyz
COMMENT [可选] 评论 div 的 ID 名,直接跳转到评论位置 #post-comment
QMSG_KEY [必填] Qmsg酱的KEY xxxxx
QQ [必填] Qmsg酱发送的 qq,支持多个,用英文逗号分隔即可 123456789

示例(我初次配置的时候添加了邮件推送,一直没删):

env

3.运行部署

点击左侧“部署”,在git部署下面再次点击部署。

4.测试推送

打开你的博客,用另一个身份发一条评论测试一下吧。

qmsg

注:前一条推送的评论使用了原版的推送模板,我已在源码中去除这些可能无法正确显示的表情,新版推送很简洁,以后修改与否视情况而定。

后记

如果没有推送成功,请在leancloud中查看日志,并将报错内容反馈于我。

后续有时间了会逐渐完善这份文档和代码仓库,毕竟打工人,不像蝶衣大佬一样可以休!产!假!