Versions Compared

Key

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

Начиная с версии 1.3.1084 WNAM поддерживает отправку идентификационных СМС через шлюз любого провайдера, поддерживающий протокол HTTP метода GET или POST.

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

Для настройки этого метода первым делом обратитесь к вашему СМС провайдеру за документом, описывающим параметры взаимодействия - формат GET или POST запроса, и учетной записью (логин и пароль).

В настройках метода авторизации (в "общих настройках", или в настройках для индивидуальной площадки) выберите метод "Отправка СМС абоненту", а в качестве провайдера "Произвольный шлюз по протоколу HTTP GET" (или POST, если требуется).

Параметры "Логин" и "Пароль" заполнять не следует. Логин и пароль для шлюза провайдера вы заполните вручную в поле "Текст", то есть в тексте запроса. Исключение может составлять провайдер, который в GET или POST запросе требует предварительной авторизации в режиме HTTP Basic Auth: в этом случае указанные логин и пароль передаются в авторизационной части HTTP-заголовка.

Параметр "Заголовок СМС" не используется.

Параметр "Текст" содержит полную ссылку-запрос до HTTP-шлюза провайдера, со всеми параметрами. Запрос должен начинаться с "http". Поддерживается протокол HTTP и HTTPS, а также произвольный выбор TCP-порта.

Image Added

Например, для провайдера SMSC.RU полный формат запроса будет выглядеть так:

https://smsc.ru/sys/send.php?login=MyUserName&psw=MySecretPassword&phones=%PHONE%&charset=utf-8&mes=Код доступа в Интернет: %CODE%

Для провайдера Kazinfoteh так:

http://212.124.121.186:9501/api?action=sendmessage&username=MyUserName&password=MySecretPassword&recipient=%PHONE%&messagetype=SMS:TEXT&originator=INFO_KAZ&messagedata=Код доступа в Интернет: %CODE%

Вы должны указать полный URL в соответствиями с требованиями провайдера. Вместо номера телефона получателя используйте %PHONE%, вместо МАС-адреса %DEVICE%, вместо кода доступа - %CODE%.

Нажмите на "Сохранить изменения".

При отправке сообщения происходит преобразование всех полей в формат URLEncode в кодировке UTF-8.

При выборе метода отправки HTTP POST производится настройка производится так же (ссылка указывается в GET-формате), но перед отправкой производится её преобразование в POST-запрос.

Проверить работоспособность шлюза можно путем отправки тестового запроса из интерфейса WNAM: http://адресвашегосервера/cp/testsend

В логе WNAM, в файле /var/log/tomcat8/wnam.log должна появиться запись:

19:19:12.706 DEBUG [com.netams.wnam.services.SmsService:192] - url=http://212.124.121.186:9501/api, data=action=sendmessage&username=MyUserName&password=MySecretPassword&recipient=79123456789&messagetype=SMS%3ATEXT&originator=INFO_KAZ&messagedata=%D0%9A%D0%BE%D0%B4+%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%B0%3A+%25CODE%25
19:19:13.037 DEBUG [com.netams.wnam.services.SmsService:211] - sms_http to: +79123456789 return '<?xml version="1.0" encoding="utf-8"?>'