Scene

Cảnh là đơn vị cơ bản của luồng điều khiển khi thiết kế một cuộc trò chuyện. Bạn có thể kết nối các thành phần này với nhau với các cảnh khác, tạo lời nhắc cho người dùng cuối và xác định ô. Tên cảnh được chỉ định trong tên tệp.

Trình bày theo YAML
onEnter: 
  object (EventHandler)
intentEvents: 
  - object (IntentEvent)
conditionalEvents: 
  - object (ConditionalEvent)
slots: 
  - object (Slot)
onSlotUpdated: 
  object (EventHandler)
Trường
onEnter

object (EventHandler)

Trình xử lý cần gọi khi chuyển đổi vào cảnh này.

intentEvents[]

object (IntentEvent)

Danh sách sự kiện kích hoạt dựa trên ý định. Các sự kiện này có thể được kích hoạt bất cứ lúc nào sau khi gọi Trình xử lý on_load. Lưu ý quan trọng – những sự kiện này xác định tập hợp ý định thuộc phạm vi của cảnh này và sẽ được ưu tiên hơn mọi sự kiện được xác định trên toàn cầu có cùng ý định hoặc cụm từ kích hoạt tương tự. Tên ý định phải là duy nhất trong một cảnh.

conditionalEvents[]

object (ConditionalEvent)

Danh sách sự kiện sẽ kích hoạt dựa trên câu lệnh có điều kiện. Các lượt đánh giá này sẽ được đánh giá sau khi người dùng điền biểu mẫu hoặc ngay sau on_load nếu cảnh này không có biểu mẫu (việc đánh giá chỉ được thực hiện một lần). Chỉ sự kiện phù hợp đầu tiên mới được kích hoạt.

slots[]

object (Slot)

Danh sách vùng theo thứ tự. Mỗi vị trí sẽ xác định loại dữ liệu mà vị trí đó sẽ phân giải và định cấu hình để tuỳ chỉnh trải nghiệm của độ phân giải này (ví dụ: câu lệnh).

onSlotUpdated

object (EventHandler)

Trình xử lý được gọi khi có sự thay đổi về trạng thái của một vùng không phải do các bản cập nhật trong một Trình xử lý khác. Điều này cho phép các ô bị mất hiệu lực, cảnh bị mất hiệu lực hoặc các thay đổi khác đối với trạng thái cảnh.

Khe

Cấu hình cho một vị trí. Vị trí là các đơn vị dữ liệu đơn lẻ có thể được lấp đầy thông qua ngôn ngữ tự nhiên (ví dụ: tham số ý định), tham số phiên và các nguồn khác.

Trình bày theo YAML
name: string
type: 
  object (ClassReference)
required: boolean
promptSettings: 
  object (PromptSettings)
commitBehavior: 
  object (CommitBehavior)
config: value
defaultValue: 
  object (DefaultValue)
Trường
name

string

Bắt buộc. Tên vùng.

type

object (ClassReference)

Bắt buộc. Khai báo loại dữ liệu của vị trí này.

required

boolean

Không bắt buộc. Cho biết liệu chỗ trống có bắt buộc phải được lấp đầy trước khi tiến hành. Các ô bắt buộc chưa được lấp đầy sẽ kích hoạt một lời nhắc có thể tuỳ chỉnh cho người dùng.

promptSettings

object (PromptSettings)

Không bắt buộc. Đăng ký lời nhắc cho các giai đoạn lấp đầy vùng.

commitBehavior

object (CommitBehavior)

Không bắt buộc. Xác nhận hành vi được liên kết với vị trí.

config

value (Value format)

Không bắt buộc. Cấu hình bổ sung được liên kết với vùng được dùng để lấp đầy vùng. Định dạng của cấu hình này dành riêng cho loại vị trí. Bạn có thể thêm các tham chiếu tài nguyên đến thông số người dùng hoặc phiên vào cấu hình này. Cần có cấu hình này để lấp đầy các khoảng trống liên quan đến giao dịch và mức độ tương tác của người dùng.

Ví dụ: Đối với một vị trí thuộc loại actions.type.CompletePurchaseValue, cấu hình sau đây đề xuất một đơn đặt hàng hàng hóa kỹ thuật số có tham chiếu đến thông số phiên do ứng dụng xác định userSelectedSkuId:

{ "@type": "type.googleapis.com/ google.actions.transactions.v3.CompletePurchaseValueSpec", "skuId": { "skuType": "SKU_TYPE_IN_APP", "id": "$session.params.userSelectedSkuId", "packageName": "com.example.company" }

defaultValue

object (DefaultValue)

Không bắt buộc. Cấu hình để điền giá trị mặc định cho vùng này.

PromptSettings

Một nơi duy nhất để xác định lời nhắc vị trí.

Trình bày theo YAML
initialPrompt: 
  object (EventHandler)
noMatchPrompt1: 
  object (EventHandler)
noMatchPrompt2: 
  object (EventHandler)
noMatchFinalPrompt: 
  object (EventHandler)
noInputPrompt1: 
  object (EventHandler)
noInputPrompt2: 
  object (EventHandler)
noInputFinalPrompt: 
  object (EventHandler)
Trường
initialPrompt

object (EventHandler)

Lời nhắc cho chính giá trị vị trí. Ví dụ: "Bạn muốn chọn cỡ ly nào?"

noMatchPrompt1

object (EventHandler)

Lời nhắc đưa ra khi giá trị nhập vào của người dùng không khớp với loại giá trị dự kiến cho vùng quảng cáo lần đầu tiên. Ví dụ: "Rất tiếc, tôi chưa hiểu ý bạn."

noMatchPrompt2

object (EventHandler)

Lời nhắc đưa ra khi giá trị nhập vào của người dùng không khớp với loại giá trị dự kiến cho khu vực lần thứ hai. Ví dụ: "Rất tiếc, tôi chưa hiểu ý bạn."

noMatchFinalPrompt

object (EventHandler)

Lời nhắc đưa ra khi giá trị nhập vào của người dùng không khớp với loại giá trị dự kiến cho vùng quảng cáo lần gần đây nhất. Ví dụ: "Rất tiếc, tôi chưa hiểu ý bạn."

noInputPrompt1

object (EventHandler)

Lời nhắc đưa ra khi người dùng không cung cấp thông tin đầu vào lần đầu tiên. Ví dụ: "Rất tiếc, tôi chưa hiểu ý bạn."

noInputPrompt2

object (EventHandler)

Lời nhắc đưa ra khi người dùng không nhập câu lệnh lần thứ hai. Ví dụ: "Rất tiếc, tôi chưa hiểu ý bạn."

noInputFinalPrompt

object (EventHandler)

Lời nhắc đưa ra khi người dùng không cung cấp dữ liệu nhập lần cuối. Ví dụ: "Rất tiếc, tôi chưa hiểu ý bạn."

CommitBehavior

Thông báo mô tả hành vi cam kết được liên kết với ô sau khi được lấp đầy thành công.

Trình bày theo YAML
writeSessionParam: string
Trường
writeSessionParam

string

Thông số phiên để ghi giá trị vùng sau khi vùng đó được lấp đầy. Lưu ý rằng các đường dẫn lồng nhau hiện không được hỗ trợ. "$$" được dùng để ghi giá trị vùng vào một thông số phiên có cùng tên với vùng. Ví dụ: writeSessionParam = "fruit" tương ứng với "$session.params.fruit". writeSessionParam = "ticket" tương ứng với "$session.params.ticket".

DefaultValue

Cấu hình để điền giá trị mặc định cho vùng này.

Trình bày theo YAML
sessionParam: string
constant: value
Trường
sessionParam

string

Không bắt buộc. Tham số phiên được dùng để khởi tạo giá trị vùng, nếu giá trị đó có giá trị không trống. Loại giá trị phải khớp với loại vùng quảng cáo. Lưu ý rằng các đường dẫn lồng nhau hiện không được hỗ trợ. Ví dụ: sessionParam = "fruit" tương ứng với $session.params.fruit. sessionParam = "ticket" tương ứng với $session.params.ticket.

constant

value (Value format)

Không bắt buộc. Giá trị mặc định không đổi cho vị trí. Giá trị này chỉ được dùng nếu giá trị cho vùng này không được điền thông qua sessionParam. Loại cho giá trị này phải khớp với loại vùng quảng cáo.