0%

为什么需要过滤规则

来信号码:1065528493

短信内容:【百度帐号】验证码:574948 。您正在使用登录功能,验证码提供他人可能导致百度帐号被盗,请勿转发或泄漏。

以转发短信内容为例,我们可能只想转发某个号码发来的短信或者内容只包含某些关键字的短信,这个时候就可以使用过滤规则,屏蔽掉我们不关心的短信。

使用方式

1.输入匹配信息的规则

根据以下示例,修改为自己需要的匹配规则:

  • 以1065开头的号码:^1065
  • 以493结尾的号码:493$
  • 包含验证码的内容:验证码
  • 包含验证码或百度的内容:验证码|百度
  • 同时包含验证码和百度的内容:(?=.*验证码)(?=.*百度)^.*$
  • 不包含验证码的内容:^((?!验证码).)*$
  • 不包含验证码或百度的内容:^((?!(验证码|百度)).)*$
  • 包含验证码或百度且不包含登录的内容:^((?!登录).)*(验证码|百度)((?!登录).)*$

2.选择过滤模式

根据转发需求,选择不通的过滤模式:

  • 忽略模式:忽略匹配规则,转发全部信息
  • 禁止模式:匹配到规则就不转发,没有匹配到才转发
  • 允许模式:匹配到规则不转发,没有匹配到就不转发

测试

在测试文本的输入框填写文本,点击测试表达式按钮,查看提示结果是否符合预期。

前言

为了方便开发岗位的用户,助手支持了接口API,通过username(app首页点击左上角查看)和auth_key(接口api鉴权key)鉴权来调用部分开放接口。

1
注意:接口API目前为实验功能,单个IP限制为300次/天,恶意使用将被封禁IP。新版本已支持device_id,cid优先级大于device_id,cid会随设备上下线而变化。

使用方法

重置auth_key

1
GET:https://api.smshelper.cozylife.tech/send/{{username}}/{{auth_key}}/reset

访问云端信息页面

为了方便用户使用,我们提供了访问云端信息的页面。

1
GET:http://smshelper.cozylife.tech/server-msg.html?username={{username}}&auth_key={{auth_key}}

获取云端信息列表

offset和limit为可选参数,用于分页。

1
GET:https://api.smshelper.cozylife.tech/send/{{username}}/{{auth_key}}/msg?offset=1&limit=10

获取在线设备列表(cid为临时id,重启App会改变,device_id为设备ID,不会改变)

1
GET:https://api.smshelper.cozylife.tech/send/{{username}}/{{auth_key}}/devices

发送设备通知

cid或device_id,通过在线设备列表接口获取;titile和content为推送的标题和内容。

1
GET:https://api.smshelper.cozylife.tech/send/{{username}}/{{auth_key}}/notify?cid={{cid}}&title={{title}}&content={{content}}

发送短信

cid或device_id,通过在线设备列表接口获取;phone和content为对方手机号码和短信内容;slot(可选参数)为发短信的卡槽,值为0或1,代表卡槽一和卡槽二。

1
GET:https://api.smshelper.cozylife.tech/send/{{username}}/{{auth_key}}/send-sms?cid={{cid}}&phone={{phone}}&content={{content}}&slot={{slot}}

短信列表

cid或device_id,通过在线设备列表接口获取;size(可选参数,默认为3)获取短信的条数。

1
GET:https://api.smshelper.cozylife.tech/send/{{username}}/{{auth_key}}/recent-sms?cid={{cid}}&size={{size}}

未接来电列表

cid或device_id,通过在线设备列表接口获取;size(可选参数,默认为3)获取未接来电的条数。

1
GET:https://api.smshelper.cozylife.tech/send/{{username}}/{{auth_key}}/missed-call?cid={{cid}}&size={{size}}

查询号码联系人名称

cid或device_id,通过在线设备列表接口获取;phone要查询的电话号码。

1
GET:https://api.smshelper.cozylife.tech/send/{{username}}/{{auth_key}}/contact-name?cid={{cid}}&phone={{phone}}

获取联系人列表

cid或device_id,通过在线设备列表接口获取。

1
GET:https://api.smshelper.cozylife.tech/send/{{username}}/{{auth_key}}/get-contact?cid={{cid}}

触发定位信息

cid或device_id,通过在线设备列表接口获取。

1
GET:https://api.smshelper.cozylife.tech/send/{{username}}/{{auth_key}}/location?cid={{cid}}

修改配置信息

cid或device_id,通过在线设备列表接口获取。支持修改的参数
【bool类型参数】
allow_sms:是否转发短信
allow_income_phone_send:是否转发未接来电
allow_notification_send:是否转发应用通知
allow_locate_send:是否转发定位信息
allow_battery_low_send:是否转发低电量消息
allow_battery_charge_send:是否转发充电提醒
allow_sms_send:开启或关闭短信转发
allow_email_send:开启或关闭邮箱转发
allow_web_send:开启或关闭邮箱转发
allow_wx_send:开启或关闭邮箱转发
allow_push_sms:开启或关闭通知转发
allow_script:开启或关闭脚本转发
allow_cheap_mode:开启或关闭省钱模式
allow_send_filter:开启或关闭过滤规则

1
2
POST:https://api.smshelper.cozylife.tech/send/{{username}}/{{auth_key}}/alter-config?cid={{cid}}
Body:{"allow_sms":true,"allow_income_phone_send":false}

注册企业微信获取企业ID

1.点击这里注册:https://work.weixin.qq.com/wework_admin/register_wx?from=myhome
2.获取网页底部的企业ID:https://work.weixin.qq.com/wework_admin/frame#profile

微信扫码关注,同步消息到微信

1.打开微工作台:https://work.weixin.qq.com/wework_admin/frame#profile/wxPlugin
2.找到【邀请关注】二维码并微信扫码关注

创建应用并获取AgentId和Secret

1.点击这里创建 https://work.weixin.qq.com/wework_admin/frame#apps/createApiApp
2.获取AgentId和Secret:https://work.weixin.qq.com/wework_admin/frame#apps

使用说明

1.javascript脚本运行环境为nodejs,依赖的网络请求工具为request(查看request文档)和axios(查看axios文档);
2.python脚本运行环境为python3,依赖的网络请求工具为requests(查看requests文档);
3.运行脚本的功能目前处于测试期,因此并不能保证稳定性;
4.该功能是为了方便用户自定义转发场景,请勿执行耗时操作或者用于恶意攻击,否则将作封号处理。

使用方法

脚本功能可以灵活实现所有方式的网络转发,比如转发到企业微信,实现自定义消息过滤等。

支持的内置变量

参考【网络转发-支持的内置变量】

GET请求示例

javascript

1
2
3
4
5
6
let url = 'http://localhost/test-get';
//如果url中包含中文等特殊字符,请使用encodeURI函数进行转码
url = encodeURI(url);
request(url, (error, response, body) => {
//你的业务代码
});

python

1
2
3
4
url = "http://localhost/test-get"
params = {"title":"{{title}}","content":"{{content}}"}
response = requests.get(url, params=params)
//你的业务代码

POST请求示例

javascript

1
2
3
4
5
6
7
const options = {
form: {"title":"{{title}}","content":"{{content}}"},
url: "http://localhost/test-post"
};
request.post(options, (error, response, body) => {
//你的业务代码
});

python

1
2
3
4
url = "http://localhost/test-post"
data = {"title":"{{title}}","content":"{{content}}"}
response = requests.post(url, data=data)
//你的业务代码

企业微信javascript示例

请修改脚本前三行变量【如何获取企业微信配置信息?】

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
//你的企业ID
const corpid = "wwfefea362ad89f874";
//创建应用后生成的Secret
const corpsecret = "WLviSlFLxbZA_X4qHhPuaxuyoWSDwYahyamEd-UhK6s";
//创建应用后生成的AgentId
const agentid = "1000002";
//要发送的内容
const content = "{{title}}\n{{content}}";

let url = `https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=${corpid}&corpsecret=${corpsecret}`;
//如果url中包含中文等特殊字符,请使用encodeURI函数进行转码
url = encodeURI(url);
request(url, (error, response, body) => {
//你的业务代码
const { access_token } = JSON.parse(body);
const options = {
url: `https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=${access_token}`,
form: JSON.stringify({
touser: "@all",
msgtype: "text",
agentid,
text: {
content
},
safe: 0
})
};
request.post(options, (error, response, body) => {
//你的业务代码
});
});

钉钉机器人python示例

1
2
3
4
5
6
url = 'https://oapi.dingtalk.com/robot/send?access_token=2a9c844e51472d58d8dcc6ec930ed6fd443af7465d1bcb349142ff6d3b4597'
body = {"markdown": {"title": "{{content}}","text": "### {{content}}\n> ##### {{title}}\n> ##### {{timestamp}}"},"msgtype": "markdown"}
headers={'Content-Type':'application/json'}
data = json.dumps(data)
requests.post(url=url, headers=headers, data=data)

“双卡助手”项目(原名短信转发助手),从2014年4月到2019年4月,已经无偿维护了5年。本软件旨在为多卡用户提供一个稳定可靠的便捷服务,但是在软件维护过程中,也花费了不少精力,每月也要支出服务器和短信验证费用,为了让项目能够持续稳定运行下去,应多数用户建议施行捐赠措施,希望您理解并给予支持。未捐赠用户每月可转发50条,捐赠激活账号后没有转发条数限制。捐赠方式不限于淘宝购买捐赠码(获取捐赠码后自助激活,【点击购买】),也可以支付宝转账激活【点击转账】

注意:

  • 获取捐赠码后请在小程序或软件内激活使用;
  • 激活后不限制登录设备数量,不限制转发次数;
  • 可转移激活信息到新帐号,换了账号也不用担心;
  • 如使用微信扫码支付,请备注账号,【点击扫码支付】

一键配置

一键配置目前支持超级通知/PushPlus/Qmsg/飞书机器人/Microsofe Teams/即时达/WXPusher/Server酱/bark「iOS」/钉钉机器人/企业微信群机器人/Telegram Bot,只需要将相应平台的KEY填入即可实现转发。

超级通知:

  • 微信搜索小程序:超级notify,登录即注册,
  • 在接口配置页面填写相关参数,
  • 获取并复制KEY
  • 粘贴KEY到网络转发一键配置,选择超级通知

WXPusher:

  • 【点击订阅】,微信扫描二维码,获取userId
  • 粘贴userId到网络转发一键配置,选择WXPusher

即时达:

Server酱:

bark「iOS」:

企业微信群机器人:

  • 电脑安装企业微信,创建并加入群聊
  • 在群设置->添加群机器人->新创建一个机器人->自定义机器人名称
  • 复制WebHook地址,格式类似“https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=KEY”
  • 粘贴webhook地址到网络转发一键配置,选择企微机器人

钉钉机器人:

  • 电脑安装钉钉,创建并加入群聊
  • 在群设置->智能群助手->添加机器人,添加「自定义机器人」
  • 安全设置->勾选加签并复制Secret备用
  • 复制webhook地址备用
  • 粘贴webhook地址到网络转发一键配置,选择钉钉机器人,粘贴刚刚复制的Secret

Microsoft Teams:

1
参考博客:https://blog.csdn.net/xxjjxx/article/details/102171374,将获取到的http链接填入助手的一键配置输入框。

内置代理

如果不方便访问Telegram等网站,可以开启内置代理。

支持的内置变量

网络转发支持模板变量,使用{{变量}}来包裹变量,例如{{content}}。支持的内置变量如下:

  • title:消息标题
  • content:消息内容
  • nickname:号码联系人(仅在短信和未接来电时候有值)
  • address:来电或短信号码
  • captcha:短信验证码
  • model:手机型号
  • custom_model:自定义手机型号
  • card_name:双卡卡槽标识
  • app_name:软件名称
  • username:当前登录的用户名
  • msg_app_name:消息软件名称
  • msg_app_pkg_name:消息软件包名
  • app_version:软件当前版本
  • timestamp:消息时间
  • udid:设备唯一识别号
  • cid:当前设备cid
  • msg_id:消息ID
  • msg_type:消息类型
  • extra:附加信息
  • sign: 签名参数(sign = md5(content=1&timestamp=2&title=3&udid=4))

使用方法

  • 一键配置方式(推荐小白用户使用此方式)

    一键配置目前支持超级通知/PushPlus/WXPusher/Server酱/bark「iOS」/企业微信群机器人/钉钉机器人/飞书机器人/Telegram Bot(直接使用,无需FQ)/Qmsg/即时达推送/Microsoft Teams,只需要将相应平台的KEY填入即可实现转发,获取KEY方式参考【获取一键配置参数】

  • GET方式

    以地址”http://www.baidu.com"作为示例,
    将 title 和 content 发送给远程地址:

    1
    网络地址:http://www.baidu.com?title={{title}}&content={{content}}

    第一个 title 是远程服务器接受参数的名字,可以根据需求随意修改。第二个 title 是助手内部变量的名字,不可修改。

  • POST方式

    以地址”http://www.baidu.com"作为示例,
    将 title 和 content 发送给远程地址:

    1
    2
    网络地址:http://www.baidu.com
    body:{"title":"{{title}}","content":"{{content}}"}

    body 为 post 请求提交给服务器的数据,使用json字符串形式,可以参考BEJSON

1.助手简介

“双卡助手”项目(原名短信转发助手),旨在为多卡用户提供一个稳定可靠的便捷服务。从2014年到2019年,已经无偿维护了5年,为了让项目能够持续稳定运行下去,应多数用户建议,于2019年4月6日开始施行捐赠措施。官网地址:https://smshelper.cozylife.tech,QQ群:809034221(防止骚扰和广告,设置了1元付费入群门槛)。

2.提示无权限?

由于加入了接口安全校验,如果遇到无权限的提示,请更新手机时间为最新的网络时间。

3.无法转发短信?

转发短信前,请开启必要的权限,参考【权限说明】

4.无法转发包含验证码的短信?

参考【无法转发验证码短信】

5.转发不稳定,开启软件才会转发,屏幕关闭就不行了?

参考【保证稳定运行的设置】【后台运行的设置】

6.网络转发方式和微信转发方式上使用wxpusher有什么区别?

两种方式都需要微信扫码关注,但扫的二维码是不一样的。网络转发访问二维码地址,微信转发是在微信转发页面右上角获取二维码。

7.什么是无图标版本?如何获取?

无图标版本为部分强迫症用户设计,安装后没有桌面图标显示,没有通知栏图标显示。【下载无图标版本】

8.没有界面的无图标版本如何打开?

方式一:手机拨号盘输入 *#*#1107#*#*
方式二:系统自带的浏览器打开网页地址:https://smshelper.cozylife.tech/launch.html
方式三:覆盖安装正常版本。

9.不捐赠如何免费使用?

为了让项目能够持续稳定运行下去,施行捐赠措施,以达到风险防控和防滥用的效果。如果想免费使用助手,可以参考以下几点:

  • 未捐赠用户每月有50条转发量;
  • 每天可以在小程序观看激励视频获取奖励;
  • 邀请新用户注册,新用户支付享9折优惠,您将收到25%的支付奖励,上不封顶;
  • 2014年4月1日-2019年4月1日期间,捐赠金额在10元及以上获得永久使用权限;
  • 在其他论坛博客对助手app的推广介绍,使用说明以及客观评价,热度较高者获得永久使用权限。

10.如何捐赠,同一账号可以登录几台设备?有转发条数限制吗?

捐赠请查看【捐赠支持】,为了方便大家使用,捐赠后没有转发数量的限制,账号不绑定设备,但是有登录设备数量限制。

11.捐赠后,为什么有效期没有变?

如果遇到捐赠后,App显示有效期没有改变,并不影响使用,也可以尝试重新启动App。

12.钉钉机器人无法转发?

配置钉钉机器人时候,如果使用关键字方式鉴权,请添加关键字【双卡助手】。

13.几种短信识别模式的区别?

模式一:转发更快,模式二:支持更多的网络转发参数,模式三:针对特殊机型。

14.设备列表没有在线设备,对转发是否有影响?

为了方便用户使用,我们对网页控制台进行了功能升级,android P及以上版本可能会遇到远程控制设备不在线的问题,临时解决方案有两种:亮着屏幕或者插着电源。原则上设备是否在线只影响远程控制,对转发无影响。

转发前配置

注意:由于安卓系统的碎片化,之后的讲解都以小米机型作为代表,其他机型做类似设置。
1.开启相应权限,参考【权限说明】
2.参考【保证稳定运行的设置】【后台运行的设置】

转发原理

  • 勾选了要转发的内容

    当有事件发生时->存储在本地消息队列->产生一条转发记录(首页转发记录可查看)
  • 选择了转发方式

    读取消息队列->开始转发->更新发送状态到转发记录(首页转发记录可查看)

如何转发短信内容

1. 设置要转发的内容

  • 要转发的内容:勾选短信
  • 给当前手机发短信,查看首页转发记录是否有信息
  • 如果没有信息,参考转发前配置,设置读取短信权限

2. 选择转发方式

  • 通过短信转发

    1.勾选使用短信转发,点击相应的设置按钮,设置要转发到的号码
    2.点击设置面板顶部的模拟转发,查看首页转发记录的转发状态
    3.未知状态(未完成或未开启转发),失败状态(检查发送短信的权限)

  • 通过邮箱转发

    1.勾选使用邮箱转发,点击相应的设置按钮,选择助手邮箱,设置要转发到的邮箱
    2.点击设置面板顶部的模拟转发,查看首页转发记录的转发状态
    3.未知状态(未完成或未开启转发),失败状态(助手邮箱每天的发信量很大,不稳定,建议配置第三方邮箱

  • 存储到助手服务器

    1.选择转发方式:勾选转发到云端(云端信息可以在App首页或者通过小程序查看)
    2.点击设置面板顶部的模拟转发,查看首页转发记录的转发状态

  • 使用网络转发(支持超级通知/PushPlus/Qmsg/飞书机器人/Microsofe Teams/即时达/WXPusher/Server酱/bark「iOS」/钉钉机器人/企业微信群机器人)

    1.勾选使用网络转发,点击相应的设置按钮,选择一键配置。参考【获取一键配置参数】,填写key。
    2.点击设置面板顶部的模拟转发,查看首页转发记录的转发状态
    3.未知状态(未完成或未开启转发),失败状态(错误日志可以在logger文件夹下查看)

  • 使用微信转发

    1.选择转发方式:勾选使用微信转发,点击相应的设置按钮,在微信转发配置页面右上角获取二维码,微信扫码后绑定微信到当前账号
    2.点击设置面板顶部的模拟转发,查看首页转发记录的转发状态

前言

安卓系统短信是没有区分普通短信和通知类短信的。国内厂商为了方便用户以及保护用户隐私,对包含验证码的短信做了不同的限制处理。所以,如果您不能转发包含验证码的短信,请尝试以下设置(其他系统也做类似的设置)。

操作(使用短信识别模式三)

进入转发短信设置,修改短信识别模式为【模式三】

操作(使用短信识别模式一和二)

小米系统

打开系统设置->更多应用->双卡助手->勾选通知类短信的权限

华为系统

打开信息->更多->设置->高级->关闭验证码安全保护

vivo系统

打开信息->点击左上角菜单->设置->隐私保护->关闭验证码安全保护

oppo系统

打开信息->设置->关闭验证码安全保护

短信软件

app首页->转发设置->默认短信
华为系统可能需要替换默认短信应用为第三方短信应用方可正常转发,请先下载任意一款短信App【下载短信App】,然后点击设置默认应用。