TFS 上的 Microsoft Teams webhook
Microsoft Teams webhook on TFS
我发现了 Microsoft Teams,我喜欢它。
我现在正在尝试触发从 TFS 到 Microsoft Teams 的 pullrequest 消息。
我有一个 Teams Group webhook url,可以与 curl 一起正常工作。
但是当我用 TFS (Service Hooks -> Web Hooks) 测试它时,我只会收到错误的请求。
你们中有人知道为什么会这样吗?
如果您使用的是 VSTS,您可以直接使用 Microsoft Teams 中的 Connectors 来实现您的需要。
- 从 Teams-General 打开连接器。
添加Visual Studio团队服务
添加吹图等相关配置
在相关 VSTS 项目中创建拉取请求,将在 Microsoft Teams 中收到一条消息
如果您使用的是TFS,暂时没有相关插件。似乎您正在使用 Incoming Webhook connector 。
Incoming Webhook 仅支持明信片。有关该卡如何构建的更多详细信息,请参阅此 link:Actionable Messages Reference。
但是,对于 Web Hooks in TFS,发送的 JSON 表示没有使用 "card type"。示例 JSON 如下所示:
{
"event.type": "git.push",
...
"messsages": {
"text": "...",
"html": "...",
"markdown": "..."
},
"detailedMesssages": {
"text": "...",
"html": "...",
"markdown": "..."
},
"resource": {
"id": "...",
"url": "https://...",
"name": "...",
"field1:": "..."
}
}
因此您将收到一条包含行李请求 (400) 的失败消息。
也许你现在已经明白了,因为这个问题显然是 3 年前提出的,但我想 post 我的回答是为了在未来帮助其他人。
实际上有一种方法可以将 TFS 与 Microsoft Teams 连接起来!
从 TFS 转到 Service Hooks --> office 365 而不是(Service Hooks -> Web Hooks),因为 "Microsoft teams" 是 suite 365 的一部分,就这么简单:) .
PS: 当然你需要先在 Teams 上创建一个频道,然后点击 3 个点 --> Connectors --> Incoming Webhooks(configure) --> 给你的 hook 一个名字 - -> 创建。你完成了;只需复制 Teams 生成的 link 并在需要时将其传递到 TFS 中 ;)
我发现了 Microsoft Teams,我喜欢它。 我现在正在尝试触发从 TFS 到 Microsoft Teams 的 pullrequest 消息。 我有一个 Teams Group webhook url,可以与 curl 一起正常工作。 但是当我用 TFS (Service Hooks -> Web Hooks) 测试它时,我只会收到错误的请求。 你们中有人知道为什么会这样吗?
如果您使用的是 VSTS,您可以直接使用 Microsoft Teams 中的 Connectors 来实现您的需要。
- 从 Teams-General 打开连接器。
添加Visual Studio团队服务
添加吹图等相关配置
在相关 VSTS 项目中创建拉取请求,将在 Microsoft Teams 中收到一条消息
如果您使用的是TFS,暂时没有相关插件。似乎您正在使用 Incoming Webhook connector 。
Incoming Webhook 仅支持明信片。有关该卡如何构建的更多详细信息,请参阅此 link:Actionable Messages Reference。
但是,对于 Web Hooks in TFS,发送的 JSON 表示没有使用 "card type"。示例 JSON 如下所示:
{ "event.type": "git.push", ... "messsages": { "text": "...", "html": "...", "markdown": "..." }, "detailedMesssages": { "text": "...", "html": "...", "markdown": "..." }, "resource": { "id": "...", "url": "https://...", "name": "...", "field1:": "..." } }
因此您将收到一条包含行李请求 (400) 的失败消息。
也许你现在已经明白了,因为这个问题显然是 3 年前提出的,但我想 post 我的回答是为了在未来帮助其他人。
实际上有一种方法可以将 TFS 与 Microsoft Teams 连接起来!
从 TFS 转到 Service Hooks --> office 365 而不是(Service Hooks -> Web Hooks),因为 "Microsoft teams" 是 suite 365 的一部分,就这么简单:) .
PS: 当然你需要先在 Teams 上创建一个频道,然后点击 3 个点 --> Connectors --> Incoming Webhooks(configure) --> 给你的 hook 一个名字 - -> 创建。你完成了;只需复制 Teams 生成的 link 并在需要时将其传递到 TFS 中 ;)