Сервис отправки СМС сообщений
Оглавление
Отправка сообщений с помощью XML………..………………………………………………1
Отправка сообщений с помощью HTTP GET…..……………………………………………..3
Входящие сообщения…………….……………………………………………………………..4
Коды статусов документа………………………………………………………………………5
Коды статусов сообщений……………………………………………………………………...5
Отправка сообщений с помощью XML
Общение с сервисом осуществляется при помощи отправки XML запросов в кодировке UTF-8 на заданный адрес сервиса по протоколу HTTP/HTTPS методом POST, проверка типа контента не осуществляется.
Каждый запрос может состоять из отправляемых сообщений и (или) запросов для получения статусов и (или) запросов для получения входящих сообщений. Авторизация пользователя происходит путем передачи учетных сведений в теге package, обязательна при выполнении любых запросов.
Отправка сообщений
Отправка сообщений осуществляется в соответствии с очередностью и временем отправки.
text
text
-
Default – тег, в котором определяются общие атрибуты, указываемые для всех отправляемых сообщений. Если какой-либо атрибут указан в сообщении, то атрибут данного тега игнорируется.
-
msg – тег сообщения, в качестве параметра указывается текст отправляемого сообщения, может содержать следующие атрибуты:
id – (integer) пользовательский числовой идентификатор сообщения, необязательный атрибут, при использовании пользователь должен гарантировать уникальность данного идентификатора в пределах своей учетной записи.
recipient – (varchar(21)) получатель сообщения (номер телефона), может использоваться в формате с «+» или без него.
sender – (varchar(11)) отправитель сообщения (подпись сообщения), необязательный атрибут.
date_beg – (datetime, ISO8601) дата отправки сообщения, необязательный атрибут, указывается для отложенной отправки сообщений.
date_end – (datetime, ISO8601) дата после которой сообщение теряет актуальность и если оно еще не было отправлено абоненту, отправляться не будет, необязательный атрибут.
url – (varchar(100)) ссылка для создания wap-push сообщения.
type – (integer) тип сообщения: 0-обычное сообщение, 1-флеш сообщение, 2-wap-push сообщение.
На полученный запрос сервис возвращает в виде параметра статус сообщения, а в атрибутах идентификаторы присвоенные сообщениям.
201
1
-
msg – тег сообщения, в качестве параметра возвращается код статуса, может содержать следующие атрибуты:
-
id – (integer) пользовательский числовой идентификатор сообщения, необязательный атрибут, возвращается при указании данного атрибута в запросе.
-
sms_id – (integer) числовой идентификатор сообщения присвоенный шлюзом.
-
sms_count – (integer) реальное количество SMS к отправке.
Запрос статусов сообщений
Статусы сообщений содержат информацию о текущем состоянии сообщения, регулярно обновляются и могут быть запрошены пользователем в любое время.
-
msg – тег сообщения для которого происходит запрос статуса, может содержать следующие атрибуты:
-
id – (integer) пользовательский числовой идентификатор сообщения, необязательный атрибут.
-
sms_id – (integer) числовой идентификатор сообщения присвоенный шлюзом.
В ответ на запрос возвращается XML документ содержащий статусы для запрошенных сообщений, либо соответствующие коды ошибок.
102
1
-
msg – тег сообщения для которого происходит запрос статуса, в качестве параметра возвращается код статуса, может содержать следующие атрибуты:
-
id – (integer) пользовательский числовой идентификатор сообщения, необязательный атрибут, возвращается при указании данного атрибута в запросе.
-
sms_id – (integer) числовой идентификатор сообщения присвоенный шлюзом.
-
sms_count – (integer) реальное количество SMS к отправке.
-
date_completed – (datetime, ISO8601) дата присвоения финального статуса.
Отправка сообщений с помощью HTTP GET
Также есть возможность осуществлять отправку сообщений и запрос статуса сообщений с помощью метода HTTP GET. Для этого по адресу сервиса производится запрос HTTP GET. При этом в качестве параметров запроса передаются определенные значения.
Отправка сообщений
Для отправки сообщений методом HTTP GET используются следующие параметры запроса:
login - параметр принимает значение логина пользователя в системе.
password – параметр принимает значение пароля, соответствующего логину.
type - для отправки сообщения данный параметр должен принимать значение - ‘message’.
id – (integer) пользовательский числовой идентификатор сообщения, необязательный атрибут, при использовании пользователь должен гарантировать уникальность данного идентификатора в пределах своей учетной записи.
recipient – (varchar(21)) получатель сообщения (номер телефона), может использоваться в формате с «+» или без него.
sender – (varchar(11)) отправитель сообщения (подпись сообщения), необязательный атрибут.
text – параметр содержит текст сообщения.
Запрос статуса сообщений
Для запроса статуса сообщений методом HTTP GET используются следующие параметры запроса:
login - параметр принимает значение логина пользователя в системе.
password – параметр принимает значение пароля, соответствующего логину.
type - для отправки сообщения данный параметр должен принимать значение - ‘status’.
id – (integer) пользовательский числовой идентификатор сообщения, необязательный атрибут, возвращается при указании данного атрибута в запросе.
sms_id – (integer) числовой идентификатор сообщения присвоенный шлюзом.
Пример: http://service.craftmobile.ru/get.ashx?login=логинt&password=пароль&recipient=номертелефона&sender=подпись&text=test&type=message
Входящие сообщения
Отправка входящих сообщений происходят путем HTTP GET запроса на адрес Партнера.
Параметры запроса:
Параметр
|
Тип данных
|
Описание
|
id
|
integer
|
Уникальный идентификатор сообщения, представляет собой числовую последовательность
|
source
|
varchar(21)
|
Номер телефона абонента отправившего SMS сообщение
|
dest
|
varchar(11)
|
Короткий или федеральный номер, на который абоненты отправляют SMS сообщения
|
received
|
datetime, ISO8601
|
Время получения
|
text
|
varchar(4000)
|
Текст SMS сообщения
|
Запрос входящих сообщений
Входящие сообщения хранятся на сервере и могут быть запрошены пользователем в любой момент. При запросе пользователь получает очередные сообщения неполученные им ранее. Каждому сообщению на сервере присваивается идентификатор ID, который гарантируют уникальный порядок, и если по каким-либо причинам, часть сообщений будет утрачена клиентом, по недостающим ID можно будет запросить эти сообщения в любое время. За один запрос может быть возвращено максимум 100 сообщений.
-
get_msg – тег запрашивающий очередные сообщения, не содержит атрибутов и параметров
-
msg – тег запрашивающий сообщения по определенному ID:
sms_id – (integer) числовой идентификатор сообщения.
В ответ на запрос возвращается XML документ, содержащий запрошенные сообщения:
Текст сообщения
-
msg – тег сообщения, в качестве параметра возвращается текст сообщения, может содержать следующие атрибуты:
sms_id – (integer) числовой идентификатор сообщения (уникальный для пользователя).
sender – (varchar(21)) отправитель сообщения.
destination – (varchar(11)) номер на который абонент отправляет сообщение.
date_received – (datetime, ISO8601) дата получения сообщения.
Если нет невыбранных сообщений, то запрос вернет XML документ:
Коды статусов документа
При отправке 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 // Превышение лимита выделенных сообщений
Таблица 1. Замена специальных символов в XML запросах.
Специальный символ
|
Замена
|
<
|
<
|
>
|
>
|
"
|
"
|
'
|
'
|
&
|
&
|
Достарыңызбен бөлісу: |