View Template
뷰 템플릿(View Template)은 카카오 i 음성 답변 내용을 모바일, 월패드, TV 등과 같은 디스플레이 기기에 시각적으로 보여주는 화면입니다. 현재 View Template의 종류는 총 여덟 개이며, 이 중에서 해당 음성 답변에 맞는 최적의 View Template 유형을 선정하여 디스플레이 기기에 표시할 수 있습니다. 이때 디스플레이 기기 또는 플랫폼에 따라 View Template의 크기, 색상, 폰트 등의 스타일적인 차이는 발생할 수 있지만 화면에 표시되는 정보는 동일하게 구성됩니다.
안내
카카오 i에서는 필요한 정보를 화면에 보여주는 View를 View Template, Voice Agent, Player Template으로 분류하고 있습니다. 각 View에 대한 자세한 설명은 Kakao i View 문서를 참고하시기 바랍니다.
구성
View Template은 음성 답변에 따라 크게 단일형과 목록형 그리고 기타로 구성됩니다. 단일형은 텍스트와 이미지로 구성된 간단한 답변 화면이며, 목록형은 답변의 순서 또는 후보군이 있는 답변 화면입니다.
표View Template 구성구분 | 종류 | 속성 | 설명 |
---|---|---|---|
단일형 | KEYWORD_TEXT | Basic , Interim |
간단한 키워드를 표시 |
IMAGE_TEXT | Basic , Interim |
간단한 이미지 및 키워드를 표시 | |
FULL_TEXT | Basic |
긴 글을 표시 | |
IMAGE | Basic |
이미지나 동영상을 표시 | |
목록형 | LIST_HORIZONTAL | Basic , Interim |
순서(순위)가 있거나 후보군이 있을 경우 표시 |
LIST_VERTICAL | Basic , Interim |
||
CAROUSEL | Basic |
여러 개의 카드 뷰 형태로 표시 | |
기타 | CHAT_BUBBLE | Basic |
음성 안내가 지원되지 않을 때, 음성 안내를 “스크립트” 타입으로 표시 |
안내
음성 인식 결과에 따라 View Template 없이 음성 답변만 제공되는 경우도 존재합니다.
그림View Template 구성 예시
속성
View Template의 속성은 재질의 여부에 따라 Basic과 Interim으로 구분됩니다. Basic은 최종 결과 답변만 표시하는 Template 속성이며, Interim은 슬롯필링, 컨펌 등 재질의를 표시하는 속성입니다.
표View Template 속성속성 | 설명 |
---|---|
Basic | 최종 결과 답변만 표시 ex) 오늘 날씨, 로또 정보 등의 최종값 |
Interim | 슬롯필링 또는 컨펌 등의 재질의를 표시 - 슬롯필링이나 컨펌 등의 재질의 상황에서 반드시 사용해야 하는 필수 요소는 아님 - View Template 없이도 간단하게 음성 답변으로 질의/응답을 받을 수 있다면 Interim View Template을 노출하지 않는 것을 권장 ex) "누구에게 전화걸까요?" 등과 같은 질의 답변 |
그림Interim 속성을 가진 View Template
정책
이미지 정책
디스플레이 기기에 최적화된 이미지를 사용할 수 있도록, 이미지는 3개의 썸네일(Thumbnail) 중 하나로 자동 리사이징(Resizing)됩니다. 이미지 크롭 등 사이즈별로 편집하거나 고해상도 이미지를 제작하여 활용하고 싶은 경우, 고객사에서 별도 제작한 이미지를 썸네일로 전달해야 합니다. 자세한 썸네일 사이즈 정책은 다음과 같습니다.
표썸네일 사이즈 정책속성 | 설명 |
---|---|
이미지가 있는 경우 | Container Size에 원본 이미지의 가로/세로 중 긴 쪽을 기준으로 비율을 유지 - Container에 빈 영역은 남기지 않음 - 원본 이미지가 해당 Container보다 작을 경우 원본 이미지를 사용 |
이미지가 없는 경우 | 디스플레이 기기에서 대체할 기본 이미지(NoImg)를 표시 |
이미지가 있는 경우
클라이언트에서 최적화된 이미지를 사용할 수 있도록 썸네일 Size Guide에 따라서 이미지가 세 가지 타입으로 자동 리사이징(Resizing)됩니다. 이미지 리사이징은 원본 이미지의 비율을 유지하기 위해 긴 쪽을 기준으로 작업이 진행되며, 원본 이미지의 크기가 가이드보다 작은 경우에는 리사이징을 하지 않습니다.
그림썸네일 사이즈
표썸네일 Container 사이즈항목 | Small | Medium | Large | Object 유형 |
---|---|---|---|---|
IconThumbnail | 40px * 40px | 80px * 80px | 160px * 160px | TemplateText TemplateButton |
MediaThumbnail | 300px * 300px | 600px * 600px | 1,200px * 1,200px | TemplateMedia Item |
BackgroundThumbnail | 400px * 400px | 800px * 800px | 1,600px * 1,600px | Background |
이미지가 없는 경우
이미지가 없을 때, 클라이언트에서 아래의 NoImg 이미지를 활용하여 자체적으로 처리합니다.
그림NoImg 이미지
종료 정책
결과 화면 종료 시간은 기본적으로 각 도메인/인텐트 별로 정의된 TTL(Time to live, 결과 화면 유지 시간)에 의해 결정됩니다. TTL은 기본값이 정해져 있지만, 도메인 또는 단말별로 다르게 설정할 수 있습니다. 예를 들어 TV, 헤이카카오 앱, 월패드는 다음의 TTL 정책을 기본으로 합니다.
안내표TTL 기본 정책
TTL 기본값은 View Template의 각 Type 별 가이드 문서를 참고하시기 바랍니다.
구분 | 정책 |
---|---|
TV | 도메인 정의에 따름 |
헤이카카오 앱 | 일괄 5분으로 고정 |
월패드 | 일괄 1분으로 고정 |
새로운 View Template이 출력된 경우
기존 View Template 또는 Voice Agent(Full/Mini) 및 Player Template의 화면이 출력된 상황에서 새로운 사용자 발화로 View Template을 출력하면 기존에 표시되던 화면은 종료되고 새로운 View Template만 표시됩니다.
주의
[Back] 버튼을 누르면 애플리케이션이 종료되거나 메인 화면으로 이동합니다. 따라서 이전의 View Template은 볼 수 없습니다.
그림새로운 View Template 출력
날짜 및 시간 표기
표날짜 및 시간 표기항목 | 표기 가이드 | 예시 | 참고 |
---|---|---|---|
날짜 기본형 | O월 O일 | 4월 11일 | - |
날짜 축약형 | yyyy.mm.dd | 2019.4.11 2019.11.23 |
띄어쓰기와 온점 표기 주의 (국립국어원 표준 표기법에 따름) |
날짜 및 요일 | O월 O일(요일) | 4월 11일(목) | - |
시간 | 오전 O:OO 오후 O:OO |
오전 3:30 오후 6:30 |
12시간제 |
시간 범위 | 오전(오후)O:OO~ 오전(오후)O:OO |
오전 3:30~4:00 오전 3:00~오후 4:00 |
오전/오후 정보가 동일한 경우 뒤에서 생략 |
기준 날짜 | OOOO년 O월 O일 기준 | 2018년 4월 11일 기준 | 기준 날짜 표기 시, 올해 연도(2020년) 생략 ex) “4월 11일 기준”으로 표기 |
기준 날짜 및 시간 | 4월 11일 오전 O:OO 4월 11일 오후 O:OO |
4월 11일 오전 3:30 기준 4월 11일 오후 6:30 기준 |
기준 날짜가 오늘(4월 11일)인 경우 날짜는 생략 ex) “오전 3:30”으로 표기 |
유의사항
View Template을 구현할 때는 아래의 유의사항을 참고하시기 바랍니다.
표유의사항구분 | 설명 |
---|---|
유의사항 | View Template으로 결과 화면을 제공할 경우에는 [닫기] 버튼을 반드시 제공합니다. |
일정 시간 노출 후에는 종료해야 합니다. - 노출 시간은 각 애플리케이션의 특성에 따라 자유롭게 정합니다. |
|
View Template을 종료하지 않아도 음성 호출 및 인식을 할 수 있도록 [Voice Agent 호출] 버튼을 항상 제공해야 합니다. | |
음성 인터랙션을 보조하는 형태이기 때문에 가능한 한 심플하게 구성해야 합니다. | |
음성 인식 결과별로 어떤 템플릿 구성을 사용할지는 해당 결괏값 데이터에 포함되어 전달됩니다. - 음성 인식 결과에 따라 템플릿 데이터가 비어 있는 경우에는 해당 데이터의 노출 없이 화면을 구성하면 됩니다. |
|
템플릿 데이터에서 디자인 요소 값은 권장하는 값이므로 클라이언트가 자유롭게 변경할 수 있습니다. |
안내
동일한 인텐트(Intent) 또는 동일한 Bot이라 하더라도 답변마다 View Template을 다르게 구성할 수 있습니다.