Синтаксический анализ действия события в формате JSON для получения контекста агента

Контекстные сообщения в контактном центре Dynamics 365 отправляются в виде активности событий агентам ИИ. Контекстные сведения, такие как сведения о клиенте, рабочий элемент или идентификатор беседы, отправляются агенту в рамках JSON действия. Активность имеет тип startConversation для агентов Copilot Studio и omnichannelSetContext для агентов Azure.

Получение и использование контекста для агентов в коде агента

Чтобы обработать эти контекстные сообщения, используйте обработчики действий и переопределите их в коде агента. Сведения об использовании обработчиков действий см. в разделе Беседы, управляемые событиями, с использованием обработчика действий.

В следующем примере при получении OnEventActivityAsync действия события вызывается метод для получения и использования контекста.

namespace Microsoft.CCaaS.MessagingRuntime.TestAgent.Agents;

public class TestAgentApplication : AgentApplication
{
    private readonly IContextManager _contextManager;

    public TestAgentApplication(AgentApplicationOptions options, IContextManager contextManager) : base(options)
    {
        _contextManager = contextManager ?? throw new ArgumentNullException(nameof(contextManager));
        OnConversationUpdate(ConversationUpdateEvents.MembersAdded, OnMembersAddedAsync);
        OnEvent(ActivityTypes.Event, OnEventActivityAsync);
        OnActivity(ActivityTypes.Message, OnMessageActivityAsync, rank: RouteRank.Last);
    }

    protected async Task OnMessageActivityAsync(ITurnContext turnContext, ITurnState turnState, CancellationToken cancellationToken)
    {
        ArgumentNullException.ThrowIfNull(turnContext);
        var text = turnContext.Activity.Text?.ToLower(CultureInfo.InvariantCulture);
        var responseActivity = Activity.CreateMessageActivity();
        Responses.BuildCustomerFileAttachmentResponse(turnContext, responseActivity);
    }
}

Дальнейшие шаги

Примеры кода для синтаксического анализа действий JSON

setContextProvider
Интеграция агента Azure