当前分支为新方案,老方案请前往luatos分支。 该项目可能不支持电信卡(CDMA),具体请自测。
本项目旨在使用低成本的硬件设备,实现短信的自动转发功能,支持多种推送方式同时启用。
视频教程:B站视频
- 支持使用通用AT指令与模块进行通信
- 开启后支持通过WEB界面配置短信转发参数、查询当前状态
- 支持多达5个推送通道同时启用,每个通道可独立配置
- 支持将收到的短信转发到指定的邮箱
- 支持通过WEB界面主动发送短信,以便消耗余额
- 支持通过WEB界面进行Ping测试,以极低的成本消耗余额
- 支持长短信自动合并(30秒超时)
- 支持管理员短信远程发送短信和重启设备
支持以下7种推送方式,可同时启用多个通道:
| 推送方式 | 说明 | 需要配置 |
|---|---|---|
| POST JSON | 通用HTTP POST | URL |
| Bark | iOS推送服务 | Bark服务器URL |
| GET请求 | URL参数方式 | URL |
| 钉钉机器人 | 企业群通知 | Webhook URL,可选Secret加签 |
| PushPlus | 微信公众号推送 | Token |
| Server酱 | 微信推送服务 | SendKey |
| 自定义模板 | 灵活的JSON模板 | URL + 请求体模板 |
- POST JSON:
{"sender":"发送者号码","message":"短信内容","timestamp":"时间戳"} - Bark:
{"title":"发送者号码","body":"短信内容"} - GET请求:
URL?sender=xxx&message=xxx×tamp=xxx(自动URL编码) - 钉钉机器人: 文本消息格式,支持加签验证
- PushPlus: 使用Token推送,支持HTML格式
- Server酱: 使用SendKey推送,支持Markdown格式
- 自定义模板: 使用
{sender}、{message}、{timestamp}占位符
| 状态信息 | 主动ping |
|---|---|
![]() |
![]() |
- ESP32C3开发板,当前选用ESP32C3 Super Mini,¥9.5包邮
- ML307R-DC开发板,当前选用小蓝鲸ML307R-DC核心板,¥16.3包邮
- 4G FPC天线,¥2,与核心板同购
当前成本约¥27.8
ESP32C3 与 ML307R-DC 通过串口(UART)连接,接线如下:
ESP32C3 Super Mini ML307R-DC核心板
┌───────────────────┐ ┌─────────────────┐
│ │ │ │
│ GPIO3 (TX) ─┼───►│ RX │
│ │ │ EN ─┼─┐
│ GPIO4 (RX) ◄┼────┤ TX │ │
│ │ │ │ │
│ GND ─┼────┤ GND │ │
│ │ │ │ │
│ 5V ─┼────┤ VCC (5V) 5V ─┼─┘
│ │ │ │
└───────────────────┘ └─────────────────┘
│ │
│ SIM卡槽 │
│ (插入Nano SIM) │
│ │
│ 天线接口 │
│ (连接4G天线) │
└─────────────────┘
可通过USB连接ESP32C3进行编程和供电,正常工作时,ESP32C3的虚拟串口数据将直接被转发到ML307R-DC,方便调试。
- ESP32C3运行自己的
Arduino固件,负责连接WiFi和接收ML307R-DC发送过来的短信数据,然后转发到指定HTTP接口或邮箱 - ML307R-DC运行默认的AT固件,不用动
需要在Arduino IDE中单独安装这些库:
- ReadyMail by Mobizt
- pdulib by David Henry
需要在Arduino IDE中安装ESP32开发板支持,参考官方文档,版型选MakerGO ESP32 C3 SuperMini。


