https://github.com/matheusfdosan/bot-whatsapp-loja-virtual
Este projeto é um chatbot interativo para WhatsApp, desenvolvido em JavaScript, que funciona como uma extensão para lojas virtuais e catálogos de produtos. Ele é projetado para facilitar o atendimento ao cliente, ajudar na navegação pelos produtos e até mesmo realizar pedidos diretamente na conversa.
https://github.com/matheusfdosan/bot-whatsapp-loja-virtual
javascript nodejs whatsapp-bot whatsapp-web-js
Last synced: 3 months ago
JSON representation
Este projeto é um chatbot interativo para WhatsApp, desenvolvido em JavaScript, que funciona como uma extensão para lojas virtuais e catálogos de produtos. Ele é projetado para facilitar o atendimento ao cliente, ajudar na navegação pelos produtos e até mesmo realizar pedidos diretamente na conversa.
- Host: GitHub
- URL: https://github.com/matheusfdosan/bot-whatsapp-loja-virtual
- Owner: matheusfdosan
- License: mit
- Created: 2025-01-05T04:00:37.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-01-05T17:51:59.000Z (5 months ago)
- Last Synced: 2025-01-13T05:14:21.001Z (5 months ago)
- Topics: javascript, nodejs, whatsapp-bot, whatsapp-web-js
- Language: JavaScript
- Homepage: https://wwebjs.dev/guide/
- Size: 1.16 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Como usar o whatsapp-web.js?
Este projeto é um chatbot interativo para WhatsApp, desenvolvido em JavaScript, que funciona como uma extensão para lojas virtuais e catálogos de produtos. Ele é projetado para facilitar o atendimento ao cliente, auxiliar na navegação pelos produtos e até mesmo realizar pedidos diretamente na conversa.
Tecnologias |
Projeto |
Contato
![]()
![]()
## 🚀 Tecnologias
Esse projeto foi desenvolvido com as seguintes tecnologias:
- JavaScript
- Biblioteca **whatsapp-web.js** e **qrcode-terminal**
- Node.js## 💻 Projeto
Primeiramente, iniciamos um projeto com `npm init -y`, e depois instalamos as dependências necessárias para o funcionamento do bot:
- `npm i whatsapp-web.js`: libera opções para funcionalidade do bot.
- `npm i qrcode-terminal`: para fazermos a conexão com o WhatsApp via QR code no terminal.Em seguida, criamos um arquivo _index.js_, nele iniciamos as importações e configurações, depois seguimos para as funções do bot:
## Importações e configurações
Para iniciarmos, vamos importar o `qrcode-terminal` e importar o cliente do whatsapp-web.js, esse cliente é o responsável por mandar as mensagens pelo WhatsApp:
```js
const qrcode = require("qrcode-terminal")
const { Client } = require("whatsapp-web.js")
```Com todas as importações feitas, podemos fazer configurações importantes para o bot. A principal e única configuração é conservar a autenticação do usuário. Como se fosse o "Lembre-se de mim" num formulário.
Toda vez que o código for executado, as informações de acesso do WhatsApp do cliente serão mantidas numa pasta, e assim, não precisarão se conectar no WhatsApp toda vez que o código é executado:
```js
const { Client, LocalAuth } = require("whatsapp-web.js")
// importamos o LocalAuth junto
const client = new Client({
// também estamos instanciando o cliente (como se fosse o express)
authStrategy: new LocalAuth({
dataPath: "whatsapp-auth",
}),
})
```- `dataPath: "whatsapp-auth"`: esse é o nome da pasta onde serão guardadas as informações de acesso do cliente ao WhatsApp.
## Funções do bot (Respostas)
Se você já utilizou [express.js](https://expressjs.com/pt-br/), pode identificar uma certa semelhança. Agora, vamos iniciar no terminal a geração do QR code para o usuário se conectar ao WhatsApp.
```js
client.on("qr", (qr) => {
qrcode.generate(qr, { small: true })
})
```Esse código usa um **puppeteer**, que abre um navegador cliente invisível e o controla. O navegador funciona sem uma interface gráfica (não aparece na tela). Porém, após a conexão, precisamos avisar que houve uma conexão bem sucedida. Fazemos isso por meio desse código:
```js
client.on("ready", () => {
console.log("Client is ready!")
})
```Depois disso, partimos para respostas às menagens. O código verifica a mensagem de todos os contatos e, se algum mandar a específica mensagem de "!ping" (ou qualquer coisa que possa ser), o bot responde "pong":
```js
client.on("message_create", (message) => {
if (message.body === "!ping") {
message.reply("pong")
}
})
```> E por fim, sempre coloque `client.initialize()` no final do código. Sempre na última linha.
Essa foi a lógica utilizada para a criação do bot de loja virtual.
## Contato
- Acesse também meus outros repositórios no [Github](https://github.com/matheusfdosan?tab=repositories).
- Também me siga no [Instagram](https://instagram.com/matheusfdosan).
- Conecte-se comingo no [Linkedin](https://www.linkedin.com/in/matheusfaus/)
- Contrate-me para o desenvolvimento de sistemas e soluções personalizadas no [99freelas](https://www.99freelas.com.br/user/matheusfdosan)