在微软 Teams 中做 ChatOps

  • Helen Beal
  • 谢丽

2018 年 3 月 6 日

话题:DevOps

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

微软 Teams 的Bot 框架把应用程序 & 服务和即时通讯 & 群聊联系了起来。2017 年 3 月,微软在 Office 365 中推出了协作平台 Teams,并于近日新增了支持 ChatOps 的功能。并且,微软宣布,将用 Teams 替代 Skype for Business

ChatOps 允许多个用户加入一个聊天频道或聊天室,并在群聊窗口中查询和调用像自动构建、应用程序性能管理这样的服务。例如,事件管理团队可能会希望聚在一个聊天室里,接收监控警告,从发布工具查询变更和错误诊断信息,并推动部署以补救这种情况。或者,敏捷团队希望使用 Teams 聊天室就持续交付通道实时协作,观察新特性通过测试关卡的过程,在软件达到可发布状态时触发部署过程。

微软 Teams 具有设置 ChatOps 的必要因素:机器人、富讯息服务(附件、字段、按钮、下拉框以及最重要的对话框输入)、文档记录清晰的 API(提供公共封装器且预定义了认证范围)、移动、Web 及桌面呈现技术、公共频道和私有群组。

对话框输入让用户可以通过输入框命令机器人,而不是文本命令。输入框更接近我们每天都在使用的 Web 和移动界面,由于提供了熟悉的用户体验,所以可以提升采用率。

ChatOps 要求应用程序把内容直接发布到团队对话中,因此,参与同一话题讨论的多个用户可以同时看到相同的信息(而不用每个用户单独访问应用程序,只查看自己的视图)。典型地,人们希望将 ChatOps 解决方案集成到 JIRA、GitHub、Jenkins、Dynatrace、Pagerduty、Nagios、Splunk 等应用程序中——尤其是 DevOps 工具链上的所有组件。

微软 Teams消息扩展可以用于这种集成。先注册一个机器人,然后它会提供 Teams 链接代码所需的 ID 和端点。为机器人创建一个应用描述文件,增加对消息扩展的支持。消息扩展可以限定在个人或团队的范围内,使用 commandID 将查询路由到恰当的代码,并生成响应卡片显示在 Teams 聊天室中。

Teams 应用的AppSource列出了提供消息扩展的应用程序。如果安装了应用程序,就可以从消息撰写框上的“更多选项”按钮调用消息扩展。

查看英文原文Doing ChatOps in Microsoft Teams

DevOps