イベント活動 JSON を解析してボット コンテキストを取得する

顧客サービス のオムニチャネル コンテキスト メッセージは、イベント アクティビティとしてボットに送信されます。 顧客情報、ライブ作業項目、会話 ID などのコンテキスト情報は、アクティビティ JSON の一部としてボットに送信されます。 JSON のタイプは、多くのチャネルでの startConversation と音声会話での ConversationUpdate です。

ボット コードでボットのコンテキストを取得して使用する

これらのコンテキスト メッセージを処理するには、アクティビティ ハンドラーを使用し、ボット コードでそれらをオーバーライドします。 アクティビティ ハンドラーの使用方法については、アクティビティ ハンドラーを使用したイベント駆動型の会話 を参照してください。

次の例では、イベント アクティビティを受信すると、OnEventActivityAsync メソッドが呼び出され、コンテキストを取得して使用します。

protected override async Task OnEventActivityAsync(ITurnContext<IEventActivity> turnContext, CancellationToken cancellationToken)
        {
            if (turnContext.Activity.Name == "omnichannelSetContext")
           {
                // Replace with your logic to fetch the context from Activity.Value
                IActivity replyActivity = MessageFactory.Text($"Received context :  {turnContext.Activity.Value.ToString()}");

                // Replace with your logic to consume the context
                await turnContext.SendActivityAsync(replyActivity, cancellationToken);
            }
        }

次の手順

アクティビティ JSON の解析に使用するコード サンプル

参照

getContextProvider
Azure ボットの統合