-- ============================================================
-- Patupelo Bot - Seeds de intents (Fase 1)
-- ============================================================
-- El motor evalúa intents por priority ASC y se queda con el
-- primero que matchea. Por eso reclamacion (10) gana a
-- consulta_producto (50).
--
-- Los regex se guardan como JSON dentro de patterns_json. JSON
-- requiere `\\` para representar un único `\` en el regex (p.ej.
-- `\b` se escribe `\\b`). En MySQL, dentro de un string entre
-- comillas simples, `\\` se interpreta como un único backslash
-- literal (a menos que tengas el modo NO_BACKSLASH_ESCAPES
-- activo, lo cual es muy poco común).
-- ============================================================

SET NAMES utf8mb4;

INSERT INTO `bot_intents`
(`name`, `description`, `keywords`, `patterns_json`, `response_template`, `requires_product_lookup`, `escalate`, `priority`, `is_active`)
VALUES

-- Reclamaciones primero: cualquier mención = escalación
('reclamacion',
 'Quejas, reclamos, pedidos con problema',
 'reclamación,reclamacion,reclamo,queja,problema con mi pedido,pedido roto,pedido equivocado,no llegó,no llego,mal estado,defectuoso,devolver,devolución,devolucion,reembolso',
 '["\\\\b(reclam|queja|devol|reembols)\\\\w*\\\\b","pedido.*(roto|equivoc|mal|defectuoso|no lleg)"]',
 'Lamento mucho lo ocurrido. Para poder ayudarte como corresponde, te derivo con una persona del equipo de Patupelo. Te contactarán a la brevedad por este mismo canal.',
 0, 1, 10, 1),

('pedido_pendiente',
 'Consulta sobre estado de un pedido específico',
 'mi pedido,estado del pedido,dónde está mi pedido,donde esta mi pedido,seguimiento,tracking,nº de pedido,numero de pedido',
 '["\\\\bpedido\\\\s+(n[uú]mero|nro|n°|#)","seguimient|tracking","d[óo]nde\\\\s+est[áa]\\\\s+mi"]',
 'Para consultar el estado de un pedido específico necesito que te atienda el equipo. Te derivo ahora mismo.',
 0, 1, 20, 1),

-- Saludos
('saludo',
 'Saludo inicial',
 'hola,buenas,buenos días,buenos dias,buenas tardes,buenas noches,qué tal,que tal,hey,saludos',
 '["^\\\\s*(hola|buenas|hey|saludos|qu[ée]\\\\s+tal)\\\\b"]',
 '¡Hola! 👋 Soy el asistente virtual de Patupelo. Estoy para ayudarte con consultas sobre productos, stock, precios profesionales o alta de cuenta. ¿En qué te puedo ayudar?',
 0, 0, 30, 1),

('despedida',
 'Despedida',
 'gracias,muchas gracias,adios,adiós,chao,hasta luego,nos vemos,bye',
 '["^\\\\s*(gracias|muchas\\\\s+gracias|adi[óo]s|chao|hasta\\\\s+luego|bye)\\\\b"]',
 '¡Gracias a ti! Si necesitas cualquier otra cosa, aquí estaré. Que tengas un excelente día. ✨',
 0, 0, 35, 1),

-- Hablar con persona (alta prioridad para no caer en consulta_producto)
('contacto_humano',
 'Pide hablar con persona explícitamente',
 'hablar con persona,hablar con humano,operador,agente,vendedor,comercial,asesor,quiero hablar con alguien',
 '["hablar\\\\s+con\\\\s+(una\\\\s+)?(persona|humano|alguien|operador|agente|comercial|asesor|vendedor)"]',
 'Por supuesto. Te derivo con el equipo de Patupelo. En breve te contactarán por este mismo canal.',
 0, 1, 25, 1),

-- Alta de cliente nuevo (lead)
('alta_cliente_nuevo',
 'Profesional que aún no es cliente y quiere serlo',
 'abrir cuenta,nueva cuenta,quiero comprar,no soy cliente,darme de alta,registrarme,abrir salón,abrir salon,nuevo salón,nuevo salon,empezar a comprar,trabajar con vosotros,trabajar con ustedes',
 '["(abrir|nueva|crear|dar(me)?\\\\s+de\\\\s+alta).*cuenta","no\\\\s+soy\\\\s+cliente","quiero\\\\s+(comprar|trabajar)","registrar(me)?"]',
 '¡Bienvenido a Patupelo! Para abrirte cuenta como profesional necesito un par de datos: nombre del salón o centro, ciudad, y un teléfono o email de contacto. Cuando me los pases, te derivo con el equipo comercial para activar tu cuenta y precios profesionales.',
 0, 0, 40, 1),

-- Consulta de precio sin producto específico
('consulta_precio_mayorista',
 'Pregunta por precio profesional/mayorista sin producto específico',
 'precio mayorista,precios mayoristas,precio profesional,precios profesionales,tarifa,tarifas,catálogo de precios,catalogo de precios,lista de precios',
 '["precio.*(mayorista|profesional|pro)","tarifa(s)?\\\\b","lista\\\\s+de\\\\s+precios"]',
 'Los precios profesionales se muestran en tu cuenta una vez activada. Si ya eres cliente, inicia sesión en patupelo.es y los verás en cada producto. Si aún no tienes cuenta, dímelo y te ayudo con el alta.',
 0, 0, 45, 1),

-- Consulta de producto: el más usado
('consulta_producto',
 'Pregunta por un producto, marca, SKU o categoría',
 'tienen,tenéis,teneis,hay,disponible,producto,shampoo,champú,champu,acondicionador,tinte,tintes,coloración,coloracion,decolorante,mechas,tratamiento,mascarilla,sérum,serum,aceite,laca,fijador,gel,cera,pomada,esmalte,kit,marca',
 '["\\\\b(tienen|ten[ée]is|hay|venden|disponen)\\\\b","\\\\b(precio|cu[áa]nto\\\\s+cuesta|cu[áa]nto\\\\s+vale)","\\\\b(stock|disponibilidad|disponible|hay\\\\s+en)","\\\\b(busco|necesito|quiero)\\\\b","sku\\\\s*[:=]?\\\\s*\\\\w+","ref(\\\\.|erencia)?\\\\s*[:=]?\\\\s*\\\\w+","[A-Z]{2,}-[A-Z0-9\\\\.\\\\-]+"]',
 NULL,
 1, 0, 50, 1),

-- Info estática
('horarios_envios',
 'Horarios de atención y plazos de envío',
 'horario,horarios,abierto,abren,cierran,envío,envio,envíos,envios,plazo de entrega,cuánto tarda,cuanto tarda,cuándo llega,cuando llega,gastos de envío,gastos de envio',
 '["horario","env[íi]o(s)?","plazo.*entrega","cu[áa]nto\\\\s+tarda","gastos\\\\s+de\\\\s+env[íi]o"]',
 'Atención al cliente: lunes a viernes de 9:00 a 18:00. Envíos a península en 24-48h para pedidos confirmados antes de las 14:00. Envío gratuito a partir de 150€ (antes de impuestos). ¿Te ayudo con algo más?',
 0, 0, 55, 1),

-- Catch-all
('fallback',
 'No se entendió la consulta',
 '',
 '[]',
 'No estoy seguro de haberte entendido. ¿Buscas un producto en concreto, quieres consultar disponibilidad o prefieres que te derive con el equipo? Puedes escribirme, por ejemplo: "tenéis tinte L''Oréal 7.0" o "quiero abrir cuenta".',
 0, 0, 999, 1);
