help: fix
Signed-off-by: Rodrigo B. de Sousa Martins <rodrigo.sousa.577@gmail.com>
This commit is contained in:
1 parent
ae47ff6640
commit
670dfed4bc
1 file changed
+202
-132
+202
-132
@@ -293,166 +293,233 @@ Digite /help para ver todos os comandos disponíveis!
|
|||||||
* Comando /help
|
* Comando /help
|
||||||
*/
|
*/
|
||||||
async handleHelp(chatId) {
|
async handleHelp(chatId) {
|
||||||
const helpMessage = `📋 COMANDOS DISPONÍVEIS:
|
const helpMessage = `🤖 **BOT DE AJUDA TÉCNICA**
|
||||||
|
|
||||||
🔧 COMANDOS BÁSICOS:
|
🔧 **COMANDOS PRINCIPAIS:**
|
||||||
/start - Inicia o bot
|
• /start - Inicia o bot
|
||||||
/help - Mostra esta ajuda
|
• /help - Esta ajuda
|
||||||
/equipamentos - Lista equipamentos
|
• /equipamentos - Lista equipamentos
|
||||||
|
|
||||||
🔐 SSH E CONEXÕES:
|
🏢 **GESTÃO DE CLIENTES:**
|
||||||
/ssh <equipamento> - Conecta via SSH
|
• "buscar cliente João Silva"
|
||||||
|
• "dados cliente 123.456.789-10"
|
||||||
|
• "ver faturas cliente"
|
||||||
|
• "abrir suporte"
|
||||||
|
|
||||||
|
📡 **OLT/ONU:**
|
||||||
|
• "ver sinal DACM91569513"
|
||||||
|
• "adicionar onu SERIAL"
|
||||||
|
• "remover onu SERIAL"
|
||||||
|
|
||||||
|
� **JUNIPER:**
|
||||||
|
• "desconectar cliente USER"
|
||||||
|
• "listar usuários conectados"
|
||||||
|
|
||||||
|
🔐 **SSH:**
|
||||||
• "ssh juniper"
|
• "ssh juniper"
|
||||||
• "acessar concentrador"
|
• "acessar concentrador"
|
||||||
|
|
||||||
👥 JUNIPER - GERENCIAR USUÁRIOS:
|
📋 **Para ver comandos detalhados, use:**`;
|
||||||
• "desconectar cliente USUARIO"
|
|
||||||
• "kick usuário USUARIO"
|
|
||||||
• "remover cliente USUARIO"
|
|
||||||
• "listar usuários conectados"
|
|
||||||
|
|
||||||
📡 OLT - VERIFICAR SINAL DE ONU:
|
const keyboard = [
|
||||||
|
[
|
||||||
|
{ text: '🏢 TopSapp', callback_data: 'help_topsapp' },
|
||||||
|
{ text: '� OLT/ONU', callback_data: 'help_olt' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ text: '👥 Juniper', callback_data: 'help_juniper' },
|
||||||
|
{ text: '🔐 SSH', callback_data: 'help_ssh' }
|
||||||
|
],
|
||||||
|
[
|
||||||
|
{ text: '🎫 Suporte', callback_data: 'help_suporte' },
|
||||||
|
{ text: '🛡️ Admin', callback_data: 'help_admin' }
|
||||||
|
]
|
||||||
|
];
|
||||||
|
|
||||||
|
await this.bot.sendMessage(chatId, helpMessage, {
|
||||||
|
parse_mode: 'Markdown',
|
||||||
|
reply_markup: {
|
||||||
|
inline_keyboard: keyboard
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Handler para callbacks de help detalhado
|
||||||
|
*/
|
||||||
|
async handleHelpDetailCallback(callbackQuery, data) {
|
||||||
|
const chatId = callbackQuery.message.chat.id;
|
||||||
|
const helpType = data.replace('help_', '');
|
||||||
|
|
||||||
|
await this.bot.answerCallbackQuery(callbackQuery.id);
|
||||||
|
|
||||||
|
let helpMessage = '';
|
||||||
|
let backButton = { text: '⬅️ Voltar', callback_data: 'help_main' };
|
||||||
|
|
||||||
|
switch (helpType) {
|
||||||
|
case 'main':
|
||||||
|
await this.handleHelp(chatId);
|
||||||
|
return;
|
||||||
|
|
||||||
|
case 'topsapp':
|
||||||
|
helpMessage = `🏢 **TOPSAPP - GESTÃO DE CLIENTES**
|
||||||
|
|
||||||
|
**🔍 BUSCAR CLIENTES:**
|
||||||
|
• "buscar cliente João Silva"
|
||||||
|
• "buscar cliente 123.456.789-10"
|
||||||
|
• "buscar cliente Guarai João"
|
||||||
|
|
||||||
|
**📋 DADOS CADASTRAIS:**
|
||||||
|
• "dados cliente João Silva"
|
||||||
|
• "dados cadastrais 123.456.789-10"
|
||||||
|
|
||||||
|
**📄 FATURAS:**
|
||||||
|
• "ver faturas 123.456.789-10"
|
||||||
|
• "gerar boleto fatura123"
|
||||||
|
|
||||||
|
**⚙️ SERVIÇOS:**
|
||||||
|
• "listar serviços 123.456.789-10"
|
||||||
|
|
||||||
|
**🔒 BLOQUEIO/LIBERAÇÃO:**
|
||||||
|
• "bloquear 123.456.789-10"
|
||||||
|
• "liberar 123.456.789-10"
|
||||||
|
|
||||||
|
**📊 STATUS:**
|
||||||
|
• "status topsapp"`;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'olt':
|
||||||
|
helpMessage = `📡 **OLT/ONU - COMANDOS**
|
||||||
|
|
||||||
|
**📶 VERIFICAR SINAL:**
|
||||||
• "ver sinal DACM91569513"
|
• "ver sinal DACM91569513"
|
||||||
• "verificar sinal ABCD12345678"
|
• "verificar sinal ABCD12345678"
|
||||||
• "sinal SERIAL_NUMBER"
|
• "sinal SERIAL_NUMBER"
|
||||||
• Suporte para OLT Fiberhome + OLTs Datacom
|
|
||||||
• Interface unificada para todas as OLTs
|
|
||||||
|
|
||||||
➕ OLT - ADICIONAR ONU:
|
**➕ ADICIONAR ONU:**
|
||||||
• "adicionar onu DACM91569513"
|
• "adicionar onu DACM91569513"
|
||||||
• "cadastrar ABCD12345678"
|
• "cadastrar ABCD12345678"
|
||||||
• "add onu SERIAL_NUMBER"
|
• "add onu SERIAL_NUMBER"
|
||||||
|
|
||||||
🗑️ OLT - REMOVER ONU:
|
**🗑️ REMOVER ONU:**
|
||||||
• "remover onu DACM91569513"
|
• "remover onu DACM91569513"
|
||||||
• "deletar ABCD12345678"
|
• "deletar ABCD12345678"
|
||||||
• "remover SERIAL_NUMBER"
|
• "remover SERIAL_NUMBER"
|
||||||
|
|
||||||
🔄 OLT - REINICIAR ONU:
|
**🔄 REINICIAR ONU:**
|
||||||
• Após verificar o sinal, use o botão "🔌 Reiniciar ONU"
|
• Após verificar sinal, use botão "🔌 Reiniciar ONU"
|
||||||
• Comando confirma antes de reiniciar
|
|
||||||
• Processo automático com confirmação
|
|
||||||
|
|
||||||
⬆️ OLT - ATUALIZAR FIRMWARE ONU:
|
**⬆️ ATUALIZAR FIRMWARE:**
|
||||||
• Após verificar o sinal, use o botão "⬆️ Atualizar ONU"
|
• Após verificar sinal, use botão "⬆️ Atualizar ONU"
|
||||||
• Detecta automaticamente o modelo (DM986-100/DM986-414)
|
|
||||||
• Oferece opções de firmware específicas para cada modelo
|
|
||||||
• Processo seguro com confirmação
|
|
||||||
|
|
||||||
🏢 TOPSAPP - GESTÃO DE CLIENTES:
|
**🏢 OLTs DISPONÍVEIS:**
|
||||||
• "buscar cliente João da Silva"
|
• OLT FIBERHOME (131.0.192.9)
|
||||||
• "buscar cliente 123.456.789-10"
|
|
||||||
• "buscar cliente Guarai João"
|
|
||||||
• "dados cliente João Silva" (dados cadastrais completos)
|
|
||||||
• "dados cadastrais 123.456.789-10"
|
|
||||||
• "ver faturas 123.456.789-10"
|
|
||||||
• "listar serviços 123.456.789-10"
|
|
||||||
• "gerar boleto fatura123"
|
|
||||||
• "bloquear 123.456.789-10"
|
|
||||||
• "liberar 123.456.789-10"
|
|
||||||
• "status topsapp"
|
|
||||||
|
|
||||||
🎫 TOPSAPP - ABERTURA DE SUPORTE:
|
|
||||||
• "abrir suporte"
|
|
||||||
• "criar suporte para João Silva"
|
|
||||||
• "novo chamado"
|
|
||||||
• "suporte cliente 123.456.789-10"
|
|
||||||
|
|
||||||
🔄 PROCESSO INTERATIVO DE SUPORTE:
|
|
||||||
1️⃣ Busca do cliente (nome ou CPF)
|
|
||||||
2️⃣ Seleção do serviço
|
|
||||||
3️⃣ Escolha da categoria do problema
|
|
||||||
4️⃣ Seleção do técnico responsável
|
|
||||||
5️⃣ Agendamento de data/hora para visita
|
|
||||||
6️⃣ Descrição detalhada do problema
|
|
||||||
7️⃣ Confirmação e criação do protocolo
|
|
||||||
|
|
||||||
📅 EXEMPLOS DE DATA/HORA:
|
|
||||||
• "amanhã às 14h"
|
|
||||||
• "sexta-feira 09:00"
|
|
||||||
• "15/08 às 16h30"
|
|
||||||
• "hoje 18h"
|
|
||||||
• "em 3 dias às 10h"
|
|
||||||
• "segunda-feira 08:30"
|
|
||||||
|
|
||||||
📋 DADOS CADASTRAIS COMPLETOS:
|
|
||||||
• Informações pessoais do cliente
|
|
||||||
• CPF, telefone, endereço completo
|
|
||||||
• Status atual do cliente (ativo/inativo)
|
|
||||||
• Dados de todos os serviços contratados
|
|
||||||
• Login, senha, IP fixo (quando aplicável)
|
|
||||||
• Plano contratado, valor mensalidade
|
|
||||||
• Dia de vencimento, status do serviço
|
|
||||||
• Dados FTTH: OLT, PON, VLAN, Serial ONU
|
|
||||||
• Modelo da ONU e níveis de sinal RX/TX
|
|
||||||
|
|
||||||
🔍 BUSCA INTELIGENTE:
|
|
||||||
• Busca por nome (com ou sem acentos)
|
|
||||||
• Busca por CPF (formatado ou não)
|
|
||||||
• Busca por ID do cliente
|
|
||||||
• Múltiplos resultados com seleção
|
|
||||||
• Interface com botões para ações rápidas
|
|
||||||
|
|
||||||
🔧 SERVIÇOS INDIVIDUAIS:
|
|
||||||
• Use "listar serviços CLIENTE" para ver todos os serviços
|
|
||||||
• Clique nos botões para bloquear/liberar serviços específicos
|
|
||||||
• Controle granular por serviço do cliente
|
|
||||||
|
|
||||||
📊 STATUS E MONITORAMENTO:
|
|
||||||
/status <equipamento> - Verifica status
|
|
||||||
• "verificar concentrador"
|
|
||||||
• "status do juniper"
|
|
||||||
|
|
||||||
🗣️ LINGUAGEM NATURAL:
|
|
||||||
• "Conectar no concentrador"
|
|
||||||
• "Desconectar cliente joao123"
|
|
||||||
• "Ver sinal DACM91569513"
|
|
||||||
• "Adicionar onu DACM91569513"
|
|
||||||
• "Remover onu DACM91569513"
|
|
||||||
• "Listar usuários conectados"
|
|
||||||
• "Reiniciar juniper"
|
|
||||||
• "Ping 131.0.192.254"
|
|
||||||
• "Buscar cliente João da Silva"
|
|
||||||
• "Ver faturas do CPF 123.456.789-10"
|
|
||||||
|
|
||||||
✅ EXEMPLOS PRÁTICOS:
|
|
||||||
• "desconectar cliente user123"
|
|
||||||
• "ver sinal DACM91569513"
|
|
||||||
• "adicionar onu DACM91569513"
|
|
||||||
• "remover onu DACM91569513"
|
|
||||||
• "buscar cliente João Pedro Afonso"
|
|
||||||
• "ver faturas cliente 123.456.789-10"
|
|
||||||
• "gerar boleto fatura456"
|
|
||||||
• "bloquear cliente 789"
|
|
||||||
• "listar clientes conectados"
|
|
||||||
• "verificar status concentrador"
|
|
||||||
|
|
||||||
🏢 OLTs DISPONÍVEIS:
|
|
||||||
• OLT FIBERHOME (131.0.192.9) - Via TL1
|
|
||||||
• OLT DITO (192.168.190.7)
|
• OLT DITO (192.168.190.7)
|
||||||
• OLT COLMEIA (192.168.190.8)
|
• OLT COLMEIA (192.168.190.8)
|
||||||
• OLT CANAA (192.168.190.9)
|
• OLT CANAA (192.168.190.9)
|
||||||
• OLT CANAA 2 (192.168.190.10)
|
• OLT CANAA 2 (192.168.190.10)
|
||||||
• OLT PEDRO AFONSO 1 (192.168.100.2)
|
• OLT PEDRO AFONSO 1 (192.168.100.2)
|
||||||
• OLT CANAVIEIRAS (192.168.100.4)
|
• OLT CANAVIEIRAS (192.168.100.4)`;
|
||||||
|
break;
|
||||||
|
|
||||||
🛡️ COMANDOS ADMINISTRATIVOS:
|
case 'juniper':
|
||||||
• "admin" - Painel administrativo
|
helpMessage = `👥 **JUNIPER - GERENCIAR USUÁRIOS**
|
||||||
• "usuarios autorizados" - Ver usuários com acesso
|
|
||||||
• "meu id" - Ver seu ID do Telegram
|
|
||||||
|
|
||||||
🔶 FIBERHOME - COMANDOS ESPECÍFICOS:
|
**🚫 DESCONECTAR:**
|
||||||
• "status onu FHTT12345678" - Status detalhado de ONU específica
|
• "desconectar cliente USUARIO"
|
||||||
• "verificar onu FHTT12345678" - Verificar ONU por serial
|
• "kick usuário USUARIO"
|
||||||
• "onu status DeviceName" - Status por nome do dispositivo
|
• "remover cliente USUARIO"
|
||||||
• "fiberhome status" - Status das conexões Fiberhome
|
|
||||||
• Use "ver sinal" para interface unificada
|
|
||||||
|
|
||||||
🔒 **SEGURANÇA:**
|
**📊 LISTAR:**
|
||||||
🛡️ Bot restrito a usuários autorizados
|
• "listar usuários conectados"
|
||||||
🆔 Para solicitar acesso, forneça seu ID`;
|
|
||||||
|
**🔧 STATUS:**
|
||||||
await this.bot.sendMessage(chatId, helpMessage);
|
• "verificar concentrador"
|
||||||
|
• "status do juniper"
|
||||||
|
|
||||||
|
**🌐 PING:**
|
||||||
|
• "ping 131.0.192.254"
|
||||||
|
|
||||||
|
**🔄 REINICIAR:**
|
||||||
|
• "reiniciar juniper"`;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'ssh':
|
||||||
|
helpMessage = `🔐 **SSH E CONEXÕES**
|
||||||
|
|
||||||
|
**📡 CONECTAR:**
|
||||||
|
• /ssh <equipamento>
|
||||||
|
• "ssh juniper"
|
||||||
|
• "acessar concentrador"
|
||||||
|
|
||||||
|
**📋 LISTAR:**
|
||||||
|
• /equipamentos
|
||||||
|
|
||||||
|
**🔧 EXEMPLOS:**
|
||||||
|
• "conectar no concentrador"
|
||||||
|
• "acessar juniper"
|
||||||
|
• "ssh olt"`;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'suporte':
|
||||||
|
helpMessage = `🎫 **SISTEMA DE SUPORTE**
|
||||||
|
|
||||||
|
**🆕 ABRIR SUPORTE:**
|
||||||
|
• "abrir suporte"
|
||||||
|
• "criar suporte para João Silva"
|
||||||
|
• "novo chamado"
|
||||||
|
• "suporte cliente 123.456.789-10"
|
||||||
|
|
||||||
|
**🔄 PROCESSO INTERATIVO:**
|
||||||
|
1️⃣ Busca do cliente (nome ou CPF)
|
||||||
|
2️⃣ Seleção do serviço
|
||||||
|
3️⃣ Escolha da categoria do problema
|
||||||
|
4️⃣ Seleção do técnico responsável
|
||||||
|
5️⃣ Agendamento de data/hora
|
||||||
|
6️⃣ Descrição detalhada
|
||||||
|
7️⃣ Confirmação e protocolo
|
||||||
|
|
||||||
|
**📅 EXEMPLOS DE DATA/HORA:**
|
||||||
|
• "amanhã às 14h"
|
||||||
|
• "sexta-feira 09:00"
|
||||||
|
• "15/08 às 16h30"
|
||||||
|
• "hoje 18h"
|
||||||
|
• "em 3 dias às 10h"
|
||||||
|
• "segunda-feira 08:30"`;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'admin':
|
||||||
|
helpMessage = `🛡️ **COMANDOS ADMINISTRATIVOS**
|
||||||
|
|
||||||
|
**👥 USUÁRIOS:**
|
||||||
|
• "admin"
|
||||||
|
• "usuarios autorizados"
|
||||||
|
• "meu id"
|
||||||
|
|
||||||
|
**📊 STATUS:**
|
||||||
|
• "fiberhome status"
|
||||||
|
• "status topsapp"
|
||||||
|
|
||||||
|
**🔧 FIBERHOME ESPECÍFICOS:**
|
||||||
|
• "status onu FHTT12345678"
|
||||||
|
• "verificar onu FHTT12345678"
|
||||||
|
• "onu status DeviceName"
|
||||||
|
|
||||||
|
**🔒 SEGURANÇA:**
|
||||||
|
• Bot restrito a usuários autorizados
|
||||||
|
• Para solicitar acesso, forneça seu ID`;
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
helpMessage = '❌ Seção de ajuda não encontrada.';
|
||||||
|
}
|
||||||
|
|
||||||
|
await this.bot.sendMessage(chatId, helpMessage, {
|
||||||
|
parse_mode: 'Markdown',
|
||||||
|
reply_markup: {
|
||||||
|
inline_keyboard: [[backButton]]
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -1047,6 +1114,9 @@ Digite /help para ver todos os comandos disponíveis!
|
|||||||
} else if (data.startsWith('servicos_cliente_')) {
|
} else if (data.startsWith('servicos_cliente_')) {
|
||||||
console.log(`🔍 Condição servicos_cliente_ atendida`);
|
console.log(`🔍 Condição servicos_cliente_ atendida`);
|
||||||
await this.handleServicosClienteCallback(callbackQuery, data);
|
await this.handleServicosClienteCallback(callbackQuery, data);
|
||||||
|
} else if (data.startsWith('help_')) {
|
||||||
|
console.log(`🔍 Condição help_ atendida`);
|
||||||
|
await this.handleHelpDetailCallback(callbackQuery, data);
|
||||||
} else if (data === 'separator') {
|
} else if (data === 'separator') {
|
||||||
// Ignorar clique no separador visual
|
// Ignorar clique no separador visual
|
||||||
await this.bot.answerCallbackQuery(callbackQuery.id);
|
await this.bot.answerCallbackQuery(callbackQuery.id);
|
||||||
|
|||||||
Reference in new issue
Block a user