Crear webhook saliente

El webhook saliente actúa como bot y busca mensajes en canales mediante @mention. Envía notificaciones a servicios web externos y responde con mensajes enriquecidos, que incluyen tarjetas e imágenes. Ayuda a omitir el proceso de creación de bots a través del Microsoft Bot Framework.

Características clave del webhook saliente

En la tabla siguiente se proporcionan las características y la descripción de los webhooks salientes:

Características Descripción
Configuración con ámbito Los webhooks están en el ámbito del nivel de equipo. El proceso de configuración obligatorio para cada uno agrega un webhook saliente.
Mensajería reactiva Los usuarios deben usar @mention para que el webhook reciba mensajes. Actualmente, los usuarios solo pueden enviar mensajes a un webhook saliente en canales públicos y no dentro del ámbito personal o privado.
Intercambio de mensajes HTTP estándar Las respuestas aparecen en la misma cadena que el mensaje de solicitud original y pueden incluir cualquier contenido de mensaje de Bot Framework, por ejemplo, texto enriquecido, imágenes, tarjetas y emojis. Aunque los webhooks salientes pueden usar tarjetas, no pueden usar ninguna acción de tarjeta excepto openURL para .
Teams Compatibilidad con métodos api Los webhooks salientes envían un HTTP POST a un servicio web y obtienen una respuesta. No pueden tener acceso a otras API, como recuperar la lista o la lista de canales de un equipo.

Crear webhooks salientes

Cree webhooks salientes y agregue bots personalizados a Teams.

Para crear un webhook saliente

  1. Seleccione Teams en el panel izquierdo. La Teams aparece:

    Canal de Teams

  2. En la Teams, seleccione el equipo necesario para crear un webhook saliente y seleccione el •••. En el menú desplegable, seleccione Administrar equipo:

    Crear webhook saliente

  3. Seleccione la pestaña Aplicaciones en la página del canal:

    Crear un webhook saliente

  4. Seleccione Crear un webhook saliente:

    Crear webhooks salientes

  5. Escriba los siguientes detalles en la página Crear un webhook saliente:

    • Nombre: el título del webhook y @mention pestaña.
    • Dirección URL de devolución de llamada: el extremo HTTPS que acepta cargas JSON y recibe solicitudes POST de Teams.
    • Descripción: una cadena detallada que aparece en la tarjeta de perfil y en el panel de aplicaciones de nivel de equipo.
    • Imagen de perfil: icono de aplicación para el webhook, que es opcional.
  6. Seleccione Crear. El webhook saliente se agrega al canal del equipo actual:

    crear webhook saliente

Aparece un cuadro de diálogo Código de autenticación de mensajes (HMAC) basado en hash. Es un token de seguridad que se usa para autenticar llamadas entre Teams y el servicio externo designado.

Nota

El webhook saliente está disponible para los usuarios del equipo, solo si la dirección URL es válida y los tokens de autenticación de servidor y cliente son iguales. Por ejemplo, un protocolo de enlace HMAC.

En el siguiente escenario se proporcionan los detalles para agregar un webhook saliente:

  • Escenario: insertar notificaciones de estado de cambio en un servidor Teams base de datos de canales a la aplicación.
  • Ejemplo: tienes una línea de aplicación empresarial que realiza un seguimiento de todas las operaciones CRUD, como crear, leer, actualizar y eliminar. Estas operaciones se realizan en los registros de los empleados Teams canal de recursos humanos en un Office 365 arrendamiento.

Crear una dirección URL en el servidor de la aplicación para aceptar y procesar una solicitud POST con una carga JSON

El servicio recibe mensajes en un esquema de mensajería de servicio de bots de Azure estándar. El conector de Bot Framework es un servicio RESTful que permite procesar el intercambio de mensajes con formato JSON a través de protocolos HTTPS, tal como se documenta en la API de servicio de bots de Azure. Como alternativa, puede seguir el SDK de Microsoft Bot Framework para procesar y analizar mensajes. Para obtener más información, vea Overview of Azure Bot Service.

Los webhooks salientes están en el ámbito team del nivel y son visibles para todos los miembros del equipo. Los usuarios deben @ mencionar el nombre del webhook saliente para invocarlo en el canal.

Nota

  • Puede enviar mensajes de texto, tarjetas de héroe y tarjeta adaptables como datos adjuntos con el webhook saliente.
  • Las tarjetas admiten el formato. Para obtener más información, vea format cards with markdown.

Los siguientes códigos son ejemplos de una respuesta de tarjeta adaptable:

string content = await this.Request.Content.ReadAsStringAsync();
Activity incomingActivity = JsonConvert.DeserializeObject<Activity>(content);

var Card = new AdaptiveCard(new AdaptiveSchemaVersion("1.4"))
{
    Body = new List<AdaptiveElement>()
    {
        new AdaptiveTextBlock(){Text= $"Request sent by: {incomingActivity.From.Name}"},
        new AdaptiveImage(){Url=new Uri("https://c.s-microsoft.com/en-us/CMSImages/DesktopContent-04_UPDATED.png?version=43c80870-99dd-7fb1-48c0-59aced085ab6")},
        new AdaptiveTextBlock(){Text="Sample image for Adaptive Card.."}
    }
};

var attachment = new Attachment()
{
    ContentType = AdaptiveCard.ContentType,
    Content = Card
};

var sampleResponseActivity = new Activity
{
    Attachments = new [] { attachment }
};

return sampleResponseActivity;

Ejemplo de código

Ejemplo de nombre Descripción .NET Node.js
Webhooks salientes Ejemplos para crear bots personalizados que se usarán en Microsoft Teams. View Ver

Consulte también