Event

Google Chat ऐप्लिकेशन के इंटरैक्शन इवेंट में, Chat ऐप्लिकेशन के साथ उपयोगकर्ता के इंटरैक्शन का डेटा शामिल होता है. इंटरैक्शन इवेंट पाने के लिए, अपने Chat ऐप्लिकेशन को कॉन्फ़िगर करें. इसके लिए, उपयोगकर्ता के इंटरैक्शन पाना और उनका जवाब देना लेख पढ़ें.

उपयोगकर्ता के इंटरैक्शन से जुड़े इवेंट के अलावा, Chat ऐप्लिकेशन को स्पेस में होने वाले बदलावों से जुड़े इवेंट भी मिल सकते हैं. जैसे, स्पेस में कोई नया सदस्य जोड़े जाने पर. स्पेस इवेंट के बारे में जानने के लिए, Google 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 ऐप्लिकेशन इस फ़ील्ड का इस्तेमाल नहीं करते. यह एपीआई से मिले जवाबों और 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 इंटरैक्शन इवेंट के लिए पॉप्युलेट किया जाता है. Google Chat के बाहर अनुमति या कॉन्फ़िगरेशन फ़्लो पूरा करने के बाद, उपयोगकर्ताओं को इस यूआरएल पर रीडायरेक्ट किया जाना चाहिए. इससे Google 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)

डिफ़ॉल्ट रूप से बंद है. टाइमज़ोन आईडी और कोऑर्डिनेटेड यूनिवर्सल टाइम (यूटीसी) से ऑफ़सेट. इस फ़ील्ड को चालू करने के लिए, आपको अपने ऐड-ऑन के मेनिफ़ेस्ट में 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 है.

उदाहरण: अगर किसी पिकर का name, myDTPicker है, तो 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 फ़ील्ड का इस्तेमाल करना चाहिए. चैट ऐप्लिकेशन के लिए इंटरैक्टिव इंटरफ़ेस बनाना लेख पढ़ें.

TimeZone

टाइमज़ोन आईडी और कोऑर्डिनेटेड यूनिवर्सल टाइम (यूटीसी) से ऑफ़सेट. यह सिर्फ़ CARD_CLICKED और SUBMIT_DIALOG इवेंट टाइप के लिए काम करता है.

JSON के काेड में दिखाना
{
  "id": string,
  "offset": integer
}
फ़ील्ड
id

string

IANA TZ टाइम ज़ोन डेटाबेस कोड, जैसे कि "America/Toronto".

offset

integer

कोऑर्डिनेटेड यूनिवर्सल टाइम (यूटीसी) से उपयोगकर्ता के टाइमज़ोन ऑफ़सेट, मिलीसेकंड में.

इनपुट

डेटा के टाइप, जिन्हें उपयोगकर्ता कार्ड या डायलॉग में इनपुट कर सकते हैं. इनपुट टाइप, इस बात पर निर्भर करता है कि विजेट किस तरह की वैल्यू स्वीकार करता है.

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)

इपॉक टाइम के बाद का समय, मिलीसेकंड में.

hasDate

boolean

datetime इनपुट में कैलेंडर की तारीख शामिल है या नहीं.

hasTime

boolean

क्या datetime इनपुट में टाइमस्टैंप शामिल है.

DateInput

तारीख की इनपुट वैल्यू.

JSON के काेड में दिखाना
{
  "msSinceEpoch": string
}
फ़ील्ड
msSinceEpoch

string (int64 format)

इपॉक टाइम के बाद का समय, मिलीसेकंड में.

TimeInput

समय की इनपुट वैल्यू.

JSON के काेड में दिखाना
{
  "hours": integer,
  "minutes": integer
}
फ़ील्ड
hours

integer

24 घंटे वाली घड़ी के हिसाब से घंटा.

minutes

integer

घंटे के बाद के मिनट की संख्या. मान्य वैल्यू 0 से 59 तक हैं.

AppCommandMetadata

Chat ऐप्लिकेशन के कमांड के बारे में मेटाडेटा.

JSON के काेड में दिखाना
{
  "appCommandId": integer,
  "appCommandType": enum (AppCommandType)
}
फ़ील्ड
appCommandId

integer

Chat API के कॉन्फ़िगरेशन में दिए गए कमांड का आईडी.

appCommandType

enum (AppCommandType)

Chat ऐप्लिकेशन के कमांड का टाइप.