1. 什么是连接器
连接器(connector)是Teams中频道的一个接受消息的功能,官方的解释如下:
连接器允许用户订阅来自 web 服务的接收通知和消息。 它们公开服务的 HTTPS 终结点,通常以卡片形式发布消息。
简单来说就是Teams提供了一个接口, web服务可以通过这个接口推送消息给Teams的频道。
2. 为什么要用连接器接受来自Azure DevOps的消息?
因为微软提供了就试试看,结果用起来感觉不错,统一在Teams中接收消息也很方便美观,还可以直接在通知下面进行交流。
使用前提是要拥有Office 365的帐号,配置好连接器后Azure DevOps可以将项目里发生的消息推送给Teams,例如:
- 工作项更新
- 拉取请求
- 代码提交
- 生成
- 发布部署和批准
在使用连接器以前我一值用邮箱接收Azure DevOps的消息,于是这些消息把我邮箱塞爆了,用了Teams的连接器后,邮箱里Azure DevOps的通知我就丢在那里不管了。
3. 在Microsoft Teams中配置连接器
要使用连接器,首先在Microsoft Teams中团队“频道”的“更多选项”菜单中选中“连接器”:
点“Azure DevOps Server”右边的“配置”按钮,然后输入连接器的名称点击“创建”:
创建连接器后需要复制它的Webhook URL
:
这样一个连接器就建立好了,接下来只需要使用刚刚复制的Webhook URL
向这个连接器发布消息。
4. 在Azure Devops中配置连接器
打开Azure DevOps的网站,打开“项目设置”里的“服务挂钩”(Service Hooks)配置页面,在配置页面中点击“创建新订阅…”:
在打开的窗口里选择要订阅的服务,好像“Microsoft Teams”和“Office 365”是一样的,我就选了Teams那个。
点击“下一步”然后选择发送通知的触发器,可以看到可选的配置有很多,这里就按自己和团队的需要配置。
最后将刚刚复制的Webhook URL
粘贴到“Connector URL”,这样这个订阅就和刚刚在Teams里创建的连接器关联起来,以后每次触发这个订阅都会把信息发送到Teams的频道中。
在点击“完成”前还可以点击“测试”按钮,以便测试这个通知订阅是否能正确发送到Teams中,可以看到这个订阅已经测试通过。
最后点击“完成”按钮这个订阅旧配置完成了。
5. 成果
上图是我在用的订阅,可以见到最近一星期的触发次数,为免通知太多我就只用了这四种通知,具体的配置我就不贴出了,有需要可以自己多尝试。
6. 参考
什么是 webhook 和连接器? - Teams _ Microsoft Docs
Create a service hook Microsoft Teams - Azure DevOps Services, TFS 2017 _ Microsoft Docs
Microsoft Teams with Azure DevOps Services (Collaborate, Communicate and Celebrate) _ Azure DevOps Hands-on-Labs
Azure Pipelines with Microsoft Teams - Azure Pipelines _ Microsoft Docs