에서 보낸 응답 처리 AppInstanceBot - Amazon Chime SDK

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

에서 보낸 응답 처리 AppInstanceBot

사용자가 메시지를 보내면 채널 메시지로 AppInstanceBot 응답합니다. 채널 메시지를 나열하여 봇의 응답을 받을 수 있습니다.

다음 예는 CLI를 사용하여 채널 메시지를 나열하는 방법을 보여 줍니다.

aws chime-sdk-messaging list-channel-messages \ --chime-bearer caller_app_instance_user_arn \ --channel-arn channel_arn

의 성공 응답은 다음과 같은 형식을 AppInstanceBot 취합니다.

{ "MessageId": "messageId", "Content": "*{\"Messages\":[{\"...\"}]}*", "ContentType": "application/amz-chime-lex-msgs", "MessageAttributes": { "CHIME.LEX.sessionState.intent.name": { "StringValues": [ "lex_bot_intent_name" ] }, "CHIME.LEX.sessionState.intent.state": { "StringValues": [ "lex_bot_intent_fullfilment_status" ] }, "CHIME.LEX.sessionState.originatingRequestId": { "StringValues": [ "lex_bot_originating_request_id" ] }, "CHIME.LEX.sessionState.sessionId": { "StringValues": [ "lex_bot_session_id" ] } }, "Sender": { "Arn": "app_instance_bot_arn", "Name": "app_instance_bot_name" }, "Type": "STANDARD", }
Content

Content 필드에는 Amazon Lex V2 봇에서 전송된 메시지 목록이 포함되어 있습니다. 이러한 메시지에 대한 자세한 내용은 Amazon Lex V2 RecognizeText API의 메시지를 참조하세요.

다음은 시작 메시지에서 Content 필드를 사용하는 방법을 보여 주는 예시입니다.

{ "Messages": [ { "Content": "Hello!", "ContentType": "PlainText" }, { "ContentType": "ImageResponseCard", "ImageResponseCard": { "Title": "Hello! I'm BB, the Bank Bot.", "Subtitle": "I can help you with the following transactions", "Buttons": [ { "Text": "Check balance", "Value": "Check balance" }, { "Text": "Escalate to agent", "Value": "Escalate to agent" } ] } } ] }

실패 응답의 경우 콘텐츠 필드에는 다음과 같은 형식의 오류 메시지와 코드가 포함됩니다.

{ "Code": error_code }
ContentType

ContentTypeContent 필드에 포함된 페이로드 유형을 나타내므로 Content 필드를 구문 분석하려면 반드시 확인해야 합니다.

참고

Lex V2 봇은 다른 ContentType을 사용합니다.

ContentType은 성공 응답의 경우 application/amz-chime-lex-msgs로, 실패 응답의 경우 application/amz-chime-lex-error로 설정합니다.

MessageAttribute

MessageAttributeA는 문자열 키와 문자열 값의 매핑입니다. 의 응답에는 Amazon Lex 봇의 응답에 매핑된 다음 메시지 속성이 AppInstanceBot 포함되어 있습니다.

  • CHIME.LEX.sessionState.intent.name - 요청이 처리하려고 시도한 Lex 봇 인텐트의 이름입니다.

  • CHIME.LEX.sessionState.intent.state – 인텐트의 현재 상태입니다. 가능한 값은 Fulfilled, InProgress, Failed입니다.

  • Chime.lex.SessionState. originatingRequestId— Amazon Lex 봇에 대한 특정 요청의 고유 식별자입니다. 이 값은 를 트리거한 최초 사용자 메시지의 메시지로 설정됩니다. MessageId AppInstanceBot

  • CHIME.LEX.sessionState.sessionId – 사용자와 봇 간의 대화를 나타내는 고유 식별자입니다. 사용자가 봇과 대화를 시작하면 Amazon Lex는 세션을 생성합니다.

Amazon Lex 세션 및 세션 상태에 대한 자세한 내용은 Amazon Lex API 참조 및 Amazon Lex V2 개발자 안내서의 세션 관리를 참조하십시오. SessionState

Amazon Lex V2가 반환하는 속성에 대한 자세한 내용은 Amazon Lex 런타임 V2 API를 참조하세요.