دليل التكامل الأساسي لوحدة Mendix
يرشدك هذا الدليل خلال عملية إضافة وحدة Pushwoosh إلى تطبيق Mendix أصلي موجود، بدءًا من تثبيتها من Marketplace وحتى استلام إشعار على الجهاز.
المتطلبات الأساسية
Anchor link toلدمج وحدة Pushwoosh في تطبيقك، ستحتاج إلى ما يلي:
لا يلزم Device API Token الموجود في القائمة أعلاه لهذه الوحدة. تأخذ الأداة Application Code ولا شيء آخر.
ستحتاج أيضًا إلى ما يلي:
- Mendix Studio Pro 11.12.3 أو أحدث. تم بناء حزمة الوحدة بهذا الإصدار، ولا يمكن لـ Studio Pro فتح حزمة تم إنتاجها بإصدار أحدث منه.
- ملف تعريف تنقل أصلي للهاتف المحمول في تطبيقك.
- Xcode أو Android Studio لإنتاج البناء الأصلي. لا يمكن لتطبيق Make It Native تشغيل هذه الوحدة، لأنها لا تحتوي على كود أصلي من طرف ثالث.
1. تثبيت الوحدة من Marketplace
Anchor link toفي Studio Pro، انقر على أيقونة Marketplace في الزاوية اليمنى العليا، وابحث عن Pushwoosh، وانقر على Download. يضيف Studio Pro وحدة باسم Pushwoosh إلى تطبيقك.

لا يوجد شيء آخر لتثبيته. تأتي المكتبات الأصلية من npm أثناء البناء الأصلي، مثبتة على الإصدار الدقيق الذي تم اختبار الوحدة به.
2. إضافة أداة أحداث Pushwoosh إلى صفحتك الرئيسية
Anchor link toتبدأ أداة Pushwoosh events تشغيل SDK وتحول إشعارات الدفع إلى أحداث nanoflow. لا تعرض أي شيء، لذا ضعها مرة واحدة، على الصفحة التي يتم تحميلها أولاً في ملف تعريف التنقل الأصلي للهاتف المحمول.
- افتح الصفحة الرئيسية لملف تعريف التنقل الأصلي للهاتف المحمول.
- اسحب أداة Pushwoosh events إلى الصفحة. توجد في فئة Pushwoosh في صندوق الأدوات.
- قم بتعيين خاصية Application Code إلى Application Code الخاص بتطبيقك من لوحة تحكم Pushwoosh. يبدو كـ
XXXXX-XXXXX.

اترك Register on load ممكّنًا لتسجيل الجهاز بمجرد فتح التطبيق. قم بإيقاف تشغيله إذا كنت تفضل طلب إذن الإشعارات لاحقًا، في نقطة في التطبيق يكون فيها الطلب أكثر منطقية للمستخدم. انظر تسجيل الجهاز أدناه.
3. تكوين البناء الأصلي
Anchor link toيستبدل Pushwoosh إشعارات الدفع المدمجة في تطبيق Mendix بدلاً من العمل بجانبها. في Native Mobile Builder، قم بتعيين الإمكانيات كما يلي:
- Push notifications: معطل.
- Firebase Android: ممكّن، بحيث لا يزال يتم التقاط
google-services.json.
خدمتا إشعارات مسجلتان لحدث com.google.firebase.MESSAGING_EVENT تحجبان بعضهما البعض، وتتوقف الإشعارات عن الوصول. على Android، يأتي FCM Sender ID من google-services.json؛ لا يتم تمريره إلى الوحدة.
على iOS، أضف إمكانية Push Notifications إلى مشروع Xcode الذي تم إنشاؤه في Signing & Capabilities، وقم بتحميل مفتاح APNs الخاص بك إلى لوحة تحكم Pushwoosh كما هو موضح في دليل تكوين منصة iOS.
4. تسجيل الجهاز
Anchor link toلا يتلقى الجهاز الإشعارات إلا بعد تسجيله في Pushwoosh. هناك طريقتان للتسجيل، وتحتاج إلى إحداهما.
التسجيل عند التحميل. اترك خاصية Register on load للأداة ممكّنة. يتم تسجيل الجهاز بمجرد تحميل الأداة، وعلى iOS تظهر مطالبة إذن النظام في تلك اللحظة.
التسجيل من nanoflow. قم بإيقاف تشغيل Register on load واستدعِ إجراء RegisterForPushNotifications من nanoflow خاص بك، على سبيل المثال بعد تسجيل دخول المستخدم أو قبول شاشة الموافقة. يعيد الإجراء رمز الدفع (push token) كسلسلة نصية.

لإيقاف التسليم إلى جهاز، استدعِ UnregisterForPushNotifications.
5. التعامل مع إشعار يصل أثناء فتح التطبيق
Anchor link toعندما يصل إشعار أثناء وجود التطبيق في المقدمة، تكتب الأداة الإشعار في السمات التي تشير إليها، ثم تشغل nanoflow في On push received.
- قم بتعيين Message إلى سمة سلسلة نصية تتلقى نص الإشعار.
- قم بتعيين Payload إلى سمة سلسلة نصية تتلقى الحمولة الكاملة كـ JSON.
- قم بتعيين On push received إلى nanoflow يتفاعل معه، على سبيل المثال واحد يعرض رسالة أو يحدّث قائمة.
يتم ملء السمات قبل تشغيل nanoflow، لذا يمكن لـ nanoflow قراءتها على الفور.

6. التعامل مع إشعار مفتوح ورابط عميق (deep link)
Anchor link toعندما ينقر المستخدم على إشعار، تشغل الأداة nanoflow في On push opened، مع ملء نفس سمات Message و Payload.
إذا كان الإشعار يحمل رابطًا عميقًا (deep link)، فإن الأداة تكتب أيضًا الرابط في السمة المحددة في Deep link وتشغل nanoflow في On deep link. يعمل هذا الـ nanoflow بالإضافة إلى On push opened، لذا استخدمه لتوجيه المستخدم إلى الصفحة التي يشير إليها الرابط.
7. تحديد المستخدم وتعيين العلامات (Tags)
Anchor link toالعلامات (Tags) هي ما يحول البث إلى رسالة مستهدفة. استدعِ SetTags من أي nanoflow مع كائن JSON كمعامل له:
'{"Language":"en","Plan":"pro","Level":7}'استدعِ SetUserId بمعرف المستخدم الخاص بك لربط الجهاز بشخص بدلاً من جهاز. يمكن بعد ذلك الوصول إلى جميع الأجهزة المسجلة تحت نفس User ID برسالة واحدة.

8. نشر الأحداث (Events)
Anchor link toالأحداث (Events) تدفع الحملات المشغلة والرسائل داخل التطبيق. استدعِ PostEvent مع اسم الحدث، واختياريًا، كائن JSON من السمات:
'{"product":"Coffee grinder","price":129}'يجب أن يتطابق اسم الحدث مع الحدث الذي تم تكوينه في لوحة تحكم Pushwoosh.
9. إرسال إشعار اختباري
Anchor link toسجل الجهاز كجهاز اختبار وأرسل رسالة إليه من لوحة تحكم Pushwoosh. انظر اختبر تكاملك للخطوات.
يظهر الإشعار الذي يصل أثناء فتح التطبيق من قبل النظام كتنبيه، ويعمل nanoflow On push received أيضًا. لقمع تنبيه النظام والتعامل مع الإشعار فقط في nanoflow، استدعِ SetShowForegroundAlert مع false. يعمل هذا الإجراء على iOS فقط.
10. التحقق من التكامل عندما لا يصل شيء
Anchor link toاعمل على هذه بالترتيب عندما لا يتلقى الجهاز أي إشعارات:
- تأكد من أن التطبيق هو تطبيق مطور مخصص أو بناء أصلي حقيقي. لا يحتوي تطبيق Make It Native على الوحدة، لذا يفشل كل إجراء Pushwoosh بصمت فيه.
- تأكد من إمكانيات البناء الأصلي: Push notifications معطل، Firebase Android ممكّن.
- تأكد من تسجيل الجهاز. استدعِ
GetPushTokenوتحقق من أنه يعيد رمزًا (token) بدلاً من سلسلة نصية فارغة. - تأكد من تكوين المنصة في لوحة تحكم Pushwoosh، مع تحميل مفتاح APNs لـ iOS ومفتاح خادم Firebase لـ Android.
إذا كان الجهاز لا يزال غير قابل للوصول، استدعِ GetHwid وافتح تذكرة دعم بهذا المعرف.
الخطوات التالية
Anchor link to- مرجع إجراءات الوحدة - خصائص الأداة وإجراءات JavaScript، مع المعلمات والقيم المرجعة
- الأسئلة الشائعة حول Mendix - الأسئلة التي تطرأ أثناء التكامل الأول