调试过程涉及 .vscode/launch.json
和 .vscode/tasks.json
文件来配置 Microsoft Visual Studio Code 中的调试器。 Visual Studio Code启动 Node 调试器和浏览器调试器,Microsoft Edge 或 Google Chrome 启动新的浏览器实例。
调试过程工作流如下所示:
launch.json
file 在 Visual Studio Code 中配置调试器。Visual Studio Code在 文件中运行复合 preLaunchTask,即在本地
.vscode/tasks.json
启动 Teams 应用。然后,Visual Studio Code 启动复合配置中指定的调试器,例如附加到到自动程序、附加到后端、附加到前段、启动自动程序。
浏览器调试器(Microsoft Edge 或 Google Chrome)启动新的浏览器实例并打开网页以加载Microsoft Teams 客户端。
验证先决条件
在调试过程中,Microsoft检查以下先决条件:
Microsoft 365 代理工具包 (以前称为 Teams 工具包,) 检查是否安装了 Node.js。 如果未安装 Node.js,调试将终止。
代理工具包检查 Node.js 版本是否与文件中
package.json
定义的版本匹配。 如果版本不匹配,则代理工具包在输出通道中显示警告消息。如果尚未使用有效凭据登录,代理工具包会提示登录到 Microsoft 365 帐户。
已启用开发人员租户的自定义应用上传,以防止本地调试终止。
如果未安装 Ngrok 或版本不符合要求,代理工具包会在 中
~/.fx/bin/ngrok
安装 Ngrok npm 包ngrok@4.2.2
。 Ngrok 二进制版本 2.3 适用于机器人和消息扩展,由 中的/.fx/bin/ngrok/node modules/ngrok/bin
Ngrok npm 包管理。注意
代理工具包项目模板使用包含 v2.3.40 的 ngrok@4.3.3 npm 包。 有关如何获取有效许可证的详细信息,请参阅 ngrok。
如果 Azure Functions Core Tools 版本 4 未安装或版本不符合要求,代理工具包会在 中
~/.fx/bin/func
安装适用于 Windows 和 macOS Azure Functions Core Tools npm 包azure-functions-core-tools@3
。 中的~/.fx/bin/func/node_modules/azure-functions-core-tools/bin
Azure Functions Core Tools npm 包管理Azure Functions Core Tools 二进制文件。 对于 Linux,本地调试终止。如果未安装 .NET Core SDK 或版本不符合要求,代理工具包会在 中安装适用于 Windows 和 macOS 的
~/.fx/bin/dotnet
.NET Core SDK。 .NET Core SDK 版本适用于Azure Functions。 对于 Linux,本地调试终止。下表列出了 .NET Core 版本:
平台 软件 Windows、macO (x64) 和 Linux 3.1(推荐), 5.0, 6.0 macOS (arm64) 6.0 如果未为 Windows 或 macOS 中的选项卡安装 localhost 的开发证书,则代理工具包会提示你安装它。
如果未安装Azure Functions绑定扩展,则 Agents Toolkit 会在 中
api/extensions.csproj
安装Azure Functions绑定扩展。如果未安装 npm 包,则 Agents Toolkit 将安装所有适用于选项卡应用、机器人应用、消息扩展和Azure Functions的 npm 包。
代理工具包启动 Ngrok,为机器人和消息扩展创建 HTTP 隧道。
如果选项卡、机器人、消息扩展和Azure Functions端口不可用,则本地调试将终止。
下表列出了可用于组件的端口:
组件 端口 Tab 53000 自动程序或消息扩展 3978 自动程序或消息扩展的节点检查器 9239 Azure Functions 7071 用于 Azure Functions 的节点检查器 9229
选择“ 开始调试” (F5) 时,代理工具包输出通道会在检查先决条件后显示进度和结果。
有关详细信息,请参阅 验证先决条件任务。
启动本地隧道
对于机器人和消息扩展,Agents Toolkit 会启动本地隧道服务,使机器人消息传送终结点公开。 有关详细信息,请参阅 启动本地隧道任务。
创建调试资源
代理工具包执行中m365agents.local.yml
定义的生命周期provision
,以创建调试所需的 Teams 应用相关资源。 有关详细信息,请参阅 预配任务 和 可用作。
生成项目
Agents Toolkit 执行中m365agents.local.yml
定义的生命周期deploy
来生成项目。 有关详细信息,请参阅 部署任务 和 可用作。
浏览你的应用源代码
调试后,可以在“资源管理器”下查看项目文件夹和文件,Visual Studio Code。 下表列出了与调试相关的文件:
文件夹名 | 目录 | 调试配置类型 |
---|---|---|
m365agents.local.yml |
用于调试的 main Agents Toolkit 项目文件。 | 此文件定义调试所需的生命周期和作。 |
env/.env.local |
代理工具包项目的环境变量文件。 | 调试期间会使用或生成每个环境变量的值。 |
.localConfigs |
应用代码的环境变量文件。 | 调试期间会生成每个环境变量的值。 |
有关项目文件夹结构的详细信息,请参阅 Agents Toolkit 项目。