- HTTP 请求
 - 路径参数
 - 请求正文
 - 响应正文
 - UserInput
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - InputType
 - 设备属性
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - Surface
 - Location
 - LatLng
 - 输出
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - 画布
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - 提示
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - 简单
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - 内容
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - 卡片
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - 图片
 - ImageFill
 - 链接
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - OpenUrl
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - UrlHint
 - 表
 - TableColumn
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - HorizontalAlignment
 - TableRow
 - TableCell
 - 媒体
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - MediaType
 - OptionalMediaControls
 - MediaObject
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - MediaImage
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - 集合
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - CollectionItem
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - 列表
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - ListItem
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - 建议
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - 诊断
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - ExecutionEvent
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - ExecutionState
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - 槽
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - SlotFillingStatus
 - 槽
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - SlotMode
 - SlotStatus
 - 状态
 - UserConversationInput
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - IntentMatch
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - ConditionsEvaluated
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - 使用情况
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - OnSceneEnter
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - WebhookRequest
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - WebhookResponse
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - WebhookInitiatedTransition
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - SlotMatch
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - SlotRequested
          <ph type="x-smartling-placeholder">
- </ph>
            
 - JSON 表示法
 
 - SlotValidated
 - FormFilled
 - WaitingForUserInput
 - EndConversation
 
播放一轮对话。
HTTP 请求
POST https://actions.googleapis.com/v2/{project=projects/*}:sendInteraction
网址采用 gRPC 转码语法。
路径参数
| 参数 | |
|---|---|
project | 
                
                   
 必需。被测项目,由项目 ID 表示。格式:projects/{project}  | 
              
请求正文
请求正文中包含结构如下的数据:
| JSON 表示法 | |
|---|---|
{ "input": { object (  | 
                |
| 字段 | |
|---|---|
input | 
                  
                     
 必需。用户提供的内容。  | 
                
deviceProperties | 
                  
                     
 必需。用于与 Action 互动的设备属性。  | 
                
conversationToken | 
                  
                     
 不透明令牌,必须按照在上一次交互中从 SendInteractionResponse 接收时进行传递。若要发起新对话(作为测试会话的首次互动),或者放弃先前的对话并开始新对话,可以不设置此政策。  | 
                
响应正文
如果成功,响应正文将包含结构如下的数据:
回复一轮对话。
| JSON 表示法 | |
|---|---|
{ "output": { object (  | 
                  |
| 字段 | |
|---|---|
output | 
                    
                       
 向用户提供的输出。  | 
                  
diagnostics | 
                    
                       
 用于说明请求处理方式的诊断信息。  | 
                  
conversationToken | 
                    
                       
 需在下一次 RPC 调用时在 SendInteractionRequest 上设置的不透明令牌,以便继续同一对话。  | 
                  
UserInput
对话回合中提供的用户输入。
| JSON 表示法 | |
|---|---|
{
  "query": string,
  "type": enum ( | 
              |
| 字段 | |
|---|---|
query | 
                
                   
 用户发送的输入的内容。  | 
              
type | 
                
                   
 输入的类型。  | 
              
InputType
指示输入源、输入的查询或语音查询。
| 枚举 | |
|---|---|
INPUT_TYPE_UNSPECIFIED | 
                未指定的输入来源。 | 
TOUCH | 
                来自 GUI 交互的查询。 | 
VOICE | 
                语音查询。 | 
KEYBOARD | 
                输入的查询。 | 
URL | 
                操作是由网址链接触发的。 | 
设备属性
与对话回合相关的设备属性。
| JSON 表示法 | |
|---|---|
{ "surface": enum (  | 
              |
| 字段 | |
|---|---|
surface | 
                
                   
 用于与 Action 互动的 Surface。  | 
              
location | 
                
                   
 设备位置信息,例如纬度、经度和格式化的地址。  | 
              
locale | 
                
                   
 设备上设置的语言区域。格式应遵循 BCP 47 要求: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
可用于与 Action 互动的可能 surface。将来可能会添加其他值。
| 枚举 | |
|---|---|
SURFACE_UNSPECIFIED | 
                默认值。此值未使用。 | 
SPEAKER | 
                扬声器(例如 Google Home)。 | 
PHONE | 
                手机。 | 
ALLO | 
                Allo Chat。 | 
SMART_DISPLAY | 
                智能显示屏设备。 | 
KAI_OS | 
                KaiOS。 | 
位置
表示位置的容器。
| JSON 表示法 | |
|---|---|
{
  "coordinates": {
    object ( | 
              |
| 字段 | |
|---|---|
coordinates | 
                
                   
 地理坐标。需要 [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] 权限。  | 
              
formattedAddress | 
                
                   
 显示地址,例如“1600 Amphitheatre Pkwy, Mountain View, CA 94043”。需要 [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[] | 
                
                   
 相应 Action 生成的语音内容。这可能包括 SSML 等标记元素。  | 
              
canvas | 
                
                   
 Interactive Canvas  | 
              
actionsBuilderPrompt | 
                
                   
 对话结束时的提示状态。如需详细了解该提示,请访问:https://developers.google.com/assistant/conversational/prompts  | 
              
画布
表示要发送给用户的 Interactive Canvas 响应。此方法可与“firstSimple”字段。响应的大小上限为 50k 字节。
| JSON 表示法 | |
|---|---|
{ "url": string, "data": [ value ], "suppressMic": boolean, "enableFullScreen": boolean }  | 
              |
| 字段 | |
|---|---|
url | 
                
                   
 要加载的交互式画布 Web 应用的网址。如果您未设置此政策,系统会重复使用当前有效画布中的网址。  | 
              
data[] | 
                
                   
 可选。要作为事件传递到沉浸式体验网页的 JSON 数据。如果“替换”字段的值为“false”此 Canvas 提示中定义的数据值将添加到之前的 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 | 
                
                   
 可选。表示要发送给用户的 Interactive 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 行保证会显示,但其他行可能会被在某些平台上剪切。请使用模拟器进行测试,看看将针对给定 Surface 显示哪些行。在支持 WEB_BROWSER 功能的平台上,您可以将用户引导至包含更多数据的网页。  | 
              
button | 
                
                   
 按钮。  | 
              
TableColumn
描述表中的列。
| JSON 表示法 | |
|---|---|
{
  "header": string,
  "align": enum ( | 
              |
| 字段 | |
|---|---|
header | 
                
                   
 列的标题文本。  | 
              
align | 
                
                   
 内容与列的水平对齐方式。如果未指定,内容将与前缘对齐。  | 
              
HorizontalAlignment
内容在单元格中的对齐方式。
| 枚举 | |
|---|---|
UNSPECIFIED | 
                未指定水平对齐。 | 
LEADING | 
                单元格的前缘。这是默认值。 | 
CENTER | 
                内容与列的中心对齐。 | 
TRAILING | 
                内容与列的尾随边缘对齐。 | 
TableRow
描述表中的行。
| JSON 表示法 | |
|---|---|
{
  "cells": [
    {
      object ( | 
              |
| 字段 | |
|---|---|
cells[] | 
                
                   
 此行中的单元格。前 3 个单元格一定会显示,但其他单元格可能会被在某些表面上剪切。请使用模拟器进行测试,看看将针对给定 Surface 显示哪些单元格。  | 
              
divider | 
                
                   
 指示每行后是否应有分隔线。  | 
              
TableCell
描述一行中的单元格。
| JSON 表示法 | |
|---|---|
{ "text": string }  | 
              |
| 字段 | |
|---|---|
text | 
                
                   
 单元格的文本内容。  | 
              
媒体
表示一个媒体对象。包含有关媒体的信息,例如名称、说明、网址等。
| JSON 表示法 | |
|---|---|
{ "mediaType": enum (  | 
              |
| 字段 | |
|---|---|
mediaType | 
                
                   
 媒体类型。  | 
              
startOffset | 
                
                   
 第一个媒体对象的起始偏移量。 该持续时间以秒为单位,最多包含九个小数位,以“  | 
              
optionalMediaControls[] | 
                
                   
 此媒体响应会话可以支持的可选媒体控件类型。如果设置,当发生特定媒体事件时,系统会向第三方发送请求。如果此政策未设置,3p 仍必须处理两种默认控件类型:FINISHED 和 FAILED。  | 
              
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 | 
                
                   
 必需。与关联类型中的条目键名匹配的 NLU 键。  | 
              
列表
显示可供选择的选项列表的卡片。
| JSON 表示法 | |
|---|---|
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object ( | 
              |
| 字段 | |
|---|---|
title | 
                
                   
 列表的标题。可选。  | 
              
subtitle | 
                
                   
 列表的副标题。可选。  | 
              
items[] | 
                
                   
 最小值:2 最大值:30  | 
              
ListItem
列表中的一个项
| JSON 表示法 | |
|---|---|
{ "key": string }  | 
              |
| 字段 | |
|---|---|
key | 
                
                   
 必需。与关联类型中的条目键名匹配的 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 世界协调时间(UTC,即“祖鲁时”)格式,精确到纳秒,最多九个小数位。示例:  | 
              |
executionState | 
                
                   
 此事件期间的执行状态。  | 
              |
status | 
                
                   
 特定执行步骤的结果状态。  | 
              |
warningMessages[] | 
                
                   
 此事件执行期间生成的警告列表。警告是在对话请求过程中为开发者发现的提示。这些通常是非关键的,不会中断请求的执行。例如,当网络钩子尝试替换不存在的自定义类型时,可能会生成警告。错误会报告为失败的状态代码,但即使状态为正常,也可能会显示警告。  | 
              |
联合字段 EventData。特定于处理对话过程中可能涉及的不同事件的详细信息。此处设置的字段定义了此事件的类型。EventData 只能是下列其中一项: | 
              ||
userInput | 
                
                   
 用户输入处理事件。  | 
              |
intentMatch | 
                
                   
 intent 匹配事件。  | 
              |
conditionsEvaluated | 
                
                   
 条件评估事件。  | 
              |
onSceneEnter | 
                
                   
 OnSceneEnter 执行事件。  | 
              |
webhookRequest | 
                
                   
 网络钩子请求调度事件。  | 
              |
webhookResponse | 
                
                   
 网络钩子响应接收事件。  | 
              |
webhookInitiatedTransition | 
                
                   
 网络钩子发起的转换事件。  | 
              |
slotMatch | 
                
                   
 广告位匹配事件。  | 
              |
slotRequested | 
                
                   
 广告位请求事件。  | 
              |
slotValidated | 
                
                   
 槽验证事件。  | 
              |
formFilled | 
                
                   
 表单填写事件。  | 
              |
waitingUserInput | 
                
                   
 Waiting-for-user-input 事件。  | 
              |
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 | 
                未填充用法字段时的后备值。 | 
INITIALIZED | 
                槽已初始化,但尚未开始填充槽。 | 
COLLECTING | 
                正在收集槽值。 | 
FINAL | 
                所有广告位值都是最终值,无法更改。 | 
广告位
表示广告位。
| JSON 表示法 | |
|---|---|
{ "mode": enum (  | 
              |
| 字段 | |
|---|---|
mode | 
                
                   
 槽的模式(必需或可选)。可由开发者设置。  | 
              
status | 
                
                   
 广告位的状态。  | 
              
value | 
                
                   
 广告位的值。在响应中更改此值,会修改槽填充中的值。  | 
              
updated | 
                
                   
 指明槽值是否在上次回合时收集。此字段为只读字段。  | 
              
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 | 
                
                   
 状态代码,应为   | 
              
message | 
                
                   
 面向开发者的错误消息(应采用英语)。任何向用户显示的错误消息都应进行本地化并通过   | 
              
details[] | 
                
                   
 包含错误详细信息的消息列表。有一组通用的消息类型可供 API 使用。 可以包含任意类型字段的对象。附加字段   | 
              
UserConversationInput
与用户输入相关的信息。
| JSON 表示法 | |
|---|---|
{ "type": string, "originalQuery": string }  | 
              |
| 字段 | |
|---|---|
type | 
                
                   
 用户输入的类型。例如:键盘、语音、触摸等  | 
              
originalQuery | 
                
                   
 用户输入的原始文本。  | 
              
IntentMatch
有关触发的 intent 匹配(全局或场景内)的信息:https://developers.google.com/assistant/conversational/intents
| JSON 表示法 | |
|---|---|
{
  "intentId": string,
  "intentParameters": {
    string: {
      object ( | 
              |
| 字段 | |
|---|---|
intentId | 
                
                   
 触发此互动的 intent 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
有关分派给 Action webhook 的请求的信息:https://developers.google.com/assistant/conversational/webhooks#payloads
| JSON 表示法 | |
|---|---|
{ "requestJson": string }  | 
              |
| 字段 | |
|---|---|
requestJson | 
                
                   
 webhook 请求的载荷。  | 
              
WebhookResponse
从操作网络钩子收到的响应的相关信息: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
槽的网络钩子验证完成后发生的事件: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
通知与客服人员的对话已结束的事件。