إنشاء رسائل داخل التطبيق باستخدام JavaScript
يتم عرض رسائل In-app مباشرة داخل واجهة التطبيق بينما يتفاعل المستخدم بالفعل مع التطبيق. ونتيجة لذلك، يرى المستخدمون أن رسائل In-app أقل تطفلاً من الإشعارات الفورية (push notifications) أو رسائل البريد الإلكتروني أو الرسائل القصيرة (SMS).
تحتوي رسائل In-app دائمًا على صور أو مقاطع فيديو تسمى Rich Media. يمكن أن تتضمن رسائل In-app أيضًا نصوصًا منسقة وروابط وأزرارًا مع دعوات لاتخاذ إجراء (CTAs) وبيانات أخرى، مما يسمح لك بالتواصل مع مستخدمي تطبيقك بأشكال جذابة.
تعتمد رسائل In-App على HTML وتدعم JavaScript. تقوم Pushwoosh SDK بحقن متغير pushwoosh الذي يوفر واجهة برمجة التطبيقات (API) التالية:
يمكنك استخدام دالة postEvent لإرسال event جديد مباشرة من كود 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 لتعيين tags للجهاز من رسالة in-app:
pushwoosh.sendTags({ IntTag: 42, BoolTag: true, StringTag: 'testString', ListTag: ['string1', 'string2']})للحصول على tags الجهاز، استخدم دالة 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 notification) مع Rich Media، يمكنك الحصول على البيانات المخصصة (custom data) لهذا الإشعار باستخدام الكود التالي: pushwoosh.getCustomData()
واجهة JavaScript المخصصة
Anchor link toيمكن توسيع وظائف JavaScript لرسائل In-App بشكل غير محدود عن طريق كشف دوال Java/Objective-C/Swift الأصلية لـ JavaScript. يمكن تحقيق ذلك باستخدام دوال addJavascriptInterface الخاصة بـ Pushwoosh SDK لكل من iOS و Android.