74 lines
2.2 KiB
JavaScript
74 lines
2.2 KiB
JavaScript
// Teste de parsing de callbacks
|
|
console.log('🧪 Testando parsing de callbacks...\n');
|
|
|
|
// Simular dados de callback
|
|
const testCallbacks = [
|
|
'check_signal_olt_dito_DACM91569513',
|
|
'check_signal_olt_colmeia_ABCD12345678',
|
|
'check_signal_olt_canaa_TEST123456',
|
|
'check_signal_olt_canaa2_SERIAL789',
|
|
'show_config_olt_dito_1/1/1_10',
|
|
'show_config_olt_canaa2_2/2/2_25'
|
|
];
|
|
|
|
function parseCheckSignalCallback(data) {
|
|
const parts = data.split('_');
|
|
let oltId, serialNumber;
|
|
|
|
if (parts.length === 5) {
|
|
// Caso: check_signal_olt_dito_SERIAL
|
|
oltId = parts[2] + '_' + parts[3]; // "olt_dito"
|
|
serialNumber = parts[4];
|
|
} else if (parts.length === 4) {
|
|
// Caso: check_signal_oltid_SERIAL
|
|
oltId = parts[2];
|
|
serialNumber = parts[3];
|
|
} else {
|
|
// Tentar reconstruir dinamicamente
|
|
oltId = parts.slice(2, -1).join('_');
|
|
serialNumber = parts[parts.length - 1];
|
|
}
|
|
|
|
return { oltId, serialNumber };
|
|
}
|
|
|
|
function parseShowConfigCallback(data) {
|
|
const parts = data.split('_');
|
|
let oltId, slot, onuId;
|
|
|
|
if (parts.length === 6) {
|
|
// Caso: show_config_olt_dito_slot_onuid
|
|
oltId = parts[2] + '_' + parts[3]; // "olt_dito"
|
|
slot = parts[4];
|
|
onuId = parts[5];
|
|
} else if (parts.length === 5) {
|
|
// Caso: show_config_oltid_slot_onuid
|
|
oltId = parts[2];
|
|
slot = parts[3];
|
|
onuId = parts[4];
|
|
} else {
|
|
// Tentar reconstruir dinamicamente
|
|
onuId = parts[parts.length - 1];
|
|
slot = parts[parts.length - 2];
|
|
oltId = parts.slice(2, -2).join('_');
|
|
}
|
|
|
|
return { oltId, slot, onuId };
|
|
}
|
|
|
|
testCallbacks.forEach((callback, index) => {
|
|
console.log(`${index + 1}. Callback: "${callback}"`);
|
|
|
|
if (callback.startsWith('check_signal_')) {
|
|
const result = parseCheckSignalCallback(callback);
|
|
console.log(` Resultado: OLT="${result.oltId}", Serial="${result.serialNumber}"`);
|
|
} else if (callback.startsWith('show_config_')) {
|
|
const result = parseShowConfigCallback(callback);
|
|
console.log(` Resultado: OLT="${result.oltId}", Slot="${result.slot}", ONU="${result.onuId}"`);
|
|
}
|
|
|
|
console.log('');
|
|
});
|
|
|
|
console.log('✅ Teste concluído!');
|