Taker短信转发到HTTP POST接口的配置

需求

手机收到任意短信后,自动将短信相关内容转发到如下接口:

http://192.168.3.6:7088/api/sms?client=SMS.X1

0. 安卓手机安装 Tasker

1. 添加配置文件,+添加配置文件(取名“转发任意短信”) -> 事件 -> 电话 -> 收到短信 -> 类型选短信(我不需要彩信),发件人和内容为空 -> 退出将自动保存

 

 

2. 添加任务,根据提示为配置文件新建任务,点击 + 添加操作(取名 smsToServer) -> 网络 -> HTTP Request,参数设置如下图

 

我的API接口是接收 post 表单数据,所以我添加了header字段 Content-Type: application/x-www-form-urlencoded,如果不设置好像默认是JSON数据

查询参数clientId冒号后面不要有空格

Body中用到的几个短信变量含义:

%SMSRN 发件人姓名
%SMSRF 发件人号码
%SMSRB 短信内容
%SMSRD 发件日期
%SMSRT 发件时间

可以看到配置文件与任务已经联动,将右上角的解锁开关打开即可监听短信并转发

3. 接口我是用的 Asp.net core webapi,这样写的Action

// POST: api/sms?machineId=SMS.X1
[HttpPost]
public async Task<ActionResult> Post(string clientId, [FromForm]SMSPushData pushData)
{
    //...
}

SMSPushData

[Serializable]
    public class SMSPushData
    {
        public string SMSN { get; set; }
        public string SMSF { get; set; }
        public string SMSD { get; set; }
        public string SMST { get; set; }
        public string SMSB { get; set; }
    }

 

posted @ 2020-05-05 23:25  felixnet  阅读(1258)  评论(0编辑  收藏  举报