Channel Messages
Channel Messages es un componente que te permite interactuar con los canales de Microsoft Teams directamente desde tu dashboard de Nappai. Con él puedes enviar mensajes nuevos, leer los últimos mensajes de un canal, obtener un mensaje específico o responder a uno existente, todo sin salir de la plataforma.
¿Cómo funciona?
El componente se conecta a la API de Microsoft Teams mediante una credencial que ya has configurado en Nappai. Cuando seleccionas una operación, el componente envía una solicitud HTTP a los endpoints correspondientes de Teams. Los datos de entrada se envían en el cuerpo de la petición y la respuesta se devuelve como un objeto Data que puedes usar en los siguientes pasos de tu flujo. Si eliges la operación Reply Message, el componente también incluye el ID del mensaje original para que la respuesta aparezca como hilo.
Operaciones
Este componente ofrece varias operaciones que puedes seleccionar según lo que necesites hacer. Solo puedes usar una operación a la vez:
- Send Message Channel: Envía un nuevo mensaje a un canal de Teams.
- Get Channel Messages: Recupera los últimos mensajes de un canal (puedes limitar cuántos quieres ver).
- Get Message from Channel: Obtiene un mensaje específico por su ID.
- Reply Message: Responde a un mensaje existente dentro del mismo canal.
Para usar el componente, primero selecciona la operación que necesitas en el campo “Operation” (Operación).
Entradas
Modo de Mapeo (Mapping Mode)
Este componente cuenta con un modo especial llamado “Mapping Mode” (Modo de Mapeo). Cuando activas este modo mediante el interruptor, se habilita una entrada adicional llamada “Mapping Data” y cada campo de entrada te ofrece tres formas diferentes de proporcionar datos:
- Fixed (Fijo): Escribes el valor directamente en el campo.
- Mapped (Mapeado): Conectas la salida de otro componente para usar su resultado como valor.
- Javascript: Escribes código Javascript para calcular el valor dinámicamente.
Esta flexibilidad te permite crear flujos de trabajo más dinámicos y conectados.
Campos de Entrada
Los siguientes campos están disponibles para configurar este componente. Cada campo puede estar visible en diferentes operaciones:
-
Attachments: Lista de archivos o enlaces que quieres adjuntar al mensaje. Cada elemento debe ser un diccionario con las claves
attachment_name
,url
,file_path
ofile_id
.- Visible en: Send Message Channel
-
Operation: Selecciona la operación que quieres ejecutar.
- Visible en: Send Message Channel, Get Channel Messages, Get Message from Channel, Reply Message
-
Channel ID: Identificador del canal de Teams donde se enviará o leerá el mensaje.
- Visible en: Send Message Channel, Get Channel Messages, Get Message from Channel, Reply Message
-
Mapping Mode: Habilita el modo de mapeo para procesar varios registros en lote.
- Visible en: Send Message Channel, Get Channel Messages, Get Message from Channel, Reply Message
-
Message Count: Número de mensajes que quieres recuperar cuando usas la operación Get Channel Messages (por defecto 20).
- Visible en: Get Channel Messages
-
Message ID: Identificador del mensaje que quieres leer o al que quieres responder.
- Visible en: Get Message from Channel, Reply Message
-
Message Text: Contenido del mensaje que vas a enviar o responder.
- Visible en: Send Message Channel, Reply Message
-
Team ID: Identificador del equipo de Teams donde se encuentra el canal.
- Visible en: Send Message Channel, Get Channel Messages, Get Message from Channel, Reply Message
-
Tool Name: Nombre que se mostrará al agente cuando el componente se use como herramienta.
- Visible en: Send Message Channel, Get Channel Messages, Get Message from Channel, Reply Message
-
Tool Description: Descripción detallada de lo que hace el componente, útil para que el agente lo elija correctamente.
- Visible en: Send Message Channel, Get Channel Messages, Get Message from Channel, Reply Message
-
Tools arguments metadata: Metadatos que definen los argumentos de la herramienta.
- Visible en: Send Message Channel, Get Channel Messages, Get Message from Channel, Reply Message
Credencial
Este componente necesita una credencial de tipo Microsoft Teams.
- Configura la credencial en la sección de credenciales de Nappai.
- Selecciona esa credencial en el campo Credential del componente.
(Los campos de la credencial, como Client ID o Client Secret, no se muestran aquí.)
Salidas
- Data: Resultado de la operación (por ejemplo, el mensaje enviado, la lista de mensajes recuperados, etc.).
- Tool: Representación del componente como herramienta para que un agente pueda invocarlo.
Ejemplo de Uso
Enviar un mensaje con adjunto
- Selecciona la operación Send Message Channel.
- Ingresa el Team ID y el Channel ID.
- Escribe el Message Text que quieres enviar.
- En la sección Attachments, añade un objeto con
attachment_name
yurl
(ofile_path
). - Activa Mapping Mode si quieres enviar el mismo mensaje a varios canales a la vez.
- Ejecuta el flujo y revisa la salida Data para confirmar que el mensaje se envió.
Obtener los últimos 10 mensajes
- Selecciona la operación Get Channel Messages.
- Ingresa el Team ID y el Channel ID.
- Ajusta Message Count a 10.
- Ejecuta el flujo y usa la salida Data para procesar los mensajes en otro componente.
Componentes Relacionados
- Microsoft Teams Connector – Conecta tu cuenta de Teams a Nappai y gestiona credenciales y permisos.
- TeamChannelMessageComponent – Versión básica sin modo de mapeo, útil para flujos simples.
Consejos y Mejores Prácticas
- Usa el modo de mapeo cuando necesites enviar el mismo mensaje a varios canales o procesar listas de mensajes en lote.
- Limita el número de mensajes que recuperas con Message Count para evitar sobrecargar la API y mejorar el rendimiento.
- Incluye un identificador único en el campo Message Text (por ejemplo, un número de ticket) para facilitar el seguimiento.
- Revisa los logs en la sección de auditoría de Nappai si un mensaje no llega; la respuesta de la API suele indicar el motivo.
Consideraciones de Seguridad
- La credencial Microsoft Teams almacena tokens de acceso que deben mantenerse confidenciales.
- Evita exponer la credencial en flujos públicos o compartirla con usuarios que no necesiten acceso a Teams.
- Utiliza el mínimo conjunto de permisos (scopes) necesario para la operación que vas a realizar.