به عنوان یک برنامه چت Google احراز هویت

این راهنما نحوه تنظیم و استفاده از یک حساب سرویس برای دسترسی به API چت گوگل از طرف یک برنامه چت را توضیح می‌دهد. ابتدا، نحوه ایجاد یک حساب سرویس را به شما آموزش می‌دهد. سپس، نحوه نوشتن اسکریپتی را نشان می‌دهد که از حساب سرویس برای احراز هویت با API چت و ارسال پیام در فضای چت استفاده می‌کند.

هنگام احراز هویت با یک حساب سرویس، برای دریافت اطلاعات در مورد یک فضای چت یا انجام اقدامات در آن، برنامه‌های چت باید در آن فضا عضویت داشته باشند. به عنوان مثال، برای فهرست کردن اعضای یک فضا یا ایجاد پیام در یک فضا، برنامه چت باید خودش عضو آن فضا باشد. تنها استثنا زمانی است که یک برنامه چت با احراز هویت برنامه، فضایی ایجاد می‌کند، که در این صورت برنامه فضا را ایجاد کرده و سپس به طور خودکار عضو آن می‌شود.

روش‌های API چت گوگل که از مجوز برنامه با دامنه‌های مجوزی که نام‌هایشان https://www.googleapis.com/auth/chat.app.* شروع می‌شود، پشتیبانی می‌کنند، نیاز به تأیید یک‌باره مدیر دارند. روش‌های API چت گوگل که از مجوز برنامه با دامنه مجوز https://www.googleapis.com/auth/chat.bot پشتیبانی می‌کنند، نیازی به تأیید اضافی ندارند.

اگر برنامه چت شما نیاز به دسترسی به داده‌های کاربر یا انجام اقدامات از طرف کاربر دارد، به جای آن به عنوان یک کاربر احراز هویت کنید. اگر شما مدیر دامنه هستید، می‌توانید به حساب سرویس برنامه چت، بدون نیاز به رضایت هر کاربر، تفویض اختیار در سطح دامنه اعطا کنید تا به حساب کاربری برنامه چت اجازه دسترسی به داده‌های کاربر خود را بدهید. برای اطلاعات بیشتر، به بخش احراز هویت و مجوز با استفاده از تفویض اختیار در سطح دامنه مراجعه کنید.

برای کسب اطلاعات بیشتر در مورد اینکه چه زمانی برنامه‌های چت نیاز به احراز هویت دارند و از چه نوع احراز هویتی باید استفاده کنند، به انواع احراز هویت مورد نیاز در نمای کلی احراز هویت و مجوز API چت مراجعه کنید.

پیش‌نیازها

جاوا

  • 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
  • یک برنامه چت گوگل که رویدادهای تعاملی را دریافت و به آنها پاسخ می‌دهد. برای ایجاد یک برنامه چت تعاملی با استفاده از سرویس HTTP، این راهنمای سریع را تکمیل کنید.
  • برنامه چت را به یک فضا اضافه کنید. برای افزودن برنامه چت، به بخش «آزمایش ویژگی‌های تعاملی برای برنامه‌های چت گوگل» مراجعه کنید.

پایتون

نود جی اس

اسکریپت برنامه‌ها

مرحله ۱: ایجاد یک حساب کاربری سرویس در کنسول گوگل کلود

یک حساب کاربری سرویس ایجاد کنید که برنامه چت شما بتواند از آن برای دسترسی به APIهای گوگل استفاده کند.

ایجاد حساب کاربری سرویس

برای ایجاد حساب کاربری سرویس، مراحل زیر را دنبال کنید:

کنسول گوگل کلود

  1. در کنسول گوگل کلود، به > IAM & Admin > Service Accounts بروید.

    به حساب‌های سرویس بروید

  2. روی ایجاد حساب سرویس کلیک کنید.
  3. جزئیات حساب سرویس را پر کنید، سپس روی ایجاد و ادامه کلیک کنید.
  4. اختیاری: برای اعطای دسترسی به منابع پروژه Google Cloud خود، نقش‌هایی را به حساب سرویس خود اختصاص دهید. برای جزئیات بیشتر، به بخش اعطای، تغییر و لغو دسترسی به منابع مراجعه کنید.
  5. روی ادامه کلیک کنید.
  6. اختیاری: کاربران یا گروه‌هایی را که می‌توانند با این حساب سرویس، اقدامات را مدیریت و انجام دهند، وارد کنید. برای جزئیات بیشتر، به مدیریت جعل هویت حساب سرویس مراجعه کنید.
  7. روی «انجام شد» کلیک کنید. آدرس ایمیل حساب سرویس را یادداشت کنید.

رابط خط فرمان جی‌کلاود

  1. ایجاد حساب کاربری سرویس:
    gcloud iam service-accounts create SERVICE_ACCOUNT_NAME \
      --display-name="SERVICE_ACCOUNT_NAME"
  2. اختیاری: برای اعطای دسترسی به منابع پروژه Google Cloud خود، نقش‌هایی را به حساب سرویس خود اختصاص دهید. برای جزئیات بیشتر، به بخش اعطای، تغییر و لغو دسترسی به منابع مراجعه کنید.

حساب کاربری سرویس در صفحه حساب کاربری سرویس نمایش داده می‌شود. در مرحله بعد، یک کلید خصوصی برای حساب کاربری سرویس ایجاد کنید.

ایجاد کلید خصوصی

برای ایجاد و دانلود کلید خصوصی برای حساب سرویس، مراحل زیر را دنبال کنید:

  1. در کنسول گوگل کلود، به > IAM & Admin > Service Accounts بروید.

    به حساب‌های سرویس بروید

  2. حساب کاربری سرویس خود را انتخاب کنید.
  3. روی کلیدها > افزودن کلید > ایجاد کلید جدید کلیک کنید.
  4. JSON را انتخاب کنید، سپس روی ایجاد کلیک کنید.

    جفت کلید عمومی/خصوصی جدید شما ایجاد و به عنوان یک فایل جدید در دستگاه شما دانلود می‌شود. فایل JSON دانلود شده را با نام credentials.json در دایرکتوری کاری خود ذخیره کنید. این فایل تنها کپی از این کلید است. برای اطلاعات بیشتر در مورد نحوه ذخیره ایمن کلید خود، به مدیریت کلیدهای حساب سرویس مراجعه کنید.

  5. روی بستن کلیک کنید.

برای اطلاعات بیشتر در مورد حساب‌های سرویس، به حساب‌های سرویس در مستندات Google Cloud IAM مراجعه کنید.

در مرحله بعد، یک کلاینت OAuth سازگار با Google Workspace Marketplace برای این حساب سرویس ایجاد کنید.

دریافت تاییدیه مدیر

برای استفاده از دامنه مجوز https://www.googleapis.com/auth/chat.bot ، نیازی به تأیید مدیر نیست. به مرحله 2 بروید: کتابخانه کلاینت گوگل و سایر وابستگی‌ها را نصب کنید . مثال موجود در این راهنما از دامنه مجوز https://www.googleapis.com/auth/chat.bot استفاده می‌کند، بنابراین اگر از مثال پیروی می‌کنید، به مرحله 2 بروید.

برای استفاده از محدوده مجوزی که با https://www.googleapis.com/auth/chat.app.* شروع می‌شود، برنامه چت شما باید یک بار تأیید مدیر را دریافت کند.

برای دریافت تأیید مدیر، باید حساب سرویس برنامه چت خود را با اطلاعات زیر آماده کنید:

  • یک کلاینت OAuth سازگار با بازار Google Workspace.
  • پیکربندی برنامه در SDK بازار Google Workspace.

یک کلاینت OAuth سازگار با Google Workspace Marketplace ایجاد کنید

برای ایجاد یک کلاینت OAuth سازگار با Google Workspace Marketplace، این مراحل را دنبال کنید:

  1. در کنسول گوگل کلود، به > IAM & Admin > Service Accounts بروید.

    به حساب‌های سرویس بروید

  2. روی حساب سرویسی که برای برنامه چت خود ایجاد کرده‌اید کلیک کنید.

  3. روی تنظیمات پیشرفته کلیک کنید.

  4. روی ایجاد کلاینت OAuth سازگار با بازار Google Workspace کلیک کنید.

  5. روی ادامه کلیک کنید.

یک پیام تأیید ظاهر می‌شود که می‌گوید یک کلاینت OAuth سازگار با Google Workspace Marketplace ایجاد شده است.

پیکربندی برنامه چت در SDK بازار فضای کاری گوگل

برای پیکربندی برنامه چت در SDK بازار Google Workspace، این مراحل را دنبال کنید:

  1. در کنسول گوگل کلود، Google Workspace Marketplace SDK را فعال کنید.

    فعال کردن SDK بازار فضای کاری گوگل

  2. در کنسول گوگل کلود، به مسیر Menu > APIs & Services > Enabled APIs & services > Google Workspace Marketplace SDK > App Configuration بروید.

    به پیکربندی برنامه بروید

  3. صفحه پیکربندی برنامه را تکمیل کنید. نحوه پیکربندی برنامه چت شما به مخاطب مورد نظر شما و عوامل دیگر بستگی دارد. برای کمک به تکمیل صفحه پیکربندی برنامه، به پیکربندی برنامه خود در SDK بازار Google Workspace مراجعه کنید. برای اهداف این راهنما، اطلاعات زیر را وارد کنید:

    1. در بخش «قابلیت مشاهده برنامه» ، «خصوصی» را انتخاب کنید.
    2. در قسمت تنظیمات نصب ، گزینه نصب شخصی + ادمین را انتخاب کنید.
    3. در بخش ادغام برنامه‌ها ، برنامه چت را انتخاب کنید.
    4. در قسمت «محدوده‌های OAuth» ، تمام محدوده‌های احراز هویتی که برنامه چت شما استفاده می‌کند را وارد کنید.

    5. در بخش اطلاعات توسعه‌دهنده ، نام توسعه‌دهنده ، نشانی وب‌سایت توسعه‌دهنده و ایمیل توسعه‌دهنده خود را وارد کنید.

    6. روی ذخیره پیش‌نویس کلیک کنید.

دریافت تایید مدیر

اکنون که حساب سرویس شما برای دریافت تأیید مدیر پیکربندی شده است، آن را از یک مدیر Google Workspace دریافت کنید که می‌تواند با دنبال کردن مراحل موجود در «تنظیم مجوز برای برنامه‌های چت»، تأیید را اعطا کند.

مرحله ۲: نصب کتابخانه کلاینت گوگل و سایر وابستگی‌ها

کتابخانه کلاینت گوگل و سایر وابستگی‌های مورد نیاز برای پروژه را نصب کنید.

جاوا

برای افزودن کتابخانه‌های کلاینت گوگل و سایر وابستگی‌های مورد نیاز به پروژه 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>

پایتون

اگر هنوز کتابخانه‌های کلاینت گوگل برای پایتون را نصب نکرده‌اید، دستور زیر را در رابط خط فرمان خود اجرا کنید:

pip3 install --upgrade google-api-python-client google-auth

نود جی اس

برای افزودن کتابخانه‌های کلاینت گوگل به پروژه Node.js خود، به دایرکتوری پروژه خود بروید و دستور زیر را در رابط خط فرمان خود اجرا کنید:

npm install "@googleapis/chat"

اسکریپت برنامه‌ها

این نمونه از کتابخانه OAuth2 for Apps Script برای تولید یک توکن JWT جهت احراز هویت حساب کاربری سرویس استفاده می‌کند. برای افزودن کتابخانه به پروژه Apps Script خود:

  1. در سمت چپ، روی ویرایشگر کلیک کنید.
  2. در سمت چپ، کنار «کتابخانه‌ها» ، روی « کتابخانه» کلیک کنید.
  3. شناسه اسکریپت 1B7FSrk5Zi6L1rSxxTDgDEUsPzlukDsi4KGuTMorsTQHhGBzBkMun4iDF را وارد کنید.
  4. روی «جستجو» کلیک کنید، سپس روی «افزودن» کلیک کنید.

این نمونه از سرویس چت پیشرفته برای فراخوانی Google Chat API استفاده می‌کند. برای فعال کردن سرویس برای پروژه Apps Script خود:

  1. در سمت چپ، روی ویرایشگر کلیک کنید.
  2. در سمت چپ، کنار سرویس‌ها ، روی سرویس کلیک کنید.
  3. API چت گوگل را انتخاب کنید.
  4. در قسمت نسخه ، نسخه ۱ را انتخاب کنید.
  5. روی افزودن کلیک کنید.

شما می‌توانید از هر زبانی که توسط کتابخانه‌های کلاینت ما پشتیبانی می‌شود، استفاده کنید.

مرحله ۳: اسکریپتی بنویسید که از حساب سرویس برای احراز هویت با Chat API استفاده کند

کد زیر با استفاده از یک حساب کاربری سرویس، با Chat API احراز هویت می‌کند، سپس پیامی را به یک فضای چت ارسال می‌کند:

جاوا

  1. در دایرکتوری پروژه خود، فایل src/main/java/com/google/chat/app/authsample/App.java را باز کنید.
  2. محتویات 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();
        }
    }
    
  3. در کد، SPACE_NAME با نام یک فضا جایگزین کنید، که می‌توانید آن را از متد spaces.list در Chat API یا از URL یک فضا به دست آورید.

  4. یک زیرشاخه جدید به نام resources در پوشه پروژه خود ایجاد کنید.

  5. مطمئن شوید که فایل کلید خصوصی حساب کاربری سرویس شما با نام credentials.json نامگذاری شده است و آن را در زیرشاخه resources کپی کنید.

  6. برای پیکربندی Maven جهت گنجاندن فایل کلید خصوصی در بسته پروژه، فایل pom.xml را در دایرکتوری پروژه خود ویرایش کرده و پیکربندی زیر را به بخش <build> اضافه کنید:

    <build>
      <!-- ... existing configurations ... -->
      <resources>
        <resource>
          <directory>resources</directory>
        </resource>
      </resources>
    </build>
    
  7. برای پیکربندی 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>
    

پایتون

  1. در دایرکتوری کاری خود، فایلی با نام chat_app_auth.py ایجاد کنید.
  2. کد زیر را در 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)
    
  3. در کد، SPACE_NAME با نام یک فضا جایگزین کنید، که می‌توانید آن را از متد spaces.list در Chat API یا از URL یک فضا به دست آورید. مطمئن شوید که فایل کلید خصوصی برای حساب سرویس شما credentials.json نام دارد.

نود جی اس

  1. در پوشه‌ی پروژه‌ی خود، فایلی با نام chat_app_auth.js ایجاد کنید.
  2. کد زیر را در 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);
    
  3. در کد، SPACE_NAME با نام یک فضا جایگزین کنید، که می‌توانید آن را از متد spaces.list در Chat API یا از URL یک فضا به دست آورید. مطمئن شوید که فایل کلید خصوصی برای حساب سرویس شما credentials.json نام دارد.

اسکریپت برنامه‌ها

  1. در ویرایشگر Apps Script، فایل appsscript.json را ویرایش کرده و محدوده OAuth لازم برای ارسال درخواست‌های خارجی جهت دریافت توکن OAuth حساب سرویس را اضافه کنید:

      "oauthScopes": [
        "https://www.googleapis.com/auth/script.external_request"
      ]
    
  2. کد زیر را در فایلی با نام ChatAppAuth.gs در پروژه Apps Script خود ذخیره کنید:

    // 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());
    }
    
  3. در کد، CREDENTIALS با محتوای فایل credentials.json جایگزین کنید.

  4. در کد، SPACE_NAME با نام یک فضا جایگزین کنید، که می‌توانید آن را از متد spaces.list در Chat API یا از URL یک فضا به دست آورید.

مرحله ۴: اجرای مثال کامل

در دایرکتوری کاری خود، نمونه را بسازید و اجرا کنید:

جاوا

mvn compile assembly:single
java -jar target/auth-sample-app-1.0-SNAPSHOT-jar-with-dependencies.jar

پایتون

python3 chat_app_auth.py

نود جی اس

node chat_app_auth.js

اسکریپت برنامه‌ها

فایل ChatAppAuth.gs را در ویرایشگر اسکریپت برنامه‌ها باز کنید و روی Run کلیک کنید.

اسکریپت شما یک درخواست احراز هویت شده به API چت ارسال می‌کند که با ارسال پیامی در فضای چت به عنوان یک برنامه چت پاسخ می‌دهد.

عیب یابی مثال

این بخش مشکلات رایجی را که ممکن است هنگام تلاش برای اجرای این نمونه با آنها مواجه شوید، شرح می‌دهد.

شما مجاز به استفاده از این برنامه نیستید

هنگام اجرای اسکریپت، ممکن است خطایی با مضمون زیر دریافت کنید:

<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">

این پیام خطا به این معنی است که برنامه چت اجازه ایجاد پیام‌های چت در فضای چت مشخص شده را ندارد.

برای رفع خطا، برنامه چت را به فضای چت مشخص شده در اسکریپت اضافه کنید .

مدیر سیستم باید دامنه مجوز 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 بخواهید که به برنامه چت شما مجوز بدهد . هنگام مدیریت این خطا در منطق برنامه چت خود، ارسال پیامی را در نظر بگیرید که اعلام کند برنامه چت برای انجام اقدام درخواستی به مجوز مدیر نیاز دارد، مثلاً: 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 مراجعه کنید.