یک عضو را از یک فاصله حذف کنید

این راهنما نحوه استفاده از روش delete() را در منبع Membership API Google Chat برای حذف اعضا از یک فضا توضیح می دهد که به عنوان حذف عضویت نیز شناخته می شود. اگر مدیران فضا تنها مدیر فضا در یک فضا باشند، نمی‌توان آنها را حذف کرد. قبل از حذف این عضویت ها، کاربر دیگری را به عنوان مدیر فضا تعیین کنید.

اگر سرپرست Google Workspace هستید، می‌توانید کاربران، Google Groups یا برنامه‌های Chat را از هر فضایی در سازمان Google Workspace خود حذف کنید.

منبع Membership نشان می‌دهد که آیا کاربر انسانی یا برنامه چت Google به یک فضا دعوت شده، بخشی از آن یا غایب است.

پیش نیازها

Node.js

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

برای حذف یک کاربر، Google Group یا برنامه چت از فضایی با احراز هویت کاربر ، موارد زیر را در درخواست خود ارسال کنید:

  • محدوده مجوز chat.memberships را مشخص کنید. کاربر مجاز باید مجوز حذف کاربر یا گروه Google را از فضا داشته باشد. برای حذف یک برنامه چت، محدوده مجوز 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);
}

main().catch(console.error);

برای اجرای این نمونه، موارد زیر را جایگزین کنید:

  • SPACE_NAME : شناسه از name فضا. شما می توانید شناسه را با فراخوانی متد ListSpaces() یا از URL فضا بدست آورید.
  • MEMBER_NAME : شناسه از name عضو. با فراخوانی متد ListMemberships() می توانید شناسه را دریافت کنید.

در صورت موفقیت آمیز بودن، بدنه پاسخ عضویت را با 'state': 'NOT_A_MEMBER' ، که نشان می دهد عضو دیگر در فضا نیست.

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

حذف یک عضو از یک فضا به عنوان یک برنامه چت

احراز هویت برنامه نیاز به تأیید یکباره سرپرست دارد.

برای حذف یک کاربر، Google Group یا برنامه چت از فضایی با احراز هویت برنامه ، موارد زیر را در درخواست خود ارسال کنید:

  • محدوده مجوز chat.app.memberships را مشخص کنید. حذف عضویت مدیر فضایی فقط در فضاهای ایجاد شده توسط برنامه‌های چت پشتیبانی می‌شود.
  • روش delete را در منبع membership فراخوانی کنید.
  • name عضویت را برای حذف ارسال کنید. اگر عضویت به تنها مدیر فضای یک فضا تعلق دارد، قبل از حذف این عضویت، کاربر دیگری را به عنوان مدیر فضا تعیین کنید.

یک کلید API ایجاد کنید

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

برای ایجاد کلید API، پروژه Google Cloud برنامه خود را باز کنید و کارهای زیر را انجام دهید:

  1. در کنسول Google Cloud، به منو > APIs & Services > Credentials بروید.

    به Credentials بروید

  2. روی ایجاد اعتبارنامه > کلید API کلیک کنید.
  3. کلید API جدید شما نمایش داده می شود.
    • روی Copy کلیک کنید تا کلید API خود را برای استفاده در کد برنامه خود کپی کنید. کلید API را می‌توانید در بخش «کلیدهای API» اعتبار پروژه‌تان پیدا کنید.
    • برای به‌روزرسانی تنظیمات پیشرفته و محدود کردن استفاده از کلید API، روی Restrict key کلیک کنید. برای جزئیات بیشتر، به اعمال محدودیت‌های کلید API مراجعه کنید.

اسکریپتی بنویسید که Chat API را فراخوانی کند

در اینجا نحوه حذف عضویت با تأیید اعتبار برنامه آمده است:

پایتون

  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, discoveryServiceUrl='https://chat.googleapis.com/$discovery/rest?version=v1&labels=DEVELOPER_PREVIEW&key=API_KEY')
    
        # 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. در کد زیر را جایگزین کنید:

    • API_KEY : کلید API که برای ساختن نقطه پایانی سرویس برای Chat API ایجاد کردید.

    • 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 Groups را به عنوان سرپرست Google Workspace از فضایی حذف کنید

اگر سرپرست Google Workspace هستید، می‌توانید با روش DeleteMembership() تماس بگیرید تا کاربران، گروه‌های Google یا برنامه‌های چت را از هر فضایی در سازمان Google Workspace خود حذف کنید.

برای فراخوانی این روش به عنوان سرپرست Google Workspace، موارد زیر را انجام دهید:

  • روش را با استفاده از احراز هویت کاربر فراخوانی کنید و محدوده مجوزی را مشخص کنید که از فراخوانی روش با استفاده از امتیازات سرپرست پشتیبانی می کند.
  • در درخواست خود، پارامتر query useAdminAccess را به true مشخص کنید.

برای اطلاعات بیشتر و مثال‌ها، به مدیریت فضاهای گپ Google به عنوان سرپرست Google Workspace مراجعه کنید.