ASISTENT-IA

Producto de incidencias

Microsoft Teams / n8n / MantisBT / OpenAI

BOT TEAMS MANTIS v3

Un sistema conversacional para crear, consultar, resolver y vigilar incidencias sin sacar al usuario del entorno donde ya trabaja.

Workflow activo Bot Teams Mantis v3 - CODEX MEMORIA - yago

Version estable con soporte IA, historial interactivo, vigilancia automatica y administracion avanzada.

IA usada GPT-4o-mini + LangChain agents

IA donde aporta criterio y lenguaje; logica determinista donde importa control.

Canales Teams como interfaz natural
Operacion n8n orquesta nodos, fases y agentes
Trazabilidad MantisBT conserva ticket, estado e historial
Supervision Polling cada minuto y avisos proactivos

Comandos y control

El sistema no depende de que el usuario escriba perfecto. Tiene accesos claros, comandos utiles y respuesta inmediata.

hola / menu / start

Resetea el estado y devuelve el menu principal para que la conversacion no quede perdida.

/nueva

Reinicia una incidencia desde cero y limpia el estado temporal del chat.

atras

Retrocede segun la fase actual y evita rehacer todo el flujo manualmente.

jarvis

Activa el modo administrador para analisis, filtros, documentos y correo.

ASISTENT-IA INCIDENTS

No es un bot decorativo. Es una capa operativa que reduce friccion en soporte y devuelve estructura a cada incidencia.

El sistema identifica al usuario, recoge contexto sin errores, genera un ticket mejor escrito, mantiene memoria de la conversacion, ofrece resolucion guiada y notifica cambios sin obligar al equipo a cambiar de herramienta.

Flujo

El recorrido esta pensado para que la incidencia viaje con criterio desde el primer mensaje hasta el cierre.

01 Webhook / Parse / Estado

Entrada

Teams envia el mensaje, el sistema valida que sea util, limpia HTML, extrae adjuntos, busca el email en multiples campos y carga el contexto previo del chat.

  • validacion de mensaje
  • normalizacion del payload
  • chatId con memoria persistente
02 Switch / Phase Router

Router

El flujo se dirige por fase: inicio, creacion, historial, soporte, estado o JARVIS. Cada conversacion conserva memoria propia en static global data.

03 Identity / Lookup

Identidad

Antes de preguntar nada operativo, intenta encontrar al usuario correcto en MantisBT por varias heuristicas y solo pide confirmacion manual si falla.

04 AI Agent / Collection

Recogida

Categoria, equipo afectado, descripcion, prioridad, reproducibilidad y adjunto. El agente recoge cada campo de forma conversacional y valida antes de avanzar.

  • categoria
  • equipo
  • descripcion
  • prioridad
  • reproducibilidad
  • adjunto
05 OpenAI / Summary Builder

Estructuracion

El sistema transforma lenguaje natural en un ticket mas profesional y consistente para que el alta en MantisBT tenga mas calidad desde el origen.

06 POST /issues / monitors

Alta en Mantis

OpenAI genera un titulo profesional, el ticket se crea por API REST, el usuario se anade como monitor y el sistema guarda el seguimiento para vigilancia automatica.

07 Status / Query

Consulta

El flujo de consulta valida el numero, llama al endpoint correcto y devuelve asunto, estado, prioridad, reportador y fechas clave.

08 History / Adaptive Cards

Historial

El historial enseƱa las ultimas diez incidencias con estados visuales y limita el detalle a los IDs previamente cargados en ese contexto.

09 Support / Guiding

Soporte IA

Despues del alta, el bot puede guiar al usuario en hasta diez turnos y un scheduler revisa cambios cada minuto para enviar avisos proactivos por Teams.

  • guiding
  • resolved
  • escalate
10 Watch / Notify

Vigilancia

Un trigger cada minuto revisa los tickets monitorizados, detecta cambios y devuelve la informacion al usuario correcto mediante avisos proactivos.

Capacidades

Los modulos clave del producto ya cubren operacion diaria, soporte y supervision.

El valor del producto no sale de una sola funcion. Sale de unir entrada, contexto, trazabilidad, ayuda, administracion y seguimiento dentro del mismo circuito operativo. Por eso cada bloque hace una parte distinta del trabajo y juntos convierten un simple chat en un sistema de soporte util.

Creacion

Alta conversacional de tickets

Adaptive Cards, validacion de campos, adjuntos desde Teams y escritura final profesional antes de crear el ticket.

  • menos errores de entrada
  • resumen tecnico mejor redactado
  • ticket listo para operar desde el primer alta
Consulta

Estado de ticket por numero

Recupera asunto, estado, prioridad, reportador y fechas sin obligar al usuario a entrar manualmente en MantisBT.

  • respuesta inmediata desde Teams
  • menos friccion de acceso
  • visibilidad puntual del caso
Historial

Ultimas incidencias con botones de estado

Lista interactiva con codigos visuales para resueltas, abiertas o en gestion activa, y acceso seguro al detalle.

  • azul para resueltas
  • gris para gestion activa
  • rojo para incidencias abiertas
Soporte IA

Resolucion guiada paso a paso

Una accion por mensaje, maximo diez intercambios y actualizacion del ticket a resuelto si el usuario confirma que ya funciona.

  • guia controlada
  • sin sobrecarga de instrucciones
  • escalado limpio cuando no toca insistir
Identidad

Autodeteccion multinivel de usuario

Email exacto, username, prefijo y nombre normalizado antes de pasar a fallback manual con intentos limitados.

  • menos pasos manuales
  • mejor mapping Teams-Mantis
  • fallback acotado y seguro
Vigilancia

Notificaciones automaticas de cambios

Snapshot por ticket vigilado, comparacion contra el ultimo estado conocido y aviso proactivo al chat correcto.

  • cambios de estado
  • cambios de asignado
  • cambios de asunto o snapshot

Arquitectura

Una composicion tecnica que reparte bien el trabajo entre interfaz, automatizacion, IA y sistema de tickets.

Teams actua como superficie de entrada. n8n orquesta parseo, routing, estado, agentes y llamadas HTTP. MantisBT conserva el dato transaccional. OpenAI entra para estructurar, asistir y generar salida donde el lenguaje marca diferencia.

Interfaz

El usuario nunca sale del canal donde ya trabaja.

Orquestacion

La logica vive en workflow y nodos, no en prompts fragiles.

Persistencia

El estado se conserva entre mensajes para no perder continuidad.

Superficie Microsoft Teams + Adaptive Cards

Bot Framework v3, botones imBack y una experiencia que evita errores de escritura.

  • cards dinamicas
  • botones de categoria
  • interaccion segura
Orquestacion n8n

Webhook, Code, Switch, If, ScheduleTrigger, RespondToWebhook, agentes LangChain y memoria compartida.

  • 80% de logica en nodos code
  • switch por fase
  • scheduler de vigilancia
Decision OpenAI GPT-4o-mini

Recogida conversacional, estructuracion del ticket, soporte guiado y analisis contextual cuando toca.

  • titulo y descripcion profesional
  • agente IT guiado
  • lenguaje natural con control
Sistema MantisBT REST API

Creacion, consulta, historial, monitores, resolucion y recuperacion de dataset para administracion.

  • POST de tickets
  • PATCH de resolucion
  • dataset para JARVIS

Integracion real

Detras del front conversacional hay autenticacion, estado global, API REST y un conjunto concreto de nodos que sostienen el producto.

Identidad y acceso

El bot intenta mapear el usuario de Teams con MantisBT por email exacto, username, prefijo del email y nombre normalizado. Si no lo consigue, abre fallback manual con intentos limitados.

  • Azure AD OAuth2 para el bot
  • usuario Mantis asociado al chat
  • password extra para JARVIS
Estado global

El workflow usa `static global data` para recordar la fase, el usuario identificado, el ticket activo, los intentos, los IDs mostrados en historial y la vigilancia automatica.

  • `phase` por chatId
  • `historyIssueIds` para seguridad
  • `_ticketWatch` para notificaciones
Integracion MantisBT

El sistema usa GET, POST y PATCH sobre la API REST de Mantis para crear incidencias, recuperar detalle, consultar historial, anadir monitores y resolver tickets.

  • `/issues` para alta
  • `/issues/{id}` para detalle
  • `/issues/{id}/monitors` para seguimiento
Nodos principales

La columna vertebral combina `Webhook`, `Code`, `HttpRequest`, `Switch`, `If`, `ScheduleTrigger`, `RespondToWebhook` y nodos LangChain para memoria y agentes.

  • entrada inmediata sin timeout
  • routing fino por fase
  • polling cada minuto para cambios

Recogida guiada

La calidad del ticket depende de los datos que se recogen antes de enviarlo a MantisBT.

El agente no improvisa preguntas. Sigue un orden concreto para capturar contexto operativo, convertirlo en informacion util y preparar una incidencia mejor desde origen. Eso reduce ida y vuelta, evita tickets vacios y permite que soporte arranque con mas claridad.

01Categoria

Hardware, Software, Red, Impresora, Accesos u Otro.

Clasifica el caso desde el principio y facilita la ruta correcta.
02Equipo / ubicacion

PC, servidor, sala o cualquier activo afectado.

Situa el problema en un contexto operativo concreto.
03Descripcion

Contexto y problema explicado en lenguaje natural.

Da la base semantica para estructurar mejor el ticket.
04Prioridad

Urgente, Alta, Normal o Baja.

Permite ordenar trabajo y urgencia desde el alta.
05Reproducibilidad

Siempre, Intermitente, Una vez o Desconocido.

Ayuda a valorar estabilidad y complejidad tecnica.
06Adjunto

Archivo opcional descargado desde Teams y enviado al ticket.

Da evidencia visual o documental cuando hace falta.

Mapa de fases

La conversacion no va improvisando. Va recorriendo estados concretos que hacen posible una experiencia consistente.

Cada `phase` define una responsabilidad: esperar, preguntar, resolver, consultar, autenticar o administrar. Ese mapa de estados es lo que impide que la experiencia se rompa cuando un usuario cambia de objetivo, vuelve atras o retoma una conversacion que habia dejado a medias.

initial

Menu principal y eleccion de accion.

Punto de entrada seguro.
asking_mantis_user

Fallback manual para identificar usuario en creacion.

Corrige ambiguedad de identidad.
collecting

IA recogiendo datos del ticket con memoria.

Conversacion guiada con orden.
post_ticket_offer

Ticket creado y oferta inmediata de ayuda.

Transicion de alta a soporte.
ticket_support

Resolucion guiada paso a paso.

Ayuda controlada sin saturar.
awaiting_ticket_number

Consulta de una incidencia concreta por ID.

Espera validada del usuario.
history_ready

Historial cargado y listo para detalle.

Lista interactiva segura.
awaiting_history_detail

Esperando seleccion dentro del historico.

Detalle solo del lote expuesto.
jarvis_lookup

Verificacion del perfil administrador por email.

Control de acceso previo.
jarvis_admin

Panel activo con analisis, docs y control.

Modo ejecutivo y documental.

Referencia de nodos

El workflow no es abstracto. Estas son algunas de las piezas que estructuran la operacion real del bot.

Parsear Mensaje Entrante1

Limpia HTML, recupera estado, extrae adjuntos, detecta email y reconoce comandos como `hola`, `/nueva`, `atras` o `jarvis`.

Router de Fase1

Switch central con multiples salidas para llevar cada mensaje al modulo correcto sin mezclar intenciones.

AI Agent2

Recoge los seis datos del ticket de forma conversacional y deja el resultado listo para estructuracion final.

OpenAI Estructurar Ticket2

Transforma el contexto capturado en summary y description profesionales antes del alta en MantisBT.

Resolver Ticket Mantis1

Actualiza el ticket a `resolved` cuando el usuario confirma que la incidencia ya esta solucionada.

Revisar Cambios Tickets1

ScheduleTrigger que consulta snapshots de tickets vigilados y lanza avisos proactivos si detecta cambios.

Resolucion guiada

Cuando el ticket ya existe, el sistema todavia puede actuar: guiar, marcar como resuelto o escalar.

Este modulo evita que el ticket se limite a esperar cola. Intenta capturar resoluciones sencillas en el propio canal, con una sola accion por mensaje, limites de turnos y una salida limpia tanto si se resuelve como si hay que escalar.

guiding Una accion por mensaje

El agente IT evita saturar al usuario. Cada respuesta propone un unico paso o comprobacion operativa.

  • un paso cada vez
  • contexto de soporte
  • limite de 10 turnos
resolved Resolucion confirmada

Si el usuario indica que ya funciona, el sistema actualiza el ticket en MantisBT a estado resuelto.

  • confirmacion explicita
  • PATCH al ticket
  • cierre mas limpio
escalate Escalado controlado

Si no hay solucion en diez turnos o el caso es complejo, el ticket queda abierto para gestion manual.

  • sin promesas vacias
  • derivacion clara
  • continuidad operativa

JARVIS

Un modo administrador para explotar el servicio con lectura ejecutiva, filtros y generacion documental.

Solo para perfiles admin. Verifica access level, pide password, construye dataset del proyecto, genera informes, graficos ASCII y documentos formales en PDF, Word o Excel con envio por correo.

200

issues para dataset operativo

3

formatos de documento

1

modo admin dentro de Teams

Dataset

Hasta 200 incidencias del proyecto para calcular abiertas, resueltas, prioridades y top reportadores.

  • by priority
  • top reporters
  • recent issues
Analisis

Informes ejecutivos, lenguaje natural y filtros por usuario dentro del propio Teams.

  • graficos ASCII
  • peticiones libres
  • lectura ejecutiva
Documento

Generacion formal y envio por correo mediante `jarvis_mailer.php` y relay dedicado.

  • PDF
  • Word
  • Excel

Valor comercial

Este producto convierte soporte interno en un sistema mas legible, mas rapido y con mejor continuidad operativa.