Перейти к содержимому

Дополнительные поля сообщения

Дополнительные поля используются для передачи дополнительной информации, изменения поведения клиентов и т. д. Дополнительные поля хранятся в схеме ключ-значение и принимаются только в запросах POST /message с типом контента application/json.

Ключи под .extras должны быть в следующем формате: <top-namespace>::[<sub-namespace>::]<action>. Некоторые из пространств имён используются официальными клиентами:

Пространство имёнОписание
client::*Зарезервировано
client::displayИзменяет способ отображения информации клиентом
client::notificationНастраивает уведомление
android::*Зарезервировано
android::actionРеагирует на события
ios::*Зарезервировано
server::*Зарезервировано
Все остальныеОпределены конечными пользователями
contentTypeописание
text/plainПо умолчанию; сообщение будет отображаться как обычный текст. Ссылки могут быть выделены и интерактивны.
text/markdownСообщение должно быть отображено как markdown. HTML должен быть проигнорирован.

Примечание: Markdown поддерживает отображение изображений через ![](img url), эти изображения будут автоматически загружены при просмотре сообщения. Аналогично тому, почему удалённое содержимое блокируется по умолчанию в почтовых клиентах, автоматическая загрузка удалённых изображений может использоваться для сбора информации от пользователя.

Также, если часть сообщения интерполирована из вредоносного внешнего источника, злоумышленник может вввести неправильно сформированный markdown, который приводит к раскрытию информации.

Рекомендуется использовать text/plain для снижения возможных проблем безопасности при использовании текста из внешних источников, таких как вывод скриптов.

{
"extras": {
"client::display": {
"contentType": "text/plain"
}
}
}
Клиентс версииописание
Notifly Web UIv2.0.5Использует GitHub Flavored Markdown
Notifly Androidv2.0.7Использует commonmark-spec

click.url (строка): открывает URL при нажатии на уведомление.

{
"extras": {
"client::notification": {
"click": {"url": "https://notifly.net"}
}
}
}
Клиентс версииописание
Notifly Androidv2.0.10Предотвращает открытие приложения Notifly по умолчанию

bigImageUrl (строка): показывает большое изображение в уведомлении.

{
"extras": {
"client::notification": {
"bigImageUrl": "https://placekitten.com/400/300"
}
}
}
Клиентс версииописание
Notifly Androidv2.3.0Может потребоваться развернуть уведомление.

onReceive.intentUrl (строка): открывает intent после доставки уведомления.

{
"extras": {
"android::action": {
"onReceive": {"intentUrl": "https://notifly.net"}
}
}
}
Клиентс версииописание
Notifly Androidv2.0.11Необходимо включить “Intent Action Permission” в параметрах приложения, иначе эта функция работает только при активном приложении.