Corrige aviso de cita al cliente: dudar en vez de asumir si el tecnico ya fue
This commit is contained in:
17
server.js
17
server.js
@@ -1970,10 +1970,17 @@ async function procesarConIA(ownerId, mensajeCliente, datosExpediente) {
|
||||
|
||||
let citaYaPaso = false;
|
||||
if (tieneCitaConfirmada && datosExpediente.cita) {
|
||||
const hoyTime = new Date().setHours(0, 0, 0, 0);
|
||||
const ahora = new Date();
|
||||
const [y, m, d] = datosExpediente.cita.split('-');
|
||||
const citaTime = new Date(y, m - 1, d).setHours(0, 0, 0, 0);
|
||||
if (citaTime < hoyTime) citaYaPaso = true;
|
||||
// Si no hay hora concreta, solo se considera "pasada" al cambiar de día (fin del día)
|
||||
let horaFin = 23, minFin = 59;
|
||||
if (datosExpediente.hora_cita && datosExpediente.hora_cita.includes(':')) {
|
||||
const [hh, mm] = datosExpediente.hora_cita.split(':');
|
||||
horaFin = parseInt(hh, 10) + 1; // margen aprox. de duración del servicio
|
||||
minFin = parseInt(mm, 10);
|
||||
}
|
||||
const finVentanaCita = new Date(y, m - 1, d, horaFin, minFin);
|
||||
if (finVentanaCita < ahora) citaYaPaso = true;
|
||||
}
|
||||
|
||||
const esEstadoFinal =
|
||||
@@ -1995,7 +2002,9 @@ async function procesarConIA(ownerId, mensajeCliente, datosExpediente) {
|
||||
TU ÚNICO OBJETIVO: Informar al cliente que hemos recibido el aviso de su avería (${datosExpediente.averia}) y que estamos coordinando para asignarle un técnico en su zona.
|
||||
⛔ PROHIBICIÓN ABSOLUTA: NO ofrezcas citas, NO des horas, NO agendes nada hasta que se le asigne un técnico.`;
|
||||
} else if (citaYaPaso) {
|
||||
directivaEstricta = `🛑 ESTADO ACTUAL: LA CITA YA PASÓ (${datosExpediente.cita}). Informa que estamos tramitando su avería (${datosExpediente.averia}). NO AGENDES NADA.`;
|
||||
directivaEstricta = `🛑 ESTADO ACTUAL: LA CITA (${datosExpediente.cita} ${tramoConfirmado}) YA DEBERÍA HABER PASADO, pero el servicio sigue en estado "citado" (no consta que se haya cerrado el parte de trabajo).
|
||||
⚠️ NO afirmes que el técnico ya fue ni que el servicio está hecho. NO digas tampoco que la cita sigue por llegar, como si no hubiera pasado ya la hora.
|
||||
TU OBJETIVO: Exprésate con duda de forma natural. Dile que según tus datos tenía cita a esa hora para su avería (${datosExpediente.averia}) y pregúntale directamente si el técnico ya pasó por su domicilio o si sigue esperando, para poder ayudarle mejor. NO AGENDES NADA hasta saberlo.`;
|
||||
} else if (esUrgencia) {
|
||||
directivaEstricta = `🛑 ESTADO ACTUAL: URGENCIA. Tranquiliza al cliente sobre su avería (${datosExpediente.averia}) y dile que el técnico está avisado. NO PROPONGAS HORAS.`;
|
||||
} else if (hayCitaPendiente) {
|
||||
|
||||
Reference in New Issue
Block a user