Edit

Share via


Parse event activity JSON to get agent context

The Omnichannel for Customer Service context messages are sent as event activity to AI agents. Context information such as customer info, live work item, or conversation ID, is sent to the agent as part of an activity JSON. The JSON can be of type startConversation for most channels and ConversationUpdate for voice conversations.

Fetch and use context for agents in your agent code

To process these context messages, use activity handlers and override them in your agent code. For information on how to use activity handlers, see Event-driven conversations using an activity handler.

In the following example, when the event activity is received, the OnEventActivityAsync method is called to fetch and use the context.

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);
            }
        }

Next steps

Code samples for parsing activity JSON

setContextProvider
Integrate an Azure agent