你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
使用 Azure CLI 创建或更新 Azure 机器人资源
适用于:SDK v4
本文介绍如何使用 Azure CLI 和 Azure 资源管理器模板(ARM 模板)创建或更新 Azure 机器人资源。
这是预配和发布机器人的更大流程的一部分。
- 有关完整过程的信息,请参阅预配并发布机器人。
- 有关创建应用程序服务资源方法的信息,请参阅使用 Azure CLI 创建应用程序服务资源。
- 有关如何使用 Azure 门户的说明,请参阅创建 Azure 机器人资源快速入门。
注意
Bot Framework JavaScript、C# 和 Python SDK 将继续受支持,但 Java SDK 即将停用,最终长期支持将于 2023 年 11 月结束。
使用 Java SDK 构建的现有机器人将继续正常运行。
要生成新的机器人,请考虑使用 Microsoft Copilot Studio 并阅读选择正确的助理解决方案。
有关详细信息,请参阅机器人构建的未来。
先决条件
若要使用 Azure CLI 预配和发布机器人,需要:
具有活动订阅的 Azure 帐户。 创建一个免费帐户。
-
对于编程语言,请使用以下版本的 Azure CLI。 某些步骤不适用于更高版本的 CLI。
语言 CLI 版本 C# 和 JavaScript 2.39.0 或更高版本 Python 2.55.0 或更高版本 Java 2.29.2
此过程使用 Azure 资源管理器模板(ARM 模板)为机器人创建 Azure 机器人资源。
如果没有当前模板,请在 deploymentTemplates 文件夹的机器人项目中创建副本:C#、JavaScript、Python 或 Java。
提示
这是预配和发布机器人整个流程的一部分。 了解如何 预配和发布机器人 以获取完整先决条件列表。
编辑参数文件
编辑 ARM 模板的参数文件,以包含要使用的值。
重要
创建应用程序服务和 Azure 机器人资源时,必须使用相同的 appType
和 appId
值。
如果项目尚不包含最新的 ARM 模板和参数文件,则可以从 Bot Framework SDK 存储库中复制它们,用于语言:C#、JavaScript、Python 或 Java。
下表介绍参数文件中的“部署参数”,以便与 parameters
命令选项一起使用。
默认情况下,参数文件的名称是 parameters-for-template-AzureBot-with-rg.json。
参数 | 类型 | 说明 |
---|---|---|
azureBotId |
字符串 | 必需。 机器人的全局唯一且不可变的句柄,例如 ContosoCustomerService 。 |
azureBotSku |
字符串 | 可选。 Azure 机器人资源的 SKU。 允许的值:“F0”(免费)和“S1”(标准)。 默认值为“S1”。 |
azureBotRegion |
字符串 | 可选。 Azure 机器人的位置。 允许的值:“global”、“westeurope”、“westus”和“centralindia”。 默认值为“global”。 |
botEndpoint |
字符串 | 可选。 机器人的消息传送终结点,例如 https://<appServiceName>.azurewebsites.net/api/messages 。 |
appType |
字符串 | 必需。 如何管理机器人资源的标识。 允许的值为:“MultiTenant”、“SingleTenant”和“UserAssignedMSI”。 默认值为“MultiTenant”。 |
appId |
字符串 | 必需。 前面创建的标识资源的客户端 ID 或应用 ID。 这是应用程序服务的“Microsoft 应用 ID”。 |
UMSIName |
字符串 | 可选。 对于用户分配的托管标识应用类型,为标识资源的名称。 |
UMSIResourceGroupName |
字符串 | 可选。 对于用户分配的托管标识应用类型,为标识资源的资源组。 |
tenantId |
字符串 | 可选。 对于用户分配的托管标识和单租户应用类型,为标识资源的 Microsoft Entra ID 租户 ID。 |
提示
必须先设置机器人的消息传送终结点,然后发布的机器人才能接收消息。
并非所有参数都适用于所有应用类型。
创建 Azure 机器人资源
若要为机器人创建 Azure 机器人资源,请使用以下命令。
az deployment group create --resource-group <resource-group> --template-file <template-file-path> --parameters "@<parameters-file-path>"
选项 | 说明 |
---|---|
resource-group | 要在其中创建应用程序服务的 Azure 资源组的名称。 |
template-file | 应用程序服务的 ARM 模板的路径。 路径可以是相对路径或绝对路径。 |
parameters | 要用于 ARM 模板的参数文件的路径。 路径可以是相对路径或绝对路径。 |
对于使用最新生成器创建的项目,ARM 模板和参数文件位于项目中的 DeploymentTemplates\DeployUseExistResourceGroup 文件夹中。 默认文件名为 template-AzureBot-with-rg.json 和 parameters-for-template-AzureBot-with-rg.json。
若要更新 Azure 机器人资源
若要添加或更新 Azure 机器人的消息传送终结点,请使用以下命令。
az bot update --resource-group <resource group> --name <azureBotId> --endpoint <messaging-endpoint>
选项 | 说明 |
---|---|
resource-group | 包含应用程序服务的 Azure 资源组的名称。 |
name | 机器人的全局唯一且不可变的句柄。 |
endpoint | 机器人的消息传送终结点,例如 https://<appServiceName>.azurewebsites.net/api/messages 。 |
其他信息
有关 ARM 模板的详细信息,请参阅什么是 ARM 模板?以及如何通过 Azure CLI 使用 Azure 资源管理器 (ARM) 部署模板。
后续步骤
如果在机器人部署过程中创建了应用程序服务,请参阅使用 ARM 模板创建资源以继续该过程。