Тестирование агентов с помощью туннеля разработки

Используя туннель разработки, вы можете тестировать своего агента Agent 365 с приложениями Microsoft 365 (такими как Teams, Outlook или Word), пока он работает локально на вашей машине разработки. Этот подход объединяет локальную разработку и тестирование в реальных условиях, чтобы вы могли проверить поведение агента в настоящих средах Microsoft 365 перед развертыванием в облаке.

Предварительные условия

Перед использованием туннеля разработки убедитесь, что вы установили командную строку туннеля разработки.

Настройка туннеля разработки

Настройте туннель разработки, чтобы сделать конечную точку вашего локального агента доступной службам Microsoft 365.

Создание и запуск туннеля

  1. Войдите в туннель разработки:

    devtunnel user login
    
  2. Создайте постоянный туннель:

    devtunnel create --allow-anonymous
    

    Эта команда возвращает идентификатор туннеля. Сохраните этот идентификатор для дальнейшего использования.

  3. Настройте порт туннеля:

    Укажите порт, используемый вашим сервером агента (обычно 3978):

    devtunnel port create <tunnel-id> -p <port-number>
    
  4. Запустите туннель:

    devtunnel host <tunnel-id>
    

    Команда отображает URL-адрес вашего туннеля (например, https://abc123xyz.devtunnels.ms:3978). Скопируйте этот URL-адрес для следующего шага.

Совет

Используйте devtunnel list для просмотра всех туннелей и devtunnel delete <tunnel-id> для удаления туннелей, которые вам больше не нужны.

Настройка конечной точки обмена сообщениями агента

Зарегистрируйте URL-адрес вашего туннеля разработки (например, https://abc123xyz.devtunnels.ms:3978/api/messages) в качестве конечной точки обмена сообщениями агента, чтобы Microsoft 365 было известно, куда направлять сообщения. Не забудьте добавить суффикс /api/messages к конечной точке.

См. раздел Задание конечной точки обмена сообщениями агента

Тестирование с Microsoft 365

После того как туннель разработки активен и конечная точка зарегистрирована, протестируйте агента в приложениях Microsoft 365.

Тестирование в Microsoft Teams

  1. Запустите локального агента, следуя инструкциям в разделе Установка зависимостей и запуск сервера приложения агента.

  2. Проверьте подключения туннеля:

    devtunnel list
    

    Убедитесь, что у вашего туннеля есть активные подключения к хосту. В столбце "Подключения к хосту" должно быть число больше 0.

  3. Взаимодействуйте с агентом в Teams:

    • Откройте Microsoft Teams (веб-приложение или классическое приложение)
    • В поисковой строке Teams найдите вашего агента по имени или электронной почте
    • Начните разговор с агентом
    • Отправьте сообщение и наблюдайте за ответом
    • Проверьте свою локальную консоль на наличие входящих запросов и активности агента

Тестирование уведомлений об электронной почте

Если ваш агент настроен для получения уведомлений об электронной почте:

  1. Отправьте письмо на адрес электронной почты вашего агента
  2. Добавьте своего агента в копию в переписке
  3. Следите за локальной консолью на предмет веб-перехватчика уведомлений
  4. Проверьте, что ваш агент обрабатывает и отвечает на письмо

Тестирование интеграции с Word

Для агентов, отвечающих на комментарии в Word:

  1. Откройте документ Word, к которому ваш агент имеет доступ.
  2. Добавьте комментарий, в котором упоминается ваш агент.
  3. Проверьте вашу локальную консоль на наличие уведомления.
  4. Проверьте, что ответ вашего агента отображается в Word.

Мониторинг активности туннеля

Туннель разработки предоставляет анализ трафика для отладки проблем с соединением и понимания потока запросов:

devtunnel show <tunnel-id>

Эта команда отображает следующее:

  • Активные подключения и сведения о сеансах.
  • Информация о запросах и ответах.
  • Статистика объема трафика.
  • Ошибки подключения и предупреждения.

Вы также можете отслеживать активность туннеля в реальном времени, просматривая вывод команды devtunnel host.

Поддержание подключений к туннелю

Туннель разработки требует, чтобы процесс devtunnel host продолжал работать. Если из-за неактивности, проблем с сетью или перехода компьютера в спящий режим происходит разрыв соединения, необходимо перезапустить его.

Проверка состояния туннеля

Проверьте, активен ли ваш туннель:

devtunnel list

Отображается следующий вывод:

  • Идентификатор туннеля: идентификатор вашего туннеля
  • Подключения к хосту: количество активных подключений (не менее одного при работе devtunnel host)
  • Порты: настроенные порты
  • Время окончания: время окончания действия туннеля

Если в столбце Подключения к хосту отображается 0, туннель существует, но в данный момент не размещается на хосте.

Перезапуск отключенного туннеля

Если соединение с туннелем пропадает, перезапустите его, используя тот же идентификатор туннеля:

devtunnel host <tunnel-id>

URL-адрес туннеля остается прежним, поэтому вам не нужно обновлять конфигурацию конечной точки обмена сообщениями агента.

Поддержание активности туннелей во время разработки

Для поддержания стабильных соединений:

  • Оставьте окно терминала открытым — не закрывайте терминал, где выполняется devtunnel host.
  • Не допускайте перехода компьютера в режим сна — настройте систему так, чтобы она оставалась активной во время тестовых сеансов.
  • Следите за ошибками подключения — проверяйте вывод devtunnel host на терминале на наличие сообщений о разрыве соединения.
  • Перезапускайте туннель после изменений в сети — если вы сменили сеть или переподключились к VPN, перезапустите туннель.

Совет

Если ваш туннель часто разрывается, проверьте настройки сети и правила межсетевого экрана, чтобы убедиться, что они не препятствуют соединению.

Очистка

После завершения тестирования с помощью туннеля разработки:

Остановка туннеля

Нажмите Ctrl+C на терминале, где запущен devtunnel host, чтобы остановить туннель.

Эта команда удаляет URL-адрес туннеля разработки из конечной точки обмена сообщениями вашего агента. При развертывании в рабочей среде установите облачный URL-адрес конечной точки.

Примечание

Туннель остается доступным для дальнейшего использования, пока вы явно не удалите его с помощью devtunnel delete <tunnel-id>.

Ограничения

При работе с туннелями разработки учитывайте следующие ограничения:

  • Возможность использования только для разработки: используйте туннель для разработки и тестирования, не для рабочего использования.
  • Производительность: ожидайте более высокой задержки по сравнению с облачными агентами из-за сетевой маршрутизации.
  • Стабильность соединения: туннельные соединения могут иногда прерываться и требовать ручного перезапуска.
  • Вопросы безопасности: флаг --allow-anonymous удобен для тестирования, но не используйте его с конфиденциальными данными.
  • Управление сеансами: вам может потребоваться периодически проходить повторную аутентификацию в зависимости от продолжительности вашего сеанса.

Следующие шаги

После успешного тестирования с помощью туннеля разработки:

Устранение неполадок

Если при тестировании через туннель разработки возникают проблемы, начните отсюда для устранения типичных проблем с туннелем, подключением и конечными точками. Для более широкого устранения неполадок Agent 365 (настройка, аутентификация и обмен сообщениями) см. Устранение неполадок.

Ошибка соединения с туннелем

Симптомы: туннель разработки не запускается или сразу же отключается.

Решения:

  • Убедитесь, что вы вошли в систему: devtunnel user login
  • Проверьте, не использует ли другой процесс тот же порт
  • Убедитесь, что ваш межсетевой экран разрешает подключения к туннелю разработки
  • Удалите и заново создайте туннель: devtunnel delete <tunnel-id>, затем создайте новый

Сообщения не доходят до локального агента

Симптомы: Microsoft 365 показывает, что сообщение было отправлено, но ваш локальный агент его не получает.

Решения:

  • Убедитесь, что ваш агент работает локально
  • Проверьте, что туннель активен: команда devtunnel list должна отображать статус "Connected"
  • Проверьте конфигурацию конечной точки в a365.config.json и убедитесь, что ваш URL-адрес вашего туннеля разработки указан как конечная точка для обмена сообщениями
  • Просмотрите журналы туннеля разработки на терминале, где запущен devtunnel host, на наличие ошибок соединения
  • Убедитесь, что ваш локальный порт совпадает с портом туннеля (оба по умолчанию должны быть 3978)

Ошибки аутентификации через туннель разработки

Симптомы: ошибки 401 или 403 при тестировании через туннель разработки.

Решения:

  • Убедитесь, что настроена агентная аутентификация (аутентификация с помощью токена носителя не работает с туннелем разработки для интеграции с Microsoft 365).
  • Проверьте учетные данные схемы агента в a365.generated.config.json.
  • Убедитесь, что у вашего агента есть необходимые разрешения на тестируемые операции.
  • Убедитесь, что срок действия ваших токенов аутентификации не истек.

URL-адрес туннеля изменился или срок его действия истек

Симптомы: ранее работавший URL-адрес туннеля больше не перенаправляет запросы к агенту.

Решения:

  • Проверьте статус туннеля с помощью devtunnel list.
  • Перезапустите туннель с помощью devtunnel host <tunnel-id>.
  • Обновите конечную точку обмена сообщениями, если URL-адрес изменился, с помощью a365 setup blueprint --endpoint-only.