SuperAPI AI 工具集

azure-mgmt-botservice-py

智能体与模型

查看项目

更新于 10-16 02:06

技能介绍

用途

azure-mgmt-botservice-py 是 Azure Bot Service 的 Python 管理 SDK,用于创建、管理和配置 Azure Bot Service 资源,覆盖机器人(Bot)、通道(Channel)与连接(Connection)。该技能适用于需要通过 Python 代码以编程方式管理 Azure Bot Service 的场景。

安装与环境变量

安装命令:

pip install azure-mgmt-botservice pip install azure-identity

需要设置的环境变量:

AZURE_SUBSCRIPTION_ID=<your-subscription-id> AZURE_RESOURCE_GROUP=<your-resource-group>

认证方式

使用 DefaultAzureCredential 进行认证,并初始化 AzureBotService 客户端:

from azure.identity import DefaultAzureCredential from azure.mgmt.botservice import AzureBotService import os

credential = DefaultAzureCredential() client = AzureBotService( credential=credential, subscription_id=os.environ["AZURE_SUBSCRIPTION_ID"] )

主要能力

机器人管理

支持创建机器人(client.bots.create),可设置 location、SKU(如 F0)、kind、显示名称、描述、endpoint、msa_app_id、msa_app_type 等属性;支持获取机器人详情(client.bots.get),读取显示名称、endpoint、SKU;支持按资源组列出机器人(client.bots.list_by_resource_group)与按订阅列出全部机器人(client.bots.list);支持更新机器人(client.bots.update)与删除机器人(client.bots.delete)。

通道配置

支持创建通道(client.channels.create),文档示例包括:

  • Microsoft Teams 通道(MsTeamsChannel),可设置 is_enabled;
  • Direct Line 通道(DirectLineChannel),可配置站点列表,设置 site_name、is_enabled、is_v1_enabled、is_v3_enabled;
  • Web Chat 通道(WebChatChannel),可配置站点列表,设置 site_name、is_enabled。

还支持获取通道详情(client.channels.get)与列出通道密钥(client.channels.list_with_keys),后者可访问 Direct Line 站点的 key。文档列出的通道类型还包括 SlackChannel(Slack 工作区集成)、FacebookChannel(Messenger 集成)、EmailChannel(邮件通信)。

OAuth 连接设置

支持创建连接设置(client.bot_connection.create),可设置 client_id、client_secret、scopes、service_provider_id;支持按 Bot 服务列出连接(client.bot_connection.list_by_bot_service)。

客户端操作

文档列出的操作对象包括:

  • client.bots:机器人 CRUD 操作;
  • client.channels:通道配置;
  • client.bot_connection:OAuth 连接设置;
  • client.direct_line:Direct Line 通道操作;
  • client.email:Email 通道操作;
  • client.operations:可用操作;
  • client.host_settings:主机设置操作。

SKU 选项

文档列出两种 SKU:F0 为免费层(消息数量受限),S1 为标准层(消息数量不受限)。

最佳实践

  • 使用 DefaultAzureCredential 进行认证;
  • 开发阶段使用 F0 SKU,生产环境升级到 S1;
  • 安全存储 MSA App ID/Secret,可使用 Key Vault;
  • 仅启用需要的通道,以减少攻击面;
  • 定期轮换 Direct Line 密钥;
  • 尽可能为机器人连接使用托管标识;
  • 为 Web Chat 通道配置正确的 CORS。

适用场景

需要通过 Python 代码创建、查询、更新、删除 Azure Bot Service 机器人,配置 Teams、Direct Line、Web Chat 等通道,管理 OAuth 连接设置或查询通道密钥时适用。

限制

仅当任务与上述范围明确匹配时使用该技能。不应将输出视为环境特定验证、测试或专家评审的替代。若缺少必要的输入、权限、安全边界或成功标准,应停止并请求澄清。具体收费、价格、平台范围与完整效果暂未提供。