Отладка фонового процесса

Процесс отладки включает .vscode/launch.json файлы и .vscode/tasks.json для настройки отладчиков в Microsoft Visual Studio Code. Visual Studio Code запускает отладчик Node и отладчик браузера, а Microsoft Edge или Google Chrome запускает новый экземпляр браузера.

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

  1. launch.jsonФайл настраивает отладчик в Visual Studio Code.

  2. Visual Studio Code запускает составной preLaunchTask, Запустите приложение Teams локально в .vscode/tasks.json файле.

  3. Затем Visual Studio Code запускает отладчики, указанные в конфигурациях составной команды, например Прикрепить к боту, Прикрепить к серверу, Прикрепить к интерфейсу и Запустить бот.

  4. Отладчик браузера Microsoft Edge или Google Chrome запускает новый экземпляр браузера и открывает веб-страницу для загрузки клиента Microsoft Teams.

Проверка предварительных требований

Набор средств Microsoft Teams проверяет следующие предварительные требования в процессе отладки:

  • Набор средств Teams проверяет, установлен ли Node.js. Если Node.js не установлен, отладка завершается.

  • Набор средств Teams проверяет, соответствует ли версия Node.js версиям, определенным в package.json файле. Если версия не совпадает, набор средств Teams отображает предупреждающее сообщение в выходном канале.

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

  • Передача пользовательских приложений для клиента разработчика включена, чтобы предотвратить завершение локальной отладки.

  • Если ngrok не установлен или версия не соответствует требованию, набор средств Teams устанавливает пакет ngrok@4.2.2 npm Ngrok в ~/.fx/bin/ngrok. Ngrok binary версии 2.3 применим к расширению бота и сообщений и управляется пакетом npm Ngrok в /.fx/bin/ngrok/node modules/ngrok/bin.

    Примечание.

    Шаблоны проектов Набора средств Teams используют пакет npm ngrok@4.3.3, содержащий версию 2.3.40. Дополнительные сведения о том, как получить действительную лицензию, см. в разделе ngrok.

  • Если Функции Azure Core Tools версии 4 не установлен или версия не соответствует требованию, набор средств Teams устанавливает пакет azure-functions-core-tools@3 npm Функции Azure Core Tools для Windows и macOS в ~/.fx/bin/func. Пакет npm для Функции Azure Core Tools в ~/.fx/bin/func/node_modules/azure-functions-core-tools/bin управляет двоичным файлом Функции Azure Core Tools. Для Linux локальная отладка прекращается.

  • Если пакет SDK для .NET Core не установлен или версия не соответствует требованию, набор средств Teams устанавливает пакет SDK для .NET Core для Windows и macOS в ~/.fx/bin/dotnet. Версия пакета SDK для .NET Core применима для Функции Azure. Для Linux локальная отладка прекращается.

    В следующей таблице перечислены версии .NET Core.

    Платформа Программное обеспечение
    Windows, macOS (x64) и Linux 3.1 (рекомендуется), 5.0, 6.0
    macOS (arm64) 6.0
  • Если сертификат разработки для localhost не установлен для вкладки в Windows или macOS, teams Toolkit предложит установить его.

  • Если Функции Azure расширения привязки не установлены, Teams Toolkit устанавливает Функции Azure расширения привязки в api/extensions.csproj.

  • Если пакеты npm не установлены, teams Toolkit устанавливает все пакеты npm, применимые к приложению tab, приложению бота, расширению сообщений и Функции Azure.

  • Teams Toolkit запускает Ngrok для создания http-туннеля для бота и расширения сообщений.

  • Если вкладка, бот, расширение сообщений и порты Функции Azure недоступны, локальная отладка завершается.

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

    Компонент Порт
    Tab 53000
    Бот или расширение для сообщений 3978
    Инспектор узла для бота или расширения обмена сообщениями 9239
    Функции Azure 7071
    Инспектор узла для Функций Azure 9229

При нажатии кнопки Начать отладку (F5) выходной канал Набора средств Teams отображает ход выполнения и результат после проверки предварительных требований.

Снимок экрана: предварительные требования проверка сводка.

Дополнительные сведения см. в разделе Задача проверки предварительных требований.

Запуск локального туннеля

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

Создание ресурсов отладки

Набор средств Teams выполняет жизненный цикл provision , определенный в , teamsapp.local.yml чтобы создать ресурсы, связанные с приложением Teams, необходимые для отладки. Дополнительные сведения см. в разделе Подготовка задачи и доступных действий.

Сборка проекта

Набор средств Teams выполняет жизненный цикл deploy , определенный в teamsapp.local.yml для сборки проекта. Дополнительные сведения см. в разделе Развертывание задачи и доступных действий.

Знакомство с исходным кодом приложения

Папки и файлы проекта можно просмотреть в разделе Обозреватель в Visual Studio Code после отладки. В следующей таблице перечислены файлы, связанные с отладкой.

Имя папки Содержание Тип конфигурации отладки
teamsapp.local.yml Файл проекта набора средств Teams main для отладки. Этот файл определяет жизненные циклы и действия, необходимые для отладки.
env/.env.local Файл переменных среды для проекта Набора средств Teams. Значения каждой переменной среды используются или создаются во время отладки.
.localConfigs Файл переменных среды для кода приложения. Значения каждой переменной среды создаются во время отладки.

Дополнительные сведения о структуре папок проекта см. в разделе Проект Набора средств Teams.

См. также