ربط تطبيق Chat بخدمات وأدوات أخرى

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

المتطلبات الأساسية

تطبيق Google Chat مفعَّل للميزات التفاعلية لإنشاء تطبيق دردشة تفاعلي، أكمل إحدى مبادرات البدء السريعة التالية المستندة إلى في بنية التطبيق التي تريد استخدامها:

طلب إعداد تطبيق Chat من مستخدم

إذا كان إكمال أحد الطلبات يتطلب إعدادًا إضافيًا لا يمكن مكتملة مباشرةً في تطبيق Chat، يُرجى إرجاع تهيئة عنوان URL للمستخدم كجزء من رد عادي، أو تقديمه بشكل خاص، بالشكل التالي:

{
  "actionResponse": {
    "type": "REQUEST_CONFIG",
    "url": "CONFIGURATION_URL"
  }
}

يؤدي ذلك إلى إعلام Google Chat للمستخدم بطلب خاص، حيث يمكن CONFIGURATION_URL هو رابط زيارة المستخدم لإجراء مصادقة إضافية أو أو تفويض أو التكوين. يكون الرد REQUEST_CONFIG حصريًّا بشكلٍ متبادل مع طلب عادي رسالة الرد. ويتم تجاهل أي نص أو بطاقات أو سمات أخرى.

إكمال طلب الإعداد

كلّ حدث تفاعل واحد (MESSAGE) الذي يتلقّاه تطبيق Chat، يتضمن أيضًا الحقل configCompleteRedirectUrl يجب ترميز عنوان URL هذا في عنوان URL للإعدادات لاستخدامه عند اكتمال العملية. جارٍ إعادة التوجيه إلى هذه الصفحة يشير عنوان URL إلى Google Chat بأنّه تم تنفيذ طلب الضبط.

عند بدء تشغيل تطبيق Chat، يعتمد التدفق على تلقي رسالة محددة. ردًا على رسالة مثل @app help، يجب أن يردّ تطبيق Chat برسالة بدون مما يتطلب تهيئة إضافية.

عند إعادة توجيه المستخدم بنجاح إلى configCompleteRedirectUrl الواردة في الرسالة الأصلية، ينفِّذ Google Chat الخطوات التالية:

  1. محو الطلب الذي تم عرضه للمستخدم المبتدئ
  2. تحويل الرسالة الأصلية إلى رسالة علنية، وجعلها مرئية للأعضاء الآخرين في المساحة.
  3. إرسال الرسالة الأصلية إلى تطبيق Chat نفسه للمرة الثانية.

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

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

مصادقة مستخدم Chat خارج Chat

في بعض الحالات، مثل طلب تفويض OAuth لواجهة برمجة تطبيقات، يحتاج تطبيقك الربط بعنوان URL خارج Chat مع الحفاظ على حساب المستخدم وهويّتك. وأفضل طريقة لتحديد هوية المستخدم في هذه الحالات هي حماية تطبيق الوجهة من خلال تسجيل الدخول بحساب Google.

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

على الرغم من أن المعرّفين غير متطابقين تمامًا، إلا أنه يمكن فرضهما. إلى تضع قيمة مطالبة sub في users/{user} في Google Chat، مع إضافة الطلب القيمة مع users/. على سبيل المثال، قيمة المطالبة 123 مساوية إلى اسم المستخدم users/123 في الرسائل المرسلة إلى تطبيق Chat