Структура HTTP POST-запроса
Основные параметры:
[user] => login зарегистрированное в системе ID пользователя вида XXXXX или ХХХХХ.X [pass] => password пароль пользователя Адрес обращения: http://web.smsgold.ru/http2/ или https://web.smsgold.ru/http2/ Тип авторизации: PLAIN (открытым текстом) Метод отправки запроса: POST Кодировка: UTF-8 Content-Type: application/x-www-form-urlencoded
Максимальная длина сообщений: 480 символов.
Авторизация

Авторизация требуется при каждом подключении к серверу независимо от дальнейших действий.
| Параметр | Значение |
|---|---|
| [user] | зарегистрированное в системе ID пользователя вида XXXXX или ХХХХХ.X |
| [pass] | пароль пользователя |
Отправка сообщения
Параметры передачи смс http-серверу в виде POST-запроса (определить, что идет отправка SMS можно по полю [action] => send):
| Параметр | Значение |
|---|---|
| [action] | send |
| [text] | текст сообщения |
| [number] | номер или список телефонных номеров получателей SMS в международном формате через запятую
(Разрешается использование как [number], так и [base_id]) |
| [base_id] | кодовое имя Группы контактов из Адресной книги в Личном кабинете
(Разрешается использование как [number], так и [base_id]) |
| [sender] | имя отправителя (если оставить пустым или параметр отсутствует - будет использовано имя отправителя, зарегистрированное по умолчанию в Личном кабинете) |
| [validity_period] | время жизни смс в минутах - максимальное время, в течение которого сообщение должно быть доставлено на телефон. Если в течение этого времени доставка не возможна (например абонент не в зоне действия сети или телефонный аппарат абонента выключен), то сообщение доставлено не будет и получит статус "просрочено". Внимание, данная функция может не работает для некоторых направлений, например для CDMA телефонов. (необязательный параметр, значение по умолчанию: 1440 минут (24 часа)) |
| [time_period] | период отправки сообщения в формате "H:i-H:i" (час:мин-час:мин), в течение которого сообщение должно быть доставлено получателям (например 10:00-21:00). Опция позволяет запретить доставку сообщений, например, в ночное время. Для указанного периода времени можно уточнить часовой пояс в [time_local] |
| [time_local] | выбор часового пояса для опции [time_period]:
1 - по местному время получателя 0 - по часовому поясу, выбранному в личном кабинете отправителя (значение по умолчанию) |
| [autotrimtext] | on - обрезать все пробелы и переводы строк в начале и конце сообщения (значение по умолчанию - off) |
| [sms_type] | тип SMS:
пустое значение или параметр отсутствует - простое SMS (значение по умолчанию) W - wap push сообщение F - flash SMS сообщение |
| [wap_url] | HTTP ссылка из текста сообщения (http://some.address.url) используется только для [sms_type] => W, то есть для wap push сообщения |
Пример запроса к серверу для отправки текста на один номер (развернуть)...
Пример запроса на PHP:
<?php
header('Content-type: text/xml');
$ch = curl_init();
$data = array(
'user' => '10XXX',
'pass' => 'PASSWORD',
'action' => 'send',
'sender' => 'SmsGold',
'number' => '79XXXXXXXXX',
'text' => 'Текст Вашего смс сообщения'
);
curl_setopt($ch, CURLOPT_URL, 'http://web.smsgold.ru/http2/');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
$res = curl_exec($ch);
curl_close($ch);
echo $res;
?>
Пример ответа сервера при отправке текста на один номер (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
*err="" - номер ошибки, возникшей при отправке, если ошибки нет, то err=null либо err="0"
(может быть как для всего пакета смс - ошибка обработки самого запроса, так и для одного конкретного номера - ошибка номера, направления и т.д.)
Пример запроса к серверу для отправки текста на несколько номеров (развернуть)...
Пример запроса на PHP:
<?php
header('Content-type: text/xml');
$ch = curl_init();
$data = array(
'user' => '10XXX',
'pass' => 'PASSWORD',
'action' => 'send',
'sender' => 'SmsGold',
'number' => '79XXXXXXXXX,79XXXXXXXXX',
'text' => 'Текст Вашего смс сообщения'
);
curl_setopt($ch, CURLOPT_URL, 'http://web.smsgold.ru/http2/');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
$res = curl_exec($ch);
curl_close($ch);
echo $res;
?>
Пример ответа сервера при отправке текста на несколько номеров (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
*err="" - номер ошибки, возникшей при отправке, если ошибки нет, то err=null либо err="0"
(может быть как для всего пакета смс - ошибка обработки самого запроса, так и для одного конкретного номера - ошибка номера, направления и т.д.)
Получение статусов сообщений
Имеется три варианта получения статусов для сообщений (определить, что идет получение статуса SMS можно по полю [action] => status):
| Параметр | Значение |
|---|---|
| [action] | status |
| Три варианта получения статусов для сообщений: | |
| [sms_id] | номер сообщения (соответствует значению атрибута sms_id тэга <sms>, возвращаемого при отправке сообщения) |
| [sms_group_id] | номер рассылки (соответствует значению атрибута sms_group_id тэга <result>, возвращаемого при отправке сообщений) |
| [date_from] [date_to] |
данные по всем сообщениям за период времени от [date_from] до [date_to]
формат date_from, date_to: "d.m.Y H:i:s" (дд.мм.гггг час:мин:сек) период не должен быть больше 4 дней до текущей даты |
Возможные статусы:
QUEUED - сообщение находится в обработке на нашей стороне ENROUTE - сообщение отправлено оператору DELIVRD - сообщение успешно доставлено EXPIRED - время жизни сообщения истекло DELETED - сообщение удалено UNDELIV - не удалось доставить сообщение ACCEPTD - сообщение принято и будет отправлено оператору UNKNOWN - состояние сообщения не определено REJECTD - сообщение отклонено
Пример ответа сервера на запрос статуса смс по [sms_id] (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
Пример ответа сервера на запрос статуса смс по [sms_group_id] (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
Пример ответа сервера на запрос статуса смс по [date_from] и [date_to] (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
Поле атрибута description тега <sms> в ответе сервера при получении статусов сообщений может принимать следующие значения:
- Некорректный номер телефона
- Недостаточно средств на счету
- Нет денег на счету вышестоящего контрагента
- Отправка заблокирована, номере телефона находится в черном списике
- Запрещено посылать сообщение с тем же текстом тому же адресату
- Ошибка транспорта
- Данное направление не подключено
- Данное направление не подключено у вышестоящего контрагента
- Сообщение не прошло модерацию 1
- Сообщение не прошло модерацию 2
- Данная подпись отпраавтеля не подтверждена
- Отправка в данный период времени запрещена настройками Вашего ЛК
- Статус "не удалось доставить сообщение" получен от оператора
Получение статусов сообщений на свой URL
При получении финального статуса по каждой из отправленных SMS на Ваш URL адрес, указанный в настройках ("Личный кабинет \ Настройки \ URL скрипта для приёма статуса отправленных SMS"), по HTTP протоколу методом POST будет передан запрос, содержащий JSON данные с заголовком Content-Type: application/json;charset=utf-8.
Если Ваш сервер не вернул корректный HTTP-статус, то будет осуществлено несколько попыток отправки финального статуса сообщения по следующей логике:
2 попытка через 5 минут после предыдущей, если она завершилась не корректно;
3 попытка через 10 минут после предыдущей, если она завершилась не корректно;
4 финальная попытка через 15 минут после предыдущей, если она завершилась не корректно;
Ваш скрипт должен вернуть HTTP-статус - 200 OK (успешный запрос).
Содержимое объекта JSON:
| Параметр | Значение |
|---|---|
| [user] | зарегистрированное в системе ID пользователя вида XXXXX или ХХХХХ.X |
| [sms_id] | номер сообщения (соответствует значению атрибута sms_id тэга <sms>, возвращаемого при отправке сообщения) |
| [number] | номер телефонного номера получателя SMS в международном формате |
| [sender] | имя отправителя |
| [parts] | количество частей SMS |
| [err] | номер ошибки, возникшей при отправке, если ошибки нет, то err=null либо err="0" |
| [status] | финальный статус SMS |
| [description] | описание статуса |
| [delivery_date] | дата доставки в формате "d.m.Y" (дд.мм.гггг) |
| [delivery_time] | время доставки в формате "H:i:s" (час:мин:сек) |
Получение текущего баланса
Структура POST-запроса к http-серверу для получения баланса пользователя (определить, что идет запрос на получение текущего баланса можно по полю [action] => balance):
| Параметр | Значение |
|---|---|
| [action] | balance |
Пример ответа сервера на запрос (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
Получение входящих сообщений
Структура POST-запроса к http-серверу для получения входящих сообщений (определить, что идет запрос на получение входящих сообщений можно по полю [action] => inbox):
| Параметр | Значение |
|---|---|
| [action] | inbox |
| [inbox_num] | номер входящего ящика (обязательный параметр) (соответствует значению "ID ящика" в закладке "Настройки") |
| [inbox_new] | статус сообщений:
1 - только новые непрочитанные сообщения 0 - все сообщения |
| [date_from] [date_to] |
данные по всем сообщениям за период времени от [date_from] до [date_to]
формат date_from, date_to: "d.m.Y H:i:s" (дд.мм.гггг час:мин:сек) период не должен быть больше 4 дней до текущей даты |
Получение списка доступных имен отправителей
Структура POST-запроса к http-серверу для получения списка доступных имен отправителей (определить, что идет запрос на получение списка доступных имен отправителей можно по полю [action] => senderlist):
| Параметр | Значение |
|---|---|
| [action] | senderlist |
Пример ответа сервера на запрос (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
Получение списка групп контактов
Структура POST-запроса к http-серверу для получения списка групп контактов (определить, что идет запрос на получение списка групп контактов можно по полю [action] => baselist):
| Параметр | Значение |
|---|---|
| [action] | baselist |
Пример ответа сервера на запрос (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
Получение списка абонентов в группе контактов
Структура POST-запроса к http-серверу для получения списка абонентов в группе контактов (определить, что идет запрос на получение списка абонентов в группе контактов можно по полю [action] => numberlist):
| Параметр | Значение |
|---|---|
| [action] | numberlist |
| [base_id] | кодовое имя группы (задается в настройках базы в личном кабинете) |
| [base_page] | номер страницы, весь список номеров базы делится на страницы (на одной странице выводится 1000 записей), запросить целиком базу нельзя, можно лишь запросить отдельную страницу, нумерация начинается с единицы. |
Пример ответа сервера на запрос (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
Добавление/Редактирование абонентов в группе контактов
Структура POST-запроса к http-серверу для добавления/редактирования абонентов в группе контактов (определить, что идет запрос на добавление/редактирование абонентов в группе контактов можно по полю [action] => numberedit):
| Параметр | Значение |
|---|---|
| [action] | numberedit |
| [base_id] | кодовое имя группы (задается в настройках базы в личном кабинете) |
| [number] | номер телефона абонента в международном формате (обязательное поле), если абонент с таким номером уже существует, то он будет отредактирован с учетом указанных необязательных полей |
| [name] | имя (необязательное поле) |
| [surname] | фамилия (необязательное поле) |
| [patronymic] | отчество (необязательное поле) |
| [show_name] | имя для отображения (необязательное поле) |
| [gender] | пол (необязательное поле) |
| [position] | должность (необязательное поле) |
| [email] | электронная почта (необязательное поле) |
| [date_of_birth] | дата рождения в виде дд.мм.гггг (необязательное поле) |
| [add_field_1] | дополнительное поле 1 (необязательное поле) |
| [add_field_2] | дополнительное поле 2 (необязательное поле) |
| [comment] | примечание (необязательное поле) |
Пример ответа сервера на запрос (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
Удаление абонентов из группы контактов
Структура POST-запроса к http-серверу для удаления абонентов из группы контактов (определить, что идет запрос на удаление абонентов из группы контактов можно по полю [action] => numberdel):
| Параметр | Значение |
|---|---|
| [action] | numberdel |
| [base_id] | кодовое имя группы (задается в настройках базы в личном кабинете) |
| [number] | номер телефона абонента в международном формате (обязательное поле) |
Пример ответа сервера на запрос (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
Получение списка запрещенных номеров
Структура POST-запроса к http-серверу для получения списка запрещенных номеров (определить, что идет запрос на получение списка запрещенных номеров можно по полю [action] => stoplist):
| Параметр | Значение |
|---|---|
| [action] | stoplist |
| [base_page] | номер страницы, весь список запрещенных номеров делится на страницы (на одной странице выводится 1000 записей), запросить целиком список нельзя, можно лишь запросить отдельную страницу, нумерация начинается с единицы. |
Пример ответа сервера на запрос (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
Добавление запрещенных номеров
Структура POST-запроса к http-серверу для добавления запрещенных номеров (определить, что идет запрос на добавление запрещенных номеров можно по полю [action] => stopadd):
| Параметр | Значение |
|---|---|
| [action] | stopadd |
| [number] | номер телефона абонента в международном формате (обязательное поле) |
Пример ответа сервера на запрос (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
Добавление абонентов в группу контактов (через загрузку файла)
Структура POST-запроса к http-серверу для добавления абонентов в группу контактов через загрузку файла (определить, что идет запрос на добавление абонентов в группу контактов через загрузку файла можно по полю [action] => numberaddfile):
| Параметр | Значение |
|---|---|
| [action] | numberaddfile |
| [base_id] | кодовое имя группы (задается в настройках базы в личном кабинете) |
| [file] | путь к файлу |
| [file_type] | тип файла (csv / txt / xls / xlsx / auto) (значение auto - по умолчанию) |
| [delimiter] | разделитель полей (, / ; / auto) (значение auto - по умолчанию) |
| [encoding] | кодировка файла (utf8 / cp1251 / koi8r / auto) (значение auto - по умолчанию) |
| [remove_doubles] | поведение при обнаружении дублей в файле и в базе:
true - не добавлять дублирующиеся номера, попадающиеся в файле и в базе (значение по умолчанию) false - добавлять дублирующиеся номера, попадающиеся в файле и добавлять номер если он уже присутствует в базе |
| [headers] | перечисление через запятую заголовков колонок в порядке их очередности в файле:
"number,name,surname,patronymic,show_name,gender, position,email,date_of_birth,add_field_1,add_field_2,comment" если поле отсутствует - указывать не нужно |
| Список допустимых колонок данных: | |
| [number] | номер телефона абонента в международном формате (обязательное поле) |
| [name] | имя (необязательное поле) |
| [surname] | фамилия (необязательное поле) |
| [patronymic] | отчество (необязательное поле) |
| [show_name] | имя для отображения (необязательное поле) |
| [gender] | пол (необязательное поле) |
| [position] | должность (необязательное поле) |
| [email] | электронная почта (необязательное поле) |
| [date_of_birth] | дата рождения в виде дд.мм.гггг (необязательное поле) |
| [add_field_1] | дополнительное поле 1 (необязательное поле) |
| [add_field_2] | дополнительное поле 2 (необязательное поле) |
| [comment] | примечание (необязательное поле) |
ВАЖНО: номера телефонов в добавляемом файле должны быть представлены в международном формате без символа "+" (например: 7XXXXXXXXXX)
Пример ответа сервера на запрос (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>
Добавление запрещенных номеров (через загрузку файла)
Структура POST-запроса к http-серверу для добавления запрещенных номеров через загрузку файла (определить, что идет запрос на добавление запрещенных номеров через загрузку файла можно по полю [action] => stopaddfile):
| Параметр | Значение |
|---|---|
| [action] | stopaddfile |
| [file] | путь к файлу |
| [file_type] | тип файла (csv / txt / xls / xlsx / auto) (значение auto - по умолчанию) |
| [delimiter] | разделитель полей (, / ; / auto) (значение auto - по умолчанию) |
| [encoding] | кодировка файла (utf8 / cp1251 / koi8r / auto) (значение auto - по умолчанию) |
При добавлении запрещенных номеров (через загрузку файла) все дубли пропускаются
ВАЖНО: номера телефонов в добавляемом файле должны быть представлены в международном формате без символа "+" (например: 7XXXXXXXXXX)
Пример ответа сервера на запрос (развернуть)...
<?xml version="1.0" encoding="UTF-8"?>

Номера телефонов в любых типах запросов должны быть представлены в международном формате без символа "+" (например: 7XXXXXXXXXX)
Использование протокола НТТP (GET-запросы) для отправки и приема смс сообщений
навигация
Отправка сообщения
Список обязательных параметров:
| Имя параметра | Значение параметра |
|---|---|
| user | Зарегистрированное в системе ID пользователя вида XXXXX или ХХХХХ.X |
| pass | Пароль пользователя. |
| action | sendvk |
| number | Телефонный номер получателя сообщения в международном формате без символа "+". |
| vk_template_­name | Имя шаблона, зарегистрированного ранее. Приходит при создании шаблона в письме с подтверждением от ВК ОК. Также можно получить при просмотре списка шаблонов. |
| vk_service | Присылается с первым одобренным шаблоном для подключаемой группы на указанный при запросе шаблона e-mail. |
Список необязательных параметров:
| Имя параметра | Значение параметра |
|---|---|
| vk_template_data­(json_string) | Передача переменных из шаблона {"var_name1":"value","var_name2":"value"} (Если в шаблоне используются переменные, то данный параметр обязателен). |
| vk_routes | Маршрут отправки (vk - значение по умолчанию ВКонтакте, ok - Одноклассники, vk,ok - оба, т.е. доставка производится до первого получения уведомления на физическое устройство. При указании нескольких каналов доставки в итоге использован и тарифицирован будет только один из каналов.) |
| vk_delivery_­policy | (any, mobile_device_required, verified_phone_number) |
| vk_ttl | Время жизни сообщения в секундах (от 60 до 24*60*60). |
| vk_type | S - режим “каскад”, отправка sms если сообщение ВК ОК не доставлено/прочитано. |
| sender | Имя отправителя для sms (будет использовано имя отправителя по умолчанию в случае если параметр пустой). |
| sms_text | Текст для sms если сообщение ВК ОК не доставлено/прочитано. |
| vk_read_ttl | Принимает значения от 0 сек. (не использовать каскад по непрочтению) до 24*60*60 сек. Работает по принципу: если сообщение не было прочитано в течении установленного количества секунд - осуществляется отправка sms, даже если сообщение было доставлено. Денежные средства за отправку сообщения ВК ОК не возвращаются, а в отчете появляется еще одно сообщение sms, т.е обновления старого объекта не происходит. Работает только если [vk_type]=S |
Добавление шаблона
Список обязательных параметров:
| Имя параметра | Значение параметра |
|---|---|
| user | Зарегистрированное в системе ID пользователя вида XXXXX или ХХХХХ.X |
| pass | Пароль пользователя. |
| action | sendvk |
| vk_template_­name | Имя шаблона, допустимые символы: A-Za-z0-9_ |
| notificationEmail | Электронный адрес на который будут приходить извещения о активировании/удалении шаблонов |
| vkGroupUrl|ok­GroupUrl | URL групп VK и OK. Обязательно указать хотя бы один параметр, можно указывать оба. |
| template|vkTemplate|­okTemplate | Текстовый шаблон (общий или отдельный для групп VK и OK). В именах переменных допускаются следующие символы: A-Za-z0-9_ Пример шаблона: Уважаемый #username# вам предоставляется скидка в размере #percent#% на покупку #goods# |
Список необязательных параметров:
| Имя параметра | Значение параметра |
|---|---|
| service | Идентификатор клиента и его продукта\проекта. Для новой группы (первый шаблон) этот параметр может быть пустым. Название придет в ответе о подтверждении вашего шаблона в письме на указанный email |
| attachments­[filename.ext] | BASE_64_BODY_OF_IMAGE |
Редактирование шаблона
Список обязательных параметров:
| Имя параметра | Значение параметра |
|---|---|
| user | Зарегистрированное в системе ID пользователя вида XXXXX или ХХХХХ.X |
| pass | Пароль пользователя. |
| action | sendvk |
| vk_template_­name | Имя шаблона, допустимые символы: A-Za-z0-9_ |
| notificationEmail | Электронный адрес на который будут приходить извещения о активировании/удалении шаблонов |
| vkGroupUrl|ok­GroupUrl | URL групп VK и OK. Обязательно указать хотя бы один параметр, можно указывать оба. |
| template|vkTemplate|­okTemplate | Текстовый шаблон (общий или отдельный для групп VK и OK). В именах переменных допускаются следующие символы: A-Za-z0-9_ Пример шаблона: Уважаемый #username# вам предоставляется скидка в размере #percent#% на покупку #goods# |
| service | Идентификатор клиента и его продукта\проекта. Для новой группы (первый шаблон) этот параметр может быть пустым. Название придет в ответе о подтверждении вашего шаблона в письме на указанный email |
Список необязательных параметров:
| Имя параметра | Значение параметра |
|---|---|
| new_vk_template_­name | |
| drop_attachments | |
| attachments­[filename.ext] | BASE_64_BODY_OF_IMAGE |
Просмотр списка шаблонов
Список обязательных параметров:
| Имя параметра | Значение параметра |
|---|---|
| user | Зарегистрированное в системе ID пользователя вида XXXXX или ХХХХХ.X |
| pass | Пароль пользователя. |
| action | get_vk_templates |
Удаление шаблона
Список обязательных параметров:
| Имя параметра | Значение параметра |
|---|---|
| user | Зарегистрированное в системе ID пользователя вида XXXXX или ХХХХХ.X |
| pass | Пароль пользователя. |
| action | delete_vk_template |
| vk_template_­name | Имя шаблона, зарегистрированного ранее. Приходит при создании шаблона в письме с подтверждением от ВК ОК. Также можно получить при просмотре списка шаблонов. |
Использование протокола SMPP v.3.4 для отправки и приема смс сообщений.
Внимание: Перед началом использования smpp протокола Вам необходимо предоставить список IP адресов, с которых Вы будете подключаться.
Параметры подключения
- system_id — зарегистрированное в системе имя пользователя (логин)
- password — пароль пользователя
- Адрес — web.smsgold.ru
- Порт — 2604
Правила работы с SMPP подключением
- При установке подключения клиенту дается 10 секунд, что бы отправить команду BIND_TRANSMITTER или BIND_TRANSCEIVER. Иначе соединение будет разорвано сервером.
- Клиент обязан отвечать на все пакеты отправленные сервером соответствующим resp пакетом в течение 1 минуты. Иначе соединение будет разорвано сервером без отсылки UNBIND.
- После установки подключения и авторизации сервер будет отправлять ENQUIRE_LINK пакеты каждую минуту. На этот пакет клиент также обязан ответить в течение 1 минуты.
- Если при отправке в пакете Submit_sm установлен флаг registered_delivery, то статус сообщения будет возвращен только в подключение, установленное от имени пользователя, отправившего сообщения.
Получение статуса доставки сообщения
- Есть две возможности получения статуса доставки (активный и пассивный). Пассивный вариант является предпочтительным.
- Пассивный вариант предусматривает установку флага registered_delivery пакета SUBMIT_SM. После перехода сообщения в финальное состояние сервер отправит DELIVER_SM пакет с Delivery Receipt сообщением. Формат Delivery Receipt сообщения ниже.
- Активный вариант предусматривает периодический опрос статуса сообщения отсылкой QUERY_SM.
Формат Delivery Receipt
- "id:IIIIIIIIII sub:SSS dlvrd:DDD submit date:YYMMDDhhmm done date:YYMMDDhhmm stat:DDDDDDD err:E Text: . . . . . . . . ."
8 800 500-80-16