Надсилання SMS з Shell
Ви можете надсилати SMS через shell, використовуючи AT-команди, отже цей процес легко автоматизується через скрипти.
Джерело: Надсилання SMS за допомогою AT-команд
Надсилання через AT-команди у shell
За допомогою shell можна надсилати SMS-повідомлення — підійде майже будь-який модем, хоча перевірити всі моделі неможливо. Завдяки AT-командам використовується базова функціональність модема, тому драйвери 3G не потрібні.
Основна послідовність дій для надсилання SMS виглядає так:
# Визначити пристрій модема, у цьому прикладі використовується /dev/ttyUSB0 echo -e "ATZ\r" >/dev/ttyUSB0 # параметр -e дозволяє обробку escape-послідовностей echo -e "AT+CMGF=1\r" >/dev/ttyUSB0 echo -e "AT+CMGS=\"123456789\"\r" >/dev/ttyUSB0 # замініть 123456789 на номер одержувача echo -e "Привіт, це SMS з shell\x1A" >/dev/ttyUSB0 # повідомлення має завершуватись \x1A (ASCII-код CTRL+Z)
Ось і все — SMS має надійти найближчим часом.
Скрипт для надсилання SMS
Оскільки SMS можна надіслати з shell, ми можемо автоматизувати цей процес за допомогою скрипта. Нижче приклад shell-скрипта для надсилання SMS:
#!/bin/sh # Пристрій модема DEV=/dev/ttyUSB0 # Номер одержувача DESTNUM="123456789" # Текст повідомлення SMS="Привіт!" # Затримка потрібна, щоб модем встиг обробити команди echo -e "ATZ\r" >$DEV sleep 1 echo -e "AT+CMGF=1\r" >$DEV sleep 1 echo -e "AT+CMGS=\"$DESTNUM\"\r" >$DEV sleep 1 echo -e "$SMS\x1A" >$DEV