ملحقات الدردشة
تتيح ملحقات الدردشة للبرامج التلقائية توفير ميزات اجتماعية وتفاعلية يتمكن المستخدمون من استدعائها مباشرة في المحادثات.
المحتويات
نظرة عامة
نموذج التفاعل
تظهر ملحقات الدردشة في شريط التنقل بأداة التكوين في Messenger بمجرد تفاعل المستخدم مع البرنامج التلقائي المرتبط.
عندما يضغط المستخدم على أيقونة ملحق الدردشة المطلوب، يتم فتح واجهة مستخدم تستند إلى webview يحددها المطوّر. يتمكن المستخدم بعد ذلك من إنشاء المحتوى أو تحديده لمشاركته في سلسلة الرسائل. يمكن أن تتضمن الرسالة التي يتم مشاركتها في سلسلة الرسائل الصور والروابط وغير ذلك الكثير.
عندما يتفاعل المستخدمون الموجودون بالمجموعة مع أي رسائل يتم مشاركتها بهذه الطريقة، يتوفر للمطوّر إمكانية الوصول إلى سياق المعلومات في سلسلة الرسائل وإمكانية طلب الأذونات وكل ما عدا ذلك مما يتوفر في مجموعة JavaScript SDK لملحقات Messenger.
حالات الاستخدام المحتملة
- التعبير: يمكنك إنشاء ملصقات أو صور ساخرة من داخل Messenger مباشرة. يمكنك مشاركة مقاطع الفيديو أو الأغاني أو أي محتوى آخر.
- الوسائط: يمكنك إرسال القصص حول الموضوعات التي تتابعها إلى المجموعة بمجرد حدوثها.
- التجارة: تخطيط وتنظيم المجموعة
- الإنتاجية: يمكنك إرسال التحديثات من أدوات تتبع المهام وتعديل وثيقة بشكل مجمّع.
- الترفيه: يمكنك إنشاء ألعاب أو تحديات جماعية.
يتوفر لدينا TaskBot كمصدر مفتوح، وهو برنامج تلقائي يعرض كل الميزات الموضّحة هنا.
تجربة في Messenger →Github Repo →
تكوين نقطة دخول شريط التنقل
للسماح لبرنامجك التلقائي بالظهور في شريط التنقل للأشخاص الذين قاموا بإضافته، يجب تعيين عنوان URL لصفحته الرئيسية.
إذا لم يكن ملحق الدردشة جاهزًا لبدء التشغيل، احرص على تعيين in_test على القيمة true لمنعه من الظهور لغير المطوّرين إلا بعد أن يصبح جاهزًا.
المشاركة
تدعم منصة Messenger المشاركة المخصصة من webview، مما يتيح للمطوّرين تقديم رسالة مخصصة ووجهة للرسائل التي يتم مشاركتها من برنامجهم التلقائي.
تمت إضافة عدة تحسينات لهذه الميزات لتمكينها من العمل مع ملحقات الدردشة. فيما يلي ما يجب أن تعرفه:
مشاركة سلسلة الرسائل الحالية
تشتمل وظيفة beginShareFlow() على معلمة mode والتي تدعم الوضع current_thread في الوقت الحالي. ويتيح ذلك للمستخدم المشاركة في سلسلة الرسائل التي قاموا باستدعاء ملحق الدردشة منها، بدلاً من تحديد سلسلة رسائل أخرى. ينبغي على الغالبية العظمى من المطوّرين اختيار وضع current_thread لداخل الملحق نفسه.
قد يكون هناك بعض المواقف التي ترغب خلالها في التحقق مما إذا كان هذا الوضع يدعمه إصدار Messenger الذي يستخدمه المستخدم أم لا. يمكنك استخدام طريقة getSupportedFeatures() والتحقق من المفتاح "sharing_direct" لكي تتأكد.
التفاعل مع المشاركات
يتم إجراء الاستدعاء success للمعلمة beginShareFlow() بغض النظر عن تأكيد المستخدم للمشاركة أو حذفها، طالما لم يحدث أي خطأ.
يقوم Messenger في الوقت الحالي بتمرير الحقل is_sent في الاستجابة إلى استدعاء success ليخبرك بما إذا كانت الرسالة قد أُرسلت بالفعل أم لا.
بعد قيام المستخدم بالمشاركة، يُفضل إغلاق الإطار إذا كانت العملية قد اكتملت، أو توجيه المستخدم إلى الجزء التالي من التدفق.
<script>
var messageToShare = { ... };
MessengerExtensions.beginShareFlow(function success(response) {
if(response.is_sent === true){
// User shared. We're done here!
MessengerExtensions.requestCloseBrowser();
}
else{
// User canceled their share!
}
},
function error(errorCode, errorMessage) {
// An error occurred trying to share!
},
messageToShare,
"current_thread");
</script>يمكنك الرجوع إلى وثائق beginShareFlow() لمزيد من المواصفات.
الحصول على معرّف المستخدم وسياق سلسلة الرسائل
استدعاء وظيفة getContext() للحصول على:
- معرّف المستخدم (المعرّف على نطاق الصفحة PSID)
- مُعرِّف السلسلة
- نوع السلسلة
تعمل هذه الوظيفة مع كل المستخدمين الذين يواجهون webview، بغض النظر عما إذا كان لهم سلسلة رسائل مفتوحة مع برنامجك التلقائي أم لا.
يرجى العلم أن الحصول على المعرّف بهذه الطريقة لا يتضمن القدرة على الحصول على الصفحة الشخصية للمستخدم. لتتمكن من ذلك، يجب أن تحصل على إذن للصفحة الشخصية.
تعرف على المزيد ←
إدارة الأذونات
عندما يبدأ أحد المستخدمين سلسلة رسائل مع برنامجك التلقائي، يتم منحك تلقائيًا الإذن لمراسلة ذلك المستخدم بالإضافة إلى إذن الحصول على صفحته الشخصية. يتم إلغاء هذا الإذن بالنسبة إلى الأشخاص الذين قاموا بحظر البرنامج التلقائي أو حذف سلسلة الرسائل.
بالنسبة إلى الأشخاص الذين يواجهون برنامجك التلقائي عبر webview ولم يبدؤوا سلسلة رسائل معه، فقد ترغب في طلب الحصول على هذه الأذونات. بالنسبة إلى هذا، يمكنك استخدام وظائف الأذونات الموجودة في مجموعة JavaScript SDK لملحقات Messenger.
تعرف على المزيد ←نصائح وأفضل الممارسات
اقترح Messenger أفضل ممارسات كيفية إعداد ملحق دردشة رائع، والتي تتضمن:
- الطريقة العامة
- كيفية استخدام أوضاع مشاركة مختلفة
- كيفية التحكم في webview chrome لتحقيق أعلى تأثير ممكن
- كيفية ضمان التوافق مع الإصدارات السابقة
مجموعة التصميم
هل أنت جاهز لتصميم ملحق الدردشة الخاص بك؟ تحقق من ملف التخطيط السهل الذي نوفره، والذي يحتوي على كل المكونات التي تحتاج إليها!
الحصول على المجموعة →الأسئلة المتكررة واستكشاف الأخطاء وإصلاحها
س: هل يجب أن يكون لديّ برنامج تلقائي حتى يمكنني تطوير محلق دردشة؟
ج: نعم ملحقات الدردشة عبارة عن ملحقات للبرامج التلقائية.
س: ما الذي يجعل ملحقات الدردشة تظهر في شريط تنقل أداة الإنشاء؟
ج: يظهر ملحق الدردشة في شريط تنقل أداة الإنشاء للمستخدم بعد تفاعله مع البرنامج التلقائي المرتبط.
س: هل يجب أن يكون لديّ ملحق دردشة حتى يمكنني السماح للمستخدمين بالمشاركة من برنامجي التلقائي؟
ج: لا! توفر منصة Messenger عددًا من الطرق الأخرى تتيح للمستخدمين المشاركة من برنامجك التلقائي.
س: هل يجب أن يكون لديّ ملحق دردشة حتى يمكنني استخدام Webview وJavascript وSDK لملحقات Messenger في برنامجي التلقائي؟ ما الاتصال؟
ج: لا! نحن نحب هذه الكلمة. في الواقع، يمكن استدعاء طرق عرض Webview بطرق عدة غير ملحلقات الدردشة، والتي تتيح جميعها استخدام ملحقات Messenger.
س: عند ضغط أحد مستلمي ملحق الدردشة على رابط، أي الميزات يتم توفيرها عبر JavaScript SDK لملحقات Messenger؟
ج: ستتوفر كل الميزات التي كانت متاحة للمرسل للمستخدمين الذين يقومون بفتح المحتوى الذي تمت مشاركته. يمكن الحصول على معرف المستخدم وسياق سلسلة الرسائل وبدء عمليات المشاركة الخاصة وغير ذلك الكثير. يرجى العلم أنه في مثل هذه الحالات، لن تتوفر لك صلاحية الوصول إلى الصفحة الشخصية للمستخدم أو مراسلة هؤلاء المستخدمين إلى أن تقوم بطلب الإذن اللازم.
س: هل تعمل الملحقات على Messenger.com وFacebook.com؟
ج: هذا الميزة مدعومة على نظامي التشغيل iOS وAndroid فقط. يمكن لمستخدمي الأجهزة العميلة التي تستند إلى الويب النقر على الروابط التي تمت مشاركتها بواسطة مستخدمي ملحقات الدردشة، لكن لن يكون بإمكانهم استخدام الوظائف التي توفرها JavaScript SDK. لمزيد من المعلومات، راجع "التوافق مع الإصدارات السابقة" في دليل أفضل ممارسات ملحقات الدردشة.
س: ما الفرق بين المشاركة إلى سلسلة الرسائل الحالية والمشاركة مع البث؟
ج: تعتمد ميزة ملحقات الدردشة على ميزات مشاركة webview التي تم طرحها مسبقًا من خلال إضافة تدفق يسمى "current_thread".
إذا قام أحد المستخدمين باستدعاء برنامجك التلقائي من داخل سلسلة رسائل باستخدام أداة الإنشاء، فذلك يعني أنه من المرجّح أنه يريد المشاركة هناك، بدلاً من المشاركة مع شخص آخر. ولذلك باستخدام تدفق "current_thread"، يتمكن المستخدم من تأكيد إرسال جزء من المحتوى إلى سلسلة الرسائل الحالية، بدلاً من بثها إلى سلاسل رسائل متعددة.
س: أنا أستخدم أحدث إصدار من Messenger ولا تعمل مجموعة SDK في webview. ما الخطأ في الأمر؟
ج: تحقق مما يلي:
صفحة غير منشورة: إذا لم تكن الصفحة التي تم ربط برنامجك التلقائي بها قد تم نشرها بعد، فلن يتم تحميل مجموعة SDK للمستخدمين الذين لا يمتلكون أي أدوار (على سبيل المثال، مطوّر أو مسؤول) بالصفحة. قم بإضافة المستخدم إلى الصفحة أو قم بنشر الصفحة.
لم يتم تعيين خاصية
messenger_extension: يجب التأكد من أنه، في أي مكان يُفتح منه webview، يتم تعيينmessenger_extensionsعلىtrue. ويشتمل هذا على ما يلي:- في قوائم برنامجك التلقائي.
- في الأزرار في الرسائل التي ترسلها برامجك التلقائية
- في أي رسائل يتم مشاركتها عبر
beginShareFlow()وأزرار المشاركة.
المجال غير مدرج بالقائمة البيضاء: قم بإضافة المجال الذي تتم استضافة صفحتك عليه إلى القائمة البيضاء للمجالات في برنامجك التلقائي.
راجع المزيد من نصائح استكشاف المشكلات وحلها في webview.
س: قمت بإنشاء ملحق دردشة ولا يمكنني الحصول عليه لعرضه في شريط تنقل أداة الإنشاء؟ كيف يمكنني إصلاح ذلك؟
تحقق مما يلي:
تعيين
home_urlللصفحة المحددة التي تريد عرضها، وذلك باستخدام رموز وصول الصفحة الصحيح لهذه الصفحة. لن يؤدي نقل برنامج تلقائي من أحد صفحات فيسبوك إلى صفحة أخرى إلى نقل عنوان URL للصفحة الرئيسية.في حالة تعيين السمة
in_testإلى القيمة "صحيح" في وضع التطوير، يرجى التحقق من أن الشخص الذي يتحقق من شريط التنقل من مطوري أو مختبري البرنامج التلقائي المشار إليه، أو مديرًا لصفحته على فيسبوك. إذا كنت قد قمت بإصدار البرنامج التلقائي للعامة، فتحقق من أنه قمت بتقديمه وتمت الموافقة عليه للحصول على الإذنpages_messaging.تحقق من أنه تم نشر صفحة فيسبوك المرفق بها البرنامج التلقائي.
تحقق من البرنامج التلقائي نفسه في وضع عام.
وتحقق أيضًا من التحدث إلى البرنامج التلقائي قبل ذلك.
يتم إجراء تخزين مؤقت لملحقات الدردشة التي يتم عرضها في أداة الإنشاء. قد يلزمك الانتظار فترة وجيزة حتى يتم عرضه.