Перейти к содержанию

Настройка веб-инбокса сообщений

Предварительные условия

Anchor link to

Убедитесь, что вы внедрили Pushwoosh Web SDK на своем веб-сайте. Для этого следуйте нашему руководству.

Инбокс сообщений для веб-сайтов позволяет хранить веб-пуш-уведомления, чтобы пользователи могли просматривать их позже, гарантируя, что важные сообщения будут замечены.

Принцип работы

Anchor link to

Вот типичный рабочий процесс с InboxMessages:

ШагМетод
Загрузка страницы
Синхронизация сообщений с сервером

InboxMessagesModel.updateMessages
Выполняется при инициализации SDK

Удаление устаревших сообщений

InboxMessagesModel.updateMessages
Выполняется при инициализации SDK

Получение количества непрочитанных сообщений для обновления значка

Pushwoosh.pwinbox.unreadMessagesCount
Выполняется вручную (после срабатывания события onUpdateInboxMessages)

Загрузка сообщений для отображения в Инбоксе

Pushwoosh.pwinbox.loadMessages
Выполняется вручную (после срабатывания события onUpdateInboxMessages)

Пометка сообщений, попавших в область видимости, как прочитанных

Pushwoosh.pwinbox.readMessagesWithCodes
Выполняется вручную

Выполнение действия, назначенного открытому сообщению

Pushwoosh.pwinbox.performActionForMessageWithCode
Выполняется вручную

Удаление сообщений по клику на значок удаления или свайпу вправо

Pushwoosh.pwinbox.performActionForMessageWithCode
Выполняется вручную

Слушатели событий

Anchor link to
onUpdateInboxMessages
// Выполняется после автоматического обновления Инбокса при загрузке страницы.
Pushwoosh.push(['onUpdateInboxMessages', function(api, pwinbox) {
pwinbox.loadMessages().then(function(messages) {
console.log('EVENT: onUpdateInboxMessages', messages);
});
}]);
onPutNewMessageToInboxStore
// Выполняется ServiceWorker после получения и сохранения сообщения Инбокса в indexedDB.
Pushwoosh.push(['onPutNewMessageToInboxStore', function(api, message) {
console.log('EVENT: onPutNewMessageToInboxStore', message);
}]);

Публичный модуль

Anchor link to

Публичный модуль WebSDK InboxMessagesPublic представляет публичный интерфейс для реализации веб-инбокса.

Model
type TInboxMessageTypePlain = 0;
type TInboxMessageTypeRichmedia = 1;
type TInboxMessageTypeURL = 2;
type TInboxMessageTypeDeeplink = 3;
type TInboxMessageType = TInboxMessageTypePlain // depends on action_params
| TInboxMessageTypeRichmedia
| TInboxMessageTypeURL
| TInboxMessageTypeDeeplink;
interface IInboxMessagePublic {
code: string; // inbox_id
title: string; // title
message: string; // body
imageUrl: string; // image
sendDate: string; // send_date
type: TInboxMessageType; // depends on action_params
isRead: boolean; // true if status is "read" or "open"
link: string; // Deeplink | URL | "/"
isActionPerformed: boolean; // true if status is "open"
}

Публичные методы

Anchor link to

Ознакомьтесь с описаниями публичных методов в руководстве по Web Push SDK 3.0.