Raspberry Pi: GOIP
Previously used a USB SIM800-like communication module, operated the serial port with Python after connecting to the computer.
Subsequently used Raspberry Pi/ESP32 as the main controller.
The open-source asterisk
can not only serve as a VoIP server but also bridge PSTN for making and receiving calls and SMS messages.
The customized system for Raspberry Pi is raspbx
.
However, in the tutorial, the hardware list used is generally the HUAWEI 3G USB Dongle, some models have voice functionality (usually overseas).
One is brand limitation, and the models are outdated, only available in the second-hand market.
The second is that the 3G module can no longer meet the trend of 5G communication.
4G Communication Module
Currently, I purchased a Quectel 4G module–ec25
(global version), using Raspberry Pi 3B, and downloaded the compatible driver from quectel
.
Currently, it has been verified under normal voltage.
-
4G internet access is ok.
-
SMS sending and receiving is ok.
-
Voice driver is ok (but cannot make calls, 3B USB power supply voltage is insufficient).
Later, I purchased a UGREEN usbhub
, which at least solves the power supply issue during USB communication.
Application Scenarios
Under normal circumstances, the module itself is suitable for 4G internet access.
If there is a need to keep a number, creating an SMS gateway is also feasible. It can be made into a webhook/API/SDK, and can be integrated into e-commerce systems for SMS marketing notifications/alerts.
After solving the USB power supply voltage issue, making and receiving calls should also be fine (to be tested)
, VoIP based on UDP/TCP may be affected; if not in the same room and without a public IP, NAT issues need to be resolved. At least in current practice, ordinary proxy forwarding is still not quite effective, and hole punching is needed.
For overseas phone numbers, the minimum cost can be $5/month for a Tello physical number.