Руководство по взаимодействию с сервисом коротких сообщений (SMS) на основе XML протокола
Общие положения
Общение с сервисом осуществляется при помощи отправки XML запросов в кодировке UTF8 на заданный адрес сервиса по протоколу HTTP методом POST, проверка типа контента не осуществляется.
Каждый запрос может состоять из отправляемых сообщений и (или) запросов для получения статусов и (или) запросов для получения входящих сообщений. Авторизация пользователя происходит путем передачи учетных сведений в теге package, обязательна при выполнении любых запросов. В случае необходимости использования сервиса с SSL шифрованием, необходимо обратиться в службу технической поддержки. В случае возникновения вопросов обращайтесь в службу технической поддержки по телефону 88001006003 Звонок по России бесплатный.
Наши специалисты могут помочь Вам связать Ваш сайт, интернет магазин или ваше программное обеспечение с нашим сервисом абсолютно бесплатно.
Техническая часть
Адрес сервиса:http://my2.sms-ka.net/api/xml.php
Отправка СМС сообщений:
Отправка сообщений осуществляется в соответствии с очередностью и временем отправки. Максимальное количество СМС сообщений в пакете не больше 100, остальные будут проигнорированы.
Так же в целях инициирования сессии для отправки сообщений блок message может быть опущен.
text text
- Default – тег, в котором определяются общие атрибуты, указываемые для всех отправляемых сообщений. Если какойлибо атрибут указан в сообщении, то атрибут данного тега игнорируется.
- msg – тег сообщения, в качестве параметра указывается текст отправляемого сообщения, может содержать следующие атрибуты:
- id – (integer) пользовательский числовой идентификатор сообщения, необязательный атрибут, при использовании пользователь должен гарантировать уникальность данного идентификатора в пределах своей учетной записи.
- recipient – (varchar(21)) получатель сообщения (номер телефона), может использоваться в формате с «+» или без него.
- sender – (varchar(11)) отправитель сообщения (подпись сообщения), необязательный атрибут.
- date_beg – (datetime, ISO8601) дата отправки сообщения, необязательный атрибут, указывается для отложенной отправки сообщений.
- date_end – (datetime, ISO8601) дата после которой сообщение теряет актуальность и если оно еще не было отправлено абоненту, отправлятся не будет, необязательный атрибут.
- type - (integer) тип отправляемого сообщения. type=0 отправляется обычное СМС сообщений, type=10 отправляется Viber сообщение.
На полученный запрос сервис возвращает в виде параметра статус сообщения, а в атрибутах идентификаторы присвоенные сообщениям.
201 101
- msg – тег сообщения, в качестве параметра возвращается код статуса, может содержать следующие атрибуты:
- id – (integer) пользовательский числовой идентификатор сообщения, необязательный атрибут, возвращается при указании данного атрибута в запросе.
- sms_id – (integer) числовой идентификатор сообщения присвоенный шлюзом.
- sms_count – (integer) реальное количество SMS к отправке.
Запрос статусов СМС сообщений:
Статусы сообщений содержат информацию о текущем состоянии сообщения, регулярно обновляются и могут быть запрошены пользователем в любое время. Максимальное количество запросов в пакете не больше 100, остальные будут проигнорированы.
- msg – тег сообщения для которого происходит запрос статуса, может содержать следующие атрибуты:
- id – (integer) пользовательский числовой идентификатор сообщения, необязательный атрибут.
- sms_id – (integer) числовой идентификатор сообщения присвоенный шлюзом.
В ответ на запрос возвращается XML документ содержащий статусы для запрошенных сообщений, либо соответствующие коды ошибок.
102 1
- msg – тег сообщения для которого происходит запрос статуса, в качестве параметра возвращается код статуса, может содержать следующие атрибуты:
- id – (integer) пользовательский числовой идентификатор сообщения, необязательный атрибут, возвращается при указании данного атрибута в запросе.
- sms_id – (integer) числовой идентификатор сообщения присвоенный шлюзом.
- sms_count – (integer) реальное количество SMS к отправке.
- date_completed – (datetime, ISO8601) дата присвоения финального статуса.
Коды статусов документа
При отправке XML документа могут возвращаться следующие коды ошибок:
ERR_UNKNOWN = 200, // Неизвестная ошибка ERR_FORMAT = 201, // Неправильный формат документа ERR_AUTHORIZATION = 202 // Ошибка авторизации 201
Коды статусов сообщений
Данные коды используются при возврате статусов сообщений.
//1** статусы сообщений SCHEDULED = 100, // The message is scheduled. Delivery has not yet been initiated. ENROUTE = 101, // The message is in enroute state. DELIVERED = 102, // Message is delivered to destination EXPIRED = 103, // Message validity period has expired. DELETED = 104, // Message has been deleted. UNDELIVERABLE = 105, // Message is undeliverable. ACCEPTED = 106, // Message is in accepted state (i.e. has been manually read on behalf of the subscriber by customer service) UNKNOWN = 107, // Message is in invalid state The message state is unknown. REJECTED = 108, // Message is in a rejected state The message has been rejected by a delivery interface. DISCARDED = 109, // Message discarded //2** статусы ошибок ERR_UNKNOWN = 200, // Неизвестная ошибка ERR_ID = 201, // Неправильный ID сообщения ERR_SENDER = 202, // Неправильный идентификатор отправителя ERR_RECIPIENT = 203, // Неправильный номер получателя ERR_LENGTH = 204, // Слишком длинное или пустое сообщение ERR_USER_DISABLE = 205, // Пользователь отключен ERR_BILLING = 206, // Ошибка биллинга ERR_OVERLIMIT = 207 // Превышение лимита выделенных сообщений
Загрузка файлов
Загрузка файлов для отправки Viber сообщений приводиться отправкой POST запроса с иницированной сессией на адрес сервиса. В запросе может быть отправлен как один, так и сразу несколько файлов. На платформу загружаются файлы только размером менее 200 кБ. После отправки файлов Вы получите в виде XML документа список загруженных файлов и их имена в порядке, в котором происходила их отправка на сервер. Загруженные файлы на сервере хранятся 10 дней, после чего автоматически удаляются.
DC7480F5-32A9-B5AB-2180-EDE1A06B50B4.jpg 302
//3** статусы ошибок ERR_UPLOAD = 300, // Ошибка загрузки ERR_SIZE = 301, // Большой размер ERR_FILE = 302, // Ошибка при конвертации