يوضّح هذا الدليل كيفية استخدام list
.
على المورد SpaceEvent
Google Chat API لإدراج التغييرات التي تطرأ على الموارد في مساحة.
مرجع SpaceEvent
التغيير في المساحة المستهدفة، بما في ذلك الموارد الفرعية للمساحة
مثل الرسائل والتفاعلات والاشتراكات لمزيد من المعلومات عن
قائمة بأنواع الأحداث وحمولات الأحداث المتوافقة، ويمكنك الاطّلاع على eventType
حقلان (payload
) في المورد SpaceEvent
الوثائق المرجعية.
يمكنك إدراج الأحداث التي تصل مدتها إلى 28 يومًا قبل وقت الطلب. الخادم
يعرض الأحداث التي تحتوي على أحدث إصدار من المورد المتأثر.
مثلاً، في حال إدراج أحداث عن أعضاء المساحة الجدد، سيعرض الخادم
Membership
مورد يحتوي على أحدث تفاصيل الاشتراك إذا كانت الميزة جديدة
عدد الأعضاء خلال الفترة المطلوبة، تحتوي حمولة الحدث على
مورد Membership
فارغ.
لاستدعاء هذه الطريقة، يجب استخدام user المصادقة. إلى القائمة أحداث من مساحة معيّنة، يجب أن يكون المستخدم الذي تمت مصادقته عضوًا فيها.
المتطلبات الأساسية
Python
- نشاط تجاري أو مؤسسة حساب Google Workspace لديه إذن بالوصول إلى Google Chat
- إعداد البيئة:
- أنشِئ مشروعًا على Google Cloud.
- ضبط شاشة موافقة OAuth
- تفعيل Google Chat API وضبطه باستخدام اسم ورمزه ووصفه لتطبيق Chat.
-
أنشئ بيانات اعتماد معرِّف عميل OAuth لتطبيق متوافق مع الكمبيوتر المكتبي. لتنفيذ النموذج في هذه
هذا الدليل، فاحفظ بيانات الاعتماد كملف JSON اسمه
client_secrets.json
في الدليل المحلي.
- اختر نطاق تفويض يتيح مصادقة المستخدم.
سرد أحداث المساحة
لإدراج أحداث مساحة من "مساحة Chat"، اتّبِع الخطوات التالية:
- يمكنك استدعاء طريقة
list
. فيSpaceEvent
- حدِّد أنواع الأحداث المطلوب إدراجها باستخدام
filter
. يجب تحديد نوع حدث واحد على الأقل، ويمكنك أيضًا الفلترة حسب التاريخ. للحصول على قائمة بأنواع الأحداث المتوافقة، يُرجى الاطّلاع علىeventType
. . - مع مستخدم المصادقة، أو تحديد نطاق تفويض واحد أو أكثر لدعم كل نوع حدث في طلبك. كإحدى أفضل الممارسات، اختر النطاق الأكثر تقييدًا الذي لا يزال يسمح لتطبيقك بالعمل. لاختيار نطاق، يمكنك الاطّلاع على نظرة عامة على المصادقة والترخيص
في نموذج الرمز التالي، يمكنك إدراج الأحداث المتعلقة بالعضويات الجديدة الرسائل في مساحة
Python
- في دليل العمل، أنشِئ ملفًا باسم "
chat_space_event_list.py
". أدرِج الرمز التالي في
chat_space_event_list.py
:"""Lists SpaceEvent resources from the Chat API.""" 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.memberships.readonly", "https://www.googleapis.com/auth/chat.messages.readonly"] # 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().spaceEvents().list( # The space from which to list events. # # Replace SPACE with a space name. # Obtain the space name from the spaces resource of Chat API, # or from a space's URL. parent='spaces/SPACE', # A required filter. Filters and returns events about new memberships and messages filter='event_types:"google.workspace.chat.membership.v1.created" OR event_types:"google.workspace.chat.message.v1.created"' ).execute() # Prints details about the created space events. print(result)
في الرمز، استبدل ما يلي:
SPACE
: اسم مساحة يمكنك الحصول عليه من طريقةspaces.list
في Chat API أو من عنوان URL للمساحة.
في دليل العمل، أنشئ النموذج وشغِّله:
python3 chat_space_event_list.py
تعرض واجهة برمجة تطبيقات Chat قائمة
SpaceEvent
مورد
الأحداث حول العضويات والرسائل الجديدة.
تخصيص عملية التقسيم على صفحات
يمكنك اختياريًا ضبط مَعلمات طلب البحث التالية لتخصيص التقسيم على صفحات:
pageSize
: الحد الأقصى لعددSpaceEvent
من الموارد المطلوب عرضها. قد تعرض الخدمة أقل من هذه القيمة. تُرجع القيم السالبة خطأ واحد (INVALID_ARGUMENT
).pageToken
: رمز مميّز للصفحة تم تلقّيه من مكالمة سابقة لأحداث مساحة قائمة قدِّم هذا الرمز المميّز لاسترداد الصفحة التالية. عند التقسيم على صفحات، أن تتطابق قيمة الفلتر مع الطلب الذي يقدم الرمز المميز للصفحة. جارٍ اجتياز القيم المختلفة إلى نتائج غير متوقعة.