- JSON 표현
- ConfigFiles
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- ConfigFile
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 매니페스트
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 작업
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- CustomAction
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 참여도
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- PushNotification
- DailyUpdate
- ActionLink
- AssistantLink
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 설정
- 카테고리
- SurfaceRequirements
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- CapabilityRequirement
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- SurfaceCapability
- LocalizedSettings
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- ThemeCustomization
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- ImageCornerStyle
- AccountLinking
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- LinkingType
- AuthGrantType
- 웹훅
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 핸들러
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- HttpsEndpoint
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- InlineCloudFunction
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 인텐트
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- IntentParameter
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- ClassReference
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- EntitySetReferences
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- EntitySetReference
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 유형
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- SynonymType
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- MatchType
- 항목
- EntityDisplay
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- RegularExpressionType
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 항목
- FreeTextType
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- EntitySet
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 항목
- GlobalIntentEvent
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- EventHandler
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- StaticPrompt
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- StaticPromptCandidate
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 선택기
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- SurfaceCapabilities
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 기능
- StaticPromptResponse
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- StaticSimplePrompt
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 변형
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- StaticContentPrompt
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- StaticCardPrompt
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- StaticImagePrompt
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- ImageFill
- StaticLinkPrompt
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- OpenUrl
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- UrlHint
- StaticTablePrompt
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- TableColumn
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- HorizontalAlignment
- TableRow
- TableCell
- StaticMediaPrompt
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- MediaType
- OptionalMediaControls
- MediaObject
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- MediaImage
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- RepeatMode
- StaticListPrompt
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- ListItem
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- StaticCollectionPrompt
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- CollectionItem
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- StaticCollectionBrowsePrompt
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- CollectionBrowseItem
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 제안
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- StaticCanvasPrompt
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 장면
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- IntentEvent
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- ConditionalEvent
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 슬롯
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- PromptSettings
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- CommitBehavior
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- DefaultValue
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- DataFiles
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- DataFile
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
파일 목록의 래퍼입니다.
JSON 표현 | |
---|---|
{ // Union field |
필드 | ||
---|---|---|
통합 필드 file_type . 한 번에 한 가지 유형의 파일(구성 파일 또는 데이터 파일)만 서버에 보낼 수 있습니다. file_type 은 다음 중 하나여야 합니다. |
||
configFiles |
구성 파일 목록입니다. 여기에는 매니페스트, 설정, 상호작용 모델 리소스 번들 등이 포함됩니다. |
|
dataFiles |
데이터 파일 목록입니다. 여기에는 이미지, 오디오 파일, Cloud 함수 소스 코드가 포함됩니다. |
ConfigFiles
반복되는 구성 파일의 래퍼입니다. 반복되는 필드는 한 곳에 존재할 수 없습니다.
JSON 표현 | |
---|---|
{
"configFiles": [
{
object ( |
필드 | |
---|---|
configFiles[] |
여러 구성 파일. |
ConfigFile
구조화된 데이터가 포함된 단일 파일을 나타냅니다. 개발자는 작업, 설정, 처리를 포함한 구조화된 구성을 사용하여 대부분의 프로젝트를 정의할 수 있습니다.
JSON 표현 | |
---|---|
{ "filePath": string, // Union field |
필드 | ||
---|---|---|
filePath |
SDK 파일 구조의 프로젝트 루트에 있는 구성 파일의 상대 경로입니다. 아래의 각 파일 형식에 허용되는 파일 경로가 있습니다. 예: settings/settings.yaml |
|
통합 필드 file . 구성 파일의 각 유형에는 해당 필드가 있어야 합니다. file 은 다음 중 하나여야 합니다. |
||
manifest |
단일 매니페스트 파일 허용되는 파일 경로: |
|
actions |
모든 작업이 정의된 단일 작업 파일 허용되는 파일 경로: |
|
settings |
프로젝트의 기본 언어 (지정된 경우)로 현지화할 수 없는 설정과 설정을 포함하는 단일 설정 구성입니다. 언어 재정의 파일의 경우 localizedSettings 필드만 채워집니다. 허용되는 파일 경로: |
|
webhook |
단일 웹훅 정의입니다. 허용되는 파일 경로: |
|
intent |
단일 인텐트 정의입니다. 허용되는 파일 경로: |
|
type |
단일 유형 정의입니다. 허용되는 파일 경로: |
|
entitySet |
단일 항목 세트 정의 허용되는 파일 경로: |
|
globalIntentEvent |
단일 전역 인텐트 이벤트 정의 허용되는 파일 경로: |
|
scene |
단일 장면 정의 허용되는 파일 경로: |
|
staticPrompt |
단일 정적 프롬프트 정의 허용되는 파일 경로: |
|
accountLinkingSecret |
계정 연결에 사용된 클라이언트 보안 비밀번호에 해당하는 메타데이터입니다. 허용되는 파일 경로: |
|
resourceBundle |
단일 리소스 번들: 문자열에서 문자열 또는 문자열 목록으로의 매핑 리소스 번들은 정적 프롬프트의 문자열을 현지화하는 데 사용할 수 있습니다. 허용되는 파일 경로: |
매니페스트
'전송 가능'한 정보 포함 즉, 특정 프로젝트에 국한되지 않으며 프로젝트 간에 이동할 수 있습니다.
JSON 표현 | |
---|---|
{ "version": string } |
필드 | |
---|---|
version |
파일 형식의 버전 현재 파일 형식 버전은 1.0입니다(예: '1.0'). |
작업
프로젝트에 정의된 작업 목록을 나타냅니다.
JSON 표현 | |
---|---|
{
"custom": {
string: {
object ( |
필드 | |
---|---|
custom |
인텐트에서 커스텀 작업에 매핑하여 프로젝트의 호출을 구성합니다. 호출 인텐트는 시스템 또는 'custom/intents/'에 정의된 맞춤 인텐트일 수 있습니다. 패키지에서 찾을 수 있습니다. 여기에 정의된 모든 인텐트 (시스템 인텐트 및 맞춤 인텐트)는 'custom/global/'에 상응하는 인텐트 파일이 있어야 합니다. 패키지에서 찾을 수 있습니다.
|
CustomAction
맞춤 작업에 관한 세부정보입니다.
JSON 표현 | |
---|---|
{
"engagement": {
object ( |
필드 | |
---|---|
engagement |
최종 사용자가 푸시 알림 및 일일 업데이트를 구독할 수 있도록 지원하는 작업과 관련된 참여 메커니즘입니다. 일일 업데이트/푸시 알림 슬롯 구성에 지정된 인텐트 이름이 이 작업에 해당하는 인텐트와 일치해야 최종 사용자가 업데이트를 구독할 수 있습니다. |
참여
이 작업과 관련된 참여 메커니즘을 정의합니다. 이렇게 하면 최종 사용자가 푸시 알림 및 일일 업데이트를 구독할 수 있습니다.
JSON 표현 | |
---|---|
{ "title": string, "pushNotification": { object ( |
필드 | |
---|---|
title |
업데이트 수신 권한을 요청하는 최종 사용자에게 전송되는 참여 제목입니다. 최종 사용자에게 일일 업데이트를 요청하는 메시지는 '{제목}을(를) 매일 몇 시에 보내 드릴까요?'와 같은 형식입니다. 푸시 알림의 경우 '{제목}에 대한 푸시 알림을 보내도 괜찮을까요?'와 같은 내용이 표시됩니다. 이 필드는 현지화할 수 있습니다. |
pushNotification |
이 참여에서 지원하는 푸시 알림 설정입니다. |
actionLink |
작업에 링크 공유를 사용 설정할지 여부를 결정하는 작업의 링크 구성이며, 사용 설정된 경우에는 링크에 대한 사용자 친화적인 표시 이름을 포함합니다. ActionLink는 지원 중단되었습니다. 대신 AssistantLink를 사용하세요. |
assistantLink |
작업에 링크 공유를 사용 설정할지 여부를 결정하는 작업의 링크 구성이며, 사용 설정된 경우에는 링크에 대한 사용자 친화적인 표시 이름을 포함합니다. |
dailyUpdate |
이 참여에서 지원하는 일일 업데이트 설정입니다. |
PushNotification
이 참여에서 지원하는 푸시 알림 설정을 정의합니다.
DailyUpdate
이 참여에서 지원하는 일일 업데이트 설정을 정의합니다.
ActionLink
이 작업과 해당 설정에 링크 공유가 사용 설정되었는지 여부를 나타냅니다. 작업 링크는 사용자를 특정 작업으로 딥 링크로 연결하는 데 사용됩니다. ActionLink는 지원 중단되었습니다. 대신 AssistantLink를 사용하세요.
JSON 표현 | |
---|---|
{ "title": string } |
필드 | |
---|---|
title |
링크의 사용자 친화적인 표시 제목입니다. |
AssistantLink
이 작업과 해당 설정에 링크 공유가 사용 설정되었는지 여부를 나타냅니다. 어시스턴트 링크는 사용자를 특정 작업으로 딥 링크로 연결하는 데 사용됩니다.
JSON 표현 | |
---|---|
{ "title": string } |
필드 | |
---|---|
title |
링크의 사용자 친화적인 표시 제목입니다. |
설정
언어별이 아닌 작업 프로젝트의 설정을 나타냅니다. 다음 태그: 22
JSON 표현 | |
---|---|
{ "projectId": string, "defaultLocale": string, "enabledRegions": [ string ], "disabledRegions": [ string ], "category": enum ( |
필드 | |
---|---|
projectId |
작업 프로젝트 ID입니다. |
defaultLocale |
프로젝트의 기본값입니다. 경로에 언어가 없는 |
enabledRegions[] |
사용자가 작업을 호출할 수 있는 지역을 나타내며, 사용자의 현재 위치를 기반으로 합니다. |
disabledRegions[] |
사용자의 현재 위치를 기준으로 작업이 차단된 지역을 나타냅니다. |
category |
이 작업 프로젝트의 카테고리입니다. |
usesTransactionsApi |
작업이 거래를 사용할 수 있는지 여부 (예: 예약, 주문 접수 등) false인 경우 Transactions API 사용 시도가 실패합니다. |
usesDigitalPurchaseApi |
작업이 디지털 상품을 위한 거래를 수행할 수 있는지 여부입니다. |
usesInteractiveCanvas |
작업에서 Interactive Canvas를 사용하는지 여부 |
usesHomeStorage |
작업에서 홈 스토리지 기능을 사용하는지 여부 |
designedForFamily |
작업 콘텐츠가 가족용 (DFF)용으로 설계되었는지 여부 |
containsAlcoholOrTobaccoContent |
작업에 주류 또는 담배 관련 콘텐츠가 포함되어 있는지 여부 |
keepsMicOpen |
대화 중에 명시적인 메시지 없이 작업에서 마이크를 켜진 상태로 둘 수 있는지 여부입니다. |
surfaceRequirements |
이 프로젝트에서 작업을 호출하기 위해 클라이언트 노출 영역에서 지원해야 하는 노출 영역 요구사항입니다. |
testingInstructions |
작업 검토자를 위한 자유 형식 테스트 안내입니다 (예: 계정 연결 안내). |
localizedSettings |
프로젝트의 기본 언어에 대한 현지화된 설정입니다. 모든 추가 로케일은 고유 디렉터리에 자체 설정 파일이 있어야 합니다. |
accountLinking |
사용자가 Google 로그인 또는 자체 OAuth 서비스를 통해 계정을 만들거나 연결하도록 허용합니다. |
selectedAndroidApps[] |
거래를 위해 Google Play 구매에 액세스하도록 선택된 Android 앱 브랜드 소유권을 확인하고 추가 기능을 사용 설정하기 위해 작업 프로젝트에 연결된 Android 앱에서 선택합니다. 자세한 내용은 https://developers.google.com/assistant/console/brand-verification을 참고하세요. |
카테고리
작업 프로젝트의 카테고리 선택
열거형 | |
---|---|
CATEGORY_UNSPECIFIED |
알 수 없음 / 지정되지 않음 |
BUSINESS_AND_FINANCE |
비즈니스 및 금융 카테고리입니다. |
EDUCATION_AND_REFERENCE |
교육 및 참조 카테고리입니다. |
FOOD_AND_DRINK |
식음료 카테고리입니다. |
GAMES_AND_TRIVIA |
게임 및 퀴즈 카테고리입니다. |
HEALTH_AND_FITNESS |
건강/피트니스 카테고리입니다. |
KIDS_AND_FAMILY |
어린이 및 가족 카테고리에 속합니다. |
LIFESTYLE |
라이프스타일 카테고리입니다. |
LOCAL |
지역 카테고리입니다. |
MOVIES_AND_TV |
영화 및 TV 카테고리입니다. |
MUSIC_AND_AUDIO |
음악 및 오디오 카테고리입니다. |
NEWS |
뉴스 카테고리, |
NOVELTY_AND_HUMOR |
'재미 및 유머' 카테고리로 분류해야 합니다. |
PRODUCTIVITY |
생산성 카테고리입니다. |
SHOPPING |
쇼핑 카테고리입니다. |
SOCIAL |
소셜 카테고리입니다. |
SPORTS |
스포츠 카테고리입니다. |
TRAVEL_AND_TRANSPORTATION |
여행 및 교통 카테고리입니다. |
UTILITIES |
공익산업 카테고리입니다. |
WEATHER |
날씨 카테고리입니다. |
HOME_CONTROL |
홈 컨트롤 카테고리입니다. |
SurfaceRequirements
프로젝트에서 작업을 호출하기 위해 클라이언트 노출 영역에서 지원해야 하는 일련의 요구사항이 포함되어 있습니다.
JSON 표현 | |
---|---|
{
"minimumRequirements": [
{
object ( |
필드 | |
---|---|
minimumRequirements[] |
프로젝트에서 작업을 호출하는 데 필요한 최소한의 기능 집합입니다. 노출 영역에 이러한 항목이 누락된 경우 작업이 트리거되지 않습니다. |
CapabilityRequirement
특정 기능의 가용성에 대한 요구사항을 나타냅니다.
JSON 표현 | |
---|---|
{
"capability": enum ( |
필드 | |
---|---|
capability |
기능 유형 |
SurfaceCapability
가능한 노출 영역 기능 집합입니다.
열거형 | |
---|---|
SURFACE_CAPABILITY_UNSPECIFIED |
알 수 없음 / 지정되지 않음 |
AUDIO_OUTPUT |
노출 영역이 오디오 출력을 지원합니다. |
SCREEN_OUTPUT |
노출 영역은 화면/시각적 출력을 지원합니다. |
MEDIA_RESPONSE_AUDIO |
노출 영역은 미디어 응답 오디오를 지원합니다. |
WEB_BROWSER |
Surface는 웹브라우저를 지원합니다. |
ACCOUNT_LINKING |
노출 영역이 계정 연결을 지원합니다. |
INTERACTIVE_CANVAS |
Surface는 Interactive Canvas를 지원합니다. |
HOME_STORAGE |
Surface는 홈 스토리지를 지원합니다. |
LocalizedSettings
사용자 언어와 관련된 작업 프로젝트의 설정을 나타냅니다. 이 경우 사용자는 작업을 호출하는 최종 사용자를 의미합니다. 이 메시지는 현지화할 수 있습니다.
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 ( |
필드 | |
---|---|
displayName |
필수 항목입니다. 이 작업 프로젝트의 기본 표시 이름 (사용 가능한 번역이 없는 경우) |
pronunciation |
필수 항목입니다. 음성 (음성) 컨텍스트 내에서 호출하기 위한 표시 이름의 발음입니다. |
shortDescription |
필수 항목입니다. 작업 프로젝트에 대한 간단한 기본 설명입니다 (사용 가능한 번역이 없는 경우). 글자 수가 80자(영문 기준)로 제한됩니다. |
fullDescription |
필수 항목입니다. 작업 프로젝트의 기본 상세 설명입니다 (사용 가능한 번역이 없는 경우). 글자 수가 4,000자(영문 기준)로 제한됩니다. |
smallLogoImage |
필수 항목입니다. 작은 정사각형 이미지, 192x192픽셀 이는 |
largeBannerImage |
선택사항입니다. 큰 가로 모드 이미지(1920x1080px) 이는 |
developerName |
필수 항목입니다. 사용자에게 표시될 개발자의 이름입니다. |
developerEmail |
필수 항목입니다. 개발자의 연락처 이메일 주소입니다. |
termsOfServiceUrl |
선택사항입니다. 서비스 약관 URL입니다. |
voice |
필수 항목입니다. 사용자가 작업과 상호작용할 때 들리는 Google 어시스턴트 음성 유형입니다. 지원되는 값은 'male_1', 'male_2', 'female_1', 'female_2'입니다. |
voiceLocale |
선택사항입니다. 지정된 음성의 언어입니다. 지정하지 않으면 사용자의 어시스턴트 언어로 확인됩니다. 지정된 경우 음성 로캘의 루트 언어는 LocalizedSettings에 지정된 언어와 동일해야 합니다. |
privacyPolicyUrl |
필수 항목입니다. 개인정보처리방침 URL입니다. |
sampleInvocations[] |
선택사항입니다. 어시스턴트 디렉터리에서 작업 프로젝트 설명의 일부로 표시되는 샘플 호출 구문입니다. 이렇게 하면 사용자가 사용 방법을 익히는 데 도움이 됩니다. |
themeCustomization |
선택사항입니다. 작업의 시각적 구성요소에 대한 테마 맞춤설정 |
ThemeCustomization
사용자에게 표시되는 카드에 적용되는 스타일
JSON 표현 | |
---|---|
{
"backgroundColor": string,
"primaryColor": string,
"fontFamily": string,
"imageCornerStyle": enum ( |
필드 | |
---|---|
backgroundColor |
카드의 배경 색상입니다. 개발자가 |
primaryColor |
작업의 기본 테마 색상은 Actions on Google 카드의 제목 텍스트 색상, 작업 항목 배경 색상을 설정하는 데 사용됩니다. 사용 예시: #FAFAFA |
fontFamily |
카드 제목에 사용될 글꼴 모음입니다. 지원되는 글꼴: - Sans Serif - Sans Serif 중간 - Sans Serif 굵게 - Sans Serif 검은색 - Sans Serif 응축된 중간 - Sans Serif 압축 중간 - Serif - Serif 굵게 - 고정 너비 - Cursive - Sans Serif |
imageCornerStyle |
카드 전경 이미지의 테두리 스타일 예를 들어 기본 카드 또는 캐러셀 카드의 전경 이미지에 적용할 수 있습니다. |
landscapeBackgroundImage |
가로 모드 (최소 1920x1200픽셀). 이는 |
portraitBackgroundImage |
세로 모드 (최소 1200x1920픽셀) 이는 |
ImageCornerStyle
이미지의 테두리를 렌더링하는 방법을 설명합니다.
열거형 | |
---|---|
IMAGE_CORNER_STYLE_UNSPECIFIED |
정의되지 않음 / 지정되지 않음. |
CURVED |
이미지의 둥근 모서리 |
ANGLED |
이미지의 직사각형 모서리 |
AccountLinking
AccountLinking을 사용하면 Google에서 사용자가 앱의 웹 서비스에 로그인하도록 안내할 수 있습니다.
Google 로그인 및 OAuth + Google 로그인 연결 유형의 경우, Google에서 앱을 식별하는 클라이언트 ID(콘솔 UI에서 'Google이 작업에 대해 발급한 클라이언트 ID')를 생성합니다. 이 입력란은 읽기 전용이며 Console UI의 계정 연결 페이지로 이동하여 확인할 수 있습니다. https://developers.google.com/assistant/identity/google-sign-in을 참고하세요.
참고: 모든 계정 연결 설정 유형 (Google 로그인 제외)의 경우 검토팀에서 앱을 검토할 수 있도록 Settings.testing_instructions에서 테스트 계정의 사용자 이름과 비밀번호를 제공해야 합니다 (사용자에게는 표시되지 않음).
JSON 표현 | |
---|---|
{ "enableAccountCreation": boolean, "linkingType": enum ( |
필드 | |
---|---|
enableAccountCreation |
필수 항목입니다. |
linkingType |
필수 항목입니다. 사용할 연결 유형입니다. 연결 유형에 관한 자세한 내용은 https://developers.google.com/assistant/identity를 참고하세요. |
authGrantType |
선택사항입니다. OAUTH linksType의 인증 유형을 나타냅니다. |
appClientId |
선택사항입니다. 앱에서 Google에 발급한 클라이언트 ID입니다. 이 ID는 서비스에 대한 Google을 식별하는 OAuth2 클라이언트 ID입니다. OAuth를 사용할 때만 설정됩니다. |
authorizationUrl |
선택사항입니다. OAuth2 코드 또는 암시적 흐름을 지원하는 로그인 웹페이지의 엔드포인트입니다. URL은 HTTPS를 사용해야 합니다. OAuth를 사용할 때만 설정됩니다. |
tokenUrl |
선택사항입니다. 토큰 교환용 OAuth2 엔드포인트 URL은 HTTPS를 사용해야 합니다. 연결 유형으로 IMPLICIT 권한 부여와 함께 OAuth만 사용하는 경우에는 설정되지 않습니다. OAuth를 사용할 때만 설정됩니다. |
scopes[] |
선택사항입니다. 사용자가 서비스를 사용하기 위해 동의해야 하는 권한 목록입니다. OAuth를 사용할 때만 설정됩니다. 이 필드를 지정하는 경우 LocalizedSettings.terms_of_service_url 섹션의 디렉터리 정보에 서비스 약관을 제공해야 합니다. |
learnMoreUrl |
선택사항입니다. 서비스의 웹페이지로, 사용자가 Google에 부여하는 권한을 설명합니다. OAuth 및 Google 로그인을 사용하는 경우에만 설정됩니다. 이 필드를 지정하는 경우 LocalizedSettings.terms_of_service_url 섹션의 디렉터리 정보에 서비스 약관을 제공해야 합니다. |
useBasicAuthHeader |
선택사항입니다. true인 경우 Google이 HTTP 기본 인증 헤더를 통해 클라이언트 ID와 비밀번호를 전송하도록 허용합니다. 그렇지 않으면 Google은 게시물 본문 내의 클라이언트 ID와 보안 비밀번호를 사용합니다. OAuth를 사용할 때만 설정됩니다. 이 필드를 지정하는 경우 LocalizedSettings.terms_of_service_url 섹션의 디렉터리 정보에 서비스 약관을 제공해야 합니다. |
LinkingType
수행할 계정 연결 유형입니다.
열거형 | |
---|---|
LINKING_TYPE_UNSPECIFIED |
지정되지 않았습니다. |
GOOGLE_SIGN_IN |
Google 로그인 연결 유형입니다. 이 연결 유형을 사용하는 경우 아래에 OAuth 관련 입력란을 설정하지 않아도 됩니다. |
OAUTH_AND_GOOGLE_SIGN_IN |
OAuth 및 Google 로그인 연결 유형입니다. |
OAUTH |
OAuth 연결 유형입니다. |
AuthGrantType
Google에서 사용자가 앱의 웹 서비스에 로그인하도록 안내하는 데 사용하는 OAuth2 권한 유형입니다.
열거형 | |
---|---|
AUTH_GRANT_TYPE_UNSPECIFIED |
지정되지 않았습니다. |
AUTH_CODE |
승인 코드 부여 인증 URL과 액세스 토큰 URL을 모두 제공해야 합니다. |
IMPLICIT |
암시적 코드 부여 인증 URL만 제공하면 됩니다. |
웹훅
다양한 유형의 웹훅에 대한 메타데이터입니다. inlineCloudFunction
를 사용하는 경우 소스 코드가 executeFunction
키 값과 같은 이름의 디렉터리에 있어야 합니다. 예를 들어 executeFunction
키의 my_webhook
값은 다음과 같은 코드 구조를 갖습니다. - /webhooks/my_webhook.yaml
- /webhooks/my_webhook/index.js
- /webhooks/my_webhook/package.json
JSON 표현 | |
---|---|
{ "handlers": [ { object ( |
필드 | ||
---|---|---|
handlers[] |
이 웹훅의 핸들러 목록입니다. |
|
통합 필드 webhook_type . 하나의 웹훅 유형만 지원됩니다. webhook_type 은 다음 중 하나여야 합니다. |
||
httpsEndpoint |
커스텀 웹훅 HTTPS 엔드포인트입니다. |
|
inlineCloudFunction |
웹훅 폴더의 코드에서 배포된 Cloud 함수의 메타데이터입니다. |
Handler
webhoook 핸들러의 이름을 선언합니다. 웹훅에는 여러 핸들러가 등록될 수 있습니다. 이러한 핸들러는 작업 프로젝트의 여러 위치에서 호출할 수 있습니다.
JSON 표현 | |
---|---|
{ "name": string } |
필드 | |
---|---|
name |
필수 항목입니다. 핸들러의 이름입니다. 작업 프로젝트의 모든 핸들러에서 고유해야 합니다. 이 핸들러의 이름을 확인하여 fulfillment 소스 코드에서 올바른 함수를 호출할 수 있습니다. |
HttpsEndpoint
인라인 편집기를 사용하지 않을 경우 알리는 REST 엔드포인트.
JSON 표현 | |
---|---|
{ "baseUrl": string, "httpHeaders": { string: string, ... }, "endpointApiVersion": integer } |
필드 | |
---|---|
baseUrl |
처리 엔드포인트의 HTTPS 기본 URL입니다 (HTTP는 지원되지 않음). 핸들러 이름은 https://cloud.google.com/apis/design/custom_methods)의 스타일 가이드에 따라 콜론 뒤에 기본 URL 경로에 추가됩니다. 예: 'https://gactions.service.com/api'의 기본 URL URL이 'https://gactions.service.com/api:{method}'인 요청을 수신합니다. |
httpHeaders |
POST 요청에 포함될 HTTP 매개변수의 맵입니다.
|
endpointApiVersion |
엔드포인트에서 사용하는 프로토콜 버전입니다. 이는 모든 처리 유형에서 공유하는 프로토콜이며 Google 처리 유형에 국한되지 않습니다. |
InlineCloudFunction
웹훅 폴더에서 배포된 인라인 Cloud 함수의 메타데이터를 보유합니다.
JSON 표현 | |
---|---|
{ "executeFunction": string } |
필드 | |
---|---|
executeFunction |
Cloud 함수 진입점의 이름입니다. 이 필드의 값은 소스 코드에서 내보낸 메서드의 이름과 일치해야 합니다. |
인텐트
인텐트는 개방형 사용자 입력을 구조화된 객체에 매핑합니다. 음성 구문은 Google의 자연어 이해 (NLU)를 통해 인텐트에 매칭됩니다. 인텐트 일치는 대화 설계의 이벤트를 트리거하여 사용자의 대화를 진행할 수 있습니다. 인텐트 이름은 파일 이름에 지정됩니다.
JSON 표현 | |
---|---|
{
"parameters": [
{
object ( |
필드 | |
---|---|
parameters[] |
학습 문구 내의 매개변수 목록입니다. 모든 매개변수는 학습 문구에서 사용되도록 여기에 정의해야 합니다. |
trainingPhrases[] |
학습 문구를 사용하면 Google NLU에서 인텐트를 사용자 입력과 자동으로 일치시킬 수 있습니다. 고유한 구문을 많이 제공할수록 이 인텐트가 일치될 가능성이 높아집니다. 다음은 주석이 추가된 학습 문구 부분의 형식입니다. |
IntentParameter
학습 문구 내에서 사용할 수 있는 매개변수의 정의입니다.
JSON 표현 | |
---|---|
{ "name": string, // Union field |
필드 | ||
---|---|---|
name |
필수 항목입니다. 인텐트 매개변수의 고유 이름입니다. 조건 및 응답에서 $intent.params.[name].resolved와 함께 NLU에서 추출한 인텐트 매개변수를 참조하는 데 사용할 수 있습니다. |
|
통합 필드 parameter_type . 인텐트 매개변수의 유형입니다. parameter_type 은 다음 중 하나여야 합니다. |
||
type |
선택사항입니다. 이 매개변수의 데이터 유형을 선언합니다. 내장 인텐트에는 이를 설정하면 안 됩니다. |
|
entitySetReferences |
선택사항입니다. 이 인텐트 매개변수에 허용되는 항목 집합에 대한 참조입니다. 내장 인텐트의 매개변수에만 유효합니다. 이러한 참조는 'custom/entitySets'의 항목 세트를 가리킵니다. 디렉터리 |
ClassReference
필드 또는 반환 값의 유형을 선언하는 데 사용되는 클래스에 대한 참조입니다. enum은 ClassReference를 사용하여 참조할 수 있는 클래스의 한 유형이기도 합니다.
JSON 표현 | |
---|---|
{ "name": string, "list": boolean } |
필드 | |
---|---|
name |
필수 항목입니다. 매개변수의 기본 제공 유형 또는 맞춤 유형 이름. 예: |
list |
선택사항입니다. 데이터 유형이 값 목록을 나타내는지 여부를 나타냅니다. |
EntitySetReferences
인텐트 매개변수의 항목 세트 참조
JSON 표현 | |
---|---|
{
"entitySetReferences": [
{
object ( |
필드 | |
---|---|
entitySetReferences[] |
필수 항목입니다. 인텐트 매개변수의 항목 세트 참조 |
EntitySetReference
이 인텐트 매개변수에 허용되는 항목 집합에 대한 참조입니다.
JSON 표현 | |
---|---|
{ "entitySet": string } |
필드 | |
---|---|
entitySet |
필수 항목입니다. 지정된 매개변수에 대해 고려할 특정 항목 컬렉션을 식별합니다. 해당하는 항목 세트 정의가 custom/entitySets/ 디렉터리에 있어야 합니다. |
유형
기본 제공 유형이 아닌 맞춤 유형 선언 유형은 장면의 슬롯이나 인텐트의 학습 문구 매개변수에 할당할 수 있습니다. 실제로 유형은 enum으로 생각할 수 있습니다. 유형 이름은 파일 이름에 지정됩니다.
JSON 표현 | |
---|---|
{ "exclusions": [ string ], // Union field |
필드 | ||
---|---|---|
exclusions[] |
유형별로 일치해서는 안 되는 예외적인 단어/구문 모음입니다. 참고: 단어/구문이 유형에 의해 일치하지만 제외로 나열된 경우에는 매개변수 추출 결과에 반환되지 않습니다. 이 필드는 현지화할 수 있습니다. |
|
통합 필드 sub_type . 수행할 일치 유형에 따른 하위 유형 선택 sub_type 은 다음 중 하나여야 합니다. |
||
synonym |
동의어 유형이며 기본적으로 enum입니다. |
|
regularExpression |
정규식 유형으로, 정규 표현식 일치가 허용됩니다. |
|
freeText |
FreeText 유형입니다. |
SynonymType
동의어 집합으로 텍스트와 일치하는 유형입니다.
JSON 표현 | |
---|---|
{ "matchType": enum ( |
필드 | |
---|---|
matchType |
선택사항입니다. 동의어의 일치 유형입니다. |
acceptUnknownValues |
선택사항입니다. true로 설정하면 주변 입력 및 인텐트 학습 데이터(예: 식료품 목록에 추가될 수 있는 상품)를 기반으로 알 수 없는 단어나 구문과 일치합니다. |
entities |
필수 항목입니다. 동의어 항목의 이름이 지정된 맵입니다.
|
MatchType
이 유형의 항목이 사용할 일치 유형입니다. 이렇게 하면 모든 유형이 동일한 일치 방법을 사용하고 동의어 일치를 위한 일치 방법을 변형할 수 있습니다 (즉, 퍼지 일치와 일치). 값이 UNSPECIFIED
이면 기본값은 EXACT_MATCH
입니다.
열거형 | |
---|---|
UNSPECIFIED |
기본값은 EXACT_MATCH 입니다. |
EXACT_MATCH |
동의어 또는 이름과 정확히 일치하는 항목을 찾습니다. |
FUZZY_MATCH |
EXACT_MATCH 보다 느립니다. 정확한 일치뿐만 아니라 유사한 일치도 찾습니다. |
항목
유형 내부의 단일 항목의 세부정보를 포함하는 동의어 엔티티 필드를 나타냅니다.
JSON 표현 | |
---|---|
{
"display": {
object ( |
필드 | |
---|---|
display |
선택사항입니다. 항목 표시 세부정보입니다. |
synonyms[] |
선택사항입니다. 항목의 동의어 목록입니다. 이 필드는 현지화할 수 있습니다. |
EntityDisplay
쿼리에서 특정 유형의 항목이 추출되면 캔버스에 표시될 요소입니다. 캔버스 지원 앱에만 해당됩니다. 이 메시지는 현지화할 수 있습니다.
JSON 표현 | |
---|---|
{ "iconTitle": string, "iconUrl": string } |
필드 | |
---|---|
iconTitle |
선택사항입니다. 아이콘의 제목입니다. |
iconUrl |
필수 항목입니다. 아이콘의 URL입니다. |
RegularExpressionType
정규 표현식으로 텍스트를 검색하는 유형입니다. 이 메시지는 현지화할 수 있습니다.
JSON 표현 | |
---|---|
{
"entities": {
string: {
object ( |
필드 | |
---|---|
entities |
필수 항목입니다. 각각 정규식 문자열을 포함하는 항목의 이름이 지정된 맵입니다.
|
항목
비교에 사용되는 정규 표현식이 포함된 항목 객체를 나타냅니다.
JSON 표현 | |
---|---|
{
"display": {
object ( |
필드 | |
---|---|
display |
선택사항입니다. 쿼리에서 항목이 추출되면 캔버스에 표시될 요소입니다. 캔버스 지원 앱에만 해당됩니다. |
regularExpressions[] |
필수 항목입니다. RE2 정규식 구문 사용 (자세한 내용은 https://github.com/google/re2/wiki/Syntax 참고) |
FreeTextType
주변 단어 컨텍스트가 제공된 학습 예제와 가까우면 모든 텍스트와 일치하는 유형입니다.
JSON 표현 | |
---|---|
{
"display": {
object ( |
필드 | |
---|---|
display |
선택사항입니다. 쿼리에서 항목이 추출되면 캔버스에 표시될 요소입니다. 캔버스 지원 앱에만 해당됩니다. |
EntitySet
항목 세트는 내장 인텐트 매개변수의 값을 가져올 수 있는 사전 정의된 항목 세트를 설명합니다. 항목 세트는 내장 인텐트 매개변수의 entrySet에서 참조할 수 있습니다.
JSON 표현 | |
---|---|
{
"entities": [
{
object ( |
필드 | |
---|---|
entities[] |
필수 항목입니다. 이 항목 세트가 지원하는 항목의 목록입니다. |
항목
내장 인텐트 매개변수 값을 가져올 수 있는 항목입니다.
JSON 표현 | |
---|---|
{ "id": string } |
필드 | |
---|---|
id |
필수 항목입니다. 항목의 ID입니다. 내장 인텐트 매개변수와 이러한 항목에서 지원되는 항목의 목록은 https://developers.google.com/assistant/conversational/build/built-in-intents를 참고하세요. |
GlobalIntentEvent
전역 인텐트 핸들러를 정의합니다. 전역 인텐트 이벤트는 전체 작업 프로젝트로 범위가 지정되며 장면의 인텐트 핸들러에 의해 재정의될 수 있습니다. 인텐트 이름은 작업 프로젝트 내에서 고유해야 합니다.
전역 인텐트는 세션 중에 언제든지 일치될 수 있으므로 사용자는 '도움 받기'와 같은 일반적인 흐름에 액세스할 수 있습니다. 또는 '홈으로 돌아가기'가 됩니다. 또한 사용자가 작업을 호출할 때 특정 흐름으로 딥 링크를 설정할 수도 있습니다.
인텐트 이름은 파일 이름에 지정됩니다.
JSON 표현 | |
---|---|
{
"transitionToScene": string,
"handler": {
object ( |
필드 | |
---|---|
transitionToScene |
선택사항입니다. 대화가 이동해야 할 대상 장면입니다. 전환 시 현재 장면의 상태가 소멸됩니다. |
handler |
선택사항입니다. 인텐트가 일치될 때 트리거되는 이벤트 핸들러입니다. 대상 장면으로 전환하기 전에 실행해야 합니다. 이벤트에 대한 응답으로 프롬프트를 생성하는 데 유용합니다. |
EventHandler
이벤트 후에 실행될 핸들러를 정의합니다. 이벤트의 예로는 장면의 인텐트 및 조건 기반 이벤트가 있습니다.
JSON 표현 | |
---|---|
{ "webhookHandler": string, // Union field |
필드 | ||
---|---|---|
webhookHandler |
호출할 웹훅 핸들러의 이름입니다. |
|
통합 필드 prompt . 프롬프트는 인라인 처리하거나 이름으로 참조할 수 있습니다. prompt 은 다음 중 하나여야 합니다. |
||
staticPrompt |
인라인 정적 프롬프트. 번들의 문자열 리소스에 대한 참조를 포함할 수 있습니다. |
|
staticPromptName |
호출할 정적 프롬프트의 이름입니다. |
StaticPrompt
프롬프트 후보 목록을 나타냅니다. 그중 하나는 사용자에게 대답할 때 표시할 프롬프트로 선택됩니다. 이 메시지는 현지화할 수 있습니다.
JSON 표현 | |
---|---|
{
"candidates": [
{
object ( |
필드 | |
---|---|
candidates[] |
클라이언트에 전송할 후보 프롬프트의 목록입니다. 각 프롬프트에는 사용 시기를 결정하는 선택기가 있습니다. 요청과 일치하는 첫 번째 선택자가 전송되며 나머지는 무시됩니다. |
StaticPromptCandidate
정적 프롬프트 후보를 나타냅니다.
JSON 표현 | |
---|---|
{ "selector": { object ( |
필드 | |
---|---|
selector |
선택사항입니다. 이 프롬프트가 요청과 일치하는지 여부에 대한 기준입니다. 선택기가 비어 있으면 이 메시지가 항상 트리거됩니다. |
promptResponse |
선택자와 관련된 프롬프트 응답입니다. |
선택기
프롬프트가 요청과 일치하는지 여부에 대한 기준을 정의합니다.
JSON 표현 | |
---|---|
{
"surfaceCapabilities": {
object ( |
필드 | |
---|---|
surfaceCapabilities |
필수 노출 영역 기능 집합입니다. |
SurfaceCapabilities
사용자가 작업을 요청하는 데 사용하는 노출 영역을 나타냅니다.
JSON 표현 | |
---|---|
{
"capabilities": [
enum ( |
필드 | |
---|---|
capabilities[] |
필수 항목입니다. 작업에 대한 요청을 실행하는 노출 영역의 기능입니다. |
역량
요청 시 기기 노출 영역에서 지원하는 기능입니다.
열거형 | |
---|---|
UNSPECIFIED |
지정되지 않은 노출 영역 기능. |
SPEECH |
기기는 텍스트 음성 변환 또는 SSML을 통해 사용자와 대화할 수 있습니다. |
RICH_RESPONSE |
기기에서 카드, 목록, 표 등 다양한 응답을 표시할 수 있습니다. |
LONG_FORM_AUDIO |
기기에서 음악 및 팟캐스트와 같은 긴 형식의 오디오 미디어를 재생할 수 있습니다. |
INTERACTIVE_CANVAS |
기기가 대화형 캔버스 응답을 표시할 수 있습니다. |
WEB_LINK |
기기에서 리치 응답으로 웹 링크를 사용하여 웹브라우저를 열 수 있습니다. |
HOME_STORAGE |
기기에서 홈 스토리지 저장 및 가져오기를 지원할 수 있습니다. |
StaticPromptResponse
텍스트, 음성, 카드, 캔버스 데이터, 제안 칩 등과 같이 사용자에게 보낼 구조화된 응답을 나타냅니다.
JSON 표현 | |
---|---|
{ "firstSimple": { object ( |
필드 | |
---|---|
firstSimple |
선택사항입니다. 첫 번째 음성 및 텍스트 전용 응답입니다. |
content |
선택사항입니다. 사용자에게 표시할 카드, 목록, 미디어와 같은 콘텐츠입니다. |
lastSimple |
선택사항입니다. 마지막 음성 및 텍스트 전용 응답입니다. |
suggestions[] |
선택사항입니다. 사용자에게 표시할 제안으로, 대답의 마지막 부분에 항상 표시됩니다. 포함하는 프롬프트의 |
link |
선택사항입니다. 연결된 앱 또는 사이트로 연결할 수 있는 추가적인 추천 칩 칩이 '열기 |
override |
선택사항입니다. 이 메시지가 이전에 정의된 메시지와 병합되는 방식을 위한 모드입니다. |
canvas |
대화형 캔버스 환경에 사용할 응답입니다. |
StaticSimplePrompt
사용자에게 보낼 간단한 프롬프트를 나타냅니다.
JSON 표현 | |
---|---|
{
"variants": [
{
object ( |
필드 | |
---|---|
variants[] |
가능한 변형 목록입니다. |
변형
간단한 프롬프트의 일부인 변형을 나타냅니다.
JSON 표현 | |
---|---|
{ "speech": string, "text": string } |
필드 | |
---|---|
speech |
선택사항입니다. 사용자에게 말할 음성을 나타냅니다. SSML 또는 TTS(텍스트 음성 변환)일 수 있습니다. 기본적으로 음성은 이전 단순 프롬프트의 음성에 추가됩니다. 포함하는 프롬프트의 |
text |
선택사항입니다. 채팅 풍선에 표시할 텍스트입니다. 지정하지 않으면 위 음성 필드의 디스플레이 렌더링이 사용됩니다. 영문 기준 640자로 제한됩니다. 기본적으로 텍스트는 이전 단순 프롬프트의 텍스트에 추가됩니다. 포함하는 프롬프트의 |
StaticContentPrompt
StaticPrompt의 콘텐츠 부분 자리표시자입니다.
JSON 표현 | |
---|---|
{ // Union field |
필드 | ||
---|---|---|
통합 필드 content . 프롬프트에는 한 가지 유형의 콘텐츠만 표시할 수 있습니다. content 은 다음 중 하나여야 합니다. |
||
card |
기본 카드입니다. |
|
image |
이미지입니다. |
|
table |
표 카드입니다. |
|
media |
재생할 미디어 세트를 나타내는 응답입니다. |
|
list |
선택할 옵션 목록을 표시하는 카드입니다. |
|
collection |
선택할 수 있는 옵션 목록이 표시된 카드입니다. |
|
collectionBrowse |
열려는 웹페이지 모음을 표시하는 카드입니다. |
StaticCardPrompt
일부 정보를 표시하기 위한 기본 카드입니다. 예: 이미지 및/또는 텍스트입니다.
JSON 표현 | |
---|---|
{ "title": string, "subtitle": string, "text": string, "image": { object ( |
필드 | |
---|---|
title |
선택사항입니다. 카드의 전체 제목입니다. |
subtitle |
선택사항입니다. 카드 부제목입니다. |
text |
필수 항목입니다. 이미지가 없는 경우 필요한 카드의 본문 텍스트입니다. 서식 지정을 위한 제한된 마크다운 구문 세트를 지원합니다. |
image |
선택사항입니다. 카드의 히어로 이미지입니다. 높이는 192dp로 고정됩니다. |
imageFill |
선택사항입니다. 이미지 배경이 채워지는 방식입니다. |
button |
선택사항입니다. 카드에 표시할 클릭 가능한 버튼입니다. |
StaticImagePrompt
카드에 표시되는 이미지입니다.
JSON 표현 | |
---|---|
{ "url": string, "alt": string, "height": integer, "width": integer } |
필드 | |
---|---|
url |
필수 항목입니다. 이미지의 소스 URL입니다. 이미지는 JPG, PNG, GIF (애니메이션 및 정지)를 사용할 수 있습니다. 예를 들면 |
alt |
필수 항목입니다. 접근성을 위해 사용되는 이미지의 텍스트 설명입니다. 예: 스크린 리더 |
height |
선택사항입니다. 이미지 높이(픽셀 단위)입니다. |
width |
선택사항입니다. 이미지 너비(픽셀 단위)입니다. |
ImageFill
이미지의 표시에 영향을 줄 수 있는 이미지 표시 옵션입니다. 이미지의 가로세로 비율이 이미지 컨테이너의 가로세로 비율과 일치하지 않는 경우에 사용해야 합니다.
열거형 | |
---|---|
UNSPECIFIED |
ImageFill이 지정되지 않았습니다. |
GRAY |
이미지와 이미지 컨테이너 사이의 간격을 회색 막대로 채웁니다. |
WHITE |
이미지와 이미지 컨테이너 사이의 간격을 흰색 막대로 채웁니다. |
CROPPED |
이미지의 너비와 높이가 컨테이너 크기와 일치하거나 이를 초과하도록 이미지가 조정됩니다. 이렇게 하면 조정된 이미지 높이가 컨테이너 높이보다 크면 이미지의 상단과 하단이 잘리고, 조정된 이미지의 너비가 컨테이너 너비보다 크면 이미지의 왼쪽과 오른쪽이 잘릴 수 있습니다. 이는 '확대/축소 모드'와 유사합니다. 4:3 동영상을 재생할 때 와이드스크린 TV에서 재생됩니다. |
StaticLinkPrompt
추천 검색어 칩으로 표시되고 사용자가 열 수 있는 링크를 정의합니다.
JSON 표현 | |
---|---|
{
"name": string,
"open": {
object ( |
필드 | |
---|---|
name |
링크 이름 |
open |
사용자가 링크를 열 때의 동작을 정의합니다. |
OpenUrl
사용자가 링크를 열 때의 동작을 정의합니다.
JSON 표현 | |
---|---|
{
"url": string,
"hint": enum ( |
필드 | |
---|---|
url |
URL 필드: 다음 중 하나가 될 수 있음: - 앱에 연결된 앱 또는 웹페이지를 열기 위한 http/https URL |
hint |
URL 유형에 대한 힌트를 나타냅니다. |
UrlHint
다양한 유형의 URL 힌트
열거형 | |
---|---|
HINT_UNSPECIFIED |
미지정 |
AMP |
AMP 콘텐츠로 직접 연결되는 URL 또는 <link rel="amphtml"> 를 통해 AMP 콘텐츠를 참조하는 표준 URL입니다. |
StaticTablePrompt
텍스트 표를 표시하는 표 카드입니다.
JSON 표현 | |
---|---|
{ "title": string, "subtitle": string, "image": { object ( |
필드 | |
---|---|
title |
선택사항입니다. 테이블의 전체 제목입니다. 부제목이 설정된 경우 설정해야 합니다. |
subtitle |
선택사항입니다. 표의 부제목입니다. |
image |
선택사항입니다. 테이블과 연결된 이미지입니다. |
columns[] |
선택사항입니다. 열 헤더 및 정렬 |
rows[] |
선택사항입니다. 테이블의 행 데이터입니다. 처음 3개 행은 항상 표시되지만 특정 표면에서는 다른 행이 잘릴 수 있습니다. 시뮬레이터로 테스트하여 지정된 표면에 어떤 행이 표시될지 확인하세요. |
button |
선택사항입니다. 버튼 |
TableColumn
테이블의 열을 설명합니다.
JSON 표현 | |
---|---|
{
"header": string,
"align": enum ( |
필드 | |
---|---|
header |
열의 헤더 텍스트입니다. |
align |
콘텐츠 열의 가로 정렬 지정하지 않으면 콘텐츠가 맨 앞 가장자리에 정렬됩니다. |
HorizontalAlignment
셀 내 콘텐츠의 정렬입니다.
열거형 | |
---|---|
UNSPECIFIED |
HorizontalAlignment가 지정되지 않았습니다. |
LEADING |
셀의 선행 가장자리입니다. 이는 기본값입니다. |
CENTER |
콘텐츠가 열 중앙에 정렬됩니다. |
TRAILING |
콘텐츠는 열의 후행 가장자리에 맞춰 정렬됩니다. |
TableRow
테이블의 행을 설명합니다.
JSON 표현 | |
---|---|
{
"cells": [
{
object ( |
필드 | |
---|---|
cells[] |
이 행의 셀입니다. 처음 3개의 셀은 표시가 보장되지만 특정 표면에서 다른 셀이 잘릴 수 있습니다. 시뮬레이터로 테스트하여 지정된 표면에 어떤 셀을 표시할지 확인하세요. |
divider |
각 행 뒤에 구분선이 있어야 하는지 여부를 나타냅니다. |
TableCell
행의 셀을 설명합니다.
JSON 표현 | |
---|---|
{ "text": string } |
필드 | |
---|---|
text |
셀의 텍스트 콘텐츠입니다. |
StaticMediaPrompt
이름, 설명, URL 등과 같은 미디어 정보를 포함합니다. 다음 ID: 11
JSON 표현 | |
---|---|
{ "mediaType": enum ( |
필드 | |
---|---|
mediaType |
이 응답의 미디어 유형입니다. |
startOffset |
첫 번째 미디어 객체의 시작 오프셋입니다. 초 단위 기간으로, 소수점 아래 9자리까지 지정 가능하며 ' |
optionalMediaControls[] |
이 미디어 응답 세션에서 지원할 수 있는 미디어 컨트롤 유형입니다(선택사항). 설정된 경우 특정 미디어 이벤트가 발생할 때 서드 파티로 요청이 이루어집니다. 설정하지 않으면 3p가 두 가지 기본 컨트롤 유형인 FINISHED와 FAILED를 처리해야 합니다. |
mediaObjects[] |
미디어 객체 목록입니다. |
repeatMode |
미디어 객체 목록의 반복 모드입니다. |
MediaType
이 응답의 미디어 유형입니다.
열거형 | |
---|---|
MEDIA_TYPE_UNSPECIFIED |
지정되지 않은 값 |
AUDIO |
오디오 파일입니다. |
MEDIA_STATUS_ACK |
미디어 상태 보고서 확인에 대한 응답입니다. |
OptionalMediaControls
미디어 응답이 선택적으로 지원할 수 있는 미디어 컨트롤 유형
열거형 | |
---|---|
OPTIONAL_MEDIA_CONTROLS_UNSPECIFIED |
지정되지 않은 값 |
PAUSED |
이벤트가 일시중지되었습니다. 사용자가 미디어를 일시중지할 때 트리거됩니다. |
STOPPED |
일정을 중지했습니다. 사용자가 미디어 재생 중에 서드 파티 세션을 종료할 때 트리거됩니다. |
MediaObject
단일 미디어 객체를 나타냅니다.
JSON 표현 | |
---|---|
{
"name": string,
"description": string,
"url": string,
"image": {
object ( |
필드 | |
---|---|
name |
이 미디어 객체의 이름입니다. |
description |
이 미디어 객체에 대한 설명입니다. |
url |
미디어 콘텐츠를 가리키는 URL입니다. |
image |
미디어 카드와 함께 표시할 이미지입니다. |
MediaImage
MediaPrompt 내에 표시할 이미지입니다.
JSON 표현 | |
---|---|
{ // Union field |
필드 | ||
---|---|---|
통합 필드 image . 한 가지 유형의 MediaImage만 허용됩니다. image 은 다음 중 하나여야 합니다. |
||
large |
앨범 표지와 같은 큰 이미지 |
|
icon |
제목 오른쪽에 표시된 작은 이미지 아이콘 36x36dp로 크기가 조정됩니다. |
RepeatMode
미디어 객체 목록의 반복 모드 유형입니다.
열거형 | |
---|---|
REPEAT_MODE_UNSPECIFIED |
OFF와 같습니다. |
OFF |
마지막 미디어 객체의 끝에서 미디어 세션을 종료합니다. |
ALL |
마지막 미디어 객체의 끝에 도달하면 첫 번째 미디어 객체의 시작으로 연속 재생합니다. |
StaticListPrompt
선택할 옵션 목록을 표시하는 카드입니다.
JSON 표현 | |
---|---|
{
"title": string,
"subtitle": string,
"items": [
{
object ( |
필드 | |
---|---|
title |
선택사항입니다. 목록의 제목입니다. |
subtitle |
선택사항입니다. 목록의 부제목입니다. |
items[] |
필수 항목입니다. 목록 항목입니다. |
ListItem
목록의 항목입니다.
JSON 표현 | |
---|---|
{
"key": string,
"title": string,
"description": string,
"image": {
object ( |
필드 | |
---|---|
key |
필수 항목입니다. 연결된 유형의 항목 키 이름과 일치하는 NLU 키입니다. 항목을 탭하면 이 키가 선택 옵션 매개변수로 다시 게시됩니다. |
title |
필수 항목입니다. 상품의 제목입니다. 이 텍스트를 탭하면 사용자가 입력한 것처럼 대화에 그대로 다시 게시됩니다. 각 제목은 항목 세트 내에서 고유해야 합니다. |
description |
선택사항입니다. 항목의 본문 텍스트입니다. |
image |
선택사항입니다. 항목 이미지입니다. |
StaticCollectionPrompt
선택할 옵션 모음을 표시하는 카드입니다.
JSON 표현 | |
---|---|
{ "title": string, "subtitle": string, "items": [ { object ( |
필드 | |
---|---|
title |
선택사항입니다. 컬렉션의 제목입니다. |
subtitle |
선택사항입니다. 컬렉션의 부제목입니다. |
items[] |
필수 항목입니다. 컬렉션 항목 |
imageFill |
선택사항입니다. 이미지 표시 옵션의 유형입니다. |
CollectionItem
컬렉션의 항목입니다.
JSON 표현 | |
---|---|
{
"key": string,
"title": string,
"description": string,
"image": {
object ( |
필드 | |
---|---|
key |
필수 항목입니다. 연결된 Type의 항목 키 이름과 일치하는 NLU 키입니다. 항목을 탭하면 이 키가 선택 옵션 매개변수로 다시 게시됩니다. |
title |
필수 항목입니다. 상품의 제목입니다. 이 텍스트를 탭하면 사용자가 입력한 것처럼 대화에 그대로 다시 게시됩니다. 각 제목은 항목 세트 내에서 고유해야 합니다. |
description |
선택사항입니다. 항목의 본문 텍스트입니다. |
image |
선택사항입니다. 항목 이미지입니다. |
StaticCollectionBrowsePrompt
웹 문서 집합을 큰 타일 항목의 모음으로 표시합니다. 항목을 선택하여 웹 뷰어에서 연결된 웹 문서를 시작할 수 있습니다.
JSON 표현 | |
---|---|
{ "items": [ { object ( |
필드 | |
---|---|
items[] |
탐색 컬렉션의 항목입니다. 목록 크기는 [2, 10] 범위 내에 있어야 합니다. |
imageFill |
컬렉션의 이미지에 대한 이미지 표시 옵션입니다. |
CollectionBrowseItem
컬렉션의 항목입니다.
JSON 표현 | |
---|---|
{ "title": string, "description": string, "footer": string, "image": { object ( |
필드 | |
---|---|
title |
필수 항목입니다. 컬렉션 항목의 제목입니다. |
description |
컬렉션 항목에 대한 설명입니다. |
footer |
컬렉션 항목의 바닥글 텍스트로, 설명 아래에 표시됩니다. 생략 부호로 잘린 텍스트 한 줄 |
image |
컬렉션 항목의 이미지입니다. |
openUriAction |
필수 항목입니다. 항목이 선택된 경우 열리는 URI입니다. |
추천
편의를 위해 사용자에게 표시되는 UI 요소인 추천 검색어 칩을 나타냅니다.
JSON 표현 | |
---|---|
{ "title": string } |
필드 | |
---|---|
title |
필수 항목입니다. 추천 검색어 칩에 표시되는 텍스트입니다. 이 텍스트를 탭하면 사용자가 입력한 것처럼 대화에 그대로 다시 게시됩니다. 각 제목은 추천 검색어 칩 세트 내에서 고유해야 합니다. 최대 25자(영문 기준) |
StaticCanvasPrompt
사용자에게 전송할 Interactive Canvas 응답을 나타냅니다. 이를 포함하는 프롬프트의 firstSimple
필드와 함께 사용하여 대화형 캔버스 응답을 표시하는 것 외에도 사용자에게 말할 수 있습니다.
JSON 표현 | |
---|---|
{ "url": string, "data": [ value ], "suppressMic": boolean, "sendStateDataToCanvasApp": boolean, "enableFullScreen": boolean } |
필드 | |
---|---|
url |
필수 항목입니다. 로드할 웹 뷰의 URL입니다. |
data[] |
선택사항입니다. 몰입형 환경 웹페이지에 이벤트로 전달되는 JSON 데이터입니다. 포함된 프롬프트의 |
suppressMic |
선택사항입니다. true 값은 이 몰입형 응답이 사용자에게 표시된 후 입력 캡처를 위해 마이크가 열리지 않음을 의미합니다. |
sendStateDataToCanvasApp |
선택사항입니다. |
enableFullScreen |
선택사항입니다. |
장면
장면은 대화를 설계할 때 제어 흐름의 기본 단위입니다. 다른 장면과 함께 연결하고, 최종 사용자를 위한 프롬프트를 생성하고, 슬롯을 정의할 수 있습니다. 장면 이름은 파일 이름에 지정됩니다.
JSON 표현 | |
---|---|
{ "onEnter": { object ( |
필드 | |
---|---|
onEnter |
이 장면으로 전환할 때 호출할 핸들러입니다. |
intentEvents[] |
인텐트를 기반으로 트리거되는 이벤트 목록입니다. 이러한 이벤트는 on_load 핸들러가 호출된 후 언제든지 트리거될 수 있습니다. 중요 - 이러한 이벤트는 이 장면으로 범위가 지정된 인텐트 집합을 정의하며 동일한 인텐트 또는 트리거 구문이 있는 전역적으로 정의된 이벤트보다 우선합니다. 인텐트 이름은 장면 내에서 고유해야 합니다. |
conditionalEvents[] |
조건문에 따라 트리거할 이벤트 목록입니다. 이는 양식이 채워진 후 또는 이 장면에 양식이 없는 경우 on_load 직후에 평가됩니다 (평가는 한 번만 실행됨). 첫 번째로 일치하는 이벤트만 트리거됩니다. |
slots[] |
순서가 지정된 슬롯 목록입니다. 각 슬롯은 확인할 데이터 유형을 정의하고 이 해결 방법의 환경을 맞춤설정하기 위해 구성합니다 (예: 프롬프트). |
onSlotUpdated |
다른 핸들러 내 업데이트로 인한 것이 아닌 슬롯 상태가 변경되면 호출되는 핸들러입니다. 이를 통해 슬롯이 무효화되거나 장면이 무효화되거나 장면 상태가 변경될 수 있습니다. |
IntentEvent
인텐트 일치의 결과로 트리거되는 이벤트를 등록합니다.
JSON 표현 | |
---|---|
{
"intent": string,
"transitionToScene": string,
"handler": {
object ( |
필드 | |
---|---|
intent |
필수 항목입니다. 이벤트를 트리거하는 인텐트 |
transitionToScene |
선택사항입니다. 대화가 이동해야 할 대상 장면입니다. 전환 시 현재 장면의 상태가 소멸됩니다. |
handler |
선택사항입니다. 인텐트가 일치될 때 트리거되는 이벤트 핸들러입니다. 대상 장면으로 전환하기 전에 실행해야 합니다. 이벤트에 대한 응답으로 프롬프트를 생성하는 데 유용합니다. |
ConditionalEvent
true 조건의 결과로 트리거되는 이벤트를 등록합니다.
JSON 표현 | |
---|---|
{
"condition": string,
"transitionToScene": string,
"handler": {
object ( |
필드 | |
---|---|
condition |
필수 항목입니다. 트리거할 이 이벤트의 필터 조건입니다. 조건이 true로 판정되면 연결된 |
transitionToScene |
선택사항입니다. 관련 조건이 true로 평가될 때 대화가 이동해야 하는 대상 장면입니다. 전환 시 현재 장면의 상태가 소멸됩니다. |
handler |
선택사항입니다. 연결된 조건이 |
슬롯
슬롯 구성입니다. 슬롯은 자연어 (즉, 인텐트 매개변수), 세션 매개변수, 기타 소스를 통해 채울 수 있는 데이터의 단일 단위입니다.
JSON 표현 | |
---|---|
{ "name": string, "type": { object ( |
필드 | |
---|---|
name |
필수 항목입니다. 슬롯의 이름입니다. |
type |
필수 항목입니다. 이 슬롯의 데이터 유형을 선언합니다. |
required |
선택사항입니다. 진행하기 전에 슬롯을 채워야 하는지 여부를 나타냅니다. 채워지지 않은 필수 슬롯은 사용자에게 맞춤설정 가능한 메시지를 트리거합니다. |
promptSettings |
선택사항입니다. 다양한 슬롯 채우기 단계에 관한 프롬프트를 등록합니다. |
commitBehavior |
선택사항입니다. 슬롯과 관련된 커밋 동작 |
config |
선택사항입니다. 슬롯을 채우는 데 사용되는 슬롯과 연결된 추가 구성입니다. 구성 형식은 슬롯 유형에 따라 다릅니다. 사용자 또는 세션 매개변수에 대한 리소스 참조를 이 구성에 추가할 수 있습니다. 이 구성은 트랜잭션 및 사용자 참여와 관련된 슬롯을 채우는 데 필요합니다. 예: actions.type.CompletePurchaseValue 유형의 슬롯의 경우 다음 구성은 클라이언트에서 정의한 세션 매개변수 { "@type": "type.googleapis.com/ google.actions.transactions.v3.CompletePurchaseValueSpec", "skuId": { "skuType": "SKU_TYPE_IN_APP", "id": "$session.params.userSelectedSkuId", "packageName": "com.example.company" } } |
defaultValue |
선택사항입니다. 이 슬롯의 기본값을 채우기 위한 구성입니다. |
PromptSettings
슬롯 프롬프트가 정의된 단일 위치입니다.
JSON 표현 | |
---|---|
{ "initialPrompt": { object ( |
필드 | |
---|---|
initialPrompt |
슬롯 값 자체를 묻는 메시지를 표시합니다. 예: "어떤 사이즈를 원하셨나요?" |
noMatchPrompt1 |
사용자의 입력이 슬롯의 예상 값 유형과 처음 일치하지 않는 경우 제공할 메시지 표시 예: '죄송합니다. 인식하지 못했습니다.' |
noMatchPrompt2 |
사용자 입력이 두 번째로 슬롯에 예상되는 값 유형과 일치하지 않는 경우 제공하라는 프롬프트입니다. 예: '죄송합니다. 인식하지 못했습니다.' |
noMatchFinalPrompt |
사용자의 입력이 마지막 슬롯의 예상 값 유형과 일치하지 않는 경우 제공할 메시지 표시 예: '죄송합니다. 인식하지 못했습니다.' |
noInputPrompt1 |
사용자가 처음으로 입력을 제공하지 않을 때 제공하는 메시지 예: '죄송합니다. 인식하지 못했습니다.' |
noInputPrompt2 |
사용자가 두 번째로 입력을 제공하지 않을 때 제공할 메시지 표시 예: '죄송합니다. 인식하지 못했습니다.' |
noInputFinalPrompt |
사용자가 마지막으로 입력을 제공하지 않은 경우 제공하는 프롬프트입니다. 예: '죄송합니다. 인식하지 못했습니다.' |
CommitBehavior
슬롯이 성공적으로 채워진 후 슬롯과 관련된 커밋 동작을 설명하는 메시지입니다.
JSON 표현 | |
---|---|
{ "writeSessionParam": string } |
필드 | |
---|---|
writeSessionParam |
슬롯 값이 채워진 후 값을 쓰는 세션 매개변수입니다. 중첩 경로는 현재 지원되지 않습니다. '$$' 슬롯 값을 슬롯과 이름이 같은 세션 매개변수에 쓰는 데 사용됩니다. 예: writeSessionParam = "fruit" '$session.params.fruit'에 해당합니다. writeSessionParam = "ticket" '$session.params.ticket'에 해당합니다. |
DefaultValue
이 슬롯의 기본값을 채우기 위한 구성입니다.
JSON 표현 | |
---|---|
{ "sessionParam": string, "constant": value } |
필드 | |
---|---|
sessionParam |
선택사항입니다. 값이 비어 있지 않은 경우 슬롯 값을 초기화하는 데 사용할 세션 매개변수입니다. 값 유형은 슬롯 유형과 일치해야 합니다. 중첩 경로는 현재 지원되지 않습니다. 예를 들어 |
constant |
선택사항입니다. 슬롯의 상수 기본값입니다. 이 슬롯의 값이 |
DataFiles
반복되는 데이터 파일의 래퍼입니다. 반복되는 필드는 한 곳에 존재할 수 없습니다.
JSON 표현 | |
---|---|
{
"dataFiles": [
{
object ( |
필드 | |
---|---|
dataFiles[] |
여러 데이터 파일입니다. |
DataFile
구조화되지 않은 데이터가 포함된 단일 파일을 나타냅니다. 예시로는 이미지 파일, 오디오 파일, Cloud 함수 소스 코드가 있습니다.
JSON 표현 | |
---|---|
{ "filePath": string, "contentType": string, "payload": string } |
필드 | |
---|---|
filePath |
SDK 파일 구조의 프로젝트 루트에 있는 데이터 파일의 상대 경로입니다. 허용되는 파일 경로: - 이미지: |
contentType |
필수 항목입니다. 이 저작물의 콘텐츠 유형입니다. 예: |
payload |
데이터 파일의 콘텐츠입니다. 이미지의 원시 바이트, 오디오 파일, Cloud 함수 ZIP 형식을 예로 들 수 있습니다. 페이로드 크기는 10MB로 엄격하게 제한됩니다. base64 인코딩 문자열입니다. |