利用短信的通知實現短信內容轉發到微信
在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的通知使用權和通知管理權打開.
原文地址:http://taskerm.com/2020/03/05/forwarded-sms-to-wechat-by-tasker/
