现在大部分手机都有定时短信功能。我在中学的时候用这个功能给朋友送生日祝福。
虽然当时QQ很流行,但我不记得为什么要用短信来发送生日祝福了。可能是因为当时的3G流量不便宜,也可能是因为当时学校的信号不好,也可能是因为计划中的免费短信太多了……
后来,微信出现了,我们进入了全民微信时代。短信基本上只用来查电话费和接收各种验证码。微信是IM的主战场。
但是定时短信功能一直让我难以忘怀,尤其是年纪大了,上班后的压力不小,真的不能熬夜,也不想熬夜到12:00 给别人送祝福。 .
但我也找到了一种使用微信发送定时消息的方法。
当然,这种方法也很程序员,也许这就是作为程序员的额外好处和诅咒。
让我们看看怎么做吧。
首先,我们需要登录微信网页版。至于为什么是网页版,是因为手机客户端和电脑客户端都不能轻易的执行我们自定义的脚本,而浏览器可以。
登录成功后,选择需要发送定时消息的好友或群组,会打开对话框,然后使用页面上的“Inspect Element”,切换到“Console”选项卡。
在“控制台”选项卡中,可以编写一个脚本来控制网页的逻辑,我们输入如下代码:
var appElement = document.querySelector('[ng-controller=chatSenderController]');
var $scope = angular.element(appElement).scope();
setInterval(function() {
var now = new Date();
var date = now.getDate();
var hour = now.getHours();
var min = now.getMinutes();
var second = now.getSeconds();
if (second == 0 && min == 30 && hour == 15) { // 发送时间
var output = "This is test message." // 发送内容
$scope.editAreaCtn = output;
$scope.sendTextMessage();
}
}, 1000);
我们可以根据自己的需要修改相应的时间和内容来自定义操作,完成写入回车,到了指定的时间就可以发送消息了:
如果我们需要发送表情怎么办?
也很简单,先在对话框中输入一个表情,然后使用“检查元素”功能找到表情的代码:
比如这里我选择了“
”,然后你可以从“元素”选项卡中看到它的代码:
class="qqemoji qqemoji36" text="[衰]_web" src="/zh_CN/htmledition/v2/images/spacer.gif">
将上面代码中发送的内容替换为表情符号的代码:
var appElement = document.querySelector('[ng-controller=chatSenderController]');
var $scope = angular.element(appElement).scope();
setInterval(function() {
var now = new Date();
var date = now.getDate();
var hour = now.getHours();
var min = now.getMinutes();
var second = now.getSeconds();
if (second == 0 && min == 30 && hour == 15) { // 发送时间
var output = "" // 发送内容
$scope.editAreaCtn = output;
$scope.sendTextMessage();
}
}, 1000);
这里需要注意的是,由于表达式中包含"符号,所以会出现语法冲突,所以我们需要在对应的"前加上转义字符\来进行转义,或者将对应的"改为':
var appElement = document.querySelector('[ng-controller=chatSenderController]');
var $scope = angular.element(appElement).scope();
setInterval(function() {
var now = new Date();
var date = now.getDate();
var hour = now.getHours();
var min = now.getMinutes();
var second = now.getSeconds();
if (second == 0 && min == 30 && hour == 15) { // 发送时间
var output = "" // 发送内容
$scope.editAreaCtn = output;
$scope.sendTextMessage();
}
}, 1000);
回车后,可以看到表情包也按时发送了:
需要注意的几点:
一定要保持网络畅通(这不是废话)。
定时消息发送到当前打开的会话窗口。
脚本读取的是当地时间,所以请以电脑时间为准。其实最好的办法就是设置同步网络时间,既方便又避免不必要的麻烦。
macOS需要注意是否在省电时间范围内,Windows笔记本也需要注意这种情况。
那你就可以给你最喜欢的TA送上最准时的祝福啦~
喜不喜欢
我在这里