💧 Izuko Bot VIP

Versão 1.5
Documentação Técnica Completa

📖Visão Geral e Arquitetura

O Izuko Bot VIP v1.5 é um bot multifuncional para WhatsApp, desenvolvido em Node.js, projetado para administrar e moderar grupos, além de oferecer uma vasta gama de funcionalidades de entretenimento e utilidade para os membros. Sua arquitetura é modular, permitindo a fácil adição e manutenção de comandos e sistemas.

O bot utiliza a biblioteca @whiskeysockets/baileys para se conectar à API do WhatsApp, garantindo uma comunicação estável e eficiente. A persistência de dados, como configurações de grupos, rankings, advertências e outros, é realizada através de arquivos JSON armazenados localmente no diretório banco de dados, funcionando como um sistema de banco de dados simples e baseado em arquivos.

Tecnologias Principais

Tecnologia Propósito
Node.js Ambiente de execução para o bot.
@whiskeysockets/baileys Biblioteca principal para a conexão com o WhatsApp.
Axios Cliente HTTP para realizar requisições a APIs externas (ex: GPT, upload de mídias).
Chalk Estilização de logs no console para melhor legibilidade.
Fluent-ffmpeg Manipulação e conversão de mídias (áudio e vídeo).
Moment-timezone Gerenciamento de datas e fusos horários.
Node-cron Agendamento de tarefas (cron jobs).
Pino Logger para registrar eventos e depurar o código.

📁Estrutura de Arquivos e Diretórios

A estrutura do projeto é organizada para separar a lógica principal, os comandos, as configurações e os dados.

Izuko-Bot-VIP-V1.5/
├── commands/             # Contém todos os arquivos de comandos individuais.
├── banco de dados/       # Armazena os arquivos JSON que funcionam como banco de dados.
│   ├── admin_status/     # (Exemplo) Status de administrador em grupos.
│   ├── advertencias.json # Registros de advertências.
│   └── ...               # Outros arquivos de configuração e dados.
├── escanear/             # Módulos para monitoramento (ex: entrada de membros).
│   └── scanner.js
├── settings/             # Configurações e bibliotecas de suporte.
│   ├── lib/              # Módulos de lógica de negócios (ranking, antilink, etc.).
│   └── settings.json     # Configurações globais do bot (prefixo, dono, etc.).
├── node_modules/         # Dependências do Node.js.
├── main.js               # Ponto de entrada principal da aplicação.
├── package.json          # Define os metadados do projeto e as dependências.
└── start.sh              # Script de inicialização.

⚙️Fluxo de Execução e Lógica Principal

O arquivo main.js é o coração do bot. Ele é responsável por:

🔧 Inicialização

Carrega todas as dependências necessárias, lê e carrega todos os arquivos de comando do diretório /commands para um Map do JavaScript.

🔌 Conexão

Inicializa a conexão com o WhatsApp usando makeWASocket e gerencia a autenticação via código de pareamento.

📨 Manipulação de Eventos

Monitora eventos como connection.update, messages.upsert e group-participants.update.

Estrutura de um Comando

Cada comando é um módulo Node.js que exporta um objeto com uma estrutura padronizada. Isso torna o bot extensível e fácil de manter.

Exemplo de um comando simples (ping.js):
module.exports = {
    name: 'ping',
    aliases: [], // Apelidos para o comando
    async execute({ lux, msg, from }) { // Função principal
        const latencia = (Date.now() / 1000) - msg.messageTimestamp;
        await lux.sendMessage(from, { 
            text: `*Latência:* ${latencia.toFixed(3)} segundos` 
        }, { quoted: msg });
    }
};
Propriedade Descrição
name O nome principal do comando, usado para invocá-lo.
aliases Uma lista de nomes alternativos (apelidos) para o mesmo comando.
execute A função assíncrona que contém a lógica do comando. Recebe um objeto de contexto com todas as ferramentas e informações da mensagem.
isKeyword (Opcional) Se true, o comando é acionado por uma palavra-chave específica, sem a necessidade de prefixo.

🛡️Sistema de Moderação

Um dos pilares do Izuko Bot é seu robusto sistema de moderação, projetado para manter a ordem e a segurança nos grupos.

Anti-Link

Este sistema permite diferentes níveis de restrição contra o envio de links no grupo. Cada comando ativa um nível de punição diferente, oferecendo flexibilidade para os administradores.

Nível Comando Ação
1 &anti-link Apaga a mensagem com o link.
2 &anti-link2 Aplica uma advertência ao usuário.
3 &anti-link3 Remove o usuário do grupo.
4 &anti-link4 Bane o usuário (remove permanentemente).
5 &anti-link5 Silencia (muta) o usuário.

Outros Sistemas de Moderação

  • Anti-Flood: Previne que usuários enviem um número excessivo de mensagens em um curto período.
  • Sistema de Advertências: Permite que administradores apliquem advertências formais. Acumular 3 advertências resulta em banimento.
  • Anti-Imagem: Impede o envio de imagens no grupo.
  • Sistema de Mute: Silencia membros por tempo determinado ou permanentemente.

🏆Sistema de Ranking e Níveis

O bot implementa um sistema de gamificação para incentivar a participação dos membros nos grupos, baseado em XP, pontos e patentes.

⚡ Ganho de XP

Os membros ganham XP ao interagir no grupo (enviando mensagens), com um cooldown de 2 minutos para evitar flood.

💎 Conversão de XP

Ao atingir 100 XP, o XP acumulado é automaticamente convertido em Pontos (200 pontos por XP).

🎖️ Subir de Nível

Ao acumular 3000 pontos, o membro sobe de nível, alcançando uma nova patente. O bot anuncia a promoção no grupo.

Hierarquia de Patentes

Bronze I-III
Prata I-III
Platina I-III
Ouro I-III
Diamante I-III
Esmeralda I-III
Mestre I-III
Mestre de Honra
Lendário Místico

🎮Comandos de Entretenimento

O bot oferece uma variedade de jogos e comandos interativos para engajar os membros do grupo.

🎯 Jogo da Velha

Permite que dois jogadores disputem uma partida de Jogo da Velha diretamente no chat do grupo.

🎰 Cassino

Um jogo de caça-níqueis onde os usuários podem apostar pontos para tentar ganhar mais.

🪙 Cara ou Coroa

Aposta pontos em um jogo de cara ou coroa com chance de dobrar a aposta.

🎲 Eu Nunca

Inicia uma rodada do jogo "Eu Nunca" com perguntas aleatórias do banco de dados.

📋Lista Completa de Comandos (144 comandos)

🔹 Comandos de Membros

&menu

&m &comandos

Exibe o menu principal do bot com todos os comandos disponíveis, informações sobre o bot e o ping atual.

Uso: &menu

&ping

Verifica a latência do bot, mostrando o tempo de resposta em segundos.

Uso: &ping

&sticker / &s / &f

&stk

Converte uma imagem, vídeo ou GIF em uma figurinha (sticker) do WhatsApp.

Uso: Envie uma imagem/vídeo e responda com &sticker

&toimg

Converte uma figurinha (sticker) de volta para uma imagem.

Uso: Responda a uma figurinha com &toimg

&attp / &ttp

Cria uma figurinha animada (&attp) ou estática (&ttp) a partir de um texto.

Uso: &attp
Exemplo: &attp Olá Mundo

&somar / &multiplicar / &subtrair / &dividir

Realiza operações matemáticas básicas entre dois números.

Uso: &somar
Exemplo: &somar 10 20 → Resultado: 30

🔹 Comandos de Administração

&ban

&banir &exilar &xô

Remove um membro do grupo. O dono do bot não pode ser banido.

Uso: &ban @usuario ou responda a uma mensagem com &ban
Exemplo: &ban @5511999999999

&promover / &rebaixar

&promote &demote &adm &unadm

Promove um membro a administrador ou remove os privilégios de administrador.

Uso: &promover @usuario

&marcar

Marca todos os membros do grupo em uma mensagem.

Uso: &marcar
Exemplo: &marcar Reunião importante!

&grupo-a / &grupo-f

&abrirgp &fechargp &gp-a &gp-f

Abre ou fecha o grupo para que apenas administradores possam enviar mensagens.

Uso: &grupo-a (abrir) ou &grupo-f (fechar)

&delete

&d &deletar

Apaga uma mensagem do grupo (responda à mensagem que deseja apagar).

Uso: Responda a uma mensagem com &delete

&descgp / &nomegp / &fotogp

Altera a descrição, nome ou foto de perfil do grupo.

Uso: &descgp
Exemplo: &nomegp Grupo dos Amigos

&linkgp / &redefinir-link

Obtém o link de convite do grupo ou redefine o link (invalida o anterior).

Uso: &linkgp

&temporizador-gp

&fechar-gp &fgp &tempogp

Agenda o fechamento do grupo para um horário específico.

Uso: &temporizador-gp
Exemplo: &temporizador-gp 22:00

&votacao

Inicia uma votação no grupo com múltiplas opções.

Uso: &votacao | | | ...
Exemplo: &votacao Qual a melhor pizza? | Calabresa | Mussarela | Portuguesa

🔹 Comandos de Moderação

&anti-link (Níveis 1-5)

&antilink &anti-link2 &anti-link3 &anti-link4 &anti-link5

Ativa ou desativa a proteção Anti-Link com diferentes níveis de punição (apagar, advertir, remover, banir, mutar).

Uso: &anti-link (para nível 1)

&antiflood

&anti-flood

Ativa ou desativa a proteção Anti-Flood (previne spam de mensagens).

Uso: &antiflood

&antiimg

Ativa ou desativa a proteção Anti-Imagem (impede o envio de imagens).

Uso: &antiimg

&mute / &mute2 / &mute3

&silenciar &silenciar2 &silenciar3

Silencia um membro por um período determinado ou permanentemente.

Uso: &mute @usuario
Exemplo: &mute @5511999999999 10m (silencia por 10 minutos)

&desmute

&libertar &perdoar

Remove o silenciamento de um membro.

Uso: &desmute @usuario

&advertir

&adv

Aplica uma advertência formal a um membro. Ao atingir 3 advertências, o usuário é banido automaticamente.

Uso: &advertir @usuario
Exemplo: &advertir @5511999999999 Desrespeito às regras

&ver-advs / &remover-advs

&checar-advs &perdoar-advs

Consulta o número de advertências de um membro ou remove todas as advertências.

Uso: &ver-advs @usuario

&bemvindo

&welcome

Ativa ou desativa o sistema de boas-vindas para novos membros.

Uso: &bemvindo on ou &bemvindo off

&legendabv

&setwelcome

Define a mensagem de boas-vindas personalizada. Use @user para mencionar o novo membro e @grupo para o nome do grupo.

Uso: &legendabv
Exemplo: &legendabv Bem-vindo ao grupo, @user!

🔹 Comandos de Ranking

&level

Consulta o nível, patente e pontos de um membro.

Uso: &level (seu próprio nível) ou &level @usuario

&rank

Exibe o ranking geral dos membros do grupo ordenado por pontuação.

Uso: &rank

&xp-me

Consulta seu XP atual acumulado.

Uso: &xp-me

&add-pontos / &add-xp

(Admin) Adiciona pontos ou XP manualmente a um membro.

Uso: &add-pontos @usuario
Exemplo: &add-pontos @5511999999999 500

&converter-xp

Converte seu XP acumulado em pontos seguindo a taxa de conversão configurada.

Uso: &converter-xp

&toggle-rank

&togglerank &ligar-rank &desligar-rank

Ativa ou desativa o sistema de ranking no grupo.

Uso: &toggle-rank

&backup-level / &restaurarbckp-level

(Admin) Cria um backup do sistema de ranking ou restaura a partir de um backup.

Uso: &backup-level

🔹 Comandos de Jogos

&velha

&jogo-velha &tictactoe &jv

Inicia um jogo da velha contra outro jogador.

Uso: &velha @adversario
Exemplo: &velha @5511999999999

&velha-jogar

Faz uma jogada no jogo da velha ativo.

Uso: &velha-jogar
Exemplo: &velha-jogar 5 (joga na posição 5 do tabuleiro)

&cancelarvelha

Cancela o jogo da velha ativo sem declarar vencedor.

Uso: &cancelarvelha

&cara-coroa

Joga cara ou coroa apostando pontos. Se acertar, ganha o dobro; se errar, perde os pontos.

Uso: &cara-coroa
Exemplo: &cara-coroa cara 100

&cassino

Joga no cassino (caça-níqueis) apostando pontos. Dependendo da combinação, pode ganhar múltiplos da aposta.

Uso: &cassino
Exemplo: &cassino 50

&eununca

Inicia uma rodada do jogo "Eu Nunca" com perguntas aleatórias do banco de dados.

Uso: &eununca

🔹 Comandos de Download e Mídia

&mp3 / &play

Baixa o áudio de um vídeo do YouTube a partir de um link ou termo de busca.

Uso: &mp3
Exemplo: &mp3 Imagine Dragons - Believer

&mp4 / &video

Baixa um vídeo do YouTube a partir de um link ou termo de busca.

Uso: &mp4

&igdl

Baixa vídeos e fotos do Instagram.

Uso: &igdl
Exemplo: &igdl https://www.instagram.com/p/...

&mediafire-doc / &mega

&mfd

Faz o download de arquivos do Mediafire ou MEGA.

Uso: &mediafire-doc

&tomp3

Converte um vídeo em áudio MP3.

Uso: Envie um vídeo e responda com &tomp3

&upload-catbox / &upload-drive

Faz upload de uma mídia para o Catbox ou Google Drive e retorna o link.

Uso: Envie uma mídia e responda com &upload-catbox

&izuko-edit-img

&editimg &iaedit

Edita uma imagem usando inteligência artificial com base em um prompt.

Uso: Envie uma imagem e responda com &izuko-edit-img
Exemplo: &izuko-edit-img adicionar um chapéu

🔹 Comandos do Dono

&bot-on / &bot-off

Ativa ou desativa o bot em um grupo específico.

Uso: &bot-on

&restart

Reinicia o bot, recarregando todas as configurações.

Uso: &restart

&gpt-pv

Conversa com uma IA (GPT) no privado.

Uso: &gpt-pv
Exemplo: &gpt-pv Qual é a capital da França?

&setprefix / &revelar-prefixo

Altera o prefixo dos comandos ou exibe o prefixo atual.

Uso: &setprefix
Exemplo: &setprefix !

&entrargp

Faz o bot entrar em um grupo através de um link de convite.

Uso: &entrargp
Exemplo: &entrargp https://chat.whatsapp.com/...

&auto-sair

Faz o bot sair automaticamente de grupos inativos.

Uso: &auto-sair

⚙️Configuração e Customização

O bot pode ser facilmente customizado através do arquivo settings/settings.json e de outros arquivos de configuração.

settings.json

Este é o arquivo de configuração principal, onde você pode definir os parâmetros essenciais do bot.

{
  "prefix": "&",
  "ownerNumber": "SEU_NUMERO@lid",
  "botLid": "NUMERO_DO_BOT@lid",
  "nomeBot": "Izuko Privat",
  "nomeDono": "Seu Nome",
  "versao": "1.5"
}
Chave Descrição
prefix O caractere usado para invocar os comandos (ex: &menu).
ownerNumber O JID (ID do WhatsApp) do dono do bot. Garante acesso a comandos restritos.
botLid O JID do próprio bot.
nomeBot O nome do bot que aparecerá em mensagens como o menu.
nomeDono O nome do dono que aparecerá em mensagens.
versao A versão atual do bot.

Adicionando e Modificando Comandos

  • Para adicionar um novo comando: Crie um novo arquivo .js na pasta /commands seguindo a estrutura de comando padrão.
  • Para modificar um comando existente: Edite o arquivo correspondente na pasta /commands.
  • Para adicionar imagens ou áudios ao menu: Adicione os arquivos nas pastas banco de dados/menu img e banco de dados/audio menu. O bot selecionará um aleatoriamente ao executar o comando &menu.

Conclusão

O Izuko Bot VIP v1.5 é uma solução poderosa e flexível para gerenciamento de grupos no WhatsApp. Sua arquitetura modular facilita a manutenção e a expansão com novas funcionalidades. A combinação de ferramentas de moderação, sistemas de engajamento e comandos de utilidade o torna um assistente completo para qualquer comunidade online.

Principais Características

  • 144 comandos funcionais organizados por categoria
  • Sistema de ranking com XP, pontos e 23 patentes
  • 5 níveis de proteção Anti-Link configuráveis
  • Jogos interativos (Jogo da Velha, Cassino, Cara ou Coroa)
  • Sistema de advertências e moderação automatizada
  • Download de mídias de YouTube, Instagram e mais
  • Arquitetura modular fácil de expandir
  • Banco de dados JSON simples e eficiente