Um cliente API do WhatsApp que se conecta por meio do aplicativo de navegador da Web WhatsApp
A biblioteca funciona iniciando o aplicativo navegador WhatsApp Web e gerenciando-o usando o Puppeteer para criar uma instância do WhatsApp Web, mitigando assim o risco de bloqueio. O cliente WhatsApp API se conecta através do aplicativo WhatsApp Web Browser, acessando suas funções internas. Isso concede acesso a quase todos os recursos disponíveis no WhatsApp Web, permitindo um tratamento dinâmico semelhante a qualquer outro aplicativo Node.js.
Importante
Não é garantido que você não será bloqueado usando este método. O WhatsApp não permite bots ou clientes não oficiais em sua plataforma, portanto isso não deve ser considerado totalmente seguro.
O módulo já está disponível no npm! npm i whatsapp-web.js
Observação
O nó v18+
é necessário.
Basta obter o LTS mais recente no site oficial do nó.
sudo npm install - g n
sudo n stable
choco install nodejs - lts
winget install OpenJS.NodeJS.LTS
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - &&
sudo apt-get install -y nodejs
const { Client } = require ( 'whatsapp-web.js' ) ;
const client = new Client ( ) ;
client . on ( 'qr' , ( qr ) => {
// Generate and scan this code with your phone
console . log ( 'QR RECEIVED' , qr ) ;
} ) ;
client . on ( 'ready' , ( ) => {
console . log ( 'Client is ready!' ) ;
} ) ;
client . on ( 'message' , msg => {
if ( msg . body == '!ping' ) {
msg . reply ( 'pong' ) ;
}
} ) ;
client . initialize ( ) ;
Dê uma olhada em example.js para outros exemplos com casos de uso adicionais.
Para obter mais detalhes sobre como salvar e restaurar sessões, explore as Estratégias de Autenticação fornecidas.
Recurso | Status |
---|---|
Vários dispositivos | ✅ |
Enviar mensagens | ✅ |
Receber mensagens | ✅ |
Enviar mídia (imagens/áudio/documentos) | ✅ |
Enviar mídia (vídeo) | ✅ (requer Google Chrome) |
Enviar adesivos | ✅ |
Receber mídia (imagens/áudio/vídeo/documentos) | ✅ |
Envie cartões de contato | ✅ |
Enviar localização | ✅ |
Botões de envio | ❌ (DESCONTINUADO) |
Enviar listas | ❌ (DESCONTINUADO) |
Receber localização | ✅ |
Respostas de mensagens | ✅ |
Participe de grupos por convite | ✅ |
Obter convite para grupo | ✅ |
Modificar informações do grupo (assunto, descrição) | ✅ |
Modificar configurações do grupo (enviar mensagens, editar informações) | ✅ |
Adicionar participantes do grupo | ✅ |
Expulsar participantes do grupo | ✅ |
Promover/rebaixar participantes do grupo | ✅ |
Mencionar usuários | ✅ |
Mencionar grupos | ✅ |
Ativar/desativar bate-papos | ✅ |
Bloquear/desbloquear contatos | ✅ |
Obtenha informações de contato | ✅ |
Obtenha fotos de perfil | ✅ |
Definir mensagem de status do usuário | ✅ |
Reaja às mensagens | ✅ |
Criar enquetes | ✅ |
Votar nas enquetes | |
Comunidades | |
Canais |
Falta alguma coisa? Faça um problema e informe-nos!
Sinta-se à vontade para abrir solicitações pull; aceitamos contribuições! No entanto, para mudanças significativas, é melhor abrir um problema com antecedência. Certifique-se de revisar nossas diretrizes de contribuição antes de criar uma solicitação pull. Antes de criar seu próprio problema ou pull request, sempre verifique se já existe algum!
Você pode apoiar o mantenedor deste projeto através dos links abaixo
Este projeto não é afiliado, associado, autorizado, endossado ou de qualquer forma oficialmente conectado ao WhatsApp ou a qualquer uma de suas subsidiárias ou afiliadas. O site oficial do WhatsApp pode ser encontrado em whatsapp.com. “WhatsApp”, bem como nomes, marcas, emblemas e imagens relacionados são marcas registradas de seus respectivos proprietários. Além disso, não é garantido que você não será bloqueado usando este método. O WhatsApp não permite bots ou clientes não oficiais em sua plataforma, portanto isso não deve ser considerado totalmente seguro.
Copyright 2019 Pedro S Lopez
Licenciado sob a Licença Apache, Versão 2.0 (a "Licença");
você não pode usar este projeto exceto em conformidade com a Licença.
Você pode obter uma cópia da Licença em http://www.apache.org/licenses/LICENSE-2.0.
A menos que exigido pela lei aplicável ou acordado por escrito, o software
distribuído sob a Licença é distribuído "COMO ESTÁ",
SEM GARANTIAS OU CONDIÇÕES DE QUALQUER TIPO, expressas ou implícitas.
Consulte a Licença para o idioma específico que rege as permissões e
limitações sob a Licença.