این راهنما نحوه استفاده از روش delete
در منبع Message
Google Chat API برای حذف پیام نوشتاری یا کارتی توضیح میدهد.
منبع Message
یک پیام متنی یا کارتی را در Google Chat نشان می دهد. میتوانید با فراخوانی روشهای مربوطه، پیامی را در Google Chat API create
، get
، update
یا delete
. برای کسب اطلاعات بیشتر درباره پیامهای نوشتاری و کارتی، به نمای کلی پیامهای گپ Google مراجعه کنید.
پیش نیازها
پایتون
- پایتون 3.6 یا بالاتر
- ابزار مدیریت بسته پیپ
جدیدترین کتابخانه های مشتری گوگل برای پایتون. برای نصب یا به روز رسانی آنها، دستور زیر را در رابط خط فرمان خود اجرا کنید:
pip3 install --upgrade google-api-python-client google-auth-oauthlib google-auth
- یک پروژه Google Cloud با Google Chat API فعال و پیکربندی شده است. برای مراحل، به ساخت برنامه گپ Google مراجعه کنید.
مجوز برای برنامه چت پیکربندی شد. حذف یک پیام از هر دو روش احراز هویت زیر پشتیبانی می کند:
- احراز هویت کاربر ، با محدوده مجوز
chat.messages
، می تواند پیام های ایجاد شده توسط آن کاربر را حذف کند. اگر مدیر فضایی هستید، ممکن است بتوانید پیامهای دیگر را حذف کنید. برای اطلاعات بیشتر، درباره نقش خود به عنوان مدیر فضایی اطلاعات کسب کنید. - احراز هویت برنامه ، با محدوده مجوز
chat.bot
، میتواند پیامهای ایجاد شده توسط آن برنامه را با استفاده از حساب سرویس آن حذف کند.
- احراز هویت کاربر ، با محدوده مجوز
یک پیام با احراز هویت کاربر را حذف کنید
برای حذف یک پیام با احراز هویت کاربر ، موارد زیر را در درخواست خود ارسال کنید:
- محدوده مجوز
chat.messages
را مشخص کنید. - روش
delete
را در منبعMessage
فراخوانی کنید. -
name
به نام منبع پیام برای حذف تنظیم کنید.
مثال زیر یک پیام با احراز هویت کاربر را حذف می کند:
پایتون
- در پوشه کاری خود، فایلی با نام
chat_message_delete_user.py
ایجاد کنید. کد زیر را در
chat_message_delete_user.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.messages"] def main(): ''' Authenticates with Chat API via user credentials, then deletes a message. ''' # 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().messages().delete( # The message 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 MESSAGE with a message name. # Obtain the message name from the response body returned # after creating a message asynchronously with Chat REST API. name = 'spaces/SPACE/messages/MESSAGE' ).execute() # Prints response to the Chat API call. # When deleting a message, the response body is empty. print(result) if __name__ == '__main__': main()
در کد زیر را جایگزین کنید:
-
SPACE
: نام فضایی است که می توانید از روشspaces.list
در Chat API یا از URL یک فضا دریافت کنید. -
MESSAGE
: نام پیامی است که می توانید آن را از بدنه پاسخی که پس از ایجاد پیام به طور ناهمزمان با Chat API یا با نام سفارشی اختصاص داده شده به پیام در هنگام ایجاد، بازگردانده شده است، دریافت کنید.
-
در پوشه کاری خود، نمونه را بسازید و اجرا کنید:
python3 chat_message_delete_user.py
در صورت موفقیت آمیز بودن، بدنه پاسخ خالی است، که نشان می دهد پیام حذف شده است.
پیامی را با احراز هویت برنامه حذف کنید
برای حذف یک پیام با تأیید اعتبار برنامه ، موارد زیر را در درخواست خود ارسال کنید:
- محدوده مجوز
chat.bot
را مشخص کنید. - روش
delete
را در منبعMessage
فراخوانی کنید. -
name
به نام منبع پیام برای حذف تنظیم کنید.
مثال زیر یک پیام با احراز هویت برنامه را حذف می کند:
پایتون
- در فهرست کاری خود، یک فایل با نام
chat_delete_message_app.py
ایجاد کنید. کد زیر را در
chat_delete_message_app.py
قرار دهید:from google.oauth2 import service_account from apiclient.discovery import build # Specify required scopes. SCOPES = ['https://www.googleapis.com/auth/chat.bot'] # Specify service account details. CREDENTIALS = ( service_account.Credentials.from_service_account_file('credentials.json') .with_scopes(SCOPES) ) # Build the URI and authenticate with the service account. chat = build('chat', 'v1', credentials=CREDENTIALS) # Delete a Chat message. result = chat.spaces().messages().delete( # The message 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 MESSAGE with a message name. # Obtain the message name from the response body returned # after creating a message asynchronously with Chat REST API. name='spaces/SPACE/messages/MESSAGE' ).execute() # Print Chat API's response in your command line interface. # When deleting a message, the response body is empty. print(result)
در کد زیر را جایگزین کنید:
-
SPACE
:name
فضایی که پیام در آن پست می شود، که می توانید آن را از روشspaces.list
در Chat API یا از URL یک فضا دریافت کنید. -
MESSAGE
: نام پیام، که می توانید از بدنه پاسخی که پس از ایجاد پیام به طور ناهمزمان با Chat API یا با نام سفارشی اختصاص داده شده به پیام در هنگام ایجاد، بازگردانده شده است، دریافت کنید.
-
در پوشه کاری خود، نمونه را بسازید و اجرا کنید:
python3 chat_delete_message_app.py
در صورت موفقیت آمیز بودن، بدنه پاسخ خالی است، که نشان می دهد پیام حذف شده است.
مطالب مرتبط
- یک پیام را قالب بندی کنید .
- دریافت جزئیات در مورد یک پیام
- لیست پیام ها در یک فاصله
- یک پیام را به روز کنید .
- ارسال یک پیام .