Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

WNAM позволяет осуществлять отправку идентификационных СМС абонентам, используя установленный в сервер USB-модем GSM модем, и утилиту gammu.

Warning
Внимание: скорость отправки СМС при этом достаточно

...

низкая: не более 1 СМС за 3 секунды.

...

Это следует учитывать при планировании нагрузки на систему. Данный метод может быть рекомендован только в целях тестирования WNAM и при низкой нагрузке (

...

количество авторизаций).

Для настройки этого метода необходимо в меню "Конфигурация-Авторизация" " выбрать "Гостевая авторизация" → "Авторизация" и в поле "Провайдер СМС" указать "Локальный сервис gammu (модем)":

Image RemovedImage Added

Поддерживаются WNAM поддерживает любые модемы, которые распознаются ОС Linux в качестве модемов, то есть доступны в виде портов типа /dev/ttyUSB0. Из моделей подойдут фактически любые "бытовые" устройства. Например, отмечено отсутствие проблем с Huawei Technologies Co., Ltd. E169/E620/E800 HSDPA Modem. Возможно также Также возможно использование модема в сочетании с виртуализацией VMware ESXi, путем "проброса" USB устройства вовнутрь виртуальной машины.

Warning
Внимание!

...

Необходимо переключить модем в режим "простой модем" при помощи утилиты usb_modeswitch, если

...

используемый модем представляется серверу устройством типа USB Flash или CD.

После переключения модем можно проверить на "отзывчивость" рекомендуется проверить отклик модема при помощи AT-команд и утилит cu или minicom. Модем должен корректно отвечать на команды, заканчивая вывод символами "ОК". Дальнейшая настройка взаимодействия проводится при помощи утилиты gammu. Это стандартное средство организации взаимодействия приложений (таких как WNAM) , и GSM-модемов, подключенных через com/usb порт сервера.

Возможны два сценария работы - через gammu или через gammu-smsd.

1. Взаимодействие через gammu

Этот метод подходит, если требуется только редкая отправка СМС. При этом на каждый запрос WNAM на отправку СМС производится вызов утилиты, инициализация модема, отправка СМС , и отключение от модема.

Warning
Внимание! Отправка одной СМС таким способом может занимать порядка 10 секунд.

УбедитесьНеобходимо убедиться, что в /etc/wnam.properties или в /home/wnam/wnam.propertes прописан параметр:

gammu_path=/usr/bin/gammu

Затем установите утилитуследует произвести установку утилиты:

apt-get install gammu

Запустите Далее запустить поиск устройства:

gammu-detect

и Затем произвести настройку устройства:

gammu-config

При этом создастся После выполненных действий будет создан файл конфигурации /root/.gammurcПросмотрите его, скопируйте Его необходимо скопировать в /etc/gammurc и отредактируйте, при необходимости отредактировать, чтобы он имел следующий вид:

[gammu]
port = /dev/ttyUSB1
model = huawei E3372s
connection = at9600
synchronizetime = no
logfile =
logformat = nothing
use_locking =
gammuloc =

Попробуйте Для проверки работоспособности рекомендуется выполнить тестовую отправку СМС из командной строки:

gammu sendsms TEXT 7987654321 -text TEST

Если она отправка СМС-сообщения произошла, переходите то следует перейти к следующему шагу, если нет, повторите . Если отправка СМС-сообщения не осуществилась, то следует повторить проверку работоспособности с параметрами -d textall -f /tmp/gammu.log и изучайте лог. , а также изучить лог-файл на предмет ошибок.  

Warning
Внимание! Порт

...

работает в эксклюзивном режиме, значит

...

не должен быть запущен minicom или gammu-smsd.

Затем необходимо дать возможность утилите gammu писать в tty порт.


Warning

Внимание! Выполнение gammu производится от имени пользователя tomcat8 (или

...

WNAM), который

...

не имеет

...

прав записи. Необходимо предоставить право записи в порт при запуске gammu от любого пользователя, установив suid флаг:

chmod a+s /usr/bin/gammu
ls -la /usr/bin/gammu
-rwsr-sr-x 1 root root 339600 июл 25 2013 /usr/bin/gammu

Проверку отправки СМС от имени WNAM можно сделать при помощи интерфейса http://сервер_wnam/cp/testsendНа этом настройка gammu завершена.

...

Этот метод подходит, если число СМС значительноявляется значительным, и не хочется ставить suid флаги. Суть в том, что за отсутствует необходимость устанавливать suid-флаги. За работу с модемом отвечает сервис, который формирует и обслуживает очередь сообщений, переданных через клиентскую программу.

Установите Первым шагом необходимо установить утилиту:

apt-get install gammu gammu-smsd

Запустите Затем запустить поиск устройства:

gammu-detect

и Далее произвести настройку устройства:

gammu-config

Конфигурационный файл находится в директории /etc/gammu-smsdrc и выглядит следующим образом

# Configuration file for Gammu SMS Daemon
# Gammu library configuration, see gammurc(5)
[gammu]
# Please configure this!
port = /dev/ttyUSB0
connection = at9600
# Debugging
logformat = nothing
# SMSD configuration, see gammu-smsdrc(5)
[smsd]
service = files
logfile = syslog
# Increase for debugging information
debuglevel = 0
#RunOnReceive = /root/wnam-gammu-smsd-bridge.pl
CommTimeout = 5
# Paths where messages are stored
inboxpath = /var/spool/gammu/inbox/
outboxpath = /var/spool/gammu/outbox/
sentsmspath = /var/spool/gammu/sent/
errorsmspath = /var/spool/gammu/error/

Для отправки СМС-сообщений используется клиентская утилита  gammu-smsd-inject, отправку можно протестировать:. Рекомендуется протестировать работоспособность установленной утилиты, выполнив команду: 

gammu sendsms TEXT 7987654321 -text TEST

Если СМС дошла, переходите -сообщение дошло, то следует перейти к следующему шагу, если нет, изучайте . Если СМС-сообщение не доставлено, то следует изучить лог-файл /var/log/daemon.log на предмет ошибок.

Теперь Далее необходимо настроить WNAM на отправку СМС через gammu-smsd-inject. Для этого в конфигурационном файле /etc/wnam.properties укажите следует указать параметр:

gammu_path=/usr/bin/gammu-smsd-inject

После таких выполненных изменений перезапустите необходимо перезапустить сервисы tomcat и gammu-smsd. Проверку отправки СМС от имени WNAM можно сделать осуществить при помощи интерфейса http://сервер_wnam/cp/testsend.

В некоторых случаях отмечается возникает проблема с отправкой СМС-сообщений при помощи gammu-smsd-inject (возвращается код ошибки: 3). В таком случае попробуйте также поставить suid При возникновении такой ошибки можно дополнительно установить suid-флаг исполняемому файлу gammu-smsd-inject. На этом настройка gammu-smsd завершена.