Event

Google Chat অ্যাপ ইন্টার‍্যাকশন ইভেন্ট যা Chat অ্যাপের সাথে ব্যবহারকারীর ইন্টার‍্যাকশন সংক্রান্ত ডেটা দেখায় ও ধারণ করে। ইন্টার‍্যাকশন ইভেন্ট পাওয়ার জন্য আপনার Chat অ্যাপ কনফিগার করতে, ব্যবহারকারীর ইন্টার‍্যাকশন পান ও উত্তর দিন দেখুন।

ব্যবহারকারীর ইন্টার‍্যাকশন থেকে ইভেন্ট পাওয়ার পাশাপাশি, Chat অ্যাপ স্পেসে হওয়া পরিবর্তন সম্পর্কে ইভেন্ট পেতে পারে, যেমন স্পেসে নতুন মেম্বার যোগ করা হলে। স্পেস ইভেন্ট সম্পর্কে জানতে, Google Chat থেকে ইভেন্ট নিয়ে কাজ করুন দেখুন।

সতর্কতা: এই ইভেন্ট অবজেক্ট শুধুমাত্র Chat অ্যাপের জন্য ব্যবহার করা হয় যা অ্যাড-অন নয়। আপনার Chat অ্যাপ Google Workspace অ্যাড-অন হিসেবে তৈরি করা হলে, তার পরিবর্তে অ্যাড-অন ডকুমেন্টেশনে অ্যাড-অন ইভেন্ট অবজেক্ট দেখুন। আপনার অ্যাপ কোন ধরনের ইভেন্ট রিসিভ করে তা কনফার্ম করতে, আপনার ইভেন্টের ধরন নির্ধারণ করুন বিকল্প দেখুন।

JSON উপস্থাপনা
{
  "type": enum (EventType),
  "eventTime": string,
  "token": string,
  "threadKey": string,
  "message": {
    object (Message)
  },
  "user": {
    object (User)
  },
  "thread": {
    object (Thread)
  },
  "space": {
    object (Space)
  },
  "action": {
    object (FormAction)
  },
  "configCompleteRedirectUrl": string,
  "isDialogEvent": boolean,
  "dialogEventType": enum (DialogEventType),
  "common": {
    object (CommonEventObject)
  },
  "appCommandMetadata": {
    object (AppCommandMetadata)
  }
}
ফিল্ড
type

enum (EventType)

Chat অ্যাপের সাথে ব্যবহারকারীর ইন্টার‍্যাকশনের ধরন, যেমন MESSAGE বা ADDED_TO_SPACE।

eventTime

string (Timestamp format)

ইন্টার‍্যাকশন ইভেন্ট কখন ঘটেছে তা টাইমস্ট্যাম্প থেকে জানা যায়।

token

string

একটি গোপন মান যা পুরনো Chat অ্যাপ ব্যবহার করে যাচাই করতে পারে যে কোনও অনুরোধ Google থেকে এসেছে কিনা। Google র‍্যান্ডম উপায়ে টোকেন তৈরি করে এবং এর ভ্যালু স্ট্যাটিক থাকে। আপনি Google Cloud Console-এর Chat API কনফিগারেশন পৃষ্ঠা থেকে টোকেন পেতে, তুলে নিতে বা রিজেনারেট করতে পারবেন।

আধুনিক Chat অ্যাপ এই ফিল্ড ব্যবহার করে না। এটি API রেসপন্স এবং Chat API কনফিগারেশন পৃষ্ঠায় নেই।

threadKey

string

ইন্টার‍্যাকশন ইভেন্ট সম্পর্কিত থ্রেডের জন্য Chat অ্যাপ-নির্ধারিত কী। আরও তথ্যের জন্য spaces.messages.thread.threadKey দেখুন।

message

object (Message)

ADDED_TO_SPACE, CARD_CLICKED ও MESSAGE ইন্টার‍্যাকশন ইভেন্টের জন্য, প্রযোজ্য হলে, যে মেসেজ ইন্টার‍্যাকশন ইভেন্ট ট্রিগার করেছে।

user

object (User)

যে ব্যবহারকারী Chat অ্যাপের সাথে ইন্টার‍্যাক্ট করেছেন।

thread

object (Thread)

যে থ্রেডে ব্যবহারকারী Chat অ্যাপের সাথে ইন্টার‍্যাক্ট করেছেন। এটি নতুন পাঠানো মেসেজের মাধ্যমে তৈরি করা নতুন থ্রেডে হতে পারে। ইন্টার‍্যাকশন ইভেন্ট কোনও নির্দিষ্ট মেসেজ বা থ্রেডের সাথে যুক্ত থাকলে এই ফিল্ডটি পপুলেট করা হয়।

space

object (Space)

যে স্পেসে ব্যবহারকারী Chat অ্যাপের সাথে ইন্টার‍্যাক্ট করেছেন।

action

object (FormAction)

CARD_CLICKED ইন্টার‍্যাকশন ইভেন্টের জন্য, ব্যবহারকারী কোনও কার্ড বা ডায়ালগে ক্লিক করলে ফর্ম অ্যাকশন ডেটা অ্যাসোসিয়েট করা হয়। আরও জানতে, কার্ডে ব্যবহারকারীর ইনপুট করা ফর্ম ডেটা পড়ুন দেখুন।

configCompleteRedirectUrl

string

MESSAGE, ADDED_TO_SPACE ও APP_COMMAND ইন্টার‍্যাকশন ইভেন্টের জন্য এই URL পপুলেট করা হয়। Google Chat-এর বাইরে অথরাইজেশন বা কনফিগারেশন ফ্লো সম্পূর্ণ করার পরে, ব্যবহারকারীদের অবশ্যই এই URL-এ রিডাইরেক্ট করতে হবে যাতে Google Chat-কে সিগন্যাল দেওয়া যায় যে অথরাইজেশন বা কনফিগারেশন ফ্লো সফল হয়েছে। আরও তথ্যের জন্য, অন্যান্য পরিষেবা ও টুলের সাথে Chat অ্যাপ কানেক্ট করুন।

isDialogEvent

boolean

CARD_CLICKED এবং MESSAGE ইন্টার‍্যাকশন ইভেন্টের জন্য, ব্যবহারকারী ডায়ালগ-এর সাথে ইন্টার‍্যাক্ট করছেন নাকি ইন্টার‍্যাক্ট করতে চলেছেন।

dialogEventType

enum (DialogEventType)

ডায়ালগ ইন্টার‍্যাকশন ইভেন্টের ধরন পাওয়া গেছে।

common

object (CommonEventObject)

ব্যবহারকারীর ক্লায়েন্ট সম্পর্কে তথ্য দেখায়, যেমন লোকেল, হোস্ট অ্যাপ ও প্ল্যাটফর্ম। Chat অ্যাপের জন্য, CommonEventObject-এ ডায়ালগের সাথে ইন্টার‍্যাক্ট করা ব্যবহারকারীদের জমা দেওয়া তথ্য অন্তর্ভুক্ত থাকে, যেমন কার্ডে লেখা ডেটা।

appCommandMetadata

object (AppCommandMetadata)

Chat অ্যাপ কমান্ড সম্পর্কে মেটাডেটা।

CommonEventObject

কমন ইভেন্ট অবজেক্ট হল সামগ্রিক ইভেন্ট অবজেক্টের সেই অংশ যা ব্যবহারকারীর ক্লায়েন্ট থেকে অ্যাড-অনে সাধারণ, হোস্ট-ইন্ডিপেন্ডেন্ট তথ্য বহন করে। এই তথ্যের মধ্যে ব্যবহারকারীর লোকেল, হোস্ট অ্যাপ ও প্ল্যাটফর্মের মতো বিবরণ অন্তর্ভুক্ত থাকে।

হোমপেজ এবং প্রাসঙ্গিক ট্রিগার ছাড়াও, ব্যবহারকারী উইজেটের সাথে ইন্টার‍্যাক্ট করলে, অ্যাড-অন ইভেন্ট অবজেক্ট তৈরি করে অ্যাকশন কলব্যাক ফাংশনে পাস করে। ব্যবহারকারীর ক্লায়েন্টে খোলা উইজেটের কন্টেন্ট নির্ধারণ করতে, আপনার অ্যাড-অনের কলব্যাক ফাংশন সাধারণ ইভেন্ট অবজেক্ট কোয়েরি করতে পারে। যেমন, আপনার অ্যাড-অন eventObject.commentEventObject.formInputs অবজেক্টে TextInput উইজেটে ব্যবহারকারীর লেখা টেক্সট খুঁজে পেতে পারে।

Chat অ্যাপের ক্ষেত্রে, কোনও উইজেটের সাথে ইন্টার‍্যাক্ট করার সময় ব্যবহারকারী যে ফাংশনটি চালু করেছেন তার নাম।

JSON উপস্থাপনা
{
  "userLocale": string,
  "hostApp": enum (HostApp),
  "platform": enum (Platform),
  "timeZone": {
    object (TimeZone)
  },
  "formInputs": {
    string: {
      object (Inputs)
    },
    ...
  },
  "parameters": {
    string: string,
    ...
  },
  "invokedFunction": string
}
ফিল্ড
userLocale

string

ডিফল্ট হিসেবে বন্ধ করা আছে। ব্যবহারকারীর ভাষা এবং দেশ/অঞ্চল শনাক্তকারী ISO 639 ভাষা কোড-ISO 3166 দেশ/অঞ্চল কোড ফর্ম্যাটে। যেমন, en-US।

এই ফিল্ড চালু করতে, আপনার অ্যাড-অনের ম্যানিফেস্টে addOns.common.useLocaleFromApp-কে true-এ সেট করতে হবে। আপনার অ্যাড-অনের স্কোপের তালিকায় https://www.googleapis.com/auth/script.locale অন্তর্ভুক্ত থাকতে হবে। আরও জানতে ব্যবহারকারীর লোকেল ও টাইমজোন অ্যাক্সেস করা দেখুন।

hostApp

enum (HostApp)

ইভেন্ট অবজেক্ট তৈরি করার সময় অ্যাড-অন যে হোস্ট অ্যাপে অ্যাক্টিভ থাকে তা দেখায়। সম্ভাব্য ভ্যালুর মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত:

  • GMAIL
  • CALENDAR
  • DRIVE
  • DOCS
  • SHEETS
  • SLIDES
  • CHAT
platform

enum (Platform)

প্ল্যাটফর্ম enum যা ইভেন্টটি যে প্ল্যাটফর্মে তৈরি হয়েছে তা নির্দেশ করে (WEB, IOS, বা ANDROID)। Chat অ্যাপে কাজ করে না।

timeZone

object (TimeZone)

ডিফল্ট হিসেবে বন্ধ করা আছে। টাইমজোন আইডি এবং কোঅর্ডিনেটেড ইউনিভার্সাল টাইম (UTC) থেকে অফসেট। এই ফিল্ড চালু করতে, আপনার অ্যাড-অনের ম্যানিফেস্টে addOns.common.useLocaleFromApp-কে true-এ সেট করতে হবে। আপনার অ্যাড-অনের স্কোপের তালিকাতেও https://www.googleapis.com/auth/script.locale অন্তর্ভুক্ত থাকতে হবে। আরও জানতে ব্যবহারকারীর লোকেল ও টাইমজোন অ্যাক্সেস করা দেখুন।

শুধুমাত্র CARD_CLICKED এবং SUBMIT_DIALOG ধরনের ইভেন্টের জন্য কাজ করে।

formInputs

map (key: string, value: object (Inputs))

দেখানো কার্ডে উইজেটের বর্তমান ভ্যালু সহ একটি ম্যাপ। ম্যাপ কী হল প্রতিটি ইনপুট উইজেটে (যেমন TextInput.name, SelectionInput.name, DateTimePicker.name বা DecoratedText.SwitchControl.name) অ্যাসাইন করা স্ট্রিং name ভ্যালু।

ম্যাপ ভ্যালু অবজেক্টের স্ট্রাকচার উইজেটের ধরনের উপর নির্ভর করে:

মনে রাখবেন: নিম্নলিখিত উদাহরণগুলি Apps Script-এর V8 রানটাইমের জন্য ফর্ম্যাট করা হয়েছে। আপনি Rhino রানটাইম ব্যবহার করলে, ভ্যালুর পরে আপনাকে অবশ্যই [""] যোগ করতে হবে। যেমন, e.commonEventObject.formInputs.employeeName.stringInputs.value[0]-এর পরিবর্তে, ইভেন্ট অবজেক্টকে e.commonEventObject.formInputs.employeeName[""].stringInputs.value[0] হিসেবে ফর্ম্যাট করুন। Apps Script-এ রানটাইম সম্পর্কে আরও জানতে, V8 রানটাইম ওভারভিউ দেখুন।

  • সিঙ্গেল-ভ্যালুড উইজেট (যেমন, TextInput উইজেট অথবা DROPDOWN বা RADIO_BUTTON ধরনের SelectionInput উইজেট): একটি সিঙ্গেল-এলিমেন্ট তালিকা (অথবা কোনও কিছু বেছে না নিলে খালি তালিকা) সহ StringInputs অবজেক্ট।

উদাহরণ: employeeName-এর name সহ টেক্সট ইনপুট উইজেটের জন্য, e.commonEventObject.formInputs.employeeName.stringInputs.value[0]-এর মাধ্যমে টেক্সট ইনপুট ভ্যালু অ্যাক্সেস করুন।

  • একাধিক ভ্যালু সহ উইজেট (যেমন, CHECK_BOX, SWITCH বা MULTI_SELECT ধরনের SelectionInput উইজেট): বেছে নেওয়া আইটেম value স্ট্রিংয়ের তালিকা সহ StringInputs অবজেক্ট।

উদাহরণ: participants-এর name সহ মাল্টি-ভ্যালু উইজেটের জন্য, এর মাধ্যমে ভ্যালু অ্যারে অ্যাক্সেস করুন: e.commonEventObject.formInputs.participants.stringInputs.value।

  • একটি DecoratedText.SwitchControl উইজেট: একটি StringInputs অবজেক্ট। selected-এর ভ্যালু true হলে, stringInputs.value-এ সুইচের value ফিল্ড থাকে (অথবা value উল্লেখ করা না থাকলে ""; একাধিক সুইচ একই name শেয়ার করলে, প্রতিটি বেছে নেওয়া সুইচের value তালিকায় অন্তর্ভুক্ত করা হয়)। selected, false হলে, সুইচের value, stringInputs.value থেকে বাদ দেওয়া হয়।

  • তারিখ-সময় বাছাইকারী (DateTimePickerType.DATE_AND_TIME): একটি DateTimeInput object।

উদাহরণ: myDTPicker-এর name সহ পিকারের জন্য, e.commonEventObject.formInputs.myDTPicker.dateTimeInput ব্যবহার করে DateTimeInput অবজেক্ট অ্যাক্সেস করুন।

  • শুধু তারিখ বেছে নেওয়ার পিকার (DateTimePickerType.DATE_ONLY): একটি DateInput object।

উদাহরণ: myDatePicker-এর name সহ পিকারের জন্য, e.commonEventObject.formInputs.myDatePicker.dateInput ব্যবহার করে DateInput অবজেক্ট অ্যাক্সেস করুন।

  • শুধু সময় বেছে নেওয়ার পিকার (DateTimePickerType.TIME_ONLY): একটি TimeInput object।

উদাহরণ: myTimePicker-এর name সহ পিকারের জন্য, e.commonEventObject.formInputs.myTimePicker.timeInput ব্যবহার করে TimeInput অবজেক্ট অ্যাক্সেস করুন।

parameters

map (key: string, value: string)

actionParameters বা Action.setParameters() ব্যবহার করে কোনও অ্যাকশনে আপনার দেওয়া যেকোনও অতিরিক্ত প্যারামিটার।

ডেভেলপার প্রিভিউ: Google Chat-এর কার্যকারিতা বাড়ায় এমন অ্যাড-অনের জন্য, মাল্টি-সিলেক্ট মেনুতে ব্যবহারকারীরা যা টাইপ করেন তার উপর ভিত্তি করে আইটেম সাজেস্ট করতে, "autocomplete_widget_query" কী (event.commonEventObject.parameters["autocomplete_widget_query"])-এর ভ্যালু ব্যবহার করুন। আপনি এই ভ্যালু ব্যবহার করে ডেটাবেস কোয়েরি করতে এবং ব্যবহারকারীরা টাইপ করার সাথে সাথে তাদের বেছে নেওয়ার মতো আইটেম সাজেস্ট করতে পারবেন। বিস্তারিত জানতে, Google Chat ব্যবহারকারীদের থেকে তথ্য সংগ্রহ ও প্রসেস করা দেখুন।

invokedFunction

string

ইনভোক করার জন্য ফাংশনের নাম।

Google Chat-এর কার্যকারিতা বাড়ায় এমন Google Workspace অ্যাড-অনের জন্য এই ফিল্ডে কোনও তথ্য থাকে না। পরিবর্তে, আইডেন্টিফায়ারের মতো ফাংশন ডেটা পেতে, Chat-এর পরিধি বাড়ায় এমন অ্যাড-অনকে parameters ফিল্ড ব্যবহার করতে হবে। Chat অ্যাপের জন্য ইন্টার‍্যাক্টিভ ইন্টারফেস তৈরি করুন দেখুন।

TimeZone

টাইমজোন আইডি এবং কোঅর্ডিনেটেড ইউনিভার্সাল টাইম (UTC) থেকে অফসেট। শুধুমাত্র CARD_CLICKED এবং SUBMIT_DIALOG ধরনের ইভেন্টের জন্য কাজ করে।

JSON উপস্থাপনা
{
  "id": string,
  "offset": integer
}
ফিল্ড
id

string

IANA TZ টাইম জোন ডেটাবেস কোড, যেমন "America/Toronto"।

offset

integer

ব্যবহারকারীর টাইমজোন অফসেট, মিলিসেকেন্ডে, কোঅর্ডিনেটেড ইউনিভার্সাল টাইম (UTC) থেকে।

ইনপুট

ব্যবহারকারী কার্ড বা ডায়ালগে যে ধরনের ডেটা ইনপুট করতে পারবেন। ইনপুটের ধরন নির্ভর করে উইজেট যে ধরনের ভ্যালু গ্রহণ করে তার উপর।

JSON উপস্থাপনা
{

  "stringInputs": {
    object (StringInputs)
  },
  "dateTimeInput": {
    object (DateTimeInput)
  },
  "dateInput": {
    object (DateInput)
  },
  "timeInput": {
    object (TimeInput)
  }
}
ফিল্ড
নিচে পারস্পরিকভাবে এক্সক্লুসিভ ফিল্ডের তালিকা দেওয়া হল। উত্তরে সর্বাধিক একটি ফিল্ড সেট করা হবে:
stringInputs

object (StringInputs)

স্ট্রিংয়ের তালিকা যা ব্যবহারকারীর উইজেটে ইনপুট করা ভ্যালু দেখায়।

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

dateTimeInput

object (DateTimeInput)

DateTimePicker উইজেট থেকে তারিখ ও সময় ইনপুট ভ্যালু যা তারিখ ও সময় দু'টিই গ্রহণ করে।

dateInput

object (DateInput)

DateTimePicker উইজেট থেকে তারিখ ইনপুট ভ্যালু যা শুধুমাত্র তারিখ ভ্যালু গ্রহণ করে।

timeInput

object (TimeInput)

DateTimePicker উইজেট থেকে সময় ইনপুট ভ্যালু যা শুধু সময় ভ্যালু গ্রহণ করে।

মিউচুয়ালি এক্সক্লুসিভ ফিল্ডের শেষ।

StringInputs

নিয়মিত উইজেটের জন্য ইনপুট প্যারামিটার। সিঙ্গেল-ভ্যালু উইজেটের ক্ষেত্রে, এটি একটি সিঙ্গেল-ভ্যালু তালিকা। একাধিক মান সহ উইজেটের ক্ষেত্রে, যেমন চেকবক্স, সব মান দেখানো হয়।

JSON উপস্থাপনা
{
  "value": [
    string
  ]
}
ফিল্ড
value[]

string

ব্যবহারকারীর লেখা স্ট্রিংয়ের তালিকা।

DateTimeInput

তারিখ ও সময় ইনপুট ভ্যালু।

JSON উপস্থাপনা
{
  "msSinceEpoch": string,
  "hasDate": boolean,
  "hasTime": boolean
}
ফিল্ড
msSinceEpoch

string (int64 format)

Epoch সময় থেকে অতিবাহিত সময়, মিলিসেকেন্ডে।

hasDate

boolean

datetime ইনপুটে ক্যালেন্ডারের তারিখ অন্তর্ভুক্ত আছে কিনা।

hasTime

boolean

datetime ইনপুটে টাইমস্ট্যাম্প আছে কিনা।

DateInput

তারিখ ইনপুট ভ্যালু।

JSON উপস্থাপনা
{
  "msSinceEpoch": string
}
ফিল্ড
msSinceEpoch

string (int64 format)

Epoch সময় থেকে অতিবাহিত সময়, মিলিসেকেন্ডে।

TimeInput

সময়ের ইনপুট ভ্যালু।

JSON উপস্থাপনা
{
  "hours": integer,
  "minutes": integer
}
ফিল্ড
hours

integer

২৪-ঘণ্টার ঘড়িতে ঘণ্টা।

minutes

integer

ঘণ্টার পরে কত মিনিট হয়েছে। সঠিক ভ্যালু হল ০ থেকে ৫৯।

AppCommandMetadata

Chat অ্যাপ কমান্ড সম্পর্কে মেটাডেটা।

JSON উপস্থাপনা
{
  "appCommandId": integer,
  "appCommandType": enum (AppCommandType)
}
ফিল্ড
appCommandId

integer

Chat API কনফিগারেশনে উল্লেখ করা কমান্ডের আইডি।

appCommandType

enum (AppCommandType)

Chat অ্যাপ কমান্ডের ধরন।