Отправка СМС через мобильный телефон подключенный к CentOS 7.
Дано:
1. Относительно старый кнопочный телефон Samsung C3322 (за место телефона подойдет 3G/4G USB модем)
2. CentOS 7
3. Телефон подключен к ПК через USB кабель
Задача:
- Отправить SMS из консоли CentOS
Подготовка:
Подключаем телефон к ПК и вводим команду в консоле:
[ 0.000000] console [tty0] enabled[ 3.445402] 00:06: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A[ 18.542157] cdc_acm 7-2:7.1: ttyACM0: USB ACM device
Видим последнею строчку с портом подключения ttyACM0 где у нас телефон. Во многих инструкциях пишут порт ttyASM0, у меня именно ttyACM0.
Решение 1 - smstools
# rpm -Uvh http://mirror.pnl.gov/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
# yum install smstools -y
# vi /etc/smsd.conf
Редактируем конфигурационный файл smstools, вписываем порт ttyACM0
# Example smsd.conf. Read the manual for a descriptiondevices = GSM1logfile = /var/log/smsd/smsd.logloglevel = 7user = root# 3.1.5 introduced smart logging# once your configuration is OK, set log level lower (5 is good in most cases)smart_logging = yesinfofile = /run/smsd/smsd.workingpidfile = /run/smsd/smsd.pid[GSM1]device = /dev/ttyACM0incoming = nomode = newbaudrate = 19200init = ATsmsc = 77006429999cs_convert = yesreport = nomemory_start = 1#pin = 1111
Здесь я вписал основные настройки - порт ttyACM0 и номер СМС центра оператора Altel.
Выставляем права:
# chown -R root /var/spool/sms
# chmod -R 755 /var/spool/sms
Ставим демон smstools в автозагрузку:
# systemctl enable smstools
Теперь отправляем тестовое СМС сообщение:
# smssend 87085410000 "Privet Kizdar"
И смотрим логи:
# cat /var/log/smsd/smsd.log | grep "to send"
2016-02-14 11:06:13,6, GSM1: I have to send 1 short message for /var/spool/sms/checked/send_yirNjb
Видим запись - "I have to send 1 short message"-, СМС сообщение ушло.
Решение 2 - gnokii
# yum install gnokii -y
# vi /etc/gnokiirc
[global]# Set port to the physical port used to connect to your phone.port = /dev/ttyACM0model = AT
Меняем порт и режим работы.
Отправляем тестовое сообщение:
# echo "privet" | gnokii --sendsms 87085410000