Actualizar robot.js

This commit is contained in:
2026-02-13 17:19:49 +00:00
parent e6e2602f90
commit 1a040caa8f

View File

@@ -106,28 +106,27 @@ async function runMultiasistencia(ownerId, user, pass) {
data.phone_fixed = (bodyText.match(/[6789]\d{8}/) || [])[0] || ""; data.phone_fixed = (bodyText.match(/[6789]\d{8}/) || [])[0] || "";
data.description_fixed = findNeighbor(['DESCRIPCIÓN', 'DAÑOS', 'AVERÍA']); data.description_fixed = findNeighbor(['DESCRIPCIÓN', 'DAÑOS', 'AVERÍA']);
// --- 2. ASPIRADORA INTELIGENTE (Tablas) --- // ... dentro del evaluate de Multiasistencia ...
const rows = document.querySelectorAll('tr'); const rows = document.querySelectorAll('tr');
rows.forEach(row => { rows.forEach(row => {
const cells = Array.from(row.querySelectorAll('td')); const cells = Array.from(row.querySelectorAll('td'));
for (let i = 0; i < cells.length - 1; i++) { for (let i = 0; i < cells.length - 1; i++) {
let key = cells[i].innerText.trim().replace(':', ''); let key = cells[i].innerText.trim().replace(':', '');
let val = cells[i+1]?.innerText.trim(); let val = cells[i+1]?.innerText.trim();
// FILTRO DE SEGURIDAD PARA ETIQUETAS // FILTRO ANTIBASURA:
// 1. La clave no puede ser larguísima (eso es una descripción o dirección) // Si la "clave" es muy larga (más de 30 caracteres),
if (key.length > 35) continue; // probablemente es una dirección o un nombre, NO una etiqueta.
// 2. La clave no puede contener dígitos (ej: "28001" no es una clave) if (key.length > 30 || key.length < 2) continue;
if (/\d/.test(key) && key.length > 10) continue;
// 3. La clave no debe empezar por tipo de vía
if (/^(CL|AV|PZ|UR|CJ)\s/.test(key.toUpperCase())) continue;
if (key.length > 2 && val && val.length > 0) { // Si la clave contiene números y espacios, probablemente es una dirección
// Guardamos normalizando la clave if (/\d/.test(key) && key.includes(' ')) continue;
data[key] = val;
} if (val && val.length > 0) {
} data[key] = val;
}); }
}
});
return data; return data;
}); });