Надсилання SMS або Email через 3G/GSM модем

Цей метод є досить простим і використовує лише послідовний порт /dev/ttyUSB0 та AT-команди для надсилання SMS-повідомлення.

Працює практично з будь-якою версією OpenWrt та на будь-якому пристрої з підтримкою USB. Перевірено на WL-500gPv2, WL-520Gu та MPR-A8 (клон Hame A1 на базі Ralink).

Один із модемів — із dx.com, модель “7.2M HSDPA 3G SIM Card USB 2.0 Wireless Modem Adapter with TF Card Slot”, артикул 80032. Це клон Huawei E169.

Якщо у вас пристрій типу WL-520Gu з обмеженим обсягом флеш-пам’яті, доведеться самостійно зібрати OpenWrt з такими модулями (через `opkg` часто не встановлюється через нестачу пам’яті):

kmod-usb2 kmod-usb-ohci kmod-usb-serial kmod-usb-serial-option usbutils usb-modeswitch kmod-usb-storage kmod-scsi-core kmod-scsi-cdrom kmod-scsi-generic picocom

Після підключення модема OpenWrt розпізнає SCSI-диски та створює 4 пристрої `/dev/ttyUSB0`–`ttyUSB3`.

Підключення до модема через `picocom`:

picocom -b 9600 -f n -p n -d 8 -r /dev/ttyUSB0

Команда `AT<Enter>` повертає `OK`.

Після цього надсилання SMS виконується наступними командами:

AT+CMGF=1                [перемикає на текстовий режим]
AT+CMGS="+12345678900"  [вказує номер одержувача]
Текст повідомлення + <Ctrl-Z>

Після кількох секунд у відповідь має прийти щось типу `+CMGS: 18`.

Це все — SMS буде надіслано.

На пристрої WL-500gPv2 ttyUSB пристрої спочатку не з’являлися. Більшість модемів спочатку ідентифікуються як SCSI-пристрій (CD-ROM), і лише потім — як модем (у Windows драйвер автоматично перемикає режим). У Linux для цього потрібна утиліта `usb-modeswitch` (разом із `usb-modeswitch-data`).

Спочатку дізнайтесь ідентифікатори пристрою через `lsusb`, а потім виконайте:

usb-modeswitch -v <vendor_id> -p <product_id>

Після цього у `dmesg` мають з’явитися пристрої `/dev/ttyUSB0`–`ttyUSB3`, і все працюватиме, як описано вище.

Для деяких модемів процес перемикання може бути складнішим — шукайте приклади налаштування на форумах.

На MPR-A8 із власноруч зібраним прошиванням trunk OpenWrt, вивід на консоль показував, що SCSI-пристрої розпізнаються першими, а через ~30 секунд — ttyUSB0–ttyUSB3.

Після цього можна підключитися до `/dev/ttyUSB0` (наприклад, через `microcom`) і надіслати SMS, як раніше.

У деяких провайдерів (наприклад, T-Mobile) також можна надіслати email через SMS, використовуючи адресу одержувача “500”. Після команди `AT+CMGF=1` виконайте:

AT+CMGS="500"
myAddress@myProvider.com/Subject2/текст повідомлення<Ctrl-Z>

Тема повідомлення вказується через `/` або `#`.

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
  • Last modified: 2025/05/31 20:20
  • by vazaz