Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Замечание
Copilot Studio бот переименован в Copilot agent (агент или агент ИИ). Человек-агент теперь называется специалистом службы поддержки клиентов (специалистом поддержки или представителем). Вы можете столкнуться со ссылками на старые и новые термины, когда мы обновляем пользовательский интерфейс продукта, документацию и обучающие материалы.
Для агентов Azure необходимо установить пакет SDK для агентов и создать экземпляр промежуточного ПО Omnichannel перед настройкой контекста агента.
Установка пакета SDK бота в проекте
Чтобы открыть диспетчер пакетов NuGet, щелкните проект правой кнопкой мыши и выберите Манаж пакетов NuGet.
В диспетчере пакетов NuGet выберите источник пакета nuget.org и найдите "Microsoft.Dynamics.AgentsSDK.Middleware". Выберите пакет и нажмите кнопку "Установить". Дополнительные сведения см. на странице Nuget.
Кроме того, можно использовать следующую команду в Интерфейсе командной строки NuGet.
Install-Package Microsoft.Dynamics.AgentsSDK.Middleware
Теперь пакет SDK агента установлен, а ПО промежуточного слоя Omnichannel доступно в проекте.
Используйте ПО промежуточного слоя Omnichannel в коде агента
Откройте файл AdapterWithErrorHandler.cs .
Добавьте оператор импорта и создайте экземпляр ПО промежуточного слоя многоканального взаимодействия.
using Microsoft.Dynamics.AgentsSDK.Middleware.Core; Use(new OmnichannelMiddleware());using System.Globalization; using System.Text; using Microsoft.Agents.Connector; using Microsoft.Agents.Core; using Microsoft.Agents.Core.Errors; using Microsoft.Extensions.Logging; using Microsoft.Dynamics.AgentsSDK.Middleware.Core; namespace Microsoft.CCaaS.MessagingRuntime.TestAgent; public class AdapterWithErrorHandler : CloudAdapter { public AdapterWithErrorHandler( IChannelServiceClientFactory channelServiceClientFactory, IActivityTaskQueue activityTaskQueue, ILogger<CloudAdapter> logger) : base(channelServiceClientFactory, activityTaskQueue, logger) { // OmnichannelMiddleware has special handling for OC event messages Use(new OmnichannelMiddleware()); OnTurnError = async (turnContext, exception) => { var exceptionInfo = GetExceptionInfo(exception); logger.LogAppException(exceptionInfo, exception); // Send a message to the user await turnContext.SendActivityAsync($"The bot encountered an error or bug.{Environment.NewLine}{exceptionInfo}"); await turnContext.SendActivityAsync("To continue to run this bot, please fix the bot source code."); // Send a trace activity, which will be displayed in the Bot Framework Emulator await turnContext.TraceActivityAsync("OnTurnError Trace", exception.Message, "https://www.botframework.com/schemas/error", "TurnError"); }; } private static string GetExceptionInfo(Exception exception) { var sb = new StringBuilder(); // Pull some well known info from ErrorResponse.Exception if available. if (exception is ErrorResponseException responseException) { sb.AppendLine(CultureInfo.InvariantCulture, $"Error code: {responseException.Body?.Error?.Code ?? "NA"}"); sb.AppendLine(CultureInfo.InvariantCulture, $"Error message: {responseException.Body?.Error?.Message ?? "NA"}"); } sb.AppendLine(CultureInfo.InvariantCulture, $"Exception message: {exception.Message}"); sb.AppendLine(); sb.AppendLine(exception.ToString()); var exceptionInfo = sb.ToString(); return exceptionInfo; } }
Дальнейшие шаги
Анализ действия JSON для получения контекста агента
Связанная информация
Отправка пользовательского контекста
setContextProvider
Интегрировать агент Azure