App Center Webhooks

Importante

Visual Studio App Center está programado para retirarse el 31 de marzo de 2025. Aunque puede seguir usando Visual Studio App Center hasta que se retire por completo, hay varias alternativas recomendadas a las que puede considerar la posibilidad de migrar.

Obtenga más información sobre las escalas de tiempo y las alternativas de soporte técnico.

Información general

Los webhooks son una manera sencilla de notificar a las aplicaciones de terceros cuando se ha producido un evento especificado. El objetivo principal de los webhooks es comunicar información importante de App Center a los usuarios, en lugar de tener usuarios que lleguen al portal, o ejecutar llamadas API para recibir notificaciones cuando se produzcan determinados eventos.

Los webhooks de App Center permiten a los usuarios enviar notificaciones automáticas a las aplicaciones conectadas para los siguientes eventos:

  • Compilar:

    • Compilación correcta:

      • Siempre: cuando la aplicación se compila correctamente
      • Solo si se produjo un error anteriormente: cuando la aplicación se ha compilado correctamente después de una o varias compilaciones con errores
      • Nunca: no recibirá notificaciones para que la compilación se realice correctamente
    • Error de compilación:

      • Siempre: cuando la aplicación no se compila
      • Solo si se realizó correctamente anteriormente: cuando la aplicación no se pudo compilar después de una o varias compilaciones correctas
      • Nunca: no recibirá notificaciones de error de compilación.
  • Bloqueos: cuando se crea un grupo de bloqueos

  • Distribuir: cuando se publica una nueva versión en un grupo de distribución

    Nota

    Para Distribute, el webhook se desencadenará cuando se publique una nueva versión en un grupo de distribución. Si ha comprobado que no notifica a los evaluadores en el paso de revisión de la creación de una nueva versión, el webhook no se activará. Para Diagnósticos, el webhook se desencadenará para los nuevos grupos de errores con símbolos proporcionados. Si no se encuentra ningún símbolo para el nuevo grupo de errores, el webhook no se activará.

App Center enviará una carga HTTP POST a la dirección URL especificada del webhook. Los webhooks se configuran en el nivel de aplicación en la página Configuración de la aplicación especificada. Los usuarios deben tener permisos de administrador o desarrollador en la aplicación para crear y configurar los webhooks. Actualmente solo se admiten webhooks para Slack y Microsoft Teams. Para publicar en otras plataformas, puede escribir una función de Azure que traduzca la forma en que se POST ajustan a los requisitos de la plataforma.

Introducción

  1. Vaya a App Center y seleccione la aplicación específica que quiere para la integración de webhooks.

  2. En la aplicación, en el panel izquierdo, seleccione Configuración.

  3. En el panel de filas titulado Webhooks, vaya a la esquina derecha y haga clic en el icono de lápiz, que abre el panel Webhooks .

    Cómo editar la configuración del webhook

  4. En la esquina superior derecha, haga clic en el botón azul New Webhook (Nuevo webhook ) y escriba:

  5. ¡Listo! El webhook ahora se ha creado y habilitado. Puede crear varios webhooks repitiendo el paso 4.

  6. Cambie a la mano derecha extrema del webhook para probar, deshabilitar o eliminar el webhook.

    • test enviará una alerta de prueba a la aplicación conectada.
    • disable mantiene inactivo el webhook, pero está presente en el panel.
    • delete quitará el webhook del panel.

Cuando se producen estos eventos, las notificaciones de App Center se publican en las aplicaciones integradas. Por ejemplo, este es el aspecto de una notificación de compilación correcta con una aplicación de Slack conectada:

Creación de una notificación correcta en Slack

Carga de webhook de ejemplo

Estos son ejemplos de la carga del webhook JSON para:

  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. Bloqueo
{
  "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. Distribución
{
  "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"
}

También puede inspeccionar la carga mediante RequestBin. Para ello, vaya a RequestBin, haga clic en Crear una requestBin y, a continuación, copie la dirección URL generada en Url bin y pegue la dirección URL como webhook en App Center.

Compatibilidad con webhook personalizado

Para publicar en otras plataformas, puede escribir una función de Azure que traduzca la forma en que se POST ajustan a los requisitos de la plataforma. Para ello, cree una función de Azure, pegue la dirección URL en el campo Dirección URL del webhook en el paso 4 y App Center publicará la carga del webhook en ese punto de conexión. Después, puede modificar la carga a los requisitos de la plataforma.