Method: projects.sendInteraction

播放一轮对话。

HTTP 请求

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

网址采用 gRPC 转码语法。

路径参数

参数
project

string

必需。被测项目,由项目 ID 表示。格式:projects/{project}

请求正文

请求正文中包含结构如下的数据:

JSON 表示法
{
  "input": {
    object (UserInput)
  },
  "deviceProperties": {
    object (DeviceProperties)
  },
  "conversationToken": string
}
字段
input

object (UserInput)

必需。用户提供的内容。

deviceProperties

object (DeviceProperties)

必需。用于与 Action 互动的设备属性。

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 操作是由网址链接触发的。

设备属性

与对话回合相关的设备属性。

JSON 表示法
{
  "surface": enum (Surface),
  "location": {
    object (Location)
  },
  "locale": string,
  "timeZone": string
}
字段
surface

enum (Surface)

用于与 Action 互动的 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

可用于与 Action 互动的可能 surface。将来可能会添加其他值。

枚举
SURFACE_UNSPECIFIED 默认值。此值未使用。
SPEAKER 扬声器(例如 Google Home)。
PHONE 手机。
ALLO Allo Chat。
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

相应 Action 生成的语音内容。这可能包括 SSML 等标记元素。

canvas

object (Canvas)

Interactive Canvas

actionsBuilderPrompt

object (Prompt)

对话结束时的提示状态。如需详细了解该提示,请访问:https://developers.google.com/assistant/conversational/prompts

画布

表示要发送给用户的 Interactive Canvas 响应。此方法可与“firstSimple”字段。响应的大小上限为 50k 字节。

JSON 表示法
{
  "url": string,
  "data": [
    value
  ],
  "suppressMic": boolean,
  "enableFullScreen": boolean
}
字段
url

string

要加载的交互式画布 Web 应用的网址。如果您未设置此政策,系统会重复使用当前有效画布中的网址。

data[]

value (Value format)

可选。要作为事件传递到沉浸式体验网页的 JSON 数据。如果“替换”字段的值为“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”还会启用附加至简单提示、建议提示和画布提示(内容提示的一部分)中的某些字段。如果提示中指定了“内容”和“链接”消息,这些消息将始终会被覆盖。默认值为“false”。

override

boolean

可选。指定如何将此消息与之前定义的消息合并的模式。“true”清除以前定义的所有消息(第一个和最后一个简单消息、内容、建议链接和画布),并添加此提示中定义的消息。“false”将此提示中定义的消息添加到之前响应中定义的消息。将此字段保留为“false”还支持向“简单提示”“建议”提示和“画布”提示(属于“内容”提示的一部分)内的部分字段附加内容。如果提示中指定了“内容”和“链接”消息,它们始终会被覆盖。默认值为“false”。

firstSimple

object (Simple)

可选。第一条语音回复和纯文字回复。

content

object (Content)

可选。向用户显示的卡片、列表或媒体等内容。

lastSimple

object (Simple)

可选。最后一次语音和纯文字回复。

suggestions[]

object (Suggestion)

可选。要向用户显示的建议,这些建议将始终显示在响应末尾。如果“替换”字段的值为“false”,此字段中定义的标题将添加到之前定义的任何建议提示中定义的标题,并移除重复值。

canvas

object (Canvas)

可选。表示要发送给用户的 Interactive Canvas 响应。

简单

表示要发送给用户的简单提示。

JSON 表示法
{
  "speech": string,
  "text": string
}
字段
speech

string

可选。表示向用户说出的语音。可以是 SSML 或文字转语音。如果“替换”字段的值为“true”,则此字段中定义的语音将替换上一个简单提示的语音。

text

string

要在聊天气泡中显示的可选文本。如果未指定,系统将使用呈现方式呈现上述语音字段。不得超过 640 个字符。如果“替换”字段的值为“true”,则此字段中定义的文本将替换成上一个简单提示的文本。

内容

要显示的内容。

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)

显示可供选择的选项列表的卡片。

卡片

用于显示某些信息的基本卡片,如图片和/或文字

JSON 表示法
{
  "title": string,
  "subtitle": string,
  "text": string,
  "image": {
    object (Image)
  },
  "imageFill": enum (ImageFill),
  "button": {
    object (Link)
  }
}
字段
title

string

卡片的总体标题。可选。

subtitle

string

可选。

text

string

卡片的正文。支持一组数量有限的 Markdown 语法。必填,除非显示图片。

image

object (Image)

卡片的主打图片。高度固定为 192dp。可选。

imageFill

enum (ImageFill)

图片背景的填充方式。可选。

button

object (Link)

按钮。可选。

映像

卡片中显示的图片。

JSON 表示法
{
  "url": string,
  "alt": string,
  "height": integer,
  "width": integer
}
字段
url

string

图片的来源网址。图片可以是 JPG、PNG 和 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

网址字段,可以是以下任一项:- 用于打开与应用关联的应用或网页的 http/https 网址

hint

enum (UrlHint)

表示网址类型的提示。

UrlHint

不同类型的网址提示。

枚举
AMP 直接指向 AMP 内容的网址,或通过 指向指向 AMP 内容的规范网址的网址。

用于显示文本表格的表格卡片。

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 行保证会显示,但其他行可能会被在某些平台上剪切。请使用模拟器进行测试,看看将针对给定 Surface 显示哪些行。在支持 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 个单元格一定会显示,但其他单元格可能会被在某些表面上剪切。请使用模拟器进行测试,看看将针对给定 Surface 显示哪些单元格。

divider

boolean

指示每行后是否应有分隔线。

TableCell

描述一行中的单元格。

JSON 表示法
{
  "text": string
}
字段
text

string

单元格的文本内容。

媒体

表示一个媒体对象。包含有关媒体的信息,例如名称、说明、网址等。

JSON 表示法
{
  "mediaType": enum (MediaType),
  "startOffset": string,
  "optionalMediaControls": [
    enum (OptionalMediaControls)
  ],
  "mediaObjects": [
    {
      object (MediaObject)
    }
  ]
}
字段
mediaType

enum (MediaType)

媒体类型。

startOffset

string (Duration format)

第一个媒体对象的起始偏移量。

该持续时间以秒为单位,最多包含九个小数位,以“s”结尾。示例:"3.5s"

optionalMediaControls[]

enum (OptionalMediaControls)

此媒体响应会话可以支持的可选媒体控件类型。如果设置,当发生特定媒体事件时,系统会向第三方发送请求。如果此政策未设置,3p 仍必须处理两种默认控件类型: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

指向媒体内容的网址。

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)

标题右侧会显示一个小图片图标。其大小已调整为 36x36 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,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

executionState

object (ExecutionState)

此事件期间的执行状态。

status

object (Status)

特定执行步骤的结果状态。

warningMessages[]

string

此事件执行期间生成的警告列表。警告是在对话请求过程中为开发者发现的提示。这些通常是非关键的,不会中断请求的执行。例如,当网络钩子尝试替换不存在的自定义类型时,可能会生成警告。错误会报告为失败的状态代码,但即使状态为正常,也可能会显示警告。

联合字段 EventData。特定于处理对话过程中可能涉及的不同事件的详细信息。此处设置的字段定义了此事件的类型。EventData 只能是下列其中一项:
userInput

object (UserConversationInput)

用户输入处理事件。

intentMatch

object (IntentMatch)

intent 匹配事件。

conditionsEvaluated

object (ConditionsEvaluated)

条件评估事件。

onSceneEnter

object (OnSceneEnter)

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)

Waiting-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)

可选。系统会在需要时向用户发送此提示,以填充所需的槽位。此提示会替换控制台中定义的现有提示。网络钩子请求中不包含此字段。

SlotMode

表示槽的模式,即是否必需。

枚举
MODE_UNSPECIFIED 未填充用法字段时的后备值。
OPTIONAL 表示完成槽填充不需要槽。
REQUIRED 指示必须有相应槽才能完成槽位填充。

SlotStatus

表示广告位的状态。

枚举
SLOT_UNSPECIFIED 未填充用法字段时的后备值。
EMPTY 表示广告位没有任何值。此状态无法通过响应进行修改。
INVALID 表示槽值无效。可通过响应来设置此状态。
FILLED 表示广告位具有值。此状态无法通过响应进行修改。

状态

Status 类型定义了适用于不同编程环境(包括 REST API 和 RPC API)的逻辑错误模型。此类型供 gRPC 使用。每条 Status 消息包含三部分数据:错误代码、错误消息和错误详细信息。

如需详细了解该错误模型及其使用方法,请参阅 API 设计指南

JSON 表示法
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
字段
code

integer

状态代码,应为 google.rpc.Code 的枚举值。

message

string

面向开发者的错误消息(应采用英语)。任何向用户显示的错误消息都应进行本地化并通过 google.rpc.Status.details 字段发送,或者由客户端进行本地化。

details[]

object

包含错误详细信息的消息列表。有一组通用的消息类型可供 API 使用。

可以包含任意类型字段的对象。附加字段 "@type" 包含用于标示相应类型的 URI。示例:{ "id": 1234, "@type": "types.example.com/standard/id" }

UserConversationInput

与用户输入相关的信息。

JSON 表示法
{
  "type": string,
  "originalQuery": string
}
字段
type

string

用户输入的类型。例如:键盘、语音、触摸等

originalQuery

string

用户输入的原始文本。

IntentMatch

有关触发的 intent 匹配(全局或场景内)的信息:https://developers.google.com/assistant/conversational/intents

JSON 表示法
{
  "intentId": string,
  "intentParameters": {
    string: {
      object (IntentParameterValue)
    },
    ...
  },
  "handler": string,
  "nextSceneId": string
}
字段
intentId

string

触发此互动的 intent 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

有关分派给 Action webhook 的请求的信息:https://developers.google.com/assistant/conversational/webhooks#payloads

JSON 表示法
{
  "requestJson": string
}
字段
requestJson

string

webhook 请求的载荷。

WebhookResponse

从操作网络钩子收到的响应的相关信息: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

槽的网络钩子验证完成后发生的事件: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

通知与客服人员的对话已结束的事件。