SMS

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

Возможности

  • Восстановление пароля через SMS
  • Отправка пароля администратором
  • Отправка отчётов модулем Ureports
  • Отправка SMS сообщений модулем Msgs

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

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

Screenshots

Установка

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

# mysql –default-character-set=utf8 -D abills < db/Sms.sql

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

@MODULES = (
          'Sms'
          );

Настройка

Turbosms

turbosms.ua

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

# 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

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

Подключение к шлюзу

Добавление подписи

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

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

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

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

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

Epochtasms

http://epochtasms.ru

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

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

$conf{SMS_EPOCHTASMS_OPENKEY}='xxx'; Публичный ключ
$conf{SMS_EPOCHTASMS_PRIVATEKEY}='xxx'; Приватный ключ
$conf{SMS_EPOCHTASMS_SENDER}='sender_name'; Название провайдера. Регистрируется в меню Регистрация имен отправителей аккаунта Epochta
$conf{SMS_EPOCHTASMS_TEST_MODE}=1; Режим отладки

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

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

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

Littlesms

http://littlesms.ru/

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

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

$conf{SMS_LITTLESMS_USER}='user'; Логин указанный при регистрации
$conf{SMS_LITTLESMS_KEY}='key'; API-ключ пользователя или API-аккаунта
$conf{SMS_LITTLESMS_TEST_MODE}=1; Режим отладки

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

Smsc

http://smsc.ru/

Для работы с службой нужно установить 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

textlocal

Сайт: http://www.txtlocal.com
Cтрана: Испания

$conf{SMS_TXTLOCAL_APIKEY}='xxx' ключ авторизации. Если используется ключ то хаш и логин игнорируются.
Получить ключ https://control.txtlocal.co.uk/settings/apikeys/
$conf{SMS_TXTLOCAL_USER}='user'; Имя абонента
$conf{SMS_TXTLOCAL_HASH}='key'; Хаш верификации
$conf{SMS_TXTLOCAL_SENDER}='sms sender'; Название отправителя
$conf{SMS_TXTLOCAL_TEST_MODE}=1; Режим отладки
1 -
2 - Система делает тестовую отправку без снятия денег с депозита
6 - Отображать выполняемые билингом команды для отправки почты

Jasmin SMS

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

$conf{SMS_JASMIN_USER}='username'; Имя локального абонента
$conf{SMS_JASMIM_PASSWD}='pswd'; Пароль
$conf{SMS_JASMIN_SENDER}='Company'; Подпись сообщения (имя отправителя)
$conf{SMS_JASMIN_SERVER} = 'http:/ /localhost:1401/'; Сервер Jasmin

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

Отчёты

Дополнительно

$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_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

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

Шаблоны

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

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