يوضّح هذا الدليل كيفية إعداد حساب خدمة واستخدامه للوصول إلى Google Chat API بالنيابة عن تطبيق Chat. أولاً، يوجّهك الدليل خلال عملية إنشاء حساب خدمة. ويوضِّح بعد ذلك كيفية كتابة نص برمجي يستخدم حساب الخدمة للمصادقة باستخدام واجهة برمجة تطبيقات Chat ونشر رسالة في مساحة Chat.
عند المصادقة باستخدام حساب خدمة، يجب أن تكون التطبيقات في Chat مشترِكة في المساحة للحصول على بيانات أو تنفيذ إجراءات في "مساحة Chat". على سبيل المثال، لعرض أعضاء مساحة أو إنشاء رسالة في مساحة، يجب أن يكون تطبيق Chat عضوًا في المساحة. ويُستثنى من ذلك عندما تنشئ تطبيقات Chat مساحة باستخدام مصادقة التطبيق، وفي هذه الحالة ينشئ التطبيق المساحة ثم يصبح عضوًا فيها تلقائيًا.
تتطلّب موافقة المشرف لمرة واحدة https://www.googleapis.com/auth/chat.app.*
طُرق Google Chat API التي تتيح تفويض التطبيقات باستخدام نطاقات التفويض التي تبدأ أسماؤها بـ https://www.googleapis.com/auth/chat.app.*
.
لا تتطلّب موافقة إضافية طُرق Google Chat API التي تتيح تفويض التطبيقات باستخدام نطاق التفويض
https://www.googleapis.com/auth/chat.bot
. تتوفّر https://www.googleapis.com/auth/chat.app.*
نطاقات التفويض في
إصدار "معاينة المطوّر".
إذا كان تطبيق Chat يحتاج إلى الوصول إلى بيانات المستخدم أو تنفيذ إجراءات نيابةً عنه، يجب المصادقة كمستخدم بدلاً من ذلك. إذا كنت مشرف نطاق، يمكنك منح تفويض على مستوى النطاق لتفويض حساب الخدمة لتطبيق Chat للوصول إلى بيانات المستخدم بدون طلب موافقة كل مستخدم. لمزيد من المعلومات، راجِع مقالة المصادقة والتفويض باستخدام التفويض على مستوى النطاق.
لمعرفة المزيد من المعلومات عن الحالات التي تتطلّب فيها تطبيقات Chat المصادقة ونوع المصادقة التي يجب استخدامها، يمكنك الاطّلاع على أنواع المصادقة المطلوبة في النظرة العامة حول المصادقة والتفويض في Chat API.
المتطلبات الأساسية
Java
- JDK 1.7 أو إصدار أحدث
- أداة إدارة الحِزم Maven
-
مشروع Maven تم إعداده. لتهيئة مشروع جديد، قم بتشغيل الأمر التالي في واجهة سطر الأوامر:
mvn archetype:generate -DgroupId=com.google.chat.app.authsample -DartifactId=auth-sample-app -DarchetypeArtifactId=maven-archetype-quickstart -DarchetypeVersion=1.4 -DinteractiveMode=false
- تطبيق Google Chat مفعَّل للميزات التفاعلية لإنشاء تطبيق Chat تفاعلي باستخدام خدمة HTTP، أكمِل الخطوات الأساسية هذه.
- إضافة تطبيق Chat إلى مساحة لإضافة تطبيق Chat، راجِع المقالة اختبار الميزات التفاعلية لتطبيقات Google Chat.
Python
- الإصدار 3.6 من Python أو إصدار أحدث
- أداة إدارة الحِزم pip
- تطبيق Google Chat مفعَّل للميزات التفاعلية لإنشاء تطبيق Chat تفاعلي باستخدام خدمة HTTP، أكمِل الخطوات الأساسية هذه.
- أضِف تطبيق Chat إلى مساحة. لإضافة تطبيق Chat، راجِع المقالة اختبار الميزات التفاعلية لتطبيقات Google Chat.
Node.js
- الإصدار 14 من Node.js أو الإصدارات الأحدث
- تتيح لك أداة إدارة الحزم npm
-
مشروع Node.js تم إعداده. لبدء مشروع جديد، أنشئ مجلّدًا جديدًا
وبدِّل إليه، ثم نفِّذ الأمر التالي في واجهة سطر الأوامر:
npm init
- تطبيق Google Chat مفعَّل للميزات التفاعلية لإنشاء تطبيق Chat تفاعلي باستخدام خدمة HTTP، أكمِل الخطوات الأساسية هذه.
- إضافة تطبيق Chat إلى مساحة لإضافة تطبيق Chat، يُرجى الاطّلاع على اختبار الميزات التفاعلية لتطبيقات Google Chat.
برمجة تطبيقات
- تطبيق Google Chat مفعَّل فيه الميزات التفاعلية لإنشاء تطبيق Chat تفاعلي في "برمجة تطبيقات Google"، أكمِل البدء السريع هذا.
- إضافة تطبيق Chat إلى مساحة لإضافة تطبيق Chat، راجِع المقالة اختبار الميزات التفاعلية لتطبيقات Google Chat.
الخطوة 1: إنشاء حساب خدمة في Google Cloud Console
أنشئ حساب خدمة يمكن لتطبيق Chat استخدامه ل الوصول إلى واجهات برمجة تطبيقات Google.
إنشاء حساب خدمة
لإنشاء حساب خدمة، اتّبِع الخطوات التالية:
Google Cloud Console
- في Google Cloud Console، انتقِل إلى القائمة > إدارة الهوية وإمكانية الوصول والمشرف > حسابات الخدمة.
- انقر على إنشاء حساب خدمة.
- املأ تفاصيل حساب الخدمة، ثم انقر على إنشاء ومتابعة.
- اختياري: يمكنك إسناد أدوار إلى حساب الخدمة لمنح إذن الوصول إلى موارد مشروعك على Google Cloud. لمزيد من التفاصيل، يُرجى الاطّلاع على منح إذن الوصول إلى الموارد وتغييره وإبطاله.
- انقر على متابعة.
- اختياري: أدخِل المستخدمين أو المجموعات التي يمكنها إدارة الإجراءات وتنفيذها باستخدام حساب الخدمة هذا. لمزيد من التفاصيل، يُرجى الاطّلاع على مقالة إدارة انتحال هوية حساب الخدمة.
- انقر على تم. دوِّن عنوان البريد الإلكتروني لحساب الخدمة.
واجهة سطر الأوامر gcloud
- أنشئ حساب الخدمة باتّباع الخطوات التالية:
gcloud iam service-accounts create
SERVICE_ACCOUNT_NAME
\ --display-name="SERVICE_ACCOUNT_NAME
" - اختياري: يمكنك إسناد أدوار إلى حساب الخدمة لمنح إذن الوصول إلى موارد مشروعك على Google Cloud. لمزيد من التفاصيل، يُرجى الاطّلاع على منح إذن الوصول إلى الموارد وتغييره وإبطاله.
يظهر حساب الخدمة في صفحة حساب الخدمة. بعد ذلك، أنشئ مفتاحًا شخصيًا لحساب الخدمة.
إنشاء مفتاح خاص
لإنشاء مفتاح خاص لحساب الخدمة وتنزيله، اتّبِع الخطوات التالية:
- في Google Cloud Console، انتقِل إلى رمز القائمة > إدارة الهوية وإمكانية الوصول والمشرف > حسابات الخدمة.
- اختَر حساب الخدمة.
- انقر على المفاتيح > إضافة مفتاح > إنشاء مفتاح جديد.
- اختَر JSON، ثمّ انقر على إنشاء.
يتم إنشاء زوج مفتاح عام/خاص جديد وتنزيله على جهازك كملف جديد. احفظ ملف JSON الذي تم تنزيله باسم
credentials.json
في دليل العمل. هذا الملف هو النسخة الوحيدة من هذا المفتاح. للحصول على معلومات عن كيفية تخزين مفتاحك بأمان، راجِع إدارة مفاتيح حساب الخدمة. - انقر على إغلاق (Close).
لمزيد من المعلومات عن حسابات الخدمة، يمكنك الاطّلاع على حسابات الخدمة في وثائق إدارة الهوية وإمكانية الوصول في Google Cloud.
بعد ذلك، أنشئ عميل OAuth متوافقًا مع Google Workspace Marketplace لهذا حساب الخدمة.
الحصول على موافقة المشرف
لاستخدام نطاق تفويض يبدأ بالرمز https://www.googleapis.com/auth/chat.app.*
، والذي يتوفّر كجزء من الإصدار التمهيدي للمطوّرين، يجب أن يحصل تطبيق Chat على موافقة مشرف لمرّة واحدة.
لاستخدام نطاق التفويض https://www.googleapis.com/auth/chat.bot
،
لا يلزم الحصول على موافقة المشرف.
للحصول على موافقة المشرف، عليك إعداد حساب الخدمة لتطبيق Chat باستخدام المعلومات التالية:
- برنامج عميل OAuth متوافق مع Google Workspace Marketplace
- ضبط التطبيق في حزمة تطوير البرامج (SDK) في Google Workspace Marketplace
إنشاء عميل OAuth متوافق مع Google Workspace Marketplace
لإنشاء عميل OAuth متوافق مع Google Workspace Marketplace، اتّبِع الخطوات التالية:
في Google Cloud Console، انتقِل إلى "القائمة" > إدارة الهوية وإمكانية الوصول والمشرف > حسابات الخدمة.
انقر على حساب الخدمة الذي أنشأته لتطبيق Chat.
انقر على الإعدادات المتقدمة.
انقر على إنشاء عميل OAuth متوافق مع Google Workspace Marketplace.
انقر على متابعة.
تظهر رسالة تأكيد تفيد بأنّه تم إنشاء عميل OAuth متوافق مع Google Workspace Marketplace.
ضبط تطبيق Chat في حزمة تطوير البرامج (SDK) في Google Workspace Marketplace
لضبط تطبيق Chat في حزمة تطوير البرامج (SDK) في Google Workspace Marketplace، اتّبِع الخطوات التالية:
في Google Cloud Console، فعِّل حزمة تطوير البرامج (SDK) في Google Workspace Marketplace.
تفعيل حزمة تطوير البرامج (SDK) في Google Workspace Marketplace
في Google Cloud Console، انتقِل إلى القائمة > واجهات برمجة التطبيقات والخدمات > واجهات برمجة التطبيقات والخدمات المفعَّلة > Google Workspace Marketplace SDK > إعدادات التطبيق.
أكمِل صفحة "ضبط التطبيق". تعتمد طريقة ضبط إعدادات تطبيق Chat على الجمهور المستهدَف وعوامل أخرى. للحصول على مساعدة في إكمال صفحة إعدادات التطبيق، يُرجى الاطّلاع على مقالة ضبط تطبيقك في حزمة تطوير البرامج (SDK) في Google Workspace Marketplace. أدخِل المعلومات التالية لأغراض متعلقة بهذا الدليل:
- ضمن مستوى رؤية التطبيق، اختَر خاص.
- ضمن إعدادات التثبيت، اختَر التثبيت الفردي + التثبيت من المشرف.
- ضمن عمليات دمج التطبيقات، اختَر تطبيق Chat.
ضمن نطاقات OAuth، أدخِل كل نطاقات المصادقة التي يستخدمها تطبيق Chat.
ضمن معلومات المطوّر، أدخِل اسم المطوّر، عنوان URL لموقع المطوّر الإلكتروني، والبريد الإلكتروني للمطوّر.
انقر على حفظ كمسودة.
الحصول على موافقة المشرف
بعد ضبط حساب الخدمة لتلقّي موافقة المشرف، احصل على الموافقة من مشرف Google Workspace يمكنه منحها باتّباع الخطوات الواردة في مقالة إعداد التفويض لتطبيقات Chat.
الخطوة 2: تثبيت مكتبة برامج Google والموارد التابعة الأخرى
ثبِّت مكتبة عملاء Google والتبعيات الأخرى المطلوبة للمشروع.
Java
لإضافة مكتبات برامج Google للعملاء والتبعيات المطلوبة الأخرى إلى
مشروع Maven، عدِّل الملف pom.xml
في دليل مشروعك وأضِف
التبعيات التالية:
<dependencies>
<!-- ... existing dependencies ... -->
<dependency>
<groupId>com.google.apis</groupId>
<artifactId>google-api-services-chat</artifactId>
<version>v1-rev20230905-2.0.0</version>
</dependency>
<dependency>
<groupId>com.google.auth</groupId>
<artifactId>google-auth-library-oauth2-http</artifactId>
<version>1.19.0</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.10.1</version>
</dependency>
</dependencies>
Python
إذا لم يسبق لك تثبيت مكتبات عملاء Google للغة Python، شغِّل الأمر التالي في واجهة سطر الأوامر:
pip3 install --upgrade google-api-python-client google-auth
Node.js
لإضافة مكتبات برامج Google إلى مشروعك على Node.js، انتقِل إلى directory المشروع ونفِّذ الأمر التالي في واجهة سطر الأوامر:
npm install "@googleapis/chat"
برمجة تطبيقات
يستخدم هذا المثال مكتبة OAuth2 لتطبيق Apps Script لإنشاء رمز JWT المميّز لمصادقة حساب الخدمة. لإضافة المكتبة إلى مشروعك على Apps Script:
- على يمين الصفحة، انقر على أداة التعديل .
- على يمين الصفحة، بجانب المكتبات، انقر على إضافة مكتبة .
- أدخِل معرّف النص البرمجي
1B7FSrk5Zi6L1rSxxTDgDEUsPzlukDsi4KGuTMorsTQHhGBzBkMun4iDF
. - انقر على البحث، ثمّ انقر على إضافة.
يستخدم هذا المثال خدمة Chat المتقدّمة للاتصال بواجهة برمجة تطبيقات Google Chat. لتفعيل الخدمة في "مشروع برمجة التطبيقات"
- على يمين الصفحة، انقر على أداة التعديل .
- على يمين الصفحة، بجانب الخدمات، انقر على إضافة خدمة .
- اختَر Google Chat API.
- في الإصدار، اختَر الإصدار 1.
- انقر على إضافة.
يمكنك استخدام أي لغة متوافقة مع مكتبات البرامج.
الخطوة 3: كتابة نص برمجي يستخدم حساب الخدمة للمصادقة باستخدام Chat API
تتم مصادقة الرمز التالي مع Chat API باستخدام حساب خدمة، ثم ينشر رسالة على "مساحة Chat":
Java
- في دليل مشروعك، افتح الملف
src/main/java/com/google/chat/app/authsample/App.java
. استبدِل المحتوى في
App.java
بالرمز التالي:package com.google.chat.app.authsample; import com.google.api.client.googleapis.javanet.GoogleNetHttpTransport; import com.google.api.client.http.HttpRequestInitializer; import com.google.api.client.json.gson.GsonFactory; import com.google.api.services.chat.v1.HangoutsChat; import com.google.api.services.chat.v1.model.Message; import com.google.auth.http.HttpCredentialsAdapter; import com.google.auth.oauth2.GoogleCredentials; /** * Authenticates with Chat API using service account credentials, * then creates a Chat message. */ public class App { // Specify required scopes. private static final String CHAT_SCOPE = "https://www.googleapis.com/auth/chat.bot"; // Specify service account details. private static final String PRIVATE_KEY_RESOURCE_URI = "/credentials.json"; public static void main( String[] args ) { try { // Run app. Message response = App.createChatMessage(); // Print details about the created message. System.out.println(response); } catch (Exception e) { e.printStackTrace(); } } private static Message createChatMessage() throws Exception { // Build the Chat API client and authenticate with the service account. GoogleCredentials credentials = GoogleCredentials.fromStream( App.class.getResourceAsStream(PRIVATE_KEY_RESOURCE_URI)) .createScoped(CHAT_SCOPE); HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter(credentials); HangoutsChat chatService = new HangoutsChat.Builder( GoogleNetHttpTransport.newTrustedTransport(), GsonFactory.getDefaultInstance(), requestInitializer) .setApplicationName("auth-sample-app") .build(); // The space to create the message in. // // Replace SPACE_NAME with a space name. // Obtain the space name from the spaces resource of Chat API, // or from a space's URL. String spaceName = "spaces/SPACE_NAME"; // Create a Chat message. Message message = new Message().setText("Hello, world!"); return chatService.spaces().messages().create(spaceName, message).execute(); } }
في الرمز، استبدِل
SPACE_NAME
باسم مساحة، والذي يمكنك الحصول عليه منspaces.list
الطريقة في Chat API، أو من عنوان URL للمساحة.أنشئ دليلاً فرعيًا جديدًا باسم
resources
ضمن دليل مشروعك.تأكَّد من تسمية ملف المفتاح الخاص لحساب الخدمة باسم
credentials.json
وانسخه إلى الدليل الفرعيresources
.لإعداد Maven لتضمين ملف المفتاح الخاص في حزمة المشروع، عدِّل الملف
pom.xml
في دليل مشروعك وأضِف الإعداد التالي إلى القسم<build>
:<build> <!-- ... existing configurations ... --> <resources> <resource> <directory>resources</directory> </resource> </resources> </build>
لضبط Maven لتضمين التبعيات في حزمة المشروع وتنفيذ الفئة الرئيسية لتطبيقك، عدِّل الملف
pom.xml
في دليل مشروعك وأضِف الإعدادات التالية إلى القسم<plugins>
:<plugins> <!-- ... existing configurations ... --> <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <archive> <manifest> <mainClass>com.google.chat.app.authsample.App</mainClass> </manifest> </archive> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> </plugin> </plugins>
Python
- في دليل العمل، أنشئ ملفًا باسم
chat_app_auth.py
. أدرِج الرمز التالي في
chat_app_auth.py
:from apiclient.discovery import build from google.oauth2 import service_account # Specify required scopes. SCOPES = ['https://www.googleapis.com/auth/chat.bot'] # Specify service account details. creds = service_account.Credentials.from_service_account_file( 'credentials.json', scopes=SCOPES) # Build the URI and authenticate with the service account. chat = build('chat', 'v1', credentials=creds) # Create a Chat message. result = chat.spaces().messages().create( # The space to create the message in. # # Replace SPACE_NAME with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE_NAME', # The message to create. body={'text': 'Hello, world!'} ).execute() # Prints details about the created message. print(result)
في الرمز البرمجي، استبدِل
SPACE_NAME
باسم مساحة، ويمكنك الحصول عليه من الطريقةspaces.list
في Chat API أو من عنوان URL للمساحة. تأكَّد من أنّ ملف المفتاح الخاص لحساب الخدمة يُسمىcredentials.json
.
Node.js
- في دليل مشروعك، أنشئ ملفًا باسم
chat_app_auth.js
. أدرِج الرمز التالي في
chat_app_auth.js
:const chat = require('@googleapis/chat'); async function createMessage() { const auth = new chat.auth.GoogleAuth({ // Specify service account details. keyFilename: 'credentials.json', // Specify required scopes. scopes: ['https://www.googleapis.com/auth/chat.bot'] }); const authClient = await auth.getClient(); // Create the Chat API client and authenticate with the service account. const chatClient = await chat.chat({ version: 'v1', auth: authClient }); // Create a Chat message. const result = await chatClient.spaces.messages.create({ // The space to create the message in. // // Replace SPACE_NAME with a space name. // Obtain the space name from the spaces resource of Chat API, // or from a space's URL. parent: 'spaces/SPACE_NAME', // The message to create. requestBody: { 'text': 'Hello, world!' } }); return result; } // Execute function then print details about the created message. createMessage().then(console.log);
في الرمز البرمجي، استبدِل
SPACE_NAME
باسم مساحة، ويمكنك الحصول عليه من الطريقةspaces.list
في Chat API أو من عنوان URL للمساحة. تأكَّد من أنّ اسم ملف المفتاح الخاص لحساب الخدمة هوcredentials.json
.
برمجة تطبيقات
في محرِّر Apps Script، عدِّل الملف
appsscript.json
وأضِف نطاق OAuth اللازم لتقديم طلبات خارجية للحصول على رمز OAuth الخاص بحساب الخدمة:"oauthScopes": [ "https://www.googleapis.com/auth/script.external_request" ]
احفظ الرمز التالي في ملف باسم
ChatAppAuth.gs
في مشروع "برمجة تطبيقات Google":// Specify the contents of the file credentials.json. const CREDENTIALS = CREDENTIALS; const SCOPE = 'https://www.googleapis.com/auth/chat.bot'; // The space to create the message in. // // Replace SPACE_NAME with a space name. // Obtain the space name from the spaces resource of Chat API, // or from a space's URL. const PARENT = 'spaces/SPACE_NAME' /** * Authenticates with Chat API using app credentials, then posts a message. */ function createMessageWithAppCredentials() { try { const service = getService_(); if (!service.hasAccess()) { console.error(service.getLastError()); return; } // Specify the message to create. const message = {'text': 'Hello world!'}; // Call Chat API with a service account to create a message. const result = Chat.Spaces.Messages.create( message, PARENT, {}, // Authenticate with the service account token. {'Authorization': 'Bearer ' + service.getAccessToken()}); // Log details about the created message. console.log(result); } catch (err) { // TODO (developer) - Handle exception. console.log('Failed to create message with error %s', err.message); } } /** * Configures the OAuth library to authenticate with the service account. */ function getService_() { return OAuth2.createService(CREDENTIALS.client_email) .setTokenUrl('https://oauth2.googleapis.com/token') .setPrivateKey(CREDENTIALS.private_key) .setIssuer(CREDENTIALS.client_email) .setSubject(CREDENTIALS.client_email) .setScope(SCOPE) .setPropertyStore(PropertiesService.getScriptProperties()); }
في الرمز، استبدِل
CREDENTIALS
بمحتوى الملفcredentials.json
.في الرمز، استبدِل
SPACE_NAME
باسم مساحة، والذي يمكنك الحصول عليه منspaces.list
الطريقة في Chat API، أو من عنوان URL للمساحة.
الخطوة 4: تنفيذ المثال الكامل
في دليل العمل، أنشئ العيّنة وشغِّلها:
Java
mvn compile assembly:single
java -jar target/auth-sample-app-1.0-SNAPSHOT-jar-with-dependencies.jar
Python
python3 chat_app_auth.py
Node.js
node chat_app_auth.js
برمجة تطبيقات
افتح الملف ChatAppAuth.gs
في "محرر برمجة تطبيقات Google"
وانقر على تشغيل.
يُرسل النص البرمجي طلبًا مصادقًا إلى Chat API، التي تستجيب من خلال مشاركة رسالة في مساحة Chat بصفتها تطبيق Chat.
تحديد المشاكل في المثال وحلّها
يصف هذا القسم المشاكل الشائعة التي قد تواجهها أثناء محاولة تشغيل هذا العيّنة.
لا يُسمح لك باستخدام هذا التطبيق.
عند تشغيل النص البرمجي، قد تتلقى رسالة الخطأ التالية:
<HttpError 403 when requesting https://chat.googleapis.com/v1/spaces/{space}/messages?alt=json returned "You are not permitted to use this app". Details: "You are not permitted to use this app">
تعني رسالة الخطأ هذه أنّ تطبيق Chat ليس لديه إذن لإنشاء رسائل Chat في مساحة Chat المحدّدة.
لحلّ الخطأ، عليك إضافة تطبيق Chat إلى مساحة Chat المحدّدة في النص البرمجي.
على المشرف منح التطبيق نطاق التفويض المطلوب في بروتوكول OAuth لتنفيذ هذا الإجراء.
عند تشغيل النص البرمجي، قد تظهر لك رسالة خطأ مفادها:
<HttpError 403 when requesting https://chat.googleapis.com/v1/spaces/{space}?alt=json returned "The administrator must grant the app the required OAuth authorization scope for this action.". Details: "The administrator must grant the app the required OAuth authorization scope for this action.">
تعني رسالة الخطأ هذه أنّ مشرف Google Workspace لم
يمنح بعد موافقة لمرّة واحدة إلى تطبيق Chat لاستخدام
نطاقات التفويض التي تبدأ بالاسم
https://www.googleapis.com/auth/chat.app.*
.
لحلّ الخطأ، اتّبِع الخطوات التالية:
- اطلب من مشرف Google Workspace
منح الموافقة لتطبيق Chat.
عند معالجة هذا الخطأ في منطق تطبيق Chat،
ننصح بإرسال رسالة تُعلِن أنّ تطبيق Chat يحتاج إلى موافقة المشرف لتنفيذ
الإجراء المطلوب، مثل:
To perform this action, I need approval. <https://support.google.com/a?p=chat-app-auth|Learn more>.
- إذا كانت طريقة Google Chat API تتيح نطاق التفويض
https://www.googleapis.com/auth/chat.bot
الذي لا يحتاج إلى موافقة المشرف، ننصحك باستخدامها بدلاً من ذلك. للتحقّق من نطاقات التفويض التي تتوافق معها الطريقة، يُرجى الاطّلاع على المستندات المرجعية لواجهة برمجة تطبيقات Google Chat API.
مواضيع ذات صلة
- تعرَّف على الإجراءات الأخرى التي يمكن أن تتّخذها Chat API من خلال مراجعة مستندات Chat API المرجعية.
- في حال استخدام نطاقات تفويض OAuth التي تبدأ بالرمز
https://www.googleapis.com/auth/chat.app.*
، تعرَّف على كيفية منح المشرفين موافقة لمرة واحدة.