Versions Compared

Key

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

Модуль отправки SMS сообщений. Может использовать локальный и удалённые шлюзы отправки смс.

При отправке СМС система передает плагину текст сообщения и номер адресата. Плагин по протоколу шлюза отправляет данные на СМС шлюз и получает статус отправки, также заносит данные по отправке СМС  сообщения в базе.

Table of Contents

Возможности

  • Восстановление пароля через SMS

  • Отправка пароля администратором

  • Отправка отчётов модулем Ureports

  • Отправка SMS сообщений модулем Msgs

При воcстановлении пароля и отправки сообщений через техническую поддержку номер телефона берётся с учётной записи абонента, а при отправке отчётов из заполненного поля отчётов. 

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


Установка

Создать таблицы в базе.

Code Block
languagebash
mysql --default-character-set=utf8  -D abills < db/Sms.sql

Подключение модуля. abills/libexec/config.pl

Code Block
languagebash
@MODULES = (
          'Sms'
          );


Настройка

Turbosms

Страна: Украина/Россия

Скопировать модуль в рабочую папку

Code Block
languagebash
cp Turbosms.pm /usr/abills/Abills/modules/Sms/

Для отправки сообщений используется режим работы с базой данных.

Параметры конфигурации модуля: abills/libexec/config.pl


$conf{SMS_TURBOSMS_DBHOST} = '94.249.146.189';Хост базы данных
$conf{SMS_TURBOSMS_DBNAME} = 'users';База данных
$conf{SMS_TURBOSMS_DBCHARSET}= 'utf8';Кодировка
$conf{SMS_TURBOSMS_USER} = 'sms_test';Логин
$conf{SMS_TURBOSMS_PASSWD} = 'sms_test';Пароль
$conf{SMS_TURBOSMS_TABLE} = 'sms_test';Таблица (имя таблицы такое же, как и логин подключения к шлюзу)
$conf{SMS_TURBOSMS_SEND_TIME}= '12:00:00';Время отправки
$conf{SMS_TURBOSMS_SEND_FEES}= 1;Стоимость за отправку одного СМС
$conf{SMS_TURBOSMS_DEBUG} = 6;Режим отладки 
можно использовать значения от 1 до 6 
Режимы: 
0 - Нормальный режим работы 
3 - Отображать запросы при отправке сообщений 
5,6 - Только отображать запросы отправки сообщений без их реальной отправки 
$conf{SMS_TURBOSMS_MESSAGE_HEADER}='Test ISP';Шапка смс сообщения$conf{SMS_TURBOSMS_SIGN}='your_sign';Подпись - обязательный параметр. Берётся из личного кабинета Turbosms
В своей
$conf{SMS_TURBOSMS_TRANSACTIONAL}=1Viber сообщения по умолчанию отправляются как рекламные, если не установлен параметр is_transactional.

В своей учетной записи на сайте turbosms.ua нужно задать шлюз и создать подпись

Проверка работы с шлюзом MySQL

Code Block
languagebash
mysql -P 3306 -h 94.249.146.189 -u ЛогинШлюза -p users

Далее вводите пароль шлюза. Название таблицы, с которой вы работаете в базе совпадает с логином шлюза. Посмотреть какие сообщения были занесены в таблицу, можно командой

Code Block
languagebash
MySQL [users]> SELECT * FROM ЛогинШлюза;

Если смс есть в базе, но не отправляются пользователям - посмотрите на статус записи и код ошибки.

Отправка на Viber

С не давных пор появилась отправка на Viber через шлюз TurboSMS для того Для того, чтобы сделать отправку на Viber надо через шлюз TurboSms нужно прописать в config.pl такой параметр:


Code Block
$conf{SMS_TURBOSMS_VIBER} = 1;

Так же надо будет прописать параметры для того чтобы система понимала куда отправлять

$conf{SMS_EPOCHTASMS_OPENKEY}='xxx';Публичный ключ
ПараметрЗначения
$conf{SMS_TURBOSMS_VIBER_URL}URL шлюза для отправки 
$conf{SMS_TURBOSMS_VIBER_TOKEN}Токен пользователя в системе TurboSMS

Epochtasms

Image Removed

Сайт: ePochta sms

Для работы с службой нужно установить Perl модуля JSON 

Параметры конфигурации модуля: 
abills/libexec/config.pl 
$conf{SMS_TURBOSMS_VIBER_COUNTRY_CODE}Код номера страны (нужно если номера без кодов страны)
$conf{SMS_TURBOSMS_MASSAGE_HEADER}Имя отправителя
$conf{SMS_
EPOCHTASMS
TURBOSMS_
PRIVATEKEY
TTL}
='xxx';Приватный ключ$conf{SMS_EPOCHTASMS_SENDER}='sender_name';Название провайдера. Регистрируется в меню Регистрация имен отправителей аккаунта Epochta$conf{SMS_EPOCHTASMS_TEST_MODE}=1;Режим отладки

Настройка службы Epochtasms 

Image Removed

После настройки перейдите в меню Регистрация имен отправителей и зарегистрируйте Ваш идентификатор. После регистрации занесите его в переменную $conf{SMS_EPOCHTASMS_SENDER}='sender_name';.

Littlesms

Для работы с службой нужно установить Perl модуля JSON и программу CURL

Срок жизни сообщения, в течение которого оно будет доставляться. Если сообщение не было доставлено по прошествии этого времени, оно будет считать не доставленным. Указывается в секундах, возможны значения от 60 до 86400, по умолчанию 3600.

Возможные ошибки

При отправки смс через шлюз TurboSMS допускаются такие внутренние ошибки

Image Added

Код ошибки доступен к просмотру в Отчет → Sms

Epochtasms

Image Added

Сайт: ePochta sms

Страна: Украина/Росия

Для работы с службой нужно установить Perl модуля JSON 

Параметры конфигурации модуля: 
abills/libexec/config.pl pl 

$conf{SMS_LITTLESMSEPOCHTASMS_USEROPENKEY}='userxxx';Логин, указанный при регистрацииПубличный ключ
$conf{SMS_LITTLESMSEPOCHTASMS_KEYPRIVATEKEY}='keyxxx';API-ключ пользователя или API-аккаунтаПриватный ключ
$conf{SMS_LITTLESMSEPOCHTASMS_TEST_MODESENDER}=1;Режим отладки

Настройка службы Epochtasms.

Smsc

Image Removed

Для работы с службой нужно установить Perl модуля JSON и программу CURL.

Параметры конфигурации модуля: 
abills/libexec/config.pl 
$conf{SMS_SMSC_USER}='user';Логин указанный при регистрации$conf{SMS_SMSC_PASSWORD}='key';Пароль Клиента$conf{SMS_SMSC_TEST_MODE}=1;Режим отладки

Настройка службы Smsc.

Txtlocal

Image Removed

Сайт: http://www.txtlocal.com 
Страна: Испания 
$conf{SMS_TXTLOCAL
$conf{SMS_TXTLOCAL_APIKEY}='xxx'Ключ авторизации. Если используется ключ то hash и логин игнорируются. 
Получить ключ https://control.txtlocal.co.uk/settings/apikeys/
'sender_name';Название провайдера. Регистрируется в меню Регистрация имен отправителей аккаунта Epochta
$conf{SMS_EPOCHTASMS_TEST_MODE}=1;Режим отладки

Настройка службы Epochtasms 

Image Added

После настройки перейдите в меню Регистрация имен отправителей и зарегистрируйте Ваш идентификатор. После регистрации занесите его в переменную $conf{SMS_EPOCHTASMS_SENDER}='sender_name';.


Littlesms

Страна: Украина/Россия

Для работы с службой нужно установить Perl модуля JSON и программу CURL

Параметры конфигурации модуля: 
abills/libexec/config.pl 

TXTLOCALHASHTXTLOCAL_SENDER}='sms sender';$conf{SMS_TXTLOCAL_
$conf{SMS_LITTLESMS_USER}='user';Имя абонентаЛогин, указанный при регистрации
$conf{SMS_LITTLESMS_KEY}='key';Hash верификацииAPI-ключ пользователя или API-аккаунта
$conf{SMS_Название отправителяLITTLESMS_TEST_MODE}=1;Режим отладки 
1 - 
2 - Система делает тестовую отправку без снятия денег с депозита 
6 - Отображать выполняемые билингом команды для отправки почты

Jasmin SMS

Jasmin - локальный смс-шлюз предназначенный для отправки СМС-сообщений напрямую в центры сообщений телекоммуникационных компаний. Шлюз использует стандартный протокол SMPP, который поддерживает большинство операторов мобильной связи.
отладки

Настройка службы Epochtasms.

Smsc

Image Added

Страна: Любая страна

Для работы с службой нужно установить Perl модуля JSON и программу CURL.

Параметры конфигурации модуля: 
abills/libexec/config.pl 

$conf{SMS_
JASMIN
SMSC_USER}='
username
user';
Имя локального абонента
Логин указанный при регистрации
$conf{SMS_
JASMIN
SMSC_
PASSWD
PASSWORD}='
pswd
key';Пароль Клиента
$conf{SMS_SMSC_
JASMIN
TEST_
SENDER
MODE}=
'Company';Подпись сообщения (имя отправителя)$conf{SMS_JASMIN_SERVER} = 'http:/ /localhost:1401/';Сервер Jasmin
Установка собственного сервера Jasmin -
1;Режим отладки

Настройка службы Smsc.

Txtlocal

Image Added

Сайт: http://docswww.jasminsms.com/en/latest/installation/index.html .

Smseagle

SMSEagle - железный SMS шлюз.txtlocal.com 
Страна: Испания 

$conf{SMS_TXTLOCAL_APIKEY}='xxx'Ключ авторизации. Если используется ключ то hash и логин игнорируются. 
Получить ключ https://control.txtlocal.co.uk/settings/apikeys/
$conf{SMS_SMSEAGLETXTLOCAL_USER}='usernameuser';ЛогинИмя абонента
$conf{SMS_SMSEAGLETXTLOCAL_PASSWDHASH}='pswdkey';ПарольHash верификации
$conf{SMS_SMSEAGLETXTLOCAL_SERVERSENDER}='http:/ /10.0.15.2/index.phpsms sender';Адрес по которому доступен API

Sms Broker

Параметры настройки

Версия API, JSON или XML
Название отправителя
$conf{SMS_BROKERTXTLOCAL_TEST_URLMODE}='http';$conf{SMS_BROKER_LOGIN}='login';$conf{SMS_BROKER_PASS}='pass';
$conf{SMS_BROKER_NAME}='provider name';Имя отправителя
$conf{SMS_BROKER_API_VER} = 'JSON';1;Режим отладки 
1 - 
2 - Система делает тестовую отправку без снятия денег с депозита 
6 - Отображать выполняемые билингом команды для отправки почты

Jasmin SMS

Страна: Любая страна

Jasmin - локальный смс-шлюз предназначенный для отправки СМС-сообщений напрямую в центры сообщений телекоммуникационных компаний. Шлюз использует стандартный протокол SMPP, который поддерживает большинство операторов мобильной связи.

$conf{SMS_
BROKER
JASMIN_
DEBUG
USER}=
1;Включение режима отладки с выводом информации по запросам

Playmobile

Параметры настройки

'username';Имя локального абонента
$conf{SMS_
PLAYMOBILE
JASMIN_
URL
PASSWD}='
http
pswd';Пароль
$conf{SMS_
PLAYMOBILE
JASMIN_
LOGIN
SENDER}='
login
Company';Подпись сообщения (имя отправителя)
$conf{SMS_
PLAYMOBILE
JASMIN_
PASS
SERVER} = '
pass';
http:/ /localhost:1401/';Сервер Jasmin

Установка собственного сервера Jasmin - http://docs.jasminsms.com/en/latest/installation/index.html .

Smseagle

Страна: Польша

SMSEagle - железный SMS шлюз.

PLAYMOBILEDEBUG1
$conf{SMS_SMSEAGLE_USER}='username';Включение режима отладки с выводом информации по запросам

IDM.KG

Логин
$conf{SMS_
IDM
SMSEAGLE_
LOGIN
PASSWD}='
username
pswd';
Логин
Пароль
$conf{SMS_
IDM
SMSEAGLE_
PASSWORD
SERVER} = '
pswd
http:/ /10.0.15.2/index.php';
Пароль
Адрес по которому доступен API

Sms Broker

Страна: Россия

Параметры настройки

$conf{SMS_
IDM
BROKER_
SENDER
URL}='
sms sender
http';
Подпись сообщения (имя отправителя)$conf

$conf{SMS_
IDM
BROKER_
SERVER
LOGIN}='
http:/ /localhost:1401
login';
Cервер по которому доступен IDM.KG

Bulksms

BULKSMSSENDERsms senderПодпись сообщения (имя отправителя)BULKSMSAPI 'http:/ /10.0.15.2/index.php';

$conf{SMS_BULKSMSBROKER_LOGINPASS}='usernamepass';Логин
$conf{SMS_BULKSMSBROKER_PASSWORDNAME}='pswdprovider name';ПарольИмя отправителя
$conf{SMS_BROKER_API_VER} = 'JSON';Версия API, JSON или XML
$conf{SMS_BROKER_DEBUG}=Адрес по которому доступен API
Nikita
1;Включение режима отладки с выводом информации по запросам

Playmobile

Страна: Россия

Параметры настройки

ПарольNIKITASERVICE_NUMBER 'service_num';
$conf{SMS_NIKITAPLAYMOBILE_URL}='http://www.nikita.am/';Сервер обрабатывающий запрос
$conf{SMS_NIKITAPLAYMOBILE_LOGIN}='login';Логин
$conf{SMS_NIKITAPLAYMOBILE_PASSWORDPASS}='passwordpass';
$conf{SMS_PLAYMOBILE_DEBUG}=Номер предоставленный сервисом

Universal_sms_module

Описание

Для работы со службой нужно установить программу CURL.

Параметры конфигурации модуля: 
abills/libexec/config.pl 
1;Включение режима отладки с выводом информации по запросам

IDM.KG

Страна: Казахстан

Все остальные параметры прописываем непосредственно в запрос

Пример: 

login=User&pass=123456

Пример:

http://192.168.1.1/index.cgi?login=User&pass=123456&number=%NUMBER%&message=%MESSAGE%

CMD

Описание

Параметры конфигурации модуля: 
abills/libexec/config.pl 

$conf{SMS_CMD} = '/path/to/file NUMBER=%NUMBER% MESSAGE=%MESSAGE%';

Путь и параметры для отправки параметров

Параметны для програмы прописываем в следующем формате:

НАЗВАНИЕ_ПАРАМЕТРА=%ПАРАМЕТР%

НАЗВАНИЕ_ПАРАМЕТРАНазвание может быть любое какое вам нужно для запроса%ПАРАМЕТР%

Доступные параметры:

  %NUMBER% - номер телефона абонента

  %MESSAGE% - Текст сообщения

Все остальные параметры прописываем непосредственно в запрос

Пример: 

login=User&pass=123456

Установка Gammu для отправки с usb модема

Code Block
languagebash
sudo apt install gammu

для настройки используем команду

Code Block
languagebash
gammu-config

прописывает в каком порту находится USB модем

Запускаем утилиту идентификации модема:

Code Block
languagebash
sudo gammu identify

Если все хорошо - вывод примерно такой

Code Block
languagebash
Устройство     : /dev/ttyUSB0
Производитель  : Huawei
Модель         : E1550 (E1550)
Прошивка       : 11.608.14.11.222
IMEI           : 359124036500000
Номер SIM IMSI : 255061025200000

Все модуль готов к отправке.

смс можно отправить спомощью команды 

Code Block
languagebash
gammu sendsms TEXT 082111978168 -text "Halooo .."

Eskiz sms

Eskiz.uz
$conf{SMS_
UNIVERSAL
IDM_
URL
LOGIN} ='
http://URL?number=%NUMBER%&message=%MESSAGE%
username';
URL для отправки смс

URL - Сервер обрабатывающий запрос 

В запрос прописываем параметры в следующем формате:

НАЗВАНИЕ_ПАРАМЕТРА=%ПАРАМЕТР%

НАЗВАНИЕ_ПАРАМЕТРАНазвание может быть любое какое вам нужно для запроса%ПАРАМЕТР%

Доступные параметры:

  %NUMBER% - номер телефона абонента

  %MESSAGE% - Текст сообщения

  %HEX_MESSAGE% - Текст сообщения в хексе.

Логин
$conf{SMS_IDM_PASSWORD ='pswd';Пароль
$conf{SMS_IDM_SENDER} = 'sms sender';Подпись сообщения (имя отправителя)
$conf{SMS_IDM_SERVER} = 'http:/ /localhost:1401';Cервер по которому доступен IDM.KG

Bulksms

Страна: Любая страна

$conf{SMS_BULKSMS_LOGIN} ='username';Логин
$conf{SMS_BULKSMS_PASSWORD} ='pswd';Пароль
$conf{SMS_BULKSMS_SENDER} = 'sms sender';Подпись сообщения (имя отправителя)

$conf{SMS_BULKSMS_API} = 'http:/ /10.0.15.2/index.php'; 

Адрес по которому доступен API. 

https://api.bulksms.com/v1

Для данной СМС рассылки сделано 2 файла:

Bulksms.pm - з поддержкой xml формата

Bulksms_v2.pm - с поддержкой json формата

Code Block
languagebash
mv Bulksms_v2.pm /usr/abills/Abills/modules/Sms/Bulksms.pm


Nikita

Страна: Казахстан

$conf{SMS_NIKITA_URL} = 'http://www.nikita.am/';Сервер обрабатывающий запрос
$conf{SMS_NIKITA_LOGIN} = 'login';Логин
$conf{SMS_NIKITA_PASSWORD} = 'password';Пароль
$conf{SMS_NIKITA_SERVICE_NUMBER} = 'service_num';Номер предоставленный сервисом

Universal_sms_module

Описание

Для работы со службой нужно установить программу CURL.

Параметры конфигурации модуля: 
abills/libexec/config.pl 

$conf{SMS_UNIVERSAL_URL} = 'http://URL?number=%NUMBER%&message=%MESSAGE%';

URL для отправки смс

URL - Сервер обрабатывающий запрос 

В запрос прописываем параметры в следующем формате:

НАЗВАНИЕ_ПАРАМЕТРА=%ПАРАМЕТР%

НАЗВАНИЕ_ПАРАМЕТРАНазвание может быть любое какое вам нужно для запроса
%ПАРАМЕТР%

Доступные параметры:

  %NUMBER% - номер телефона абонента

  %MESSAGE% - Текст сообщения

  %HEX_MESSAGE% - Текст сообщения в хексе.


Все остальные параметры прописываем непосредственно в запрос

Пример: 

login=User&pass=123456


Пример:

http://192.168.1.1/index.cgi?login=User&pass=123456&number=%NUMBER%&message=%MESSAGE%


CMD

Описание

Параметры конфигурации модуля: 
abills/libexec/config.pl 

$conf{SMS_CMD} = '/path/to/file NUMBER=%NUMBER% MESSAGE=%MESSAGE%';

Путь и параметры для отправки параметров

Параметры для программы прописываем в следующем формате:

НАЗВАНИЕ_ПАРАМЕТРА=%ПАРАМЕТР%

НАЗВАНИЕ_ПАРАМЕТРАНазвание может быть любое какое вам нужно для запроса
%ПАРАМЕТР%

Доступные параметры:

  %NUMBER% - номер телефона абонента

  %MESSAGE% - Текст сообщения

Все остальные параметры прописываем непосредственно в запрос

Пример: 

login=User&pass=123456

Установка Gammu для отправки с usb модема

Code Block
languagebash
sudo apt install gammu

для настройки используем команду

Code Block
languagebash
gammu-config

прописывает в каком порту находится USB модем

Запускаем утилиту идентификации модема:

Code Block
languagebash
sudo gammu identify

Если все хорошо - вывод примерно такой

Code Block
languagebash
Устройство     : /dev/ttyUSB0
Производитель  : Huawei
Модель         : E1550 (E1550)
Прошивка       : 11.608.14.11.222
IMEI           : 359124036500000
Номер SIM IMSI : 255061025200000

Все модуль готов к отправке.

смс можно отправить с помощью команды 

Code Block
languagebash
gammu sendsms TEXT 082111978168 -text "Halooo .."

Eskiz sms

Eskiz.uz

Страна: Узбекистан

Скопировать модуль в:

Code Block
cp Eskizsms.pm /usr/abills/Abills/modules/Sms/


Параметры конфигурации модуля: 
abills/libexec/config.pl 

$conf{SMS_ESKIZ_URL}='notify.eskiz.uz/api/message/sms/send'Cмс шлюз
$conf{SMS_ESKIZ_LOGIN}='test@eskiz.uz'Логин пользователя в системе eskiz
$conf{SMS_ESKIZ_PASSWD}='j6DWtQjjpLDNjWEk74Sx'Пароль пользователя в системе eskiz

Omnicell

Страна: Украина

Скопировать модуль в:

Code Block
cp Omnicell.pm /usr/abills/Abills/modules/Sms/

Параметры конфигурации модуля: 
abills/libexec/config.pl 

$conf{SMS_OMNICELL_URL}

Смс шлюз:

https://api.omnicell.com.ua/ip2sms/

$conf{SMS_OMNICELL_LOGIN}

Логин пользователя в системе Omnicell

$conf{SMS_OMNICELL_PASSWD}

Пароль пользователя в системе Omnicell

$conf{SMS_OMNICELL_EXT}

 Регулярное выражения для проверки мобильного номера, система Omnicell требует международный форма с '+' и кодом странны, в суме 12 цифр должно быть.

Регулярное выражения:

(\+)([0-9]{0,12})

$conf{SMS_OMNICELL_ALPHA_NAME}Альфа имя в системе Omnicell

Также доступна отправка на Viber, для такой отправки вам надо в конфигурационном файле прописать $conf{SMS_OMNICELL_VIBER} = 1; после чего при создание сообщения вы сможете выбрать пункт Viber 


Image Added

Протокол:

https://docs.omnicell.com.ua/pages/viewpage.action?pageId=4358324

Likon Sms

Страна: Узбекистан

Параметры шлюза выглядят следующим образом

$conf{SMS_LIKON_URL}

Ссылка на шлюз (куда отправлять)
$conf{SMS_LIKON_LOGIN}Логин шлюза для отправки
$conf{SMS_LIKON_PASSWD}Пароль шлюза для отправки
$conf{SMS_LIKON_TITLE}Подпись смс (шапка смс)

Отправлять надо на шлюз - http://89.108.99.126/sendsmsapi/

Note

Обратите внимание что отправка может быть только на мобильные телефона Азербайджан, при попытке отправить на другой номер вам вернется ошибка с кодом 20 и сообщениям Invalid msisdn/no valid message to send

MsgAm

Страна: Азербайджан

Скопировать модуль в:

Code Block
cp MsgAm.pm /usr/abills/Abills/modules/Sms/


Параметры конфигурации модуля: 

abills/libexec/config.pl 

$conf{SMS_MSGAM_URL}

Ссылка на шлюз (куда отправлять)
$conf{SMS_MSGAM_LOGIN}Логин шлюза для отправки
$conf{SMS_MSGAM_PASSWD}Пароль шлюза для отправки
$conf{SMS_MSGAM_SOURCE_NUMBER}Подпись смс (шапка смс)
$conf{SMS_MSGAM_EXT}Формат номера
$conf{SMS_MSGAM_DEBUG}Дебаг режим


Note

Смс ходят только на номера страны Азербайджан

Cablenet

Страна: Узбекистан

Скопировать модуль в:

Code Block
cp Cablenet.pm /usr/abills/Abills/modules/Sms/

Параметры конфигурации модуля: 

abills/libexec/config.pl 

$conf{SMS_CABLENET_URL}

Ссылка на шлюз (куда отправлять)
$conf{SMS_CABLENET_LOGIN}Логин шлюза для отправки
$conf{SMS_CABLENET_PASSWD}Пароль шлюза для отправки
$conf{SMS_CABLENET_EXT}Формат номера
$conf{SMS_CABLENET_DEBUG}Дебаг режим

WebSms

Страна: Беларусь 

Скопировать модуль в:

Code Block
cp WebSms.pm /usr/abills/Abills/modules/Sms/

Параметры конфигурации модуля: 

abills/libexec/config.pl 

$conf{SMS_WEBSMS_URL}

Ссылка на шлюз (куда отправлять)
$conf{SMS_WEBSMS_USER}Логин шлюза для отправки
$conf{SMS_WEBSMS_APIKEY}API Key шлюза для отправки
$conf{SMS_WEBSMS_EXT}Формат номера
$conf{SMS_WEBSMS_SENDER}Шапка в сообщении
$conf{SMS_WEBSMS_DEBUG}Дебаг режим

Важное замечание!

У websms изменилось API.

Старый вариант АПИ, актуален до версии модуля 8.03

URL  шлюза: cp.websms.by/api/?r=api

Документация по шлюзу

http://cp.websms.by/apidocs/#/СМС-сообщения/get_msg_send


Fenix

Страна: Украина

Скопировать модуль в:

Code Block
cp Fenix.pm /usr/abills/Abills/modules/Sms/

Параметры конфигурации модуля: 

abills/libexec/config.pl 

$conf{SMS_FENIX_URL}

Ссылка на шлюз (куда отправлять)
$conf{SMS_FENIX_TOKEN}Токен шлюза для отправки
$conf{SMS_FENIX_DEBUG}Дебаг режим шлюза
$conf{SMS_FENIX_EXT}Формат номера


URL  шлюза: http://10.128.1.50:7890

AMD

Страна: Универсальный

Скопировать модуль

Code Block
cp AMD.pm /usr/abills/Abills/modules/Sms/

Параметры конфигурации модуля: 

abills/libexec/config.pl 

$conf{SMS_AMD_URL}

Ссылка на шлюз (куда отправлять)
$conf{SMS_AMD_SIGNATURA}Токен шлюза для отправки (Сигнатура)
$conf{SMS_AMD_DEBUG}Дебаг режим шлюза
$conf{SMS_AMD_EXT}Формат номера
$conf{SMS_AMD_NAME}Подпись отправителя


URL шлюза: https://connect.routee.net/sms


LSIM

(lsim.az)

Страна: Азербайджан

Установка:

Code Block
cp Lsim.pm /usr/abills/Abills/modules/Sms/

Параметры конфигурации модуля: 

abills/libexec/config.pl 

$conf{SMS_LSIM_URL}

URL шлюза
$conf{SMS_LSIM_LOGIN}Логин
$conf{SMS_LSIM_PASSWORD}Пароль
$conf{SMS_LSIM_SENDER}Подпись отправителя


URL шлюза: http://sendsms.az/smxml/api


SmsClub

Image Added

Страна: Любая страна

Скопировать модуль в:

Code Block
cp EskizsmsSmsClub.pm /usr/abills/Abills/modules/Sms/

Параметры конфигурации модуля: 
abills/libexec/config.pl  

abills/libexec/config.pl 

ESKIZURL}='notify.eskiz.uz/api/message/sms/send'Cмс шлюз

$conf{SMS_SMSCLUB_URL}

Ссылка на шлюз (куда отправлять)
$conf{SMS_SMSCLUB_TOKEN}Токен шлюза для отправки
$conf{SMS_SMSCLUB_ALPHA}Альфа-имя
$conf{SMS_ESKIZSMSCLUB_LOGIN}='test@eskiz.uz'Логин пользователя в системе eskiz
$conf{SMS_ESKIZ_PASSWD}='j6DWtQjjpLDNjWEk74Sx'Пароль пользователя в системе eskiz
Omnicell
DEBUG}Дебаг режим шлюза


URL  шлюза: https://im.smsclub.mobi


AlphaSms

Image Added

Страна: Украина

Скопировать модуль в:

Code Block
cp OmnicellAlphaSms.pm /usr/abills/Abills/modules/Sms/

Параметры конфигурации модуля: 

abills/libexec/config.pl pl 

OMNICELLPASSWDПароль пользователя в системе Omnicell(\+)([0-9]{0,12})

 Регулярное выражения для проверки мобильного номера, система Omnicell требует международный форма с '+' и кодом странны, в суме 12 цифр должно быть.

Регулярное выражения:

$conf{SMS_OMNICELLALPHASMS_URL}

Смс шлюз:https://api.omnicell.com.ua/ip2sms/Ссылка на шлюз (куда отправлять)
$conf{SMS_OMNICELLALPHASMS_LOGINTOKEN}Логин пользователя в системе OmnicellТокен шлюза для отправки
$conf{SMS_ALPHASMS_ALPHA}Альфа-имя
$conf{SMS_OMNICELLALPHASMS_EXT}DEBUG}Дебаг режим шлюза

URL  шлюза: https://alphasms.ua

SMPP

Image Added

Страна: все

Code Block
cp SMPP.pm /usr/abills/Abills/modules/Sms/

Параметры конфигурации модуля: 

abills/libexec/config.pl 

$conf{SMS_SMPP_HOST}

Хост smpp
$conf{SMS_
OMNICELL
SMPP_
ALPHA_NAME}Альфа имя в системе Omnicell
Также доступна отправка на Viber, для такой отправки вам надо в конфигурационном файле прописать 
PORT}Порт smpp
$conf{SMS_
OMNICELL
SMPP_
VIBER} = 1; после чего при создание сообщения вы сможете выбрать пункт Viber 

Image Removed

Протокол:

https://docs.omnicell.com.ua/pages/viewpage.action?pageId=4358324

Likon Sms

Параметры платежной системы выглядят следующим образом

$conf{SMS_LIKON_URL}

Ссылка на шлюз (куда отправлять)
LOGIN}Логин smpp
$conf{SMS_SMPP_PASSWORD}Пароль smpp
$conf{SMS_SMPP_SOURCE_ADDR_TON}Тип номера отправителя
$conf{SMS_SMPP_SOURCE_ADDR_NPI}Идентификатор плана нумерации отправителя
$conf{SMS_
LIKON
SMPP_SOURCE_
LOGIN
ADDR}
Логин шлюза для отправки
Альфа-имя
$conf{SMS_
LIKON_PASSWD}Пароль шлюза для отправки
SMPP_DEST_ADDR_TON}Тип номера получателя
$conf{SMS_SMPP_DEST_
LIKON
ADDR_
TITLE}Подпись смс (шапка смс)

Отправлять надо на шлюз - http://89.108.99.126/sendsmsapi/

NoteОбратите внимание что отправка может быть только на мобильные телефона Азербайджан, при попытке отправить на другой номер вам в ответ прийдет ошибка с кодом 20 и сообщениям Invalid msisdn/no valid message to send
NPI}Идентификатор плана нумерации получателя


Sms Отчёты

Отчёты находятся в меню  Отчёт>Sms.

Система предоставляет полный отчёт по отправленным сообщениям.


Также упрощенная версия отчета по пользователю находится по пути Клиенты>Логины>Информация>Сервисы>SMS.

Возле названия таблицы выведена кнопка для обновления статуса СМС доставки

Image Added

Синхронизация статусов

Плагин синхронизации статусов забирает статусы и вносит в билинг с sms-сервисовsms-сервисов.

Code Block
languagebash
/usr/abills/libexec/billd sms_status

Посмотреть что выполняет скрипт

Code Block
languagebash
/usr/abills/libexec/billd sms_status DEBUG=2

Пример крона.

Code Block
languagebash
*/10 * * * * root /usr/abills/libexec/billd sms_status



Дополнительные настройки

$conf{SMS_LIMIT} = 3;Ограничение количества отправляемых смс одному пользователю в день
$conf{SMS_FEES}='2.00';Оплата за отправку смс
$conf{SMS_TRANSLIT}=1;Транслитерировать отправляемые сообщения
$conf{SMS_DEBUG}=1;Глобальный режим отладки для всех систем
$conf{SMS_NUMBER}='[0-9]{12}';Проверка правильности номера отправки. 
Формат номера по умолчанию [0-9]{12} 
Украина : [0-9]{12} 
Россия: [0-9]{11}
$conf{SMS_NUMBER_EXPR}='search_side/replace_side;search_side/replace_side';Регулярные выражения преобразования номера. 
search_side/replace_side - права левая часть регулярного выражения 
$number - зарезервированная переменная номера 
Регулярные выражения разделяются точкой с запятой (;) 
Система завершает преобразовании номера после первого удачного преобразования преобразования
$conf{SMS_CONTACT_ID} = '1;2';Типы контактов, на которые отправлять SMS (в виде номеров, номера типов контактов можно узнать здесь). По умолчанию 1 (мобильный телефон).


Пример обработки номера регулярным выражением:

Code Block
languagebash
$conf{SMS_NUMBER_EXPR} = '^([0-9]{4,6})$/74832;'. 
    '^2([0-9]{6})$/7483;'.
    '(^9[0-9]{9})/7;'. 
    '^810/;'.
    '^8/7;'. 
    '^*8/7;'. 
    '^4832/74832';

Изменения номеров формата 050xxxxxxx на +380xxxxxxx:

Code Block
languagebash
$conf{SMS_NUMBER_EXPR} = '^0/+380;'; 


sms_password_recovery.tplШаблон восстановления пароля

Работа с шаблонами

Sms callback - шлюз для клиентских запросов посредством Sms.

Подключение

Code Block
languagebash
cd /usr/abills/cgi-bin/
ln -s ../Abills/modules/Sms/sms_callback.cgi sms_callback.cgi
chmod +x sms_callback.cgi

Настройки

$conf{SMS_CALLBACK_LANGUAGE}='russian';Настройка для загрузки нужного словаря


Пример запроса:

https://192.168.1.169:9443/sms_callback_.cgi?apikey=1234567890abcdef&sender=0681234567&text=123+03+12345678

ПараметрОписание
https://192.168.1.169:9443/sms_callback_cgiURL для шлюза обработки запросов
apikeyПараметр Apikey API_KEY из информации админстратораадминистратора. Рекомендуется создавать отдельного администратора от имени которого будут выполняться команды.
senderНомер телефона отправителя
textТекст самого сообщения


Пример SMS сообщения: 123+03+124+12345678, где

123Это UID абонента
03Тип команды
124Это UID абонента номер 2 (если операции не надо второго UID то и прописывать не надо)
12345678Дополнительная информация

Все поддерживаемые типы команды

01Отправит шаблон internet_user_memo_sms.tpl пользователю
02Отправит шаблон sms_callback_user_info.tpl пользователю
03Выполняет внешнюю команду для пользователя. Например, изменения пароля Wi-fi, где параметр «Дополнительная информация» будет использоваться как новый Wi-fi пароль
04Переводит пользователя в статус Приостановлен
05Переводит пользователя в статус Активно
06Перевод денег другому абоненту. Пример команда 123+06+321+99  переведет сумму 99 пользователю с uid 321.другому абоненту. Пример команда 123+06+321+99  переведет сумму 99 пользователю с uid 321.
07

Включения/отключения оповещений (Ureports)

Пример: /sms_callback.cgi?apikey=<api_key>&sender=<number>&text=1+07+2+disabled

text=(uid + operations + tp_id + disabled/enabled)


Отправка СМС после регистрации абонента

Если у вас включен модуль Смс, тогда во время регистрации у вас появится дополнительный шаг с отправкой СМС пользователю о окончании регистрации. По стандарту будет отправлен шаблон %LOGIN%:%PASSWORD% но вы можете отредактировать шаблон 

internet_user_memo_sms под себя, зайдите в Настройка → Другое → шаблоны и найдите данный шаблон что бы отредактировать его

Также вы будете иметь возможность отправить смс повторно чтобы напомнить пользователю что он прошел регистрацию, вам понадобится зайти в правое меню и выбрать SMS затем вы увидите данную форму отправки смс

Для отправки СМС берётся "Мобильный номер телефона" если же вы указали контакт пользователя в поле "телефон" тогда в форме отправки поле "Телефон" будет пустым

Шаблонные переменные в теле сообщения

Также в теле сообщения можно использовать такие шаблонные переменные:

Персональная информация - %FIO%, %LOGIN%, %PHONE%, %EMAIL%, %CITY%,% ADDRESS_DISTRICT%, %ADDRESS_STREET%, %ADDRESS_BUILD%, %ADDRESS_FLAT%, %ADDRESS_FULL%, %CONTRACT_ID%.

Интернет информация - %TP_NAME%, %MONTH_ABON%, %DAY_ABON%.

Параметр конфигурации

Смс после регистрации

Если вы не хотите чтобы у вас при регистрации появился дополнительный шаг с отправкой СМС тогда вам надо в конфигурационном файле прописать следующий параметр 

Code Block
$conf{SMS_REG_GREETING}=1; 

Этот параметр будет отвечать за автоматическую отправку СМС пользователю если был заполнен на первом шаге "Мобильный телефон"

То есть если данная переменная будет прописана, тогда у вас данное окно отправки смс будет только доступно из меню.

Note

Также важно, что бы появился дополнительный шаг, должен быть стандартный шаблон добавления пользователя

Дополнительные параметри

бы появился дополнительный шаг, должны быть кастомные шаблоны, добавлять надо параметром $conf{REG_WIZARD}="sms_send_register:Sms:SMS;"


Дополнительные параметры

Лимит смс для пользователя

Для того что бы пользователь не злоупотребляв злоупотреблял смс-ками провайдера, есть параметр для ограничения смс в месяц

Code Block
$conf{USER_LIMIT_SMS} = 20;

В данном примере пользователю будет доступно только 20 смс в месяц, после того как он превысит этот лимит он не сможет отправить в этом месяце больше смс, но как прийдет следующий месяц ему снова будет доступно 20 смс.

Note

Функция относиться относится к функционалу по восстановлению пароля


Выбор СМС шлюза в зависимости от группы пользователя

В настройках группы в поле СМС шлюз можно выбрать один з доступных (установленных) СМС шлюзов.

Для всех пользователей в этой группе будет использоваться выбранный шлюз.

Image Added