Документация для версии Интеллект 4.10.4. Документация на другие версии также доступна.

Предыдущая страница Следующая страница


You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

В разделе:
 

Используются системы нотификации APNS(iOS), C2DN (Android) и т.д.

deviceid – device token (APNs), registration id (в случае C2DN) и т.д.;

username – логин пользователя. Может быть пустой.

Подписка на сообщения

Приложение при соединении с сервисом может осуществить подписку на сообщения APNS. В этом случае при выходе из программы на устройство будут приходить уведомления о тех или иных событиях.

POST 

http://example.com:[port][/somecontext]/secure/subscription/

Ответ с кодом “201 Created” означает, что подписка прошла успешно.

Код 400 означает, что параметры заданы не верно (deviceId не должно быть пустым, должно быть длиной от 5 до 150 символов и содержать только цифры и буквы английского алфавита).

Тело POST должно содержать информацию о создаваемой подписке. Принимается только формат JSON. Требуется корректно проставлять заголовок Content-Type.

Пример ответа:

JSON

Content-Type  :  application/json

{
    "username" : "johndoe",
    "deviceid" : "somedeviceid"
}

Аннулирование подписки

Аннулирование подписки происходит в следующих случаях:

  • Пользователь подписался на события с другого устройства;
  • Сменился device token или registration id;
  • Другой пользователь подписался на события с данного устройства;
  • Произошла ручная отписка от сообщений.

DELETE 

http://example.com:[port][/somecontext]/secure/subscription/[deviceId]

Ответ с кодом “204 No Content” означает, что подписка прошла успешно.

Формат сообщения APN

{
"aps" : {
                     "alert" : "Motion Detected",
                     "badge" : 2 //порядковый номер сообщения. Номера выдаются по порядку после момента последней подписки.
             },
     "e" : {
                "srv" : "XXX",  //id сервера. Уникальный в рамках одного устройства iOS
                "stt" : 88,   //id состояния (см. Список состояний для определённого класса объектов)
                "obj" : "6", //id объекта
                "ts" : "2010-08-02T23:30:00Z" //время отсылки события
            }
}
  • No labels