Google চ্যাট ইভেন্টগুলিতে সদস্যতা নিন

এই পৃষ্ঠায় সেইসব চ্যাট ইভেন্টগুলির বর্ণনা দেওয়া হয়েছে, যেগুলিতে একটি চ্যাট অ্যাপ গুগল ওয়ার্কস্পেস ইভেন্টস এপিআই (Google Workspace Events API) ব্যবহার করে সাবস্ক্রাইব করতে পারে। আপনার কোন ধরনের ইভেন্ট প্রয়োজন তা ঠিক করার পর, চ্যাট থেকে ইভেন্ট পেতে একটি সাবস্ক্রিপশন তৈরি করুন

ইভেন্ট সাবস্ক্রাইব করার পাশাপাশি, আপনি গুগল চ্যাট এপিআই (Google Chat API) কল করেও ইভেন্টের তথ্য জানতে পারেন। চ্যাট এপিআই কল করার মাধ্যমে আপনি নির্দিষ্ট সময় অন্তর ইভেন্ট সংগ্রহ করতে পারেন, অথবা কোনো বিভ্রাটের কারণে সাবস্ক্রিপশন থেকে বাদ পড়া ইভেন্টগুলো দেখে নিতে পারেন। চ্যাট ইভেন্ট গ্রহণ এবং সেগুলোর উত্তর দেওয়ার বিভিন্ন উপায় সম্পর্কে জানতে, চ্যাট ডকুমেন্টেশনের ‘চ্যাটের ইভেন্ট নিয়ে কাজ করুন’ (Work with events from Chat) অংশটি দেখুন।

সমর্থিত চ্যাট ইভেন্টগুলি

গুগল ওয়ার্কস্পেস সাবস্ক্রিপশনের মাধ্যমে আপনি চ্যাটে নিম্নলিখিত ধরনের পরিবর্তন সম্পর্কিত ইভেন্টগুলো পেতে পারেন:

  • এই পরিসরে নতুন, হালনাগাদকৃত বা মুছে ফেলা বার্তা
  • কোনো বার্তার নতুন বা অপসারিত প্রতিক্রিয়া
  • এই পরিসরে নতুন, হালনাগাদকৃত বা অপসারিত সদস্য
  • আপনার সাবস্ক্রাইব করা স্পেসের পরিবর্তন, যেমন স্পেসের নাম বা বিবরণের হালনাগাদ।

ইভেন্টের জন্য আপনি যে রিসোর্সগুলো নিরীক্ষণ করতে পারেন

ইভেন্ট গ্রহণ করার জন্য, আপনাকে নিরীক্ষণের জন্য একটি চ্যাট রিসোর্স নির্দিষ্ট করতে হয়, যাকে সাবস্ক্রিপশনের টার্গেট রিসোর্স বলা হয়।

গুগল ওয়ার্কস্পেস ইভেন্টস এপিআই চ্যাটের জন্য নিম্নলিখিত টার্গেট রিসোর্সগুলোকে সমর্থন করে:

লক্ষ্য সম্পদ ফর্ম্যাট সীমাবদ্ধতা
মহাকাশ

//chat.googleapis.com/spaces/ SPACE

যেখানে SPACE হলো চ্যাট এপিআই space রিসোর্সের নামের মধ্যে থাকা আইডি। আপনি স্পেসের URL থেকে অথবা spaces.list() মেথড ব্যবহার করে আইডিটি পেতে পারেন।

যে চ্যাট ব্যবহারকারী বা চ্যাট অ্যাপ সাবস্ক্রিপশন অনুমোদন করে, তাকে অবশ্যই তার গুগল ওয়ার্কস্পেস বা গুগল অ্যাকাউন্টের মাধ্যমে স্পেসটির সদস্য হতে হবে। সমর্থন করে:
একজন ব্যবহারকারীর জন্য সমস্ত স্থান

//chat.googleapis.com/spaces/-

সাবস্ক্রিপশনটি শুধুমাত্র সেই স্পেসগুলির ইভেন্ট গ্রহণ করে, যেগুলির সদস্য ব্যবহারকারী তার গুগল ওয়ার্কস্পেস বা গুগল অ্যাকাউন্টের মাধ্যমে। এটি শুধুমাত্র ব্যবহারকারী প্রমাণীকরণ সমর্থন করে।
ব্যবহারকারী

//cloudidentity.googleapis.com/users/ USER

যেখানে USER হলো চ্যাট এপিআই user রিসোর্সের রিসোর্স নামে থাকা আইডি। বিস্তারিত জানতে, গুগল চ্যাট ব্যবহারকারীদের শনাক্তকরণ ও নির্দিষ্টকরণ দেখুন।

সাবস্ক্রিপশনটি শুধুমাত্র সেই ব্যবহারকারীর ইভেন্ট গ্রহণ করে যিনি সাবস্ক্রিপশনটি অনুমোদন করেছেন। একজন ব্যবহারকারী অন্য ব্যবহারকারীদের পক্ষ থেকে সাবস্ক্রিপশন অনুমোদন করতে পারেন না। এটি শুধুমাত্র ব্যবহারকারী প্রমাণীকরণ সমর্থন করে।

সাবস্ক্রিপশন তৈরির জন্য ইভেন্টের প্রকারভেদ

সাবস্ক্রিপশন তৈরি করার সময়, আপনি কোন ধরনের ইভেন্ট পেতে চান তা নির্দিষ্ট করতে eventTypes[] ফিল্ডটি ব্যবহার করুন। ইভেন্টের ধরনগুলো CloudEvents স্পেসিফিকেশন অনুযায়ী ফরম্যাট করা হয়, যেমন google.workspace. APPLICATION . RESOURCE . VERSION . ACTION .

উদাহরণস্বরূপ, কোনো চ্যাট স্পেসে ব্যবহারকারীদের যোগদানের ইভেন্ট পেতে, টার্গেট রিসোর্স হিসেবে স্পেসটি এবং ইভেন্ট টাইপ হিসেবে google.workspace.chat.membership.v1.created উল্লেখ করুন। কোনো নির্দিষ্ট ব্যবহারকারীর যেকোনো স্পেসে যোগদানের ইভেন্ট পেতে, টার্গেট রিসোর্স হিসেবে ব্যবহারকারীকে এবং ইভেন্ট টাইপ হিসেবে google.workspace.chat.membership.v1.created উল্লেখ করুন। ইভেন্ট কীভাবে কাজ করে সে সম্পর্কে আরও জানতে, Google Workspace ইভেন্টের কাঠামো দেখুন।

নিম্নলিখিত সারণীতে দেখানো হয়েছে যে স্পেসের সাবস্ক্রিপশন এবং ব্যবহারকারীর সাবস্ক্রিপশনের জন্য কোন ধরনের ইভেন্ট সমর্থিত। কোনো ইভেন্ট কীসের কারণে ট্রিগার হয়, তার ব্যতিক্রম সম্পর্কে জানতে সীমাবদ্ধতা (Limitations) দেখুন।

ইভেন্টের ধরণ ফর্ম্যাট সম্পদ ডেটা
স্থানগুলির জন্য সাবস্ক্রিপশন
একটি বার্তা পোস্ট করা হয়েছে।

google.workspace.chat.message.v1.created

space.message

একটি বার্তা আপডেট করা হয়েছে।

google.workspace.chat.message.v1.updated

space.message

একটি বার্তা মুছে ফেলা হয়েছে।

google.workspace.chat.message.v1.deleted

space.message

একটি প্রতিক্রিয়া সৃষ্টি হয়।

google.workspace.chat.reaction.v1.created

space.message.reaction

একটি প্রতিক্রিয়া মুছে ফেলা হয়েছে।

google.workspace.chat.reaction.v1.deleted

space.message.reaction

স্থানটিতে একজন সদস্য যুক্ত করা হয়।

google.workspace.chat.membership.v1.created

space.membership

স্থানটিতে একজন সদস্যকে হালনাগাদ করা হয়।

google.workspace.chat.membership.v1.updated

space.membership

একজন সদস্যকে স্থানটি থেকে সরিয়ে দেওয়া হয়েছে।

google.workspace.chat.membership.v1.deleted

space.membership

স্থানটি হালনাগাদ করা হয়েছে।

google.workspace.chat.space.v1.updated

space

স্থানটি মুছে ফেলা হয়েছে।

google.workspace.chat.space.v1.deleted

space

ব্যবহারকারীদের সাবস্ক্রিপশন
ব্যবহারকারী একটি স্থানের সদস্য হন।

সকল নতুন সদস্য ইভেন্ট ট্রিগার করে না। বিস্তারিত জানতে, সীমাবদ্ধতা দেখুন।

google.workspace.chat.membership.v1.created

space.membership

ব্যবহারকারীর কোনো স্পেসের সদস্যপদ হালনাগাদ করা হয়েছে।

google.workspace.chat.membership.v1.updated

space.membership

ব্যবহারকারীকে একটি স্পেসের সরাসরি সদস্যপদ থেকে অপসারণ করা হয়েছে।

google.workspace.chat.membership.v1.deleted

space.membership

ব্যাচ ইভেন্টের প্রকারভেদ (শুধুমাত্র আউটপুট)

আপনার সাবস্ক্রাইব করা ইভেন্টের ধরনগুলো পাওয়ার পাশাপাশি, আপনার চ্যাট অ্যাপ ব্যাচ ইভেন্টও পেতে পারে। ব্যাচ ইভেন্ট হলো এমন একটি ইভেন্ট যা অল্প সময়ের মধ্যে ঘটা একই ধরনের অনেকগুলো ইভেন্টকে প্রতিনিধিত্ব করে। একটি ব্যাচ ইভেন্টের পেলোডে সমস্ত পরিবর্তিত রিসোর্সের একটি তালিকা থাকে।

উদাহরণস্বরূপ, যদি কোনো ব্যবহারকারী একই সময়ে একটি স্পেসে ২০ জন ব্যবহারকারীকে যুক্ত করেন, তাহলে আপনার চ্যাট অ্যাপ একটি ব্যাচ ইভেন্ট ( google.workspace.chat.membership.v1.batchCreated ) পেতে পারে। এই ইভেন্টের পেলোডে সেই সমস্ত নতুন Membership রিসোর্সের একটি তালিকা থাকে, যেগুলো ব্যবহারকারী কর্তৃক স্পেসটিতে সদস্য যুক্ত করার ফলে তৈরি হয়েছিল।

আপনি যে কোনো ইভেন্ট টাইপের জন্য একটি ব্যাচ ইভেন্ট পেয়ে থাকেন, তাই সাবস্ক্রিপশন তৈরি করার সময় আপনাকে ব্যাচ ইভেন্ট নির্দিষ্ট করে দেওয়ার প্রয়োজন নেই। উদাহরণস্বরূপ, আপনি যদি নতুন রিঅ্যাকশনের ( google.workspace.chat.reaction.v1.created ) জন্য সাবস্ক্রাইব করেন, তাহলে আপনার চ্যাট অ্যাপটি স্বয়ংক্রিয়ভাবে ব্যাচ রিঅ্যাকশন ইভেন্ট ( google.workspace.chat.reaction.v1.batchCreated ) গ্রহণ করার জন্য কনফিগার হয়ে যাবে।

নিম্নলিখিত সারণিতে একটি সাবস্ক্রিপশনের জন্য সম্ভাব্য ব্যাচ ইভেন্টগুলি দেখানো হয়েছে:

ব্যাচ ইভেন্টের ধরণ ফর্ম্যাট
একাধিক বার্তা পোস্ট করা হয়েছে।

google.workspace.chat.message.v1.batchCreated

একাধিক বার্তা আপডেট করা হয়েছে।

google.workspace.chat.message.v1.batchUpdated

একাধিক বার্তা মুছে ফেলা হয়েছে।

google.workspace.chat.message.v1.batchDeleted

একাধিক প্রতিক্রিয়া সৃষ্টি হয়।

google.workspace.chat.reaction.v1.batchCreated

একাধিক প্রতিক্রিয়া মুছে ফেলা হয়েছে।

google.workspace.chat.reaction.v1.batchDeleted

সাবস্ক্রাইব করা স্পেসে একাধিক সদস্য যুক্ত করা হয়েছে, অথবা সাবস্ক্রাইব করা ব্যবহারকারীকে একাধিক স্পেসে যুক্ত করা হয়েছে।

google.workspace.chat.membership.v1.batchCreated

সাবস্ক্রাইব করা স্পেসে অথবা সাবস্ক্রাইব করা ব্যবহারকারীর জন্য একাধিক সদস্যপদ আপডেট করা হয়।

google.workspace.chat.membership.v1.batchUpdated

সাবস্ক্রাইব করা স্পেস থেকে একাধিক সদস্যকে সরিয়ে দেওয়া হয়েছে, অথবা সাবস্ক্রাইব করা ব্যবহারকারীকে একাধিক স্পেস থেকে সরিয়ে দেওয়া হয়েছে।

google.workspace.chat.membership.v1.batchDeleted

স্থানটিতে একাধিক আপডেট করা হয়েছে।

google.workspace.chat.space.v1.batchUpdated

ইভেন্টের ডেটা

এই বিভাগে চ্যাটের ইভেন্ট ডেটা এবং ইভেন্টের উদাহরণ পেলোড বর্ণনা করা হয়েছে।

যখন আপনার Google Workspace সাবস্ক্রিপশন চ্যাট থেকে কোনো ইভেন্ট পায়, তখন data ফিল্ডটিতে ইভেন্টটির পেলোড থাকে। এই পেলোডে পরিবর্তিত হওয়া Google Workspace রিসোর্স সম্পর্কিত তথ্য থাকে। উদাহরণস্বরূপ, যদি আপনি কোনো স্পেসের মেম্বারশিপ ইভেন্টগুলিতে সাবস্ক্রাইব করে থাকেন, তাহলে এই ইভেন্টগুলির পেলোডে পরিবর্তিত হওয়া spaces.membership রিসোর্স সম্পর্কিত তথ্য থাকে।

ইভেন্ট পেলোডে থাকা রিসোর্স ডেটা

যখন আপনি একটি সাবস্ক্রিপশন তৈরি করেন, তখন আপনি নির্দিষ্ট করে দিতে পারেন যে পেলোডে রিসোর্সটির বিবরণ অন্তর্ভুক্ত থাকবে, নাকি শুধু রিসোর্সটির নাম থাকবে। উদাহরণস্বরূপ, যদি আপনি কোনো চ্যাট স্পেসের সদস্যদের সম্পর্কে ইভেন্ট পেতে চান, তাহলে নির্দিষ্ট করে দিন যে একটি মেম্বারশিপ রিসোর্সের কোন ফিল্ডগুলো আপনি ইভেন্ট পেলোডে পেতে চান।

নিম্নলিখিত সারণীতে spaces/AAAABBBBBB চ্যাট স্পেসের সাবস্ক্রিপশনের জন্য JSON পেলোডের উদাহরণ দেওয়া হয়েছে। সাবস্ক্রিপশনটি যে প্রতিটি ইভেন্ট গ্রহণ করে, তার পেলোডটি ইভেন্টের data ফিল্ডে প্রদর্শিত হয়:

উদাহরণ ইভেন্টের ধরণ JSON পেলোড

একজন ব্যবহারকারী ওই ফাঁকা জায়গায় "হ্যালো ওয়ার্ল্ড" লেখা একটি বার্তা পোস্ট করেন।

google.workspace.chat.message.v1.created

সম্পদ তথ্য অন্তর্ভুক্ত:

{
    "message":
    {
        "name": "spaces/SPACE_ID/messages/MESSAGE_ID",
        "sender":
        {
            "name": "users/USER_ID",
            "type": "HUMAN"
        },
        "createTime": "2023-09-07T21:37:36.260127Z",
        "text": "Hello world",
        "thread":
        {
            "name": "spaces/SPACE_ID/threads/THREAD_ID"
        },
        "space":
        {
            "name": "spaces/SPACE_ID"
        },
        "argumentText": "Hello world"
    }
}
      

রিসোর্স ডেটা বাদ দেওয়া হয়েছে:

{
    "message":
    {
        "name": "spaces/SPACE_ID/messages/MESSAGE_ID"
    }
}
      
একজন ব্যবহারকারী স্পেস ম্যানেজার হন।

google.workspace.chat.membership.v1.updated

সম্পদ তথ্য অন্তর্ভুক্ত:

{
    "membership":
    {
        "name": "spaces/SPACE_ID/members/MEMBER_ID",
        "state": "JOINED",
        "member":
        {
            "name": "users/USER_ID",
            "type": "HUMAN"
        },
        "createTime": "1970-01-01T00:00:00Z",
        "role": "ROLE_MANAGER"
    }
}
      

রিসোর্স ডেটা বাদ দেওয়া হয়েছে:

{
    "membership":
    {
        "name": "spaces/SPACE_ID/members/MEMBER_ID"
    }
}
      
একজন ব্যবহারকারী স্পেসটির বিবরণ আপডেট করে "সিম্বল ল্যাবসের সেলস টিম" করেছেন। google.workspace.chat.space.v1.updated

সম্পদ তথ্য অন্তর্ভুক্ত:

{
    "space":
    {
        "name": "spaces/SPACE_ID",
        "displayName": "Cymbal Sales",
        "spaceThreadingState": "THREADED_MESSAGES",
        "spaceType": "SPACE",
        "spaceDetails":
        {
            "description": "Sales team for Cymbal Labs."
        },
        "spaceHistoryState": "HISTORY_ON"
    }
}
      

রিসোর্স ডেটা বাদ দেওয়া হয়েছে:

{
    "space":
    {
        "name": "spaces/SPACE_ID"
    }
}
      
একই সময়ে দুজন চ্যাট ব্যবহারকারীকে স্পেসটিতে যুক্ত করা হয়েছিল। google.workspace.chat.membership.v1.batchCreated

সম্পদ তথ্য অন্তর্ভুক্ত:

{
    "memberships": [
        {
          "membership": {
            "name": "spaces/SPACE_ID/members/MEMBER_ID",
            "state": "JOINED",
            "member":
            {
                "name": "users/USER_ID",
                "type": "HUMAN"
            },
            "createTime": "1970-01-01T00:00:00Z",
            "role": "ROLE_MEMBER"
          }
        },
        {
          "membership": {
            "name": "spaces/SPACE_ID/members/MEMBER_ID",
            "state": "JOINED",
            "member":
            {
                "name": "users/USER_ID",
                "type": "HUMAN"
            },
            "createTime": "1970-01-01T00:00:00Z",
            "role": "ROLE_MEMBER"
          }
        }
    ]
}
      

রিসোর্স ডেটা বাদ দেওয়া হয়েছে:

{
    "memberships": [
        {
          "membership": {
            "name": "spaces/SPACE_ID/members/MEMBER_ID"
          }
        },
        {
          "membership": {
            "name": "spaces/SPACE_ID/members/MEMBER_ID"
          }
        }
    ]
}
      
একজন ব্যবহারকারী একটি বার্তার জবাবে 😊 ইমোজি ব্যবহার করেন। google.workspace.chat.reaction.v1.created

সম্পদ তথ্য অন্তর্ভুক্ত:

{
    "reaction":
    {
        "name": "spaces/SPACE_ID/messages/MESSAGE_ID/reactions/REACTION_ID",
        "user":
        {
            "name": "users/USER_ID",
            "type": "HUMAN"
        },
        "emoji":
        {
            "unicode": "😊"
        }
    }
}
      

রিসোর্স ডেটা বাদ দেওয়া হয়েছে:

{
    "reaction":
    {
        "name": "spaces/SPACE_ID/messages/MESSAGE_ID/reactions/REACTION_ID"
    }
}
      
ব্যবহারকারীরা কোনো বার্তার জবাবে 😊 ও 😸 ইমোজি ব্যবহার করে প্রতিক্রিয়া জানায়। google.workspace.chat.reaction.v1.batchCreated

সম্পদ তথ্য অন্তর্ভুক্ত:

{
    "reactions": [
        {
          "reaction": {
            "name": "spaces/SPACE_ID/messages/MESSAGE_ID/reactions/REACTION_ID",
            "user":
            {
                "name": "users/USER_ID",
                "type": "HUMAN"
            },
            "emoji":
            {
                "unicode": "😊"
            }
          }
        },
        {
          "reaction": {
            "name": "spaces/SPACE_ID/messages/MESSAGE_ID/reactions/REACTION_ID",
            "user":
            {
                "name": "users/USER_ID",
                "type": "HUMAN"
            },
            "emoji":
            {
                "unicode": "😸"
            }
          }
        }
    ]
}
      

রিসোর্স ডেটা বাদ দেওয়া হয়েছে:

{
    "reactions": [
      {
        "reaction": {
            "name": "spaces/SPACE_ID/messages/MESSAGE_ID/reactions/REACTION_ID"
        },
        "reaction": {
            "name": "spaces/SPACE_ID/messages/MESSAGE_ID/reactions/REACTION_ID",
        }
      }
    ]
}
      

সীমাবদ্ধতা

  • ব্যবহারকারীদের সাবস্ক্রিপশনের ক্ষেত্রে, ডাইরেক্ট মেসেজ বা নামবিহীন গ্রুপ চ্যাটে ( google.workspace.chat.membership.v1.created ) নতুন সদস্যদের সম্পর্কিত ইভেন্টগুলো শুধুমাত্র প্রথম মেসেজ পোস্ট করার পরেই ট্রিগার হয়।
  • মেম্বারশিপ ইভেন্ট পেতে হলে, ব্যবহারকারী বা চ্যাট অ্যাপটিকে অবশ্যই স্পেসটির সরাসরি সদস্য হতে হবে। যদি তাদের কোনো গুগল গ্রুপের মাধ্যমে পরোক্ষভাবে কোনো স্পেসে যুক্ত, আপডেট বা অপসারণ করা হয়, তাহলে সাবস্ক্রিপশনটি সেই মেম্বারশিপ ইভেন্টগুলো পাবে না। গুগল গ্রুপ মেম্বারশিপ কীভাবে কাজ করে তা বুঝতে, ‘একটি স্পেসে গুগল গ্রুপ যুক্ত করুন’ দেখুন।