这是什么
短信转发器这个东西一般是给备用卡,开一个保号套餐,然后用来接收验证码短信之类的东西来用的。市面上的方案大部分都是用一个安卓手机,开着有这类功能的一个软件来实现。本篇文章给大家另一个实现思路,使用4G cat1模组+wifi来实现相同的功能。
方案选择
因为4G cat1模组本身就是可编程的,所以有两种方案:
- 4G cat1模组自行处理接收短信+推送到服务器的功能。这个方案的问题在于:备用卡大部分为保号套餐,不带流量。所以此方案pass
- 外接一个wifi板子,使用wifi芯片通过AT命令控制4G cat1模组,并使用wifi芯片上传消息到服务器
本文采用的是第二种方案
准备材料
- 合宙
ESP32-C3开发板
简约款(合宙淘宝/拼多多官方店9.9元包邮的简约款即可,不用买经典款) - 合宙
Air780E开发板
(购买途径同上) - 焊接工具与必要的排针、排母(上面板子应该附赠排针的)
- 用来接收短信用的卡
- 2.4G Hz的wifi,用来联网
- 对接的服务器有几个选择
- LuatOS社区提供的推送服务器(点击GitHub图标即可登录,然后点击左边的
消息通道
新建一个推送方式) - server酱(免费用户每天只能发送五条)
- 你也可以对接自己的推送服务器,但是代码要自己稍微改改
- LuatOS社区提供的推送服务器(点击GitHub图标即可登录,然后点击左边的
硬件对接
由于Air780E需要按下开机键才能开机,而我们需要上电即开机,所以可以短接此处的焊盘,实现Air780E开发板上电即开机的功能:
接着,我们需要将Air780E开发板
与ESP32-C3开发板
的电源引脚
相连(5V与GND)、将ESP32-C3开发板
的UART1
与Air780E开发板
的MAIN_UART
相连,引脚如下(两组的实际位置是相同的):
分别将两块板子焊接上排针与排母,像这样(能一对一插上就行):
接着别忘了再给Air780开发板上插上SIM卡
全搞定后,直接对齐插上去就行了:
刷入固件与脚本
接下来需要为esp32c3刷入写好的固件与脚本
如果不会烧录,请先看一下esp32c3烧录教程
这里我们需要使用新版的V10xx
固件,可以直接去下载快照版固件
脚本可以在这个仓库下载:chenxuuu/sms_forwarding – GitHub
我们需要修改脚本中的notify.lua
,按注释要求改为自己的逻辑:
如果需要用自己的推送服务,还可以把下面的http请求改成自己服务器支持的格式
测试功能
烧录脚本和固件后,可以看到设备的日志,正常连上wifi与连上了基站
接下来我们发一条短信试试,脚本内部对长短信进行了处理,所以长短信也可以完美支持。可以看到设备端的日志:
同时我们收到了推送来的消息:
如果是server酱,那么是这样的:
原文始发于晨旭的博客 :50元内自制短信转发器(Air780E+ESP32C3)