Google Workspace Events API ব্যবহার করে Google Chat অ্যাপ সাবস্ক্রাইব করতে পারে এমন Google Chat ইভেন্টের বর্ণনা এই পৃষ্ঠায় দেওয়া আছে। আপনার কোন ধরনের ইভেন্ট প্রয়োজন তা ঠিক করার পরে, Google Chat থেকে ইভেন্টগুলি পেতে শুরু করার জন্য একটি সাবস্ক্রিপশন তৈরি করুন ।
ইভেন্টগুলিতে সদস্যতা নেওয়ার পাশাপাশি, আপনি চ্যাট API এ কল করে ইভেন্টগুলির জন্য অনুসন্ধান করতে পারেন৷ চ্যাট এপিআই কল করা আপনাকে পর্যায়ক্রমিক ভিত্তিতে ইভেন্টগুলি পুনরুদ্ধার করতে দেয়, বা বিভ্রাটের কারণে সদস্যতা থেকে মিস করা ইভেন্টগুলিকে ধরতে দেয়৷ আপনি কীভাবে চ্যাট ইভেন্টগুলি পেতে এবং প্রতিক্রিয়া জানাতে পারেন সে সম্পর্কে জানতে, চ্যাট ডকুমেন্টেশনে Google চ্যাটের ইভেন্টগুলির সাথে কাজ করুন দেখুন৷
সমর্থিত চ্যাট লক্ষ্য সম্পদ
Google Workspace Events API সাবস্ক্রিপশন সমর্থন করে:
- স্পেস,
space
রিসোর্স হিসাবে উপস্থাপিত - ব্যবহারকারী, ক্লাউড আইডেন্টিটি API
user
সম্পদ হিসাবে প্রতিনিধিত্ব করা হয়
সমর্থিত চ্যাট ইভেন্ট
Google Workspace সাবস্ক্রিপশন আপনাকে Chat-এ নিম্নলিখিত ধরনের পরিবর্তনগুলি সম্পর্কে ইভেন্ট পেতে দেয়:
- স্পেসে নতুন, আপডেট করা বা মুছে ফেলা বার্তা ।
- একটি বার্তায় নতুন বা সরানো প্রতিক্রিয়া ।
- স্পেসে নতুন, আপডেট করা বা সরিয়ে দেওয়া সদস্যদের ৷
- আপনি যে স্থানটিতে সদস্যতা নিয়েছেন তার পরিবর্তন, যেমন একটি আপডেট করা স্থানের নাম বা বিবরণ।
সদস্যতা তৈরির জন্য ইভেন্টের ধরন
আপনি যখন একটি সাবস্ক্রিপশন তৈরি করেন, আপনি কোন ধরনের ইভেন্টগুলি পেতে চান তা নির্দিষ্ট করতে আপনি eventTypes[]
ফিল্ড ব্যবহার করেন। ইভেন্টের ধরনগুলি CloudEvents স্পেসিফিকেশন অনুযায়ী ফর্ম্যাট করা হয়, যেমন google.workspace. APPLICATION . RESOURCE . VERSION . ACTION
.
উদাহরণস্বরূপ, একটি চ্যাট স্পেসে যোগদানকারী ব্যবহারকারীদের সম্পর্কে ইভেন্টগুলি পেতে, আপনি স্পেসটিকে টার্গেট রিসোর্স হিসাবে এবং ইভেন্টের ধরনটিকে google.workspace.chat.membership.v1.created
হিসাবে নির্দিষ্ট করুন। প্রদত্ত ব্যবহারকারীর যে কোনো স্পেসে যোগদানের বিষয়ে ইভেন্টগুলি পেতে, আপনি ব্যবহারকারীকে টার্গেট রিসোর্স হিসেবে এবং ইভেন্টের ধরনটি google.workspace.chat.membership.v1.created
হিসেবে উল্লেখ করুন। ইভেন্টগুলি কীভাবে কাজ করে সে সম্পর্কে আরও জানতে, Google Workspace ইভেন্টগুলির কাঠামো দেখুন।
নিচের সারণীটি প্রদর্শন করে যে কোন ইভেন্ট প্রকারগুলি স্পেসগুলিতে সদস্যতা এবং ব্যবহারকারীদের সদস্যতার জন্য সমর্থিত। কোন ঘটনাকে ট্রিগার করে তার ব্যতিক্রম সম্পর্কে জানতে, সীমাবদ্ধতা দেখুন।
ইভেন্টের ধরণ | বিন্যাস | সম্পদ তথ্য | ||
---|---|---|---|---|
স্পেস সদস্যতা | ||||
একটি বার্তা পোস্ট করা হয়. | | | ||
একটি বার্তা আপডেট করা হয়. | | | ||
একটি বার্তা মুছে ফেলা হয়. | | | ||
একটি প্রতিক্রিয়া তৈরি হয়। | | | ||
একটি প্রতিক্রিয়া মুছে ফেলা হয়. | | | ||
স্পেসে একজন সদস্য যোগ করা হয়েছে। | | | ||
একটি সদস্য স্থান আপডেট করা হয়. | | | ||
একজন সদস্যকে স্থান থেকে সরানো হয়েছে। | | | ||
স্থান আপডেট করা হয়. | | | ||
স্থান মুছে ফেলা হয়. | | | ||
ব্যবহারকারীদের সদস্যতা | ||||
ব্যবহারকারী একটি স্থানের সদস্য হয়ে যায়। সব নতুন সদস্য ইভেন্ট ট্রিগার না. বিস্তারিত জানার জন্য, সীমাবদ্ধতা দেখুন | | | ||
একটি স্থান ব্যবহারকারীর সদস্যতা আপডেট করা হয়. | | | ||
ব্যবহারকারী একটি স্থান একটি সরাসরি সদস্য হিসাবে সরানো হয়. | | |
ব্যাচ ইভেন্ট প্রকার (শুধুমাত্র আউটপুট)
আপনি সাবস্ক্রাইব করা ইভেন্টের ধরনগুলি পাওয়ার পাশাপাশি, আপনার চ্যাট অ্যাপটি ব্যাচ ইভেন্টগুলিও পেতে পারে। একটি ব্যাচ ইভেন্ট হল একটি ইভেন্ট যা একই ধরণের অনেক ইভেন্টকে উপস্থাপন করে যা অল্প সময়ের মধ্যে ঘটে। একটি ব্যাচ ইভেন্টের পেলোডে সমস্ত পরিবর্তিত সংস্থানগুলির একটি তালিকা রয়েছে৷
উদাহরণস্বরূপ, যদি একজন ব্যবহারকারী একই সময়ে একটি স্পেসে 20 জন ব্যবহারকারীকে যোগ করেন, তাহলে আপনার চ্যাট অ্যাপ একটি ব্যাচ ইভেন্ট পেতে পারে ( google.workspace.chat.membership.v1.batchCreated
)। ইভেন্ট পেলোডে সমস্ত নতুন Membership
সংস্থানগুলির একটি তালিকা রয়েছে যা তৈরি করা হয়েছিল যখন ব্যবহারকারীরা সদস্যদের স্পেসে যুক্ত করেছিল।
আপনি সাবস্ক্রাইব করেন এমন যেকোনো ইভেন্টের জন্য আপনি একটি ব্যাচ ইভেন্ট পাবেন, তাই আপনি যখন সাবস্ক্রিপশন তৈরি করেন তখন আপনাকে ব্যাচ ইভেন্টগুলি নির্দিষ্ট করতে হবে না। উদাহরণস্বরূপ, আপনি যদি নতুন প্রতিক্রিয়াগুলিতে সদস্যতা নেন ( google.workspace.chat.reaction.v1.created
), আপনার চ্যাট অ্যাপটি স্বয়ংক্রিয়ভাবে ব্যাচ প্রতিক্রিয়া ইভেন্টগুলি ( google.workspace.chat.reaction.v1.batchCreated
) পাওয়ার জন্য কনফিগার হয়ে যায়।
নিম্নলিখিত টেবিলটি সাবস্ক্রিপশনের জন্য সম্ভাব্য ব্যাচ ইভেন্টগুলি প্রদর্শন করে:
ব্যাচ ইভেন্টের ধরন | বিন্যাস |
---|---|
একাধিক বার্তা পোস্ট করা হয়. | |
একাধিক বার্তা আপডেট করা হয়. | |
একাধিক বার্তা মুছে ফেলা হয়. | |
সৃষ্টি হয় একাধিক প্রতিক্রিয়া। | |
একাধিক প্রতিক্রিয়া মুছে ফেলা হয়. | |
সাবস্ক্রাইব করা স্পেসে একাধিক সদস্য যোগ করা হয়েছে, অথবা সাবস্ক্রাইব করা ব্যবহারকারীকে একাধিক স্পেসে যোগ করা হয়েছে। | |
সাবস্ক্রাইব করা জায়গায় বা সাবস্ক্রাইব করা ব্যবহারকারীর জন্য একাধিক সদস্যপদ আপডেট করা হয়। | |
সাবস্ক্রাইব করা স্থান থেকে একাধিক সদস্যকে সরানো হয়েছে, অথবা সদস্যতা নেওয়া ব্যবহারকারীকে একাধিক স্থান থেকে সরানো হয়েছে। | |
স্থান একাধিক আপডেট আছে. | |
ইভেন্ট ডেটা
এই বিভাগে ইভেন্ট ডেটা এবং চ্যাটের ইভেন্টের জন্য পেলোডের উদাহরণ বর্ণনা করা হয়েছে।
যখন আপনার Google Workspace সাবস্ক্রিপশন Chat থেকে একটি ইভেন্ট পায়, তখন data
ফিল্ডে ইভেন্টের পেলোড থাকে। এই পেলোডে পরিবর্তন করা Google Workspace রিসোর্স সম্পর্কে তথ্য রয়েছে। উদাহরণস্বরূপ, যদি আপনি একটি স্পেসে সদস্যতা ইভেন্টগুলিতে সদস্যতা নিয়ে থাকেন, তাহলে এই ইভেন্টগুলির পেলোডে spaces.membership
রিসোর্স সম্পর্কে তথ্য রয়েছে যা পরিবর্তিত হয়েছে৷
ইভেন্ট পেলোডে সম্পদ তথ্য
আপনি যখন একটি সাবস্ক্রিপশন তৈরি করেন, তখন আপনি নির্দিষ্ট করতে পারেন যে আপনি পেলোডটি সংস্থান সম্পর্কে বিশদ বিবরণ অন্তর্ভুক্ত করতে চান, বা শুধুমাত্র সম্পদের নাম। উদাহরণস্বরূপ, যদি আপনি একটি চ্যাট স্পেসে সদস্যদের সম্পর্কে ইভেন্টগুলি পেতে চান, তাহলে আপনি ইভেন্ট পেলোডে সদস্যপদ সংস্থানের কোন ক্ষেত্রগুলি পেতে চান তা নির্দিষ্ট করতে পারেন৷
নিচের টেবিলটি চ্যাট স্পেস spaces/AAAABBBBBB
এর সদস্যতার জন্য JSON পেলোডের উদাহরণ প্রদান করে। সাবস্ক্রিপশন প্রাপ্ত প্রতিটি ইভেন্টের জন্য, পেলোডটি ইভেন্টের data
ক্ষেত্রে উপস্থিত হয়:
উদাহরণ | ইভেন্টের ধরণ | JSON পেলোড |
---|---|---|
একজন ব্যবহারকারী স্পেসে একটি বার্তা পোস্ট করেন যা বলে "হ্যালো ওয়ার্ল্ড।" | | সম্পদ তথ্য অন্তর্ভুক্ত { "message": { "name": "spaces/AAAABBBBBB/messages/CCCCCCCCC.DDDDDDDDD", "sender": { "name": "users/1234567890987654321", "type": "HUMAN" }, "createTime": "2023-09-07T21:37:36.260127Z", "text": "Hello world", "thread": { "name": "spaces/AAAABBBBBB/threads/EEEEEEEEEEEE" }, "space": { "name": "spaces/AAAABBBBBB" }, "argumentText": "Hello world" } } রিসোর্স ডেটা বাদ দেয় { "message": { "name": "spaces/AAAABBBBBB/messages/CCCCCCCCC.DDDDDDDDD" } } |
একজন ব্যবহারকারী স্পেস ম্যানেজার হয়ে যায়। | | সম্পদ তথ্য অন্তর্ভুক্ত { "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321", "state": "JOINED", "member": { "name": "users/1234567890987654321", "type": "HUMAN" }, "createTime": "1970-01-01T00:00:00Z", "role": "ROLE_MANAGER" } } রিসোর্স ডেটা বাদ দেয় { "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321" } } |
একজন ব্যবহারকারী স্থানের বিবরণ "সিম্বাল ল্যাবসের জন্য বিক্রয় দল"-এ আপডেট করে। | google.workspace.chat.space.v1.updated | সম্পদ তথ্য অন্তর্ভুক্ত { "space": { "name": "spaces/AAAABBBBBB", "displayName": "Cymbal Sales", "spaceThreadingState": "THREADED_MESSAGES", "spaceType": "SPACE", "spaceDetails": { "description": "Sales team for Cymbal Labs." }, "spaceHistoryState": "HISTORY_ON" } } রিসোর্স ডেটা বাদ দেয় { "space": { "name": "spaces/AAAABBBBBB" } } |
দুই চ্যাট ব্যবহারকারী একই সময়ে স্পেসে যোগ করা হয়েছে। | google.workspace.chat.membership.v1.batchCreated | সম্পদ তথ্য অন্তর্ভুক্ত { "memberships": [ { "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321", "state": "JOINED", "member": { "name": "users/1234567890987654321", "type": "HUMAN" }, "createTime": "1970-01-01T00:00:00Z", "role": "ROLE_MEMBER" } }, { "membership": { "name": "spaces/AAAABBBBBB/members/987654321234567890", "state": "JOINED", "member": { "name": "users/987654321234567890", "type": "HUMAN" }, "createTime": "1970-01-01T00:00:00Z", "role": "ROLE_MEMBER" } } ] } রিসোর্স ডেটা বাদ দেয় { "memberships": [ { "membership": { "name": "spaces/AAAABBBBBB/members/1234567890987654321" } }, { "membership": { "name": "spaces/AAAABBBBBB/members/98765432123456789019" } } ] } |
একজন ব্যবহারকারী 😊 ইমোজি দিয়ে একটি বার্তায় প্রতিক্রিয়া জানায়। | google.workspace.chat.reaction.v1.created | সম্পদ তথ্য অন্তর্ভুক্ত { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222", "user": { "name": "users/1234567890987654321", "type": "HUMAN" }, "emoji": { "unicode": "😊" } } } রিসোর্স ডেটা বাদ দেয় { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222" } } |
ব্যবহারকারীরা 😊 ইমোজি এবং 😸 ইমোজি দিয়ে একটি বার্তায় প্রতিক্রিয়া জানান। | google.workspace.chat.reaction.v1.batchCreated | সম্পদ তথ্য অন্তর্ভুক্ত { "reactions": [ { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222", "user": { "name": "users/1234567890987654321", "type": "HUMAN" }, "emoji": { "unicode": "😊" } } }, { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/3333333333333333.444444444444444", "user": { "name": "users/98765431234564321", "type": "HUMAN" }, "emoji": { "unicode": "😸" } } } ] } রিসোর্স ডেটা বাদ দেয় { "reactions": [ { "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/1111111111111111.222222222222222" }, "reaction": { "name": "spaces/AAAABBBBBB/messages/123456789.123456789/reactions/3333333333333333.444444444444444", } } ] } |
সীমাবদ্ধতা
- ব্যবহারকারীদের সাবস্ক্রিপশনের জন্য, সরাসরি বার্তা বা নামহীন গ্রুপ চ্যাটে নতুন সদস্যদের সম্পর্কে ইভেন্টগুলি (
google.workspace.chat.membership.v1.created
), শুধুমাত্র প্রথম বার্তা পোস্ট করার পরেই ট্রিগার হয়৷ - স্থান ইতিহাসের পরিবর্তনগুলি আপডেট করা স্থান ইভেন্টগুলিকে ট্রিগার করে না (ইভেন্টের ধরন:
google.workspace.chat.spaces.v1.updated
)। - সদস্যতা ইভেন্টগুলি পেতে, ব্যবহারকারীকে অবশ্যই স্থানের সরাসরি সদস্য হতে হবে। যদি কোনও ব্যবহারকারীকে Google গ্রুপের মাধ্যমে কোনও স্পেসে যোগ করা, আপডেট করা বা পরোক্ষভাবে সরিয়ে দেওয়া হয়, তাহলে সদস্যতা সেই সদস্যতা ইভেন্টগুলি গ্রহণ করে না। Google গোষ্ঠীর সদস্যপদগুলি কীভাবে কাজ করে তা বোঝার জন্য, একটি স্পেসে একটি Google গ্রুপ যুক্ত করুন দেখুন।
সম্পর্কিত বিষয়
- Google Workspace ইভেন্টের কাঠামো
- OAuth স্কোপ বেছে নিন
- চ্যাট ইভেন্টগুলি পেতে একটি সদস্যতা তৈরি করুন৷