Протокол SOAP

Протокол SOAP (Simple Object Access Protocol — простой протокол доступа к объектам) используется для удаленного вызова функций по обработке SMS.


На данный момент доступны 3 функции:

  • send_message — немедленная отправка одиночного SMS
  • schedule_message — отправка одиночного SMS по расписанию
  • check_status — проверка статуса отправленного сообщения

Параметры, используемые в функциях

send_message (login, password, src_addr, dst_addr, text)
schedule_message (login, password, src_addr, dst_addr, text, date_from [,time_from] [,time_to])
check_status (login, password, id_sms)

Параметр Описание Обязательный Формат
login Имя пользователя да строка
password Пароль пользователя да строка
src_addr Имя отправителя да строка
dst_addr Номер получателя да цифры
text Текст сообщения да строка
date_from Дата отправки сообщения да ГГГГ-ММ-ДД
time_from Время начала рассылки нет чч:мм:сс
time_to Время окончания рассылки нет чч:мм:сс
id_sms Идентификатор сообщения да цифры

Возвращаемые значения

send_message, schedule_message:

  • в случае успеха — цифровой идентификатор сообщения
  • в случае ошибки — краткое описание ошибки

check_status:

  • в случае успеха — статус сообщения (deliver, not_deliver, partly_deliver)
  • в случае ошибки — краткое описание ошибки

Использование

Перед использованием необходимо настроить ваше ПО, указав в настройках путь к WSDL-файлу https://terasms.ru/soap/tera_https.wsdl,
либо адрес сервера https://auth.terasms.ru/soap.

Важно! Файл клиентского скрипта должен быть сохранен в кодировке UTF-8. В противном случае, отправка сообщений на кириллице завершится фатальной ошибкой клиента.

Примеры на языке php

// Простая отправка сообщения

$client = new SoapClient('https://terasms.ru/soap/tera_https.wsdl');
$id_sms = $client->send_message('login', 'password', 'terasms', '79991234567', 'Hello world!');
// Отправка сообщения по расписанию

$client = new SoapClient('https://terasms.ru/soap/tera_https.wsdl');
$id_sms = $client->schedule_message('login', 'password', 'terasms', '79991234567', 'Поздравляю с наступающим Новым Годом!', '2015-12-31', '08:00:00', '23:59:59');
// Получение результата доставки сообщения

$client = new SoapClient('https://terasms.ru/soap/tera_https.wsdl');
$status = $client->check_status('login', 'password', $id_sms);