Настройка Web Message Inbox
Предварительные требования
Section titled “Предварительные требования”Убедитесь, что вы внедрили Wavesend Web SDK на свой сайт. Для этого следуйте нашему руководству.
Web Message Inbox позволяет хранить web push-уведомления, чтобы пользователи могли вернуться к ним позже, гарантируя, что важные сообщения будут просмотрены.
Как это работает
Section titled “Как это работает”Типичный рабочий процесс с InboxMessages выглядит следующим образом:
| Шаг | Метод |
|---|---|
| Загрузка страницы | |
| Синхронизация сообщений с сервером |
|
| Удаление устаревших сообщений |
|
| Получение количества непрочитанных сообщений для обновления значка |
|
| Загрузка сообщений для отображения в Inbox |
|
| Отметка сообщений, попавших в область просмотра, как прочитанных |
|
| Выполнение действия, назначенного открытому сообщению |
|
| Удаление сообщений по клику на иконку удаления или свайпу сообщения вправо |
|
Слушатели событий
Section titled “Слушатели событий”// Выполняется после автоматического обновления Inbox при загрузке страницы.Wavesend.push(['onUpdateInboxMessages', function(api, pwinbox) { pwinbox.loadMessages().then(function(messages) { console.log('СОБЫТИЕ: onUpdateInboxMessages', messages); });}]);// Выполняется ServiceWorker после получения и сохранения сообщения Inbox в indexedDB.Wavesend.push(['onPutNewMessageToInboxStore', function(api, message) { console.log('СОБЫТИЕ: onPutNewMessageToInboxStore', message);}]);Публичный модуль
Section titled “Публичный модуль”Публичный модуль WebSDK InboxMessagesPublic представляет публичный интерфейс для реализации Web Inbox.
type TInboxMessageTypePlain = 0;type TInboxMessageTypeRichmedia = 1;type TInboxMessageTypeURL = 2;type TInboxMessageTypeDeeplink = 3;type TInboxMessageType = TInboxMessageTypePlain // зависит от 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; // зависит от action_params isRead: boolean; // true, если статус "read" или "open" link: string; // Deeplink | URL | "/" isActionPerformed: boolean; // true, если статус "open"}Публичные методы
Section titled “Публичные методы”Ознакомьтесь с описаниями публичных методов в руководстве Web Push SDK 3.0.