這是什么???Air780E+ESP32C3自制的短信轉發器
短信轉發器一般是給備用卡,開一個保號套餐,然后用來接收驗證碼短信之類。市面上的方案大部分都是用一個安卓手機,開著有這類功能的一個軟件來實現。
本篇文章給大家另一個實現思路——使用4G Cat.1模組外接Wi-Fi來實現相同的功能。
自制短信轉發器
因為4G Cat.1模組本身就是可編程的,所以有以下兩種方案,本文采用的是第二種方案。
第一種:
4G Cat.1模組自行處理接收短信+推送到服務器的功能。
這個方案的問題在于,備用卡大部分為保號套餐,不帶流量。所以,此方案PASS。
第二種:
外接一個Wi-Fi板子,使用Wi-Fi芯片通過AT命令控制4G Cat.1模組,并使用Wi-Fi芯片上傳消息到服務器。
一、主要準備工作
1. 合宙Air780E開發板
合宙低功耗全網通Cat.1新品Air780E開發板,上周轟轟烈烈的9.9元拼團活動上車近萬人,不少小伙伴都陸續收到板子了,正好整起來。
2. 合宙ESP32-C3開發板簡約款
合宙淘寶/拼多多官方店9.9元包郵的簡約款即可,不用買經典款。支持Wi-Fi,功能多易上手。
4. 用來接收短信用的卡;
5. 2.4G Hz的Wi-Fi,用來聯網;
6. 對接的服務器有幾個選擇:
LuatOS社區提供的推送服務器
點擊GitHub圖標即可登錄,然后點擊左邊的消息通道新建一個推送方式。
server醬
注:免費用戶每天只能發送五條。
你也可以對接自己的推送服務器,但是代碼要自己稍微改改。
二、硬件對接實操
由于Air780E開發板需要按下開機鍵才能開機,而我們需要上電即開機,所以可通過短接此處的焊盤,實現Air780E開發板上電即開機的功能:
接著,我們需要將Air780E開發板與ESP32-C3開發板的電源引腳相連(5V與GND)、將ESP32-C3開發板的UART1與Air780E開發板的MAIN_UART相連,引腳如下(兩組的實際位置是相同的):
分別將兩塊板子焊接上排針與排母,像這樣(能一對一插上就行):
特別提醒:別忘了給Air780開發板插上SIM卡。
全搞定后,直接對齊插上去就行了。對接后兩側如下圖所示:
三、刷入固件與腳本
接下來需要為ESP32-C3刷入寫好的固件與腳本。
這里我們需要使用新版的V10xx固件,注意更新版本。
固件下載:
LuaTools所在的文件夾,resource文件夾內選擇ESP32C3的v10xx最新固件。
我們需要修改腳本中的notify.lua,按注釋要求改為自己的邏輯:
手機橫屏/上下滑動查看完整代碼:
--你的wifi名稱和密碼
local wifiName = ""
local wifiPasswd = ""
--這里默認用的是LuatOS社區提供的推送服務,無使用限制
--官網:https://push.luatos.org/ 點擊GitHub圖標登陸即可
--支持郵件/企業微信/釘釘/飛書/電報/IOS Bark
--是否使用server醬,false則使用LuatOS社區提供的推送服務
local useServerChan = false
--LuatOS社區提供的推送服務 https://push.luatos.org/
--這里填.send前的字符串就好了
--如:https://push.luatos.org/ABCDEF1234567890ABCD.send/{title}/{data} 填入 ABCDEF1234567890ABCD
local luatosPush = "ABCDEF1234567890ABCD"
--server醬的配置,免費用戶每天僅可發送五條推送消息
--server醬的SendKey,如果你用的是這個就需要填一個
--https://sct.ftqq.com/sendkey 申請一個
local serverKey = ""
如果需要用自己的推送服務,還可以把下面的http請求改成自己服務器支持的格式。
四、測試短信功能
燒錄腳本和固件后,可以看到設備的日志,正常連上wifi與連上了基站:
手機橫屏/上下滑動查看完整代碼:
[time] I/user.air780 got recv AT
[time] I/user.air780 check sim card
[time] D/wlan esp_wifi_init ret 0
[time] D/wlan wifi event 2
[time] D/wlan esp_wifi_start ret 0
[time] D/wlan esp_wifi_connect ret 0
[time] I/user.wlan wait for IP_READY
[time] I/user.air780 got recv AT+CPIN?
[time] I/user.air780 configrate
[time] D/wlan wifi event 4
[time] D/wlan wifi station start
[time] D/wlan wifi connected!!!
[time] I/user.air780 got recv AT+CMGF=0
[time] D/wlan ip event 0
[time] D/wlan IP_EVENT_STA_GOT_IP 192.168.0.128
[time] I/user.wlan ready !!
[time] I/user.notify wait for a new sms~
[time] I/user.air780 got recv AT+CSCS="UCS2"
[time] D/sntp time sync done
[time] I/user.air780 got recv AT+CNMI=2,2,0,0,0
[time] I/user.air780 wait for connection
[time] I/user.air780 got recv AT+CGATT?
[time] I/user.air780 connection status true
[time] I/user.air780 connected! wait sms
接下來我們發一條短信試試,腳本內部對長短信進行了處理,所以長短信也可以完美支持。可以看到設備端的日志:
手機橫屏/上下滑動查看完整代碼:
[time] I/user.air780 connected! wait sms
[time] I/user.sms recv 13112341234 這是一條長短信【領5G流量活動推薦】尊敬的客戶:您目前的手機支持5G網絡,現邀請您參與“用5G網絡,領5G流量”活動。即日起,使用5G 22/10/28,1138+32 true 2 1
[time] I/user.air780 found a long sms 2 1
[time] I/user.sms recv 13112341234 網絡流量,次月即可領取流量。多用多領,最高可領取5GB國內通用流量。活動參與請點擊xxx我們百倍努力,只為您10分滿意。【中國移動】 22/10/28,1138+32 true 2 2
[time] I/user.air780 a part of long sms 2 2
[time] I/user.air780 got a long sms 這是一條長短信【領5G流量活動推薦】尊敬的客戶:您目前的手機支持5G網絡,現邀請您參與“用5G網絡,領5G流量”活動。即日起,使用5G網絡流量,次月即可領取流量。多用多領,最高可領取5GB國內通用流量。活動參與請點擊xxx我們百倍努力,只為您10分滿意。【中國移動】
[time] I/user.notify got sms 13112341234 這是一條長短信【領5G流量活動推薦】尊敬的客戶:您目前的手機支持5G網絡,現邀請您參與“用5G網絡,領5G流量”活動。即日起,使用5G網絡流量,次月即可領取流量。多用多領,最高可領取5GB國內通用流量。活動參與請點擊xxx我們百倍努力,只為您10分滿意。【中國移動】
[time] I/http HTTP POST
[time] D/http esp_http_client_perform 0
[time] I/user.notify pushed sms notify 200 {"code":0,"message":"","data":{"pushid":"xxxxxx","readkey":"xxxxxxxx","error":"SUCCESS","errno":0}} 13112341234 這是一條長短信【領5G流量活動推薦】尊敬的客戶:您目前的手機支持5G網絡,現邀請您參與“用5G網絡,領5G流量”活動。即日起,使用5G網絡流量,次月即可領取流量。多用多領,最高可領取5GB國內通用流量。活動參與請點擊xxx我們百倍努力,只為您10分滿意。【中國移動】
[time] I/user.notify wait for a new sms~
同時我們收到了推送來的消息:
如果是server醬,那么是這樣的:
-
轉發器
+關注
關注
0文章
46瀏覽量
12741 -
模組
+關注
關注
6文章
1502瀏覽量
30463
發布評論請先 登錄
相關推薦
評論