分享方式:


與服務掛鉤整合

Azure DevOps Services |Azure DevOps Server 2022 |Azure DevOps Server 2020

當 Azure DevOps 專案中發生事件時,您可以使用服務勾點在其他服務上執行工作。

例如,您可以使用服務掛鉤,當工作項目在 Azure DevOps 中被創建時,自動在 Trello 中建立卡片。 或者,當組建失敗時,您可以自動將推播通知傳送給小組的行動裝置。 您也可以在自定義應用程式和服務中使用服務勾點,以更有效率的方式在專案中發生事件時驅動活動。

服務掛勾如何運作?

服務鉤子發行者定義了一組您可以訂閱的事件訂閱 會接收這些事件,並定義根據事件要採取的 動作

訂用帳戶也會以取用者為目標,這些是外部服務,可在事件發生時執行自己的動作。

圖中標示為「事件」的箭號從出版者方塊指向訂閱方塊,且從訂閱方塊有箭號指向消費者和動作方塊。

注意

若要使用服務掛鉤,您必須允許特定 IP 位址範圍,以便對服務端點進行輸入連線。 服務端點是提供給服務勾點的一組屬性。 如需詳細資訊,請參閱 IP位址和範圍限制

可用的服務

下列服務可作為服務掛鉤的目標。 如需其他與 Azure DevOps 整合之應用程式和服務的詳細資訊,請參閱 Visual Studio Marketplace

服務 支援的事件 支援的動作 訂用帳戶管理
Visual Studio App Center 工作專案已更新 傳送通知 在 App Center 中
AppVeyor 程式碼已推送 觸發 AppVeyor 建置 在 AppVeyor 中
Azuqua 全部 將事件張貼至流程語言物件 (FLO) 在 Azuqua
Azure App Service 程式碼已推送 部署 Web 應用程式 在 App Service 中
Azure 服務匯流排 全部 將訊息傳送至 Azure 通知中樞、服務總線佇列或服務總線主題 在 Azure DevOps 中
Azure 儲存體 全部 在記憶體佇列中插入訊息 在 Azure DevOps 中
建置已完成,程式代碼已推送 將建置排入佇列 在 Azure DevOps 中
Datadog 全部 在 Datadog 中張貼事件 在 Azure DevOps 中
Grafana 發行部署已完成 將批註新增至 Grafana 資料庫 在 Azure DevOps 中
詹金斯 建置已完成、程式代碼推送、PR 合併嘗試 觸發泛型或 Git 組建 在 Azure DevOps 中
Microsoft 團隊 全部 將訊息發佈至頻道 在 Teams 中
MyGet 建置已完成,程式代碼已推送 將 NuGet 套件發佈至 MyGet,觸發 MyGet 組建 在 MyGet 中
Office 365 全部 將訊息張貼至群組 在 Office 365 中
鬆弛 全部 將訊息發佈至頻道 在 Azure DevOps 中
Trello 全部 建立卡片或清單 在 Azure DevOps 中
UserVoice 已建立工作專案,工作專案已更新 傳送連結的工作專案事件 在 UserVoice 中
Webhook 全部 透過 HTTP 張貼要求 在 Azure DevOps 中
工作場所傳訊應用程式 全部 傳送通知 職場傳訊應用程式中
Zapier 全部 傳送通知 在 Zapier 中
Zendesk 已批注的工作專案 在票證中建立私人批注 在 Azure DevOps 中
服務 支援的事件 支援的動作 訂用帳戶管理
Azure 服務匯流排 全部 將訊息傳送至 Azure 通知中樞、服務總線佇列或服務總線主題 在 Azure DevOps 中
Azure 儲存體 全部 在記憶體佇列中插入訊息 在 Azure DevOps 中
建置已完成,程式代碼已推送 將建置排入佇列 在 Azure DevOps 中
Datadog 全部 在 Datadog 中張貼事件 在 Azure DevOps 中
Grafana 發行部署已完成 將批註新增至 Grafana 資料庫 在 Azure DevOps 中
詹金斯 建置已完成、程式代碼推送、PR 合併嘗試 觸發泛型或 Git 組建 在 Azure DevOps 中
Microsoft 團隊 全部 將訊息發佈至頻道 在 Teams 中
Office 365 全部 將訊息張貼至群組 在 Office 365 中
鬆弛 全部 將訊息發佈至頻道 在 Azure DevOps 中
Trello 全部 建立卡片或清單 在 Azure DevOps 中
UserVoice 已建立工作專案,工作專案已更新 傳送連結的工作專案事件 在 UserVoice 中
Webhook 全部 透過 HTTP 張貼要求 在 Azure DevOps 中
Zendesk 已批注的工作專案 在票證中建立私人批注 在 Azure DevOps 中

建立訂用帳戶

若要整合其中一項服務與 Azure DevOps,請建立訂用帳戶。 在許多情況下,您也需要設定目標服務。 如需詳細資訊,請參閱您想要整合之服務的檔。

  1. 移至您的項目,選取 [ 項目設定],然後選取 [服務勾點]。

    顯示 Azure DevOps 專案的螢幕快照。側邊會反白顯示 [專案設定] 和服務連接埠。

  2. 選取 [建立訂閱]。

    Azure DevOps 專案的 [服務勾點] 頁面螢幕快照。[建立訂用帳戶] 按鈕會反白顯示。

  3. 選取您想要整合的服務。

    [服務] 對話框的螢幕快照。會列出許多服務、選取 Trello,並顯示 Trello 的描述。

  4. 選取要觸發的事件,以及任何適用的篩選。

    [觸發程式] 對話框的螢幕快照。已選取 [程式碼推送事件]。篩選已設定在存放庫和群組上。

  5. 選取在目標服務上執行的動作。

    注意

    可用的動作取決於您選取的事件類型。

    [動作] 對話框的螢幕快照。已選取 [建立卡片]。欄位可用於指定令牌、面板和其他設定。

  6. 若要確認設定正確,請測試訂用帳戶,然後完成精靈。

    [測試通知] 視窗的螢幕快照。在 [摘要] 索引標籤中,關於推送的訊息會顯示 [成功] 狀態。

    測試通知視窗的螢幕快照。要求索引標籤顯示一個向 Trello 發送的 POST 請求,其中包含已推送提交的相關信息。

常見問題集

問:我需要哪些許可權才能設定訂用帳戶?

答:您需要 [編輯訂閱 ] 和 [ 檢視訂閱 ] 許可權。 根據預設,只有專案系統管理員具有這些權限。 若要將他們直接授與其他使用者,您可以使用 命令行工具安全性 REST API。

若要將 檢視 許可權授與群組,請參閱 在服務攔截中設定群組的檢視許可權

問:授與編輯訂閱和檢視訂閱許可權的安全性影響為何?

答:擁有 [編輯訂閱 ] 和 [ 檢視訂閱 ] 權限的使用者可以:

  • 查看專案中的所有訂用帳戶。
  • 請參閱專案中所有訂用帳戶的通知歷程記錄。
  • 在專案中建立任何類型的服務攔截訂閱。

如果用戶為沒有許可權存取的資源設定訂用帳戶,就不會觸發訂用帳戶。

例如,假設您建立一個訂閱,用於在特定區域路徑中的工作項目被更新時發送通知。 如果您沒有該區域路徑中工作專案的存取權,則不會傳送通知。 不過,如果其他使用者可以存取工作項目,您可以看到通知歷程,其中包含提醒他們了解更新的訂閱通知。

問:我可以以程序設計方式建立專案的服務勾點訂閱嗎?

A: 可以。 如需詳細資訊,請參閱 以程序設計方式建立服務勾點訂閱。

我授權應用程式後,是否可以取消其存取我的組織的權限?

A: 可以。 您可以從個人資料中撤銷授權。

  1. 移至 https://visualstudio.microsoft.com。 選取您的配置檔相片,然後選取 [Visual Studio 配置檔]。

    請確定當您管理授權時,從 Visual Studio 網站開始,https://visualstudio.microsoft.com。 您可以從該網站存取正確的授權管理功能實作。 不要從您的組織 (https://dev.azure.com/{organization-name}) 開始。

  2. 選取 [管理授權]。

    Visual Studio 個人資料頁面的螢幕快照,其中包含使用者的聯絡資訊。在 [授權] 區段中,[管理應用程式] 被反白顯示。

  3. 撤銷您不想再允許的任何授權。

    [授權] 對話框的螢幕截圖。顯示了許可權清單,並醒目提示撤銷連結。

問:為什麼我無法再為 HipChat 設定服務勾點?

答:Atlassian 不再支援 HipChat。 如需詳細資訊,請參閱 Atlassian 常見問題