An open API service indexing awesome lists of open source software.

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.

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


License



bot-whatsapp-preview

## 🚀 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)