Event

Google Chat アプリのインタラクション イベント。

インタラクション イベントについて詳しくは、Google Chat アプリでのインタラクションの受信と応答をご覧ください。イベントの種類やイベント ペイロードなどについて詳しくは、Google Chat アプリインタラクション イベントの種類をご覧ください。

Chat アプリは、ユーザーとのやり取りからイベントを受け取るだけでなく、スペースの変更(スペースに新しいメンバーが追加されたときなど)のイベントも受信できます。スペースのイベントについて詳しくは、Google Chat から予定を操作するをご覧ください。

JSON 表現
{
  "type": enum (EventType),
  "eventTime": string,
  "token": string,
  "threadKey": string,
  "message": {
    object (Message)
  },
  "user": {
    object (User)
  },
  "space": {
    object (Space)
  },
  "action": {
    object (FormAction)
  },
  "configCompleteRedirectUrl": string,
  "isDialogEvent": boolean,
  "dialogEventType": enum (DialogEventType),
  "common": {
    object (CommonEventObject)
  }
}
フィールド
type

enum (EventType)

インタラクション イベントのタイプ。詳しくは、Google Chat アプリ操作イベントの種類をご覧ください。

eventTime

string (Timestamp format)

インタラクション イベントが発生した時間を示すタイムスタンプ。

token

string

以前の Chat アプリで Google からのリクエストかどうかを確認するために使用できるシークレットの値。Google がトークンをランダムに生成し、その値は静的なままです。トークンの取得、取り消し、再生成は、Google Cloud コンソールの Chat API 構成ページで行えます。

最近の Chat アプリではこのフィールドを使用しません。API レスポンスと Chat API 構成ページにはありません。

threadKey

string

インタラクション イベントに関連するスレッドの、Chat アプリで定義されるキー。詳しくは、spaces.messages.thread.threadKey をご覧ください。

message

object (Message)

インタラクション イベントをトリガーしたメッセージ(該当する場合)。

user

object (User)

インタラクション イベントをトリガーしたユーザー。

space

object (Space)

インタラクション イベントが発生したスペース。

action

object (FormAction)

CARD_CLICKED インタラクション イベントの場合、ユーザーがカードまたはダイアログをクリックしたときに関連付けられたフォーム アクション データ。詳しくは、ユーザーがカード上で入力したフォームデータを読み取るをご覧ください。

configCompleteRedirectUrl

string

ユーザーが Google Chat の外部で認可または設定フローを完了したら、Chat アプリがユーザーをリダイレクトする URL。詳しくは、Chat アプリを他のサービスやツールに接続するをご覧ください。

isDialogEvent

boolean

CARD_CLICKED インタラクション イベントの場合、ユーザーがダイアログを操作したかどうか。

dialogEventType

enum (DialogEventType)

受信したダイアログ インタラクション イベントのタイプ。

common

object (CommonEventObject)

言語 / 地域、ホストアプリ、プラットフォームなど、ユーザーのクライアントに関する情報を表します。チャットアプリの場合、CommonEventObject には、ダイアログを操作したユーザーから送信された情報(カードに入力されたデータなど)が含まれます。

CommonEventObject

言語 / 地域、ホストアプリ、プラットフォームなど、ユーザーのクライアントに関する情報を表します。チャットアプリの場合、CommonEventObject には、ダイアログで入力したデータなど、カードの操作によって送信されたデータが含まれます。

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 国/地域コード] の形式の完全な locale.displayName(「en-US」など)。

hostApp

enum (HostApp)

アドオンの呼び出し元アプリを示す hostApp 列挙型。Chat アプリでは常に CHAT

platform

enum (Platform)

イベントが発生したプラットフォームを示すプラットフォームの列挙型(WEBIOSANDROID)。Chat アプリではサポートされていません。

timeZone

object (TimeZone)

タイムゾーン ID と、協定世界時(UTC)からのオフセット。イベントタイプ CARD_CLICKEDSUBMIT_DIALOG でのみサポートされています。

formInputs

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

ユーザーがカードまたはダイアログからウィジェットに入力した値を含むマップ。マップキーは各ウィジェットに割り当てられた文字列 ID で、値はウィジェットへの入力を表します。

詳しくは、ユーザーが入力したプロセス情報をご覧ください。

parameters

map (key: string, value: string)

呼び出される関数に渡されるカスタム パラメータ。キーと値はどちらも文字列にする必要があります。

invokedFunction

string

ウィジェットに関連付けられている、呼び出される関数の名前。Chat アプリに対してのみ設定されます。

TimeZone

タイムゾーン ID と、協定世界時(UTC)からのオフセット。イベントタイプ CARD_CLICKEDSUBMIT_DIALOG でのみサポートされています。

JSON 表現
{
  "id": string,
  "offset": integer
}
フィールド
id

string

IANA TZ タイムゾーン データベース コード(「America/Toronto」など)。

offset

integer

協定世界時(UTC)からのユーザーのタイムゾーン オフセット(ミリ秒単位)。

入力

ユーザーがカードやダイアログに入力できるデータの種類。入力タイプは、ウィジェットが受け入れる値のタイプによって異なります。

JSON 表現
{

  // Union field inputs can be only one of the following:
  "stringInputs": {
    object (StringInputs)
  },
  "dateTimeInput": {
    object (DateTimeInput)
  },
  "dateInput": {
    object (DateInput)
  },
  "timeInput": {
    object (TimeInput)
  }
  // End of list of possible types for union field inputs.
}
フィールド

共用体フィールド inputs

inputs は次のいずれかになります。

stringInputs

object (StringInputs)

ユーザーがウィジェットに入力した値を表す文字列のリスト。

ウィジェットが 1 つの値のみを受け入れる場合(TextInput ウィジェットなど)、リストには 1 つの文字列オブジェクトが含まれます。ウィジェットが複数の値を受け入れる場合(チェックボックスの 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

1 時間後の分数。有効な値は 0 ~ 59 です。