Enviar notificaciones y actualizaciones a través de Microsoft Teams te mantendrá a ti y a tus compañeros de trabajo informados a tiempo. Configurar estos eventos desde tu aplicación de Ubidots requiere una pequeña integración utilizando la aplicación “Incoming Webhooks”, que es proporcionada por Microsoft y es una forma sencilla de publicar mensajes de Ubidots en Teams.
Requisitos
Cuenta de Ubidots (prueba o licencia)
Cuenta de Microsoft Teams con el conector "Incoming Webhooks" habilitado. Consulta "Crear Incoming Webhooks".
1. Configura un webhook entrante en Microsoft Teams
Para configurar correctamente el conector Incoming Webhooks en tu aplicación de Microsoft Teams, sigue estos pasos:
Abre el canal en el que deseas agregar el webhook y selecciona ••• en la esquina superior derecha.
Selecciona Conectores del menú desplegable.
Busca Incoming Webhook y selecciona Agregar.
Selecciona Configurar, proporciona un nombre y sube una imagen para tu webhook.
Copia y guarda la URL única del webhook presente en el diálogo. La URL se asigna al canal y puedes usarla para enviar información a Teams.
2. Crea un nuevo evento en Ubidots
Después de configurar un webhook entrante en tu aplicación de Teams, ve a tu cuenta de Ubidots, dirígete a la pestaña “data” → "Eventos" y pasa el cursor sobre el botón “+” ubicado en la esquina superior derecha de la pantalla. Aquí puedes crear un evento común simplemente haciendo clic en el botón o crear un evento global/evento programado dependiendo de tus necesidades.
A continuación, configura los desencadenantes del evento con una lógica AND/OR. Para obtener detalles adicionales sobre cómo configurar estos desencadenantes, consulta sus propias guías: basados en valores, inactividad, geocerca.
3. Configura la acción Trigger Webhook
Para configurar una acción Trigger Webhook en tu cuenta de Ubidots, sigue estos pasos:
Llena todos los siguientes campos:
Selecciona un método HTTP POST.
Ingresa la URL que guardaste del último paso de la "Sección 1. Configura un Webhook Entrante en Microsoft Teams".
Ingresa el encabezado Content-type con application/json
Personaliza el “trigger activo” y los mensajes de “back to normal” (opcional) que se enviarán a Teams. Mira algunos ejemplos en la cuarta sección de esta guía, "Ejemplos JSON para mensajes de Microsoft Teams".
Usando el icono de etiqueta en la esquina superior derecha del campo “payload” puedes agregar fácilmente información como ID de dispositivo, marca de tiempo, nombre de variable, etc.
Opcionalmente, habilita la opción “repetir acción” si deseas configurar la variable varias veces mientras se desencadena el evento. Puedes elegir con qué frecuencia y hasta cuántas veces se repetirá la acción. Hay un límite de 50 repeticiones de acción.
Haz clic en “guardar” una vez que termines de configurar la acción y en “siguiente”, a menos que desees configurar múltiples acciones.
Después de completar la configuración de la acción, pasarás al paso final, la pestaña de “configuración”. Allí, nombrarás el evento y le darás una descripción (opcional).
Otro paso opcional es usar una etiqueta en el evento. Esta es una gran herramienta para controlar lo que tus usuarios finales ven en tu aplicación. En este caso, por ejemplo, podrías decidir que tu usuario final vea un evento, pero no otro, usando etiquetas. Aprende más sobre etiquetas aquí.
Finalmente (a menos que el evento que creaste sea un evento programado), determina la ventana de actividad en la que se deben ejecutar los eventos. Un evento puede tener múltiples ventanas activas haciendo clic en el botón “+ agregar ventana” y configurándolas en consecuencia. Después de terminar esto, haz clic en “guardar” y tu evento se desplegará.
4. Ejemplos JSON para mensajes de Microsoft Teams
Después de configurar la acción Trigger Webhook en tu evento, aquí hay algunos ejemplos JSON que puedes agregar a tu payload con su respectivo resultado en la aplicación.
"type": "message", con un solo texto.
{
"type": "message",
"text": "Hello, this is a test of Microsoft Teams Incoming Webhook"
}
"type": "message", sin texto y adjuntando una imagen en una Hero Card.
{
"type": "message",
"attachments": [
{
"contentType": "application/vnd.microsoft.card.hero",
"content": {
"title": "Sample Hero Card",
"subtitle": "This is a subtitle",
"text": "This is the main content of the card.",
"images": [
{
"url": "https://example.com/sample-image.png"
}
],
"buttons": [
{
"type": "openUrl",
"title": "Learn More",
"value": "https://example.com/learn-more"
},
{
"type": "imBack",
"title": "Ask a Question",
"value": "How can I help you?" }
],
"additionalKey": "Additional Value"
}
}
]
}
"type": "", con texto requerido y agregando diferentes claves
{
"type": "",
"text": "Hello, this is a test of Microsoft Teams Incoming Webhook",
"title": "Ubidots",
"themeColor": "#6d77b3",
"sections": [
{
"title": "Section 1",
"text": "This is the content of section 1."
},
{
"title": "Section 2",
"text": "This is the content of section 2."
}
],
"potentialAction": [
{
"@context": "http://schema.org",
"@type": "ActionCard",
"name": "Open Link",
"inputs": [
{
"@type": "TextInput",
"id": "linkUrl",
"isMultiline": False,
"title": "Enter URL"
}
],
"actions": [
{
"@type": "HttpPOST",
"name": "Open",
"target": "linkUrl"
}
]
},
{
"@type": "OpenUri",
"name": "Visit Website",
"targets": [
{
"os": "default",
"uri": "https://example.com"
}
]
}
]
}