Method: projects.sendInteraction

会話を 1 回再生します。

HTTP リクエスト

POST https://actions.googleapis.com/v2/{project=projects/*}:sendInteraction

この URL は gRPC Transcoding 構文を使用します。

パスパラメータ

パラメータ
project

string

必須。テスト対象のプロジェクト。プロジェクト ID で指定します。形式: projects/{project}

リクエスト本文

リクエストの本文には、次の構造のデータが含まれます。

JSON 表現
{
  "input": {
    object (UserInput)
  },
  "deviceProperties": {
    object (DeviceProperties)
  },
  "conversationToken": string
}
フィールド
input

object (UserInput)

必須。ユーザーが入力した情報。

deviceProperties

object (DeviceProperties)

必須。アクションとのやり取りに使用されるデバイスのプロパティ。

conversationToken

string

前の操作で SendInteractionResponse から受信して渡す必要がある不透明トークン。これを未設定のままにした場合、テスト セッションの最初のやり取りとして新しい会話を開始したり、前の会話を放棄して新しい会話を開始したりできます。

レスポンスの本文

成功すると、レスポンスの本文に次の構造のデータが含まれます。

会話のラウンドに対する返信。

JSON 表現
{
  "output": {
    object (Output)
  },
  "diagnostics": {
    object (Diagnostics)
  },
  "conversationToken": string
}
フィールド
output

object (Output)

ユーザーに提供される出力。

diagnostics

object (Diagnostics)

リクエストの処理方法を説明する診断情報。

conversationToken

string

同じ会話を継続するために、次回の RPC 呼び出しで SendInteractionRequest で設定する不透明トークン。

UserInput

会話ラウンドで提供されたユーザー入力。

JSON 表現
{
  "query": string,
  "type": enum (InputType)
}
フィールド
query

string

ユーザーが送信した入力の内容。

type

enum (InputType)

入力の型。

InputType

キーボードから入力されたクエリ、音声クエリなど、入力ソースを示します。

列挙型
INPUT_TYPE_UNSPECIFIED 未指定の入力ソース。
TOUCH GUI 操作からのクエリ。
VOICE 音声クエリ。
KEYBOARD キーボードから入力されたクエリ。
URL アクションが URL リンクによってトリガーされたことを示します。

DeviceProperties

会話ラウンドに関連するデバイスのプロパティ。

JSON 表現
{
  "surface": enum (Surface),
  "location": {
    object (Location)
  },
  "locale": string,
  "timeZone": string
}
フィールド
surface

enum (Surface)

アクションの操作に使用されるサーフェス。

location

object (Location)

デバイスの位置情報(緯度、経度、フォーマット済み住所など)。

locale

string

デバイスに設定されている言語 / 地域。形式は BCP 47(https://tools.ietf.org/html/bcp47)に準拠している必要があります。例: en、en-US、es-419(その他の例: https://tools.ietf.org/html/bcp47#appendix-A)

timeZone

string

デバイスに設定されているタイムゾーン。形式は IANA タイムゾーン データベースに準拠している必要があります(例: America/New_York: https://www.iana.org/time-zones)。

Surface

アクションの操作に使用される可能性のあるサーフェス。今後、追加の値が含まれる可能性があります。

列挙型
SURFACE_UNSPECIFIED デフォルト値。この値は使用されません。
SPEAKER スピーカー(Google Home など)。
PHONE スマートフォン] をタップします。
ALLO Allo チャット。
SMART_DISPLAY スマートディスプレイ デバイス。
KAI_OS KaiOS。

ロケーション

場所を表すコンテナ。

JSON 表現
{
  "coordinates": {
    object (LatLng)
  },
  "formattedAddress": string,
  "zipCode": string,
  "city": string
}
フィールド
coordinates

object (LatLng)

地理座標。[DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 権限が必要です。

formattedAddress

string

表示住所。例: 「1600 Amphitheatre Pkwy, Mountain View, CA 94043」。[DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 権限が必要です。

zipCode

string

郵便番号。[DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] または [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION] のアクセス許可を求めています。

city

string

市区町村。[DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] または [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION] のアクセス許可を求めています。

LatLng

緯度と経度のペアを表すオブジェクト。これは緯度を表す倍精度値と経度を表す倍精度値のペアで表現されます。特に明記されていない場合、このオブジェクトは WGS84 規格に準拠する必要があります。値は正規化範囲内で指定する必要があります。

JSON 表現
{
  "latitude": number,
  "longitude": number
}
フィールド
latitude

number

緯度(度単位)。範囲 [-90.0, +90.0] 内になければなりません。

longitude

number

経度(度単位)。範囲 [-180.0, +180.0] 内になければなりません。

出力

会話ラウンドに対するユーザーに表示される出力。

JSON 表現
{
  "text": string,
  "speech": [
    string
  ],
  "canvas": {
    object (Canvas)
  },
  "actionsBuilderPrompt": {
    object (Prompt)
  }
}
フィールド
text

string

書式なし文字列としてユーザーに送信される音声レスポンス。

speech[]

string

アクションによって生成された音声コンテンツ。これには、SSML などのマークアップ要素が含まれる場合があります。

canvas

object (Canvas)

インタラクティブ キャンバス コンテンツ。

actionsBuilderPrompt

object (Prompt)

会話ラウンドの最後におけるプロンプトの状態。プロンプトの詳細: https://developers.google.com/assistant/conversational/prompts

Canvas

ユーザーに送信するインタラクティブ キャンバスのレスポンスを表します。これは、インタラクティブなキャンバス レスポンスを表示するだけでなく、ユーザーに音声で伝えるプロンプトで「firstSimple」フィールドと組み合わせて使用することもできます。レスポンスの最大サイズは 50,000 バイトです。

JSON 表現
{
  "url": string,
  "data": [
    value
  ],
  "suppressMic": boolean,
  "enableFullScreen": boolean
}
フィールド
url

string

読み込むインタラクティブ キャンバス ウェブアプリの URL。設定しない場合、現在アクティブなキャンバスの URL が再利用されます。

data[]

value (Value format)

(省略可)没入型エクスペリエンスのウェブページにイベントとして渡される JSON データ。含まれているプロンプトの「override」フィールドが「false」であれば、この Canvas プロンプトで定義されているデータ値は、以前の Canvas プロンプトで定義したデータ値の後に追加されます。

suppressMic

boolean

(省略可)デフォルト値: false

enableFullScreen

boolean

true の場合、キャンバス アプリケーションが全画面表示され、上部にヘッダーは表示されません。読み込み画面にトースト メッセージも表示され、アクションの表示名、デベロッパーの名前、アクションの終了手順などを確認できます。デフォルト値: false

プロンプト

ユーザーに対するレスポンスを表現します。

JSON 表現
{
  "append": boolean,
  "override": boolean,
  "firstSimple": {
    object (Simple)
  },
  "content": {
    object (Content)
  },
  "lastSimple": {
    object (Simple)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ],
  "link": {
    object (Link)
  },
  "canvas": {
    object (Canvas)
  }
}
フィールド
append
(deprecated)

boolean

(省略可)このメッセージを、以前に定義されたメッセージと統合する方法のモード。「false」は、以前に定義したすべてのメッセージ(最初と最後のシンプル、コンテンツ、候補のリンク、キャンバス)を消去し、このプロンプトで定義されたメッセージを追加します。「true」に設定すると、このプロンプトで定義されたメッセージが、以前のレスポンスで定義されたメッセージに追加されます。このフィールドを「true」に設定すると、Simple プロンプト内の一部のフィールド、Suggestion プロンプト、Canvas プロンプト(Content プロンプトの一部)への追加も可能になります。コンテンツ メッセージとリンク メッセージは、プロンプトで定義されている場合は常に上書きされます。デフォルト値は「false」です。

override

boolean

(省略可)このメッセージを、以前に定義されたメッセージと統合する方法のモード。「true」に設定すると、以前に定義されたすべてのメッセージ(最初と最後のシンプル、コンテンツ、提案リンク、キャンバス)がクリアされ、このプロンプトで定義されたメッセージが追加されます。「false」を指定すると、このプロンプトで定義されているメッセージが、以前のレスポンスで定義されているメッセージに追加されます。このフィールドを「false」のままにすると、Simple プロンプト、Suggestions プロンプト、Canvas プロンプト(Content プロンプトの一部)内の一部のフィールドへの追加も可能になります。コンテンツ メッセージとリンク メッセージがプロンプトで定義されている場合、常に上書きされます。デフォルト値は「false」です。

firstSimple

object (Simple)

(省略可)最初の音声とテキストのみのレスポンス。

content

object (Content)

(省略可)ユーザーに表示するカード、リスト、メディアなどのコンテンツ。

lastSimple

object (Simple)

(省略可)最後の音声とテキストのみのレスポンス。

suggestions[]

object (Suggestion)

(省略可)ユーザーに表示される候補。レスポンスの最後に常に表示されます。含まれるプロンプトの「override」フィールドが「false」であれば、このフィールドで定義されているタイトルは、以前に定義された候補プロンプトで定義されているタイトルに追加され、重複する値が削除されます。

canvas

object (Canvas)

(省略可)ユーザーに送信するインタラクティブ キャンバスのレスポンスを表します。

簡単

ユーザーに送信するシンプルなプロンプトを表します。

JSON 表現
{
  "speech": string,
  "text": string
}
フィールド
speech

string

(省略可)ユーザーに向けて読み上げられる音声を表します。SSML またはテキスト読み上げが可能です。含まれるプロンプトの「override」フィールドが「true」の場合、このフィールドで定義されている音声が、以前の Simple プロンプトの音声を置き換えます。

text

string

チャットのふきだしに表示するテキスト(省略可)。指定しない場合、上記の音声フィールドの表示レンダリングが使用されます。最大 640 文字です。含まれるプロンプトの「override」フィールドが「true」の場合、このフィールドで定義されているテキストが、以前の Simple プロンプトのテキストに置き換えられます。

内容

表示するコンテンツ。

JSON 表現
{

  // Union field content can be only one of the following:
  "card": {
    object (Card)
  },
  "image": {
    object (Image)
  },
  "table": {
    object (Table)
  },
  "media": {
    object (Media)
  },
  "canvas": {
    object (Canvas)
  },
  "collection": {
    object (Collection)
  },
  "list": {
    object (List)
  }
  // End of list of possible types for union field content.
}
フィールド
共用体フィールド content。コンテンツ。content は次のいずれかになります。
card

object (Card)

ベーシック カード。

image

object (Image)

画像。

table

object (Table)

テーブルカード。

media

object (Media)

再生するメディアのセットを示すレスポンス。

canvas
(deprecated)

object (Canvas)

インタラクティブなキャンバス エクスペリエンスに使用されるレスポンス。

collection

object (Collection)

選択可能なオプションのコレクションを示すカード。

list

object (List)

選択可能なオプションのリストを示すカード。

Card

画像やテキストなどの情報を表示するための基本的なカード。

JSON 表現
{
  "title": string,
  "subtitle": string,
  "text": string,
  "image": {
    object (Image)
  },
  "imageFill": enum (ImageFill),
  "button": {
    object (Link)
  }
}
フィールド
title

string

カードの全体的なタイトル。省略可。

subtitle

string

省略可。

text

string

カードの本文。書式設定用に限定されたマークダウン構文がサポートされています。画像が存在しない場合は必須。

image

object (Image)

カードのヒーロー画像。高さは 192 dp に固定されています。省略可。

imageFill

enum (ImageFill)

画像の背景の塗りつぶし方法。省略可。

button

object (Link)

ボタン省略可。

画像

カードに表示される画像。

JSON 表現
{
  "url": string,
  "alt": string,
  "height": integer,
  "width": integer
}
フィールド
url

string

画像のソース URL。JPG、PNG、GIF(アニメーション GIF と非アニメーション GIF)を使用できます。例: https://www.agentx.com/logo.png。必須。

alt

string

スクリーン リーダーなどのユーザー補助機能で使用される画像の説明テキスト。必須。

height

integer

画像の高さ(ピクセル単位)。省略可。

width

integer

画像の幅(ピクセル単位)。省略可。

ImageFill

画像の表示に影響を与える有効な画像表示オプション。これは画像のアスペクト比が画像コンテナのアスペクト比と一致しない場合に使用されます。

列挙型
UNSPECIFIED 未指定の画像の塗りつぶし。
GRAY 画像と画像コンテナの隙間を灰色のバーで埋めます。
WHITE 画像と画像コンテナの隙間を白いバーで埋めます。
CROPPED 画像の幅と高さがコンテナの寸法と一致またはそれを超えるように画像が拡大縮小されます。拡大縮小された画像の高さがコンテナの高さより大きい場合、画像の上下が切り取られることがあります。拡大縮小された画像の幅がコンテナの幅より大きい場合、画像の左右が切り取られることがあります。これはワイド画面のテレビでアスペクト比 4:3 の動画を再生するときの「ズームモード」に似ています。

OpenUrl

ユーザーがリンクを開いたときに行われるアクション。

JSON 表現
{
  "url": string,
  "hint": enum (UrlHint)
}
フィールド
url

string

url フィールドでは、次のいずれかを指定できます。- アプリとリンクしたアプリまたはウェブページを開くための http または https の URL

hint

enum (UrlHint)

URL タイプのヒントを示します。

UrlHint

URL ヒントのタイプ。

列挙型
AMP AMP コンテンツを直接指す URL、または を介して AMP コンテンツを参照する正規 URL を指す URL。

テーブル

テキストの表を表示するためのカード。

JSON 表現
{
  "title": string,
  "subtitle": string,
  "image": {
    object (Image)
  },
  "columns": [
    {
      object (TableColumn)
    }
  ],
  "rows": [
    {
      object (TableRow)
    }
  ],
  "button": {
    object (Link)
  }
}
フィールド
title

string

テーブルの全体的なタイトル。省略できますが、サブタイトルが設定されている場合は必ず設定する必要があります。

subtitle

string

テーブルのサブタイトル。省略可。

image

object (Image)

テーブルに関連付けられた画像。省略可。

columns[]

object (TableColumn)

ヘッダーと列の配置。

rows[]

object (TableRow)

テーブルの行データ。最初の 3 行は表示されることが保証されますが、その他の行はサーフェスによっては切り捨てられる場合があります。特定のサーフェスに対してどの行が表示されるかをシミュレータでテストしてください。WEB_BROWSER 機能をサポートするサーフェスでは、詳細なデータを示すウェブページを開くことができます。

button

object (Link)

ボタン。

TableColumn

テーブル内の列を表します。

JSON 表現
{
  "header": string,
  "align": enum (HorizontalAlignment)
}
フィールド
header

string

列のヘッダー テキスト。

align

enum (HorizontalAlignment)

列に対するコンテンツの水平方向の配置。省略した場合、内容は前端に揃えられます。

HorizontalAlignment

セル内での内容の配置。

列挙型
UNSPECIFIED 未指定の水平方向の配置。
LEADING セルの前端。これがデフォルトです。
CENTER 内容は列の中央に揃えられます。
TRAILING 内容は列の後端に揃えられます。

TableRow

表の行を記述します。

JSON 表現
{
  "cells": [
    {
      object (TableCell)
    }
  ],
  "divider": boolean
}
フィールド
cells[]

object (TableCell)

この行のセル。最初の 3 つのセルは表示されることが保証されますが、その他のセルはサーフェスによっては切り捨てられる場合があります。特定のサーフェスに対してどのセルが表示されるかをシミュレータでテストしてください。

divider

boolean

各行の後に分割線を配置するかどうかを示します。

TableCell

行のセルを記述します。

JSON 表現
{
  "text": string
}
フィールド
text

string

セルのテキスト コンテンツ。

Media

1 つのメディア オブジェクトを表します。名前、説明、URL などのメディアに関する情報が含まれます。

JSON 表現
{
  "mediaType": enum (MediaType),
  "startOffset": string,
  "optionalMediaControls": [
    enum (OptionalMediaControls)
  ],
  "mediaObjects": [
    {
      object (MediaObject)
    }
  ]
}
フィールド
mediaType

enum (MediaType)

メディアタイプ。

startOffset

string (Duration format)

最初のメディア オブジェクトの開始オフセット。

小数点以下 9 桁まで、「s」で終わる秒単位の期間(例: "3.5s")。

optionalMediaControls[]

enum (OptionalMediaControls)

このメディア レスポンス セッションがサポートするオプションのメディア コントロール タイプ。設定すると、特定のメディア イベントが発生したときにサードパーティにリクエストが送信されます。設定しない場合、3p は引き続き 2 つのデフォルトのコントロール タイプ(FINISHED と FAILED)を処理する必要があります。

mediaObjects[]

object (MediaObject)

メディア オブジェクトのリスト

MediaType

このレスポンスのメディアタイプ。

列挙型
MEDIA_TYPE_UNSPECIFIED 未指定のメディアタイプ。
AUDIO 音声ファイル。
MEDIA_STATUS_ACK メディア ステータス レポートの確認応答。

OptionalMediaControls

メディア レスポンスがサポートするオプションのメディア コントロール タイプ

列挙型
OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED 値が指定されていません
PAUSED 一時停止したイベント。ユーザーがメディアを一時停止したときにトリガーされます。
STOPPED 停止したイベント。メディアの再生中にユーザーがサードパーティ セッションを終了するとトリガーされます。

MediaObject

単一のメディア オブジェクトを表します。

JSON 表現
{
  "name": string,
  "description": string,
  "url": string,
  "image": {
    object (MediaImage)
  }
}
フィールド
name

string

このメディア オブジェクトの名前。

description

string

このメディア オブジェクトの説明。

url

string

メディア コンテンツを指す URL。

image

object (MediaImage)

メディアカードとともに表示する画像。

MediaImage

メディアカードとともに表示する画像。

JSON 表現
{

  // Union field image can be only one of the following:
  "large": {
    object (Image)
  },
  "icon": {
    object (Image)
  }
  // End of list of possible types for union field image.
}
フィールド
共用体フィールド image。画像。image は次のいずれかになります。
large

object (Image)

アルバムのカバーなど、大きな画像

icon

object (Image)

タイトルの右側に表示される小さな画像アイコン。36×36 dp にサイズ変更されます。

コレクション

選択可能なオプションのコレクションを提示するカード。

JSON 表現
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (CollectionItem)
    }
  ],
  "imageFill": enum (ImageFill)
}
フィールド
title

string

コレクションのタイトル。省略可。

subtitle

string

コレクションのサブタイトル。省略可。

items[]

object (CollectionItem)

最小: 2 最大: 10

imageFill

enum (ImageFill)

コレクション アイテムの画像背景の塗りつぶし方法。省略可。

CollectionItem

コレクション内の項目

JSON 表現
{
  "key": string
}
フィールド
key

string

必須。関連するタイプのエントリキー名と一致する NLU キー。

リスト

選択可能なオプションのリストを提示するカード。

JSON 表現
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (ListItem)
    }
  ]
}
フィールド
title

string

リストのタイトル。省略可。

subtitle

string

リストのサブタイトル。省略可。

items[]

object (ListItem)

最小: 2 最大: 30

ListItem

リスト内のアイテム

JSON 表現
{
  "key": string
}
フィールド
key

string

必須。関連するタイプのエントリキー名と一致する NLU キー。

アドバイス

ユーザーに表示する入力候補です。

JSON 表現
{
  "title": string
}
フィールド
title

string

必須。候補ワードに表示されるテキスト。タップすると、あたかもユーザーがこのテキストをキーボードから入力したかのように、このテキストが会話にそのままポストバックされます。一連の候補ワードの間でタイトルが重複していてはなりません。最大 25 文字

診断

会話に関連する診断情報。

JSON 表現
{
  "actionsBuilderEvents": [
    {
      object (ExecutionEvent)
    }
  ]
}
フィールド
actionsBuilderEvents[]

object (ExecutionEvent)

Actions Builder のインタラクション モデルのステージにおける会話ラウンドの処理に関する詳細を含むイベントのリスト。Actions Builder と Actions SDK のアプリについてのみ入力されます。

ExecutionEvent

Actions Builder の会話リクエストの処理中に発生した実行イベントに関する情報が含まれています。会話リクエストに含まれるステージの概要については、https://developers.google.com/assistant/conversational/actions をご覧ください。

JSON 表現
{
  "eventTime": string,
  "executionState": {
    object (ExecutionState)
  },
  "status": {
    object (Status)
  },
  "warningMessages": [
    string
  ],

  // Union field EventData can be only one of the following:
  "userInput": {
    object (UserConversationInput)
  },
  "intentMatch": {
    object (IntentMatch)
  },
  "conditionsEvaluated": {
    object (ConditionsEvaluated)
  },
  "onSceneEnter": {
    object (OnSceneEnter)
  },
  "webhookRequest": {
    object (WebhookRequest)
  },
  "webhookResponse": {
    object (WebhookResponse)
  },
  "webhookInitiatedTransition": {
    object (WebhookInitiatedTransition)
  },
  "slotMatch": {
    object (SlotMatch)
  },
  "slotRequested": {
    object (SlotRequested)
  },
  "slotValidated": {
    object (SlotValidated)
  },
  "formFilled": {
    object (FormFilled)
  },
  "waitingUserInput": {
    object (WaitingForUserInput)
  },
  "endConversation": {
    object (EndConversation)
  }
  // End of list of possible types for union field EventData.
}
フィールド
eventTime

string (Timestamp format)

イベント発生時のタイムスタンプ。

RFC3339 UTC「Zulu」形式のタイムスタンプ。精度はナノ秒まで、小数点以下は最大 9 桁。例: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

executionState

object (ExecutionState)

このイベント中の実行の状態。

status

object (Status)

特定の実行ステップの結果のステータス。

warningMessages[]

string

このイベントの実行中に生成された警告のリスト。警告は、会話リクエスト中にデベロッパーが発見したヒントです。通常、これらは重大ではなく、リクエストの実行を停止しません。たとえば、存在しないカスタムのタイプを Webhook がオーバーライドしようとすると、警告が生成されることがあります。エラーは失敗のステータス コードとして報告されますが、ステータスが OK であっても警告が表示される場合があります。

共用体フィールド EventData。会話ラウンドの処理に関連する可能性のある、さまざまなイベントの詳細情報。ここで設定したフィールドでは、このイベントのタイプを定義します。EventData は次のいずれかになります。
userInput

object (UserConversationInput)

ユーザー入力処理イベント。

intentMatch

object (IntentMatch)

インテント マッチング イベント。

conditionsEvaluated

object (ConditionsEvaluated)

条件評価イベント。

onSceneEnter

object (OnSceneEnter)

OnSceneEnter 実行イベント。

webhookRequest

object (WebhookRequest)

Webhook リクエストのディスパッチ イベント。

webhookResponse

object (WebhookResponse)

Webhook レスポンス受信イベント。

webhookInitiatedTransition

object (WebhookInitiatedTransition)

Webhook で開始された遷移イベント。

slotMatch

object (SlotMatch)

スロット マッチング イベント。

slotRequested

object (SlotRequested)

スロット リクエスト イベント。

slotValidated

object (SlotValidated)

スロット検証イベント。

formFilled

object (FormFilled)

フォーム入力イベント。

waitingUserInput

object (WaitingForUserInput)

wait-for-user-input イベント。

endConversation

object (EndConversation)

会話終了イベント。

ExecutionState

実行の現在の状態。

JSON 表現
{
  "currentSceneId": string,
  "sessionStorage": {
    object
  },
  "slots": {
    object (Slots)
  },
  "promptQueue": [
    {
      object (Prompt)
    }
  ],
  "userStorage": {
    object
  },
  "householdStorage": {
    object
  }
}
フィールド
currentSceneId

string

現在アクティブなシーンの ID。

sessionStorage

object (Struct format)

セッション ストレージの状態: https://developers.google.com/assistant/conversational/storage-session

slots

object (Slots)

スロットフィルの状態(該当する場合): https://developers.google.com/assistant/conversational/scenes#slot_filling

promptQueue[]

object (Prompt)

プロンプト キュー: https://developers.google.com/assistant/conversational/prompts

userStorage

object (Struct format)

ユーザーのストレージの状態: https://developers.google.com/assistant/conversational/storage-user

householdStorage

object (Struct format)

ホーム ストレージの状態: https://developers.google.com/assistant/conversational/storage-home

スロット

シーンのスロットの現在の状態を表します。

JSON 表現
{
  "status": enum (SlotFillingStatus),
  "slots": {
    string: {
      object (Slot)
    },
    ...
  }
}
フィールド
status

enum (SlotFillingStatus)

スロットフィルの現在のステータス。

slots

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

現在のシーンに関連付けられているスロット。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

SlotFillingStatus

スロットフィルの現在のステータスを表します。

列挙型
UNSPECIFIED 使用状況フィールドに値が入力されていない場合のフォールバック値。
INITIALIZED スロットは初期化されていますが、スロットフィルは開始されていません。
COLLECTING スロットの値を収集しています。
FINAL スロットの値はすべて最終的なものであり、変更できません。

スロット

スロットを表します。

JSON 表現
{
  "mode": enum (SlotMode),
  "status": enum (SlotStatus),
  "value": value,
  "updated": boolean,
  "prompt": {
    object (Prompt)
  }
}
フィールド
mode

enum (SlotMode)

スロットのモード(必須または省略可)。デベロッパーが設定できます。

status

enum (SlotStatus)

スロットのステータス。

value

value (Value format)

スロットの値。レスポンスのこの値を変更すると、スロットフィルの値も変更されます。

updated

boolean

スロット値が最後のターンで収集されたかどうかを示します。このフィールドは読み取り専用です。

prompt

object (Prompt)

(省略可)このメッセージは、必須のスロットに広告を配信する必要がある場合に送信されます。このプロンプトは、コンソールで定義されている既存のプロンプトをオーバーライドします。このフィールドは Webhook リクエストに含まれません。

SlotMode

スロットのモード(必須かどうか)を表します。

列挙型
MODE_UNSPECIFIED 使用状況フィールドに値が入力されていない場合のフォールバック値。
OPTIONAL スロットフィルを完了するためにスロットは必要ないことを示します。
REQUIRED スロットフィルを完了するためにスロットが必要であることを示します。

SlotStatus

スロットのステータスを表します。

列挙型
SLOT_UNSPECIFIED 使用状況フィールドに値が入力されていない場合のフォールバック値。
EMPTY スロットに値がないことを示します。このステータスはレスポンスから変更できません。
INVALID スロットの値が無効であることを示します。このステータスはレスポンスで設定できます。
FILLED スロットに値があることを示します。このステータスはレスポンスから変更できません。

ステータス

Status 型は、REST API や RPC API など、さまざまなプログラミング環境に適した論理エラーモデルを定義します。gRPC により使用されます。各 Status メッセージには、エラーコード、エラー メッセージ、エラーの詳細という 3 種類のデータが含まれます。

このエラーモデルと操作方法について詳しくは、API 設計ガイドをご覧ください。

JSON 表現
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
フィールド
code

integer

ステータス コード。google.rpc.Code の列挙値である必要があります。

message

string

デベロッパー向けのエラー メッセージ。英語で記述します。ユーザー向けのエラー メッセージは、ローカライズして google.rpc.Status.details フィールドで送信するか、クライアントでローカライズする必要があります。

details[]

object

エラーの詳細を保持するメッセージのリスト。API が使用する共通のメッセージ タイプのセットがあります。

任意のデータ型のフィールドを含むオブジェクト。タイプを識別する URI を含むフィールド "@type" を追加できます。例: { "id": 1234, "@type": "types.example.com/standard/id" }

UserConversationInput

ユーザー入力に関する情報。

JSON 表現
{
  "type": string,
  "originalQuery": string
}
フィールド
type

string

ユーザー入力のタイプ。(キーボード、音声、タップなど)。

originalQuery

string

ユーザーが入力した元のテキスト。

IntentMatch

トリガーされたインテント マッチに関する情報(グローバルまたはシーン内): https://developers.google.com/assistant/conversational/intents

JSON 表現
{
  "intentId": string,
  "intentParameters": {
    string: {
      object (IntentParameterValue)
    },
    ...
  },
  "handler": string,
  "nextSceneId": string
}
フィールド
intentId

string

このインタラクションをトリガーしたインテント ID。

intentParameters

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

このインタラクションをトリガーしたインテントのパラメータ。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

handler

string

このインタラクションにアタッチされているハンドラの名前。

nextSceneId

string

このインタラクションにつながるシーン。

ConditionsEvaluated

条件評価の結果: https://developers.google.com/assistant/conversational/scenes#conditions

JSON 表現
{
  "failedConditions": [
    {
      object (Condition)
    }
  ],
  "successCondition": {
    object (Condition)
  }
}
フィールド
failedConditions[]

object (Condition)

「false」と評価された条件のリスト。

successCondition

object (Condition)

「true」と評価された最初の条件(存在する場合)。

条件

評価された条件です。

JSON 表現
{
  "expression": string,
  "handler": string,
  "nextSceneId": string
}
フィールド
expression

string

この条件で指定された式。

handler

string

評価された条件で指定されたハンドラ名。

nextSceneId

string

評価された条件で指定された目的地のシーン。

OnSceneEnter

onSceneEnter ステージの実行に関する情報: https://developers.google.com/assistant/conversational/scenes#onEnter

JSON 表現
{
  "handler": string
}
フィールド
handler

string

onSceneEnter イベントで指定されたハンドラ名。

WebhookRequest

アクション Webhook にディスパッチされたリクエストに関する情報: https://developers.google.com/assistant/conversational/webhooks#payloads

JSON 表現
{
  "requestJson": string
}
フィールド
requestJson

string

Webhook リクエストのペイロード。

WebhookResponse

アクション Webhook から受信したレスポンスに関する情報: https://developers.google.com/assistant/conversational/webhooks#payloads

JSON 表現
{
  "responseJson": string
}
フィールド
responseJson

string

Webhook レスポンスのペイロード。

WebhookInitiatedTransition

Webhook から返されたデスティネーション シーンによってトリガーされるイベント: https://developers.google.com/assistant/conversational/webhooks#transition_scenes

JSON 表現
{
  "nextSceneId": string
}
フィールド
nextSceneId

string

遷移が行われるシーンの ID。

SlotMatch

一致したスロットに関する情報: https://developers.google.com/assistant/conversational/scenes#slot_filling

JSON 表現
{
  "nluParameters": {
    string: {
      object (IntentParameterValue)
    },
    ...
  }
}
フィールド
nluParameters

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

ユーザー入力から NLU が抽出したパラメータ。

"key": value ペアのリストを含むオブジェクト。例: { "name": "wrench", "mass": "1.3kg", "count": "3" }

SlotRequested

現在リクエストされているスロットに関する情報: https://developers.google.com/assistant/conversational/scenes#slot_filling

JSON 表現
{
  "slot": string,
  "prompt": {
    object (Prompt)
  }
}
フィールド
slot

string

リクエストされたスロットの名前。

prompt

object (Prompt)

スロット プロンプト

SlotValidated

スロットの Webhook 検証が終了した後に発生するイベント: https://developers.google.com/assistant/conversational/scenes#slot_filling

FormFilled

フォームが完全に入力されたときに発生するイベント: https://developers.google.com/assistant/conversational/scenes#slot_filling

WaitingForUserInput

システムがユーザー入力を必要とするときに発生するイベント: https://developers.google.com/assistant/conversational/scenes#input

EndConversation

エージェントとの会話が終了したことを通知するイベント。