تعيين المستخدمين عبر التطبيقات والصفحات

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

يُصدر تطبيق فيسبوك معرفات المستخدمين على مستوى التطبيق للأشخاص الذين يسجلون الدخول لأول مرة إلى مثيل أحد التطبيقات والأشخاص الذين يسجلون الدخول باستخدام تسجيل الدخول المحدود. أما بالنسبة للأشخاص الذين يستخدمون البرنامج التلقائي في Messenger لأول مرة، يُصدر فيسبوك معرفات المستخدمين على مستوى الصفحة. وبحسب التعريف، يعني هذا أن معرف الشخص نفسه قد يكون مختلفًا بين هذه التطبيقات والبرامج التلقائية.

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

هناك ثلاث طرق يمكن من خلالها تعيين المستخدم نفسه عبر العديد من التطبيقات:

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

الحقل token_for_business في عقدة المستخدم

بمجرد ربط التطبيق بمدير الأعمال، يمكنك طلب الحقل token_for_business في عقدة User، باستخدام المعرف على مستوى التطبيق الذي تم الحصول عليه من تسجيل الدخول المحدود أو تسجيل الدخول الأول إلى مثيل التطبيق. ويُرجع هذا الاستدعاء السلسلة نفسها لهذا الشخص على مستوى جميع التطبيقات التي يديرها مدير الأعمال نفسه.

GET /me?fields=token_for_business

تكون الاستجابة:

{
  "id": "1234567890"
  "token_for_business": "weg23ro87gfewblwjef"
}

ملاحظات الاستخدام:

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

لتيسير الأمر، يتوفر الحقل token_for_business في جميع إصدارات API

الخاصية token_for_business ضمن كائن signed_request في اللوحة

حتى يسهل على التطبيقات التي لديها تواجد على اللوحة تعيين مستخدم ما على مستوى العديد من التطبيقات، إذا كان التطبيق مرتبطًا بمدير أعمال، وكان المستخدم قد سجل الدخول إلى التطبيق، فستتم إضافة حقل token_for_business وإدخاله إلى التطبيق عبر الكائن signed_requestالذي يتم إدخاله إلى تطبيقات اللوحة عند التحميل. على سبيل المثال:

{
  "algorithm": "HMAC-SHA256",
  "expires": 1414263600,
  "issued_at": 1414257389,
  "oauth_token": "CAAGEkq9GMZAkBAFnvvQ3M6msZBKITLa1gVZBVdnLTdJue2QeV6fMKRXn4G6fcEZB5ZAJyg3z6HdaKOJCCMJ1l9YFWmN4hq6nNnx77f9O7SYhsnPcJ6iH79xjFwqhrALgieDp7GiziMy5Y3Mol6RzHvCM5ceqQe9ZAijvrWZB5hEIwphbMQKEwZA4ZBozXP3NJgEZA3nZCMTTtvleWpxfmqIqO5XwxneCZBsZC4",
  "token_for_business": "AbwoGqummPbF3zp_",
  "user_id": "10154418713995634"
}

ستكون قيمة الحقل token_for_business هي نفسها كما لو تم الاستعلام عنها في العقدة User مباشرةً، على سبيل المثال عبر /me?fields=token_for_business. وتتبع أيضًا القواعد نفسها، أي إذا تغير النشاط التجاري المالك، فستتغير قيمة token_for_business بدورها.

إذا لم يكن التطبيق مرتبطًا بمدير أعمال، أو لم يكن المستخدم قد سجل الدخول إلى التطبيق، فإن الخاصية token_for_business لن تكون متوفرة في الكائن signed_request.

عنصر الربط ids_for_business في عقدة المستخدم

يمكنك الحصول على معرفات النشاط التجاري التي تم تعيينها عن طريق استدعاء عنصر الربط ids_for_business في العقدة User. وتكون الاستجابة على هيئة مصفوفة من الكائنات، يمثل كل منها تطبيقًا مرتبطًا بالنشاط التجاري نفسه باعتباره التطبيق الذي يُجري الاستدعاء، والذي قام المستخدم كذلك بتسجيل الدخول إليه.

GET /me/ids_for_business

مثال على الاستجابة:

{
  "data": [
    {
      "id": "10153949089790582", 
      "app": {
        "name": "Business's App 1", 
        "namespace": "business_app_1", 
        "id": "647733625268125"
      }
    }, 
    {
      "id": "605665581", 
      "app": {
        "name": "Business's App 2", 
        "namespace": "business_app_2", 
        "id": "370612223054807"
      }
    }, 
    {
      "id": "10154053730190582", 
      "app": {
        "name": "Business's App 3", 
        "namespace": "business_app_3", 
        "id": "194890427204075"
      }
    }
  ]
}

حتى يتم إرجاع البيانات بواسطة API، يجب أن يكون المستخدم قد قام بتسجيل الدخول إلى واحد أو أكثر من التطبيقات المرتبطة بالنشاط التجاري نفسه باعتباره التطبيق الذي تستخدمه لإجراء استدعاء API. مثال: إذا سجّل شخص ما الدخول إلى 3 تطبيقات من أصل 5 تطبيقات مرتبطة بالنشاط التجاري نفسه، فستعرض API‏ 3 كائنات.

الأسئلة المتكررة

هل أحتاج إلى استخدام واجهة API التعيين على مستوى التطبيقات؟

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

ما المقصود بمدير الأعمال؟

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

لا أعتقد أني أحتاج إلى استخدام واجهة API التعيين على مستوى التطبيقات ولكن هل يجب أن أربط تطبيقاتي بنشاط تجاري على أي حال؟

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

هل يمكنني ربط تطبيقي بالعديد من الأنشطة التجارية؟

لا. يمكن ربط التطبيق إلا بنشاط تجاري واحد في المرة.

هل يمكنني نقل تطبيق إلى نشاط تجاري آخر؟

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