Limpeza 2
Signed-off-by: Rodrigo B. de Sousa Martins <rodrigo.sousa.577@gmail.com>
This commit is contained in:
1 parent
a88ee59f0d
commit
d4c37a3f78
8 files changed
-610
No files matched your search
@@ -1,73 +0,0 @@
|
||||
// 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!');
|
||||
@@ -1,120 +0,0 @@
|
||||
// Teste completo do fluxo de Reset ONU
|
||||
const SSHManager = require('./src/ssh/manager');
|
||||
|
||||
async function testCompleteResetFlow() {
|
||||
console.log('🧪 Teste Completo do Fluxo de Reset ONU\n');
|
||||
|
||||
const sshManager = new SSHManager();
|
||||
|
||||
// Simular callback data que seria gerado pelo bot
|
||||
console.log('📝 1. Simulando callback data gerado pelo bot:');
|
||||
|
||||
// Exemplo de como seria gerado no handleVerSinal após encontrar ONU
|
||||
const simulatedResult = {
|
||||
slot: '1/1/1',
|
||||
onuId: '5'
|
||||
};
|
||||
const oltId = 'olt_dito';
|
||||
const serialNumber = 'DACM91569513';
|
||||
|
||||
const resetCallback = `reset_onu_${oltId}_${simulatedResult.slot}_${simulatedResult.onuId}`;
|
||||
console.log(` Callback gerado: ${resetCallback}`);
|
||||
|
||||
// Teste de parsing do callback
|
||||
console.log('\n🔍 2. Testando parsing do callback:');
|
||||
const parts = resetCallback.split('_');
|
||||
console.log(` Parts: ${JSON.stringify(parts)}`);
|
||||
|
||||
let parsedOltId, parsedSlot, parsedOnuId;
|
||||
|
||||
if (parts.length === 6) {
|
||||
parsedOltId = parts[2] + '_' + parts[3];
|
||||
parsedSlot = parts[4];
|
||||
parsedOnuId = parts[5];
|
||||
} else if (parts.length === 5) {
|
||||
parsedOltId = parts[2];
|
||||
parsedSlot = parts[3];
|
||||
parsedOnuId = parts[4];
|
||||
} else {
|
||||
parsedOnuId = parts[parts.length - 1];
|
||||
parsedSlot = parts[parts.length - 2];
|
||||
parsedOltId = parts.slice(2, -2).join('_');
|
||||
}
|
||||
|
||||
console.log(` ✅ Parsed - OLT: ${parsedOltId}, Slot: ${parsedSlot}, ONU: ${parsedOnuId}`);
|
||||
|
||||
// Verificar se a OLT existe
|
||||
console.log('\n🏢 3. Verificando se a OLT existe:');
|
||||
const equipment = sshManager.equipamentos.get(parsedOltId);
|
||||
if (equipment) {
|
||||
console.log(` ✅ OLT encontrada: ${equipment.name} (${equipment.host})`);
|
||||
} else {
|
||||
console.log(` ❌ OLT não encontrada: ${parsedOltId}`);
|
||||
console.log(' 📋 OLTs disponíveis:');
|
||||
sshManager.listOLTs().forEach(olt => {
|
||||
console.log(` - ${olt.id}: ${olt.name}`);
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
// Gerar comando que seria executado
|
||||
console.log('\n💻 4. Comando que seria executado:');
|
||||
const command = `config terminal && interface gpon ${parsedSlot} && onu-reset onu ${parsedOnuId} && exit`;
|
||||
console.log(` Comando: ${command}`);
|
||||
|
||||
// Simular callback de confirmação
|
||||
console.log('\n✅ 5. Callback de confirmação:');
|
||||
const confirmCallback = `confirm_reset_onu_${parsedOltId}_${parsedSlot}_${parsedOnuId}`;
|
||||
console.log(` Callback: ${confirmCallback}`);
|
||||
|
||||
// Testar parsing da confirmação
|
||||
const confirmParts = confirmCallback.replace('confirm_reset_onu_', '').split('_');
|
||||
console.log(` Parts após remoção: ${JSON.stringify(confirmParts)}`);
|
||||
|
||||
let confirmOltId, confirmSlot, confirmOnuId;
|
||||
|
||||
if (confirmParts.length === 4) {
|
||||
confirmOltId = confirmParts[0] + '_' + confirmParts[1];
|
||||
confirmSlot = confirmParts[2];
|
||||
confirmOnuId = confirmParts[3];
|
||||
} else if (confirmParts.length === 3) {
|
||||
confirmOltId = confirmParts[0];
|
||||
confirmSlot = confirmParts[1];
|
||||
confirmOnuId = confirmParts[2];
|
||||
} else {
|
||||
confirmOnuId = confirmParts[confirmParts.length - 1];
|
||||
confirmSlot = confirmParts[confirmParts.length - 2];
|
||||
confirmOltId = confirmParts.slice(0, -2).join('_');
|
||||
}
|
||||
|
||||
console.log(` ✅ Confirm Parsed - OLT: ${confirmOltId}, Slot: ${confirmSlot}, ONU: ${confirmOnuId}`);
|
||||
|
||||
// Verificar se o método existe
|
||||
console.log('\n⚙️ 6. Verificando método resetOnuAlternative:');
|
||||
if (typeof sshManager.resetOnuAlternative === 'function') {
|
||||
console.log(' ✅ Método resetOnuAlternative encontrado');
|
||||
|
||||
// Teste simulado (sem executar)
|
||||
console.log('\n🎯 7. Teste simulado do método:');
|
||||
console.log(` Parâmetros: resetOnuAlternative('${confirmOltId}', '${confirmSlot}', '${confirmOnuId}')`);
|
||||
|
||||
console.log('\n📊 8. Resultado esperado:');
|
||||
console.log(' - Conexão na OLT via SSH');
|
||||
console.log(' - Execução do comando de reset');
|
||||
console.log(' - Retorno com status de sucesso/erro');
|
||||
|
||||
} else {
|
||||
console.log(' ❌ Método resetOnuAlternative NÃO encontrado');
|
||||
}
|
||||
|
||||
console.log('\n✅ Teste completo finalizado!');
|
||||
console.log('\n🚀 Para testar no bot:');
|
||||
console.log(' 1. Digite: ver sinal DACM91569513');
|
||||
console.log(' 2. Selecione uma OLT');
|
||||
console.log(' 3. Clique em "🔌 Reiniciar ONU"');
|
||||
console.log(' 4. Confirme com "✅ SIM, Reiniciar"');
|
||||
console.log(' 5. Verifique os logs no console');
|
||||
}
|
||||
|
||||
// Executar teste
|
||||
testCompleteResetFlow().catch(console.error);
|
||||
@@ -1,135 +0,0 @@
|
||||
// Teste da funcionalidade de Atualização de Firmware ONU
|
||||
const SSHManager = require('./src/ssh/manager');
|
||||
|
||||
async function testOnuFirmwareUpdate() {
|
||||
console.log('🧪 Testando funcionalidade de Atualização de Firmware ONU...\n');
|
||||
|
||||
const sshManager = new SSHManager();
|
||||
|
||||
// Teste 1: Verificar métodos implementados
|
||||
console.log('⚙️ 1. Verificando métodos implementados:');
|
||||
|
||||
if (typeof sshManager.getOnuDetails === 'function') {
|
||||
console.log(' ✅ Método getOnuDetails encontrado');
|
||||
} else {
|
||||
console.log(' ❌ Método getOnuDetails não encontrado');
|
||||
}
|
||||
|
||||
if (typeof sshManager.updateOnuFirmware === 'function') {
|
||||
console.log(' ✅ Método updateOnuFirmware encontrado');
|
||||
} else {
|
||||
console.log(' ❌ Método updateOnuFirmware não encontrado');
|
||||
}
|
||||
|
||||
if (typeof sshManager.parseEquipmentId === 'function') {
|
||||
console.log(' ✅ Método parseEquipmentId encontrado');
|
||||
} else {
|
||||
console.log(' ❌ Método parseEquipmentId não encontrado');
|
||||
}
|
||||
|
||||
// Teste 2: Testar parsing de Equipment ID
|
||||
console.log('\n🔍 2. Testando parsing de Equipment ID:');
|
||||
|
||||
const testOutputs = [
|
||||
'Equipment ID: DM986-100\nOther info...',
|
||||
'equipment id : DM986-414\nMore data...',
|
||||
'Model: DM986-100 Version: 1.0\nExtra info...',
|
||||
'Some random output without equipment id'
|
||||
];
|
||||
|
||||
testOutputs.forEach((output, index) => {
|
||||
const equipmentId = sshManager.parseEquipmentId(output);
|
||||
console.log(` Test ${index + 1}: "${output.substring(0, 30)}..." → Equipment ID: ${equipmentId}`);
|
||||
});
|
||||
|
||||
// Teste 3: Mapear opções de firmware
|
||||
console.log('\n📦 3. Mapeamento de opções de firmware:');
|
||||
|
||||
const firmwareMap = {
|
||||
'DM986-100': [
|
||||
'DM986-100-inter.tar (FW INTERMEDIÁRIA)',
|
||||
'DM986-100-v56.tar (FW ATUAL)',
|
||||
'DM986-100-R300.tar (FW ROUTER)'
|
||||
],
|
||||
'DM986-414': [
|
||||
'DM986-414-inter.tar (FW INTERMEDIÁRIA)',
|
||||
'DM986-414-v70.tar (FW ATUAL)'
|
||||
]
|
||||
};
|
||||
|
||||
Object.entries(firmwareMap).forEach(([model, firmwares]) => {
|
||||
console.log(` 📱 ${model}:`);
|
||||
firmwares.forEach(fw => {
|
||||
console.log(` - ${fw}`);
|
||||
});
|
||||
});
|
||||
|
||||
// Teste 4: Testar parsing de callbacks
|
||||
console.log('\n🔄 4. Testando parsing de callbacks de firmware:');
|
||||
|
||||
const testCallbacks = [
|
||||
'update_onu_olt_dito_1/1/1_5',
|
||||
'firmware_DM986-100-v56.tar_olt_dito_1/1/1_5',
|
||||
'confirm_firmware_DM986-414-v70.tar_olt_canaa2_2/2/2_10'
|
||||
];
|
||||
|
||||
testCallbacks.forEach(callback => {
|
||||
console.log(` Callback: ${callback}`);
|
||||
|
||||
if (callback.startsWith('update_onu_')) {
|
||||
const parts = callback.split('_');
|
||||
let oltId, slot, onuId;
|
||||
|
||||
if (parts.length === 6) {
|
||||
oltId = parts[2] + '_' + parts[3];
|
||||
slot = parts[4];
|
||||
onuId = parts[5];
|
||||
}
|
||||
|
||||
console.log(` → Tipo: Update ONU`);
|
||||
console.log(` → OLT: ${oltId}, Slot: ${slot}, ONU: ${onuId}`);
|
||||
} else if (callback.startsWith('firmware_')) {
|
||||
const parts = callback.replace('firmware_', '').split('_');
|
||||
const firmwareFile = parts[0];
|
||||
let oltId = parts[1] + '_' + parts[2];
|
||||
let slot = parts[3];
|
||||
let onuId = parts[4];
|
||||
|
||||
console.log(` → Tipo: Seleção Firmware`);
|
||||
console.log(` → Firmware: ${firmwareFile}`);
|
||||
console.log(` → OLT: ${oltId}, Slot: ${slot}, ONU: ${onuId}`);
|
||||
} else if (callback.startsWith('confirm_firmware_')) {
|
||||
const parts = callback.replace('confirm_firmware_', '').split('_');
|
||||
const firmwareFile = parts[0];
|
||||
let oltId = parts[1] + '_' + parts[2];
|
||||
let slot = parts[3];
|
||||
let onuId = parts[4];
|
||||
|
||||
console.log(` → Tipo: Confirmação Firmware`);
|
||||
console.log(` → Firmware: ${firmwareFile}`);
|
||||
console.log(` → OLT: ${oltId}, Slot: ${slot}, ONU: ${onuId}`);
|
||||
}
|
||||
|
||||
console.log();
|
||||
});
|
||||
|
||||
// Teste 5: Comando de atualização
|
||||
console.log('📝 5. Exemplo de comando de atualização:');
|
||||
const slot = '1/1/1';
|
||||
const onuId = '5';
|
||||
const firmwareFile = 'DM986-100-v56.tar';
|
||||
const command = `request firmware onu install ${firmwareFile} interface gpon ${slot} onu ${onuId}`;
|
||||
console.log(` Comando: ${command}`);
|
||||
|
||||
console.log('\n✅ Teste de funcionalidade de firmware concluído!');
|
||||
console.log('\n🚀 Fluxo de teste no bot:');
|
||||
console.log(' 1. Digite: "ver sinal DACM91569513"');
|
||||
console.log(' 2. Clique: "⬆️ Atualizar ONU"');
|
||||
console.log(' 3. Sistema detecta modelo automaticamente');
|
||||
console.log(' 4. Escolha opção de firmware');
|
||||
console.log(' 5. Confirme a atualização');
|
||||
console.log(' 6. Aguarde o processo completar');
|
||||
}
|
||||
|
||||
// Executar teste
|
||||
testOnuFirmwareUpdate().catch(console.error);
|
||||
-37
@@ -1,37 +0,0 @@
|
||||
const NLPProcessor = require('./src/nlp/processor');
|
||||
|
||||
// Teste do processador de linguagem natural
|
||||
const nlp = new NLPProcessor();
|
||||
|
||||
console.log('🧪 Testando o processador de linguagem natural...\n');
|
||||
|
||||
const testCases = [
|
||||
'Desconectar usuario analuciagomes',
|
||||
'desconectar analuciagomes',
|
||||
'ver sinal DACM91569513',
|
||||
'verificar sinal ABCD12345678',
|
||||
'sinal TESTE123456',
|
||||
'desconectar cliente joao123',
|
||||
'kick usuário maria456',
|
||||
'expulsar cliente teste',
|
||||
'remover cliente admin',
|
||||
'desconectar router1',
|
||||
'desconectar todas conexões',
|
||||
'listar usuários conectados',
|
||||
'mostrar clientes',
|
||||
'ssh juniper',
|
||||
'conectar concentrador',
|
||||
'verificar status do concentrador',
|
||||
'/help',
|
||||
'/equipamentos',
|
||||
'ping 131.0.192.254'
|
||||
];
|
||||
|
||||
testCases.forEach((testCase, index) => {
|
||||
console.log(`${index + 1}. Entrada: "${testCase}"`);
|
||||
const result = nlp.processMessage(testCase);
|
||||
console.log(` Resultado:`, result);
|
||||
console.log('');
|
||||
});
|
||||
|
||||
console.log('✅ Teste concluído!');
|
||||
@@ -1,66 +0,0 @@
|
||||
// Teste específico do método resetOnuAlternative
|
||||
const SSHManager = require('./src/ssh/manager');
|
||||
|
||||
async function testResetOnuAlternative() {
|
||||
console.log('🧪 Testando método resetOnuAlternative...\n');
|
||||
|
||||
const sshManager = new SSHManager();
|
||||
|
||||
// Verificar se o método existe
|
||||
console.log('⚙️ Verificando método resetOnuAlternative:');
|
||||
if (typeof sshManager.resetOnuAlternative === 'function') {
|
||||
console.log(' ✅ Método resetOnuAlternative encontrado');
|
||||
} else {
|
||||
console.log(' ❌ Método resetOnuAlternative não encontrado');
|
||||
return;
|
||||
}
|
||||
|
||||
// Testar a estrutura do comando
|
||||
console.log('\n🔍 Estrutura do comando que será executado:');
|
||||
const slot = '1/1/1';
|
||||
const onuId = '5';
|
||||
const command = `config terminal && interface gpon ${slot} && onu-reset onu ${onuId} && exit`;
|
||||
console.log(` Comando: ${command}`);
|
||||
|
||||
// Simular diferentes cenários de parsing
|
||||
console.log('\n📝 Teste de parsing de callbacks:');
|
||||
const testCases = [
|
||||
'reset_onu_olt_dito_1/1/1_5',
|
||||
'reset_onu_olt_colmeia_2/2/2_10',
|
||||
'reset_onu_olt_canaa_3/3/3_15',
|
||||
'reset_onu_olt_canaa2_1/2/3_8'
|
||||
];
|
||||
|
||||
testCases.forEach(callback => {
|
||||
const parts = callback.split('_');
|
||||
let oltId, slot, onuId;
|
||||
|
||||
if (parts.length === 6) {
|
||||
oltId = parts[2] + '_' + parts[3];
|
||||
slot = parts[4];
|
||||
onuId = parts[5];
|
||||
} else {
|
||||
onuId = parts[parts.length - 1];
|
||||
slot = parts[parts.length - 2];
|
||||
oltId = parts.slice(2, -2).join('_');
|
||||
}
|
||||
|
||||
console.log(` Callback: ${callback}`);
|
||||
console.log(` -> OLT: ${oltId}, Slot: ${slot}, ONU: ${onuId}`);
|
||||
|
||||
// Mostrar como seria o comando
|
||||
const cmd = `config terminal && interface gpon ${slot} && onu-reset onu ${onuId} && exit`;
|
||||
console.log(` -> Comando: ${cmd}`);
|
||||
console.log();
|
||||
});
|
||||
|
||||
console.log('✅ Testes de estrutura concluídos!');
|
||||
console.log('\n📋 Diferenças entre as versões:');
|
||||
console.log(' 🔄 resetOnu (original): Usa shell interativo com detecção de prompts');
|
||||
console.log(' ⚡ resetOnuAlternative: Usa comando único com operadores &&');
|
||||
console.log('\n💡 A versão alternativa deve ser mais confiável e evitar timeouts.');
|
||||
console.log('🚀 Teste no bot usando "ver sinal SERIAL" e clique em "🔌 Reiniciar ONU"');
|
||||
}
|
||||
|
||||
// Executar teste
|
||||
testResetOnuAlternative().catch(console.error);
|
||||
@@ -1,49 +0,0 @@
|
||||
// Teste da versão corrigida do resetOnuAlternative
|
||||
const SSHManager = require('./src/ssh/manager');
|
||||
|
||||
async function testResetOnuFixed() {
|
||||
console.log('🧪 Testando versão corrigida do resetOnuAlternative...\n');
|
||||
|
||||
const sshManager = new SSHManager();
|
||||
|
||||
// Verificar OLTs disponíveis
|
||||
console.log('📋 OLTs disponíveis:');
|
||||
const olts = sshManager.listOLTs();
|
||||
olts.forEach(olt => {
|
||||
console.log(` - ${olt.id}: ${olt.name} (${olt.host})`);
|
||||
});
|
||||
|
||||
console.log('\n🔧 Sequência de comandos que será executada:');
|
||||
const slot = '1/1/1';
|
||||
const onuId = '10';
|
||||
|
||||
console.log(' 1. config');
|
||||
console.log(` 2. interface gpon ${slot}`);
|
||||
console.log(` 3. onu-reset onu ${onuId}`);
|
||||
console.log(' 4. yes (confirmação)');
|
||||
console.log(' 5. exit (sai do modo interface: config-gpon-1/1/1 → config)');
|
||||
console.log(' 6. exit (sai do modo configuração: config → modo normal)');
|
||||
|
||||
console.log('\n📝 Diferenças da versão corrigida:');
|
||||
console.log(' ✅ Usa "config" em vez de "config terminal"');
|
||||
console.log(' ✅ Executa comandos em sequência, não tudo junto');
|
||||
console.log(' ✅ Aguarda 2 segundos após onu-reset antes de enviar "yes"');
|
||||
console.log(' ✅ Adiciona delays entre comandos para estabilidade');
|
||||
console.log(' ✅ Trata erros de cada comando individualmente');
|
||||
|
||||
console.log('\n🎯 Fluxo esperado na OLT:');
|
||||
console.log(' DM4610-OLT-POP-DITO# config');
|
||||
console.log(' Entering configuration mode terminal');
|
||||
console.log(' DM4610-OLT-POP-DITO(config)# interface gpon 1/1/1');
|
||||
console.log(' DM4610-OLT-POP-DITO(config-gpon-1/1/1)# onu-reset onu 10');
|
||||
console.log(' Are you sure you want to reset this ONU? [no,yes] yes');
|
||||
console.log(' DM4610-OLT-POP-DITO(config-gpon-1/1/1)# exit');
|
||||
console.log(' DM4610-OLT-POP-DITO(config)# exit');
|
||||
console.log(' DM4610-OLT-POP-DITO#');
|
||||
|
||||
console.log('\n✅ Implementação corrigida pronta para teste!');
|
||||
console.log('🚀 Use o bot: "ver sinal DACM91569513" → "🔌 Reiniciar ONU"');
|
||||
}
|
||||
|
||||
// Executar teste
|
||||
testResetOnuFixed().catch(console.error);
|
||||
@@ -1,70 +0,0 @@
|
||||
// Teste da funcionalidade de Reset ONU
|
||||
const SSHManager = require('./src/ssh/manager');
|
||||
|
||||
async function testResetOnu() {
|
||||
console.log('🧪 Iniciando teste de Reset ONU...\n');
|
||||
|
||||
const sshManager = new SSHManager();
|
||||
|
||||
// Teste 1: Verificar se as OLTs estão configuradas
|
||||
console.log('📋 1. Listando OLTs disponíveis:');
|
||||
const olts = sshManager.listOLTs();
|
||||
olts.forEach(olt => {
|
||||
console.log(` - ${olt.id}: ${olt.name} (${olt.host})`);
|
||||
});
|
||||
console.log();
|
||||
|
||||
// Teste 2: Testar parsing de callback data
|
||||
console.log('🔍 2. Testando parsing de callback data:');
|
||||
const testCallbacks = [
|
||||
'reset_onu_olt_dito_1/1/1_5',
|
||||
'reset_onu_olt_colmeia_2/2/2_10',
|
||||
'reset_onu_olt_canaa_3/3/3_15',
|
||||
'reset_onu_olt_canaa2_1/2/3_8'
|
||||
];
|
||||
|
||||
testCallbacks.forEach(callback => {
|
||||
const parts = callback.split('_');
|
||||
let oltId, slot, onuId;
|
||||
|
||||
if (parts.length === 6) {
|
||||
oltId = parts[2] + '_' + parts[3];
|
||||
slot = parts[4];
|
||||
onuId = parts[5];
|
||||
} else {
|
||||
onuId = parts[parts.length - 1];
|
||||
slot = parts[parts.length - 2];
|
||||
oltId = parts.slice(2, -2).join('_');
|
||||
}
|
||||
|
||||
console.log(` Callback: ${callback}`);
|
||||
console.log(` -> OLT: ${oltId}, Slot: ${slot}, ONU: ${onuId}`);
|
||||
console.log();
|
||||
});
|
||||
|
||||
// Teste 3: Verificar se o método resetOnu existe
|
||||
console.log('⚙️ 3. Verificando método resetOnu:');
|
||||
if (typeof sshManager.resetOnu === 'function') {
|
||||
console.log(' ✅ Método resetOnu encontrado');
|
||||
} else {
|
||||
console.log(' ❌ Método resetOnu não encontrado');
|
||||
}
|
||||
|
||||
// Teste 4: Simular chamada do método (sem executar)
|
||||
console.log('\n🔄 4. Simulando estrutura de chamada resetOnu:');
|
||||
console.log(' Parâmetros esperados: equipmentId, slot, onuId');
|
||||
console.log(' Exemplo: resetOnu("olt_dito", "1/1/1", "5")');
|
||||
console.log(' Comandos executados:');
|
||||
console.log(' 1. config');
|
||||
console.log(' 2. interface gpon 1/1/1');
|
||||
console.log(' 3. onu-reset onu 5');
|
||||
console.log(' 4. yes (confirmação)');
|
||||
console.log(' 5. exit');
|
||||
|
||||
console.log('\n✅ Teste de Reset ONU concluído!');
|
||||
console.log('📝 Para testar completamente, use o bot com "ver sinal SERIAL"');
|
||||
console.log(' e clique no botão "🔌 Reiniciar ONU" que aparecerá.');
|
||||
}
|
||||
|
||||
// Executar teste
|
||||
testResetOnu().catch(console.error);
|
||||
@@ -1,60 +0,0 @@
|
||||
// Teste específico para debug do comando "ver sinal"
|
||||
const BotHandler = require('./src/bot/handler');
|
||||
|
||||
// Mock do bot do Telegram
|
||||
const mockBot = {
|
||||
sendMessage: async (chatId, message, options) => {
|
||||
console.log(`📤 MENSAGEM ENVIADA para chat ${chatId}:`);
|
||||
console.log(` Texto: ${message}`);
|
||||
if (options) {
|
||||
console.log(` Opções: ${JSON.stringify(options, null, 2)}`);
|
||||
}
|
||||
console.log('');
|
||||
return { message_id: Date.now() };
|
||||
}
|
||||
};
|
||||
|
||||
async function testVerSinal() {
|
||||
console.log('🧪 Testando comando "ver sinal" diretamente...\n');
|
||||
|
||||
// Criar handler
|
||||
const handler = new BotHandler(mockBot);
|
||||
|
||||
// Testar método handleVerSinal diretamente
|
||||
console.log('🎯 Teste 1: Chamando handleVerSinal diretamente');
|
||||
console.log(' Serial: DACM91569513');
|
||||
console.log(' ChatId: 123456789\n');
|
||||
|
||||
try {
|
||||
await handler.handleVerSinal(123456789, 'DACM91569513');
|
||||
console.log('✅ Método handleVerSinal executado sem erros');
|
||||
} catch (error) {
|
||||
console.error('❌ Erro no handleVerSinal:', error);
|
||||
}
|
||||
|
||||
console.log('\n🧠 Teste 2: Testando processamento NLP');
|
||||
const intent = handler.nlp.processMessage('ver sinal DACM91569513');
|
||||
console.log(' Intent detectado:', intent);
|
||||
|
||||
console.log('\n⚙️ Teste 3: Testando executeAction');
|
||||
const mockUser = { first_name: 'Teste', id: 123456789 };
|
||||
|
||||
try {
|
||||
await handler.executeAction(123456789, intent, mockUser);
|
||||
console.log('✅ executeAction executado sem erros');
|
||||
} catch (error) {
|
||||
console.error('❌ Erro no executeAction:', error);
|
||||
}
|
||||
|
||||
console.log('\n📋 Teste 4: Verificando OLTs disponíveis');
|
||||
const olts = handler.ssh.listOLTs();
|
||||
console.log(` OLTs encontradas: ${olts.length}`);
|
||||
olts.forEach(olt => {
|
||||
console.log(` - ${olt.id}: ${olt.name} (${olt.host})`);
|
||||
});
|
||||
|
||||
console.log('\n✅ Teste de debug concluído!');
|
||||
}
|
||||
|
||||
// Executar teste
|
||||
testVerSinal().catch(console.error);
|
||||
Reference in new issue
Block a user