PUSH¶
Отправка¶
Для отправки push-уведомлений необходимо:
- Получить ID отправителя и доступ к Push API. Для этого необходимо обратиться в техническую поддержку.
- Вызвать POST /push/messages, передавая параметры сообщения в теле запроса и данные авторизации в заголовке.
Примечание
Для автоматической отправки push-уведомлений можно также использовать iOS, Android и Web SDK.
Параметры запроса¶
Параметр | Тип данных | Описание |
---|---|---|
from | integer | Согласованный ID отправителя. |
to | string | Токен устройства получателя. |
title | string | Заголовок уведомления. Максимальная длина - 200 символов. |
text | string | Текст уведомления. Максимальная длина - 1024 символа. |
priority | string | Приоритет отправки сообщения.
|
badge (optional) |
integer | Ключ, устанавливающий значение для бейджа приложения - значка с цифрой в верхнем углу иконки приложения. Цифра обозначает количество непрочитанных уведомлений в приложении. Можно задать любое целое число. |
validity (optional) |
integer | Срок жизни уведомления в секундах. Минимальное значение: 30 Максимальное значение: 86400, 1 сутки По умолчанию: 86400, 1 сутки |
platform (optional) |
string | Платформа или операционная система устройств, на которые будет прислано уведомление. Доступны значения: |
silentPush (optional) |
boolean | Если true , уведомление не будет отображаться на устройстве получателя. По умолчанию false . |
options (optional) |
string | Данные, которые будут указаны в коллбэке со статусом сообщения. Любой массив вида |
apns (optional) |
Apns | Специфические поля для устройств Apple. |
android (optional) |
Android | Специфические поля для устройств Android и Huawei. |
Внимание
Для отправки уведомления необходимо обязательно использовать один из объектов: Apns или Android.
Apns¶
Параметры уведомлений для устройств с ОС iOS.
Параметр | Тип данных | Описание |
---|---|---|
sound (optional) |
string | Звук push-уведомления на iOS. Поддерживает значение Поддерживаемые форматы: AIF, AIFF, WAV, MP3, MP4 |
buttons (optional) |
array[ActionButtons] | Включает в себя максимум 3 объекта кнопок. |
linkToMedia (optional) |
string | URL на файл, прикрепляемый к уведомлению. Поддерживаемые форматы: |
image (optional) |
string | Имя файла изображения в комплекте приложения: с расширением имени файла или без него. Изображение отображается напрямую в уведомлении. Если параметр не указан, система использует изображение с ключом Поддерживаемые форматы: JPEG, GIF, PNG |
action (optional) |
string | URL/deep link для перехода при нажатии на уведомление. |
Android¶
Параметры уведомлений для устройств с ОС Android и Huawei.
Параметр | Тип данных | Описание |
---|---|---|
smallIcon (optional) |
string | Ссылка на иконку уведомления. Иконка будет отображаться в качестве превью в панели уведомления. Ссылка должна вести на иконку в основном пакете приложения. |
iconColor (optional) |
string | Цвет иконки уведомлений в формате #RRGGBB . |
sound (optional) |
string | Звук push-уведомления на Android. Поддерживает значение Поддерживаемые форматы: AIF/AIFF, WAV, MP3, MP4 |
buttons (optional) |
array[ActionButtons] | Включает в себя максимум 3 объекта кнопок. |
image (optional) |
string | Имя файла изображения в комплекте приложения: с расширением имени файла или без него. Изображение отображается напрямую в уведомлении. Если параметр не указан, система использует изображение, идентифицированное ключом Поддерживаемые форматы: JPEG, GIF, PNG |
androidChannelId (optional) |
string | ID канала уведомления. |
tag (optional) |
string | ID для отбора пользователей. Используется для тегирования абонентов в базах клиентов в FireBase. |
collapseKey (optional) |
string | При получении сообщений с одинаковым collapseKey , Firebase Cloud Messaging (FCM) заменяет более старое сообщение на новое. |
icon (optional) |
string | URL иконки уведомления. Поддерживаются форматы иконок: 24x24, 36x36, 48x48, 72x72, 96x96 |
action (optional) |
string | URL/deep link для перехода при нажатии на уведомление. |
ActionButtons¶
Параметр | Тип данных | Описание |
---|---|---|
icon (optional) |
string | URL иконки уведомления. Используется только для Android. Поддерживаются форматы иконок: 24x24, 36x36, 48x48, 72x72, 96x96 |
caption (optional) |
string | Название кнопки. Максимальная длина - 30 символов. |
action (optional) |
string | URL/deep link для перехода при нажатии на кнопку в уведомлении. |
Пример запроса¶
[
{
"from":400,
"to":"r0Fo0EjfqKjTeZZpPW4s63PpMEYpgKIj55DT",
"title":"title",
"text":"Hello",
"badge":1,
"validity":86400,
"priority":"MEDIUM",
"options":{
"name":"Иван",
"phone":"79169492211"
},
"apns":{
"linkToMedia":"Default.png",
"sound":"hi.mp3",
"action":"https://test.com/apple-app-site-association"
},
"android":{
"icon":"Default.png",
"iconColor":"#FF4500",
"sound":"hi.mp3",
"action":"https://test.com/android-app-site-association"
}
}
]
Параметры ответа¶
Параметр | Тип данных | Описание |
---|---|---|
index | integer | Порядковый номер получателя из массива сообщений. |
pushToken | string | Токен устройства получателя. |
pushId | integer | ID уведомления. Указывается только при "code": "ok" . |
code | string | Указывает на результат обработки сообщения. 1. ok - успешно обработано.2. validation_error - ошибка валидации уведомления. |
description | array | Массив ошибок, произошедших во время обработки сообщения. Указывается только при "code": "validation_error" . |
description.errorMessage | string | Сообщение с описанием ошибки. |
Примеры ответов¶
{
"result": [
{
"index": 0,
"pushToken": "IOvpeJ0ECENA3WrrRHG1ghopWkVgiFNLSWWZoqLAUgIllcDF3j19ay9-0-Nanfo-0VjrnA1G6CGSvE_TyRUaea7mXmDUapY3YA",
"pushId": 3703545281276230700,
"code": "ok"
}
]
}
{
"result": [
{
"index": 0,
"pushToken": "IOvpeJ0ECENA3WrrRHG1ghopWkVgiFNLSWWZoqLAUgIllcDF3j19ay9-0-Nanfo-0VjrnA1G6CGSvE_TyRUaea7mXmDUapY3YA",
"code": "validation_error",
"description": [
{
"errorMessage": "Неизвестный from"
}
]
}
]
}
Коллбэки¶
Как подключить
Для настройки коллбэков со статусами push-уведомлений необходимо обратиться к менеджеру компании или в техническую поддержку.
Возможные статусы¶
Статус | Описание |
---|---|
accepted | Уведомление было принято на доставку. |
send | Уведомление отправлено в службу уведомлений устройства. |
delivered | Уведомление доставлено до устройства. |
opened | Был переход по ссылке из уведомления. |
rejected | Уведомление отклонено. |
canceled | Получатель смахнул уведомление с экрана. |
expired | Уведомление не было доставлено за отведенное время. |
unsubscribed | Пользователь отключил уведомления. |
Пример коллбэка¶
[
{
"messageId": 1,
"ts": 1636976602504,
"status": "delivered",
"errorCode": 0,
"options": "string"
}
]