- HTTP 要求
 - 路徑參數
 - 要求主體
 - 回應主體
 - UserInput
 - InputType
 - 裝置屬性
 - Surface
 - Location
 - LatLng
 - 輸出內容
 - 畫布
 - 提示
 - 簡單
 - 內容
 - 資訊卡
 - 圖片
 - ImageFill
 - 連結
 - OpenUrl
 - UrlHint
 - 表格
 - TableColumn
 - HorizontalAlignment
 - TableRow
 - TableCell
 - 媒體
 - MediaType
 - OptionalMediaControls
 - MediaObject
 - MediaImage
 - 集合
 - CollectionItem
 - 清單
 - ListItem
 - 建議
 - 診斷
 - ExecutionEvent
 - ExecutionState
 - 版位
 - SlotFillingStatus
 - 版位
 - SlotMode
 - SlotStatus
 - Status
 - UserConversationInput
 - IntentMatch
 - ConditionsEvaluated
 - 條件
 - OnSceneEnter
 - WebhookRequest
 - WebhookResponse
 - WebhookInitiatedTransition
 - SlotMatch
 - SlotRequested
 - SlotValidated
 - FormFilled
 - WaitingForUserInput
 - EndConversation
 
進行一場對話。
HTTP 要求
POST https://actions.googleapis.com/v2/{project=projects/*}:sendInteraction
這個網址使用 gRPC 轉碼語法。
路徑參數
| 參數 | |
|---|---|
project | 
                
                   
 必要欄位。接受測試的專案,以專案 ID 表示。格式:projects/{project}  | 
              
要求主體
要求主體的資料會採用以下結構:
| JSON 表示法 | |
|---|---|
{ "input": { object (  | 
                |
| 欄位 | |
|---|---|
input | 
                  
                     
 必要欄位。使用者輸入內容。  | 
                
deviceProperties | 
                  
                     
 必要欄位。用於與動作互動的裝置屬性。  | 
                
conversationToken | 
                  
                     
 這個不透明權杖,必須在上一個互動時從 SendInteractionResponse 收到來傳遞。任何使用者都可取消設定,以便發起新的對話。不論是做為測試工作階段的首次互動,還是棄用先前的對話,並發起新對話,都可以執行這項操作。  | 
                
回應主體
如果成功,回應主體會含有以下結構的資料:
回覆對話回合。
| JSON 表示法 | |
|---|---|
{ "output": { object (  | 
                  |
| 欄位 | |
|---|---|
output | 
                    
                       
 提供給使用者的輸出內容。  | 
                  
diagnostics | 
                    
                       
 說明要求處理方式的診斷資訊。  | 
                  
conversationToken | 
                    
                       
 要在下一個遠端程序呼叫 (RPC) 上設定不透明權杖,以便繼續相同的對話。  | 
                  
UserInput
使用者在對話輪中提供的意見。
| JSON 表示法 | |
|---|---|
{
  "query": string,
  "type": enum ( | 
              |
| 欄位 | |
|---|---|
query | 
                
                   
 使用者傳送的輸入內容內容。  | 
              
type | 
                
                   
 輸入內容的類型。  | 
              
InputType
指出輸入來源、輸入的查詢或語音查詢。
| 列舉 | |
|---|---|
INPUT_TYPE_UNSPECIFIED | 
                未指定的輸入來源。 | 
TOUCH | 
                在 GUI 互動中查詢。 | 
VOICE | 
                語音查詢。 | 
KEYBOARD | 
                輸入的查詢。 | 
URL | 
                透過網址連結觸發動作。 | 
裝置屬性
與對話回合相關的裝置屬性。
| JSON 表示法 | |
|---|---|
{ "surface": enum (  | 
              |
| 欄位 | |
|---|---|
surface | 
                
                   
 用於與動作互動的介面。  | 
              
location | 
                
                   
 裝置位置,例如經緯度和格式化地址。  | 
              
locale | 
                
                   
 使用裝置上的設定語言。格式如下:https://tools.ietf.org/html/bcp47。範例:en、en-US、es-419 (如需更多範例,請前往 https://tools.ietf.org/html/bcp47#appendix-A)。  | 
              
timeZone | 
                
                   
 裝置設定的時區。格式必須遵循 IANA 時區資料庫,例如:「America/New_York」:https://www.iana.org/time-zones  | 
              
Surface
可能用於與動作互動的介面。日後可能會包含其他值。
| 列舉 | |
|---|---|
SURFACE_UNSPECIFIED | 
                預設值。這個值未使用。 | 
SPEAKER | 
                喇叭 (例如 Google Home)。 | 
PHONE | 
                。 | 
ALLO | 
                。 | 
SMART_DISPLAY | 
                智慧螢幕裝置。 | 
KAI_OS | 
                KaiOS | 
位置
代表位置的容器。
| JSON 表示法 | |
|---|---|
{
  "coordinates": {
    object ( | 
              |
| 欄位 | |
|---|---|
coordinates | 
                
                   
 地理座標。需要 [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 權限。  | 
              
formattedAddress | 
                
                   
 顯示地址,例如「110 臺北市信義區信義路五段 7 號」。需要 [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 權限。  | 
              
zipCode | 
                
                   
 郵遞區號。需要 [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 或 [DEVICE_COARSE_LOCATION] [google.actions.v2.Permission.DEVICE_COARSE_LOCATION] 權限。  | 
              
city | 
                
                   
 市區鄉鎮。需要 [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 | 
                
                   
 緯度度數,必須介於 [-90.0, +90.0] 的範圍之間。  | 
              
longitude | 
                
                   
 經度度數,必須介於 [-180.0, +180.0] 的範圍之間。  | 
              
輸出
使用者在對話回合中可以看到的輸出內容。
| JSON 表示法 | |
|---|---|
{ "text": string, "speech": [ string ], "canvas": { object (  | 
              |
| 欄位 | |
|---|---|
text | 
                
                   
 以純字串形式傳送的語音回應。  | 
              
speech[] | 
                
                   
 動作產生的語音內容。可能包含 SSML 等標記元素。  | 
              
canvas | 
                
                   
 互動式畫布內容。  | 
              
actionsBuilderPrompt | 
                
                   
 對話結束時的提示狀態。進一步瞭解提示:https://developers.google.com/assistant/conversational/prompts  | 
              
Canvas
代表要傳送給使用者的互動式畫布回應。這個屬性可與「firstSimple」搭配使用欄位,除了顯示互動式畫布回應外,還會提示使用者發言。回應的大小上限為 5 萬個位元組。
| JSON 表示法 | |
|---|---|
{ "url": string, "data": [ value ], "suppressMic": boolean, "enableFullScreen": boolean }  | 
              |
| 欄位 | |
|---|---|
url | 
                
                   
 要載入的互動式畫布網頁應用程式的網址。如果不設定這項政策,系統會重複使用目前使用中的畫布網址。  | 
              
data[] | 
                
                   
 選用設定。要以事件的形式傳遞至沉浸式體驗網頁的 JSON 資料。如果「覆寫」包含提示中的欄位為「false」系統會先按照先前的 Canvas 提示中定義的資料值,新增這個畫布提示中定義的資料值。  | 
              
suppressMic | 
                
                   
 選用設定。預設值為 false。  | 
              
enableFullScreen | 
                
                   
 如果   | 
              
提示
可代表使用者的回應。
| JSON 表示法 | |
|---|---|
{ "append": boolean, "override": boolean, "firstSimple": { object (  | 
              |
| 欄位 | |
|---|---|
append | 
                
                   
 選用設定。此訊息如何與先前定義的訊息合併的模式。「false」將清除先前定義的所有訊息 (第一個和最後一個簡單訊息、內容、建議連結和畫布),並新增這個提示中定義的訊息。「true」會將這個提示中定義的訊息加入先前的回應中定義的訊息。將這個欄位設為「true」也能在簡易提示、建議提示和畫布提示 (屬於內容提示的一部分) 中附加內容。系統將一律覆寫「內容和連結」訊息 (如提示中已定義)。預設值為「false」。  | 
              
override | 
                
                   
 選用設定。此訊息如何與先前定義的訊息合併的模式。「true」清除先前定義的所有訊息 (第一個和最後一個簡單訊息、內容、建議連結和畫布),並新增這個提示中定義的訊息。「false」會將這個提示中定義的訊息加入先前的回應中定義的訊息。將這個欄位保留「false」也能在簡易提示、建議提示和畫布提示 (位於內容提示部分) 中附加某些欄位。如在提示中定義了「內容和連結」訊息,一律會遭到覆寫。預設值為「false」。  | 
              
firstSimple | 
                
                   
 選用設定。第一個語音和純文字回應。  | 
              
content | 
                
                   
 選用設定。要向使用者顯示的資訊卡、清單或媒體等內容。  | 
              
lastSimple | 
                
                   
 選用設定。上次語音和純文字回應。  | 
              
suggestions[] | 
                
                   
 選用設定。向使用者顯示的建議,這些建議一律會出現在回應結尾。如果「覆寫」含有「false」欄位的子標題欄位,那麼系統就會將這個欄位中定義的標題新增至任何先前定義的建議提示中定義的標題,且重複值也會遭到移除。  | 
              
link | 
                
                   
 選用設定。其他建議方塊,可連結至相關應用程式或網站。方塊會顯示「開啟  | 
              
canvas | 
                
                   
 選用設定。代表要傳送給使用者的互動式畫布回應。  | 
              
簡潔
代表要傳送給使用者的簡單提示。
| JSON 表示法 | |
|---|---|
{ "speech": string, "text": string }  | 
              |
| 欄位 | |
|---|---|
speech | 
                
                   
 選用設定。代表要向使用者讀出的語音。可以是 SSML 或文字轉語音。如果「覆寫」欄位的值為「true」,那麼這個欄位中定義的語音會取代先前簡單提示的語音。  | 
              
text | 
                
                   
 選填的文字,會顯示在即時通訊泡泡中。如未指定,將顯示上方語音欄位的顯示內容。上限為 640 個半形字元。如果「覆寫」則包含「true」欄位,則這個欄位中定義的文字會取代先前簡易提示的文字。  | 
              
內容
要顯示的內容。
| JSON 表示法 | |
|---|---|
{ // Union field  | 
              |
| 欄位 | ||
|---|---|---|
聯集欄位 content。內容。content 只能是下列其中一項: | 
              ||
card | 
                
                   
 基本資訊卡。  | 
              |
image | 
                
                   
 圖片。  | 
              |
table | 
                
                   
 表格資訊卡。  | 
              |
media | 
                
                   
 用於表示要播放的一組媒體的回應。  | 
              |
canvas | 
                
                   
 用於互動式畫布體驗的回應。  | 
              |
collection | 
                
                   
 顯示一系列選項的資訊卡。  | 
              |
list | 
                
                   
 顯示選項清單的資訊卡。  | 
              |
資訊卡
顯示部分資訊的基本資訊卡,例如圖片及/或文字
| JSON 表示法 | |
|---|---|
{ "title": string, "subtitle": string, "text": string, "image": { object (  | 
              |
| 欄位 | |
|---|---|
title | 
                
                   
 資訊卡的整體標題。選填。  | 
              
subtitle | 
                
                   
 選填。  | 
              
text | 
                
                   
 資訊卡的內文。支援一組 Markdown 語法,以便用於格式設定。除非有圖片,否則此為必要屬性。  | 
              
image | 
                
                   
 資訊卡的主頁橫幅。高度固定為 192dp。選填。  | 
              
imageFill | 
                
                   
 圖片背景的填滿方式。選填。  | 
              
button | 
                
                   
 按鈕選填。  | 
              
圖片
資訊卡中顯示的圖片。
| JSON 表示法 | |
|---|---|
{ "url": string, "alt": string, "height": integer, "width": integer }  | 
              |
| 欄位 | |
|---|---|
url | 
                
                   
 圖片的來源網址。圖片可以是 JPG、PNG 和 GIF (動畫及非動畫)。例如:  | 
              
alt | 
                
                   
 用於無障礙的圖片文字說明,例如例如螢幕閱讀器和螢幕閱讀器等必填。  | 
              
height | 
                
                   
 圖片的高度 (以像素為單位)。選填。  | 
              
width | 
                
                   
 圖片寬度 (以像素為單位)。選填。  | 
              
ImageFill
可能影響圖片呈現方式的圖片顯示選項。當圖片的長寬比與圖片容器的顯示比例不符時,請使用此屬性。
| 列舉 | |
|---|---|
UNSPECIFIED | 
                未指定的圖片填滿。 | 
GRAY | 
                以灰色長條填上圖片和圖片容器之間的空白。 | 
WHITE | 
                使用白色長條來填補圖片和圖片容器之間的空白。 | 
CROPPED | 
                圖片大小經過調整,使圖片的寬度和高度符合或超過容器尺寸。如果調整後的圖片高度大於容器高度,圖片的頂端和底部可能會遭到裁剪;如果調整過的圖片寬度大於容器寬度,可能會裁剪圖片的左右兩側。這類似於「縮放模式」透過寬螢幕電視播放 4:3 影片 | 
連結
連結內容。
| JSON 表示法 | |
|---|---|
{
  "name": string,
  "open": {
    object ( | 
              |
| 欄位 | |
|---|---|
name | 
                
                   
 連結名稱  | 
              
open | 
                
                   
 使用者開啟連結後會發生什麼情況  | 
              
OpenUrl
使用者開啟連結時採取的動作。
| JSON 表示法 | |
|---|---|
{
  "url": string,
  "hint": enum ( | 
              |
| 欄位 | |
|---|---|
url | 
                
                   
 網址欄位,可能為下列任一值:- 用於開啟應用程式連結應用程式或網頁的 http/https 網址  | 
              
hint | 
                
                   
 用於表示網址類型的提示。  | 
              
UrlHint
不同類型的網址提示。
| 列舉 | |
|---|---|
LINK_UNSPECIFIED | 
                未指定 | 
AMP | 
                直接指向 AMP 內容的網址,或是透過 參照 AMP 內容的標準網址。 | 
資料表
顯示文字表格的表格資訊卡。
| JSON 表示法 | |
|---|---|
{ "title": string, "subtitle": string, "image": { object (  | 
              |
| 欄位 | |
|---|---|
title | 
                
                   
 表格的整體標題。選用,但如有設定字幕,則必須設定。  | 
              
subtitle | 
                
                   
 資料表的副標題。選填。  | 
              
image | 
                
                   
 與資料表相關聯的圖片。選填。  | 
              
columns[] | 
                
                   
 資料欄的標頭和對齊方式。  | 
              
rows[] | 
                
                   
 表格的資料列資料。我們保證會顯示前 3 列,但部分資料列可能只適用於特定介面。請使用模擬工具進行測試,以查看特定介面會顯示哪些資料列。在支援 WEB_BROWSER 功能的介面上,您可以將使用者導向至含有更多資料的網頁。  | 
              
button | 
                
                   
 按鈕。  | 
              
TableColumn
說明表格中的資料欄。
| JSON 表示法 | |
|---|---|
{
  "header": string,
  "align": enum ( | 
              |
| 欄位 | |
|---|---|
header | 
                
                   
 資料欄的標題文字。  | 
              
align | 
                
                   
 內容欄的水平對齊。如未指定,內容將會與前端對齊。  | 
              
HorizontalAlignment
儲存格內容對齊方式。
| 列舉 | |
|---|---|
UNSPECIFIED | 
                未指定水平對齊方式。 | 
LEADING | 
                儲存格的開頭邊緣。此為預設值。 | 
CENTER | 
                內容會與欄位中心對齊。 | 
TRAILING | 
                內容會與欄的結尾邊緣對齊。 | 
TableRow
說明資料表中的一列。
| JSON 表示法 | |
|---|---|
{
  "cells": [
    {
      object ( | 
              |
| 欄位 | |
|---|---|
cells[] | 
                
                   
 這一列的儲存格。我們保證會顯示前 3 個儲存格,但部分儲存格可能會遭到截斷。請使用模擬器進行測試,以瞭解特定表面會顯示哪些儲存格。  | 
              
divider | 
                
                   
 表示每列後方是否應有分隔線。  | 
              
TableCell
說明資料列中的儲存格。
| JSON 表示法 | |
|---|---|
{ "text": string }  | 
              |
| 欄位 | |
|---|---|
text | 
                
                   
 儲存格的文字內容。  | 
              
媒體
代表一個媒體物件。包含媒體相關資訊,例如名稱、說明、網址等。
| JSON 表示法 | |
|---|---|
{ "mediaType": enum (  | 
              |
| 欄位 | |
|---|---|
mediaType | 
                
                   
 媒體類型。  | 
              
startOffset | 
                
                   
 第一個媒體物件的開始偏移。 期間以秒為單位,小數部分最多九位數,以「  | 
              
optionalMediaControls[] | 
                
                   
 這個媒體回應工作階段支援的選用媒體控制項類型。如果設定此值,當特定媒體事件發生時,要求就會傳送到 3p。如未設定,則第三方代碼仍必須處理「FINISHED」和「失敗」這兩種預設控制項類型。  | 
              
mediaObjects[] | 
                
                   
 媒體物件清單  | 
              
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 ( | 
              |
| 欄位 | |
|---|---|
name | 
                
                   
 此媒體物件的名稱。  | 
              
description | 
                
                   
 此媒體物件的說明。  | 
              
url | 
                
                   
 指向媒體內容的網址。  | 
              
image | 
                
                   
 與媒體資訊卡一併顯示的圖片。  | 
              
MediaImage
與媒體資訊卡一併顯示的圖片。
| JSON 表示法 | |
|---|---|
{ // Union field  | 
              |
| 欄位 | ||
|---|---|---|
聯集欄位 image。圖片。image 只能是下列其中一項: | 
              ||
large | 
                
                   
 大型圖片,例如相簿封面等。  | 
              |
icon | 
                
                   
 顯示在標題右側的小型圖片圖示。已將大小調整為 36x36 dp。  | 
              |
集合
顯示一系列選項的資訊卡。
| JSON 表示法 | |
|---|---|
{ "title": string, "subtitle": string, "items": [ { object (  | 
              |
| 欄位 | |
|---|---|
title | 
                
                   
 珍藏內容的名稱。選填。  | 
              
subtitle | 
                
                   
 產品素材資源集合的副標題。選填。  | 
              
items[] | 
                
                   
 下限:2,上限:10  | 
              
imageFill | 
                
                   
 產品素材資源集合項目圖片背景的填滿方式。選填。  | 
              
CollectionItem
珍藏內容中的項目
| JSON 表示法 | |
|---|---|
{ "key": string }  | 
              |
| 欄位 | |
|---|---|
key | 
                
                   
 必要欄位。符合相關 Type 中項目索引鍵名稱的 NLU 金鑰。  | 
              
清單
顯示選項清單的資訊卡。
| JSON 表示法 | |
|---|---|
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object ( | 
              |
| 欄位 | |
|---|---|
title | 
                
                   
 清單的標題。選填。  | 
              
subtitle | 
                
                   
 清單的副標題。選填。  | 
              
items[] | 
                
                   
 下限:2,上限:30  | 
              
ListItem
清單中的項目
| JSON 表示法 | |
|---|---|
{ "key": string }  | 
              |
| 欄位 | |
|---|---|
key | 
                
                   
 必要欄位。符合相關 Type 中項目索引鍵名稱的 NLU 金鑰。  | 
              
建議
系統會向使用者顯示輸入建議。
| JSON 表示法 | |
|---|---|
{ "title": string }  | 
              |
| 欄位 | |
|---|---|
title | 
                
                   
 必要欄位。建議方塊中顯示的文字。使用者輕觸這段文字後,系統就會逐字張貼回對話,就像使用者已輸入訊息一樣。所有建議方塊的標題都不得重複。最多 25 個半形字元  | 
              
診斷
與對話回合相關的診斷資訊。
| JSON 表示法 | |
|---|---|
{
  "actionsBuilderEvents": [
    {
      object ( | 
              |
| 欄位 | |
|---|---|
actionsBuilderEvents[] | 
                
                   
 事件清單,詳細說明 Actions Builder 互動模型各階段的對話處理方式。為 Actions Builder 填入資料,僅限 Actions SDK 應用程式。  | 
              
ExecutionEvent
包含處理 Actions Builder 對話要求期間發生的執行事件相關資訊。如需對話要求各階段的總覽,請參閱 https://developers.google.com/assistant/conversational/actions。
| JSON 表示法 | |
|---|---|
{ "eventTime": string, "executionState": { object (  | 
              |
| 欄位 | ||
|---|---|---|
eventTime | 
                
                   
 事件發生時間戳記。 RFC3339 世界標準時間「Zulu」的時間戳記格式,解析度為奈秒,且最多 9 個小數位數。範例:  | 
              |
executionState | 
                
                   
 在此事件期間的執行狀態。  | 
              |
status | 
                
                   
 特定執行步驟的產生狀態。  | 
              |
warningMessages[] | 
                
                   
 執行此事件期間產生的警告清單。警告是開發人員在對話要求期間找到的提示。這些通常屬於非關鍵性質,不會停止執行要求。舉例來說,當 Webhook 嘗試覆寫不存在的自訂類型時,系統可能會產生警告。系統會將錯誤回報為失敗狀態碼,但即使狀態正常,警告仍可能出現。  | 
              |
聯集欄位 EventData。針對可能涉及處理討論對話的不同事件,提供詳細資訊。此處設定的欄位會定義該事件的類型。EventData 只能是下列其中一項: | 
              ||
userInput | 
                
                   
 使用者輸入處理事件。  | 
              |
intentMatch | 
                
                   
 意圖比對事件。  | 
              |
conditionsEvaluated | 
                
                   
 狀況評估事件。  | 
              |
onSceneEnter | 
                
                   
 OnSceneEnter 執行事件。  | 
              |
webhookRequest | 
                
                   
 Webhook 要求分派事件。  | 
              |
webhookResponse | 
                
                   
 Webhook 回應收據事件。  | 
              |
webhookInitiatedTransition | 
                
                   
 Webhook 啟動的轉換事件。  | 
              |
slotMatch | 
                
                   
 運算單元比對事件。  | 
              |
slotRequested | 
                
                   
 運算單元要求事件。  | 
              |
slotValidated | 
                
                   
 運算單元驗證事件。  | 
              |
formFilled | 
                
                   
 表單填寫事件。  | 
              |
waitingUserInput | 
                
                   
 等待使用者輸入事件。  | 
              |
endConversation | 
                
                   
 對話結束事件。  | 
              |
ExecutionState
執行作業的目前狀態。
| JSON 表示法 | |
|---|---|
{ "currentSceneId": string, "sessionStorage": { object }, "slots": { object (  | 
              |
| 欄位 | |
|---|---|
currentSceneId | 
                
                   
 目前使用中的場景 ID。  | 
              
sessionStorage | 
                
                   
 工作階段儲存空間狀態:https://developers.google.com/assistant/conversational/storage-session  | 
              
slots | 
                
                   
 運算單元填充狀態 (如適用):https://developers.google.com/assistant/conversational/scenes#slot_filling  | 
              
promptQueue[] | 
                
                   
 提示佇列:https://developers.google.com/assistant/conversational/prompts  | 
              
userStorage | 
                
                   
 使用者儲存空間狀態:https://developers.google.com/assistant/conversational/storage-user  | 
              
householdStorage | 
                
                   
 住家儲存空間狀態:https://developers.google.com/assistant/conversational/storage-home  | 
              
運算單元
代表場景版位的目前狀態。
| JSON 表示法 | |
|---|---|
{ "status": enum (  | 
              |
| 欄位 | |
|---|---|
status | 
                
                   
 運算單元填充的目前狀態。  | 
              
slots | 
                
                   
 與目前場景相關聯的版位。 這個物件中包含   | 
              
SlotFillingStatus
代表運算單元填充的目前狀態。
| 列舉 | |
|---|---|
UNSPECIFIED | 
                未填入「Usage」欄位時的備用值。 | 
INITIALIZED | 
                運算單元已初始化,但尚未開始運算單元填充。 | 
COLLECTING | 
                正在收集運算單元值。 | 
FINAL | 
                所有運算單元值皆為最終值,無法變更。 | 
運算單元
代表版位。
| JSON 表示法 | |
|---|---|
{ "mode": enum (  | 
              |
| 欄位 | |
|---|---|
mode | 
                
                   
 版位的模式 (必填或選填)。可由開發人員設定。  | 
              
status | 
                
                   
 時段的狀態。  | 
              
value | 
                
                   
 版位的值。如果變更回應中的這個值,系統就會修改運算單元填充中的值。  | 
              
updated | 
                
                   
 說明是否在上一個轉彎處收集運算單元值。這是唯讀欄位。  | 
              
prompt | 
                
                   
 選用設定。系統會在需要填入所需版位時,向使用者傳送這則提示。這個提示會覆寫控制台中定義的現有提示。Webhook 要求不包含這個欄位。  | 
              
SlotMode
代表運算單元的模式,亦即是否必要。
| 列舉 | |
|---|---|
MODE_UNSPECIFIED | 
                未填入「Usage」欄位時的備用值。 | 
OPTIONAL | 
                表示不需要完成運算單元填充。 | 
REQUIRED | 
                表示需要該運算單元才能完成運算單元填充。 | 
SlotStatus
代表時段狀態。
| 列舉 | |
|---|---|
SLOT_UNSPECIFIED | 
                未填入「Usage」欄位時的備用值。 | 
EMPTY | 
                表示該版位沒有任何值。此狀態無法透過回應修改。 | 
INVALID | 
                表示運算單元值無效。此狀態可透過回應設定。 | 
FILLED | 
                表示運算單元含有值。此狀態無法透過回應修改。 | 
狀態
Status 類型會定義適用於不同程式設計環境 (包含 REST API 和遠端程序呼叫 (RPC) API) 的邏輯錯誤模型。gRPC 會使用這個模型。每個 Status 訊息包含三部分的資料:錯誤代碼、錯誤訊息和錯誤詳細資料。
如要進一步瞭解這個錯誤模型,以及如何使用這個錯誤模型,請參閱 API 設計指南。
| JSON 表示法 | |
|---|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] }  | 
              |
| 欄位 | |
|---|---|
code | 
                
                   
 狀態碼,應為   | 
              
message | 
                
                   
 向開發人員顯示的錯誤訊息,應以英文呈現。凡是向使用者顯示的錯誤訊息,都應透過   | 
              
details[] | 
                
                   
 附有錯誤詳細資料的訊息清單。這是供 API 使用的一組常用訊息類型。 包含任意類型欄位的物件。額外的   | 
              
UserConversationInput
與使用者輸入內容相關的資訊。
| JSON 表示法 | |
|---|---|
{ "type": string, "originalQuery": string }  | 
              |
| 欄位 | |
|---|---|
type | 
                
                   
 使用者輸入內容類型。例如:鍵盤、語音、觸控等  | 
              
originalQuery | 
                
                   
 使用者提供的原始文字。  | 
              
IntentMatch
已觸發意圖比對 (全域或場景) 的相關資訊:https://developers.google.com/assistant/conversational/intents
| JSON 表示法 | |
|---|---|
{
  "intentId": string,
  "intentParameters": {
    string: {
      object ( | 
              |
| 欄位 | |
|---|---|
intentId | 
                
                   
 觸發這項互動的意圖 ID。  | 
              
intentParameters | 
                
                   
 觸發這項互動的意圖參數。 這個物件中包含   | 
              
handler | 
                
                   
 附加至此互動的處理常式名稱。  | 
              
nextSceneId | 
                
                   
 發生此互動時的場景。  | 
              
ConditionsEvaluated
條件評估的結果:https://developers.google.com/assistant/conversational/scenes#conditions
| JSON 表示法 | |
|---|---|
{ "failedConditions": [ { object (  | 
              |
| 欄位 | |
|---|---|
failedConditions[] | 
                
                   
 評估結果為「false」的條件清單。  | 
              
successCondition | 
                
                   
 第一個評估為「true」的條件 (如有)。  | 
              
條件
已評估的條件。
| JSON 表示法 | |
|---|---|
{ "expression": string, "handler": string, "nextSceneId": string }  | 
              |
| 欄位 | |
|---|---|
expression | 
                
                   
 此條件中指定的運算式。  | 
              
handler | 
                
                   
 評估條件中指定的處理常式名稱。  | 
              
nextSceneId | 
                
                   
 以評估條件指定的目的地場景。  | 
              
OnSceneEnter
onSceneEnter 階段執行的相關資訊:https://developers.google.com/assistant/conversational/scenes#onEnter
| JSON 表示法 | |
|---|---|
{ "handler": string }  | 
              |
| 欄位 | |
|---|---|
handler | 
                
                   
 onSceneEnter 事件中指定的處理常式名稱。  | 
              
WebhookRequest
如要瞭解調度至動作 Webhook 的要求相關資訊,請前往:https://developers.google.com/assistant/conversational/webhooks#payloads
| JSON 表示法 | |
|---|---|
{ "requestJson": string }  | 
              |
| 欄位 | |
|---|---|
requestJson | 
                
                   
 Webhook 要求的酬載。  | 
              
WebhookResponse
有關動作 Webhook 的回應資訊:https://developers.google.com/assistant/conversational/webhooks#payloads
| JSON 表示法 | |
|---|---|
{ "responseJson": string }  | 
              |
| 欄位 | |
|---|---|
responseJson | 
                
                   
 Webhook 回應的酬載。  | 
              
WebhookInitiatedTransition
Webhook 傳回的目的地場景觸發的事件:https://developers.google.com/assistant/conversational/webhooks#transition_scenes
| JSON 表示法 | |
|---|---|
{ "nextSceneId": string }  | 
              |
| 欄位 | |
|---|---|
nextSceneId | 
                
                   
 轉場效果實際前往的場景 ID。  | 
              
SlotMatch
相符版位的相關資訊:https://developers.google.com/assistant/conversational/scenes#slot_filling
| JSON 表示法 | |
|---|---|
{
  "nluParameters": {
    string: {
      object ( | 
              |
| 欄位 | |
|---|---|
nluParameters | 
                
                   
 NLU 從使用者輸入內容中擷取的參數。 這個物件中包含   | 
              
SlotRequested
目前要求的運算單元相關資訊:https://developers.google.com/assistant/conversational/scenes#slot_filling
| JSON 表示法 | |
|---|---|
{
  "slot": string,
  "prompt": {
    object ( | 
              |
| 欄位 | |
|---|---|
slot | 
                
                   
 要求的時段名稱。  | 
              
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
通知服務專員對話已結束的事件。