یک فضا را به روز کنید

این راهنما نحوه استفاده از روش patch را در منبع Space API Google Chat برای به‌روزرسانی یک فضا توضیح می‌دهد. برای تغییر ویژگی‌های یک فضا، مانند نام نمایشی قابل مشاهده توسط کاربر، توضیحات و دستورالعمل‌ها، یک فاصله را به‌روزرسانی کنید.

منبع Space مکانی را نشان می‌دهد که در آن افراد و برنامه‌های چت می‌توانند پیام ارسال کنند، فایل‌ها را به اشتراک بگذارند و با هم همکاری کنند. چند نوع فضا وجود دارد:

  • پیام‌های مستقیم (DM) مکالمات بین دو کاربر یا یک کاربر و یک برنامه چت هستند.
  • چت گروهی مکالمه بین سه یا چند کاربر و برنامه های چت است.
  • فضاهای نام‌گذاری شده مکان‌هایی هستند که افراد در آن پیام می‌فرستند، فایل‌ها را به اشتراک می‌گذارند و همکاری می‌کنند.

پیش نیازها

پایتون

  • پایتون 3.6 یا بالاتر
  • ابزار مدیریت بسته پیپ
  • جدیدترین کتابخانه های مشتری گوگل برای پایتون. برای نصب یا به روز رسانی آنها، دستور زیر را در رابط خط فرمان خود اجرا کنید:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • یک پروژه Google Cloud با Google Chat API فعال و پیکربندی شده است. برای مراحل، به ساخت برنامه گپ Google مراجعه کنید.
  • مجوز برای برنامه چت پیکربندی شد. به روز رسانی یک فضا نیاز به احراز هویت کاربر با محدوده مجوز chat.spaces دارد.

Node.js

  • Node.js و npm
  • جدیدترین کتابخانه های سرویس گیرنده Google برای Node.js. برای نصب آنها، دستور زیر را در رابط خط فرمان خود اجرا کنید:

    npm install @google-cloud/local-auth @googleapis/chat
    
  • یک پروژه Google Cloud با Google Chat API فعال و پیکربندی شده است. برای مراحل، به ساخت برنامه گپ Google مراجعه کنید.
  • مجوز برای برنامه چت پیکربندی شد. به روز رسانی یک فضا نیاز به احراز هویت کاربر با محدوده مجوز chat.spaces دارد.

یک فضا را به روز کنید

برای به‌روزرسانی فضای موجود در Google Chat، موارد زیر را در درخواست خود ارسال کنید:

  • محدوده مجوز chat.spaces را مشخص کنید.
  • متد patch را در منبع Space فراخوانی کنید. در درخواست خود، فیلد name فضا، فیلد updateMask با یک یا چند فیلد برای به روز رسانی و body با اطلاعات فضای به روز شده را مشخص می کنید.

می توانید مواردی مانند نام نمایشی، نوع فاصله، وضعیت سابقه و موارد دیگر را به روز کنید. برای مشاهده تمام فیلدهایی که می توانید به روز کنید، به مستندات مرجع مراجعه کنید.

در اینجا نحوه به روز رسانی قسمت spaceDetails یک فضای موجود آمده است:

پایتون

  1. در پوشه کاری خود، فایلی با نام chat_space_update.py ایجاد کنید.
  2. کد زیر را در chat_space_update.py قرار دهید:

    from google_auth_oauthlib.flow import InstalledAppFlow
    from googleapiclient.discovery import build
    
    # Define your app's authorization scopes.
    # When modifying these scopes, delete the file token.json, if it exists.
    SCOPES = ["https://www.googleapis.com/auth/chat.spaces"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then updates the specified space description and guidelines.
        '''
    
        # Authenticate with Google Workspace
        # and get user authorization.
        flow = InstalledAppFlow.from_client_secrets_file(
                          'client_secrets.json', SCOPES)
        creds = flow.run_local_server()
    
        # Build a service endpoint for Chat API.
        chat = build('chat', 'v1', credentials=creds)
    
        # Use the service endpoint to call Chat API.
        result = chat.spaces().patch(
    
          # The space to update, and the updated space details.
          #
          # Replace {space} with a space name.
          # Obtain the space name from the spaces resource of Chat API,
          # or from a space's URL.
          name='spaces/SPACE',
          updateMask='spaceDetails',
          body={
    
            'spaceDetails': {
              'description': 'This description was updated with Chat API!',
              'guidelines': 'These guidelines were updated with Chat API!'
            }
    
          }
    
        ).execute()
    
        # Prints details about the updated space.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. در کد، SPACE با یک نام فاصله جایگزین کنید، که می توانید آن را از روش spaces.list در Chat API یا از URL یک فضا دریافت کنید.

  4. در پوشه کاری خود، نمونه را بسازید و اجرا کنید:

    python3 chat_space_update.py
    

Node.js

  1. در پوشه کاری خود، یک فایل با نام update-space.js ایجاد کنید.
  2. کد زیر را در update-space.js قرار دهید:

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Updates a Chat space with the description and guidelines.
    * @return {!Promise<!Object>}
    */
    async function updateSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.spaces',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.patch({
        name: 'spaces/SPACE',
        updateMask: 'spaceDetails',
        requestBody: {
          spaceDetails: {
            description: 'This description was updated with Chat API!',
            guidelines: 'These guidelines were updated with Chat API!'
          },
        }
      });
    }
    
    updateSpace().then(console.log);
    
  3. در کد، SPACE با یک نام فاصله جایگزین کنید، که می توانید آن را از روش spaces.list در Chat API یا از URL یک فضا دریافت کنید.

  4. در پوشه کاری خود، نمونه را اجرا کنید:

    node update-space.js
    

Google Chat API نمونه‌ای از منبع Space را برمی‌گرداند که به‌روزرسانی‌ها را منعکس می‌کند.