专栏首页dino.c的专栏[Microsoft Teams]使用连接器接收Azure Devops的通知

[Microsoft Teams]使用连接器接收Azure Devops的通知

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • [WPF自定义控件]从ContentControl开始入门自定义控件

    我去年写过一个在UWP自定义控件的系列博客,大部分的经验都可以用在WPF中(只有一点小区别)。这篇文章的目的是快速入门自定义控件的开发,所以尽量精简了篇幅,更深...

    dino.c
  • [WPF]如何使用代码创建DataTemplate(或者ControlTemplate)

    上一篇文章([UWP]如何使用代码创建DataTemplate(或者ControlTemplate))介绍了在UWP上的情况,这篇文章再稍微介绍在WPF上如何实...

    dino.c
  • [UWP]为番茄钟应用设计一个平平无奇的状态按钮

    OnePomodoro应用里有个按钮用来控制计时器的启动/停止,本来这应该是一个包含“已启动”和“已停止”两种状态的按钮,但我以前在WPF和UWP上做过太多St...

    dino.c
  • 抖音要向短视频前辈美拍、快手学习什么?

    2018年抖音火了。从春节期间开始集中爆发,通过今日头条惯用的母体导流、百万英雄直播答题、联合12位明星发红包、渠道买量等重重手段收获了4200万新增用户,并连...

    罗超频道
  • vscode/webstorm自定义vue模板

    在进行vue项目时,我们需要对编译器进一步配置来支持vue文件以及相关模板语法的高亮显示等。本文列出关于webstorm和vscode两种常用编译器的模板语法配...

    流眸
  • 为什么QA不喜欢重构?|洞见

    经常听到开发人员抱怨,“这么烂的代码,我来重构一下!”,“这代码怎么能这么写呢?谁来重构一下?”,“这儿有个坏味道,重构吧!” ? 作为一名QA,每次听到“重构...

    ThoughtWorks
  • Spring Boot如何自定义Starter

    如果我们系统中想要拥有自动配置的功能,可以自己编写一个starter (启动器),想想就觉得很酷,因为这意味着我们不仅有自己定义的自动配的功能,而且具有更通用的...

    黄泽杰
  • keras中epoch,batch,loss,val_loss用法说明

    Keras官方文档中给出的解释是:“简单说,epochs指的就是训练过程接中数据将被“轮”多少次”

    砸漏
  • SpringBoot自定义Starter

    3) 输入GroupId、ArtifactId 和 Version 信息,点击Finish

    lyb-geek
  • spring boot框架学习8-【干货】spring boot的web开发(4)-自定义拦截器处理权限

    通过前面的学习,我们了解并快速完成了spring boot第一个应用。spring boot企业级框架,那么spring boot怎么读取静态资源?如js文件夹...

    凯哥Java

扫码关注云+社区

领取腾讯云代金券