次の方法で共有


App Center Webhook

重要

Visual Studio App Center は、2025 年 3 月 31 日に廃止される予定です。 完全に廃止されるまで Visual Studio App Center を引き続き使用できますが、移行を検討できる推奨される代替手段がいくつかあります。

詳細については、サポートタイムラインと代替手段に関するページを参照してください。

概要

Webhook は、指定したイベントが発生したときにサードパーティアプリケーションに通知する簡単な方法です。 webhook のメインの目的は、ユーザーがポータルに来るのではなく、App Center からユーザーに重要な情報を伝えるか、特定のイベントが発生したときに通知されるように API 呼び出しを実行することです。

App Center の Webhook を使用すると、ユーザーは次のイベントに対して接続されているアプリケーションに自動通知を送信できます。

  • ビルド:

    • ビルドの成功:

      • 常に: アプリが正常にビルドされたとき
      • 以前に失敗した場合のみ: 1 つ以上のビルドが失敗した後にアプリが正常にビルドされた場合
      • なし: ビルドの成功に関する通知を受け取りません
    • ビルドエラー:

      • 常に: アプリのビルドに失敗した場合
      • 以前に成功した場合のみ: 1 つ以上のビルドが成功した後にアプリのビルドに失敗した場合
      • なし: ビルドエラーの通知を受け取りません
  • クラッシュ: クラッシュ グループが作成されたとき

  • 配布: 新しいバージョンが配布グループにリリースされたとき

    注意

    配布の場合、新しいバージョンが配布グループにリリースされると、webhook がトリガーされます。 [新しいリリースを作成するレビュー] ステップで [テスト担当者に通知しない] をオンにした場合、Webhook は起動しません。 診断の場合、シンボルが指定された新しいエラー グループに対して webhook がトリガーされます。 新しいエラー グループのシンボルが見つからない場合、webhook は起動しません。

App Center は、Webhook の指定された URL に HTTP POST ペイロードを送信します。 Webhook は、指定したアプリの [設定] ページのアプリ レベルで構成されます。 ユーザーは、Webhook を作成して構成するために、アプリのマネージャーまたは開発者のアクセス許可を持っている必要があります。 現在、 SlackMicrosoft Teams の Webhook のみがサポートされています。 他のプラットフォームに投稿するには、プラットフォームの要件に合わせて Microsoft POST の方法を変換する Azure 関数を記述できます。

作業の開始

  1. App Center に移動し、Webhook の統合に使用する特定のアプリを選択します。

  2. アプリの左端のパネルで、[設定] を選択 します

  3. Webhooks というタイトルの行パネルで、右上隅に移動し、鉛筆アイコンをクリックします。これにより、Webhooks パネルが表示されます。

    Webhook の設定を編集する方法

  4. 右上隅にある青い [新しい Webhook ] ボタンをクリックし、次のように入力します。

    • Webhook 名

    • Webhook URL

      統合アプリケーションの設定から Webhook URL を取得できます (たとえば、 Microsoft Teams から Webhook URL を取得 する方法と 、Slack から Webhook URL を取得する方法の詳細を次に示します)。

      [ビルドの状態通知] のドロップダウン を選択し、[クラッシュ] と [通知の配布 ] のチェック ボックスをオン にして、Webhook アラートをトリガーするイベントを決定します。

      新しい Webhook を作成する方法

  5. これで完了です。 これで Webhook が作成され、有効になります。 手順 4 を繰り返して、複数の Webhook を作成できます。

  6. Webhook の右端に切り替えて、Webhook を テスト無効化、または 削除 します。

    • test は、接続されているアプリケーションにテスト アラートを送信します。
    • disable を使用 すると、Webhook は非アクティブですが、ダッシュボードに存在します。
    • 削除 すると、ダッシュボードから Webhook が削除されます。

これらのイベントが発生すると、App Center 通知が統合アプリケーションに投稿されます。 たとえば、接続された Slack アプリケーションでのビルド成功通知の外観を次に示します。

Slack で成功通知を作成する

Webhook ペイロードの例

JSON Webhook ペイロードの例を次に示します。

  1. Build
{
  "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"
}
  1. クラッシュ
{
  "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"
}
  1. 配布
{
  "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 を Webhook として App Center に貼り付けます。

カスタム Webhook のサポート

他のプラットフォームに投稿するには、プラットフォームの要件に合わせた方法POSTを変換する Azure 関数を記述できます。 これを行うには、Azure 関数を作成し、手順 4[Webhook URL] フィールドの下に URL を貼り付けると、App Center によって Webhook ペイロードがそのエンドポイントにポストされます。 その後、プラットフォームの要件に合わせてペイロードを変更できます。