
Este código é uma implementação de uísques, como um serviço de API RESTfull, que controla as funções do WhatsApp.
Com este, você pode criar bate -papos multisserviços, bots de serviço ou qualquer outro sistema que use o WhatsApp. Com este código, você não precisa conhecer o JavaScript para o NodeJS, basta iniciar o servidor e fazer as solicitações de idioma com as quais você se sente mais confortável.
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker ${USER}PostGresql [Necessário]
compor do Postgres
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
# or
wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bashDepois de terminar, reinicie o terminal para carregar as novas informações.
nvm install 20npm i -g pm2Clonando o repositório
git clone https://github.com/code-chat-br/whatsapp-api.git
Vá para o diretório do projeto e instale todas as dependências.
Dê preferência ao NPM , pois possui maior compatibilidade.
cd whatsapp-api-v2
npm install
# or
npm install --forceConsulte Configurações adicionais que podem ser aplicadas através do arquivo ENV clicando aqui .
️ Atenção️ : Copie o arquivo .env.dev para .env .
cp .env.dev .envmigrate dev no desenvolvimento para criar e aplicar automaticamente as migrações, facilitando o trabalho com o banco de dados.migrate deploy para aplicar migrações de maneira controlada e segura.npx prisma studioDefina a variável de ambiente do banco de dados_url para a implantação do banco de dados.
bash deploy_db.shPor fim, execute o comando abaixo para iniciar o aplicativo:
npm run start:dev
npm run start:prod
# pm2
pm2 start ' npm run start:prod ' --name CodeChat_API_v1.3.0Para usar o trabalhador com a API, é necessário definir as seguintes variáveis de ambiente na API:
PROVIDER_ENABLED=true : Esta variável permite o uso do provedor (trabalhador) na API.PROVIDER_HOST=127.0.0.1 : define o host em que o trabalhador está ouvindo solicitações.PROVIDER_PORT=5656 : define a porta onde o trabalhador está ouvindo solicitações.PROVIDER_PREFIX=codechat : defina prefixo, por exemplo, agrupamento no trabalhador Compatibilidade da WebSocket adicionada. Leia aqui.
http://localhost:8084/docsVocê pode definir dois tipos de autenticação para as rotas no arquivo Env . As autenticações devem ser inseridas no cabeçalho da solicitação.
As autenticações são geradas no momento da criação da instância.
Nota: Existe também a possibilidade de definir uma chave de API global, que pode acessar e controlar todas as instâncias.
Depois de criar o aplicativo, no mesmo diretório dos arquivos acima, execute o seguinte comando:
docker-compose up| Enviar texto | ✔ |
| Enviar botões | ✔ Somente [iOS, Android] |
| Enviar mídia: áudio - vídeo - imagem - documento - gif base64: false | ✔ |
| Enviar arquivo de mídia | ✔ |
| Envie o tipo de áudio whatsapp | ✔ |
| Envie o tipo de áudio whatsapp - arquivo | ✔ |
| Enviar localização | ✔ |
| Lista de envio | ✔ Somente [iOS, Android] |
| Enviar visualização do link | |
| Enviar contato | ✔ |
| Enviar reação - emoji | ✔ |
| Nome | Evento | Typedata | Descrição |
|---|---|---|---|
| Qrcode_updated | qrcode.updated | JSON | Envia a base64 do QRCode para leitura |
| Connection_Update | Connection.Update | JSON | Informa o status da conexão com o WhatsApp |
| Mensagens_set | message.Set | JSON | Envia uma lista de todas as suas mensagens enviadas no WhatsApp Este evento ocorre apenas uma vez |
| MessageS_UpSert | message.UpSert | JSON | Notifica você quando uma mensagem é recebida |
| Mensagens_update | message.Update | JSON | Diz quando uma mensagem é atualizada |
| Send_message | send.Message | JSON | Notifica quando uma mensagem é enviada |
| Contatos_set | contacts.set | JSON | Executa o carregamento inicial de todos os contatos Este evento ocorre apenas uma vez |
| CONTATS_UPSERT | contacts.upsert | JSON | Recarregue todos os contatos com informações adicionais Este evento ocorre apenas uma vez |
| Contatos_update | contact.update | JSON | Informa quando o bate -papo é atualizado |
| Presença_update | presença.Update | JSON | Informa se o usuário estiver online, se ele estiver executando alguma ação como escrever ou gravar e seu último visto 'indisponível' |
| Chats_set | chats.set | JSON | Envie uma lista de todos os bate -papos carregados |
| Bate -papos_update | chats.update | JSON | Informa quando o bate -papo é atualizado |
| Bate -papos_upsert | chats.upsert | JSON | Envia qualquer nova informação de bate -papo |
| GRUPOS_UPSERT | groups.upsert | JSON | Notifica quando um grupo é criado |
| GRUPOS_UPDATE | groups.Update | JSON | Notifica quando um grupo tem suas informações atualizadas |
| Group_participants_update | Grupo-Participants.Update | JSON | Notifica quando ocorre uma ação envolvendo um participante 'adicionar' |
| New_token | new.jwt | JSON | Notifica quando o token (JWT) é atualizado |
Para instalar o certificado SSL, siga as instruções abaixo.
Este código não é de forma alguma afiliado ao WhatsApp. Use a seu próprio critério. Não spam isso.
Este código foi produzido com base na biblioteca Baileys e ainda está em desenvolvimento.
