إنشاء مساحة

يشرح هذا الدليل كيفية استخدام طريقة create على مورد Space من Google Chat API لإنشاء مساحة مُعنوَنة.

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

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

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

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

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

Python

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

    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 space.
        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.