Руководство по взаимодействию с сервисом
SMPP — протокол, описывающий взаимодействие Клиента с SMS-сервером.
Взаимодействие Клиента с SMS-сервером Платформы осуществляется по адресу имя_хоста
порт 2775
Настройка SMPP-клиента
Для работы с Платформой по протоколу SMPP, необходимо произвести следующие настройки SMPP-клиента:
Host: имя_хоста
Port: 2775
SMPP System ID:
login*
SMPP Password:
password*
SMPP System type:
NULL
SMPP Version:
3.4
SMS per second:
30
Enquire_link:
60 sec.
Transaction timeout:
30 sec.
Source Address TON:
0
Source Address NPI:
0
Destination Address TON:
1
Destination Address NPI:
1
* Ваш логин и пароль, полученный при регистрации в сервисе.
При подключении необходимо обратить внимание на частоту отправки пакета ENQUIRE_LINK.
Для исключения избыточной нагрузки и защиты от ошибок в ПО клиентов наша система ограничивает отправку данного пакета не чаще, чем раз в 10 секунд, но рекомендуется ставить 30-60 секунд.
Поддерживаются следующие кодировки:
7-битная GSM для латинского текста с поддержкой европейских символов − (coding = 0);
8-битная ISO-8859-1 (Latin-1) для латинского текста или бинарных данных − (coding = 1);
UCS2 (UTF-16) для национальных алфавитов (например, русского) − (coding = 2).
SMPP использует три режима соединения:
bind_transmitter - Режим клиент -> сервер. Позволит вам отправлять команды на сервер, но не получать команды от него.
bind_receiver - Режим клиент <- сервер. Такой режим не позволит вам отправлять команды на отправку сообщений и запросы статусов.
bind_transceiver - Режим клиент <-> сервер. Универсальный режим соединения - позволит и передавать и принимать команды.
Используйте bind_transceiver
, если вам необходимо получать от сервера статусы сообщений в режиме реального времени. Если же вы собираетесь отправлять сообщения и запрашивать статусы самостоятельно - вам может хватить и bind_transmitter
режима.
В случае неудачной авторизации, command_status
ответа будет равен ESME_RBINDFAIL. В случае успеха - ESME_ROK.
После успешной авторизации вы можете начинать отправлять команды серверу. Если вы использовали bind_transceiver
, то сервер попытается отправить вам статусы сообщений, которые не успел или не смог отправить ранее по каким-либо причинам.
Last updated