Создание 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.