App Center Webhook
重要
Visual Studio App Center 已排定於 2025 年 3 月 31 日淘汰。 雖然您可以繼續使用 Visual Studio App Center,直到它完全淘汰為止,但有數個建議您考慮移轉至的建議替代方案。
概觀
Webhook 是一種簡單的方式,可在發生指定的事件時通知第三方應用程式。 Webhook 的主要目標是將重要資訊從 App Center 傳達給使用者,而不是讓使用者前往入口網站,或執行 API 呼叫,以在發生特定事件時收到通知。
App Center 的 Webhook 可讓使用者針對下列事件將自動通知傳送至已連線的應用程式:
組建:
建置成功:
- 一律:當您的應用程式成功建置時
- 只有在先前失敗時:當應用程式在一或多個失敗的組建之後成功建置時
- 永不:您不會收到建置成功的通知
建置失敗:
- 一律:當應用程式無法建置時
- 只有在先前成功時:當應用程式在一或多個成功建置之後無法建置時
- 永不:您不會收到建置失敗的通知
當機:建立當機群組時
散發:當新版本發行至通訊群組時
注意
針對 [散發],當新版本發行至通訊群組時,將會觸發 Webhook。 如果您在建立新版本的檢閱步驟中未通知測試人員,則不會引發 Webhook。 針對診斷,系統會針對提供符號的新錯誤群組觸發 Webhook。 如果找不到新錯誤群組的符號,則不會引發 Webhook。
App Center 會將 HTTP POST 承載傳送至 Webhook 的指定 URL。 Webhook 是在指定應用程式的 [ 設定 ] 頁面底下的應用程式層級設定。 用戶必須在應用程式中擁有管理員或開發人員許可權,才能建立及設定 Webhook。 我們目前僅支援 Slack 和 Microsoft Teams 的 Webhook。 若要張貼到其他平臺,您可以撰寫 Azure 函 式,以轉譯我們 POST
符合平臺需求的方式。
開始使用
流覽至 App Center,然後選取您想要進行 Webhook 整合的特定應用程式。
在您的應用程式中,在最左邊的面板中,選取 [ 設定]
在標題為 Webhook 的數據列面板中,移至右側角落,然後按兩下 鉛筆圖示,以顯示 [Webhook] 面板。
在右上角,按兩下藍色 的 [新增 Webhook] 按鈕,然後輸入:
Webhook 名稱
Webhook URL
例如,您可以從整合應用程式的設定取得 Webhook URL (,以下是如何 從 Microsoft Teams 取得 Webhook URL 的詳細數據,以及如何 從 Slack) 取得 Webhook URL 。
選取 [建置狀態通知] 的 下拉式清單 ,以及 [當機] 和 [散發通知] 的複選框 ,以決定哪些事件會觸發 Webhook 警示。
完成! 您的 Webhook 現在已建立並啟用。 您可以重複 步驟 4 來建立多個 Webhook。
切換至 Webhook 的最右邊,以測試、停用或刪除 Webhook。
- test 會將測試警示傳送至已連線的應用程式。
- disable 會讓 Webhook 保持非使用中狀態,但會出現在您的儀錶板中。
- delete 會從儀錶板中移除 Webhook。
當這些事件發生時,App Center 通知會張貼到整合式應用程式中。 例如,以下是建置成功通知與已連線 Slack 應用程式的外觀:
Webhook承載範例
以下是 JSON Webhook 承載的範例:
- 建置
{
"app_name": "myFirstApp",
"branch": "main",
"build_status": "Succeeded",
"build_id": "33",
"build_link": "https://appcenter.ms/users/{user-id}/apps/{app-name}/build/branches/main/builds/33",
"build_reason": "manual",
"finish_time": "2018-06-14T23:59:05.2542221Z",
"icon_link": "https://appcenter-filemanagement-distrib4ede6f06e.azureedge.net/f7794e4c-42f1-4e7c-8013-07ed2e1b733d/ic_launcher.png?sv=2020-02-18&sr=c&sig=gs4JfcWjpKeYH%2F%2Fg0jEtSKKbeRkug9q%2FldslmzzeOg0%3D&se=2020-02-26T08%3A57%3A58Z&sp=r",
"notification_settings_link": "https://appcenter.ms/users/{user-id}/apps/{app-name}/settings/notifications",
"os": "iOS",
"start_time": "2018-06-14T23:57:03.4379381Z",
"source_version": "55820a357ba26831f2eeb3be9973a4ef20618b73",
"sent_at": "2018-06-14T23:59:08.4897604Z"
}
- 毀損
{
"id":"3698593379u",
"name":"android.app.Activity.performResume (Activity.java:5084)",
"reason":"android.app.SuperNotCalledException",
"url":"https://appcenter.ms/orgs/{org-id}/apps/{app-name}/crashes/errors/3698273379u",
"app_display_name":"{app-name}",
"app_platform":"Java",
"app_version":"2.0.1(42)",
"stack_trace":[],
"affected_users":0,
"crash_count":0,
"sent_at":"2019-05-16T23:47:31.4881512Z",
"app_id":"00001111-aaaa-2222-bbbb-3333cccc4444"
}
- 散發
{
"app_name":"{app-name}",
"app_display_name":"{app-display-name}",
"release_id":"123",
"platform":"Android",
"uploaded_at":"2018-07-17T20:46:14Z",
"fingerprint":"0abed1269e4ae3bf524e4cc7165f4f34",
"release_notes":"",
"version":"74",
"short_version":"1.7.0",
"min_os":"4.0.3",
"mandatory_update":true,
"size":2634279,
"provisioning_profile_name":null,
"provisioning_profile_type":null,
"bundle_identifier":"com.microsoft.appcenter.test",
"install_link":"https://install.appcenter.ms/orgs/{org-name}/apps/{app-name}/releases/123?source=email",
"icon_link":"https://appcenter-filemanagement-distrib4ede6f06e.azureedge.net/f7794e4c-42f1-4e7c-8013-07ed2e1b733d/ic_launcher.png?sv=2020-02-18&sr=c&sig=gs4JfcWjpKeYH%2F%2Fg0jEtSKKbeRkug9q%2FldslmzzeOg0%3D&se=2020-02-26T08%3A57%3A58Z&sp=r",
"distribution_group_id":"1a5a0605-4b9c-4de2-9a35-t569456df0cc",
"installable":true,
"sent_at":"2019-05-16T23:20:08.7799314Z",
"app_id":"11112222-bbbb-3333-cccc-4444dddd5555"
}
您也可以使用 RequestBin 檢查承載。 若要這樣做,請流覽至 RequestBin,按兩下 [ 建立 RequestBin],然後在 [Bin URL ] 底下複製產生的 URL,然後將 URL 貼上為 App Center 中的 Webhook。
自訂 Webhook 支援
若要張貼到其他平臺,您可以撰寫 Azure 函 式,以轉譯我們 POST
符合平臺需求的方式。 若要這樣做,請建立 Azure 函式,將 URL 貼到步驟 4 中的 [Webhook URL] 字段底下,而 App Center 會將 Webhook 承載張貼至該端點。 然後,您可以將承載修改為平臺的需求。