Webhook App Center

Penting

Visual Studio App Center dijadwalkan untuk dihentikan pada 31 Maret 2025. Meskipun Anda dapat terus menggunakan Visual Studio App Center hingga sepenuhnya dihentikan, ada beberapa alternatif yang direkomendasikan yang dapat Anda pertimbangkan untuk bermigrasi.

Pelajari selengkapnya tentang garis waktu dukungan dan alternatif.

Gambaran Umum

Webhook adalah cara sederhana untuk memberi tahu aplikasi pihak ketiga ketika peristiwa tertentu telah terjadi. Tujuan utama webhook adalah untuk mengomunikasikan informasi penting dari App Center kepada pengguna daripada meminta pengguna datang ke portal, atau menjalankan panggilan API untuk diberi tahu ketika peristiwa tertentu terjadi.

Webhook App Center memungkinkan pengguna mengirim pemberitahuan otomatis ke aplikasi yang terhubung untuk peristiwa berikut:

  • Membangun:

    • Membangun keberhasilan:

      • Selalu: saat aplikasi Anda berhasil dibangun
      • Hanya jika sebelumnya gagal: saat aplikasi Anda berhasil dibangun setelah satu atau beberapa build gagal
      • Tidak Pernah: Anda tidak akan menerima pemberitahuan untuk keberhasilan build
    • Kegagalan build:

      • Selalu: saat aplikasi Anda gagal dibuat
      • Hanya jika sebelumnya berhasil: saat aplikasi Anda gagal dibuat setelah satu atau beberapa build berhasil
      • Tidak Pernah: Anda tidak akan menerima pemberitahuan untuk kegagalan build
  • Crash: saat grup crash dibuat

  • Distribusikan: saat versi baru dirilis ke grup distribusi

    Catatan

    Untuk Distribusikan, webhook akan dipicu saat versi baru dirilis ke grup distribusi. Jika Anda memeriksa tidak memberi tahu penguji di langkah Tinjau untuk membuat rilis baru, webhook tidak akan diaktifkan. Untuk Diagnostik, webhook akan dipicu untuk grup kesalahan baru dengan simbol yang disediakan. Jika tidak ada simbol yang ditemukan untuk grup kesalahan baru, webhook tidak akan diaktifkan.

App Center akan mengirim payload HTTP POST ke URL webhook yang ditentukan. Webhook dikonfigurasi di tingkat aplikasi di bawah halaman Pengaturan aplikasi yang Anda tentukan. Pengguna harus memiliki izin manajer atau pengembang di aplikasi untuk membuat dan mengonfigurasi webhook. Saat ini kami hanya mendukung webhook untuk Slack dan Microsoft Teams. Untuk memposting ke platform lain, Anda dapat menulis fungsi Azure yang menerjemahkan cara kami POST agar sesuai dengan persyaratan platform.

Memulai

  1. Navigasi ke App Center, dan pilih aplikasi tertentu yang Anda inginkan untuk integrasi webhook.

  2. Di aplikasi Anda, di panel paling kiri, pilih Pengaturan

  3. Di panel baris berjudul Webhooks, buka sudut kanan dan klik ikon pensil, yang memunculkan panel Webhooks .

    Cara mengedit pengaturan webhook

  4. Di sudut kanan atas, klik tombol Webhook Baru berwarna biru dan masukkan:

    • Nama webhook

    • URL Webhook

      Anda dapat memperoleh URL webhook dari pengaturan aplikasi terintegrasi Anda (misalnya, berikut adalah detail tentang cara mendapatkan URL webhook dari Microsoft Teams dan cara mendapatkan URL webhook dari Slack).

      Pilih menu dropdown untuk Pemberitahuan status build dan kotak centang untuk Crash dan Distribusikan pemberitahuan untuk memutuskan peristiwa apa yang akan memicu pemberitahuan webhook.

      Cara membuat webhook baru

  5. Selesai! Webhook Anda sekarang dibuat dan diaktifkan. Anda dapat membuat beberapa webhook dengan mengulangi langkah 4.

  6. Alihkan ke tangan kanan ekstrem webhook untuk menguji, menonaktifkan, atau menghapus webhook.

    • pengujian akan mengirim pemberitahuan pengujian ke aplikasi anda yang terhubung.
    • nonaktifkan membuat webhook tidak aktif tetapi ada di dasbor Anda.
    • hapus akan menghapus webhook dari dasbor Anda.

Ketika peristiwa ini terjadi, pemberitahuan App Center diposting ke dalam aplikasi terintegrasi Anda. Misalnya, berikut adalah tampilan pemberitahuan keberhasilan Build dengan aplikasi Slack yang terhubung:

Membangun pemberitahuan keberhasilan di Slack

Contoh payload webhook

Berikut adalah contoh payload webhook JSON untuk:

  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. Kecelakaan
{
  "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":"48573473-f069-4715-8bab-9ae42cec48b2"
}
  1. Distribusikan
{
  "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":"f37c6194-9ac9-4504-be61-55re334r5649"
}

Anda juga dapat memeriksa payload dengan menggunakan RequestBin. Untuk melakukannya, navigasikan ke RequestBin, klik Buat RequestBin, lalu salin URL yang dihasilkan di bawah URL Bin dan tempelkan URL sebagai webhook di App Center.

Dukungan webhook kustom

Untuk memposting ke platform lain, Anda dapat menulis fungsi Azure yang menerjemahkan cara kami POST agar sesuai dengan persyaratan platform. Untuk melakukannya, buat fungsi Azure, tempelkan URL di bawah bidang URL Webhook di langkah 4, dan App Center akan memposting payload webhook ke titik akhir tersebut. Anda kemudian dapat memodifikasi payload ke persyaratan platform.