এই পৃষ্ঠায় subscriptions.update() মেথড ব্যবহার করে কীভাবে একটি Google Workspace সাবস্ক্রিপশন রিনিউ করতে হয় তা ব্যাখ্যা করা হয়েছে। কোনো সাবস্ক্রিপশনের মেয়াদ শেষ হওয়ার সময় আপডেট করতে, যেমন—সাবস্ক্রিপশনটিকে সম্ভাব্য সর্বোচ্চ মেয়াদের জন্য রিনিউ করা, অথবা নির্দিষ্ট রিসোর্স সম্পর্কে গ্রহণ করার জন্য ইভেন্টের প্রকারের তালিকা আপডেট করতে এই মেথডটি ব্যবহার করুন।
অ্যাপস স্ক্রিপ্ট
- একটি গুগল ওয়ার্কস্পেস সাবস্ক্রিপশন। এটি তৈরি করতে, ‘সাবস্ক্রিপশন তৈরি করুন’ দেখুন।
- একটি অ্যাপস স্ক্রিপ্ট প্রকল্প:
- অ্যাপস স্ক্রিপ্ট দ্বারা স্বয়ংক্রিয়ভাবে তৈরি ডিফল্ট প্রজেক্টের পরিবর্তে আপনার গুগল ক্লাউড প্রজেক্ট ব্যবহার করুন।
- OAuth সম্মতি স্ক্রিন কনফিগার করার জন্য আপনি যে সমস্ত স্কোপ যোগ করেছেন, সেই স্কোপগুলি আপনার অ্যাপস স্ক্রিপ্ট প্রজেক্টের
appsscript.jsonফাইলে অবশ্যই যোগ করতে হবে। উদাহরণস্বরূপ, যদি আপনিchat.messagesস্কোপটি নির্দিষ্ট করে থাকেন, তাহলে নিম্নলিখিতটি যোগ করুন: Google Workspace Eventsঅ্যাডভান্সড সার্ভিসটি সক্রিয় করুন ।
"oauthScopes": [ "https://www.googleapis.com/auth/chat.messages" ]
সাবস্ক্রিপশনের প্রতিটি ইভেন্ট টাইপের জন্য প্রমাণীকরণ এবং একটি উপযুক্ত অনুমোদন পরিধি প্রয়োজন:
- ব্যবহারকারী প্রমাণীকরণের জন্য এক বা একাধিক স্কোপ প্রয়োজন, যেগুলো সাবস্ক্রিপশনের ইভেন্ট টাইপগুলোর মধ্যে অন্তত একটিকে সমর্থন করে। একটি স্কোপ শনাক্ত করতে, ‘ইভেন্ট টাইপ অনুযায়ী স্কোপ’ দেখুন।
- একটি চ্যাট অ্যাপ হিসেবে কোনো চ্যাট ইভেন্টে সাবস্ক্রাইব করার জন্য, এককালীন অ্যাডমিনিস্ট্রেটর অনুমোদনের মাধ্যমে অ্যাপ প্রমাণীকরণ প্রয়োজন।
পাইথন
- পাইথন ৩.৬ বা তার বেশি
- পিপ প্যাকেজ ম্যানেজমেন্ট টুল
- পাইথনের জন্য সর্বশেষ গুগল ক্লায়েন্ট লাইব্রেরি। এগুলো ইনস্টল বা আপডেট করতে, আপনার কমান্ড-লাইন ইন্টারফেসে নিম্নলিখিত কমান্ডটি চালান:
pip3 install --upgrade google-api-python-client google-auth-oauthlib
- একটি গুগল ওয়ার্কস্পেস সাবস্ক্রিপশন। এটি তৈরি করতে, ‘সাবস্ক্রিপশন তৈরি করুন’ দেখুন।
সাবস্ক্রিপশনের প্রতিটি ইভেন্ট টাইপের জন্য প্রমাণীকরণ এবং একটি উপযুক্ত অনুমোদন পরিধি প্রয়োজন:
- ব্যবহারকারী প্রমাণীকরণের জন্য এক বা একাধিক স্কোপ প্রয়োজন, যেগুলো সাবস্ক্রিপশনের ইভেন্ট টাইপগুলোর মধ্যে অন্তত একটিকে সমর্থন করে। একটি স্কোপ শনাক্ত করতে, ‘ইভেন্ট টাইপ অনুযায়ী স্কোপ’ দেখুন।
- একটি চ্যাট অ্যাপ হিসেবে কোনো চ্যাট ইভেন্টে সাবস্ক্রাইব করার জন্য, এককালীন অ্যাডমিনিস্ট্রেটর অনুমোদনের মাধ্যমে অ্যাপ প্রমাণীকরণ প্রয়োজন।
গুগল ওয়ার্কস্পেস সাবস্ক্রিপশন নবায়ন করুন
এই অংশে, একটি সাবস্ক্রিপশনকে তার সর্বোচ্চ মেয়াদ পর্যন্ত নবায়ন করতে Google Workspace Events API-এর subscriptions.update() মেথডটি ব্যবহার করুন। সর্বোচ্চ মেয়াদ নির্দিষ্ট করতে, Subscription রিসোর্সের ttl ফিল্ডটি 0 -তে আপডেট করুন।
সর্বোচ্চ মেয়াদকাল নির্ভর করে ইভেন্ট পেলোডে কী ধরনের রিসোর্স ডেটা অন্তর্ভুক্ত আছে তার উপর। মেয়াদকাল সম্পর্কে আরও জানতে, Google Workspace ইভেন্টের ইভেন্ট ডেটা দেখুন।
গুগল ওয়ার্কস্পেস সাবস্ক্রিপশন নবায়ন করতে:
অ্যাপস স্ক্রিপ্ট
আপনার অ্যাপস স্ক্রিপ্ট প্রজেক্টে,
updateSubscriptionনামে একটি নতুন স্ক্রিপ্ট ফাইল তৈরি করুন এবং নিম্নলিখিত কোডটি যোগ করুন:function updateSubscription() { // The name of the subscription to update. const name = 'subscriptions/SUBSCRIPTION_ID'; // Call the Workspace Events API using the advanced service. const response = WorkspaceEvents.Subscriptions.patch({ ttl: '0s', }, name); console.log(response); }নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
Google Workspace সাবস্ক্রিপশন আপডেট করতে, আপনার Apps Script প্রজেক্টে
updateSubscriptionফাংশনটি চালান।
পাইথন
আপনার ওয়ার্কিং ডিরেক্টরিতে
update_subscription.pyনামে একটি ফাইল তৈরি করুন এবং নিম্নলিখিত কোডটি যোগ করুন:"""Update subscription.""" from google_auth_oauthlib.flow import InstalledAppFlow from googleapiclient.discovery import build # Specify required scopes. SCOPES = [SCOPES] # Authenticate with Google Workspace and get user authentication. flow = InstalledAppFlow.from_client_secrets_file('credentials.json', SCOPES) CREDENTIALS = flow.run_local_server() # Call the Workspace Events API using the service endpoint. service = build( 'workspaceevents', 'v1', credentials=CREDENTIALS, ) BODY = { 'ttl': {'seconds': 0}, } NAME = 'subscriptions/SUBSCRIPTION_ID' response = ( service.subscriptions() .patch(name=NAME, updateMask='ttl', body=BODY) .execute() ) print(response)নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
-
SCOPES: এক বা একাধিক OAuth স্কোপ যা সাবস্ক্রিপশনের প্রতিটি ইভেন্ট টাইপকে সাপোর্ট করে। এটি স্ট্রিং-এর একটি অ্যারে হিসাবে ফরম্যাট করা হয়। একাধিক স্কোপ তালিকাভুক্ত করতে, কমা দিয়ে আলাদা করুন। উদাহরণস্বরূপ,'https://www.googleapis.com/auth/chat.spaces.readonly', 'https://www.googleapis.com/auth/chat.memberships.readonly'। -
SUBSCRIPTION_ID: সাবস্ক্রিপশনের আইডি। আইডিটি পেতে, আপনি নিম্নলিখিত যেকোনো একটি ব্যবহার করতে পারেন:
-
আপনার ওয়ার্কিং ডিরেক্টরিতে, আপনার OAuth ক্লায়েন্ট আইডি ক্রেডেনশিয়ালগুলো সংরক্ষণ করেছেন এবং ফাইলটির নাম
credentials.jsonরেখেছেন কিনা তা নিশ্চিত করুন। কোড স্যাম্পলটি গুগল ওয়ার্কস্পেসের সাথে প্রমাণীকরণ করতে এবং ব্যবহারকারীর ক্রেডেনশিয়াল পেতে এই JSON ফাইলটি ব্যবহার করে। নির্দেশাবলীর জন্য, "Create OAuth client ID credentials" দেখুন।Google Workspace সাবস্ক্রিপশন আপডেট করতে, আপনার টার্মিনালে নিম্নলিখিত কমান্ডটি চালান:
python3 update_subscription.py
Subscription রিসোর্সের ইনস্ট্যান্সটি থাকে। আপডেট করা Subscription রিসোর্স সম্পর্কে বিস্তারিত জানতে, operations.get() মেথডটি ব্যবহার করুন এবং আপনার subscriptions.update() রিকোয়েস্ট থেকে প্রাপ্ত Operation রিসোর্সটি নির্দিষ্ট করুন। অন্যথায়, আপনি যদি সাবস্ক্রিপশনের পূর্ববর্তী কোনো ভার্সনের Operation রিসোর্স নির্দিষ্ট করেন, তাহলে রেসপন্সটি খালি থাকবে।
গুগল চ্যাট অ্যাপ হিসেবে সাবস্ক্রিপশন আপডেট বা নবায়ন করুন
আপনি একজন ব্যবহারকারী হিসেবে নয়, বরং একটি চ্যাট অ্যাপ হিসেবে চ্যাট ইভেন্টের সাবস্ক্রিপশন আপডেট বা নবায়ন করতে পারেন। প্রক্রিয়াটি একই রকম, তবে কিছু ব্যতিক্রম রয়েছে:
ব্যবহারকারী প্রমাণীকরণের পরিবর্তে, এককালীন প্রশাসক অনুমোদনের মাধ্যমে একটি চ্যাট অ্যাপ হিসেবে প্রমাণীকরণ করুন ।
চ্যাট অ্যাপকে চ্যাট ইভেন্টগুলিতে সাবস্ক্রাইব করার অনুমতি দেয় এমন অনুমোদন স্কোপগুলি নির্দিষ্ট করুন। এই অনুমোদন স্কোপগুলি সর্বদা
chat.appদিয়ে শুরু হয় এবং নিম্নলিখিতগুলি অন্তর্ভুক্ত করে:-
https://www.googleapis.com/auth/chat.app.memberships: চ্যাট স্পেসের মেম্বার ইভেন্টগুলোতে সাবস্ক্রাইব করুন। -
https://www.googleapis.com/auth/chat.app.memberships.readonly: চ্যাট স্পেসের মেম্বার ইভেন্টগুলোতে সাবস্ক্রাইব করুন। -
https://www.googleapis.com/auth/chat.app.messages.readonly: চ্যাট স্পেসের মেসেজ ইভেন্টগুলিতে সাবস্ক্রাইব করুন। -
https://www.googleapis.com/auth/chat.app.spaces: চ্যাট স্পেস ইভেন্টগুলিতে সাবস্ক্রাইব করুন। -
https://www.googleapis.com/auth/chat.app.spaces.readonly: চ্যাট স্পেস ইভেন্টগুলিতে সাবস্ক্রাইব করুন।
-
এমন একটি স্ক্রিপ্ট লিখুন যা গুগল ওয়ার্কস্পেস ইভেন্টস এপিআই (Google Workspace Events API)-কে কল করে।
নিম্নলিখিত কোড নমুনাটি একটি চ্যাট অ্যাপের গুগল ওয়ার্কস্পেস সাবস্ক্রিপশন আপডেট করে:
পাইথন
"""Update subscription."""
from google.oauth2 import service_account
from apiclient.discovery import build
# Specify required scopes.
SCOPES = [SCOPES]
# Specify service account details.
CREDENTIALS = (
service_account.Credentials.from_service_account_file('credentials.json')
.with_scopes(SCOPES)
)
# Call the Workspace Events API using the service endpoint.
service = build(
'workspaceevents',
'v1beta',
credentials=CREDENTIALS,
)
BODY = {
'ttl': {'seconds': 0},
}
NAME = 'subscriptions/SUBSCRIPTION_ID'
response = (
service.subscriptions()
.patch(name=NAME, updateMask='ttl', body=BODY)
.execute()
)
print(response)
নিম্নলিখিতগুলি প্রতিস্থাপন করুন:
SCOPES: সেইসব অথরাইজেশন স্কোপ নির্দিষ্ট করুন যা চ্যাট অ্যাপকে চ্যাট ইভেন্টগুলিতে সাবস্ক্রাইব করার অনুমতি দেয়। এই অথরাইজেশন স্কোপগুলি সর্বদাchat.appদিয়ে শুরু হয় এবং নিম্নলিখিতগুলি অন্তর্ভুক্ত করে:-
https://www.googleapis.com/auth/chat.app.memberships: চ্যাট স্পেসের মেম্বার ইভেন্টগুলোতে সাবস্ক্রাইব করুন। -
https://www.googleapis.com/auth/chat.app.memberships.readonly: চ্যাট স্পেসের মেম্বার ইভেন্টগুলোতে সাবস্ক্রাইব করুন। -
https://www.googleapis.com/auth/chat.app.messages.readonly: চ্যাট স্পেসের মেসেজ এবং রিঅ্যাকশন ইভেন্টগুলিতে সাবস্ক্রাইব করুন। -
https://www.googleapis.com/auth/chat.app.spaces: চ্যাট স্পেস ইভেন্টগুলিতে সাবস্ক্রাইব করুন। -
https://www.googleapis.com/auth/chat.app.spaces.readonly: চ্যাট স্পেস ইভেন্টগুলিতে সাবস্ক্রাইব করুন।
-
SUBSCRIPTION_ID: সাবস্ক্রিপশনের আইডি। আইডিটি পেতে, আপনি নিম্নলিখিত যেকোনো একটি ব্যবহার করতে পারেন: