كيفية استخدام منصات التجارة بدون رأس للحملات التسويقية؟
نشرت: 2022-04-18ما هي منصات التجارة مقطوعة الرأس؟
منصات التجارة الإلكترونية بدون رأس أو المنصات المستندة إلى واجهة برمجة التطبيقات - برنامج تم فيه فصل الواجهة الأمامية (أو "الرأس") أو إزالتها بالكامل ، ولم يتبق سوى الواجهة الخلفية.
بدأ المفهوم المعماري الذي تدعم هذه المنصات مع عالم CMS. من خلال فصل الطبقات ، أرادت الشركات محاربة العوائق في طريقها لتسليم المحتوى بشكل أسرع على قنوات التسويق الأحدث والأحدث - حيث يلعب الهاتف الذكي دوره الأول.
مع برنامج CMS التقليدي ، واجه مطورو المستوى المنخفض المشكلات التالية:
- التصميم مقيد بأطر قديمة ، تتوفر مجموعة محددة مسبقًا من الخبرات فقط ؛
- قد يتطلب التغيير الصغير في الواجهة الأمامية تغييرات في قاعدة البيانات والرمز الخلفي ، مما يزيد من وقت الاختبار ، وبالتالي التكلفة الإجمالية للمهمة ؛
- يمكن أن تتسبب التغييرات في التعليمات البرمجية للجهة الخلفية في حدوث أخطاء غير متوقعة في الواجهة الأمامية ؛
تراكمت وترجمت بمرور الوقت إلى فرملة اليد للأعمال:
- مساحة صغيرة أو معدومة للتخصيص ؛
- الارتباك وسوء الفهم المتبادل حول سبب استغراق تغييرات البرامج الصغيرة وقتًا طويلاً حتى تكتمل ؛
- قنوات تسويقية جديدة غير مستغلة أو تجاوزت البرامج ذات الأولوية المنخفضة والتي تأتي بعد فوات الأوان.
نتيجة لذلك ، انفجر "API-first" أو "API-Based" أو "CMS بدون رأس". ولكن سرعان ما توسع ذلك ليشمل مجالات رقمية أخرى بما في ذلك التجارة الإلكترونية والتسويق.
إذا كانت هذه هي المرة الأولى التي تقابل فيها منصات بدون رأس ، فقد تجد مقالتي الأخيرة مثيرة للاهتمام: فهم الأنظمة الأساسية القائمة على واجهة برمجة التطبيقات. أيضًا ، يعرض بول ، في مقدمته إلى التجارة الإلكترونية بدون رأس ، بعض الأمثلة الواقعية للتطبيقات التي تم إنشاؤها باستخدام أدوات قائمة على واجهة برمجة التطبيقات.
منصات مقطوعة الرأس - من فكرة إلى نقطة حماية جاهزة للإنتاج في يوم واحد
دعنا نتحقق مما إذا كان بإمكاننا حقًا إنشاء برامج مرنة بهذه السرعة. سنقوم بإعادة إنشاء استراتيجية تسويق تستخدمها أفضل العلامات التجارية هذه الأيام. باختصار ، سوف:
- تحديد الموقع الجغرافي للعملاء.
- قم بتعيين قسيمة خصم شخصية لهم.
- قدِّم رمز قسيمة فريدًا مع إشعار الدفع.

ليس من الصعب أن نتخيل أن شركات مثل Uber يجب أن تكون قد استثمرت أكثر من عشرة أشهر من عمل المطورين أو حتى أكثر في هذا البرنامج.
ما قد يبدو على أنه أبسط مهمة - تعيين رمز خصم عشوائي - مثقل بالمحاذير. لقد تعلمت هذا بالطريقة الصعبة لأن فريقنا يعمل عليه منذ 3 سنوات حتى الآن. عدد حالات الركن الجديدة المتزايدة والنفقات الإدارية يمكن أن تحرق حتى شيء يبدو وكأنه نظام مباشر.
لحسن الحظ ، المنصات مقطوعة الرأس هنا لمساعدتنا.
سنستخدم ثلاث منصات SaaS صديقة للمطورين لإنشاء حل عملي:
- الرادار - تحديد الموقع الجغرافي API
- Voucherify - واجهة برمجة تطبيقات إدارة الترويج
- Braze - إعلام API
دعونا نرى كيف يمكننا دمجها معًا لإبهار عملائك بعروض ترويجية مخصصة حقًا يتم تقديمها من خلال نهج مقطوع الرأس.
ملاحظة: الحل التالي يفترض أن لديك حسابًا نشطًا على Radar و Voucherify و Braze. أيضًا ، يجب ملؤها جميعًا بقاعدة بيانات العملاء الخاصة بك ، بما في ذلك الحقل الذي يمكن استخدامه لتعريف الشخص بشكل فريد.
اكتشاف اللحظة التي يدخل فيها العميل مكانك باستخدام الرادار - تحديد الموقع الجغرافي مقطوعة الرأس
المفهوم الكامن وراء الرادار واضح ومباشر. النظام الأساسي يحدد الموقع الجغرافي للتطبيقات باستخدام 3 أنواع سياقات:
- Geofence - يفخر الرادار بكونه أقوى من السياج الجغرافي لنظام iOS أو Android الأصلي ، مع دعم عبر الأنظمة الأساسية لسياسات جغرافية غير محدودة ، وسياسات جغرافية مضلعة ، وإيقاف الكشف. هذا لأن كل إنشاء السياج الجغرافي والأحداث يحدث من جانب الخادم.
- الأماكن - يمكن للرادار التعرف على قائمة واسعة من الأماكن لأنه يستخدم قاعدة بيانات Facebook. وأروع ما في الأمر هو أنه يمكنك العمل مع الفئات المضمنة (على سبيل المثال ، المطارات الرئيسية) أو السلاسل (مثل Starbucks).
- رؤى - يمكن لمحرك الموقع أيضًا معرفة كيفية التقريب لدخول المستخدم / مغادرة المنزل والمكتب.
عندما يكتشف Radar زيارات المستخدم الخاصة بك أو يغادر المكان ، فإنه يتيح لك إخطار تطبيقك بخطاف على الويب.
كل ما عليك القيام به ، كمطور ، هو استخدام إحدى مجموعات تطوير البرامج (iOS ، Android ، الويب) لمصادقة خيارات التتبع وتكوينها وضبطها - على سبيل المثال ، إذا كنت تريد التتبع في الخلفية أو في المقدمة.
دعونا نرى منصة الرادار مقطوعة الرأس في العمل إذن!
1. قم بإعداد حسابك
انتقل إلى radar.io وقم بالتسجيل للحصول على حساب ، ثم استخدم اختبار مفاتيح API لتهيئة عنصر واجهة مستخدم الرادار كما هو موضح أدناه:
{{الشفرة}}
<script src = "https://js.radar.io/v1.0.0/radar.min.js" تكامل = "sha384-TFQktvQ2F2ST3MCcepqaOHqwc36jDy7r / gAj7dOvU6VXtJ4m4Dj2hByxZ59d4MjKcript" crossorigin>
<script type = "text / javascript">
Radar.initialize ("YOUR_KEY") ؛
</script> {{ENDCODE}}
2. تتبع المستخدمين
الخطوة الأخيرة هي التحقق مما إذا كان التتبع يعمل أم لا. للقيام بذلك ، سنستخدم طريقة trackOnce التي يتم استدعاؤها إذا اكتشف Radar أي تغييرات في الموقع.
دعنا نشغل الكود ونرى المعلومات التي يوفرها Radar (تذكر السماح بتتبع الموقع في متصفحك):
{{الشفرة}}
Radar.trackOnce (الوظيفة (الحالة ، الموقع ، المستخدم ، الأحداث) {console.log ({الحالة ، الموقع ، المستخدم ، الأحداث}) ؛}) ؛
{{ENDCODE}}
انتاج:
{{الشفرة}}
الأحداث: [] (0)
الموقع: الإحداثيات {خط العرض: 50.25462479999998 ، خط الطول: 19.061743829999994 ، الارتفاع: خالٍ ، الدقة: 165 ، دقة الارتفاع: فارغة ، ...}
الحالة: "نجاح"
المستخدم: {userAgent: "Mozilla / 5.0 (Macintosh؛ Intel Mac OS X 10_14_4) Ap… (KHTML ، مثل Gecko) الإصدار / 12.1 Safari / 605.1.15" ، ip: "93.179.216.18" ، دقة الموقع: 165 ، الجهاز: "الويب" ، متوقف: صحيح ،…}
{{ENDCODE}}
حسنًا - لقد وجد الرادار مخبأنا. لكن بدون السياق ، لا يعرف ماذا يفعل بهذه المعلومات. لنعمل على معلومات الرادار.
سنقوم بإعطاء اسم للمكان الذي قمت بتسجيل الوصول منه - بشكل عام (في الرادار أيضًا) يُطلق على سياق الموقع هذا اسم سياج جغرافي. إليك كيفية القيام بذلك:
- انتقل إلى منشئ السياج الجغرافي.
- حدد نوع المصدر المعني ، سأذهب إلى المكان واكتب شركتي كاستعلام.
- نتيجة لذلك ، يبحث الرادار عن الإحداثيات الجغرافية ويقترح حد السياج الجغرافي.

- إذا كان الموقع مناسبًا لك ، فتأكد من السياج الجغرافي باستخدام CREATE.
الآن ، لنقم بتحديث الصفحة ومشاهدة وحدة التحكم. الرادار يرسل لنا الآن بعض الأحداث :
{{الشفرة}}
{
"createdAt": "2019-04-16T16: 08: 49.645Z" ،
"العيش": خطأ ،
"النوع": "user.entered_geofence" ،
"موقعك":{
"الإحداثيات": [
19.062212 ،
50.254927099999996
] ،
"type": "Point"
} ،
"دقة الموقع": 20 ،
"الثقة": 3 ،
"realCreatedAt": "2019-04-16T16: 08: 49.645Z" ،
"المستعمل":{
"_id": "5cb5f2ba36581b002a3534ca" ،
"userAgent": "Mozilla / 5.0 (Macintosh؛ Intel Mac OS X 10_14_4) AppleWebKit / 537.36 (KHTML ، مثل Gecko) Chrome / 73.0.3683.103 Safari / 537.36" ،
"deviceId": "a96ec0db-969c-4a77-996c-361a0530660a"
} ،
"السياج الجغرافي": {
"_id": "5cb5f7d3a60e95002b009ebd" ،
"الوصف": "rspective"،
"النوع": "الدائرة" ،
"geometryRadius": 100 ،
"geometryCenter": {
"type": "Point"،
"الإحداثيات": [
19.062346299999945 ،
50.25495069999999
]
}
} ،
"_id": "5cb5fe117cd3430025b9ee0d"
}
{{ENDCODE}}
يبدو أنه يتفهم أننا دخلنا سياجنا الجغرافي المنشأ حديثًا. نظرًا لأننا نجلس في نفس المكان ، لا ينبغي أن تجلب التحديثات اللاحقة أي أحداث جديدة. ولكن عندما نغير الموقع ، سيكتشفه الرادار أيضًا.
لاختباره ، احصل على جهازك ، وانتقل إلى خارج منطقة السياج الجغرافي ، وسجل الدخول مرة أخرى هناك أو ... يمكنك استخدام أجهزة الاستشعار من أدوات Chrome.

قم بتزييف موقعك عن طريق تحديد أي مسافة كافية وتحديث الصفحة مرة أخرى. الآن يظهر الرادار ذلك user.exited_geofence
يمكنك تتبع أحداث تحديد الموقع الجغرافي لجميع المستخدمين المسجلين وغير المسجلين باستخدام لوحة معلومات الرادار الملائمة ، في الوقت الفعلي:

إخطار التطبيقات الخارجية من خلال رسائل مقطوعة الرأس
لذا فإن تتبع الرادار يفهم الآن سياق موقعنا. ولكن للاستفادة منها في السيناريو الخاص بنا ، يتعين على الرادار مشاركتها مع العالم الخارجي. وهي تفعل ذلك بعدة طرق. واحد منهم باستخدام webhooks.
الخطاف على الويب هو مفهوم واجهة برمجة التطبيقات الذي يوفر طريقة لتطبيق ما لتزويد التطبيقات الأخرى بمعلومات في الوقت الفعلي.
وفقًا لـ Segment ، وهي منصة تساعد على جمع بيانات العملاء وتبادلها عبر العديد من الأنظمة ، فإن شعبية الويب هوك تزداد بسرعة.

يتيح تنفيذ خطاف الويب النموذجي لمستخدم التطبيق ما يلي:
- إخطار نظام خارجي (أو العديد من الأنظمة)
- مع استدعاء (مكالمات) API
- لحظة وقوع حدث معين.
مع وجود مثل هذه الآلية ، لا يحتاج مستخدم التطبيق إلى البحث عن البيانات بشكل متكرر من أجل متابعة التغييرات في الوقت الفعلي.
يمثل إرسال طلب إلى واجهة برمجة تطبيقات خارجية جانبًا واحدًا فقط من العملية. لإكمال دورة الرد التلقائي على الويب ، يجب على العميل المستلم استهلاكها بنجاح.
في عالم HTTP ، يعني هذا عادةً الاستجابة بالحالة 2 **. إذا لم يحدث ذلك ، فسيحاول محرك الرد التلقائي على الويب مرة أخرى لاحقًا (تعتمد سياسة إعادة المحاولة على مؤلفي السياسة المحددين).
في حالتنا ، يرسل Radar حمولة الحدث التي رأيناها عندما قمنا بتغيير موقعنا إلى نقطة نهاية متوفرة. دعنا نضيف واحدًا لمشاهدة الخطافات أثناء العمل.
- انتقل إلى التكامل.
- حدد بيئة الاختبار والتسليم لحدث واحد .
- قم بتوفير نقطة نهاية ليتم إعلامك بها. لديك بضع خيارات هنا. تستطيع:
- فصل خادم ويب بسيط على جهازك واستخدم ngrok لتوجيه حركة المرور ،
- استخدام خلل لنشر نقطة النهاية الخاصة بك على الفور ،
- انقر على أحد أدوات التقاط الويب هوك عبر الإنترنت مثل: webhook.site أو requestbin
- الصق عنوان URL الفريد الخاص بك في النموذج وقم بالتأكيد.

- انقر فوق "اختبار" من عمود "الإجراءات" لإطلاق الحدث الأول. إذا قمت بإعداده بشكل صحيح ، فيجب أن ترى حمولة webhook كما هو موضح في الصورة أدناه:

حتى الان جيدة جدا. والنتيجة واعدة للغاية ، أليس كذلك؟ مع بعض النسخ واللصق ومقتطف من JavaScript ، قمنا بتغطية جزء تحديد الموقع الجغرافي من حالة الاستخدام الخاصة بنا. في المرحلة الحالية ، لا يستطيع الرادار التعرف على المستخدمين بخلاف معرف الجهاز المخزن في ملفات تعريف الارتباط. لجعله أكثر قوة ، دعنا نتعرف على المستخدم بالبريد الإلكتروني. مع Radar's SDK ، يكون سطر واحد:
{{الشفرة}}
Radar.setUserId (“[email protected]”) ؛
{{ENDCODE}}
يمكنك رؤية المعرف الجديد على الفور في لوحة المعلومات:

لذلك ، نحتاج الآن إلى معالجة أحد متطلبات الخصم الشخصية - رمز قسيمة فريد.
ربط الرادار والمحرك الترويجي مقطوع الرأس
على غرار Radar ، يمنحك Voucherify مع واجهة برمجة التطبيقات الخاصة به ميزة قسيمة مرنة لجزء بسيط من التكلفة التي قد تتكبدها إذا بدأت من الصفر.
كما سنتعلم قريبًا ، فهو يدعم الحملات الترويجية الأخرى مثل الخصومات أو الإحالة أو برامج الولاء التي يمكن تقديمها مع أي قناة تسويق حالية في المستقبل.
للاستفادة من ميزات تخصيص Voucherify ، تحتاج إلى استيراد بيانات المستخدمين أولاً وإبقائهم في حالة تزامن.
يقوم Voucherify بتخزين بيانات العملاء في كائنات العميل والتي يمكن تجميعها في شرائح وفقًا للسمات الشخصية والموقع وسجل تفاعل الإيصال.

لنفترض أنك قمت بالفعل باستيراد عميل الاختبار الخاص بك إلى Voucherify وسنرى الآن كيفية مزامنة موقعه مع Radar - بدون الرمز.
زابير - غراء الويب
تخيل لو تم إدراج جميع الأنظمة الأساسية التي تعرض خطافات الويب في دليل واحد ، بهيكل موحد وإمكانية ربطها مثل الكتل - قابل Zapier.
يربط Zapier أكثر من 1000 تطبيق ويب ويسمح لهم بالعمل معًا في الخلفية.

يبدأ كل Zap بمحفز لحدث في أحد تطبيقاتك ينطلق من سير عملك. فيما يلي بعض الأمثلة من مستندات Zapier:
- أتمتة تواجدك على وسائل التواصل الاجتماعي عن طريق إرسال عناصر RSS جديدة إلى Facebook كمشاركات ؛
- حافظ على تنظيم المشاريع عن طريق نسخ بطاقات Trello الجديدة في Evernote ؛
- ابق على اتصال مع العملاء المحتملين عن طريق إضافة مستجيبين للنموذج من Typeform إلى قائمتك البريدية في MailChimp ؛
- تأكد من أن فريقك لا يفوت أي اجتماع أبدًا عن طريق إخطار قناة في Slack بأحداث تقويم Google القادمة ؛
- …و أكثر من ذلك بكثير!
ربما ستسأل الآن: "هل يستطيع زابير مساعدتنا؟" نعم انها تستطيع! دعنا نلعب مع بعض Zaps لتحديث تغييرات الموقع الجغرافي إلى Voucherify.
- انقر فوق Make a Zap وحدد Webhooks.
- باستخدام هذا الخيار ، يمكن لـ Zapier إنشاء نقطة نهاية (على غرار webhook.site) والتي يمكننا استخدامها لاستهلاك webhook من Radar. للقيام بذلك ، اختر Catch Hook.
- سيعطيك العرض التالي عنوان URL لنقطة النهاية والذي سيحل محل القديم في إعداد خطاف الويب الرادار.

- الصق الرابط إلى الرادار وأطلق الاختبار مرة أخرى. إذا أكد الرادار نقطة النهاية الجديدة بشريط فلاش أخضر ، فانتقل إلى الخطوة التالية في Zapier.
- في الشاشة التالية ، يجب أن تلاحظ حمولة طلب الاختبار الخاص بك

- قم بتأكيد النموذج والخطوة الأولى من Zap - المشغل - جاهزة.
الآن نحن بحاجة إلى وضع الرسائل المستهلكة في العمل. لإكمال Zap ، نحتاج إلى إجراء واحد على الأقل (يمكنك ربط منصات متعددة بزاب واحد).
- اختر Voucherify من Action explorer. ملاحظة يتوفر Voucherify Zap "عن طريق الدعوة" ، إليك الرابط للحصول عليه.

- حدد خيار تحديث العميل وانتقل إلى نموذج إعداد النموذج.
- هذا جزء أساسي. في هذا النموذج ، يسمح لك Zapier بتعيين الإدخال للإخراج. المحرر قوي وبديهي. يحتوي على حقل بحث ذكي يسمح لك بتصفح JSON الوارد عن طريق المفاتيح والقيم. يمكنك أيضًا ربط حقلي إدخال أو أكثر بسهولة في حقل واحد صادر.
في حالتنا ، نريد فقط تحديد العميل من خلال source_id وتحديث حقل مخصص "rspectiveHQ" وفقًا للحدث ، لذلك يبدو التعيين على النحو التالي:
إيصال: معرف المصدر - الرادار: معرف المستخدم
قسيمة: البيانات الوصفية -> rspectiveHQ - الرادار: نوع الحدث

- تخطي الاختبار وأكمل النموذج - ZAP قيد التشغيل وينتظر!
قمنا بتكوين خطاف الويب الخاص بـ Radar وقمنا بتشغيل Voucherify Zap. دعونا نختبر ما إذا كان خط الأنابيب بأكمله يعمل. انتقل إلى تطبيق الويب الخاص بنا وحاول تغيير الموقع مرة أخرى لإعلام كاشف الرادار.
إليك ما يجب اتباعه:
- يتتبع الرادار حدثين ، ويخرج المستخدم في السياج الجغرافي.
- تمسك زابير بخطافين على الويب وفقًا لذلك.
- قسيمة المسارات لتحديثات ملف تعريف العميل.



زابير هو أكثر من ذلك. عندما تنظر إلى خيارات تكوين سير العمل ، ستلاحظ التروس التي تسمح لك ببناء عمليات معقدة إلى حد ما. ستكون الخطوات المساعدة مثل الشروط أو المرشحات أو التأخيرات مفيدة في تحليل بيانات الإدخال وهضمها وتنسيق الإخراج وفقًا لذلك.

يمكنك حتى كتابة رمز مخصص (في JavaScript و Python) إذا كنت بحاجة إلى مزيد من المرونة في إحدى الخطوات - هل أخبرتك بالفعل أنه يمكنك ربط سلسلة من أزواج المشغّل والإجراء؟
امنح وثائق البدء السريع لـ Zapier فرصة لفهم نوع توفير الوقت.
إنشاء قسيمة فريدة للمستخدمين المحددين جغرافيًا عبر محرك الترويج بدون رأس
تتمثل إحدى الميزات الأساسية في Voucherify في تخصيص الخصومات بناءً على ملف تعريف العميل في الوقت الفعلي. هذا ممكن بسبب الشرائح الديناميكية التي تراقب سمات العملاء وما وضعوه في عربة التسوق ، وتحرك الإجراءات وفقًا لبعض قواعد العمل.

في حالتنا ، سنقوم ببناء مقطع يتحقق من حقلنا المخصص (rspectiveHQ) والذي يقوم بدوره بتخزين المعلومات إذا دخل العميل في السياج الجغرافي. يمكننا تحقيق ذلك من خلال نقطة نهاية واحدة من Voucherify API ، ولكن أسرع طريقة هي ببساطة استخدام لوحة القيادة.
انتقل إلى العملاء وافتح منشئ المقطع. الآن قم بتصفية العميل باستخدام حقل البيانات الوصفية المقابل كما في الصورة أدناه:

قم بتأكيد الفلتر ، واضغط على إعادة التحميل وسترى جميع العملاء المطابقين للشريحة. يمكنك "مطالبة" مستخدم الاختبار بمغادرة السياج الجغرافي وإعادة تحميل المقطع لمعرفة ما إذا كان التكامل يعمل على النحو المتوقع.

إذا كان ما تراه يعكس الواقع ، فاحفظ المقطع.
الخطوة التالية هي استخدام المعلومات حول الموقع لتكييف الخصم.
ولكن قبل أن نتعمق في الأمر ، أريدك أن تتوقف للحظة وتحلل ما حققناه حتى الآن دون كتابة رمز خلفي واحد . في الوقت نفسه ، لم نغلق حلنا للتغيير لأن كلاً من Radar و Voucherify يكشفان عن واجهة برمجة تطبيقات غنية وبنية بدون رأس يمكنك توصيلها متى احتجت إلى ذلك.
الخطوة الأخيرة هي إعداد التوزيع الذي سوف:
- أرسل رمز قسيمة فريدًا
- إلى عميل تم اكتشافه
- مع القناة المحددة مسبقًا
للبدء ، دعنا ننشئ رمزًا ترويجيًا فريدًا لكل مستخدم. فليكن خصم 10٪. انتقل إلى منشئ الحملة ، واختر خيار الرموز المجمعة واتبع الخطوات التي ستحددها:
- نوع ومقدار الخصم ،
- إطار زمني،
- نمط الرموز بما في ذلك الطول والبادئة واللاحقة ومجموعة الأحرف ،
- العدد الأولي من الرموز ،
- وتفاصيل أخرى.
المرحلة الرابعة من المنشئ - قواعد التحقق - مثيرة للاهتمام بشكل خاص. هذا مكان يمكنك من خلاله تحديد من وتحت أي شروط يمكنه استرداد الرمز. تذكر أننا نريد قصر الاسترداد على العملاء الذين زاروا سياجنا الجغرافي فقط. سنستخدم المقطع الخاص بنا لإكمال هذه الخطوة.

تمنحك هذه الأداة المزيد من خيارات التصفية. إذا كنت تعمل على حملات اكتساب العملاء أو الاحتفاظ بهم ، فقد ترغب في التحقق من مرجع قواعد التحقق من الصحة لأنه يمكن أن يوفر لك عددًا كبيرًا من خطوط التعليمات البرمجية.
عندما ينتهي Voucherify من إنشاء المجموعة ، يجب أن تراهم مدرجين:

لدينا المقطع والرموز الترويجية ، فلنقم الآن بتوصيله بقناتنا التسويقية الخارجية!
يمكنك تنفيذه باستخدام Voucherify API و webhooks ، ولكن هناك طريقة أسرع - تلبية التوزيعات.
تتيح لك هذه الميزة اكتشاف عميل جديد أدخل (أو ترك) مقطعًا ، وتخصيص رمز قسيمة فريد له ، وإرساله بالبريد الإلكتروني أو الرسائل القصيرة أو إشعار الدفع أو الدردشة الحية أو إعلانات الوسائط الاجتماعية. بالإضافة إلى ذلك ، يساعدك المحرر المرئي في إنشاء نسخة ترويجية مخصصة.

كل قناة لها قالب خاص بها للرسالة ، دعنا نرى كيف تبحث عن دفع الإخطارات. ولكن للمتابعة ، نحتاج إلى التسجيل للحصول على حساب Braze وربطه بـ Voucherify باستخدام مفتاح API.
إرسال رمز ترويجي عبر إشعار الدفع مع Braze
Braze (المعروف سابقًا باسم AppBoy) هو أحد رواد أدوات التسويق عبر الأجهزة المحمولة. سنستخدم فقط جزءًا بسيطًا من قدراتهم ، لذلك أوصي بمراجعة مستنداتهم لمعرفة المزيد عن عرضهم.
يتطلب تكوين السيناريو الخاص بنا 3 خطوات:
- إنشاء حملة إعلام بالدفع ؛
- إرسال رموز القسيمة من Voucherify إلى Braze ؛
- تكوين إشعار دفع الويب في تطبيقنا.
حملة إعلام دفع
على غرار Voucherify ، يمكن لـ Braze تشغيل بعض الإجراءات بناءً على التغييرات في الوقت الفعلي لسمات العميل. في هذه الحالة بالذات ، سيعمل التوزيع الذي أنشأناه في Voucherify على تعيين حقل مخصص مملوء برمز فريد من حملة التعليمات البرمجية المجمعة.
سنقوم بتعريف حملة Braze بطريقة تكتشف هذا التغيير وتنطلق إشعار دفع إلى مثيل التطبيق الذي قام العميل بتسجيل الدخول إليه.
- افتح إدارة مجموعة التطبيقات لتحديد سياق التطبيق.
- حدد تطبيق ويب للحصول على مفتاح API العمومي.

- يمكنك الآن الانتقال إلى الحملات وإنشاء حملة إشعارات دفع جديدة.
- أنشئ رسالة تتضمن رمز القسيمة {{custom_attribute. $ {coupon}}} ، وحدد علامة التبويب "اختبار" واستخدم "إرسال اختبار إلى نفسي". إذا سمحت بإعلام الويب ، يجب أن تلاحظ رسالة تنزلق في أعلى اليسار.

- سيكون رمز القسيمة الموجود في رسالة الاختبار فارغًا لأننا لم نقم بإضافة هذه السمة المخصصة إلى أي من المستخدمين. لنحفظ مسودة الحملة وننشئ مستخدمًا تجريبيًا بالشفرة يدويًا.
قم بإنشاء ملف CSV بسيط على غرار الأسطر:
{{الشفرة}}
معرف خارجي ، قسيمة
[email protected] ، xyz
{{ENDCODE}}
وانتقل إلى "استيراد المستخدم" لتحميله.

- الآن بعد أن أصبح لدينا بيانات الاختبار وتم تحديد خيار "تجاوز سمات المستلمين ..." ، يمكننا رؤية المتغير مستبدلاً.
- في علامة التبويب التسليم ، قم بتغيير نوع التسليم إلى النوع المستند إلى الإجراء وحدد تغيير مشغل قيمة السمة المخصصة كما في الصورة أدناه:

- سجّل "جميع المستخدمين" في الحملة في الخطوة التالية ، واترك الإعدادات الأخرى دون تغيير. عندما تكون جاهزًا ، انقر فوق إطلاق الحملة في أسفل اليمين.
تزويد الكوبونات بالنحاس
هذه هي اللحظة التي يجب علينا فيها توصيل Voucherify بالنحاس. لحسن الحظ ، يدعم Voucherify Braze مع تكامل أصلي. الشيء الوحيد المتبقي لتوصيل هذين النظامين الأساسيين للتسويق هو الانتقال إلى عمليات التكامل ، وتحديد Braze ، وتوفير نقطة نهاية API والمفتاح.

يمكنك الآن إعادة فتح مسودة التوزيع وإكمال الخطوة الأخيرة. قم بتوفير أسماء الحقول المخصصة التي يقوم Voucherify بموجبها بتعيين رمز فريد وقيمته:

ووضعها على قيد الحياة. من الآن فصاعدًا ، في كل مرة يكتشف فيها الرادار حدثًا جغرافيًا وبالتالي يقوم بتحديث شريحة العميل ، سيقوم Voucherify بتعيين رمز قسيمة لهذا العميل ونشره في ملف تعريف المستخدم في Braze.
ستكتشف حملة Braze تغيير الحقل الجديد وستحاول إرسال إشعار ويب.
تلقي إشعار الدفع
نحن على وشك الانتهاء! الخطوة الأخيرة لإنهاء سلسلة الترويج لدينا هي السماح بتدفق الإشعارات إلى تطبيقنا.
كالعادة في حالة المنصات بدون رأس ، لا داعي لتنفيذه يدويًا. تقدم Braze كنظام أساسي حقيقي للمطور أولاً SDK مفتوح المصدر للويب.
لتنشيطه وتشغيله ، تحتاج إلى لصق مقتطف قصير وتعبئته بمفتاح API العام.
{{الشفرة}}
<script type = "text / javascript">
const test_user = {
FIRST_NAME: "مايك" ،
last_name: "Sedzielewski" ،
البريد الإلكتروني: "[email protected]"
}
+ الوظيفة (أ ، ف ، ف ، ب ، ص) {appboy = {} ؛ appboyQueue = [] ؛ لـ (var
s = "تهيئة تدمير getDeviceId toggleAppboyLogging setLogger
تغيير الجلسة المفتوحة طلب المستخدم ImmediateDataFlush requestFeedRefresh
SubscribeToFeedUpdates requestContentCardsRefresh
SubscribeToContentCardsUpdates logCardImpressions logCardClick
logCardDismal logFeedDisplayed logContentCardsDisplayed
logInAppMessageImpression logInAppMessageClick
logInAppMessageButtonClick logInAppMessageHtml انقر فوق
SubscribeToNewInAppMessages removeSubscription
removeAllSubscriptions logCustomEvent logCustomEvent logPur Buy isPushSupported
isPushBlocked isPushGranted isPushPermissionGranted
تم إلغاء تسجيل رسائل AppboyPushMessages
تتبع ردود الفعل موقع stopWebTracking استئناف ويب تتبع
wipeData ab.DeviceProperties ab.User ab.User.genders
ab.User.NotificationSubscriptionTypes ab.User.prototype.getUserId
ab.User.prototype.setFirstName ab.User.prototype.setLastName
ab.User.prototype.setEmail ab.User.prototype.setGender
ab.User.prototype.setDateOfBirth ab.User.prototype.setCountry
ab.User.prototype.setHomeCity ab.User.prototype.setLanguage
ab.User.prototype.setEmailNotificationSubscriptionType
ab.User.prototype.setPushNotificationSubscriptionType
ab.User.prototype.setPhoneNumber ab.User.prototype.setAvatarImageUrl
ab.User.prototype.setLastKnownLocation
ab.User.prototype.setUserAttribute
ab.User.prototype.setCustomUserAttribute
ab.User.prototype.addToCustomAttributeArray
ab.User.prototype.removeFromCustomAttributeArray
ab.User.prototype.incrementCustomUserAttribute
ab.User.prototype.addAlias
ab.User.prototype.setCustomLocationAttribute
ab.InAppMessage ab.InAppMessage.Slide From ab.InAppMessage. انقر فوق إجراء
ab.InAppMessage.DismissType ab.InAppMessage.OpenTarget
ab.InAppMessage.ImageStyle ab.InAppMessage.TextAlignment
ab.InAppMessage.Orientation ab.InAppMessage.CropType
ab.InAppMessage.prototype.subscribeToClickedEvent
ab.InAppMessage.prototype.subscribeToDismissedEvent
ab.InAppMessage.prototype.removeSubscription
ab.InAppMessage.prototype.removeAllSubscriptions
ab.InAppMessage.Button
ab.InAppMessage.Button.prototype.subscribeToClickedEvent
ab.InAppMessage.Button.prototype.removeSubscription
ab.InAppMessage.Button.prototype.removeAllSubscriptions
ab.SlideUpMessage ab.ModalMessage ab.FullScreenMessage
ab.HtmlMessage ab.ControlMessage ab. Feed
ab.Feed.prototype.getUnreadCardCount ab.ContentCards
ab.ContentCards.prototype.getUnviewedCardCount ab.Card
ab.ClassicCard ab.CaptionedImage ab.Banner ab.ControlCard
عرض ab.WindowUtils. تلقائيًاShowNewInAppMessages
display.showInAppMessage display.showFeed display.destroyFeed
display.toggleFeed display.showContentCards display.hideContentCards
display.toggleContentCards sharedLib ".split ("
") ، i = 0 ؛ i <s.length ؛ i ++) {لـ (var
m = s [i]، k = appboy، l = m.split (".")، j = 0؛ j <l.length-1؛ j ++) k = k [l [j]]؛ k [l [ ي]
] = (وظيفة جديدة ("وظيفة الإرجاع
"+ m.replace (/\./ g،" _ ") +" () {appboyQueue.push (وسيطات)؛ إرجاع
صحيح} ")) ()} appboy.getUser = function () {return new
appboy.ab.User}؛ appboy.getCachedFeed = function () {return new
appboy.ab.Feed}؛ appboy.getCachedContentCards = function () {return new
appboy.ab.ContentCards} ؛ (y = p.createElement (P)). type = 'text / javascript
'؛ y.src =' https: //js.appboycdn.com/web-sdk/2.3/appboy.min.js '؛ y.async
= 1؛ (b = p.getElementsByTagName (P) [0]). parentNode.insertBefore (y، b)} (wi
ndow، document، "script") ؛
appboy.initialize ('YOUR_KEY'، {baseUrl:
"https://sdk.iad-03.braze.com/api/v3"}) ؛
appboy.toggleAppboyLogging () ،
appboy.register
appboy.changeUser ("[email protected]") ؛
appboy.display.automaticallyShowNewInAppMessages () ،
appboy.openSession () ؛
</script>
{{ENDCODE}}
وتسجيل عامل خدمة. js:
{{الشفرة}}
self.importScripts ('https://js.appboycdn.com/web-sdk/2.3/service-worker.js') ؛
{{ENDCODE}}
عندما يكون في مكانه ، قم بإجراء اختبار آخر باستخدام مستخدم "text @ example" في إدخال "إضافة مستخدمين فرديين". من المفترض أن يتلقى تطبيقك إشعارًا يحتوي على الرمز الترويجي "xyz".
الآن ، دعنا نختبر ما إذا كانت الحملة تطلق رسالة دفع عند تغيير حقل القسيمة .
أولاً ، تأكد من أن حملتك نشطة وتشغيل تطبيق الويب. ثانيًا ، قم بتنزيل مجموعة Braze Postman ، وافتح كتالوج بيانات المستخدم ، وحدد مسار المستخدم - مثال على السمات. (إذا كنت لا تعرف ساعي البريد ، يمكنك اللحاق به هنا)
قم بتغيير عنوان URL لنقطة النهاية إلى العنوان الذي تم تعيينه له ، في حالتي هو: https://rest.iad-03.braze.com/
وحمولة الطلب إلى:
{{الشفرة}}{
"api_key": "YOUR_KEY"،
"صفات":[
{
"external_id": "[email protected]" ،
"القسيمة": "123"
}
]
} {{ENDCODE}}
أرسل الطلب وتوقع رسالة أخرى مع رمز القسيمة المحدث.
اختبار كل اللبنات مقطوعة الرأس
للتأكد من أن سير العمل يقوم بما طلبناه ، ما عليك سوى فتح تطبيقك واستخدام المستشعر "لتحديد موقع" في مكان مختلف ثم العودة إلى السياج الجغرافي. في غضون ثوانٍ قليلة ، من المفترض أن ترى الإشعار المخصص على شاشتك!
الآن يمكن للمستخدم أخذ الكود الخاص به ووضعه في صندوق القسيمة الذي تم التحقق منه بواسطة Voucherify على الواجهة الخلفية.
دعونا نلخص مكاسب المنصات مقطوعة الرأس هنا:
- في غضون ساعة أو نحو ذلك ، قدمنا حلاً عمليًا لسيناريو عمل معقد إلى حد ما.
- قاعدة الشفرة قصيرة جدًا وبسيطة - والتي تترجم إلى صيانة أقل.
- على الرغم من أننا لا نملك تحكمًا بنسبة 100٪ في الحل ، إلا أنه لا يزال مفتوحًا للتخصيص بفضل الوصول إلى واجهة برمجة التطبيقات.
- تتم موازنة الافتقار إلى الملكية الكاملة مع الدعم من فرق البائعين وتحسين جودة الأدوات.
- باستخدام خطافات الويب والأدوات مثل Zapier ، يمكنك توصيل مختلف الإدارات والأنظمة ودمجها في أسرع وقت.
هناك شيء واحد يجب الانتباه إليه عند استخدام بائعي SaaS متعددين وهو الرجوع. أحيانًا يكون النظام الأساسي معطلاً وتحتاج إلى إرشاد نظامك بكيفية الرد - على سبيل المثال ، كيفية تخزين الإجراءات ووضعها في قائمة الانتظار. ومع ذلك ، فإن الأنظمة الأساسية الصديقة للمطورين تعرض الواجهات التي يمكنك استخدامها لمراقبة توفر واجهات برمجة التطبيقات الخاصة بهم والتفاعل في الوقت المحدد.
من ناحية أخرى ، لا تعد الإجراءات الاحتياطية القوية ضرورية للتطبيقات في مرحلة POC بعد كل شيء.
كيف يمكن أن يساعدني نهج مقطوعة الرأس؟
باختصار ، من خلال تعلم كيف يمكنك الاستفادة من المنصات بدون رأس لبناء شيء ذي قيمة بسرعة وبتكلفة منخفضة ، ستصبح أكثر قيمة في سوق العمل.
ليست لغات البرمجة أو أطر العمل هي التي تمثل الميزة التنافسية اليوم. غالبًا ما يكون الأمر مختلفًا تمامًا - إنها الطريقة التي يمكن للشركات استخدام الأدوات المتاحة لحل مشاكلها بأقل قدر ممكن من التعليمات البرمجية. بعبارة أخرى ، هذه هي الأشياء التي تهم أكثر من إتقان مجموعة أو مكدسات تقنية معينة:
- معرفة كيفية تقليل الوقت اللازم للتسويق ؛
- نظرة عامة على تقنيات خفض تكلفة الصيانة ؛
- القدرة على تقليل الاعتماد على التقنيات الفردية ؛
- نظرة عامة على التقنيات الحالية التي تدعم الثلاثة أعلاه.
أين تبحث عن المزيد من منصات التجارة مقطوعة الرأس؟
يمكن أن تكون هذه القائمة نقطة انطلاق جيدة:
الترقيات
- قسيمة
- جيفتبيت
- فوشار
الكتالوج والمخزون
- ريكومبي
- تشانالاب
- تبلور
عربة التسوق
- سنيبكارت
- ماكر
قسط
- شريط
- حق
- ميدان
المراسلة
- طبقة
- انتهازي
- Pubnum
الحجز والأحداث
- تايم كيت
- الدخول
شحن
- شيبو
- Shipcloud
- رفع الكرة
عام
- المرن
- سنيبكارت
- مولتين
- OrderCloud
- كوميرسيتولس
ولكن إذا كنت ترغب في تجاوز التجارة الإلكترونية بدون رأس ، أقترح زيارة https://www.programmableweb.com والبحث. طريقة أخرى لبدء البحث هي تصفح عمليات تكامل Zapier.
آخر هو الذهاب إلى شبكة Postman API.
موارد:
كود المصدر التجريبي عند حدوث خلل
