Files

Trình bao bọc cho danh sách tệp.

Biểu diễn dưới dạng JSON
{

  // Union field file_type can be only one of the following:
  "configFiles": {
    object (ConfigFiles)
  },
  "dataFiles": {
    object (DataFiles)
  }
  // End of list of possible types for union field file_type.
}
Các trường
Trường nhóm file_type. Mỗi lần, bạn chỉ có thể gửi một loại tệp tới máy chủ, tệp cấu hình hoặc tệp dữ liệu. file_type chỉ có thể là một trong những trạng thái sau đây:
configFiles

object (ConfigFiles)

Danh sách tệp cấu hình. Trong đó có tệp kê khai, chế độ cài đặt, gói tài nguyên mô hình tương tác và nhiều nội dung khác.

dataFiles

object (DataFiles)

Danh sách tệp dữ liệu. Các tệp này bao gồm hình ảnh, tệp âm thanh, mã nguồn chức năng đám mây.

ConfigFiles

Trình bao bọc cho các tệp cấu hình lặp lại. Các trường lặp lại không thể tồn tại cùng một trong hai trường.

Biểu diễn dưới dạng JSON
{
  "configFiles": [
    {
      object (ConfigFile)
    }
  ]
}
Các trường
configFiles[]

object (ConfigFile)

Nhiều tệp cấu hình.

ConfigFile

Đại diện cho một tệp chứa dữ liệu có cấu trúc. Nhà phát triển có thể xác định hầu hết dự án của mình bằng cấu hình có cấu trúc, bao gồm Hành động, Cài đặt, Thực hiện đơn hàng.

Biểu diễn dưới dạng JSON
{
  "filePath": string,

  // Union field file can be only one of the following:
  "manifest": {
    object (Manifest)
  },
  "actions": {
    object (Actions)
  },
  "settings": {
    object (Settings)
  },
  "webhook": {
    object (Webhook)
  },
  "intent": {
    object (Intent)
  },
  "type": {
    object (Type)
  },
  "entitySet": {
    object (EntitySet)
  },
  "globalIntentEvent": {
    object (GlobalIntentEvent)
  },
  "scene": {
    object (Scene)
  },
  "staticPrompt": {
    object (StaticPrompt)
  },
  "accountLinkingSecret": {
    object (AccountLinkingSecret)
  },
  "resourceBundle": {
    object
  }
  // End of list of possible types for union field file.
}
Các trường
filePath

string

Đường dẫn tương đối của tệp cấu hình từ thư mục gốc của dự án trong cấu trúc tệp SDK. Mỗi loại tệp dưới đây đều có một đường dẫn tệp được phép. Ví dụ: settings/settings.yaml

Trường nhóm file. Mỗi loại tệp cấu hình phải có một trường tương ứng ở một trong hai loại tệp đó. file chỉ có thể là một trong những trạng thái sau đây:
manifest

object (Manifest)

Tệp kê khai duy nhất. Đường dẫn tệp được phép: manifest.yaml

actions

object (Actions)

Tệp hành động đơn lẻ chứa tất cả các hành động đã xác định. Đường dẫn tệp được phép: actions/{language}?/actions.yaml

settings

object (Settings)

Cấu hình một chế độ cài đặt bao gồm các chế độ cài đặt và chế độ cài đặt không thể bản địa hoá cho ngôn ngữ mặc định của dự án (nếu được chỉ định). Đối với tệp ghi đè ngôn ngữ, chỉ trường localeSettings sẽ được điền. Đường dẫn tệp được phép: settings/{language}?/settings.yaml Lưu ý rằng settings/settings.yaml phải có tệp cài đặt không được bản địa hoá trong các yêu cầu luồng ghi.

webhook

object (Webhook)

Định nghĩa một webhook. Đường dẫn tệp được phép: webhooks/{WebhookName}.yaml

intent

object (Intent)

Định nghĩa về ý định duy nhất. Đường dẫn tệp được phép: custom/intents/{language}?/{IntentName}.yaml

type

object (Type)

Định nghĩa một loại. Đường dẫn tệp được phép: custom/types/{language}?/{TypeName}.yaml

entitySet

object (EntitySet)

Định nghĩa nhóm thực thể đơn. Đường dẫn tệp được phép: custom/entitySets/{language}?/{EntitySetName}.yaml

globalIntentEvent

object (GlobalIntentEvent)

Định nghĩa sự kiện ý định chung duy nhất. Đường dẫn tệp được phép: custom/global/{GlobalIntentEventName}.yaml Tên tệp (GlobalIntentEventName) phải là tên của ý định tương ứng với sự kiện ý định chung này.

scene

object (Scene)

Định nghĩa một cảnh. Đường dẫn tệp được phép: custom/scenes/{SceneName}.yaml

staticPrompt

object (StaticPrompt)

Một định nghĩa lời nhắc tĩnh. Đường dẫn tệp được phép: custom/prompts/{language}?/{StaticPromptName}.yaml

accountLinkingSecret

object (AccountLinkingSecret)

Siêu dữ liệu tương ứng với mật khẩu ứng dụng khách được dùng trong việc liên kết tài khoản. Đường dẫn tệp được phép: settings/accountLinkingSecret.yaml

resourceBundle

object (Struct format)

Gói tài nguyên đơn – một tập hợp dữ liệu ánh xạ từ một chuỗi đến một chuỗi hoặc danh sách các chuỗi. Bạn có thể dùng gói tài nguyên để bản địa hoá các chuỗi trong các câu lệnh tĩnh. Đường dẫn tệp được phép: resources/strings/{language}?/{multiple directories}?/{BundleName}.yaml

Tệp kê khai

Chứa thông tin "có thể di chuyển", tức là không dành riêng cho bất kỳ dự án nhất định nào và có thể được di chuyển giữa các dự án.

Biểu diễn dưới dạng JSON
{
  "version": string
}
Các trường
version

string

Phiên bản của định dạng tệp. Phiên bản định dạng tệp hiện tại là 1.0 Ví dụ: "1.0"

Thao tác

Đại diện cho danh sách các Hành động được xác định trong một dự án.

Biểu diễn dưới dạng JSON
{
  "custom": {
    string: {
      object (CustomAction)
    },
    ...
  }
}
Các trường
custom

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

Liên kết từ ý định đến Hành động tuỳ chỉnh để định cấu hình lệnh gọi cho dự án. Ý định gọi có thể là hệ thống hoặc ý định tuỳ chỉnh được xác định trong gói "custom/intents/". Mọi ý định được xác định ở đây (ý định hệ thống và ý định tuỳ chỉnh) phải có tệp ý định tương ứng trong gói "custom/global/".

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" }.

CustomAction

Thông tin chi tiết về một thao tác tuỳ chỉnh.

Biểu diễn dưới dạng JSON
{
  "engagement": {
    object (Engagement)
  }
}
Các trường
engagement

object (Engagement)

Cơ chế tương tác được liên kết với hành động để giúp người dùng cuối đăng ký nhận thông báo đẩy và nội dung cập nhật hằng ngày. Xin lưu ý rằng tên ý định được chỉ định trong cấu hình vị trí vùng thông báo đẩy/cập nhật cập nhật hằng ngày cần phải khớp với ý định tương ứng với hành động này để người dùng cuối đăng ký nhận những nội dung cập nhật này.

Mức độ tương tác

Xác định cơ chế tương tác liên quan đến hành động này. Việc này cho phép người dùng cuối đăng ký nhận thông báo đẩy và cập nhật hằng ngày.

Biểu diễn dưới dạng JSON
{
  "title": string,
  "pushNotification": {
    object (PushNotification)
  },
  "actionLink": {
    object (ActionLink)
  },
  "assistantLink": {
    object (AssistantLink)
  },
  "dailyUpdate": {
    object (DailyUpdate)
  }
}
Các trường
title

string

Tiêu đề của hoạt động tương tác sẽ được gửi đến người dùng cuối để yêu cầu họ cho phép nhận thông tin cập nhật. Lời nhắc được gửi đến người dùng cuối để cập nhật hằng ngày sẽ có dạng như "Bạn muốn tôi gửi {title}" hằng ngày vào lúc nào. Còn đối với thông báo đẩy, thông báo đẩy sẽ có dạng "Có ổn không nếu tôi gửi thông báo đẩy cho {title}". Bạn có thể bản địa hoá trường này.

pushNotification

object (PushNotification)

Chế độ cài đặt thông báo đẩy mà lượt tương tác này hỗ trợ.

dailyUpdate

object (DailyUpdate)

Các chế độ cài đặt cập nhật hằng ngày mà lượt tương tác này hỗ trợ.

PushNotification

Xác định chế độ cài đặt thông báo đẩy mà hoạt động tương tác này hỗ trợ.

DailyUpdate

Xác định chế độ cài đặt cập nhật hằng ngày mà lượt tương tác này hỗ trợ.

Cài đặt

Đại diện cho các chế độ cài đặt của một dự án Actions không cụ thể theo ngôn ngữ. Thẻ tiếp theo: 22

Biểu diễn dưới dạng JSON
{
  "projectId": string,
  "defaultLocale": string,
  "enabledRegions": [
    string
  ],
  "disabledRegions": [
    string
  ],
  "category": enum (Category),
  "usesTransactionsApi": boolean,
  "usesDigitalPurchaseApi": boolean,
  "usesInteractiveCanvas": boolean,
  "usesHomeStorage": boolean,
  "designedForFamily": boolean,
  "containsAlcoholOrTobaccoContent": boolean,
  "keepsMicOpen": boolean,
  "surfaceRequirements": {
    object (SurfaceRequirements)
  },
  "testingInstructions": string,
  "localizedSettings": {
    object (LocalizedSettings)
  },
  "accountLinking": {
    object (AccountLinking)
  },
  "selectedAndroidApps": [
    string
  ]
}
Các trường
projectId

string

Mã dự án của Hành động.

defaultLocale

string

Ngôn ngữ mặc định cho dự án. Đối với mọi tệp ngoại trừ tệp trong resources/ không có ngôn ngữ nào trong đường dẫn, dữ liệu đã bản địa hoá sẽ được gán cho defaultLocale này. Đối với các tệp trong resources/, không có ngôn ngữ nào có nghĩa là tài nguyên này có thể áp dụng cho tất cả các ngôn ngữ.

enabledRegions[]

string

Thể hiện các khu vực nơi người dùng có thể gọi Hành động của bạn, dựa trên vị trí hiện diện của người dùng. Không thể đặt nếu đã đặt disabledRegions. Nếu bạn không chỉ định cả enabledRegionsdisabledRegions, thì người dùng có thể gọi Hành động của bạn ở mọi khu vực. Mỗi khu vực được biểu thị bằng Tên quy tắc của mục tiêu địa lý AdWords. Hãy truy cập vào https://developers.google.com/adwords/api/docs/appendix/geotargeting Các ví dụ bao gồm: – "Đức" – "Ghana" – "Hy Lạp" – "Grenada" – "Vương quốc Anh" – "Hoa Kỳ" – "Các tiểu đảo xa của Hoa Kỳ" – "Uruguay"

disabledRegions[]

string

Thể hiện các khu vực nơi Hành động của bạn bị chặn, dựa trên vị trí hiện diện của người dùng. Không thể đặt nếu đã đặt enabledRegions. Mỗi khu vực được biểu thị bằng Tên quy tắc của mục tiêu địa lý AdWords. Hãy truy cập vào https://developers.google.com/adwords/api/docs/appendix/geotargeting Các ví dụ bao gồm: – "Đức" – "Ghana" – "Hy Lạp" – "Grenada" – "Vương quốc Anh" – "Hoa Kỳ" – "Các tiểu đảo xa của Hoa Kỳ" – "Uruguay"

category

enum (Category)

Danh mục của dự án Actions này.

usesTransactionsApi

boolean

Liệu Hành động có thể sử dụng giao dịch hay không (ví dụ: đặt chỗ, nhận đơn đặt hàng, v.v.). Nếu giá trị là false thì cố gắng sử dụng các API Giao dịch sẽ không thành công.

usesDigitalPurchaseApi

boolean

Liệu Hành động có thể thực hiện giao dịch đối với hàng hoá kỹ thuật số hay không.

usesInteractiveCanvas

boolean

Liệu các Hành động có sử dụng Canvas tương tác hay không.

usesHomeStorage

boolean

Liệu các Hành động có sử dụng tính năng bộ nhớ trong nhà hay không.

designedForFamily

boolean

Liệu nội dung Hành động có được thiết kế cho gia đình (DFF) hay không.

containsAlcoholOrTobaccoContent

boolean

Liệu Hành động có chứa nội dung liên quan đến rượu hoặc thuốc lá hay không.

keepsMicOpen

boolean

Liệu các Hành động có thể để micrô bật mà không có lời nhắc rõ ràng trong cuộc trò chuyện hay không.

surfaceRequirements

object (SurfaceRequirements)

Các yêu cầu nền tảng mà nền tảng ứng dụng phải hỗ trợ để gọi Hành động trong dự án này.

testingInstructions

string

Hướng dẫn thử nghiệm dạng biểu mẫu tuỳ ý cho nhân viên đánh giá Hành động (ví dụ: hướng dẫn liên kết tài khoản).

localizedSettings

object (LocalizedSettings)

Chế độ cài đặt đã bản địa hoá cho ngôn ngữ mặc định của dự án. Mỗi ngôn ngữ bổ sung phải có tệp cài đặt riêng trong thư mục riêng.

accountLinking

object (AccountLinking)

Cho phép người dùng tạo hoặc liên kết các tài khoản thông qua tính năng đăng nhập bằng Google và/hoặc dịch vụ OAuth của riêng bạn.

selectedAndroidApps[]

string

Các ứng dụng Android được chọn để nhận giao dịch mua trên Google Play. Đây là lựa chọn trong số các ứng dụng Android được kết nối với dự án hành động để xác minh quyền sở hữu thương hiệu và bật các tính năng bổ sung. Hãy truy cập vào https://developers.google.com/assistant/console/brand-verification để biết thêm thông tin.

Danh mục

Các lựa chọn danh mục cho một dự án Actions (Hành động).

Enum
CATEGORY_UNSPECIFIED Không xác định / Chưa xác định.
BUSINESS_AND_FINANCE Danh mục Kinh doanh và Tài chính.
EDUCATION_AND_REFERENCE Giáo dục và tài liệu tham khảo.
FOOD_AND_DRINK Danh mục Thực phẩm và đồ uống.
GAMES_AND_TRIVIA Danh mục Trò chơi và Đố vui.
HEALTH_AND_FITNESS Sức khoẻ và thể hình.
KIDS_AND_FAMILY Trẻ em và gia đình.
LIFESTYLE Danh mục Lối sống.
LOCAL Danh mục địa phương.
MOVIES_AND_TV Phim và danh mục truyền hình.
MUSIC_AND_AUDIO Danh mục Âm nhạc và âm thanh.
NEWS Danh mục tin tức,
NOVELTY_AND_HUMOR Danh mục Sự mới lạ và hài hước.
PRODUCTIVITY Danh mục năng suất.
SHOPPING Danh mục Mua sắm.
SOCIAL Danh mục xã hội.
SPORTS Danh mục thể thao.
TRAVEL_AND_TRANSPORTATION Du lịch và vận tải.
UTILITIES Danh mục tiện ích.
WEATHER Danh mục thời tiết.
HOME_CONTROL Danh mục Điều khiển nhà.

SurfaceRequirements

Chứa một tập hợp các yêu cầu mà nền tảng ứng dụng phải hỗ trợ để gọi Hành động trong dự án.

Biểu diễn dưới dạng JSON
{
  "minimumRequirements": [
    {
      object (CapabilityRequirement)
    }
  ]
}
Các trường
minimumRequirements[]

object (CapabilityRequirement)

Nhóm chức năng tối thiểu cần thiết để gọi Hành động trong dự án. Nếu nền tảng thiếu bất kỳ yếu tố nào trong số này, Hành động sẽ không được kích hoạt.

CapabilityRequirement

Biểu thị một yêu cầu về khả năng sử dụng một chức năng nhất định.

Biểu diễn dưới dạng JSON
{
  "capability": enum (SurfaceCapability)
}
Các trường
capability

enum (SurfaceCapability)

Loại chức năng.

SurfaceCapability

Tập hợp các chức năng bề mặt có thể có.

Enum
SURFACE_CAPABILITY_UNSPECIFIED Không xác định / Chưa xác định.
AUDIO_OUTPUT Bề mặt hỗ trợ đầu ra âm thanh.
SCREEN_OUTPUT Bề mặt hỗ trợ đầu ra màn hình/hình ảnh.
MEDIA_RESPONSE_AUDIO Nền tảng hỗ trợ âm thanh phản hồi nội dung đa phương tiện.
WEB_BROWSER Surface hỗ trợ các trình duyệt web.
ACCOUNT_LINKING Nền tảng hỗ trợ liên kết tài khoản.
INTERACTIVE_CANVAS Bề mặt hỗ trợ Canvas tương tác.
HOME_STORAGE Surface hỗ trợ bộ nhớ trong nhà.

LocalizedSettings

Thể hiện các chế độ cài đặt của dự án Hành động dành riêng cho một ngôn ngữ của người dùng. Trong trường hợp này, người dùng có nghĩa là người dùng cuối gọi Hành động của bạn. Bạn cần bản địa hoá thông báo này.

Biểu diễn dưới dạng JSON
{
  "displayName": string,
  "pronunciation": string,
  "shortDescription": string,
  "fullDescription": string,
  "smallLogoImage": string,
  "largeBannerImage": string,
  "developerName": string,
  "developerEmail": string,
  "termsOfServiceUrl": string,
  "voice": string,
  "voiceLocale": string,
  "privacyPolicyUrl": string,
  "sampleInvocations": [
    string
  ],
  "themeCustomization": {
    object (ThemeCustomization)
  }
}
Các trường
displayName

string

Bắt buộc. Tên hiển thị mặc định cho dự án Hành động này (nếu không có bản dịch)

pronunciation

string

Bắt buộc. Cách phát âm tên hiển thị để gọi tên đó trong ngữ cảnh dạng giọng nói.

shortDescription

string

Bắt buộc. Nội dung mô tả ngắn mặc định cho dự án Hành động (nếu không có bản dịch). Giới hạn 80 ký tự.

fullDescription

string

Bắt buộc. Nội dung mô tả dài mặc định cho dự án Hành động (nếu không có bản dịch). Giới hạn 4.000 ký tự.

smallLogoImage

string

Bắt buộc. Hình ảnh vuông nhỏ, 192 x 192 px. Giá trị này phải được chỉ định làm tham chiếu đến hình ảnh tương ứng trong thư mục resources/images/. Ví dụ: $resources.images.foo (không có đuôi) cho hình ảnh trong resources/images/foo.jpg. Khi làm việc với một dự án lấy từ Console, bạn có thể sử dụng URL do Google quản lý được lấy. Không cho phép URL từ các nguồn bên ngoài.

largeBannerImage

string

Không bắt buộc. Hình ảnh ngang có kích thước lớn, 1920 x 1080 pixel. Giá trị này phải được chỉ định làm tham chiếu đến hình ảnh tương ứng trong thư mục resources/images/. Ví dụ: $resources.images.foo (không có đuôi) cho hình ảnh trong resources/images/foo.jpg. Khi làm việc với một dự án lấy từ Console, bạn có thể sử dụng URL do Google quản lý được lấy. Không cho phép URL từ các nguồn bên ngoài.

developerName

string

Bắt buộc. Tên của nhà phát triển mà người dùng nhìn thấy.

developerEmail

string

Bắt buộc. Địa chỉ email liên hệ của nhà phát triển.

termsOfServiceUrl

string

Không bắt buộc. URL của điều khoản dịch vụ.

voice

string

Bắt buộc. Loại giọng nói của Trợ lý Google mà người dùng nghe thấy khi họ tương tác với Hành động của bạn. Giá trị được hỗ trợ là "male_1", "male_2", "Women_1" và "nữ_2".

voiceLocale

string

Không bắt buộc. Ngôn ngữ cho giọng nói được chỉ định. Nếu bạn không chỉ định, thì ngôn ngữ này sẽ được phân giải thành ngôn ngữ của Trợ lý của người dùng. Nếu được chỉ định, ngôn ngữ thoại phải có cùng ngôn ngữ gốc với ngôn ngữ được chỉ định trong LocalizedSettings.

privacyPolicyUrl

string

Bắt buộc. URL chính sách quyền riêng tư.

sampleInvocations[]

string

Không bắt buộc. Các cụm từ của lời gọi mẫu hiển thị ở dạng phần mô tả của dự án Hành động trong thư mục Trợ lý. Việc này sẽ giúp người dùng tìm hiểu cách sử dụng.

themeCustomization

object (ThemeCustomization)

Không bắt buộc. Tuỳ chỉnh giao diện cho các thành phần hình ảnh của Hành động.

ThemeCustomization

Kiểu được áp dụng cho thẻ mà người dùng nhìn thấy

Biểu diễn dưới dạng JSON
{
  "backgroundColor": string,
  "primaryColor": string,
  "fontFamily": string,
  "imageCornerStyle": enum (ImageCornerStyle),
  "landscapeBackgroundImage": string,
  "portraitBackgroundImage": string
}
Các trường
backgroundColor

string

Màu nền của thẻ. Đóng vai trò là phương án dự phòng nếu nhà phát triển không cung cấp background_image hoặc background_image không phù hợp với một số nền tảng. Ví dụ về cách sử dụng: #FAFAFA

primaryColor

string

Màu giao diện chính của Hành động sẽ được dùng để đặt màu văn bản cho tiêu đề, màu nền của mục hành động cho thẻ Actions on Google. Ví dụ về cách sử dụng: #FAFAFA

fontFamily

string

Bộ phông chữ sẽ được dùng cho tiêu đề thẻ. Phông chữ được hỗ trợ: – Sans Serif - Sans Serif Medium - Sans Serif Bold - Sans Serif Đen - Sans Serif Condensed - Sans Serif Condensed Medium - Serif - Serif Bold - Monospace - Ghi chú viết tay - Sans Serif Smallcaps

imageCornerStyle

enum (ImageCornerStyle)

Kiểu đường viền của hình ảnh nền trước của thẻ. Ví dụ: có thể áp dụng trên hình ảnh nền trước của một thẻ cơ bản hoặc thẻ băng chuyền.

landscapeBackgroundImage

string

Chế độ ngang (tối thiểu 1920x1200 pixel). Giá trị này phải được chỉ định làm tham chiếu đến hình ảnh tương ứng trong thư mục resources/images/. Ví dụ: $resources.images.foo (không có đuôi) cho hình ảnh trong resources/images/foo.jpg. Khi làm việc với một dự án lấy từ Console, bạn có thể sử dụng URL do Google quản lý.

portraitBackgroundImage

string

Chế độ dọc (tối thiểu 1200 x 1920 pixel). Giá trị này phải được chỉ định làm tham chiếu đến hình ảnh tương ứng trong thư mục resources/images/. Ví dụ: $resources.images.foo (không có đuôi) cho hình ảnh trong resources/images/foo.jpg. Khi làm việc với một dự án lấy từ Console, bạn có thể sử dụng URL do Google quản lý.

ImageCornerStyle

Mô tả cách kết xuất đường viền của hình ảnh.

Enum
IMAGE_CORNER_STYLE_UNSPECIFIED Không xác định / Không xác định.
CURVED Góc tròn cho hình ảnh.
ANGLED Góc hình chữ nhật cho hình ảnh.

AccountLinking

AccountLinks cho phép Google hướng dẫn người dùng đăng nhập vào các dịch vụ web của Ứng dụng.

Đối với các loại liên kết Đăng nhập bằng Google và OAuth + Đăng nhập bằng Google, Google sẽ tạo một mã ứng dụng khách nhận dạng Ứng dụng của bạn cho Google ("Mã ứng dụng khách do Google cấp cho Hành động của bạn" trên giao diện người dùng Console). Trường này chỉ có thể đọc và bạn có thể kiểm tra bằng cách chuyển đến trang Liên kết tài khoản trong giao diện người dùng Console. Hãy xem bài viết: https://developers.google.com/assistant/identity/google-sign-in

Lưu ý: Đối với tất cả các loại chế độ cài đặt liên kết tài khoản (ngoại trừ chế độ Đăng nhập bằng Google), bạn phải cung cấp tên người dùng và mật khẩu cho tài khoản thử nghiệm trong phần Settings.testing_instructions để nhóm xem xét xem xét ứng dụng (người dùng sẽ không thấy được các thông tin này).

Biểu diễn dưới dạng JSON
{
  "enableAccountCreation": boolean,
  "linkingType": enum (LinkingType),
  "authGrantType": enum (AuthGrantType),
  "appClientId": string,
  "authorizationUrl": string,
  "tokenUrl": string,
  "scopes": [
    string
  ],
  "learnMoreUrl": string,
  "useBasicAuthHeader": boolean
}
Các trường
enableAccountCreation

boolean

Bắt buộc. Nếu giá trị là true, người dùng được phép đăng ký tài khoản mới qua giọng nói. Nếu là false, bạn chỉ được phép tạo tài khoản trên trang web của mình. Chọn mục này nếu bạn muốn hiển thị điều khoản dịch vụ của mình hoặc cần sự đồng ý của người dùng trong quá trình đăng ký. linkingType không được là GOOGLE_SIGN_IN khi giá trị này là false. linkType không được là OAUTH khi giá trị này là true.

linkingType

enum (LinkingType)

Bắt buộc. Loại liên kết sẽ sử dụng. Hãy truy cập vào https://developers.google.com/assistant/identity để biết thêm thông tin về các loại liên kết.

authGrantType

enum (AuthGrantType)

Không bắt buộc. Cho biết kiểu xác thực cho OAUTH linkingType.

appClientId

string

Không bắt buộc. Mã ứng dụng khách do ứng dụng của bạn cấp cho Google. Đây là mã ứng dụng khách OAuth2 giúp nhận dạng Google cho dịch vụ của bạn. Chỉ đặt khi sử dụng OAuth.

authorizationUrl

string

Không bắt buộc. Điểm cuối của trang web đăng nhập có hỗ trợ mã OAuth2 hoặc các luồng ngầm ẩn. URL phải sử dụng HTTPS. Chỉ đặt khi sử dụng OAuth.

tokenUrl

string

Không bắt buộc. Điểm cuối OAuth2 để trao đổi mã thông báo. URL phải sử dụng HTTPS. Chế độ này không được đặt khi chỉ sử dụng OAuth có quyền IMPLICIT làm loại liên kết. Chỉ đặt khi sử dụng OAuth.

scopes[]

string

Không bắt buộc. Danh sách quyền mà người dùng phải đồng ý để sử dụng dịch vụ của bạn. Chỉ đặt khi sử dụng OAuth. Đảm bảo cung cấp Điều khoản dịch vụ trong thông tin thư mục trong mục LocalizedSettings.terms_of_service_url nếu chỉ định trường này.

learnMoreUrl

string

Không bắt buộc. Đây là trang web trên dịch vụ của bạn, mô tả các quyền mà người dùng đang cấp cho Google. Chỉ đặt nếu sử dụng OAuth và tính năng Đăng nhập bằng Google. Đảm bảo cung cấp Điều khoản dịch vụ trong thông tin thư mục trong mục LocalizedSettings.terms_of_service_url nếu chỉ định trường này.

useBasicAuthHeader

boolean

Không bắt buộc. Nếu đúng, hãy cho phép Google truyền mã ứng dụng khách và dữ liệu bí mật qua tiêu đề xác thực cơ bản HTTP. Nếu không, Google sẽ sử dụng Client-ID và bí mật bên trong nội dung bài đăng. Chỉ đặt khi sử dụng OAuth. Đảm bảo cung cấp Điều khoản dịch vụ trong thông tin thư mục trong mục LocalizedSettings.terms_of_service_url nếu chỉ định trường này.

LinkingType

Loại hoạt động Liên kết tài khoản cần thực hiện.

Enum
LINKING_TYPE_UNSPECIFIED Không xác định.
GOOGLE_SIGN_IN Loại liên kết Đăng nhập bằng Google. Nếu sử dụng loại liên kết này, thì bạn không cần phải đặt trường liên quan đến OAuth nào ở bên dưới.
OAUTH_AND_GOOGLE_SIGN_IN Loại liên kết OAuth và Đăng nhập bằng Google.
OAUTH Loại liên kết OAuth.

AuthGrantType

Loại cấp quyền OAuth2 mà Google dùng để hướng dẫn người dùng đăng nhập vào dịch vụ web của Ứng dụng.

Enum
AUTH_GRANT_TYPE_UNSPECIFIED Không xác định.
AUTH_CODE Cấp mã uỷ quyền. Yêu cầu bạn cung cấp cả URL xác thực và URL của mã truy cập.
IMPLICIT Cấp mã ngầm. Chỉ yêu cầu bạn cung cấp URL xác thực.

Webhook

Siêu dữ liệu cho các loại webhook. Nếu bạn đang sử dụng inlineCloudFunction, mã nguồn của bạn phải nằm trong thư mục có cùng tên với giá trị của khoá executeFunction. Ví dụ: giá trị của my_webhook cho khoá executeFunction sẽ có cấu trúc mã như sau: – /webhooks/my_webhook.yaml/webhooks/my_webhook/index.js/webhooks/my_webhook/package.json

Biểu diễn dưới dạng JSON
{
  "handlers": [
    {
      object (Handler)
    }
  ],

  // Union field webhook_type can be only one of the following:
  "httpsEndpoint": {
    object (HttpsEndpoint)
  },
  "inlineCloudFunction": {
    object (InlineCloudFunction)
  }
  // End of list of possible types for union field webhook_type.
}
Các trường
handlers[]

object (Handler)

Danh sách trình xử lý cho webhook này.

Trường nhóm webhook_type. Chỉ hỗ trợ một loại webhook. webhook_type chỉ có thể là một trong những trạng thái sau đây:
httpsEndpoint

object (HttpsEndpoint)

Điểm cuối HTTPS tuỳ chỉnh của webhook.

inlineCloudFunction

object (InlineCloudFunction)

Siêu dữ liệu cho chức năng đám mây được triển khai từ mã trong thư mục webhook.

Trình xử lý

Khai báo tên của trình xử lý webhoook. Một webhook có thể được đăng ký nhiều trình xử lý. Bạn có thể gọi những trình xử lý này từ nhiều nơi trong dự án Actions của mình.

Biểu diễn dưới dạng JSON
{
  "name": string
}
Các trường
name

string

Bắt buộc. Tên trình xử lý. Phải là duy nhất trên tất cả các trình xử lý của dự án Actions. Bạn có thể kiểm tra tên trình xử lý này để gọi đúng hàm trong mã nguồn của phương thức thực hiện.

HttpsEndpoint

Điểm cuối REST để thông báo nếu bạn không dùng trình chỉnh sửa cùng dòng.

Biểu diễn dưới dạng JSON
{
  "baseUrl": string,
  "httpHeaders": {
    string: string,
    ...
  },
  "endpointApiVersion": integer
}
Các trường
baseUrl

string

URL cơ sở HTTPS cho điểm cuối của phương thức thực hiện (không hỗ trợ HTTP). Tên trình xử lý được thêm vào đường dẫn URL cơ sở sau dấu hai chấm (theo hướng dẫn định kiểu trong https://cloud.google.com/apis/design/custom_methods). Ví dụ: một URL cơ sở "https://gactions.service.com/api" sẽ nhận các yêu cầu có URL "https://gactions.service.com/api:{method}".

httpHeaders

map (key: string, value: string)

Bản đồ các tham số HTTP cần đưa vào yêu cầu POST.

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" }.

endpointApiVersion

integer

Phiên bản của giao thức mà điểm cuối sử dụng. Đây là giao thức dùng chung cho mọi kiểu phương thức thực hiện và không dành riêng cho phương thức thực hiện của Google.

InlineCloudFunction

Lưu giữ siêu dữ liệu của một Hàm Cloud cùng dòng được triển khai từ thư mục webhook.

Biểu diễn dưới dạng JSON
{
  "executeFunction": string
}
Các trường
executeFunction

string

Tên của điểm truy cập Chức năng đám mây. Giá trị của trường này phải khớp với tên của phương thức được xuất từ mã nguồn.

Intent

Ý định liên kết hoạt động đầu vào mà người dùng mở với các đối tượng có cấu trúc. Cụm từ nói được so khớp với ý định nhờ công nghệ Hiểu ngôn ngữ tự nhiên (NLU) của Google. So khớp ý định có thể kích hoạt các sự kiện trong thiết kế cuộc trò chuyện của bạn để tiến triển cuộc trò chuyện của người dùng. Tên ý định được chỉ định trong tên tệp.

Biểu diễn dưới dạng JSON
{
  "parameters": [
    {
      object (IntentParameter)
    }
  ],
  "trainingPhrases": [
    string
  ]
}
Các trường
parameters[]

object (IntentParameter)

Danh sách các thông số trong các cụm từ huấn luyện. Bạn phải định nghĩa tất cả các thông số tại đây để có thể sử dụng trong cụm từ huấn luyện.

trainingPhrases[]

string

Các cụm từ huấn luyện giúp NLU của Google tự động khớp ý định với thông tin do người dùng nhập. Bạn cung cấp càng nhiều cụm từ độc đáo thì cơ hội phù hợp với ý định này càng cao. Sau đây là định dạng của phần cụm từ huấn luyện có chú thích. Lưu ý rằng trường auto là không bắt buộc và hành vi mặc định khi auto không được chỉ định sẽ tương đương với auto=false. ($<paramName> '<sample text>' auto=<true or false>) auto = true có nghĩa là phần này được NLU tự động chú thích. auto = false có nghĩa là phần đó đã được người dùng chú thích. Đây là giá trị mặc định khi không chỉ định tự động. Ví dụ: "Đặt chuyến bay từ ($source 'San Francisco' auto=false) đến ($dest 'Vancouver')"

IntentParameter

Định nghĩa về một tham số có thể dùng trong các cụm từ huấn luyện.

Biểu diễn dưới dạng JSON
{
  "name": string,

  // Union field parameter_type can be only one of the following:
  "type": {
    object (ClassReference)
  },
  "entitySetReferences": {
    object (EntitySetReferences)
  }
  // End of list of possible types for union field parameter_type.
}
Các trường
name

string

Bắt buộc. Tên riêng biệt của tham số ý định. Có thể dùng trong các điều kiện và phản hồi để tham chiếu các tham số ý định do NLU trích xuất bằng $intent.params.[name].resolved

Trường nhóm parameter_type. Loại tham số ý định. parameter_type chỉ có thể là một trong những trạng thái sau đây:
type

object (ClassReference)

Không bắt buộc. Khai báo loại dữ liệu của tham số này. Bạn không nên đặt thuộc tính này cho các ý định tích hợp.

entitySetReferences

object (EntitySetReferences)

Không bắt buộc. Tham chiếu đến tập hợp các thực thể được phép cho tham số ý định này. Chỉ hợp lệ với các tham số của ý định tích hợp. Các tham chiếu này trỏ đến nhóm thực thể trong thư mục "custom/entitySets".

ClassReference

Tham chiếu đến một lớp dùng để khai báo loại của một trường hoặc giá trị trả về. Enum cũng là một loại lớp có thể được tham chiếu bằng ClassReference.

Biểu diễn dưới dạng JSON
{
  "name": string,
  "list": boolean
}
Các trường
name

string

Bắt buộc. Tên của loại tích hợp sẵn hoặc loại tuỳ chỉnh của thông số. Ví dụ: PizzaToppings, actions.type.Number

list

boolean

Không bắt buộc. Cho biết liệu loại dữ liệu có đại diện cho một danh sách giá trị hay không.

EntitySetReferences

Tham chiếu nhóm thực thể cho một tham số ý định.

Biểu diễn dưới dạng JSON
{
  "entitySetReferences": [
    {
      object (EntitySetReference)
    }
  ]
}
Các trường
entitySetReferences[]

object (EntitySetReference)

Bắt buộc. Tham chiếu nhóm thực thể cho một tham số ý định.

EntitySetReference

Mã tham chiếu đến tập hợp các thực thể được phép cho tham số ý định này.

Biểu diễn dưới dạng JSON
{
  "entitySet": string
}
Các trường
entitySet

string

Bắt buộc. Xác định tập hợp cụ thể các thực thể cần được xem xét cho một thông số nhất định. Định nghĩa nhóm thực thể tương ứng phải có trong thư mục tuỳ chỉnh/entitySets/.

Loại

Khai báo một loại tuỳ chỉnh, khác với các loại tích hợp sẵn. Bạn có thể chỉ định kiểu cho các vị trí trong một cảnh hoặc các tham số trong cụm từ huấn luyện của một ý định. Trên thực tế, Kiểu có thể được coi là kiểu enum. Lưu ý: Tên loại được chỉ định trong tên tệp.

Biểu diễn dưới dạng JSON
{
  "exclusions": [
    string
  ],

  // Union field sub_type can be only one of the following:
  "synonym": {
    object (SynonymType)
  },
  "regularExpression": {
    object (RegularExpressionType)
  },
  "freeText": {
    object (FreeTextType)
  }
  // End of list of possible types for union field sub_type.
}
Các trường
exclusions[]

string

Tập hợp các từ/cụm từ đặc biệt không được khớp theo loại. Lưu ý: Nếu từ/cụm từ khớp với loại nhưng được liệt kê dưới dạng tiêu chí loại trừ, thì từ/cụm từ đó sẽ không được trả về trong kết quả trích xuất tham số. Bạn có thể bản địa hoá trường này.

Trường nhóm sub_type. Lựa chọn loại phụ dựa trên kiểu khớp cần thực hiện. sub_type chỉ có thể là một trong những trạng thái sau đây:
synonym

object (SynonymType)

Kiểu từ đồng nghĩa, về cơ bản là một enum.

regularExpression

object (RegularExpressionType)

Loại biểu thức chính quy, cho phép so khớp biểu thức chính quy.

freeText

object (FreeTextType)

Loại FreeText.

SynonymType

Loại khớp với văn bản theo nhóm từ đồng nghĩa.

Biểu diễn dưới dạng JSON
{
  "matchType": enum (MatchType),
  "acceptUnknownValues": boolean,
  "entities": {
    string: {
      object (Entity)
    },
    ...
  }
}
Các trường
matchType

enum (MatchType)

Không bắt buộc. Loại đối sánh cho từ đồng nghĩa.

acceptUnknownValues

boolean

Không bắt buộc. Khi bạn đặt chính sách này thành đúng, giá trị này sẽ khớp với những từ hoặc cụm từ không xác định dựa trên dữ liệu huấn luyện ý định và dữ liệu đầu vào xung quanh, chẳng hạn như những mặt hàng có thể được thêm vào danh sách hàng tạp hoá.

entities

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

Bắt buộc. Bản đồ được đặt tên của các thực thể đồng nghĩa.

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" }.

MatchType

Loại đối sánh mà các mục nhập trong loại này sẽ sử dụng. Điều này sẽ đảm bảo tất cả các kiểu sử dụng cùng một phương pháp đối sánh và cho phép biến thể đối sánh của đối sánh từ đồng nghĩa (ví dụ: đối sánh mờ so với đối sánh chính xác). Nếu là UNSPECIFIED thì giá trị này sẽ được đặt mặc định là EXACT_MATCH.

Enum
UNSPECIFIED Giá trị mặc định là EXACT_MATCH.
EXACT_MATCH Tìm kết quả khớp chính xác với từ đồng nghĩa hoặc tên.
FUZZY_MATCH Thấp hơn EXACT_MATCH. Tìm các kết quả khớp tương tự cũng như các kết quả khớp chính xác.

Thực thể

Đại diện cho trường thực thể từ đồng nghĩa chứa thông tin chi tiết của một mục nhập bên trong kiểu đó.

Biểu diễn dưới dạng JSON
{
  "display": {
    object (EntityDisplay)
  },
  "synonyms": [
    string
  ]
}
Các trường
display

object (EntityDisplay)

Không bắt buộc. Thông tin chi tiết về hiển thị thực thể.

synonyms[]

string

Không bắt buộc. Danh sách từ đồng nghĩa với thực thể. Bạn có thể bản địa hoá trường này.

EntityDisplay

Các phần tử sẽ hiển thị trên canvas sau khi thực thể của một loại cụ thể được trích xuất từ một truy vấn. Chỉ phù hợp với các ứng dụng hỗ trợ canvas. Bạn cần bản địa hoá thông báo này.

Biểu diễn dưới dạng JSON
{
  "iconTitle": string,
  "iconUrl": string
}
Các trường
iconTitle

string

Không bắt buộc. Tiêu đề của biểu tượng.

iconUrl

string

Bắt buộc. URL của biểu tượng.

RegularExpressionType

Loại khớp với văn bản theo biểu thức chính quy. Bạn cần bản địa hoá thông báo này.

Biểu diễn dưới dạng JSON
{
  "entities": {
    string: {
      object (Entity)
    },
    ...
  }
}
Các trường
entities

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

Bắt buộc. Bản đồ được đặt tên của các thực thể mà mỗi thực thể chứa các chuỗi Regex.

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" }.

Thực thể

Đại diện cho một đối tượng thực thể chứa biểu thức chính quy dùng để so sánh.

Biểu diễn dưới dạng JSON
{
  "display": {
    object (EntityDisplay)
  },
  "regularExpressions": [
    string
  ]
}
Các trường
display

object (EntityDisplay)

Không bắt buộc. Các phần tử sẽ hiển thị trên canvas sau khi một đối tượng được trích xuất từ một truy vấn. Chỉ phù hợp với các ứng dụng hỗ trợ canvas.

regularExpressions[]

string

Bắt buộc. Sử dụng cú pháp biểu thức chính quy RE2 (Xem https://github.com/google/re2/wiki/Syntax để biết thêm chi tiết)

FreeTextType

Nhập khớp với mọi văn bản nếu ngữ cảnh của từ xung quanh gần với các ví dụ huấn luyện được cung cấp.

Biểu diễn dưới dạng JSON
{
  "display": {
    object (EntityDisplay)
  }
}
Các trường
display

object (EntityDisplay)

Không bắt buộc. Các phần tử sẽ hiển thị trên canvas sau khi một đối tượng được trích xuất từ một truy vấn. Chỉ phù hợp với các ứng dụng hỗ trợ canvas.

EntitySet

Nhóm thực thể mô tả tập hợp các thực thể được xác định trước làm nguồn gốc giá trị của các tham số ý định tích hợp. Bạn có thể tham chiếu nhóm thực thể từ entitySet trong các tham số ý định tích hợp.

Biểu diễn dưới dạng JSON
{
  "entities": [
    {
      object (Entity)
    }
  ]
}
Các trường
entities[]

object (Entity)

Bắt buộc. Danh sách các thực thể mà nhóm thực thể này hỗ trợ.

Thực thể

Một thực thể có thể đến từ một thực thể có giá trị tham số ý định tích hợp.

Biểu diễn dưới dạng JSON
{
  "id": string
}
Các trường
id

string

Bắt buộc. Mã nhận dạng của thực thể. Để biết danh sách các tham số ý định tích hợp và các thực thể được hỗ trợ, hãy truy cập vào https://developers.google.com/assistant/conversational/build/built-in-intents

GlobalIntentEvent

Xác định trình xử lý ý định chung. Các sự kiện ý định chung nằm trong phạm vi toàn bộ dự án Actions và có thể bị trình xử lý ý định trong một cảnh ghi đè. Tên ý định không được trùng lặp trong dự án Actions.

Ý định chung có thể được so khớp bất cứ lúc nào trong một phiên, cho phép người dùng truy cập vào các quy trình phổ biến như "yêu cầu trợ giúp" hoặc "về nhà". Chúng cũng có thể được dùng để liên kết sâu người dùng vào các luồng cụ thể khi họ gọi một Hành động.

Lưu ý: tên ý định được chỉ định trong tên tệp.

Biểu diễn dưới dạng JSON
{
  "transitionToScene": string,
  "handler": {
    object (EventHandler)
  }
}
Các trường
transitionToScene

string

Không bắt buộc. Cảnh đích mà cuộc trò chuyện nên chuyển tới. Trạng thái của cảnh hiện tại bị huỷ bỏ trong quá trình chuyển đổi.

handler

object (EventHandler)

Không bắt buộc. Trình xử lý sự kiện được kích hoạt khi khớp với ý định. Nên thực thi trước khi chuyển sang cảnh đích. Được dùng để tạo Lời nhắc (Prompt) để phản hồi các sự kiện.

EventHandler

Xác định một trình xử lý sẽ được thực thi sau một sự kiện. Ví dụ về sự kiện là các sự kiện dựa trên ý định và điều kiện trong một cảnh.

Biểu diễn dưới dạng JSON
{
  "webhookHandler": string,

  // Union field prompt can be only one of the following:
  "staticPrompt": {
    object (StaticPrompt)
  },
  "staticPromptName": string
  // End of list of possible types for union field prompt.
}
Các trường
webhookHandler

string

Tên của trình xử lý webhook cần gọi.

Trường nhóm prompt. Lời nhắc có thể nằm cùng dòng hoặc được tham chiếu theo tên. prompt chỉ có thể là một trong những trạng thái sau đây:
staticPrompt

object (StaticPrompt)

Lời nhắc tĩnh cùng dòng. Có thể chứa các tham chiếu đến tài nguyên chuỗi trong gói.

staticPromptName

string

Tên của lời nhắc tĩnh để gọi.

StaticPrompt

Đại diện cho danh sách các đề xuất của câu lệnh, một trong số các đề xuất đó sẽ được chọn làm lời nhắc xuất hiện trong phản hồi cho người dùng. Bạn cần bản địa hoá thông báo này.

Biểu diễn dưới dạng JSON
{
  "candidates": [
    {
      object (StaticPromptCandidate)
    }
  ]
}
Các trường
candidates[]

object (StaticPromptCandidate)

Danh sách lời nhắc của ứng viên sẽ được gửi đến khách hàng. Mỗi câu lệnh có một bộ chọn để xác định thời điểm có thể sử dụng. Bộ chọn đầu tiên khớp với yêu cầu sẽ được gửi và phần còn lại sẽ bị bỏ qua.

StaticPromptCandidate

Đại diện cho một đề xuất lời nhắc tĩnh.

Biểu diễn dưới dạng JSON
{
  "selector": {
    object (Selector)
  },
  "promptResponse": {
    object (StaticPromptResponse)
  }
}
Các trường
selector

object (Selector)

Không bắt buộc. Tiêu chí để xác định xem lời nhắc này có phù hợp với một yêu cầu hay không. Nếu bộ chọn trống, lời nhắc này sẽ luôn được kích hoạt.

promptResponse

object (StaticPromptResponse)

Phản hồi nhanh được liên kết với bộ chọn.

Bộ chọn

Xác định tiêu chí để xác định xem lời nhắc có phù hợp với một yêu cầu hay không.

Biểu diễn dưới dạng JSON
{
  "surfaceCapabilities": {
    object (SurfaceCapabilities)
  }
}
Các trường
surfaceCapabilities

object (SurfaceCapabilities)

Tập hợp các tính năng bắt buộc của nền tảng.

SurfaceCapabilities

Đại diện cho nền tảng mà người dùng đang sử dụng để đưa ra yêu cầu cho Hành động.

Biểu diễn dưới dạng JSON
{
  "capabilities": [
    enum (Capability)
  ]
}
Các trường
capabilities[]

enum (Capability)

Bắt buộc. Khả năng của nền tảng đưa ra yêu cầu đối với Hành động.

Chức năng

Các chức năng mà nền tảng thiết bị hỗ trợ tại thời điểm yêu cầu.

Enum
UNSPECIFIED Chức năng bề mặt không xác định.
SPEECH Thiết bị có thể tương tác với người dùng thông qua tính năng chuyển văn bản sang lời nói hoặc SSML.
RICH_RESPONSE Thiết bị có thể hiển thị câu trả lời nhiều định dạng như thẻ, danh sách và bảng.
LONG_FORM_AUDIO Thiết bị có thể phát nội dung nghe nhìn dạng âm thanh dài như nhạc và podcast.
INTERACTIVE_CANVAS Thiết bị có thể hiển thị phản hồi canvas tương tác.
HOME_STORAGE Thiết bị có thể hỗ trợ việc lưu và tìm nạp bộ nhớ nhà.

StaticPromptResponse

Biểu thị các câu trả lời có cấu trúc để gửi cho người dùng, chẳng hạn như văn bản, lời nói, thẻ, dữ liệu canvas, khối đề xuất, v.v.

Biểu diễn dưới dạng JSON
{
  "firstSimple": {
    object (StaticSimplePrompt)
  },
  "content": {
    object (StaticContentPrompt)
  },
  "lastSimple": {
    object (StaticSimplePrompt)
  },
  "suggestions": [
    {
      object (Suggestion)
    }
  ],
  "link": {
    object (StaticLinkPrompt)
  },
  "override": boolean,
  "canvas": {
    object (StaticCanvasPrompt)
  }
}
Các trường
firstSimple

object (StaticSimplePrompt)

Không bắt buộc. Tin nhắn phản hồi đầu tiên bằng giọng nói và văn bản.

content

object (StaticContentPrompt)

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

lastSimple

object (StaticSimplePrompt)

Không bắt buộc. Câu trả lời bằng giọng nói và văn bản sau cùng.

suggestions[]

object (Suggestion)

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

override

boolean

Không bắt buộc. Chế độ cách hợp nhất tin nhắn này với tin nhắn đã xác định trước đó. true sẽ xoá tất cả các thông báo đã xác định trước đó (nội dung, đường liên kết đề xuất và canvas) đã xác định trước đó, đồng thời thêm thông báo được xác định trong câu lệnh này. false sẽ thêm thông báo được xác định trong lời nhắc này vào các thông báo đã xác định trong các câu trả lời trước. Việc đặt trường này thành false cũng sẽ cho phép thêm một số trường 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). Thông báo Nội dung và 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.

canvas

object (StaticCanvasPrompt)

Một phản hồi sẽ được dùng cho trải nghiệm canvas tương tác.

StaticSimplePrompt

Đại diện cho một lời nhắc đơn giản để gửi đến người dùng.

Biểu diễn dưới dạng JSON
{
  "variants": [
    {
      object (Variant)
    }
  ]
}
Các trường
variants[]

object (Variant)

Danh sách các biến thể có thể có.

Biến thể

Đại diện cho một biến thể thuộc câu lệnh đơn giản.

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

string

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

text

string

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

StaticContentPrompt

Phần giữ chỗ cho phần Nội dung của StaticPrompt.

Biểu diễn dưới dạng JSON
{

  // Union field content can be only one of the following:
  "card": {
    object (StaticCardPrompt)
  },
  "image": {
    object (StaticImagePrompt)
  },
  "table": {
    object (StaticTablePrompt)
  },
  "media": {
    object (StaticMediaPrompt)
  },
  "list": {
    object (StaticListPrompt)
  },
  "collection": {
    object (StaticCollectionPrompt)
  },
  "collectionBrowse": {
    object (StaticCollectionBrowsePrompt)
  }
  // End of list of possible types for union field content.
}
Các trường
Trường nhóm content. Chỉ một loại nội dung có thể xuất hiện trong Lời nhắc. content chỉ có thể là một trong những trạng thái sau đây:
card

object (StaticCardPrompt)

Một thẻ cơ bản.

image

object (StaticImagePrompt)

Một hình ảnh.

table

object (StaticTablePrompt)

Thẻ bảng.

media

object (StaticMediaPrompt)

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

list

object (StaticListPrompt)

Một thẻ trình bày danh sách các tuỳ chọn để chọn.

collection

object (StaticCollectionPrompt)

Một thẻ hiển thị danh sách các tuỳ chọn để chọn.

collectionBrowse

object (StaticCollectionBrowsePrompt)

Một thẻ hiển thị một tập hợp các trang web sẽ mở.

StaticCardPrompt

Một 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 (StaticImagePrompt)
  },
  "imageFill": enum (ImageFill),
  "button": {
    object (StaticLinkPrompt)
  }
}
Các trường
title

string

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

subtitle

string

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

text

string

Bắt buộc. Văn bản nội dung của thẻ là cần thiết trừ khi có hình ảnh. Hỗ trợ một số cú pháp Markdown có giới hạn để định dạng.

image

object (StaticImagePrompt)

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

imageFill

enum (ImageFill)

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

button

object (StaticLinkPrompt)

Không bắt buộc. Một nút có thể nhấp sẽ xuất hiện trong Thẻ.

StaticImagePrompt

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
}
Các trường
url

string

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

alt

string

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

height

integer

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

width

integer

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

ImageFill

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

Enum
UNSPECIFIED Chưa xác định ImageFill.
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 trên cùng và 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 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. Điều 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.

StaticLinkPrompt

Xác định đường liên kết sẽ xuất hiện dưới dạng khối đề xuất và người dùng có thể mở đường liên kết đó.

Biểu diễn dưới dạng JSON
{
  "name": string,
  "open": {
    object (OpenUrl)
  }
}
Các trường
name

string

Tên của đường liên kết

open

object (OpenUrl)

Xác định hành vi khi người dùng mở đường liên kết.

OpenUrl

Xác định hành vi 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)
}
Các trường
url

string

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

hint

enum (UrlHint)

Biểu thị gợi ý cho loại URL.

UrlHint

Các loại gợi ý về URL.

Enum
HINT_UNSPECIFIED Không xác định
AMP URL trỏ trực tiếp đến nội dung AMP hoặc đến URL chính tắc dẫn đến nội dung AMP thông qua <link rel="amphtml">.

StaticTablePrompt

Thẻ bảng để trình bày một bảng văn bản.

Biểu diễn dưới dạng JSON
{
  "title": string,
  "subtitle": string,
  "image": {
    object (StaticImagePrompt)
  },
  "columns": [
    {
      object (TableColumn)
    }
  ],
  "rows": [
    {
      object (TableRow)
    }
  ],
  "button": {
    object (StaticLinkPrompt)
  }
}
Các trường
title

string

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

subtitle

string

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

image

object (StaticImagePrompt)

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

columns[]

object (TableColumn)

Không bắt buộc. Tiêu đề và căn chỉnh các cột.

rows[]

object (TableRow)

Không bắt buộc. Dữ liệu hàng của bảng. 3 hàng đầu tiên chắc chắn sẽ xuất hiện, nhưng những hàng khác có thể bị cắt trên một số vị trí. Vui lòng thử nghiệm bằng trình mô phỏng để xem hàng nào sẽ xuất hiện trên một nền tảng nhất định. Trên các nền tảng hỗ trợ tính 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 (StaticLinkPrompt)

Không bắt buộc. 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)
}
Các trường
header

string

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

align

enum (HorizontalAlignment)

Căn ngang nội dung với cột t.r.t. Nếu chưa chỉ định, nội dung sẽ được căn chỉnh vào cạnh trên cùng.

HorizontalAlignment

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

Enum
UNSPECIFIED Chưa xác định Căn chỉnh ngang.
LEADING Cạnh trên của ô. Đây là lựa 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
}
Các trường
cells[]

object (TableCell)

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

divider

boolean

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

TableCell

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

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

string

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

StaticMediaPrompt

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. Mã tiếp theo: 11

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

enum (MediaType)

Loại nội dung đa phương tiện của phản hồi này.

startOffset

string (Duration format)

Bắt đầu độ lệch của đối tượng nội dung đa phương tiện đầu tiên.

Thời lượng tính bằng giây có 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 được đặt, yêu cầu sẽ được gửi đến bên thứ ba khi một sự kiện truyền thông nhất định diễn ra. Nếu không được đặt, 3p vẫn phải xử lý hai loại điều khiển mặc định là ComposeED và FAILED (KHÔNG THÀNH CÔNG).

mediaObjects[]

object (MediaObject)

Danh sách đối tượng nội dung nghe nhìn.

repeatMode

enum (RepeatMode)

Chế độ lặp lại cho danh sách Đối tượng phương tiện.

MediaType

Loại nội dung đa phương tiện của phản hồi này.

Enum
MEDIA_TYPE_UNSPECIFIED Giá trị KHÔNG XÁC ĐỊNH
AUDIO Tệp âm thanh.
MEDIA_STATUS_ACK Nội dung 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 điều khiển nội dung đa phương tiện mà phản hồi nội dung đa phương tiện có thể được hỗ trợ (không bắt buộc)

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

MediaObject

Đại diện cho một đối tượng phương tiện.

Biểu diễn dưới dạng JSON
{
  "name": string,
  "description": string,
  "url": string,
  "image": {
    object (MediaImage)
  }
}
Các 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 đa phương tiện này.

url

string

URL trỏ đến nội dung nghe nhìn.

image

object (MediaImage)

Hình ảnh để hiển thị cùng với thẻ nội dung đa phương tiện.

MediaImage

Hình ảnh hiển thị bên trong MediaPrompt.

Biểu diễn dưới dạng JSON
{

  // Union field image can be only one of the following:
  "large": {
    object (StaticImagePrompt)
  },
  "icon": {
    object (StaticImagePrompt)
  }
  // End of list of possible types for union field image.
}
Các trường
Trường nhóm image. Chỉ cho phép một loại MediaImage. image chỉ có thể là một trong những trạng thái sau đây:
large

object (StaticImagePrompt)

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

icon

object (StaticImagePrompt)

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

RepeatMode

Các loại chế độ lặp lại cho danh sách đối tượng nội dung đa phương tiện.

Enum
REPEAT_MODE_UNSPECIFIED Tương đương với tuỳ chọn TẮT.
OFF Kết thúc phiên phát nội dung nghe nhìn ở cuối đối tượng nội dung nghe nhìn gần đây nhất.
ALL Lặp lại đến đầu đối tượng nội dung đa phương tiện đầu tiên khi đến cuối đối tượng nội dung đa phương tiện cuối cùng.

StaticListPrompt

Một thẻ trình bày danh sách các tuỳ chọn để chọn.

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

string

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

subtitle

string

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

items[]

object (ListItem)

Bắt buộc. Mục danh sách.

ListItem

Một mục trong danh sách.

Biểu diễn dưới dạng JSON
{
  "key": string,
  "title": string,
  "description": string,
  "image": {
    object (StaticImagePrompt)
  }
}
Các 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. Khi mục được nhấn, khoá này sẽ được đăng lại dưới dạng tham số tuỳ chọn có chọn lọc.

title

string

Bắt buộc. Tiêu đề của mặt hàng. Khi được nhấn, văn bản này sẽ được đăng lại nguyên văn trong cuộc trò chuyện như thể người dùng đã nhập. Mỗi tiêu đề phải là duy nhất trong tập hợp các mục.

description

string

Không bắt buộc. Văn bản nội dung của mục.

image

object (StaticImagePrompt)

Không bắt buộc. Hình ảnh mục.

StaticCollectionPrompt

Một thẻ trình bày một bộ sưu tập các tuỳ chọn để chọn.

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

string

Không bắt buộc. Tên bộ sưu tập.

subtitle

string

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

items[]

object (CollectionItem)

Bắt buộc. Các mục trong bộ sưu tập.

imageFill

enum (ImageFill)

Không bắt buộc. Loại tuỳ chọn hiển thị hình ảnh.

CollectionItem

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

Biểu diễn dưới dạng JSON
{
  "key": string,
  "title": string,
  "description": string,
  "image": {
    object (StaticImagePrompt)
  }
}
Các trường
key

string

Bắt buộc. Khoá NLU khớp với tên khoá nhập trong Loại được liên kết. Khi mục được nhấn, khoá này sẽ được đăng lại dưới dạng tham số tuỳ chọn có chọn lọc.

title

string

Bắt buộc. Tiêu đề của mặt hàng. Khi được nhấn, văn bản này sẽ được đăng lại nguyên văn trong cuộc trò chuyện như thể người dùng đã nhập. Mỗi tiêu đề phải là duy nhất trong tập hợp các mục.

description

string

Không bắt buộc. Văn bản nội dung của mục.

image

object (StaticImagePrompt)

Không bắt buộc. Hình ảnh mục.

StaticCollectionBrowsePrompt

Trình bày một nhóm tài liệu trên web dưới dạng một tập hợp các mục có nhiều ô lớn. Bạn có thể chọn các mục để chạy tài liệu web liên kết trong một trình xem web.

Biểu diễn dưới dạng JSON
{
  "items": [
    {
      object (CollectionBrowseItem)
    }
  ],
  "imageFill": enum (ImageFill)
}
Các trường
items[]

object (CollectionBrowseItem)

Các mục trong bộ sưu tập duyệt xem. Kích thước danh sách phải nằm trong khoảng [2, 10].

imageFill

enum (ImageFill)

Tuỳ chọn hiển thị hình ảnh cho các hình ảnh trong bộ sưu tập.

CollectionBrowseItem

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

Biểu diễn dưới dạng JSON
{
  "title": string,
  "description": string,
  "footer": string,
  "image": {
    object (StaticImagePrompt)
  },
  "openUriAction": {
    object (OpenUrl)
  }
}
Các trường
title

string

Bắt buộc. Tên của mục trong bộ sưu tập.

description

string

Nội dung mô tả về mục bộ sưu tập.

footer

string

Văn bản chân trang cho mục trong bộ sưu tập, hiển thị bên dưới phần mô tả. Một dòng văn bản, bị cắt ngắn bằng dấu ba chấm.

image

object (StaticImagePrompt)

Hình ảnh cho mục trong bộ sưu tập.

openUriAction

object (OpenUrl)

Bắt buộc. URI để mở nếu mục được chọn.

Đề xuất

Đại diện cho khối đề xuất, một thành phần trên giao diện người dùng được hiển thị cho người dùng để thuận tiện.

Biểu diễn dưới dạng JSON
{
  "title": string
}
Các 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 trong cuộc trò chuyện như thể người dùng đã nhập. Mỗi tiêu đề phải là duy nhất trong tập hợp khối đề xuất. Tối đa 25 ký tự

StaticCanvasPrompt

Biểu thị phản hồi Canvas tương tác sẽ được gửi đến người dùng. Ngoài việc hiển thị phản hồi canvas tương tác, bạn có thể sử dụng thuộc tính này cùng với trường firstSimple trong câu lệnh chứa lời nhắc để nói chuyện với người dùng.

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

string

Bắt buộc. URL của chế độ xem web cần tải.

data[]

value (Value format)

Không bắt buộc. Dữ liệu JSON sẽ được truyền đến trang web trải nghiệm sống động dưới dạng sự kiện. Nếu trường override trong lời nhắc chứa là false thì các giá trị dữ liệu được định nghĩa trong lời nhắc Canvas này sẽ được thêm vào sau các 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ị true có nghĩa là micrô sẽ không được mở để thu thập dữ liệu đầu vào sau khi phản hồi trực quan này được hiển thị cho người dùng.

sendStateDataToCanvasApp

boolean

Không bắt buộc. Nếu là true, siêu dữ liệu liên quan đến cuộc trò chuyện sẽ được đưa vào và gửi lại đến ứng dụng canvas.

enableFullScreen

boolean

Không bắt buộc. Nếu true, ứng dụng canvas sẽ chiếm toàn màn hình và sẽ 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.

Scene

Cảnh là đơn vị điều khiển cơ bản khi thiết kế một cuộc trò chuyện. Các hoạt động này có thể được xâu chuỗi 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 các vị trí. Tên cảnh được chỉ định trong tên tệp.

Biểu diễn dưới dạng JSON
{
  "onEnter": {
    object (EventHandler)
  },
  "intentEvents": [
    {
      object (IntentEvent)
    }
  ],
  "conditionalEvents": [
    {
      object (ConditionalEvent)
    }
  ],
  "slots": [
    {
      object (Slot)
    }
  ],
  "onSlotUpdated": {
    object (EventHandler)
  }
}
Các trường
onEnter

object (EventHandler)

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

intentEvents[]

object (IntentEvent)

Danh sách các sự kiện kích hoạt dựa trên ý định. Những sự kiện này có thể được kích hoạt bất cứ lúc nào sau khi Trình xử lý on_load được gọi. Lưu ý quan trọng – những sự kiện này xác định một tập hợp ý định trong phạm vi 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 hệ thống có cùng ý định hoặc cụm từ kích hoạt. Tên ý định phải là duy nhất trong một cảnh.

conditionalEvents[]

object (ConditionalEvent)

Danh sách các sự kiện cần kích hoạt dựa trên câu lệnh có điều kiện. Các thông báo này được đánh giá sau khi biểu mẫu được điền hoặc ngay sau khi 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). Hệ thống sẽ chỉ kích hoạt sự kiện khớp đầu tiên.

slots[]

object (Slot)

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

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ị trí không phải do các bản cập nhật trong Trình xử lý khác gây ra. Điều này cho phép các khe bị vô hiệu hoá, cảnh bị mất hiệu lực hoặc các thay đổi khác về trạng thái cảnh.

IntentEvent

Đăng ký những Sự kiện kích hoạt do việc so khớp ý định.

Biểu diễn dưới dạng JSON
{
  "intent": string,
  "transitionToScene": string,
  "handler": {
    object (EventHandler)
  }
}
Các trường
intent

string

Bắt buộc. Ý định kích hoạt sự kiện.

transitionToScene

string

Không bắt buộc. Cảnh đích mà cuộc trò chuyện nên chuyển tới. Trạng thái của cảnh hiện tại bị huỷ bỏ trong quá trình chuyển đổi.

handler

object (EventHandler)

Không bắt buộc. Trình xử lý sự kiện được kích hoạt khi khớp với ý định. Nên thực thi trước khi chuyển sang cảnh đích. Được dùng để tạo câu lệnh để phản hồi các sự kiện.

ConditionalEvent

Đăng ký các sự kiện kích hoạt do một điều kiện đúng.

Biểu diễn dưới dạng JSON
{
  "condition": string,
  "transitionToScene": string,
  "handler": {
    object (EventHandler)
  }
}
Các trường
condition

string

Bắt buộc. Điều kiện lọc để kích hoạt sự kiện này. Nếu điều kiện được đánh giá thành true (đúng), thì handler liên quan sẽ được kích hoạt. Các tham chiếu biến sau được hỗ trợ: $session – Để tham chiếu dữ liệu trong bộ nhớ phiên. $user – Để tham chiếu dữ liệu trong bộ nhớ của người dùng. Hỗ trợ các toán tử boolean sau (kèm theo ví dụ): &&session.params.counter > 0 && session.params.counter < 100 ||session.params.foo == "John" || session.params.counter == "Adam" !!(session.params.counter == 5) Các phép so sánh sau được hỗ trợ: ==, !=, <, >, <=, >= Các toán tử chuỗi và danh sách sau được hỗ trợ (kèm theo ví dụ): in – "Watermelon" trong session.params.fruitListsize(session.params.fruitList) > 2 substringsession.params.fullName.contains("John")size(session.params.fruitList) > 2 substringsize(session.params.fruitList) > 2size

transitionToScene

string

Không bắt buộc. Cảnh đích mà cuộc trò chuyện sẽ chuyển đến khi điều kiện liên quan được đánh giá là true (đúng). Trạng thái của cảnh hiện tại bị huỷ bỏ trong quá trình chuyển đổi.

handler

object (EventHandler)

Không bắt buộc. Trình xử lý sự kiện được kích hoạt khi điều kiện liên quan được đánh giá thành true. Nên thực thi trước khi chuyển sang cảnh đích. Được dùng để tạo Lời nhắc (Prompt) để phản hồi các sự kiện.

Vùng

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

Biểu diễn dưới dạng JSON
{
  "name": string,
  "type": {
    object (ClassReference)
  },
  "required": boolean,
  "promptSettings": {
    object (PromptSettings)
  },
  "commitBehavior": {
    object (CommitBehavior)
  },
  "config": value,
  "defaultValue": {
    object (DefaultValue)
  }
}
Các trường
name

string

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

type

object (ClassReference)

Bắt buộc. Khai báo kiểu dữ liệu của vùng này.

required

boolean

Không bắt buộc. Cho biết liệu vùng quảng cáo có bắt buộc phải được lấp đầy trước khi thăng cấp hay không. Các vị trí 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 nhiều giai đoạn lấp đầy vị trí.

commitBehavior

object (CommitBehavior)

Không bắt buộc. Hành vi xác nhận liên kết với vị trí.

config

value (Value format)

Không bắt buộc. Cấu hình bổ sung liên kết với vị trí được dùng để lấp đầy vị trí. Định dạng của cấu hình là tuỳ theo loại vị trí. Bạn có thể thêm các tham chiếu tài nguyên đến người dùng hoặc tham số phiên vào cấu hình này. Bạn cần sử dụng cấu hình này để lấp đầy các vị trí 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 vị trí thuộc loại actions.type.CompletePurchaseValue, cấu hình sau đề xuất thứ tự hàng hoá kỹ thuật số có tham chiếu đến tham 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ị trí này.

PromptSettings

Một vị trí duy nhất xác định các lời nhắc về khoảng trống.

Biểu diễn dưới dạng JSON
{
  "initialPrompt": {
    object (EventHandler)
  },
  "noMatchPrompt1": {
    object (EventHandler)
  },
  "noMatchPrompt2": {
    object (EventHandler)
  },
  "noMatchFinalPrompt": {
    object (EventHandler)
  },
  "noInputPrompt1": {
    object (EventHandler)
  },
  "noInputPrompt2": {
    object (EventHandler)
  },
  "noInputFinalPrompt": {
    object (EventHandler)
  }
}
Các trường
initialPrompt

object (EventHandler)

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

noMatchPrompt1

object (EventHandler)

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

noMatchPrompt2

object (EventHandler)

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

noMatchFinalPrompt

object (EventHandler)

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

noInputPrompt1

object (EventHandler)

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ụ: "Xin lỗi, tôi chưa hiểu ý bạn".

noInputPrompt2

object (EventHandler)

Nhắc đưa ra khi người dùng không cung cấp dữ liệu đầu vào lần thứ hai. Ví dụ: "Xin lỗi, tôi chưa hiểu ý bạn".

noInputFinalPrompt

object (EventHandler)

Nhắc đưa ra khi người dùng không cung cấp thông tin đầu vào trong lần gần đây nhất. Ví dụ: "Xin lỗi, tôi chưa hiểu ý bạn".

CommitBehavior

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

Biểu diễn dưới dạng JSON
{
  "writeSessionParam": string
}
Các trường
writeSessionParam

string

Tham số phiên để ghi giá trị vị trí sau khi lấp đầy. Xin 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ị trí vào thông số phiên có cùng tên với vị trí. 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ị trí này.

Biểu diễn dưới dạng JSON
{
  "sessionParam": string,
  "constant": value
}
Các trường
sessionParam

string

Không bắt buộc. Tham số phiên được dùng để khởi tạo giá trị vị trí, nếu nó có giá trị không trống. Loại giá trị phải khớp với loại vùng. Xin 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í. Thuộc tính này sẽ chỉ được sử dụng nếu giá trị cho vị trí 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.

DataFiles

Trình bao bọc cho tệp dữ liệu lặp lại. Các trường lặp lại không thể tồn tại cùng một trong hai trường.

Biểu diễn dưới dạng JSON
{
  "dataFiles": [
    {
      object (DataFile)
    }
  ]
}
Các trường
dataFiles[]

object (DataFile)

Nhiều tệp dữ liệu.

DataFile

Đại diện cho một tệp chứa dữ liệu không có cấu trúc. Ví dụ: tệp hình ảnh, tệp âm thanh và mã nguồn chức năng đám mây.

Biểu diễn dưới dạng JSON
{
  "filePath": string,
  "contentType": string,
  "payload": string
}
Các trường
filePath

string

Đường dẫn tương đối của tệp dữ liệu từ thư mục gốc của dự án trong cấu trúc tệp SDK. Đường dẫn tệp được phép: – Hình ảnh: resources/images/{multiple directories}?/{ImageName}.{extension} – Âm thanh: resources/audio/{multiple directories}?/{AudioFileName}.{extension} – Mã hàm đám mây nội tuyến: webhooks/{WebhookName}.zip Các tiện ích được phép: png, jpg, jpeg – Âm thanh: mp3, mpeg – Hàm đám mây nội tuyến: zip

contentType

string

Bắt buộc. Loại nội dung của tài sản này. Ví dụ: text/html Loại nội dung phải tuân thủ thông số kỹ thuật (http://www.w3.org/Protocols/rfc1341/4_Content-Type.html). Các hàm đám mây phải ở định dạng zip và loại nội dung phải là application/zip;zip_type=cloud_function. Thông số zip_type cho biết rằng tệp zip dành cho một chức năng đám mây.

payload

string (bytes format)

Nội dung của tệp dữ liệu. Ví dụ: các byte thô của hình ảnh, tệp âm thanh hoặc định dạng zip của chức năng đám mây. Có giới hạn nghiêm ngặt là 10 MB về kích thước tải trọng.

Chuỗi được mã hoá base64.