리소스: Message
상담사와 사용자 간의 대화 메시지입니다.
JSON 표현 |
---|
{ "name": string, "messageId": string, "representative": { object ( |
필드 | |
---|---|
name |
Business Messages에서 설정한 메시지 이름입니다. 'conversations/{conversationId}/messages/{messageId}'로 해석됩니다. 여기서 {conversationId}는 대화의 고유 ID이고 {messageId}는 메시지의 고유 ID입니다. |
messageId |
필수 항목입니다. 상담사가 할당한 메시지의 고유 식별자입니다. 메일이 이전 메일과 동일한 |
representative |
메시지를 보낸 담당자 (사람 또는 챗봇)에 대한 세부정보입니다. |
suggestions[] |
관련 메시지 다음에 표시되는 추천 답장 칩 목록으로 표시되는 추천 답장 목록입니다. 추천은 최대 13개입니다. 관련 메시지가 대화 내에서 가장 최근 메시지 (상담사 및 사용자 메시지 모두 포함)인 경우에만 칩이 표시됩니다. 사용자는 추천 답장을 탭하여 상담사에게 텍스트 답장을 보낼 수 있습니다. |
fallback |
선택사항입니다. 사용자 기기에서 메시지 유형 또는 내용을 지원하지 않는 경우 표시되는 대체 텍스트입니다. 최대 3,072자(영문 기준)까지 허용됩니다. |
containsRichText |
선택사항입니다. |
통합 필드 content . 메시지의 내용입니다. content 은 다음 중 하나여야 합니다. |
|
text |
문자 메시지. 최대 3,072자(영문 기준)까지 허용됩니다. |
image |
이미지 메시지입니다. |
richCard |
리치 카드 메시지입니다. |
이미지
이미지입니다.
JSON 표현 |
---|
{ // Union field |
필드 | |
---|---|
통합 필드 content . 이미지 콘텐츠입니다. content 은 다음 중 하나여야 합니다. |
|
contentInfo |
이미지의 URL과 썸네일의 URL을 포함한 이미지 관련 정보입니다. |
ContentInfo
콘텐츠 정보가 포함된 메시지입니다.
JSON 표현 |
---|
{ "fileUrl": string, "thumbnailUrl": string, "forceRefresh": boolean, "altText": string } |
필드 | |
---|---|
fileUrl |
공개적으로 연결할 수 있는 파일의 URL입니다. 플랫폼은 파일을 가져올 때 HTTP 헤더의 content-type 필드에서 파일의 MIME 유형을 확인합니다. URL의 HTTP 응답에 content-type 필드가 있고 정확해야 합니다. 최대 크기는 5MB입니다. 지원되는 콘텐츠 유형: image/jpeg, image/jpg, image/png, image/webp |
thumbnailUrl |
선택사항입니다. 공개적으로 연결할 수 있는 썸네일 URL입니다. 썸네일 URL을 제공하지 않으면 사용자 기기에서 파일을 다운로드할 때까지 플랫폼에 빈 자리표시자 썸네일이 표시됩니다. 최대 25KB 지원되는 콘텐츠 유형: image/jpeg, image/jpg, image/png, image/webp |
forceRefresh |
설정된 경우 플랫폼이 파일 (또는 썸네일 이미지)의 사본을 캐시했더라도 지정된 URL에서 파일과 썸네일을 가져옵니다. |
altText |
접근성을 위해 미디어에 관한 세부정보를 설명하는 텍스트입니다. |
RichCard
에이전트에서 사용자에게 전송한 독립형 리치 카드 또는 리치 카드 캐러셀입니다.
JSON 표현 |
---|
{ // Union field |
필드 | |
---|---|
통합 필드 card . 가능한 리치 카드 유형입니다. card 은 다음 중 하나여야 합니다. |
|
standaloneCard |
독립형 카드입니다. |
carouselCard |
카드 캐러셀 |
StandaloneCard
독립형 카드입니다.
JSON 표현 |
---|
{
"cardContent": {
object ( |
필드 | |
---|---|
cardContent |
카드 콘텐츠 |
CardContent
카드 콘텐츠
JSON 표현 |
---|
{ "title": string, "description": string, "media": { object ( |
필드 | |
---|---|
title |
선택사항입니다. 카드 제목입니다. 최대 200자(영문 기준)까지 허용됩니다. |
description |
선택사항입니다. 카드에 대한 설명입니다. 최대 2,000자(영문 기준)까지 입력할 수 있습니다. |
media |
선택사항입니다. 카드에 포함할 미디어입니다. |
suggestions[] |
선택사항입니다. 카드에 포함할 추천 목록입니다. 추천은 최대 4개입니다. |
미디어
리치 카드 내의 미디어 파일입니다.
JSON 표현 |
---|
{ "height": enum ( |
필드 | |
---|---|
height |
리치 카드 내 미디어의 높이입니다. |
통합 필드 content . 미디어 콘텐츠. content 은 다음 중 하나여야 합니다. |
|
contentInfo |
파일의 URL 및 파일 썸네일의 URL을 포함한 파일 관련 정보입니다. |
높이
미디어 높이
열거형 | |
---|---|
HEIGHT_UNSPECIFIED |
지정되지 않음 |
SHORT |
112DP |
MEDIUM |
168DP |
TALL |
264DP 카드 너비가 SMALL 로 설정된 경우 리치 카드 캐러셀에 사용할 수 없습니다. |
추천
칩 목록 내의 추천
JSON 표현 |
---|
{ // Union field |
필드 | |
---|---|
통합 필드 option . 제안 답장 option 은 다음 중 하나여야 합니다. |
|
reply |
사용자에게 지정된 텍스트로 답장하라는 제안입니다. |
action |
기기에서 네이티브 작업을 시작하는 추천 작업입니다. |
liveAgentRequest |
실제 상담사가 대화에 참여하도록 해 달라는 요청입니다. |
authenticationRequest |
인증 흐름을 시작하기 위한 요청입니다. |
SuggestedReply
탭하면 텍스트 답장을 상담사에게 다시 전송합니다.
JSON 표현 |
---|
{ "text": string, "postbackData": string } |
필드 | |
---|---|
text |
추천 답변에 표시되고 사용자가 탭하면 상담사에게 전송되는 텍스트입니다. 최대 25자(영문 기준)까지 허용됩니다. |
postbackData |
사용자가 추천 답변을 탭할 때 에이전트가 수신하는 문자열입니다. 최대 2,048자(영문 기준)까지 입력할 수 있습니다. |
SuggestedAction
탭하면 기기에서 상응하는 네이티브 작업이 시작됩니다.
JSON 표현 |
---|
{ "text": string, "postbackData": string, // Union field |
필드 | |
---|---|
text |
추천 작업에 표시되는 텍스트입니다. 최대 25자(영문 기준)까지 허용됩니다. |
postbackData |
사용자가 추천 작업을 탭할 때 에이전트가 수신하는 문자열입니다. 최대 2,048자(영문 기준)까지 입력할 수 있습니다. |
통합 필드 action . 사용자가 추천된 작업을 탭할 때 기기에서 시작되는 네이티브 작업입니다. action 은 다음 중 하나여야 합니다. |
|
openUrlAction |
지정된 URL을 엽니다. |
dialAction |
사용자의 기본 다이얼러 앱을 엽니다. |
OpenUrlAction
지정된 URL을 엽니다.
JSON 표현 |
---|
{ "url": string } |
필드 | |
---|---|
url |
URL |
DialAction
지정된 전화번호가 입력된 상태로 사용자의 기본 다이얼러 앱을 엽니다.
JSON 표현 |
---|
{ "phoneNumber": string } |
필드 | |
---|---|
phoneNumber |
필수 항목입니다. RFC 3966 형식의 지정된 전화번호입니다. 예: '+1-201-555-0123' |
LiveAgentRequest
이 유형에는 필드가 없습니다.
탭하면 실제 상담사가 대화에 참여하도록 요청을 전송합니다.
AuthenticationRequest
대화 인증 요청입니다.
JSON 표현 |
---|
{ // Union field |
필드 | |
---|---|
통합 필드 authentication_type . 인증 유형입니다. authentication_type 은 다음 중 하나여야 합니다. |
|
oauth |
OAuth를 통한 인증에 대한 세부정보입니다. |
Oauth
OAuth를 통한 인증에 대한 세부정보입니다.
JSON 표현 |
---|
{ "clientId": string, "codeChallenge": string, "scopes": [ string ], "codeChallengeMethod": string } |
필드 | |
---|---|
clientId |
필수 항목입니다. 승인을 요청하는 애플리케이션의 ID |
codeChallenge |
필수 항목입니다. 액세스 토큰을 교환하는 데 사용되는 코드 챌린지입니다. |
scopes[] |
필수 항목입니다. 요청의 범위를 지정하는 배열. |
codeChallengeMethod |
선택사항입니다. 코드 챌린지를 생성하는 데 사용되는 코드 챌린지 방법입니다. 이 매개변수를 생략하면 서버에서 |
CarouselCard
카드 캐러셀
JSON 표현 |
---|
{ "cardWidth": enum ( |
필드 | |
---|---|
cardWidth |
캐러셀에 있는 카드의 너비입니다. |
cardContents[] |
캐러셀에 있는 각 카드의 콘텐츠 목록입니다. 캐러셀에는 최소 2개에서 최대 10개의 카드가 포함될 수 있습니다. |
CardWidth
캐러셀에 있는 카드의 너비입니다.
열거형 | |
---|---|
CARD_WIDTH_UNSPECIFIED |
지정되지 않음 |
SMALL |
136DP 세로 방향의 미디어는 포함할 수 없습니다. |
MEDIUM |
280DP |
메서드 |
|
---|---|
|
에이전트에서 사용자에게 메시지를 전송합니다. |
|
상담사가 사용자에게 보내는 메시지 수신 확인을 전송합니다. |