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

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

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

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

Google Workspace সাবস্ক্রিপশনের মাধ্যমে আপনি Chat-এ নিম্নলিখিত ধরণের পরিবর্তন সম্পর্কে ইভেন্ট পেতে পারেন:

  • স্পেসে নতুন, আপডেট করা অথবা মুছে ফেলা মেসেজ
  • কোনও বার্তার নতুন বা সরানো প্রতিক্রিয়া
  • স্পেসে নতুন, আপডেট করা অথবা সরিয়ে দেওয়া সদস্য
  • আপনার সাবস্ক্রাইব করা স্পেসে পরিবর্তন, যেমন আপডেট করা স্পেসের নাম বা বিবরণ।

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

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

Google Workspace Events API Chat-এর জন্য নিম্নলিখিত লক্ষ্য রিসোর্সগুলিকে সমর্থন করে:

লক্ষ্য সম্পদ বিন্যাস সীমাবদ্ধতা
স্থান

//chat.googleapis.com/spaces/ SPACE

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

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

//chat.googleapis.com/spaces/-

সাবস্ক্রিপশনটি শুধুমাত্র সেইসব স্পেসের জন্য ইভেন্ট গ্রহণ করে যেখানে ব্যবহারকারী তার Google Workspace বা Google অ্যাকাউন্টের মাধ্যমে সদস্য। শুধুমাত্র ব্যবহারকারীর প্রমাণীকরণ সমর্থন করে।
ব্যবহারকারী

//cloudidentity.googleapis.com/users/ USER

যেখানে USER হল Chat API user রিসোর্সের রিসোর্স নামের আইডি। বিস্তারিত জানার জন্য, Google Chat ব্যবহারকারীদের সনাক্ত করুন এবং নির্দিষ্ট করুন দেখুন।

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

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

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

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

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

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

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 সাবস্ক্রিপশনে Chat থেকে কোনও ইভেন্ট আসে, তখন data ফিল্ডে ইভেন্টের পেলোড থাকে। এই পেলোডে পরিবর্তিত Google Workspace রিসোর্স সম্পর্কে তথ্য থাকে। উদাহরণস্বরূপ, আপনি যদি কোনও স্পেসে সদস্যতা ইভেন্টে সাবস্ক্রাইব করে থাকেন, তাহলে এই ইভেন্টগুলির পেলোডে পরিবর্তিত spaces.membership রিসোর্স সম্পর্কে তথ্য থাকে।

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

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

নিম্নলিখিত টেবিলে Chat 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 ), প্রথম বার্তা পোস্ট করার পরেই ট্রিগার করা হবে।
  • সদস্যপদ ইভেন্টগুলি পেতে, ব্যবহারকারী বা চ্যাট অ্যাপটিকে অবশ্যই স্পেসের সরাসরি সদস্য হতে হবে। যদি সেগুলি Google গ্রুপের মাধ্যমে কোনও স্পেসে যোগ করা, আপডেট করা বা পরোক্ষভাবে সরানো হয়, তাহলে সাবস্ক্রিপশনটি সেই সদস্যপদ ইভেন্টগুলি গ্রহণ করবে না। Google গ্রুপ সদস্যপদ কীভাবে কাজ করে তা বুঝতে, একটি স্পেসে একটি Google গ্রুপ যোগ করুন দেখুন।