مصادقة تطبيقات Chat وطلبات Google Chat API واعتمادهما

المصادقة والترخيص هما آليتان تُستخدَمان لإثبات الهوية والوصول إلى الموارد، على التوالي. يوضّح هذا المستند آلية عمل المصادقة والتفويض في تطبيقات Chat وطلبات Chat API.

نظرة عامة على العملية

يوضّح المخطّط التالي الخطوات العالية المستوى للمصادقة والتفويض في Google Chat:

الخطوات الأساسية لمصادقة Google Chat وتفويضها
الشكل 1. خطوات عالية المستوى لمصادقة Google Chat وتفويضها

  1. إعداد مشروع على Google Cloud وتفعيل Chat API وإعداد تطبيق Chat: أثناء التطوير، يمكنك إنشاء مشروع على Google Cloud. في مشروع Google Cloud، عليك تفعيل Chat API، وضبط تطبيق Chat، وإعداد المصادقة. لمزيد من المعلومات، يُرجى الاطّلاع على مقالتَي التطوير على Google Workspace وإنشاء تطبيق Chat.

  2. طلب بيانات من Chat API: عندما يطلب تطبيقك بيانات من واجهة برمجة التطبيقات Chat API، يُرسِل بيانات اعتماد المصادقة إلى واجهة برمجة التطبيقات Chat API. إذا كان تطبيقك يُجري مصادقة باستخدام حساب خدمة، يتم إرسال بيانات الاعتماد كأحد أجزاء الرمز البرمجي لتطبيقك. إذا كان تطبيقك يتطلب الاتصال بواجهة برمجة التطبيقات Chat API باستخدام مصادقة مستخدم لم يتم منحها بعد، سيُطلب من المستخدم تسجيل الدخول.

  3. طلب الموارد: يطلب تطبيقك الوصول باستخدام النطاقات التي تحدّدها أثناء إعداد المصادقة.

  4. طلب الموافقة: إذا كان تطبيقك يُجري مصادقة بصفته مستخدمًا، تعرِض Google شاشة موافقة OAuth ليتمكّن المستخدم من تحديد ما إذا كان سيمنح تطبيقك إذن الوصول إلى البيانات المطلوبة. لا تتطلّب المصادقة باستخدام حساب خدمة موافقة المستخدم.

  5. إرسال طلب تمت الموافقة عليه للحصول على الموارد: إذا وافق المستخدم على ملف تعريف الاعتماد ونطاقات التفويض، يجمع تطبيقك ملف الاعتماد ونطاقات التفويض التي وافق عليها المستخدم في طلب. يتم إرسال الطلب إلى خادم التفويض في Google للحصول على رمز دخول.

  6. تعرِض Google رمز دخول: يحتوي رمز الدخول على قائمة بحدود التفويض الممنوحة. إذا كانت قائمة النطاقات التي تم عرضها أكثر تقييدًا من النطاقات المطلوبة، يوقف تطبيقك أي ميزات محدودة برمز المرور.

  7. الوصول إلى الموارد المطلوبة: يستخدم تطبيقك الرمز المميّز للوصول من Google لمحاولة استدعاء Chat API والوصول إلى موارد Chat API.

  8. الحصول على رمز إعادة التنشيط (اختياري): إذا كان تطبيقك بحاجة إلى الوصول إلى واجهة برمجة التطبيقات Google Chat API بعد انتهاء صلاحية رمز وصول واحد، يمكنه الحصول على رمز إعادة تنشيط. لمزيد من المعلومات، يُرجى الاطّلاع على مقالة استخدام بروتوكول OAuth 2.0 للوصول إلى Google APIs.

  9. طلب المزيد من الموارد: إذا كان تطبيقك بحاجة إلى المزيد من أذونات الوصول، يطلب من المستخدم منح نطاقات جديدة، ما يؤدي إلى تقديم طلب جديد للحصول على رمز دخول (الخطوات 3 إلى 6).

الحالات التي تتطلّب فيها تطبيقات Chat المصادقة

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

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

لإرسال رسائل غير متزامنة أو تنفيذ مهام نيابةً عن مستخدم، تُرسل تطبيقات Chat طلبات REST إلى Chat API، التي تتطلّب المصادقة والتفويض.

لا تتطلّب الردود على تفاعلات المستخدمين مصادقة.

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

تتلقّى تطبيقات Google Chat أحداث التفاعل كلما تفاعل مستخدم مع أحد تطبيقات Chat أو استخدمه، بما في ذلك ما يلي:

  • يرسل أحد المستخدمين رسالة إلى تطبيق Chat.
  • يُشار إلى تطبيق Chat باستخدام @.
  • يستخدِم أحد المستخدِمين أحد أوامر الشرطة المائلة في تطبيق Chat.

يعرض الرسم البياني التالي تسلسل طلب/ردّ بين أحد مستخدمي Chat وتطبيق Chat:

لا يلزم الحصول على إذن لأحداث التفاعل في تطبيق Chat
الشكل 2:لا تتطلّب أحداث التفاعل مع تطبيق Chat مصادقة.

  1. يرسل المستخدم رسالة إلى تطبيق Chat في Google Chat.
  2. يعيد Google Chat توجيه الرسالة إلى التطبيق.
  3. يتلقّى التطبيق الرسالة ويعالجها ويرسل ردًا إلى Google Chat.
  4. تعرِض Google Chat الردّ للمستخدم أو في مساحة.

ويتم تكرار هذه التسلسلات لكل حدث تفاعل في تطبيق Chat.

تتطلّب الرسائل غير المتزامنة المصادقة.

تحدث الرسائل غير المتزامنة عندما يقدّم تطبيق Chat طلبًا إلى Chat API، ما يتطلّب المصادقة والتفويض.

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

  • أنشئ مساحة Chat مخصّصة للتحقيق في انقطاع الخدمة وحلّه.
  • أضِف مستخدمين إلى مساحة Chat.
  • انشر رسالة في مساحة Chat لتقديم تفاصيل عن الانقطاع.

يعرض الرسم البياني التالي تسلسل رسائل غير متزامنة بين تطبيق Chat ومساحة Chat:

المصادقة مطلوبة للرسائل غير المتزامنة
الشكل 3. تتطلّب الرسائل غير المتزامنة المصادقة.

  1. ينشئ تطبيق Chat رسالة من خلال طلب بيانات من Chat API باستخدام المحاولة spaces.messages.create، ويشمل بيانات اعتماد المستخدم في طلب HTTP.
  2. تُجري Google Chat مصادقة لتطبيق Chat باستخدام حساب الخدمة أو بيانات اعتماد المستخدم.
  3. يعرض Google Chat رسالة التطبيق في مساحة Chat محدّدة.

نطاقات Chat API

ضبط شاشة موافقة بروتوكول OAuth واختيار النطاقات لتحديد المعلومات التي يتم عرضها للمستخدمين ومعلّقي التطبيقات، وتسجيل تطبيقك حتى تتمكّن من نشره لاحقًا

لتحديد مستوى الوصول الممنوح لتطبيقك، عليك تحديد نطاقات التفويض و الإفصاح عنها. نطاق التفويض هو سلسلة عنوان موارد متحدّد (URI) لبروتوكول OAuth 2.0 تحتوي على اسم تطبيق Google Workspace ونوع البيانات التي يصل إليها ومستوى الوصول.

النطاقات غير الحسّاسة

رمز النطاق الوصف
https://www.googleapis.com/auth/chat.bot

تتيح تطبيقات Chat للتطبيقات عرض المحادثات وإرسال الرسائل.

لا يتيح هذا النطاق سوى مصادقة التطبيقات باستخدام حسابات الخدمة. لا يمكنك المصادقة باستخدام بيانات اعتماد المستخدم أو باستخدام تفويض على مستوى النطاق باستخدام هذا النطاق.

النطاقات الحسّاسة

رمز النطاق الوصف
https://www.googleapis.com/auth/chat.spaces إنشاء محادثات ومساحات والاطّلاع على البيانات الوصفية أو تعديلها (بما في ذلك إعدادات السجلّ وإعدادات الوصول) في Chat
https://www.googleapis.com/auth/chat.spaces.create إنشاء محادثات جديدة في Chat
https://www.googleapis.com/auth/chat.spaces.readonly الاطّلاع على المحادثات والمساحات في Chat
https://www.googleapis.com/auth/chat.memberships الاطّلاع على المشاركين في المحادثات في Chat وإضافتهم وإزالتهم وتعديل معلوماتهم
https://www.googleapis.com/auth/chat.memberships.app الانضمام إلى المحادثات في Google Chat أو مغادرتها
https://www.googleapis.com/auth/chat.memberships.readonly الاطّلاع على المشاركين في محادثات Chat
https://www.googleapis.com/auth/chat.messages.create إنشاء الرسائل وإرسالها في Chat
https://www.googleapis.com/auth/chat.messages.reactions عرض التفاعلات مع الرسائل في Chat وإضافتها وحذفها
https://www.googleapis.com/auth/chat.messages.reactions.create إضافة تفاعلات إلى رسالة في Chat
https://www.googleapis.com/auth/chat.messages.reactions.readonly عرض التفاعلات مع رسالة في Chat
https://www.googleapis.com/auth/chat.users.readstate الاطّلاع على وقت آخر قراءة لمحادثات Chat وتعديله
https://www.googleapis.com/auth/chat.users.readstate.readonly الاطّلاع على وقت القراءة الأخير لمحادثات Chat
https://www.googleapis.com/auth/chat.admin.spaces.readonly الاطّلاع على المحادثات والمساحات التي يملكها نطاق المشرف في Chat
https://www.googleapis.com/auth/chat.admin.spaces عرض أو تعديل المحادثات والمساحات التي يملكها نطاق المشرف في Chat
https://www.googleapis.com/auth/chat.admin.memberships.readonly عرض الأعضاء والمدراء في المحادثات التي يملكها نطاق المشرف في Chat
https://www.googleapis.com/auth/chat.admin.memberships عرض الأعضاء والمدراء في المحادثات التي يملكها نطاق المشرف في Chat وإضافتهم وتعديلهم وإزالتهم
https://www.googleapis.com/auth/chat.app.spaces

إنشاء محادثات ومساحات والاطّلاع على البيانات الوصفية أو تعديلها (بما في ذلك إعدادات السجلّ وإعدادات الوصول) في Chat يتطلب موافقة المشرف.

لا يتيح هذا النطاق سوى مصادقة التطبيقات باستخدام حسابات الخدمة. لا يمكنك المصادقة باستخدام بيانات اعتماد المستخدم أو باستخدام تفويض على مستوى النطاق باستخدام هذا النطاق.

https://www.googleapis.com/auth/chat.app.spaces.create

إنشاء محادثات ومساحات جديدة في Chat يتطلب موافقة المشرف.

لا يتيح هذا النطاق سوى مصادقة التطبيقات باستخدام حسابات الخدمة. لا يمكنك المصادقة باستخدام بيانات اعتماد المستخدم أو باستخدام تفويض على مستوى النطاق باستخدام هذا النطاق.

https://www.googleapis.com/auth/chat.app.memberships

الاطّلاع على الأعضاء وإضافتهم وإزالتهم وتعديل معلوماتهم في المحادثات والمساحات في Chat تتطلب موافقة المشرف.

لا يتيح هذا النطاق سوى مصادقة التطبيقات باستخدام حسابات الخدمة. لا يمكنك المصادقة باستخدام بيانات اعتماد المستخدم أو باستخدام تفويض على مستوى النطاق باستخدام هذا النطاق.

https://www.googleapis.com/auth/chat.customemojis الاطّلاع على الرموز التعبيرية المخصّصة وإنشاؤها وحذفها في Chat
https://www.googleapis.com/auth/chat.customemojis.readonly الاطّلاع على الرموز التعبيرية المخصّصة في Chat
https://www.googleapis.com/auth/chat.users.spacesettings عرض إعدادات مساحة المستخدم في Chat وتعديلها

اطّلِع على واجهات برمجة التطبيقات لإعدادات مستخدمي المساحة: getSpaceNotificationSetting وupdateSpaceNotificationSetting.

النطاقات المحظورة

رمز النطاق الوصف
https://www.googleapis.com/auth/chat.delete حذف المحادثات والمساحات وإزالة إمكانية الوصول إلى الملفات المرتبطة بها في Chat
https://www.googleapis.com/auth/chat.import استيراد المساحات والرسائل والاشتراكات إلى Chat لمزيد من المعلومات، يُرجى الاطّلاع على مقالة تفويض تطبيقات Chat لاستيراد البيانات.
https://www.googleapis.com/auth/chat.messages يمكنك عرض الرسائل وإنشاؤها وإرسالها وتعديلها وحذفها، وإضافة التفاعلات إلى الرسائل وعرضها وحذفها.
https://www.googleapis.com/auth/chat.messages.readonly عرض الرسائل والتفاعلات في Chat
https://www.googleapis.com/auth/chat.admin.delete حذف المحادثات والمساحات التي يملكها نطاق المشرف، وإزالة إمكانية الوصول إلى الملفات المرتبطة بها في Chat
https://www.googleapis.com/auth/chat.app.delete

حذف المحادثات والمساحات وإزالة إمكانية الوصول إلى الملفات المرتبطة بها في Chat يتطلب موافقة المشرف.

لا يتيح هذا النطاق سوى مصادقة التطبيقات باستخدام حسابات الخدمة. لا يمكنك المصادقة باستخدام بيانات اعتماد المستخدم أو باستخدام تفويض على مستوى النطاق باستخدام هذا النطاق.

تشير النطاقات في الجداول السابقة إلى حساسيتها، وفقًا للتعريفات التالية:

إذا كان تطبيقك يتطلب الوصول إلى أي واجهات برمجة تطبيقات أخرى من Google، يمكنك إضافة هذه النطاقات أيضًا. لمزيد من المعلومات عن نطاقات Google API، يُرجى الاطّلاع على مقالة استخدام بروتوكول OAuth 2.0 للوصول إلى Google APIs.

لمزيد من المعلومات عن نطاقات واجهات برمجة التطبيقات في Google Workspace، اطّلِع على مقالة ضبط شاشة موافقة بروتوكول OAuth واختيار النطاقات.

أنواع المصادقة المطلوبة

هناك طريقتان يمكن لتطبيقات Chat من خلالهما المصادقة والتفويض باستخدام Chat API:

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

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

يتوفّر نوعان من نطاقات تفويض OAuth يتيحان مصادقة التطبيقات:

  • https://www.googleapis.com/auth/chat.bot: يمكن لتطبيق Chat استدعاء طرق Google Chat API التي تتيح نطاق التفويض هذا لإنشاء موارد يمكنه الوصول إليها أو تعديلها أو الحصول عليها أو إدراجها أو حذفها، مثل الرسائل في المساحات التي يضيف إليها المستخدمون النهائيون تطبيق Chat. يمكن لتطبيق Chat منح نفسه نطاق التفويض هذا، ولا يلزم الحصول على إذن من المشرف أو المستخدم النهائي.
  • https://www.googleapis.com/auth/chat.app.* (إصدار المطوّرين): يتطلب استخدام هذه النطاقات موافقة المشرف لمرّة واحدة. لتلقّي موافقة المشرف، عليك إعداد حساب خدمة تطبيق Chat لتلقّي موافقة المشرف من خلال إنشاء برنامج متوافق مع OAuth في Google Workspace Marketplace و ضبط التطبيق في حزمة تطوير البرامج (SDK) في Google Workspace Marketplace. تسمح هذه النطاقات لتطبيق Chat باستدعاء متدّلات معيّنة في Google Chat API. على سبيل المثال، يسمح chat.app.spaces.create للتطبيقات بإنشاء مساحات Chat.

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

  • من خلال مصادقة التطبيق، لا تعرض الطرق سوى الموارد التي يمكن لتطبيق Chat الوصول إليها.
  • من خلال مصادقة المستخدم، لا تعرض الطرق سوى الموارد التي يمكن للمستخدم الوصول إليها.

على سبيل المثال، يؤدي استدعاء الطريقة spaces.list() باستخدام إذن التطبيق إلى عرض قائمة المساحات التي يكون تطبيق Chat عضوًا فيها. يؤدي استدعاء spaces.list() مع تفويض المستخدم إلى عرض قائمة المساحات التي يكون المستخدم عضوًا فيها. في الواقع، قد تستخدم كلا النوعَين من مصادقة عند الاتصال بواجهة برمجة التطبيقات Chat API، وذلك استنادًا إلى تصميم وميزات تطبيق Chat.

لطلبات البيانات غير المتزامنة من Chat API

يسرد الجدول التالي طرق Chat API ونطاقات التفويض المتوافقة معها:

الطريقة مصادقة المستخدم متاحة مصادقة التطبيقات متاحة نطاقات التفويض المتوافقة
المساحات  
إنشاء مساحة باستخدام مصادقة المستخدم:
  • chat.spaces.create
  • chat.spaces
  • chat.import
باستخدام مصادقة التطبيق وموافقة المشرف (متاحة في إصدار المطوّر):
  • chat.app.spaces.create
  • chat.app.spaces
إعداد مساحة باستخدام مصادقة المستخدم:
  • chat.spaces.create
  • chat.spaces
الحصول على مساحة باستخدام مصادقة المستخدم:
  • chat.spaces.readonly
  • chat.spaces
عند مصادقة المستخدم باستخدام امتيازات المشرف:
  • chat.admin.spaces.readonly
باستخدام مصادقة التطبيقات:
  • chat.bot
باستخدام مصادقة التطبيق وموافقة المشرف (متاحة في إصدار المطوّر):
  • chat.app.spaces
قائمة المساحات باستخدام مصادقة المستخدم:
  • chat.spaces.readonly
  • chat.spaces
باستخدام مصادقة التطبيقات:
  • chat.bot
البحث في المساحات عند مصادقة المستخدم باستخدام امتيازات المشرف:
  • chat.admin.spaces.readonly
تعديل مساحة باستخدام مصادقة المستخدم:
  • chat.spaces
  • chat.import
عند مصادقة المستخدم باستخدام امتيازات المشرف:
  • chat.admin.spaces
باستخدام مصادقة التطبيق وموافقة المشرف (متاحة في إصدار المطوّر):
  • chat.app.spaces
حذف مساحة باستخدام مصادقة المستخدم:
  • chat.delete
  • chat.import
عند مصادقة المستخدم باستخدام امتيازات المشرف:
  • chat.admin.delete
باستخدام مصادقة التطبيق وموافقة المشرف (متاحة في إصدار المطوّر):
  • chat.app.delete
إكمال عملية الاستيراد لمساحة باستخدام مصادقة المستخدم:
  • chat.import
العثور على رسالة مباشرة باستخدام مصادقة المستخدم:
  • chat.spaces.readonly
  • chat.spaces
باستخدام مصادقة التطبيقات:
  • chat.bot
الأعضاء  
إنشاء عضو باستخدام مصادقة المستخدم:
  • chat.memberships
  • chat.memberships.app
  • chat.import
عند مصادقة المستخدم باستخدام امتيازات المشرف:
  • chat.admin.memberships
باستخدام مصادقة التطبيق وموافقة المشرف (متاحة في إصدار المطوّر):
  • chat.app.memberships
الحصول على عضوية باستخدام مصادقة المستخدم:
  • chat.memberships.readonly
  • chat.memberships
باستخدام مصادقة التطبيقات:
  • chat.bot
عند مصادقة المستخدم باستخدام امتيازات المشرف:
  • chat.admin.memberships.readonly
أعضاء القائمة باستخدام مصادقة المستخدم:
  • chat.memberships.readonly
  • chat.memberships
  • chat.import
باستخدام مصادقة التطبيقات:
  • chat.bot
عند مصادقة المستخدم باستخدام امتيازات المشرف:
  • chat.admin.memberships.readonly
حذف عضو باستخدام مصادقة المستخدم:
  • chat.memberships
  • chat.memberships.app
  • chat.import
عند مصادقة المستخدم باستخدام امتيازات المشرف:
  • chat.admin.memberships
باستخدام مصادقة التطبيق وموافقة المشرف (متاحة في إصدار المطوّر):
  • chat.app.memberships
تعديل عضو باستخدام مصادقة المستخدم:
  • chat.memberships
  • chat.import
عند مصادقة المستخدم باستخدام امتيازات المشرف:
  • chat.admin.memberships
باستخدام مصادقة التطبيق وموافقة المشرف (متاحة في إصدار المطوّر):
  • chat.app.memberships
الرسائل  
إنشاء رسالة باستخدام مصادقة المستخدم:
  • chat.messages.create
  • chat.messages
  • chat.import
باستخدام مصادقة التطبيقات:
  • chat.bot
تلقّي رسالة باستخدام مصادقة المستخدم:
  • chat.messages.readonly
  • chat.messages
باستخدام مصادقة التطبيقات:
  • chat.bot
عرض الرسائل باستخدام مصادقة المستخدم:
  • chat.messages.readonly
  • chat.messages
  • chat.import
تعديل رسالة باستخدام مصادقة المستخدم:
  • chat.messages
  • chat.import
باستخدام مصادقة التطبيقات:
  • chat.bot
حذف رسالة باستخدام مصادقة المستخدم:
  • chat.messages
  • chat.import
باستخدام مصادقة التطبيقات:
  • chat.bot
التفاعلات  
إنشاء تفاعل باستخدام مصادقة المستخدم:
  • chat.messages.reactions.create
  • chat.messages.reactions
  • chat.messages
  • chat.import
عرض التفاعلات باستخدام مصادقة المستخدم:
  • chat.messages.reactions.readonly
  • chat.messages.reactions
  • chat.messages.readonly
  • chat.messages
حذف تفاعل باستخدام مصادقة المستخدم:
  • chat.messages.reactions
  • chat.messages
  • chat.import
رموز إيموجي مخصصة  
إنشاء رمز تعبيري مخصّص باستخدام مصادقة المستخدم:
  • chat.customemojis
حذف رمز تعبيري مخصّص باستخدام مصادقة المستخدم:
  • chat.customemojis
الحصول على رمز تعبيري مخصّص باستخدام مصادقة المستخدم:
  • chat.customemojis
  • chat.customemojis.readonly
عرض رموز إيموجي مخصّصة باستخدام مصادقة المستخدم:
  • chat.customemojis
  • chat.customemojis.readonly
الوسائط والمرفقات  
تحميل الوسائط كمرفق ملف باستخدام مصادقة المستخدم:
  • chat.messages.create
  • chat.messages
  • chat.import
تنزيل الوسائط باستخدام مصادقة المستخدم:
  • chat.messages.readonly
  • chat.messages
باستخدام مصادقة التطبيقات:
  • chat.bot
الحصول على مرفق رسالة باستخدام مصادقة التطبيق:
  • chat.bot
حالات قراءة المستخدم
الحصول على حالة قراءة مساحة المستخدم باستخدام مصادقة المستخدم:
  • chat.users.readstate
  • chat.users.readstate.readonly
تعديل حالة قراءة مساحة المستخدم باستخدام مصادقة المستخدم:
  • chat.users.readstate
الحصول على حالة قراءة سلسلة محادثات أحد المستخدمين باستخدام مصادقة المستخدم:
  • chat.users.readstate
  • chat.users.readstate.readonly
إعدادات مساحة المستخدم
الحصول على إعدادات الإشعارات في مساحة المستخدم باستخدام مصادقة المستخدم:
  • chat.users.spacesettings
تعديل إعدادات إشعارات المساحة الخاصة بالمستخدم باستخدام مصادقة المستخدم:
  • chat.users.spacesettings
أحداث المساحة
الحصول على أحداث المساحة في حال استخدام مصادقة المستخدِم، يجب استخدام نطاق استنادًا إلى نوع الحدث:
  • بالنسبة إلى الأحداث المتعلّقة بالرسائل:
    • chat.messages
    • chat.messages.readonly
  • بالنسبة إلى الأحداث المتعلّقة بالتفاعلات:
    • chat.messages.reactions
    • chat.messages.reactions.readonly
    • chat.messages
    • chat.messages.readonly
  • بالنسبة إلى الأحداث المتعلّقة بالعضويات:
    • chat.memberships
    • chat.memberships.readonly
  • بالنسبة إلى الأحداث المتعلّقة بالمساحة:
    • chat.spaces
    • chat.spaces.readonly
إدراج أحداث المساحة في حال استخدام مصادقة المستخدِم، يجب استخدام نطاق لكل نوع من أنواع الأحداث المضمّنة في الطلب:
  • بالنسبة إلى الأحداث المتعلّقة بالرسائل:
    • chat.messages
    • chat.messages.readonly
  • بالنسبة إلى الأحداث المتعلّقة بالتفاعلات:
    • chat.messages.reactions
    • chat.messages.reactions.readonly
    • chat.messages
    • chat.messages.readonly
  • بالنسبة إلى الأحداث المتعلّقة بالعضويات:
    • chat.memberships
    • chat.memberships.readonly
  • بالنسبة إلى الأحداث المتعلّقة بالمساحة:
    • chat.spaces
    • chat.spaces.readonly

لأحداث التفاعل في تطبيقات Chat

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

السيناريو لا حاجة إلى المصادقة مصادقة المستخدم متاحة مصادقة التطبيقات متاحة
استلام الرسائل من:
أحداث التفاعل مع تطبيق Chat
طلبات إعادة الاتصال في Apps Script
Google Cloud Pub/Sub
الردّ على الرسائل:
بشكل متزامن، باستخدام حدث تفاعل في تطبيق Chat
بشكل متزامن، باستخدام قيمة إرجاع دالة الاستدعاء في Apps Script
إرسال رسائل جديدة:
باستخدام الردود التلقائية الواردة على الويب