O OmniZap System é uma plataforma profissional de automação para WhatsApp, desenvolvida em Node.js e utilizando a biblioteca Baileys. Ele oferece funcionalidades robustas para gerenciamento de grupos, automação de interações e extensão do WhatsApp com comandos personalizados, incluindo suporte completo a banco de dados MySQL.
- Automação de WhatsApp: Gerencie interações e grupos de forma eficiente.
- Comandos Personalizados: Estenda as funcionalidades do WhatsApp com comandos definidos pelo usuário.
- Integração com MySQL: Suporte completo a banco de dados para armazenamento persistente.
- Gerenciamento de Mídia: Processamento de mídia para figurinhas e otimização.
- Gerenciamento de Processos: Utilização do PM2 para monitoramento e manutenção da aplicação.
Para configurar e executar o OmniZap System, siga os passos abaixo:
-
Clone o repositório:
git clone https://github.com/Kaikybrofc/omnizap-system.git cd omnizap-system -
Instale as dependências:
npm install
-
Configure as variáveis de ambiente: Crie um arquivo
.envno diretório raiz do projeto com as seguintes variáveis:# Configurações do Bot COMMAND_PREFIX=/ USER_ADMIN=seu_jid_de_admin@s.whatsapp.net PM2_APP_NAME=omnizap-system LOG_LEVEL=info NODE_ENV=development # Configurações do MySQL DB_HOST=localhost DB_USER=seu_usuario DB_PASSWORD=sua_senha DB_NAME=omnizap DB_POOL_LIMIT=10 # Paths e armazenamento STORE_PATH=./temp # FFmpeg (opcional) - se o binário não estiver no PATH do sistema # FFMPEG_PATH=/usr/bin/ffmpeg
Variável Descrição Exemplo/Padrão COMMAND_PREFIXPrefixo para todos os comandos do bot. /USER_ADMINJID do usuário com privilégios administrativos. seu_jid_de_admin@s.whatsapp.netPM2_APP_NAMENome da aplicação para o PM2. omnizap-systemLOG_LEVELNível de detalhe dos logs ( debug,info,warn,error).infoNODE_ENVAmbiente da aplicação ( developmentouproduction).developmentDB_HOSTHost do servidor MySQL. localhostDB_USERUsuário do MySQL. seu_usuarioDB_PASSWORDSenha do MySQL. sua_senhaDB_NAMENome base do banco de dados (o sistema adiciona sufixo _devou_prod).omnizapDB_POOL_LIMITLimite de conexões do pool MySQL. 10STORE_PATHCaminho relativo para armazenar arquivos temporários e stores. ./tempFFMPEG_PATHCaminho para o binário do FFmpeg (opcional, se não estiver no PATH)./usr/bin/ffmpeg
Para iniciar o sistema, utilize o PM2:
pm2 start ecosystem.dev.config.js # Para ambiente de desenvolvimento
# ou
pm2 start ecosystem.prod.config.js # Para ambiente de produção- Node.js: Ambiente de execução JavaScript.
- MySQL: Sistema de gerenciamento de banco de dados robusto.
- @whiskeysockets/baileys: Biblioteca principal para a API do WhatsApp Web.
- mysql2/promise: Driver MySQL com suporte a promises.
- Pino: Sistema de logging de alta performance.
- FFmpeg: Processamento de mídia (criação de figurinhas).
- WebP: Formato de imagem eficiente.
- PM2: Gerenciador de processos para Node.js.
- Dotenv: Gerenciamento de variáveis de ambiente.
Contribuições são bem-vindas! Se você deseja contribuir com o projeto, siga estas etapas:
- Faça um fork do repositório.
- Crie uma nova branch para sua feature (
git checkout -b feature/nova-feature). - Faça commit de suas alterações (
git commit -m 'Adiciona nova feature'). - Faça push para a branch (
git push origin feature/nova-feature). - Abra um Pull Request.
Este projeto está licenciado sob a Licença MIT. Veja o arquivo LICENSE para mais detalhes.