PUSH¶
Отправка¶
Для отправки PUSH-уведомлений необходимо вызвать POST /push/messages, передавая в теле параметры сообщения с указанием данных авторизации в заголовке.
Информация
Для получения доступа к Push API напишите на support@devinotele.com. Вам будет предоставлен Идентификатор отправителя, необходимый для использования API.
Параметры запроса¶
Параметр | Тип данных | Описание и допустимые значения |
---|---|---|
from | integer | Идентификатор отправителя |
to | string | Идентификатор устройства получателя |
title | string | Заголовок уведомления |
text | string | Текст уведомления |
badge (optional) |
integer | Ключ - устанавливающий значение для бейджа приложения - Если ключ не включен в словарь, то значение бейджа не изменяется - Для удаления значка, необходимо установить значение ключа равным 0 |
validity (optional) |
integer | Время жизни уведомления. Минимум, в секундах: 15 - Максимум, в секундах: 86400 - По умолчанию в секундах: 86400 |
priority | string | Приоритет отправки сообщения, от 0 до 3, где: 0 - низкий приоритет 3 - наивысший По умолчанию - 0 |
silentPush (optional) |
boolean | Флаг, который сообщает SDK одно из значений: если true, то уведомление не будет отображаться на устройстве |
options (optional) |
string | Map |
apns (optional) |
ApnsDto | Специфичные для apns поля |
android (optional) |
AndroidDto | Специфичные для Android поля |
Внимание
Для отправки уведомления необходимо использовать один из объектов: ApnsDto или AndroidDto.
ApnsDto¶
Параметр | Тип данных | Описание и допустимые значения |
---|---|---|
sound (optional) |
string | Включите этот ключ, если хотите, чтобы система воспроизводила звук. Значение этого ключа - это имя звукового файла в главном комплекте приложения или в папке «Библиотека / Звуки» в контейнере данных вашего приложения. Если звуковой файл не найден, или если вы указали значение по умолчанию для значения, система воспроизводит звук предупреждения по умолчанию. Поддерживаемые форматы: - AIF - AIFF - WAV - MP3 - MP4 Максимальный размер: 5МБ |
buttons (optional) |
list ActionButtons | Максимум 3 объекта ActionButtons |
linkToMedia (optional) |
string | URL на файл. Поддерживаемые форматы: - Audio (AIFF, WAV, MP3, MPEG-4), 5 MB - Movie (MPEG, MPEG-2, AVI), 50 MB - Image (JPEG. PNG, GIF), разрешение: 1024x1024 или соотношение сторон 1:1, 10МБ |
action (optional) |
string | Url/Deep link - действие по нажатию на уведомление |
ActionButtons¶
Параметр | Тип данных | Описание и допустимые значения |
---|---|---|
caption (optional) |
string | Наименование кнопки, может содержать до 30 символов |
action (optional) |
string | Url/Deep-link - действие по нажатию на кнопку в уведомлении |
AndroidDto¶
Параметр | Тип данных | Описание и допустимые значения |
---|---|---|
iconCollor (optional) |
string | Цвет значка уведомлений, формат #rrggbb |
sound (optional) |
string | Звук для воспроизведения, когда устройство получает уведомление. Поддерживает «default» или имя файла звукового ресурса, входящего в состав приложения. Звуковые файлы должны находиться в /res/raw/. Поддерживаемые форматы: - aif/aiff - wav - MP3 - MP4 Максимальный размер: 5MB |
image (optional) |
string | Имя файла изображения в комплекте приложения с расширением имени файла или без него. Изображение используется как образ запуска, когда пользователи нажимают кнопку действия или перемещают ползунок действий. Если это свойство не указано, система использует изображение, идентифицированное ключом UILaunchImageFile в файле Info.plist приложения, или Default.png. Поддерживаемые форматы: - JPEG - GIF - PNG Размеры: - Минимум - 512х256 - Оптимальный - 1440x720 - Максимум - 2880х1440 Разрешение: - 1440x720 или соотношение сторон 2:1 |
androidChannelId (optional) |
string | Идентификатор канала уведомления. Более подробное описание. |
tag (optional) |
string | Идентификатор для отбора пользователей (используется для тегирования абонентов в базах клиентов на стороне FireBase) |
buttons (optional) |
list ActionButtons | Максимум 3 объекта ActionButtons |
collapseKey (optional) |
string | При появлении более нового сообщения, в котором более старое связанное сообщение не имеет отношения к клиентскому приложению, FCM заменяет более старое сообщение |
icon (optional) |
string | URL-адрес, используемый для значка уведомления. Возможные форматы иконки уведомления: - 24x24 - 36x36 - 48x48 - 72x72 - 96x96 |
action (optional) |
string | Url/Deep link - действие по нажатию на уведомление |
ActionButtons¶
Параметр | Тип данных | Описание и допустимые значения |
---|---|---|
icon (optional) |
string | URL-адрес, используемый для значка уведомления. Возможные форматы иконки уведомления: - 24x24 - 36x36 - 48x48 - 72x72 - 96x96 |
caption (optional) |
string | Наименование кнопки, может содержать до 30 символов |
action (optional) |
string | Url/Deep-link - действие по нажатию на кнопку в уведомлении |
Пример запроса¶
curl
-X POST
-H "Authorization: Key QWxhZGRpbjpvcGVuIHNlc2FtZQ=="
-H "Content-Type: application/json"
-d '[{
"from":400,
"to":"r0Fo0EjfqKjTeZZpPW4s63PpMEYpgKIj55DT",
"title":"title",
"text":"Hello",
"badge":1,
"valitity":86400,
"priority":"NORMAL",
"options":{
"name":"Иван",
"phone":"79169492211"
},
"apns":{
"linkToMedia":"Default.png",
"sound":"hi.mp3",
"action":"https://test.com/apple-app-site-association"
},
"android":{
"icon":"Default.png",
"iconCollor":"#FF4500",
"sound":"hi.mp3",
"action":"https://test.com/android-app-site-association"
},
}]' "https://api.devino.online/push/messages"
Пример ответа¶
{
"result":[
{
"code":"string",
"description":[
{
"errorMessage":"string",
"fieldName":"string"
}
],
"index":0,
"pushId":0,
"pushToken":"string"
}
]
}
Параметры ответа¶
Параметр | Тип данных | Описание и допустимые значения |
---|---|---|
description | string | Описание ответа |
reasons | object | Причины, сопровождающие ответ |
key | string | Ключ локализации |
params | list | Список параметром при получении ошибки |
ref | string | Путь причины |
result | object | Объект результата |
code | string | Указывает на результат обработки сообщения 1. OK - Успешно обработано 2. REJECTED - Произоошла ошибка во время обработки запроса |
description | object | Описание результата обработки |
errorMessage | string | Сообщение, описывающее ошибку |
fieldName | string | Поле, в котором возникла ошибка |
index | integer | Нумерация сообщения |
pushId | integer | Идентификатор пуша |
pushToken | string | Идентификатор устройства пользователя |
Webhook¶
Внимание
Для подключения отправки статусов обратными вызовами обратитесь к вашему менеджеру или в техническую поддержку по адресу support@devinotele.com
При формировании статуса сообщения будет отправлен POST-запрос на URL удаленного сервера со списком объектов следующего вида:
Параметр | Тип данных | Описание и допустимые значения |
---|---|---|
pushToken | string | Идентификатор устройства, на которое было отправлено уведомление |
pushId | long | Идентификатор уведомления |
state | State | Статус сообщения |
stateDesc (optional) |
string | Описание статуса |
actionId (optional) |
string | Url/Deep link - действие по нажатию на уведомление |
pushApplicationId | integer | Идентификатор приложения, поле from в запросе на отправку |
reportedTimestamp | long | Timestamp формирования статуса |
Возможные статусы¶
Статус | Описание |
---|---|
send | Отправлено в службу уведомлений устройства |
delivered | Уведомление доставлено до устройства |
opened | Был переход по ссылке из уведомления |
canceled | Получатель смахнул уведомление с экрана |
expired | Уведомление не было доставлено за отведённое время |