
El problema
Las solicitudes llegaban por Slack, Gmail y el portal de clientes, y alguien tenía que capturarlas y asignarlas a mano.
Qué cambió
Cada mensaje se convierte solo en un ticket con responsable y fecha límite, y el equipo recibe el aviso en Slack.
Lo que construí
- Un lector de mensajes que convierte hilos de Slack y correos de Gmail en tickets ordenados, con el responsable y el plazo correctos.
- Accesos por rol sobre la seguridad a nivel de fila de Supabase para socios, asociados, pasantes y clientes.
- Un tablero de operación con tiempos de respuesta, estado de la cola y carga por cliente.
- Sincronización en ambos sentidos: lo que cambia en el sistema se avisa en Slack o por correo, sin saturar a nadie.
Lo que aprendí
- Controlar los permisos desde la base de datos me ahorró meses de errores comparado con hacerlo en la aplicación.
- Los abogados no leen tableros. Quieren una sola alerta en Slack con el botón de la acción correcta.
- Lo difícil de un sistema de tickets no es la pantalla, es no duplicar lo que llega por tres canales distintos.
Tecnología
- Next.js
- TypeScript
- Tailwind
- Supabase
- Postgres
- Slack API
- Gmail API