Commit Graph

3 Commits

Author SHA1 Message Date
14a64778b8 Nuevo Tipo de Pregunta: Asistente IA (Chat) 🤖💬
Frontend (v1.0.88)
QuestionTypeEditor.jsx
 Nuevo tipo: ai_assistant con icono 💬
 Configuración completa:
assistant_prompt: Define rol y comportamiento del asistente
context_questions: IDs de preguntas anteriores cuyas fotos usar (o todas)
assistant_instructions: Reglas específicas de diagnóstico
max_messages: Límite de mensajes en el chat
response_length: Corta/Media/Larga
QuestionAnswerInput.jsx
 Mensaje informativo para tipo ai_assistant
 Indica que el chat se abre con botón separado
App.jsx - Modal de Chat IA
 Modal full-screen responsive con:

Header con gradiente purple/blue
Área de mensajes con scroll
Input de texto + botón enviar
Soporte Enter para enviar
Indicador de "pensando..."
Timestamps en mensajes
Confianza de la IA
Límite de mensajes
 Botón "💬 Consultar Asistente IA" al lado de "Cargar Documentos"

 Contador de mensajes en el botón si ya hay historial

 Historial guardado en answers[questionId].chatHistory

 Auto-marca como completada cuando se abre el chat

Backend (v1.0.85)
Endpoint /api/ai/chat-assistant
 Recibe:

Mensaje del usuario
Historial del chat
Fotos de preguntas anteriores con sus análisis
Configuración del asistente
Info del vehículo
 Contexto inteligente:

Información del vehículo (marca, modelo, km, placa)
Análisis previos de fotos (hasta 10 fotos más relevantes)
Instrucciones personalizadas por pregunta
Historial conversacional (últimos 10 mensajes)
 Soporte multi-proveedor:

OpenAI (GPT-4, GPT-3.5)
Google Gemini
 Respuestas adaptables:

Longitud configurable (200/400/800 tokens)
Temperature 0.7 para balance creatividad/precisión
Cómo Funciona
Configuración (Admin):

- Crear pregunta tipo "Asistente IA (Chat)"
- Definir prompt: "Eres experto en sistemas de frenos..."
- Seleccionar preguntas anteriores: "5,8,12" (fotos de frenos)
- Instrucciones: "Si pastillas < 3mm → cambio inmediato"
- Longitud: Media
- Max mensajes: 20

2 Durante Inspección (Mecánico):

- Llega a pregunta tipo AI Assistant
- Ve botón "💬 Consultar Asistente IA"
- Clic → Abre chat full-screen
- La IA YA vio las fotos de preguntas 5, 8, 12
- Mecánico pregunta: "¿Las pastillas están bien?"
- IA responde basado en fotos previas + contexto vehículo
- Conversación natural con historial
- Al cerrar → se guarda automáticamente

3 Ejemplo de Conversación:

Mecánico: "Vi desgaste en las pastillas, ¿qué recomiendas?"

IA: "Basándome en las fotos que analicé:

     Pastilla delantera izquierda: ~2.5mm de espesor
     Pastilla delantera derecha: ~2.8mm

     ⚠️ CRÍTICO: Ambas pastillas están por debajo del
     mínimo de 3mm. Con 45,000 km, es normal este desgaste.

     RECOMENDACIÓN:
     - Cambio INMEDIATO de pastillas delanteras
     - Verificar estado de discos (posible rectificado)
     - Revisar líquido de frenos (última foto muestra nivel bajo)

     ¿Necesitas el código de pieza para este Toyota Corolla 2019?"

Casos de Uso
Diagnóstico de Frenos

assistant_prompt: "Eres especialista en sistemas de frenos.
                   Analiza desgaste, fugas, vibraciones."
context_questions: "10,11,12,13" // Fotos de pastillas, discos, líquido

assistant_prompt: "Experto en motores. Detecta fugas, ruidos anormales,
                   consumo excesivo."
context_questions: "5,6,7,8,9" // Motor, aceite, correa, filtros

assistant_prompt: "Especialista en sistemas eléctricos y electrónicos."
context_questions: "20,21,22" // Batería, luces, tablero
instructions: "Siempre pedir código OBD2 si hay check engine"

Ventajas
 Contextual: La IA ve fotos previas, no pregunta "¿puedes mostrarme?"
 Especializado: Un asistente POR tema (frenos, motor, eléctrico)
 Conversacional: El mecánico puede hacer follow-up questions
 Guiado: Instrucciones específicas por tipo de inspección
 Historial: No repite info, mantiene contexto de la conversación
 Móvil-friendly: Modal responsive, fácil de usar en celular
2025-11-30 23:23:43 -03:00
a692948a6f Sistema de Actualización PWA Implementado (v1.0.87)
Frontend (v1.0.87)
Service Worker (public/service-worker.js)
 Cache versionado dinámico: ayutec-v1.0.87
 Estrategia Network-First con fallback a cache
 Auto-limpieza de caches antiguos en activación
 Skip waiting para activación inmediata
 Soporte para mensaje SKIP_WAITING desde cliente
Detección de Actualizaciones (App.jsx)
 Registro automático de Service Worker
 Listener de updatefound para detectar nuevas versiones
 Listener de controllerchange para recarga automática
 Estado updateAvailable y waitingWorker
Modal de Actualización
 Diseño grande y llamativo con animación bounce
 Overlay bloqueante (z-index 9999, no se puede cerrar)
 Botón enorme: "🚀 ACTUALIZAR AHORA"
 Gradiente indigo/purple, responsive
 Texto claro: "Nueva versión disponible"
 Recarga automática al actualizar
PWA Manifest (site.webmanifest)
 Agregado start_url y scope
 Configurado orientation: portrait
 Display standalone para app nativa
HTML Metatags (index.html)
 theme-color para barra de navegación
 apple-mobile-web-app-capable para iOS
 mobile-web-app-capable para Android
 Viewport con user-scalable=no para PWA
Automatización
 Script PowerShell update-version.ps1:
Incrementa versión automáticamente (patch)
Actualiza package.json
Actualiza service-worker.js
Sincroniza ambos archivos
 Guía completa PWA-UPDATE-GUIDE.md
Flujo de Actualización
Desarrollador ejecuta update-version.ps1
Build y deploy de nueva versión
Usuario abre la app
Service Worker detecta nueva versión
Modal aparece automáticamente bloqueando UI
Usuario presiona "ACTUALIZAR AHORA"
Service Worker se activa
Página se recarga automáticamente
Usuario usa nueva versión
Backend (v1.0.84)
Sin cambios
Ahora la PWA se actualiza automáticamente mostrando un modal imposible de ignorar! 🚀📱
2025-11-30 23:11:33 -03:00
aa2b196b53 Se agregaron los favIcons 2025-11-26 17:27:58 -03:00