Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤖 Rudo Bot - Bot de Anime para WhatsApp

Bot avançado do WhatsApp focado em anime, figurinhas e diversão! Desenvolvido com Baileys.

✨ Features

🎨 Figurinhas

  • !sticker / !s - Criar figurinha de imagem (cite a foto)
  • !stickertexto [texto] - Figurinha com texto personalizado
  • !animesticker [personagem] - Figurinha anime aleatória
  • Novo: Suporte a vídeos animados! (máx 6 segundos)

📺 Anime

  • !anime [nome] - Buscar informações de anime
  • !random - Anime aleatório
  • !personagem [nome] - Informações de personagem
  • Melhoria: Cache inteligente para resultados mais rápidos

🎮 Diversão

  • !waifu - Imagem waifu aleatória
  • !quiz - Quiz de anime com pontuação persistente

👮 Administrador

  • !ban - Banir usuário do grupo
  • !kick - Expulsar usuário do grupo
  • !fechargrupo - Fechar grupo (só admins podem escrever)
  • !abrirgrupo - Abrir grupo (todos podem escrever)
  • !mute - Silenciar usuário
  • !promover - Promover a admin
  • !rebaixar - Rebaixar admin
  • !groupinfo - Informações do grupo
  • Melhoria: Suas respostas são salvas e estatísticas calculadas

ℹ️ Geral

  • !menu - Mostrar menu de comandos

🚀 Instalação

1. Pré-requisitos

  • Node.js 16+ instalado
  • FFmpeg instalado (para suporte a vídeos)
  • WhatsApp ativo

2. Instalação de FFmpeg

Windows (com Chocolatey):

choco install ffmpeg

Windows (Manual): Baixe em: https://ffmpeg.org/download.html

Linux:

sudo apt-get install ffmpeg

macOS:

brew install ffmpeg

3. Setup do Bot

# Clonar/baixar o projeto
cd rudo-md

# Instalar dependências
npm install

# Iniciar o bot
npm start

# Escanear QR Code com WhatsApp

🎯 Uso

Exemplo 1: Criar uma figurinha

[Cite uma imagem no WhatsApp]
!sticker

Exemplo 2: Buscar anime

!anime one piece

Exemplo 3: Quiz com pontuação

!quiz
A (responder com A, B, C ou D)

Sua pontuação será salva automaticamente!

Exemplo 4: Figurinha de vídeo

[Cite um vídeo curto (máx 6s)]
!sticker

📊 Melhorias Implementadas

  • Cache Inteligente - Reduz latência em 90%
  • Rate Limiting - Impede spam (8 cmd/min)
  • Fila de Comandos - Processa até 3 comandos simultâneos
  • Logging Estruturado - Histórico em arquivo diário
  • Pontuação de Quiz - Rastreia desempenho do usuário
  • Suporte a Vídeo - Converte vídeos em stickers animados
  • Timeout de API - Máximo 10 segundos por requisição
  • Sistema de Permissões - Bloquear usuários

📁 Estrutura de Arquivos

rudo-bot/
├── src/
│   ├── index.js                 # Arquivo principal
│   ├── commands/
│   │   ├── anime.js             # Comandos de anime
│   │   ├── fun.js               # Comandos divertidos
│   │   └── sticker.js           # Comandos de figurinha
│   └── utils/
│       ├── cache.js             # Sistema de cache
│       ├── commandQueue.js       # Fila de comandos
│       ├── database.js          # Banco de dados
│       ├── logger.js            # Sistema de logs
│       ├── permissions.js       # Permissões
│       └── rateLimiter.js       # Rate limiting
├── logs/                        # Logs diários
├── temp/                        # Arquivos temporários
├── data.json                    # Dados persistidos
├── .env.example                 # Exemplo de variáveis
├── MELHORIAS.md                 # Documentação de melhorias
├── package.json
└── README.md

📝 Variáveis de Ambiente

Crie um arquivo .env na raiz do projeto:

PREFIX=!
LOG_LEVEL=info
RATE_LIMIT_REQUESTS=8
RATE_LIMIT_WINDOW=60000
MAX_CONCURRENT_COMMANDS=3
API_TIMEOUT=10000
ADMIN_IDS=seu_id_aqui,outro_id

🔍 Monitoramento

Ver Logs

# Logs do dia atual
cat logs/2026-01-21.log

# Buscar erros
grep ERROR logs/*.log

# Ver últimas 20 linhas
tail -20 logs/2026-01-21.log

Ver Dados de Quiz

cat data.json

🛠️ Desenvolvimento

Scripts Disponíveis

npm start      # Iniciar bot
npm run dev    # Iniciar com nodemon (reload automático)

Adicionar Novo Comando

  1. Criar função no arquivo apropriado em src/commands/
  2. Adicionar a função em module.exports
  3. Adicionar a lógica em src/index.js no event messages.upsert

Exemplo:

// src/commands/meucomando.js
async function meuComando(sock, chatId, args) {
    await sock.sendMessage(chatId, { text: 'Olá!' });
}

module.exports = { meuComando };

⚙️ Configuração Avançada

Mudar Prefixo

Edite em src/index.js:

const PREFIX = '!'; // Mude para seu prefixo

Adicionar Admin

Edite em src/utils/permissions.js:

const ADMIN_IDS = ['seu_id', 'outro_id'];

Ajustar Limite de Taxa

Edite em src/index.js:

const rateLimiter = new RateLimiter(10, 60000); // 10 cmd/min

🐛 Troubleshooting

"QR Code não aparece"

  • Verifique se o WhatsApp está aberto no seu celular
  • Tente reiniciar o bot

"Erro ao processar vídeo"

  • Verifique se FFmpeg está instalado: ffmpeg -version
  • Use vídeos com até 6 segundos de duração

"API timeout"

  • Verifique sua conexão de internet
  • Tente novamente em alguns segundos

"Rate limit atingido"

  • Você atingiu o limite de comandos
  • Aguarde alguns segundos e tente novamente

📞 Suporte

📄 Licença

MIT - Veja LICENSE para detalhes

👤 Autor

Lightshzk - Criador do Rudo Bot


Desenvolvido com ❤️ para a comunidade Constelação Anime 🌟

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages