Method: projects.sendInteraction

Phát một vòng của cuộc trò chuyện.

Yêu cầu HTTP

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

URL sử dụng cú pháp Chuyển mã gRPC.

Tham số đường dẫn

Tham số
project

string

Bắt buộc. Dự án đang được thử nghiệm, được biểu thị bằng Mã dự án. Định dạng: dự án/{project}

Nội dung yêu cầu

Nội dung yêu cầu chứa dữ liệu có cấu trúc sau:

Biểu diễn dưới dạng JSON
{
  "input": {
    object (UserInput)
  },
  "deviceProperties": {
    object (DeviceProperties)
  },
  "conversationToken": string
}
Trường
input

object (UserInput)

Bắt buộc. Thông tin đầu vào do người dùng cung cấp.

deviceProperties

object (DeviceProperties)

Bắt buộc. Các thuộc tính của thiết bị dùng để tương tác với Hành động.

conversationToken

string

Mã thông báo mờ phải được chuyển dưới dạng nhận được từ Send quânResponseResponse vào lần tương tác trước đó. Bạn có thể không đặt chính sách này để bắt đầu một cuộc trò chuyện mới dưới dạng lượt tương tác đầu tiên của phiên thử nghiệm hoặc bỏ qua cuộc trò chuyện trước đó và bắt đầu một cuộc trò chuyện mới.

Nội dung phản hồi

Nếu thành công, phần nội dung phản hồi sẽ chứa dữ liệu có cấu trúc sau:

Trả lời một vòng cuộc trò chuyện.

Biểu diễn dưới dạng JSON
{
  "output": {
    object (Output)
  },
  "diagnostics": {
    object (Diagnostics)
  },
  "conversationToken": string
}
Trường
output

object (Output)

Kết quả được cung cấp cho người dùng.

diagnostics

object (Diagnostics)

Thông tin chẩn đoán giải thích cách chúng tôi xử lý yêu cầu.

conversationToken

string

Mã thông báo mờ sẽ được đặt trên Send ỞRequest trong lệnh gọi RPC tiếp theo để tiếp tục cuộc trò chuyện tương tự.

UserInput

Dữ liệu do người dùng nhập vào trong một cuộc trò chuyện.

Biểu diễn dưới dạng JSON
{
  "query": string,
  "type": enum (InputType)
}
Trường
query

string

Nội dung của thông tin đầu vào do người dùng gửi.

type

enum (InputType)

Loại thông tin đầu vào.

InputType

Cho biết nguồn đầu vào, truy vấn đã nhập hoặc truy vấn bằng giọng nói.

Enum
INPUT_TYPE_UNSPECIFIED Nguồn đầu vào không xác định.
TOUCH Truy vấn từ một hoạt động tương tác GUI (Giao diện người dùng đồ hoạ).
VOICE Truy vấn bằng giọng nói.
KEYBOARD Truy vấn đã nhập.
URL Hành động này đã được kích hoạt bởi một đường liên kết URL.

Thuộc tính thiết bị

Các thuộc tính của thiết bị liên quan đến một cuộc trò chuyện.

Biểu diễn dưới dạng JSON
{
  "surface": enum (Surface),
  "location": {
    object (Location)
  },
  "locale": string,
  "timeZone": string
}
Trường
surface

enum (Surface)

Nền tảng dùng để tương tác với Hành động.

location

object (Location)

Thông tin vị trí của thiết bị, chẳng hạn như vĩ độ, kinh độ và địa chỉ đã định dạng.

locale

string

Ngôn ngữ như đã đặt trên thiết bị. Định dạng phải tuân theo BCP 47: https://tools.ietf.org/html/bcp47 Ví dụ: en, en-US, es-419 (xem thêm ví dụ tại https://tools.ietf.org/html/bcp47#appendix-A).

timeZone

string

Múi giờ như đã đặt trên thiết bị. Định dạng phải tuân theo Cơ sở dữ liệu múi giờ của IANA, ví dụ: "Hoa Kỳ/New_New": https://www.iana.org/time-zones

Bề mặt

Các nền tảng có thể được dùng để tương tác với Hành động. Các giá trị bổ sung có thể được bao gồm trong tương lai.

Enum
SURFACE_UNSPECIFIED Giá trị mặc định. Giá trị này chưa được sử dụng.
SPEAKER Loa (ví dụ: Google Home).
PHONE Điện thoại.
ALLO Trò chuyện trên Allo.
SMART_DISPLAY Thiết bị hiển thị thông minh.
KAI_OS KaiOS.

Vị trí

Vùng chứa đại diện cho một vị trí.

Biểu diễn dưới dạng JSON
{
  "coordinates": {
    object (LatLng)
  },
  "formattedAddress": string,
  "zipCode": string,
  "city": string
}
Trường
coordinates

object (LatLng)

Toạ độ địa lý. Yêu cầu [DEVICE_PRECISE_LOCATION] Quyền [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION].

formattedAddress

string

Địa chỉ hiển thị, ví dụ: "1600 Amphitheatre Pkwy, Mountain View, CA 94043". Yêu cầu [DEVICE_PRECISE_LOCATION] Quyền [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION].

zipCode

string

Mã bưu chính. Yêu cầu [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] hoặc [DEVICE_COARSE_LOCATION] Quyền [google.actions.v2.Permission.DEVICE_COARSE_LOCATION].

city

string

Thành phố. Yêu cầu [DEVICE_PRECISE_LOCATION] [google.actions.v2.Permission.DEVICE_PRECISE_LOCATION] hoặc [DEVICE_COARSE_LOCATION] Quyền [google.actions.v2.Permission.DEVICE_COARSE_LOCATION].

LatLng

Đối tượng đại diện cho cặp vĩ độ/kinh độ. Giá trị này được biểu thị bằng cặp số đại diện cho vĩ độ và độ kinh độ. Trừ phi có quy định khác, đối tượng này phải tuân thủ tiêu chuẩn WGS84. Giá trị phải nằm trong phạm vi chuẩn hoá.

Biểu diễn dưới dạng JSON
{
  "latitude": number,
  "longitude": number
}
Trường
latitude

number

Vĩ độ tính bằng độ. Giá trị này phải nằm trong khoảng [-90.0, +90.0].

longitude

number

Kinh độ tính bằng độ. Giá trị này phải nằm trong khoảng [-180.0, +180.0].

Đầu ra

Kết quả mà người dùng nhìn thấy cho cuộc trò chuyện liên quan.

Biểu diễn dưới dạng JSON
{
  "text": string,
  "speech": [
    string
  ],
  "canvas": {
    object (Canvas)
  },
  "actionsBuilderPrompt": {
    object (Prompt)
  }
}
Trường
text

string

Câu trả lời bằng giọng nói được gửi cho người dùng dưới dạng một chuỗi thuần tuý.

speech[]

string

Nội dung lời nói do Hành động tạo ra. Chẳng hạn như các phần tử đánh dấu như SSML.

canvas

object (Canvas)

Nội dung tương tác trên Canvas.

actionsBuilderPrompt

object (Prompt)

Trạng thái của lời nhắc khi kết thúc cuộc trò chuyện. Xem thêm thông tin về lời nhắc: https://developers.google.com/assistant/conversational/prompts

Canvas

Biểu thị phản hồi Canvas tương tác sẽ được gửi đến người dùng. Bạn có thể dùng lệnh này cùng với "firstSimple" trong câu lệnh chứa lời nhắc để nói chuyện với người dùng ngoài việc hiển thị phản hồi canvas tương tác. Kích thước tối đa của phản hồi là 50k byte.

Biểu diễn dưới dạng JSON
{
  "url": string,
  "data": [
    value
  ],
  "suppressMic": boolean,
  "enableFullScreen": boolean
}
Trường
url

string

URL của ứng dụng canvas tương tác trên web cần tải. Nếu bạn không đặt chính sách này, thì URL của canvas đang hoạt động sẽ được sử dụng lại.

data[]

value (Value format)

Không bắt buộc. Dữ liệu JSON được truyền đến trang web trải nghiệm sống động dưới dạng sự kiện. Nếu giá trị "ghi đè" trường trong câu lệnh chứa là "false" các giá trị dữ liệu được xác định trong lời nhắc Canvas này sẽ được thêm vào sau giá trị dữ liệu được xác định trong các lời nhắc Canvas trước đó.

suppressMic

boolean

Không bắt buộc. Giá trị mặc định: false.

enableFullScreen

boolean

Nếu true, ứng dụng canvas sẽ chiếm toàn màn hình và không có tiêu đề ở trên cùng. Một thông báo ngắn cũng sẽ xuất hiện trên màn hình tải, bao gồm tên hiển thị của Hành động, tên nhà phát triển và hướng dẫn thoát khỏi Hành động đó. Giá trị mặc định: false.

Câu lệnh

Thể hiện một phản hồi cho người dùng.

Biểu diễn dưới dạng JSON
{
  "append": boolean,
  "override": boolean,
  "firstSimple": {
    object (Simple)
  },
  "content": {
    object (Content)
  },
  "lastSimple": {
    object (Simple)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ],
  "link": {
    object (Link)
  },
  "canvas": {
    object (Canvas)
  }
}
Trường
append
(deprecated)

boolean

Không bắt buộc. Chế độ cho biết cách hợp nhất tin nhắn này với tin nhắn đã xác định trước đó. "sai" sẽ xoá mọi thông báo đã xác định trước đó (đơn giản đầu tiên và cuối cùng, nội dung, đường liên kết đề xuất và canvas) đồng thời thêm các thông báo được xác định trong câu lệnh này. "đúng" sẽ thêm tin nhắn được xác định trong câu lệnh này vào các tin nhắn được xác định trong các câu trả lời trước đó. Đặt trường này thành "true" cũng sẽ cho phép thêm vào một số trường trong câu lệnh Đơn giản, lời nhắc Đề xuất và lời nhắc Canvas (một phần của lời nhắc Nội dung). Các nội dung Nội dung và Đường liên kết sẽ luôn bị ghi đè nếu được xác định trong câu lệnh. Giá trị mặc định là "false".

override

boolean

Không bắt buộc. Chế độ cho biết cách hợp nhất tin nhắn này với tin nhắn đã xác định trước đó. "đúng" xoá tất cả các thông báo đã xác định trước đó (đơn giản đầu tiên và cuối cùng, nội dung, đường liên kết đề xuất và canvas) đồng thời thêm các thông báo được xác định trong câu lệnh này. "sai" thêm thông báo được xác định trong câu lệnh này vào các tin nhắn đã xác định trong các câu trả lời trước đó. Để trường này thành "false" cũng cho phép thêm một số trường bên trong lời nhắc Đơn giản, lời nhắc Đề xuất và lời nhắc Canvas (một phần của lời nhắc Nội dung). Các nội dung Nội dung và Đường liên kết luôn bị ghi đè nếu được xác định trong câu lệnh. Giá trị mặc định là "false".

firstSimple

object (Simple)

Không bắt buộc. Câu trả lời đầu tiên chỉ có văn bản và giọng nói.

content

object (Content)

Không bắt buộc. Một nội dung như thẻ, danh sách hoặc nội dung nghe nhìn để hiển thị với người dùng.

lastSimple

object (Simple)

Không bắt buộc. Câu trả lời gần đây nhất chỉ có văn bản và giọng nói.

suggestions[]

object (Suggestion)

Không bắt buộc. Nội dung đề xuất sẽ hiển thị với người dùng và sẽ luôn xuất hiện ở cuối câu trả lời. Nếu giá trị "ghi đè" trường trong câu lệnh chứa là "false", tiêu đề được xác định trong trường này sẽ được thêm vào các tiêu đề được xác định trong mọi câu lệnh đề xuất đã xác định trước đó và các giá trị trùng lặp sẽ bị xoá.

canvas

object (Canvas)

Không bắt buộc. Biểu thị phản hồi Canvas tương tác sẽ được gửi đến người dùng.

Đơn giản

Biểu thị một lời nhắc đơn giản cần gửi cho người dùng.

Biểu diễn dưới dạng JSON
{
  "speech": string,
  "text": string
}
Trường
speech

string

Không bắt buộc. Biểu thị lời nói sẽ được đọc với người dùng. Có thể là SSML hoặc chuyển văn bản sang lời nói. Nếu giá trị "ghi đè" trong câu lệnh chứa "true", lời nói được xác định trong trường này sẽ thay thế lời nói của câu lệnh Đơn giản trước đó.

text

string

Văn bản không bắt buộc hiển thị trong bong bóng trò chuyện. Nếu không cung cấp, hình ảnh kết xuất hiển thị của trường lời nói ở trên sẽ được sử dụng. Tối đa 640 ký tự. Nếu giá trị "ghi đè" trường trong câu lệnh chứa là "true", văn bản được xác định trong trường này sẽ thay thế thành văn bản của câu lệnh Đơn giản trước đó.

Nội dung

Nội dung sẽ được hiển thị.

Biểu diễn dưới dạng 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.
}
Trường
Trường kết hợp content. Nội dung. content chỉ có thể là một trong những trạng thái sau đây:
card

object (Card)

Một thẻ cơ bản.

image

object (Image)

Một hình ảnh.

table

object (Table)

Thẻ bảng.

media

object (Media)

Phản hồi cho biết một nhóm nội dung nghe nhìn sẽ phát.

canvas
(deprecated)

object (Canvas)

Câu trả lời dùng cho trải nghiệm canvas tương tác.

collection

object (Collection)

Một thẻ cho thấy một tập hợp các lựa chọn.

list

object (List)

Một thẻ trình bày danh sách các lựa chọn để bạn lựa chọn.

Thẻ

Thẻ cơ bản để hiển thị một số thông tin, ví dụ: hình ảnh và/hoặc văn bản.

Biểu diễn dưới dạng JSON
{
  "title": string,
  "subtitle": string,
  "text": string,
  "image": {
    object (Image)
  },
  "imageFill": enum (ImageFill),
  "button": {
    object (Link)
  }
}
Trường
title

string

Tiêu đề chung của thẻ. Không bắt buộc.

subtitle

string

Không bắt buộc.

text

string

Văn bản nội dung của thẻ. Hỗ trợ một số cú pháp đánh dấu có giới hạn để định dạng. Bắt buộc, trừ phi có hình ảnh.

image

object (Image)

Hình ảnh chính cho thẻ. Chiều cao được cố định là 192 dp. Không bắt buộc.

imageFill

enum (ImageFill)

Cách tô nền hình ảnh. Không bắt buộc.

button

object (Link)

Nút. Không bắt buộc.

Bài đăng có hình ảnh

Hình ảnh hiển thị trong thẻ.

Biểu diễn dưới dạng JSON
{
  "url": string,
  "alt": string,
  "height": integer,
  "width": integer
}
Trường
url

string

URL nguồn của hình ảnh. Hình ảnh có thể ở định dạng JPG, PNG và GIF (ảnh động và tĩnh). Ví dụ: https://www.agentx.com/logo.png. Bắt buộc.

alt

string

Nội dung mô tả bằng văn bản của hình ảnh dùng để tăng khả năng tiếp cận, ví dụ: trình đọc màn hình. Bắt buộc.

height

integer

Chiều cao của hình ảnh tính bằng pixel. Không bắt buộc.

width

integer

Chiều rộng của hình ảnh tính bằng pixel. Không bắt buộc.

ImageFill

Các tuỳ chọn hiển thị hình ảnh có thể gây ảnh hưởng đến bản trình bày hình ảnh. Bạn nên sử dụng chế độ cài đặt này khi tỷ lệ cỡ ảnh của hình ảnh không khớp với tỷ lệ cỡ ảnh của vùng chứa hình ảnh.

Enum
UNSPECIFIED Lấp đầy hình ảnh không xác định.
GRAY Lấp đầy khoảng trống giữa hình ảnh và vùng chứa hình ảnh bằng các thanh màu xám.
WHITE Lấp đầy khoảng trống giữa hình ảnh và vùng chứa hình ảnh bằng các thanh màu trắng.
CROPPED Hình ảnh được điều chỉnh theo tỷ lệ sao cho chiều rộng và chiều cao của hình ảnh khớp hoặc vượt quá kích thước vùng chứa. Thao tác này có thể cắt phần đầu và phần dưới cùng của hình ảnh nếu chiều cao hình ảnh được điều chỉnh theo tỷ lệ lớn hơn chiều cao vùng chứa hoặc cắt phần bên trái và bên phải của hình ảnh nếu chiều rộng hình ảnh được điều chỉnh theo tỷ lệ lớn hơn chiều rộng vùng chứa. Chế độ này tương tự như "Chế độ thu phóng" trên TV màn hình rộng khi phát video 4:3.

OpenUrl

Hành động được thực hiện khi người dùng mở đường liên kết.

Biểu diễn dưới dạng JSON
{
  "url": string,
  "hint": enum (UrlHint)
}
Trường
url

string

Trường URL có thể là bất kỳ trường hợp nào sau đây: – URL http/https để mở một Ứng dụng liên kết với ứng dụng hoặc một trang web

hint

enum (UrlHint)

Cho biết gợi ý về loại url.

UrlHint

Các loại gợi ý url khác nhau.

Enum
AMP URL trỏ trực tiếp đến nội dung AMP hoặc đến một URL chính tắc tham chiếu đến nội dung AMP thông qua .

Bảng

Thẻ bảng để hiển thị một bảng văn bản.

Biểu diễn dưới dạng JSON
{
  "title": string,
  "subtitle": string,
  "image": {
    object (Image)
  },
  "columns": [
    {
      object (TableColumn)
    }
  ],
  "rows": [
    {
      object (TableRow)
    }
  ],
  "button": {
    object (Link)
  }
}
Trường
title

string

Tiêu đề chung của bảng. Không bắt buộc nhưng bạn phải đặt tiêu đề phụ nếu đã đặt tiêu đề phụ.

subtitle

string

Tiêu đề phụ cho bảng. Không bắt buộc.

image

object (Image)

Hình ảnh được liên kết với bảng. Không bắt buộc.

columns[]

object (TableColumn)

Tiêu đề và căn chỉnh cột.

rows[]

object (TableRow)

Dữ liệu về hàng của bảng. 3 hàng đầu tiên được đảm bảo sẽ xuất hiện, nhưng các hàng khác có thể bị cắt bớt trên một số nền tảng nhất định. Vui lòng kiểm tra với trình mô phỏng để xem những hàng nào sẽ hiển thị cho một nền tảng nhất định. Trên các nền tảng hỗ trợ chức năng WEB_BROWSER, bạn có thể hướng người dùng đến một trang web có nhiều dữ liệu hơn.

button

object (Link)

Nút.

TableColumn

Mô tả một cột trong bảng.

Biểu diễn dưới dạng JSON
{
  "header": string,
  "align": enum (HorizontalAlignment)
}
Trường
header

string

Văn bản tiêu đề cho cột.

align

enum (HorizontalAlignment)

Căn chỉnh theo chiều ngang của cột nội dung. Nếu bạn chưa chỉ định, nội dung sẽ được căn chỉnh theo cạnh trên.

HorizontalAlignment

Căn chỉnh nội dung trong ô.

Enum
UNSPECIFIED Căn chỉnh ngang không xác định.
LEADING Cạnh trên cùng của ô. Đây là tuỳ chọn mặc định.
CENTER Nội dung được căn chỉnh vào giữa cột.
TRAILING Nội dung được căn chỉnh theo cạnh sau của cột.

TableRow

Mô tả một hàng trong bảng.

Biểu diễn dưới dạng JSON
{
  "cells": [
    {
      object (TableCell)
    }
  ],
  "divider": boolean
}
Trường
cells[]

object (TableCell)

Các ô trong hàng này. 3 ô đầu tiên được đảm bảo sẽ xuất hiện, nhưng các ô khác có thể bị cắt trên một số bề mặt. Vui lòng kiểm tra với trình mô phỏng để xem những ô nào sẽ hiển thị cho một bề mặt nhất định.

divider

boolean

Cho biết có cần có dải phân cách sau mỗi hàng hay không.

TableCell

Mô tả một ô trong một hàng.

Biểu diễn dưới dạng JSON
{
  "text": string
}
Trường
text

string

Nội dung văn bản của ô.

Nội dung nghe nhìn

Đại diện cho một đối tượng nội dung nghe nhìn. Chứa thông tin về nội dung nghe nhìn, chẳng hạn như tên, nội dung mô tả, URL, v.v.

Biểu diễn dưới dạng JSON
{
  "mediaType": enum (MediaType),
  "startOffset": string,
  "optionalMediaControls": [
    enum (OptionalMediaControls)
  ],
  "mediaObjects": [
    {
      object (MediaObject)
    }
  ]
}
Trường
mediaType

enum (MediaType)

Loại nội dung nghe nhìn.

startOffset

string (Duration format)

Độ lệch bắt đầu của đối tượng nội dung nghe nhìn đầu tiên.

Thời lượng tính bằng giây với tối đa 9 chữ số phân số, kết thúc bằng "s". Ví dụ: "3.5s".

optionalMediaControls[]

enum (OptionalMediaControls)

Các loại chế độ điều khiển nội dung nghe nhìn (không bắt buộc) mà phiên phản hồi nội dung nghe nhìn này có thể hỗ trợ. Nếu bạn đặt chính sách này, yêu cầu sẽ được gửi đến bên thứ ba khi một sự kiện đa phương tiện nhất định xảy ra. Nếu không được thiết lập, ứng dụng 3p vẫn phải xử lý hai loại điều khiển mặc định là FinishED (KẾT THÚC) và FAILED (KHÔNG THÀNH CÔNG).

mediaObjects[]

object (MediaObject)

Danh sách đối tượng nội dung đa phương tiện

MediaType

Loại nội dung nghe nhìn của câu trả lời này.

Enum
MEDIA_TYPE_UNSPECIFIED Loại phương tiện chưa được chỉ định.
AUDIO Tệp âm thanh.
MEDIA_STATUS_ACK Phản hồi để xác nhận báo cáo trạng thái nội dung nghe nhìn.

OptionalMediaControls

Các loại chế độ điều khiển nội dung nghe nhìn (không bắt buộc) mà tính năng phản hồi của nội dung nghe nhìn có thể hỗ trợ

Enum
OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED Giá trị không xác định
PAUSED Sự kiện đã tạm dừng. Được kích hoạt khi người dùng tạm dừng nội dung nghe nhìn.
STOPPED Đã dừng sự kiện. Được kích hoạt khi người dùng thoát khỏi phiên 3p trong quá trình phát nội dung đa phương tiện.

MediaObject

Đại diện cho một đối tượng nội dung nghe nhìn duy nhất

Biểu diễn dưới dạng JSON
{
  "name": string,
  "description": string,
  "url": string,
  "image": {
    object (MediaImage)
  }
}
Trường
name

string

Tên của đối tượng nội dung đa phương tiện này.

description

string

Nội dung mô tả về đối tượng nội dung nghe nhìn này.

url

string

URL trỏ đến nội dung đa phương tiện.

image

object (MediaImage)

Hình ảnh sẽ hiển thị với thẻ nội dung nghe nhìn.

MediaImage

Hình ảnh sẽ hiển thị với thẻ nội dung nghe nhìn.

Biểu diễn dưới dạng 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.
}
Trường
Trường kết hợp image. Hình ảnh. image chỉ có thể là một trong những trạng thái sau đây:
large

object (Image)

Một hình ảnh lớn, chẳng hạn như ảnh bìa đĩa nhạc, v.v.

icon

object (Image)

Một biểu tượng hình ảnh nhỏ hiển thị ở bên phải tiêu đề. Kích thước đã đổi kích thước thành 36x36 dp.

Bộ sưu tập

Thẻ để trình bày một tập hợp các lựa chọn.

Biểu diễn dưới dạng JSON
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (CollectionItem)
    }
  ],
  "imageFill": enum (ImageFill)
}
Trường
title

string

Tiêu đề của bộ sưu tập. Không bắt buộc.

subtitle

string

Tiêu đề phụ của bộ sưu tập. Không bắt buộc.

items[]

object (CollectionItem)

tối thiểu: 2 tối đa: 10

imageFill

enum (ImageFill)

Cách tô nền hình ảnh của các mục trong bộ sưu tập. Không bắt buộc.

CollectionItem

Một mục trong bộ sưu tập

Biểu diễn dưới dạng JSON
{
  "key": string
}
Trường
key

string

Bắt buộc. Khoá NLU khớp với tên khoá kết nối trong Loại được liên kết.

Danh sách

Thẻ để trình bày danh sách các lựa chọn.

Biểu diễn dưới dạng JSON
{
  "title": string,
  "subtitle": string,
  "items": [
    {
      object (ListItem)
    }
  ]
}
Trường
title

string

Tiêu đề của danh sách. Không bắt buộc.

subtitle

string

Tiêu đề phụ của danh sách. Không bắt buộc.

items[]

object (ListItem)

tối thiểu: 2 tối đa: 30

ListItem

Một mục trong danh sách

Biểu diễn dưới dạng JSON
{
  "key": string
}
Trường
key

string

Bắt buộc. Khoá NLU khớp với tên khoá kết nối trong Loại được liên kết.

Đề xuất

Mục đề xuất đầu vào sẽ hiển thị cho người dùng.

Biểu diễn dưới dạng JSON
{
  "title": string
}
Trường
title

string

Bắt buộc. Văn bản xuất hiện trong khối đề xuất. Khi được nhấn, văn bản này sẽ được đăng lại nguyên văn vào cuộc trò chuyện như thể người dùng đã nhập văn bản đó. Mỗi tiêu đề phải là duy nhất trong tập hợp các khối đề xuất. Tối đa 25 ký tự

Chẩn đoán

Thông tin chẩn đoán liên quan đến cuộc trò chuyện liên quan.

Biểu diễn dưới dạng JSON
{
  "actionsBuilderEvents": [
    {
      object (ExecutionEvent)
    }
  ]
}
Trường
actionsBuilderEvents[]

object (ExecutionEvent)

Danh sách sự kiện kèm theo thông tin chi tiết về quá trình xử lý cuộc trò chuyện trong suốt các giai đoạn của mô hình tương tác Trình tạo hành động. Được điền sẵn cho Trình tạo hành động và Chỉ dành cho ứng dụng SDK Hành động.

ExecutionEvent

Chứa thông tin về sự kiện thực thi xảy ra trong quá trình xử lý yêu cầu trò chuyện trong Trình tạo hành động. Để biết thông tin tổng quan về các giai đoạn liên quan đến yêu cầu trò chuyện, hãy xem https://developers.google.com/assistant/conversational/actions.

Biểu diễn dưới dạng 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.
}
Trường
eventTime

string (Timestamp format)

Dấu thời gian khi sự kiện diễn ra.

Dấu thời gian theo múi giờ "Zulu" RFC3339 (giờ UTC) với độ phân giải nano giây và lên đến 9 chữ số phân số. Ví dụ: "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z".

executionState

object (ExecutionState)

Trạng thái thực thi trong sự kiện này.

status

object (Status)

Trạng thái kết quả của bước thực thi cụ thể.

warningMessages[]

string

Danh sách các cảnh báo được tạo trong quá trình thực thi Sự kiện này. Cảnh báo là các mẹo mà nhà phát triển nắm được trong quá trình yêu cầu trò chuyện. Các sự cố này thường không quan trọng và không làm gián đoạn quá trình thực thi yêu cầu. Ví dụ: hệ thống có thể tạo cảnh báo khi webhook cố gắng thay thế một Loại tuỳ chỉnh không tồn tại. Lỗi được báo cáo là mã trạng thái không thành công, nhưng cảnh báo có thể xuất hiện ngay cả khi trạng thái ổn.

Trường kết hợp EventData. Thông tin chi tiết liên quan đến nhiều sự kiện có thể liên quan đến quá trình xử lý một cuộc trò chuyện. Trường đặt ở đây xác định loại sự kiện này. EventData chỉ có thể là một trong những trạng thái sau đây:
userInput

object (UserConversationInput)

Sự kiện xử lý hoạt động đầu vào của người dùng.

intentMatch

object (IntentMatch)

Sự kiện so khớp ý định.

conditionsEvaluated

object (ConditionsEvaluated)

Sự kiện đánh giá tình trạng.

onSceneEnter

object (OnSceneEnter)

Sự kiện thực thi OnSceneEnter.

webhookRequest

object (WebhookRequest)

Sự kiện gửi yêu cầu webhook.

webhookResponse

object (WebhookResponse)

Sự kiện xác nhận phản hồi webhook.

webhookInitiatedTransition

object (WebhookInitiatedTransition)

Sự kiện chuyển đổi do webhook khởi tạo.

slotMatch

object (SlotMatch)

Sự kiện so khớp vị trí.

slotRequested

object (SlotRequested)

Sự kiện yêu cầu vị trí.

slotValidated

object (SlotValidated)

Sự kiện xác thực vị trí.

formFilled

object (FormFilled)

Sự kiện điền biểu mẫu.

waitingUserInput

object (WaitingForUserInput)

Sự kiện chờ người dùng nhập.

endConversation

object (EndConversation)

Sự kiện kết thúc cuộc trò chuyện.

ExecutionState

Trạng thái thực thi hiện tại.

Biểu diễn dưới dạng JSON
{
  "currentSceneId": string,
  "sessionStorage": {
    object
  },
  "slots": {
    object (Slots)
  },
  "promptQueue": [
    {
      object (Prompt)
    }
  ],
  "userStorage": {
    object
  },
  "householdStorage": {
    object
  }
}
Trường
currentSceneId

string

Mã nhận dạng của cảnh hiện đang hoạt động.

sessionStorage

object (Struct format)

Trạng thái bộ nhớ phiên: https://developers.google.com/assistant/conversational/storage-session

slots

object (Slots)

Trạng thái lấp đầy chỗ trống, nếu có: https://developers.google.com/assistant/conversational/scenes#slot_filling

promptQueue[]

object (Prompt)

Hàng đợi lời nhắc: https://developers.google.com/assistant/conversational/prompts

userStorage

object (Struct format)

Trạng thái bộ nhớ của người dùng: https://developers.google.com/assistant/conversational/storage-user

householdStorage

object (Struct format)

Trạng thái bộ nhớ tại nhà: https://developers.google.com/assistant/conversational/storage-home

Máy đánh bạc

Đại diện cho trạng thái hiện tại của các ô của cảnh.

Biểu diễn dưới dạng JSON
{
  "status": enum (SlotFillingStatus),
  "slots": {
    string: {
      object (Slot)
    },
    ...
  }
}
Trường
status

enum (SlotFillingStatus)

Trạng thái hiện tại của việc lấp đầy vùng.

slots

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

Các vị trí được liên kết với cảnh hiện tại.

Một đối tượng chứa danh sách các cặp "key": value. Ví dụ: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

SlotFillingStatus

Biểu thị trạng thái hiện tại của vùng quảng cáo.

Enum
UNSPECIFIED Giá trị dự phòng khi trường sử dụng không được điền.
INITIALIZED Các ô đã được khởi chạy nhưng chưa bắt đầu lấp đầy ô.
COLLECTING Hệ thống đang thu thập các giá trị vị trí.
FINAL Tất cả giá trị vị trí đều là cuối cùng và không thể thay đổi.

Khe

Đại diện cho một vị trí.

Biểu diễn dưới dạng JSON
{
  "mode": enum (SlotMode),
  "status": enum (SlotStatus),
  "value": value,
  "updated": boolean,
  "prompt": {
    object (Prompt)
  }
}
Trường
mode

enum (SlotMode)

Chế độ của vùng quảng cáo (bắt buộc hoặc không bắt buộc). Nhà phát triển có thể thiết lập.

status

enum (SlotStatus)

Trạng thái của vị trí.

value

value (Value format)

Giá trị của vị trí. Việc thay đổi giá trị này trong phản hồi sẽ sửa đổi giá trị khi lấp đầy vùng.

updated

boolean

Cho biết liệu giá trị ô có được thu thập vào lượt cuối cùng hay không. Trường này ở chế độ chỉ đọc.

prompt

object (Prompt)

Không bắt buộc. Hệ thống sẽ gửi lời nhắc này cho người dùng khi họ cần lấp đầy một khoảng trống bắt buộc. Câu lệnh này sẽ ghi đè câu lệnh hiện có được xác định trong bảng điều khiển. Trường này không được đưa vào yêu cầu webhook.

SlotMode

Biểu thị chế độ của một vị trí, tức là có bắt buộc hay không.

Enum
MODE_UNSPECIFIED Giá trị dự phòng khi trường sử dụng không được điền.
OPTIONAL Cho biết rằng không bắt buộc phải hoàn tất khung giờ để lấp đầy khung giờ.
REQUIRED Cho biết rằng khu vực cần quảng cáo để hoàn tất việc lấp đầy ô.

SlotStatus

Biểu thị trạng thái của một vị trí.

Enum
SLOT_UNSPECIFIED Giá trị dự phòng khi trường sử dụng không được điền.
EMPTY Cho biết vùng không có giá trị nào. Bạn không thể sửa đổi trạng thái này thông qua phản hồi.
INVALID Cho biết giá trị của vị trí quảng cáo không hợp lệ. Bạn có thể đặt trạng thái này thông qua phản hồi.
FILLED Cho biết vị trí có một giá trị. Bạn không thể sửa đổi trạng thái này thông qua phản hồi.

Trạng thái

Loại Status xác định mô hình lỗi logic phù hợp với nhiều môi trường lập trình, bao gồm cả API REST và API RPC. Hàm này được gRPC sử dụng. Mỗi thông báo Status chứa 3 phần dữ liệu: mã lỗi, thông báo lỗi và thông tin chi tiết về lỗi.

Bạn có thể tìm hiểu thêm về mô hình lỗi này cũng như cách xử lý trong Hướng dẫn thiết kế API.

Biểu diễn dưới dạng JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Trường
code

integer

Mã trạng thái, phải là một giá trị enum của google.rpc.Code.

message

string

Thông báo lỗi dành cho nhà phát triển, phải bằng tiếng Anh. Mọi thông báo lỗi dành cho người dùng đều phải được bản địa hoá và gửi trong trường google.rpc.Status.details hoặc để ứng dụng bản địa hoá.

details[]

object

Danh sách các thông báo chứa thông tin chi tiết về lỗi. Có một nhóm loại thông báo phổ biến để API sử dụng.

Một đối tượng có chứa các trường thuộc loại tuỳ ý. Trường bổ sung "@type" chứa URI xác định kiểu. Ví dụ: { "id": 1234, "@type": "types.example.com/standard/id" }.

UserConversationInput

Thông tin liên quan đến hoạt động đầu vào của người dùng.

Biểu diễn dưới dạng JSON
{
  "type": string,
  "originalQuery": string
}
Trường
type

string

Loại hoạt động đầu vào của người dùng. Ví dụ: bàn phím, giọng nói, thao tác chạm, v.v.

originalQuery

string

Văn bản gốc do người dùng nhập.

IntentMatch

Thông tin về việc so khớp ý định được kích hoạt (chung hoặc trong một cảnh): https://developers.google.com/assistant/conversational/intents

Biểu diễn dưới dạng JSON
{
  "intentId": string,
  "intentParameters": {
    string: {
      object (IntentParameterValue)
    },
    ...
  },
  "handler": string,
  "nextSceneId": string
}
Trường
intentId

string

Mã ý định đã kích hoạt lượt tương tác này.

intentParameters

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

Các tham số ý định đã kích hoạt lượt tương tác này.

Một đối tượng chứa danh sách các cặp "key": value. Ví dụ: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

handler

string

Tên của trình xử lý gắn liền với hoạt động tương tác này.

nextSceneId

string

Cảnh mà hoạt động tương tác này dẫn đến.

ConditionsEvaluated

Kết quả đánh giá tình trạng sức khoẻ: https://developers.google.com/assistant/conversational/scenes#conditions

Biểu diễn dưới dạng JSON
{
  "failedConditions": [
    {
      object (Condition)
    }
  ],
  "successCondition": {
    object (Condition)
  }
}
Trường
failedConditions[]

object (Condition)

Danh sách các điều kiện đã được đánh giá thành "false".

successCondition

object (Condition)

Điều kiện đầu tiên được đánh giá là "true", nếu có.

Điều kiện

Tình trạng được đánh giá.

Biểu diễn dưới dạng JSON
{
  "expression": string,
  "handler": string,
  "nextSceneId": string
}
Trường
expression

string

Biểu thức được chỉ định trong điều kiện này.

handler

string

Tên trình xử lý được chỉ định trong điều kiện được đánh giá.

nextSceneId

string

Cảnh đích được chỉ định trong điều kiện được đánh giá.

OnSceneEnter

Thông tin về cách thực hiện giai đoạn onSceneEnter: https://developers.google.com/assistant/conversational/scenes#onEnter

Biểu diễn dưới dạng JSON
{
  "handler": string
}
Trường
handler

string

Tên trình xử lý được chỉ định trong sự kiện onSceneEnter.

WebhookRequest

Thông tin về yêu cầu được gửi đến webhook hành động: https://developers.google.com/assistant/conversational/webhooks#payloads

Biểu diễn dưới dạng JSON
{
  "requestJson": string
}
Trường
requestJson

string

Tải trọng của yêu cầu webhook.

WebhookResponse

Thông tin về câu trả lời nhận được từ webhook hành động: https://developers.google.com/assistant/conversational/webhooks#payloads

Biểu diễn dưới dạng JSON
{
  "responseJson": string
}
Trường
responseJson

string

Tải trọng của phản hồi webhook.

WebhookInitiatedTransition

Sự kiện được kích hoạt bởi cảnh đích trả về từ webhook: https://developers.google.com/assistant/conversational/webhooks#transition_scenes

Biểu diễn dưới dạng JSON
{
  "nextSceneId": string
}
Trường
nextSceneId

string

Mã nhận dạng của cảnh mà hiệu ứng chuyển đổi dẫn đến.

SlotMatch

Thông tin về(các) vị trí phù hợp: https://developers.google.com/assistant/conversational/scenes#slot_filling

Biểu diễn dưới dạng JSON
{
  "nluParameters": {
    string: {
      object (IntentParameterValue)
    },
    ...
  }
}
Trường
nluParameters

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

Các tham số do NLU trích xuất từ hoạt động đầu vào của người dùng.

Một đối tượng chứa danh sách các cặp "key": value. Ví dụ: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

SlotRequested

Thông tin về vị trí hiện được yêu cầu: https://developers.google.com/assistant/conversational/scenes#slot_filling

Biểu diễn dưới dạng JSON
{
  "slot": string,
  "prompt": {
    object (Prompt)
  }
}
Trường
slot

string

Tên của vùng được yêu cầu.

prompt

object (Prompt)

Lời nhắc về vị trí.

SlotValidated

Sự kiện xảy ra sau khi quá trình xác thực webhook hoàn tất cho(các) vùng: https://developers.google.com/assistant/conversational/scenes#slot_filling

FormFilled

Sự kiện xảy ra khi biểu mẫu đã được điền đầy đủ: https://developers.google.com/assistant/conversational/scenes#slot_filling

WaitingForUserInput

Sự kiện xảy ra khi hệ thống cần có hoạt động đầu vào của người dùng: https://developers.google.com/assistant/conversational/scenes#input

EndConversation

Sự kiện cho biết cuộc trò chuyện với nhân viên hỗ trợ đã kết thúc.