إزالة عضو من مساحة

يوضّح هذا الدليل كيفية استخدام الـ delete() طريقة في مورد الـ Membership ضِمن Google Chat API لإزالة الأعضاء من مساحة ، ويُعرف ذلك أيضًا باسم حذف عضوية. لا يمكن إزالة مدراء المساحات إذا كانوا مدراء المساحات الوحيدين في مساحة. يجب تعيين مستخدم آخر كمدير مساحة قبل إزالة هذه العضويات.

إذا كنت مشرفًا في Google Workspace، يمكنك إزالة المستخدمين أو "مجموعات Google" أو تطبيقات Chat من أي مساحة في مؤسسة Google Workspace.

يمثّل مورد Membershipما إذا كان مستخدم أو تطبيق Google Chat مدعوًا إلى مساحة أو جزءًا منها أو غير موجود فيها.

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

Node.js

  • حساب Google Workspace Business أو Enterprise مع إمكانية الوصول إلى Google Chat

إزالة عضو من مساحة بصفتك مستخدمًا

لإزالة مستخدم أو "مجموعة Google" أو تطبيق Chat من مساحة باستخدام مصادقة المستخدم، مرِّر ما يلي في طلبك:

  • حدِّد نطاق تفويض chat.memberships. يجب أن يكون لدى المستخدم الذي يمنح التفويض إذن إزالة المستخدم أو "مجموعة Google" من المساحة. لإزالة تطبيق Chat، حدِّد نطاق تفويض chat.memberships.app (لا يمكن للتطبيقات حذف عضويتها إلا بنفسها، وليس عضوية التطبيقات الأخرى). كأفضل ممارسة، اختَر النطاق الأكثر تقييدًا الذي لا يزال يسمح لتطبيقك بالعمل.
  • استدعِ طريقة DeleteMembership().
  • مرِّر name العضوية التي تريد حذفها. إذا كانت العضوية تخص مدير المساحة الوحيد في مساحة، عيِّن مستخدمًا آخر كمدير مساحة قبل حذف هذه العضوية.

إليك كيفية حذف عضوية باستخدام مصادقة المستخدم:

Node.js

chat/client-libraries/cloud/delete-space-user-cred.js
import {createClientWithUserCredentials} from './authentication-utils.js';

const USER_AUTH_OAUTH_SCOPES = ['https://www.googleapis.com/auth/chat.delete'];

// This sample shows how to delete a space with user credential
async function main() {
  // Create a client
  const chatClient = await createClientWithUserCredentials(
    USER_AUTH_OAUTH_SCOPES,
  );

  // Initialize request argument(s)
  const request = {
    // Replace SPACE_NAME here
    name: 'spaces/SPACE_NAME',
  };

  // Make the request
  const response = await chatClient.deleteSpace(request);

  // Handle the response
  console.log(response);
}

await main();

لتشغيل هذا النموذج، استبدِل ما يلي:

  • SPACE_NAME: المعرّف من المساحةname. يمكنك الحصول على المعرّف من خلال استدعاء طريقة ListSpaces() أو من عنوان URL للمساحة.
  • MEMBER_NAME: المعرّف من name العضو. يمكنك الحصول على المعرّف من خلال استدعاء طريقة ListMemberships().

إذا كانت الاستجابة ناجحة، يعرض نص الاستجابة العضوية مع 'state': 'NOT_A_MEMBER'، ما يشير إلى أنّ العضو لم يعُد في المساحة.

{
    "name": "spaces/SPACE_NAME/members/MEMBER_NAME",
    "state": "NOT_A_MEMBER"
}

إزالة عضو من مساحة بصفتك تطبيق Chat

تتطلب مصادقة التطبيق موافقة المشرف لمرة واحدة .

لإزالة مستخدم أو "مجموعة Google" أو تطبيق Chat من مساحة باستخدام مصادقة التطبيق، مرِّر ما يلي في طلبك:

  • حدِّد نطاق تفويض chat.app.memberships. لا يمكن حذف عضوية مدير مساحة إلا في المساحات التي أنشأتها تطبيقات Chat.
  • استدعِ طريقة delete في مورد membership.
  • مرِّر name العضوية التي تريد حذفها. إذا كانت العضوية تخص مدير المساحة الوحيد في مساحة، عيِّن مستخدمًا آخر كمدير مساحة قبل حذف هذه العضوية.

كتابة نص برمجي يستدعي Chat API

إليك كيفية حذف عضوية باستخدام مصادقة التطبيق:

Python

  1. في دليل العمل، أنشئ ملفًا باسم chat_membership_delete_app.py.
  2. أدرِج الرمز البرمجي التالي في chat_membership_delete_app.py:

    from google.oauth2 import service_account
    from apiclient.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.app.memberships"]
    
    def main():
        '''
        Authenticates with Chat API using app authentication,
        then deletes the specified membership.
        '''
    
        # Specify service account details.
        creds = (
            service_account.Credentials.from_service_account_file('credentials.json')
            .with_scopes(SCOPES)
        )
    
        # Build a service endpoint for Chat API.
        chat = build('chat', 'v1', credentials=creds)
    
        # Use the service endpoint to call Chat API.
        result = chat.spaces().members().delete(
    
            # The membership to delete.
            #
            # Replace SPACE with a space name.
            # Obtain the space name from the spaces resource of Chat API,
            # or from a space's URL.
            #
            # Replace MEMBER with a membership name.
            # Obtain the membership name from the memberships resource of
            # Chat API. To delete a Chat app's membership, replace MEMBER
            # with app; an alias for the app calling the API.
            name='spaces/SPACE/members/MEMBER'
    
        ).execute()
    
        # Print Chat API's response in your command line interface.
        # When deleting a membership, the response body is empty.
        print(result)
    
    if __name__ == '__main__':
        main()
    
  3. في الرمز البرمجي، استبدِل ما يلي:

    • SPACE: اسم مساحة، يمكنك الحصول عليه من طريقة spaces.list في Chat API أو من عنوان URL لمساحة

    • MEMBER: اسم عضوية، يمكنك الحصول عليه من طريقة spaces.members.list في Chat API. لحذف عضوية تطبيق، استبدِل MEMBER بـ app.

  4. في دليل العمل، أنشئ النموذج وشغِّله:

    python3 chat_membership_delete_app.py

إذا كانت الاستجابة ناجحة، يعرض نص الاستجابة العضوية مع 'state': 'NOT_A_MEMBER'، ما يشير إلى أنّ العضو لم يعُد في المساحة.

{
    "name": "spaces/SPACE/members/MEMBER",
    "state": "NOT_A_MEMBER"
}

إزالة مستخدمين أو "مجموعات Google" من مساحة بصفتك مشرفًا في Google Workspace

إذا كنت مشرفًا في Google Workspace، يمكنك استدعاء طريقة DeleteMembership() لإزالة المستخدمين أو "مجموعات Google" أو تطبيقات Chat من أي مساحة في مؤسسة Google Workspace.

لاستدعاء هذه الطريقة بصفتك مشرفًا في Google Workspace، اتّبِع الخطوات التالية:

  • استدعِ الطريقة باستخدام مصادقة المستخدم، وحدِّد نطاق تفويض يسمح باستدعاء الطريقة باستخدام امتيازات المشرف.
  • في طلبك، حدِّد مَعلمة طلب البحث useAdminAccess على true.

لمزيد من المعلومات والأمثلة، يُرجى الاطّلاع على مقالة إدارة مساحات Google Chat بصفتك مشرفًا في Google Workspace.

القيود والاعتبارات

  • باستخدام مصادقة التطبيق، يمكن لتطبيق Chat إزالة المستخدمين، ولكن ليس "مجموعات Google" أو تطبيقات Chat.