এই পৃষ্ঠাটি ব্যাখ্যা করে যে কীভাবে subscriptions.list()
পদ্ধতি ব্যবহার করে Google Workspace সাবস্ক্রিপশনের তালিকা করতে হয়।
আপনি যখন ব্যবহারকারীর প্রমাণীকরণের সাথে এই পদ্ধতিটি কল করেন, তখন পদ্ধতিটি ব্যবহারকারীর দ্বারা অনুমোদিত সাবস্ক্রিপশনের একটি তালিকা প্রদান করে। আপনি যখন অ্যাপ প্রমাণীকরণ ব্যবহার করেন, পদ্ধতিটি এমন একটি তালিকা ফেরত দিতে পারে যাতে অ্যাপের জন্য কোনো সদস্যতা রয়েছে।
পূর্বশর্ত
অ্যাপস স্ক্রিপ্ট
- একটি Google Workspace সদস্যতা। একটি তৈরি করতে, একটি সদস্যতা তৈরি করুন দেখুন।
সাবস্ক্রিপশনের জন্য সমস্ত ইভেন্ট প্রকারগুলিকে সমর্থন করে এমন এক বা একাধিক স্কোপের সাথে ব্যবহারকারীর প্রমাণীকরণের প্রয়োজন৷
- একটি Apps স্ক্রিপ্ট প্রকল্প:
- অ্যাপস স্ক্রিপ্ট দ্বারা স্বয়ংক্রিয়ভাবে তৈরি ডিফল্টের পরিবর্তে আপনার Google ক্লাউড প্রকল্প ব্যবহার করুন।
- OAuth সম্মতি স্ক্রীন কনফিগার করার জন্য আপনি যেকোন স্কোপ যোগ করেছেন, আপনাকে অবশ্যই আপনার Apps Script প্রোজেক্টের
appsscript.json
ফাইলে স্কোপ যোগ করতে হবে। উদাহরণ স্বরূপ:
"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages.readonly" ]
-
Google Workspace Events
উন্নত পরিষেবা চালু করুন ।
পাইথন
- পাইথন 3.6 বা তার বেশি
- পাইপ প্যাকেজ ম্যানেজমেন্ট টুল
- পাইথনের জন্য সর্বশেষ Google ক্লায়েন্ট লাইব্রেরি। এগুলি ইনস্টল বা আপডেট করতে, আপনার কমান্ড-লাইন ইন্টারফেসে নিম্নলিখিত কমান্ডটি চালান:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- একটি Google Workspace সদস্যতা। একটি তৈরি করতে, একটি সদস্যতা তৈরি করুন দেখুন।
প্রমাণীকরণ প্রয়োজন:
- ব্যবহারকারীর প্রমাণীকরণের জন্য, সাবস্ক্রিপশনের জন্য অন্তত একটি ইভেন্ট প্রকারকে সমর্থন করে এমন একটি সুযোগ প্রয়োজন৷ একটি সুযোগ শনাক্ত করতে, ইভেন্টের ধরন অনুসারে স্কোপগুলি দেখুন।
- অ্যাপ প্রমাণীকরণের জন্য,
chat.bot
সুযোগ প্রয়োজন (শুধুমাত্র Google Chat অ্যাপ)।
একটি ব্যবহারকারী দ্বারা অনুমোদিত সদস্যতা তালিকা
সদস্যতা তালিকাভুক্ত করতে, আপনাকে অন্তত একটি ইভেন্ট প্রকার দ্বারা ফিল্টার করতে হবে৷ আপনি এক বা একাধিক লক্ষ্য সংস্থান দ্বারা আপনার ক্যোয়ারী ফিল্টার করতে পারেন। সমর্থিত ক্যোয়ারী ফিল্টার সম্পর্কে জানতে, list()
পদ্ধতির ডকুমেন্টেশন দেখুন।
নিম্নলিখিত কোড নমুনা ইভেন্টের ধরন এবং লক্ষ্য সংস্থান দ্বারা ফিল্টার করা Subscription
অবজেক্টের একটি অ্যারে প্রদান করে। যখন একজন ব্যবহারকারী হিসাবে প্রমাণীকরণ করা হয়, তখন পদ্ধতিটি শুধুমাত্র সাবস্ক্রিপশনের একটি তালিকা প্রদান করে যা ব্যবহারকারী অ্যাপটিকে তৈরি করার জন্য অনুমোদিত করে।
একটি নির্দিষ্ট ইভেন্টের ধরন এবং লক্ষ্য সংস্থানের জন্য সদস্যতা তালিকাভুক্ত করতে:
অ্যাপস স্ক্রিপ্ট
আপনার Apps স্ক্রিপ্ট প্রকল্পে,
listSubscriptions
নামে একটি নতুন স্ক্রিপ্ট ফাইল তৈরি করুন এবং নিম্নলিখিত কোড যোগ করুন:function listSubscriptions() { // Filter for event type (required). const eventType = 'EVENT_TYPE'; // Filter for target resource (optional). const targetResource = 'TARGET_RESOURCE'; const filter = `event_types:"${eventType}" AND target_resource="${targetResource}"` // Call the Workspace Events API using the advanced service. const response = WorkspaceEvents.Subscriptions.list({ filter }); console.log(response); }
নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
-
EVENT_TYPE
: CloudEvents স্পেসিফিকেশন অনুযায়ী একটি ইভেন্টের ধরন ফরম্যাট করা হয়েছে। উদাহরণস্বরূপ, Google চ্যাট স্পেসে নতুন সদস্যতা নিয়ে ইভেন্টগুলি গ্রহণকারী সদস্যতাগুলির জন্য ফিল্টার করতে,google.workspace.chat.message.v1.created
। -
TARGET_RESOURCE
: একটি টার্গেট রিসোর্স , এটির সম্পূর্ণ রিসোর্স নাম হিসাবে ফর্ম্যাট করা হয়েছে। উদাহরণস্বরূপ, একটি Google চ্যাট স্পেসের জন্য সদস্যতা দ্বারা ফিল্টার করতে,//chat.googleapis.com/spaces/ SPACE_ID
ব্যবহার করুন যেখানেspaces/ SPACE_ID
Space
রিসোর্সের জন্যname
ক্ষেত্র প্রতিনিধিত্ব করে।
-
সদস্যতা তালিকাভুক্ত করতে, আপনার Apps স্ক্রিপ্ট প্রকল্পে ফাংশন
listSubscriptions
চালান।
পাইথন
আপনার কাজের ডিরেক্টরিতে,
list_subscriptions.py
নামে একটি ফাইল তৈরি করুন এবং নিম্নলিখিত কোড যোগ করুন:"""List subscriptions.""" from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Specify required scopes. SCOPES = ['SCOPE'] # Authenticate with Google Workspace and get user authentication. flow = InstalledAppFlow.from_client_secrets_file('client_secrets.json', SCOPES) CREDENTIALS = flow.run_local_server() # Call the Workspace Events API using the service endpoint. service = build( 'workspaceevents', 'v1', credentials=CREDENTIALS, ) # Filter for event type (required). EVENT_TYPE = 'EVENT_TYPE' # Filter for target resource (optional). TARGET_RESOURCE = 'TARGET_RESOURCE' FILTER = f'event_types:"{EVENT_TYPE}" AND target_resource="{TARGET_RESOURCE}"' response = service.subscriptions().list(filter=FILTER).execute() print(response)
নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
-
SCOPE
: একটি OAuth স্কোপ যা সদস্যতা থেকে অন্তত একটি ইভেন্ট প্রকারকে সমর্থন করে । উদাহরণস্বরূপ, যদি আপনার সদস্যতা ইভেন্টগুলি একটি আপডেট করা চ্যাট স্পেস পায়,https://www.googleapis.com/auth/chat.spaces.readonly
। -
EVENT_TYPE
: CloudEvents স্পেসিফিকেশন অনুযায়ী একটি ইভেন্টের ধরন ফরম্যাট করা হয়েছে। উদাহরণস্বরূপ, Google চ্যাট স্পেসে নতুন সদস্যতা নিয়ে ইভেন্টগুলি গ্রহণকারী সদস্যতাগুলির জন্য ফিল্টার করতে,google.workspace.chat.message.v1.created
। -
TARGET_RESOURCE
: একটি টার্গেট রিসোর্স , এটির সম্পূর্ণ রিসোর্স নাম হিসাবে ফর্ম্যাট করা হয়েছে। উদাহরণস্বরূপ, একটি Google চ্যাট স্পেসের জন্য সদস্যতা দ্বারা ফিল্টার করতে,//chat.googleapis.com/spaces/ SPACE_ID
ব্যবহার করুন যেখানেspaces/ SPACE_ID
Space
রিসোর্সের জন্যname
ক্ষেত্র প্রতিনিধিত্ব করে।
-
আপনার কাজের ডিরেক্টরিতে, নিশ্চিত করুন যে আপনি আপনার OAuth ক্লায়েন্ট আইডি শংসাপত্রগুলি সংরক্ষণ করেছেন এবং ফাইলটির নাম দিয়েছেন
client_secrets.json
। কোড নমুনা এই JSON ফাইলটি Google Workspace-এর সাথে প্রমাণীকরণ করতে এবং ব্যবহারকারীর শংসাপত্র পেতে ব্যবহার করে। নির্দেশাবলীর জন্য, OAuth ক্লায়েন্ট আইডি শংসাপত্র তৈরি করুন দেখুন।সদস্যতা তালিকাভুক্ত করতে, আপনার টার্মিনালে নিম্নলিখিত চালান:
python3 list_subscriptions.py
Google Workspace Events API আপনার প্রশ্নের ফিল্টারের সাথে মেলে এমন Subscription
অবজেক্টের পেজিনেটেড অ্যারে প্রদান করে।