إنشاء مساحة

يوضِّح هذا الدليل طريقة استخدام طريقة create على مورد Space لواجهة برمجة تطبيقات Google Chat لإنشاء مساحة مُسمّاة.

يمثّل المورد Space مكانًا يمكن فيه للمستخدمين وتطبيقات Chat إرسال الرسائل ومشاركة الملفات والتعاون. تتوفّر عدة أنواع من المساحات:

  • الرسائل المباشرة هي محادثات بين مستخدمَين أو مستخدم وتطبيق في Chat.
  • المحادثات الجماعية هي محادثات بين ثلاثة مستخدمين أو أكثر وتطبيقات Chat.
  • المساحات المُسمّاة هي أماكن دائمة يمكن للمستخدمين من خلالها إرسال الرسائل ومشاركة الملفات والتعاون معًا.

المساحة المسماة هي مكان يرسل فيه الأشخاص الرسائل ويشاركون الملفات والتعاون. يمكن أن تتضمّن المساحات المُسمّاة تطبيقات Chat. تشمل المساحات المُسمّاة ميزات إضافية لا تتوفّر في المحادثات الجماعية والرسائل المباشرة بدون اسم، مثل مدراء المساحات الذين يمكنهم تطبيق الإعدادات الإدارية والأوصاف وإضافة مستخدمين وتطبيقات أو إزالتهم. بعد إنشاء مساحة مُعنوَنة، يكون العضو الوحيد في المساحة هو المستخدم الذي تمت مصادقته. لا تتضمّن المساحة مستخدمين آخرين أو تطبيقات أخرى، ولا حتى تطبيق Chat الذي ينشئه المستخدمون. لإضافة مستخدمين، أنشِئ اشتراكات في المساحة من خلال استدعاء طريقة create في المرجع Member. للتعرّف على كيفية إجراء ذلك، يُرجى الاطّلاع على إنشاء اشتراك.

لإنشاء مساحة مُسمّاة تضم عدة أعضاء، مثل محادثة جماعية بدون اسم بين ثلاثة مستخدمين أو أكثر، أو محادثة رسالة مباشرة بين شخصين، أو شخص وتطبيق Chat يتصل بـ Chat API، يمكنك إعداد مساحة بدلاً من ذلك.

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

Python

  • Python 3.6 أو أحدث
  • إنّ أداة إدارة الحِزم pip
  • أحدث مكتبات عملاء Google للغة Python. لتثبيتها أو تحديثها، شغّل الأمر التالي في واجهة سطر الأوامر:

    pip3 install --upgrade google-api-python-client google-auth-oauthlib
    
  • مشروع على Google Cloud تم فيه تفعيل Google Chat API وضبطه لمعرفة الخطوات، يُرجى الاطّلاع على مقالة إنشاء تطبيق Google Chat.
  • تم ضبط التفويض لتطبيق Chat. يتطلب إنشاء مساحة مصادقة المستخدم مع نطاق التفويض chat.spaces.create أو 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.
  • تم ضبط التفويض لتطبيق Chat. يتطلب إنشاء مساحة مصادقة المستخدم مع نطاق التفويض chat.spaces.create أو chat.spaces.

إنشاء مساحة اسمها

لإنشاء مساحة اسمها، ضع ما يلي في طلبك:

  • حدِّد نطاق التفويض chat.spaces.create أو chat.spaces.
  • استدعِ طريقة create في المورد Space.
  • اضبط spaceType على SPACE.
  • اضبط displayName على اسم المساحة المرئي للمستخدم. في المثال التالي، تم ضبط displayName على API-made.
  • يمكنك اختياريًا ضبط سمات أخرى للمساحة، مثل spaceDetails (وصف مرئي للمستخدم ومجموعة من الإرشادات للمساحة).

في ما يلي كيفية إنشاء مساحة مسماة:

Python

  1. في دليل العمل، أنشِئ ملفًا باسم chat_space_create_named.py.
  2. ضمِّن الرمز التالي في chat_space_create_named.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.create"]
    
    def main():
        '''
        Authenticates with Chat API via user credentials,
        then creates a Chat space.
        '''
    
        # 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().create(
    
          # Details about the space to create.
          body = {
    
            # To create a named space, set spaceType to SPACE.
            'spaceType': 'SPACE',
    
            # The user-visible name of the space.
            'displayName': 'API-made'
          }
    
          ).execute()
    
        # Prints details about the created membership.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. في دليل العمل، أنشئ النموذج وقم بتشغيله:

    python3 chat_space_create_named.py
    

Node.js

  1. في دليل العمل، أنشِئ ملفًا باسم create-space.js.
  2. ضمِّن الرمز التالي في create-space.js:

    const chat = require('@googleapis/chat');
    const {authenticate} = require('@google-cloud/local-auth');
    
    /**
    * Creates a new chat space.
    * @return {!Promise<!Object>}
    */
    async function createSpace() {
      const scopes = [
        'https://www.googleapis.com/auth/chat.spaces.create',
      ];
    
      const authClient =
          await authenticate({scopes, keyfilePath: 'client_secrets.json'});
    
      const chatClient = await chat.chat({version: 'v1', auth: authClient});
    
      return await chatClient.spaces.create(
          {requestBody: {spaceType: 'SPACE', displayName: 'API-made'}});
    }
    
    createSpace().then(console.log);
    
  3. في دليل العمل، شغِّل النموذج:

    node create-space.js
    

يتم إنشاء مساحة مسماة. للانتقال إلى المساحة، استخدِم معرّف مورد المساحة لإنشاء عنوان URL للمساحة. يمكنك العثور على رقم تعريف المورد من المساحة name في نص استجابة Google Chat. على سبيل المثال، إذا كانت قيمة name الخاصة بمساحتك هي spaces/1234567، يمكنك الانتقال إلى المساحة باستخدام عنوان URL التالي: https://mail.google.com/chat/u/0/#chat/space/1234567.