在360,魅族,坚果等品牌的手机中Tasker自带功能无法获取短信的消息内容,利用短信的通知则可以获取短信的内容,从而实现将短信转发到微信
利用短信的通知实现短信内容转发到微信
在Tasker中利用短信的通知实现短信内容转发到微信
之前的教程是利用Tasker自带的短信变量来实现的,这有一个无法解决问题:在360,魅族,坚果等品牌的手机中无法获取短信的消息内容。
利用短信的通知则可以获取短信的内容,并且对于 华为手机 来说也可以不用关闭短信验证码保护功能,所以相较于原来的方法更简单,方便。
应用通知的变量是一个本地数组变量 %evtprm() ,这个变量数组包含 %evtprm1,%evtprm2等本地变量,其中%evtprm2含有发件人信息,%evtprm3含有通知的具体消息内容。
操作步骤:1,注册企业微信;2,创建一个应用;3,在tasker中创建配置文件。
- 注册企业微信
- a. 点击这里注册:https://work.weixin.qq.com/wework_admin/register_wx?from=myhome 1分钟时间注册下就行,比较简单。
- b. 注册完成后打开:https://work.weixin.qq.com/wework_admin/frame#profile 复制下网页底部的企业信息中的企业ID备用。
- c. 点击微工作台https://work.weixin.qq.com/wework_admin/frame#profile/wxPlugin看到一个二维码,使用微信扫码关注,这样就可以使企业微信中收到的信息同步到微信上。
- 创建一个应用
- a.点击这里创建 https://work.weixin.qq.com/wework_admin/frame#apps/createApiApp 上传一个应用logo和自定义应用名字,其他默认。
- b.创建后打开:https://work.weixin.qq.com/wework_admin/frame#apps 可以看到在 "应用"中的"自建"里有个应用。点进去打开记录下 AgentId和Secret备用。
- 创建tasker配置文件
下面是创建图示的说明
点击事件
通知
点击所有者程序选中信息
新建任务
点击对号--确定
添加操作
操作类别
JavaScriptlet
填写文末代码
返回
点击对号保存
//下面的三个变量值需要修改
var ID = "ww3c67de248cf7ebad";
var SECRET = "KngBbhHiT055VSVzqLv0vYCadXE0ndrn5o41cmuB2o4";
var AGENTID = 1000002;
//获取消息
var pnum = global('PNUM');
//定义post方法
function postHttp(url, data)
{
var xhr = new XMLHttpRequest();
xhr.addEventListener("readystatechange", function ()
{
if (this.readyState === 4) {
//flash(this.responseText);
//显示返回消息,可删除本行
}
});
xhr.open("POST", url, false);
xhr.send(data);
return xhr.responseText;
}
//定义get方法
function getHttp(url)
{
var xhr = new XMLHttpRequest();
xhr.addEventListener("readystatechange", function ()
{
if (this.readyState === 4) {
//flash(this.responseText);
//显示返回消息,可删除本行
}
});
xhr.open("GET", url, false);
xhr.send();
return xhr.responseText;
}
//获取token
var tokenUrl = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=" + ID + "&corpsecret=" + SECRET;
var access_tokenJson = JSON.parse(getHttp(tokenUrl));
if (access_tokenJson.errcode == 0)
{
var access_token = access_tokenJson.access_token;
//发送消息(文本)
var content = "发件人: " + evtprm[1] + "\n收件人: " + pnum + "\n短信内容: " + evtprm[2];
var message = JSON.stringify(
{
"touser" : "@all", //@all代表发送给全体成员,也可指定某几个人,比如"a|b|c"
//"toparty" : "1|2",//部门id
//"totag" : "1|2",//标签id
"msgtype" : "text", "agentid" : AGENTID, "text" : {
"content" : content
},
"safe" : 0
});
var msgUrl = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=" + access_token;
postHttp(msgUrl, message)
}
注:1.为保证Tasker正常运行,请将Tasker加入电池白名单,即允许Tasker后台运行.允许Tasker自启.允许Tasker被第三方应用启动.
2.为保证配置正常触发,请将Tasker的通知使用权和通知管理权打开.