翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon Chime SDK メッセージング用の AppInstanceBot からのレスポンスの処理
ユーザーがメッセージを送信すると、AppInstanceBot はチャネルメッセージで応答します。チャネルメッセージを一覧表示して、ボットのレスポンスを取得できます。
次の例は、CLI を使用してチャネルメッセージを一覧表示する方法を示しています。
aws chime-sdk-messaging list-channel-messages \ --chime-bearercaller_app_instance_user_arn\ --channel-arnchannel_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 V2RecognizeTextAPI の「メッセージ」を参照してください。以下の例は、挨拶のメッセージで
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
-
ContentTypeはContentフィールドに含まれるペイロードのタイプを指し、Contentフィールドを解析するにはこれをチェックする必要があります。注記
Lex V2 ボットは別の
ContentTypeを使用します。ContentTypeは成功レスポンスの場合はapplication/amz-chime-lex-msgsに、失敗レスポンスの場合はapplication/amz-chime-lex-errorに設定されます。 - MessageAttribute
-
MessageAttribute は、文字列キーから文字列値へのマッピングです。
AppInstanceBotからのレスポンスには、Amazon Lex ボットからのレスポンスにマッピングされた以下のメッセージ属性が含まれます。-
CHIME.LEX.sessionState.intent.name — リクエストが処理しようとした Lex ボットのインテントの名前。
-
CHIME.LEX.sessionState.intent.state — インテントの現在の状態。指定できる値には、
Fulfilled、InProgress、Failedなどがあります。 -
CHIME.LEX.sessionState.originatingRequestId — Amazon Lex ボットへの特定のリクエストを表す一意の識別子。これは AppInstanceBot をトリガーした送信元のユーザーメッセージの
MessageIdに設定されます。 -
CHIME.LEX.sessionState.sessionId — ユーザーとボットの間の会話を識別する一意の識別子。ユーザーがボットとのチャットを開始すると、Amazon Lex によりセッションが作成されます。
Amazon Lex セッションとセッション状態の詳細については、「Amazon Lex API リファレンス」の「SessionState」と、「Amazon Lex V2 開発者ガイド」の「セッションの管理」を参照してください。
Amazon Lex V2 が返す属性の詳細については、「Amazon Lex ランタイム V2」API を参照してください。
-