我创建了一个 Azure 机器人资源并导航到其链接的 Azure 应用程序。但是,我需要知道此应用程序的主机名是什么,因为我在发布机器人期间导入此应用程序以用于我的 Bot Framework Composer。我正在查看的每个在线资源都表明我的主机名来自带有“.azurewebsites.net”的应用程序服务 URL,但我不知道在我的 Azure 机器人或 Azure 应用程序的配置文件中的哪里可以找到它。我在哪里可以找到这个?我是 Azure 门户上此机器人的所有者,因此我应该有权查看它(如果存在)。
我想知道是否是因为我还没有创建网络应用程序。不过,我不知道我是否需要它。我在 Bot Framework Composer 上创建了我的机器人,并链接到我自己的外部软件的 API,因此它在模拟器上运行良好。我只需要发布它。 创建带有身份验证流程示例的 Web 应用程序的选项 - 我不需要为我的机器人进行身份验证,是吗?
这就是我的 Azure 机器人概述在门户上的样子。 Azure 门户 - 概述
Azure 机器人 > 配置 配置
应用程序 ID,进入上一张图片中的管理密码,即可获得 Microsoft 应用程序 微软链接应用程序
就上下文而言,我的机器人本质上是一个链接到我自己的聊天机器人服务的聊天机器人,例如微软团队的 chatgpt
我尝试仅使用应用程序的显示名称,但出现错误,因此我尝试查找 azurewebsites.net 链接。
主机名是指Azure应用服务的名称。
要部署机器人,您必须在门户中创建新的 Azure 机器人和 Azure 应用服务。
我已经使用 Bot 框架作曲家创建了一个 Node(预览版)Azure Bot。
Azure Bot=>Configuration=>Manage Password=>Certificates & Secrets=>Client Secrets
,创建一个秘密。请记下秘密值,以将其用作 Microsoft 应用程序密码。Publish=>Publishing Profile=>Add New
:
更新显示模板中提到的以下详细信息:
{
"name": "<subscription_name>",
"environment": "dev",
"tenantId": "<Azure_tenant_ID>",
"hostname": "<Your_App_service_name>", //newly created app service name
"runtimeIdentifier": "win-x64",
"resourceGroup": "<resourcegroup_name>",
"botName": "<Your_Azure_Bot_name>",
"subscriptionId": "<subscription_ID>",
"region": "<resourcegroup_region>",
"appServiceOperatingSystem": "windows",
"scmHostDomain": "scm.azurewebsites.net",
"luisResource": "",
"settings": {
"applicationInsights": {
"InstrumentationKey": "",
"connectionString": ""
},
"cosmosDb": {
"cosmosDBEndpoint": "",
"authKey": "",
"databaseId": "",
"containerId": ""
},
"blobStorage": {
"connectionString": "",
"container": ""
},
"luis": {
"authoringKey": "",
"authoringEndpoint": "",
"endpointKey": "",
"endpoint": "",
"region": ""
},
"qna": {
"subscriptionKey": "",
"endpoint": ""
},
"MicrosoftAppId": "<Microsoft_APP_ID_available_in_Azurebot_configuration>",
"MicrosoftAppPassword": "<Microsoft_APP_password_created_via_Azurebot_configuration>"
}
}
此过程创建发布配置文件以将机器人部署到 Azure:
选择机器人 => 选择发布配置文件作为目标,然后单击“发布选定的机器人”以部署机器人。