এই নির্দেশিকা ব্যাখ্যা করে যে কীভাবে Google Chat API-এর SpaceEvent
রিসোর্সে list
পদ্ধতি ব্যবহার করতে হয় একটি স্পেসে রিসোর্সে পরিবর্তনের তালিকা করতে।
SpaceEvent
রিসোর্স টার্গেট স্পেসের পরিবর্তনের প্রতিনিধিত্ব করে, যার মধ্যে স্থানের চাইল্ড রিসোর্স যেমন বার্তা, প্রতিক্রিয়া এবং সদস্যতা রয়েছে। সমর্থিত ইভেন্ট প্রকার এবং ইভেন্ট পেলোডের তালিকা সম্পর্কে আরও তথ্যের জন্য, SpaceEvent
রিসোর্স রেফারেন্স ডকুমেন্টেশনের eventType
এবং payload
ক্ষেত্রগুলি দেখুন।
আপনি অনুরোধের সময়ের 28 দিন আগে পর্যন্ত ইভেন্ট তালিকাভুক্ত করতে পারেন। সার্ভারটি এমন ইভেন্টগুলি ফেরত দেয় যাতে প্রভাবিত সংস্থানটির সাম্প্রতিকতম সংস্করণ রয়েছে৷ উদাহরণস্বরূপ, যদি আপনি নতুন স্পেস সদস্যদের সম্পর্কে ইভেন্টগুলি তালিকাভুক্ত করেন, সার্ভার Membership
সংস্থানগুলি ফেরত দেয় যাতে সর্বশেষ সদস্যতার বিবরণ রয়েছে। অনুরোধ করা সময়ের মধ্যে যদি নতুন সদস্যদের সরানো হয়, তাহলে ইভেন্ট পেলোডে একটি খালি Membership
সম্পদ থাকে।
এই পদ্ধতিতে কল করার জন্য, আপনাকে অবশ্যই ব্যবহারকারীর প্রমাণীকরণ ব্যবহার করতে হবে। একটি স্থান থেকে ইভেন্ট তালিকাভুক্ত করতে, প্রমাণীকৃত ব্যবহারকারীকে অবশ্যই স্থানের সদস্য হতে হবে।
পূর্বশর্ত
পাইথন
- Google Chat অ্যাক্সেস সহ একটি ব্যবসা বা এন্টারপ্রাইজ Google Workspace অ্যাকাউন্ট।
- আপনার পরিবেশ সেট আপ করুন:
- একটি Google ক্লাউড প্রকল্প তৈরি করুন ।
- OAuth সম্মতি স্ক্রিন কনফিগার করুন ।
- আপনার চ্যাট অ্যাপের জন্য একটি নাম, আইকন এবং বিবরণ সহ Google Chat API সক্রিয় এবং কনফিগার করুন ।
- একটি ডেস্কটপ অ্যাপ্লিকেশনের জন্য OAuth ক্লায়েন্ট আইডি শংসাপত্র তৈরি করুন । এই নির্দেশিকায় নমুনাটি চালানোর জন্য, আপনার স্থানীয় ডিরেক্টরিতে
client_secrets.json
নামে একটি JSON ফাইল হিসাবে শংসাপত্রগুলি সংরক্ষণ করুন৷
- ব্যবহারকারীর প্রমাণীকরণ সমর্থন করে এমন একটি অনুমোদনের সুযোগ বেছে নিন ।
স্থান ঘটনা তালিকা
চ্যাট স্পেস থেকে স্পেস ইভেন্ট তালিকাভুক্ত করতে, নিম্নলিখিতগুলি করুন:
-
SpaceEvent
রিসোর্সেlist
পদ্ধতিতে কল করুন। -
filter
ক্ষেত্র ব্যবহার করে কোন ইভেন্টের প্রকারগুলি তালিকাভুক্ত করতে হবে তা নির্দিষ্ট করুন৷ আপনাকে অবশ্যই কমপক্ষে একটি ইভেন্টের ধরণ নির্দিষ্ট করতে হবে এবং আপনি তারিখ অনুসারে ফিল্টারও করতে পারেন৷ সমর্থিত ইভেন্ট প্রকারের তালিকার জন্য,eventType
ক্ষেত্র দেখুন। - ব্যবহারকারীর প্রমাণীকরণের সাথে, আপনার অনুরোধে প্রতিটি ইভেন্ট প্রকারকে সমর্থন করার জন্য এক বা একাধিক অনুমোদনের সুযোগ নির্দিষ্ট করুন। একটি সর্বোত্তম অনুশীলন হিসাবে, সর্বাধিক সীমাবদ্ধ সুযোগ বেছে নিন যা এখনও আপনার অ্যাপটিকে কাজ করার অনুমতি দেয়। একটি সুযোগ নির্বাচন করতে, প্রমাণীকরণ এবং অনুমোদন ওভারভিউ দেখুন।
নিম্নলিখিত কোড নমুনায়, আপনি একটি স্পেসে নতুন সদস্যতা এবং বার্তা সম্পর্কে ইভেন্টগুলি তালিকাভুক্ত করেন৷
পাইথন
- আপনার কাজের ডিরেক্টরিতে,
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
: একটি স্থানের নাম, যা আপনি Chat API-এরspaces.list
পদ্ধতি থেকে বা একটি স্থানের URL থেকে পেতে পারেন।
-
আপনার কাজের ডিরেক্টরিতে, নমুনা তৈরি করুন এবং চালান:
python3 chat_space_event_list.py
Chat API নতুন সদস্যতা এবং বার্তা সম্পর্কে SpaceEvent
সংস্থান ইভেন্টগুলির একটি তালিকা প্রদান করে।
পেজিনেশন কাস্টমাইজ করুন
ঐচ্ছিকভাবে, পেজিনেশন কাস্টমাইজ করতে নিম্নলিখিত ক্যোয়ারী প্যারামিটারগুলি পাস করুন:
-
pageSize
:SpaceEvent
রিসোর্সের সর্বোচ্চ সংখ্যা ফেরত দিতে হবে। পরিষেবাটি এই মানের থেকে কম ফেরত দিতে পারে। নেতিবাচক মান একটিINVALID_ARGUMENT
ত্রুটি প্রদান করে৷ -
pageToken
: একটি পৃষ্ঠা টোকেন, পূর্ববর্তী তালিকা স্পেস ইভেন্ট কল থেকে প্রাপ্ত। পরবর্তী পৃষ্ঠাটি পুনরুদ্ধার করতে এই টোকেনটি প্রদান করুন। পেজিনেট করার সময়, ফিল্টারের মানটি সেই কলের সাথে মেলে যা পৃষ্ঠা টোকেন প্রদান করে। একটি ভিন্ন মান পাস অপ্রত্যাশিত ফলাফল হতে পারে.