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

Создание In-App сообщений с помощью JavaScript

In-App сообщения отображаются непосредственно в интерфейсе приложения, когда пользователь уже взаимодействует с ним. В результате пользователи воспринимают In-App сообщения как менее навязчивые, чем push-уведомления, электронные письма или SMS.

In-App сообщения всегда содержат изображения или видео, называемые Rich Media. In-App сообщения также могут включать форматированный текст, ссылки, кнопки с CTA и другие данные, что позволяет вам общаться с пользователями вашего приложения в увлекательных формах.

In-App сообщения основаны на HTML и поддерживают JavaScript. Pushwoosh SDK внедряет переменную pushwoosh, которая предоставляет следующий API:

Вы можете использовать метод postEvent для отправки нового события непосредственно из JavaScript-кода In-App сообщения.

pushwoosh.postEvent(
'eventName',
{
TestAttributeString: 'testString',
TestAttributeInt: 42,
TestAttributeList: [123, 456, 'someString'],
TestAttributeBool: true,
TestAttributeNull: null,
TestAttributeDaysAgo: 7,
TestAttributeDate: new Date()
},
function() {
console.log('Post event success')
},
function(error) {
console.log('Post event failed: ', error)
}
)

Вы также можете использовать метод sendTags для установки тегов для устройства из In-App сообщения:

pushwoosh.sendTags({
IntTag: 42,
BoolTag: true,
StringTag: 'testString',
ListTag: ['string1', 'string2']
})

Чтобы получить теги устройства, используйте метод getTags следующим образом:

pushwoosh.getTags(
function(tags) {
console.log('tags: ' + JSON.stringify(tags))
},
function(error) {
console.log('failed to get tags: ' + error)
}
)

Если вы хотите закрыть In-App сообщение из JavaScript-кода, вызовите метод closeInApp():

pushwoosh.closeInApp();

Или просто используйте URL с кастомной схемой для кнопки/ссылки <a href="pushwoosh://close">

Чтобы запросить разрешение на отправку push-уведомлений из In-App сообщения (например, в сообщении с предварительным запросом, которое показывается перед системным запросом), вызовите registerForPushNotifications():

pushwoosh.registerForPushNotifications();

Метод не принимает аргументов и вызывает нативный запрос разрешений платформы. На iOS SDK также автоматически закрывает In-App сообщение после вызова этого метода, поэтому последующий вызов closeInApp() не является обязательным и не принесет вреда. На Android In-App сообщение остается открытым, пока вы сами не вызовете closeInApp().

При отправке push-уведомления с Rich Media вы можете получить кастомные данные этого push-уведомления с помощью следующего кода: pushwoosh.getCustomData()

Пользовательский интерфейс JavaScript

Anchor link to

Функциональность JavaScript в In-App сообщениях может быть неограниченно расширена путем предоставления нативных методов Java/Objective-C/Swift для JavaScript. Этого можно достичь с помощью методов addJavascriptInterface Pushwoosh SDK для iOS и Android.