این راهنما نحوه استفاده از متد list() در منبع Message از API چت گوگل را برای مشاهده فهرستی صفحهبندیشده و قابل فیلتر از پیامها در یک فضا توضیح میدهد.
در API چت، یک پیام چت توسط منبع Message نمایش داده میشود. در حالی که کاربران چت فقط میتوانند پیامهایی حاوی متن ارسال کنند، برنامههای چت میتوانند از بسیاری از ویژگیهای پیامرسانی دیگر، از جمله نمایش رابطهای کاربری ایستا یا تعاملی، جمعآوری اطلاعات از کاربران و ارسال پیامها به صورت خصوصی، استفاده کنند. برای کسب اطلاعات بیشتر در مورد ویژگیهای پیامرسانی موجود برای API چت، به نمای کلی پیامهای Google Chat مراجعه کنید.
پیشنیازها
نود جی اس
- یک حساب کاربری تجاری یا سازمانی Google Workspace با دسترسی به Google Chat .
- محیط خود را تنظیم کنید:
- یک پروژه گوگل کلود ایجاد کنید .
- صفحه رضایت OAuth را پیکربندی کنید .
- API چت گوگل را با نام، آیکون و توضیحات برای برنامه چت خود فعال و پیکربندی کنید .
- کتابخانه کلاینت ابری Node.js را نصب کنید.
- بر اساس نحوهی احراز هویت در درخواست API چت گوگل خود، اعتبارنامههای دسترسی ایجاد کنید:
- برای احراز هویت به عنوان کاربر چت، اعتبارنامههای OAuth client ID را ایجاد کنید و اعتبارنامهها را به عنوان یک فایل JSON با نام
credentials.jsonدر دایرکتوری محلی خود ذخیره کنید. - برای احراز هویت به عنوان برنامه چت، اعتبارنامههای حساب سرویس را ایجاد کنید و اعتبارنامهها را به عنوان یک فایل JSON با نام
credentials.jsonذخیره کنید.
- برای احراز هویت به عنوان کاربر چت، اعتبارنامههای OAuth client ID را ایجاد کنید و اعتبارنامهها را به عنوان یک فایل JSON با نام
- بر اساس اینکه میخواهید به عنوان کاربر یا برنامه چت احراز هویت کنید ، یک محدوده مجوز انتخاب کنید .
- یک فضای چت گوگل. برای ایجاد آن با استفاده از API چت گوگل، به بخش ایجاد فضا مراجعه کنید. برای ایجاد آن در چت، به مستندات مرکز راهنما مراجعه کنید.
پایتون
- یک حساب کاربری تجاری یا سازمانی Google Workspace با دسترسی به Google Chat .
- محیط خود را تنظیم کنید:
- یک پروژه گوگل کلود ایجاد کنید .
- صفحه رضایت OAuth را پیکربندی کنید .
- API چت گوگل را با نام، آیکون و توضیحات برای برنامه چت خود فعال و پیکربندی کنید .
- کتابخانه کلاینت ابری پایتون را نصب کنید.
- بر اساس نحوهی احراز هویت در درخواست API چت گوگل خود، اعتبارنامههای دسترسی ایجاد کنید:
- برای احراز هویت به عنوان کاربر چت، اعتبارنامههای OAuth client ID را ایجاد کنید و اعتبارنامهها را به عنوان یک فایل JSON با نام
credentials.jsonدر دایرکتوری محلی خود ذخیره کنید. - برای احراز هویت به عنوان برنامه چت، اعتبارنامههای حساب سرویس را ایجاد کنید و اعتبارنامهها را به عنوان یک فایل JSON با نام
credentials.jsonذخیره کنید.
- برای احراز هویت به عنوان کاربر چت، اعتبارنامههای OAuth client ID را ایجاد کنید و اعتبارنامهها را به عنوان یک فایل JSON با نام
- بر اساس اینکه میخواهید به عنوان کاربر یا برنامه چت احراز هویت کنید ، یک محدوده مجوز انتخاب کنید .
- یک فضای چت گوگل. برای ایجاد آن با استفاده از API چت گوگل، به بخش ایجاد فضا مراجعه کنید. برای ایجاد آن در چت، به مستندات مرکز راهنما مراجعه کنید.
جاوا
- یک حساب کاربری تجاری یا سازمانی Google Workspace با دسترسی به Google Chat .
- محیط خود را تنظیم کنید:
- یک پروژه گوگل کلود ایجاد کنید .
- صفحه رضایت OAuth را پیکربندی کنید .
- API چت گوگل را با نام، آیکون و توضیحات برای برنامه چت خود فعال و پیکربندی کنید .
- کتابخانه کلاینت ابری جاوا را نصب کنید.
- بر اساس نحوهی احراز هویت در درخواست API چت گوگل خود، اعتبارنامههای دسترسی ایجاد کنید:
- برای احراز هویت به عنوان کاربر چت، اعتبارنامههای OAuth client ID را ایجاد کنید و اعتبارنامهها را به عنوان یک فایل JSON با نام
credentials.jsonدر دایرکتوری محلی خود ذخیره کنید. - برای احراز هویت به عنوان برنامه چت، اعتبارنامههای حساب سرویس را ایجاد کنید و اعتبارنامهها را به عنوان یک فایل JSON با نام
credentials.jsonذخیره کنید.
- برای احراز هویت به عنوان کاربر چت، اعتبارنامههای OAuth client ID را ایجاد کنید و اعتبارنامهها را به عنوان یک فایل JSON با نام
- بر اساس اینکه میخواهید به عنوان کاربر یا برنامه چت احراز هویت کنید ، یک محدوده مجوز انتخاب کنید .
- یک فضای چت گوگل. برای ایجاد آن با استفاده از API چت گوگل، به بخش ایجاد فضا مراجعه کنید. برای ایجاد آن در چت، به مستندات مرکز راهنما مراجعه کنید.
اسکریپت برنامهها
- یک حساب کاربری تجاری یا سازمانی Google Workspace با دسترسی به Google Chat .
- محیط خود را تنظیم کنید:
- یک پروژه گوگل کلود ایجاد کنید .
- صفحه رضایت OAuth را پیکربندی کنید .
- API چت گوگل را با نام، آیکون و توضیحات برای برنامه چت خود فعال و پیکربندی کنید .
- یک پروژه مستقل Apps Script ایجاد کنید و سرویس چت پیشرفته (Advanced Chat Service) را فعال کنید.
- در این راهنما، شما باید از احراز هویت کاربر یا برنامه استفاده کنید. برای احراز هویت به عنوان برنامه چت، اعتبارنامههای حساب سرویس ایجاد کنید. برای مراحل، به «احراز هویت و مجوز به عنوان یک برنامه چت گوگل» مراجعه کنید.
- بر اساس اینکه میخواهید به عنوان کاربر یا برنامه چت احراز هویت کنید ، یک محدوده مجوز انتخاب کنید .
- یک فضای چت گوگل. برای ایجاد آن با استفاده از API چت گوگل، به بخش ایجاد فضا مراجعه کنید. برای ایجاد آن در چت، به مستندات مرکز راهنما مراجعه کنید.
لیست کردن پیامها به عنوان کاربر
برای فهرست کردن پیامهایی که احراز هویت کاربر در آنها لحاظ شده است، کد زیر را در درخواست خود وارد کنید:
- دامنه مجوز
chat.messages.readonlyیاchat.messagesرا مشخص کنید. - متد
ListMessages()را فراخوانی کنید.
مثال زیر پیامهای موجود در یک فضای چت را فهرست میکند:
نود جی اس
پایتون
جاوا
اسکریپت برنامهها
برای اجرای این نمونه، به جای SPACE_NAME ، شناسه (ID) فیلد name فضا را وارد کنید. میتوانید شناسه را با فراخوانی متد ListSpaces() یا از طریق URL فضا به دست آورید.
Chat API لیستی از پیامهای ارسال شده در فضای مشخص شده را برمیگرداند. اگر هیچ پیامی از درخواست وجود نداشته باشد، پاسخ Chat API یک شیء خالی را برمیگرداند. هنگام استفاده از رابط REST/HTTP، پاسخ شامل یک شیء JSON خالی، {} است.
پیامها را به عنوان یک برنامه چت فهرست کنید
احراز هویت برنامه نیاز به تأیید یکباره مدیر دارد.
برای فهرست کردن پیامها از یک فضا با احراز هویت برنامه با استفاده از Chat REST API ، موارد زیر را در درخواست خود ارسال کنید:
- یکی از حوزههای مجوز زیر را مشخص کنید:
-
https://www.googleapis.com/auth/chat.app.messages.readonly
-
- متد
listرا روی منبعmessagesفراخوانی کنید. -
nameفضایی را که میخواهید پیامها از آن فهرست شوند، ارسال کنید.
ایجاد کلید API
برای فراخوانی متد API پیشنمایش توسعهدهنده، باید از یک نسخه پیشنمایش توسعهدهنده غیرعمومی از سند کشف API استفاده کنید. برای تأیید اعتبار درخواست، باید یک کلید API ارسال کنید.
برای ایجاد کلید API، پروژه Google Cloud برنامه خود را باز کنید و موارد زیر را انجام دهید:
- در کنسول گوگل کلود، به Menu > APIs & Services > Credentials بروید.
- روی ایجاد اعتبارنامه > کلید API کلیک کنید.
- کلید API جدید شما نمایش داده میشود.
- برای کپی کردن کلید API خود جهت استفاده در کد برنامه، روی گزینه کپی کردن کلیک کنید. کلید API را میتوانید در بخش «کلیدهای API» در اعتبارنامههای پروژه خود نیز پیدا کنید.
- برای جلوگیری از استفاده غیرمجاز، توصیه میکنیم مکان و نوع APIهایی که کلید API میتواند استفاده شود را محدود کنید. برای جزئیات بیشتر، به افزودن محدودیتهای API مراجعه کنید.
اسکریپتی بنویسید که Chat API را فراخوانی کند
در اینجا نحوه فهرست کردن پیامها با احراز هویت برنامه و Chat REST API آورده شده است:
پایتون
- در دایرکتوری کاری خود، فایلی با نام
chat_messages_list_app.pyایجاد کنید. کد زیر را در
chat_messages_list_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.messages.readonly"] def main(): ''' Authenticates with Chat API using app authentication, then lists messages from a specified space. ''' # 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().messages().list( # The space to list messages from. # # Replace SPACE_NAME with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE_NAME' ).execute() # Print Chat API's response in your command line interface. print(result) if __name__ == '__main__': main()در کد، موارد زیر را جایگزین کنید:
API_KEY: کلید API که برای ساخت نقطه پایانی سرویس برای Chat API ایجاد کردهاید.SPACE_NAME: نام یک فضا که میتوانید آن را از متدspaces.listدر Chat API یا از URL یک فضا به دست آورید.
در دایرکتوری کاری خود، نمونه را بسازید و اجرا کنید:
python3 chat_messages_list_app.py
Chat API لیستی از پیامهای ارسال شده در فضای مشخص شده را برمیگرداند. اگر هیچ پیامی از درخواست وجود نداشته باشد، پاسخ Chat API یک شیء خالی را برمیگرداند. هنگام استفاده از رابط REST/HTTP، پاسخ شامل یک شیء JSON خالی، {} است.
مباحث مرتبط
- یک پیام را قالببندی کنید .
- حذف یک پیام .
- دریافت جزئیات مربوط به یک پیام
- بهروزرسانی یک پیام
- پیام ارسال کنید .