利用短信通知的方式在Tasker中实现收到Android手机短信自动转发到微信

利用短信的通知实现短信内容转发到微信

在Tasker中利用短信的通知实现短信内容转发到微信

之前的教程是利用Tasker自带的短信变量来实现的,这有一个无法解决问题:在360,魅族,坚果等品牌的手机中无法获取短信的消息内容。
利用短信的通知则可以获取短信的内容,并且对于 华为手机 来说也可以不用关闭短信验证码保护功能,所以相较于原来的方法更简单,方便。
应用通知的变量是一个本地数组变量 %evtprm() ,这个变量数组包含 %evtprm1,%evtprm2等本地变量,其中%evtprm2含有发件人信息,%evtprm3含有通知的具体消息内容。

操作步骤:1,注册企业微信;2,创建一个应用;3,在tasker中创建配置文件。

  1. 注册企业微信
  1. 创建一个应用
  1. 创建tasker配置文件
    下面是创建图示的说明

新建配置

事件

界面

通知

点击事件

通知

通知

信息

点击所有者程序选中信息

 

新建任务

新建任务

对号

点击对号--确定

添加操作

添加操作

代码

操作类别

JavaScriptlet

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的通知使用权和通知管理权打开.

原文地址:http://taskerm.com/2020/03/05/forwarded-sms-to-wechat-by-tasker/

基于Android 10 ,EMUI 系统测试

 

posted @ 2020-03-06 14:00  记忆水晶  阅读(13194)  评论(3编辑  收藏  举报