mirror of
https://github.com/cheveguerra/bot-whatsapp.git
synced 2026-04-20 04:29:16 +00:00
update library
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
#### Actualizado Enero 2022
|
#### Actualizado Enero 2022
|
||||||
|
|
||||||
El siguiente proyecto se realizó con fines educativos para el canal de [Youtube (Leifer Mendez)](https://www.youtube.com/channel/UCgrIGp5QAnC0J8LfNJxDRDw?sub_confirmation=1) donde aprendemos como usando node.js podemos crear un chatbot increíble que además le agregamos inteligencia artificial gracias al servicio de dialogflow.
|
El siguiente proyecto se realizó con fines educativos para el canal de [Youtube (Leifer Mendez)](https://www.youtube.com/channel/UCgrIGp5QAnC0J8LfNJxDRDw?sub_confirmation=1) donde aprendemos como usando node.js podemos crear un chatbot increíble que además le agregamos inteligencia artificial gracias al servicio de dialogflow.
|
||||||
|
|
||||||

|

|
||||||
> Si tienes una cuenta en __heroku__ puedes desplegar este proyecto con 1 click
|
> Si tienes una cuenta en __heroku__ puedes desplegar este proyecto con 1 click
|
||||||
|
|
||||||
@@ -66,7 +67,7 @@ SQL_PASS=
|
|||||||
SQL_DATABASE=
|
SQL_DATABASE=
|
||||||
```
|
```
|
||||||
|
|
||||||
> Si quieres usar la conexion via _mysql_ puedes importar el archivo [sql-bot.sql](s)
|
> Si quieres usar la conexion via _mysql_ puedes importar el archivo [sql-bot.sql](https://github.com/leifermendez/bot-whatsapp/blob/main/sql-bot.sql)
|
||||||
|
|
||||||
### ¿Como usarlo el chatbot de whatsapp?
|
### ¿Como usarlo el chatbot de whatsapp?
|
||||||
> Escribe un mensaje al whatsapp que vinculaste con tu BOT
|
> Escribe un mensaje al whatsapp que vinculaste con tu BOT
|
||||||
|
|||||||
3
app.js
3
app.js
@@ -12,7 +12,7 @@ const { generateImage } = require('./controllers/handle')
|
|||||||
const { connectionReady, connectionLost } = require('./controllers/connection')
|
const { connectionReady, connectionLost } = require('./controllers/connection')
|
||||||
const { saveMedia } = require('./controllers/save')
|
const { saveMedia } = require('./controllers/save')
|
||||||
const { getMessages, responseMessages, bothResponse } = require('./controllers/flows')
|
const { getMessages, responseMessages, bothResponse } = require('./controllers/flows')
|
||||||
const { sendMedia, sendMessage, lastTrigger } = require('./controllers/send')
|
const { sendMedia, sendMessage, lastTrigger, sendMessageButton } = require('./controllers/send')
|
||||||
|
|
||||||
const app = express();
|
const app = express();
|
||||||
app.use(express.json())
|
app.use(express.json())
|
||||||
@@ -75,6 +75,7 @@ const listenMessage = () => client.on('message', async msg => {
|
|||||||
if (step) {
|
if (step) {
|
||||||
const response = await responseMessages(step)
|
const response = await responseMessages(step)
|
||||||
await sendMessage(client, from, response.replyMessage, response.trigger);
|
await sendMessage(client, from, response.replyMessage, response.trigger);
|
||||||
|
await sendMessageButton(client, from);
|
||||||
|
|
||||||
if(!response.delay && response.media){
|
if(!response.delay && response.media){
|
||||||
sendMedia(client, from, response.media);
|
sendMedia(client, from, response.media);
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
const ExcelJS = require('exceljs');
|
const ExcelJS = require('exceljs');
|
||||||
const moment = require('moment');
|
const moment = require('moment');
|
||||||
const fs = require('fs');
|
const fs = require('fs');
|
||||||
const { MessageMedia } = require('whatsapp-web.js');
|
const { MessageMedia, Buttons } = require('whatsapp-web.js');
|
||||||
const { cleanNumber } = require('./handle')
|
const { cleanNumber } = require('./handle')
|
||||||
const { saveMedia } = require('../controllers/save')
|
const { saveMedia } = require('../controllers/save')
|
||||||
/**
|
/**
|
||||||
@@ -14,7 +14,7 @@ const { saveMedia } = require('../controllers/save')
|
|||||||
const sendMedia = (client, number, fileName) => {
|
const sendMedia = (client, number, fileName) => {
|
||||||
const dirMedia = `${__dirname}/../mediaSend/${fileName}`;
|
const dirMedia = `${__dirname}/../mediaSend/${fileName}`;
|
||||||
number = cleanNumber(number)
|
number = cleanNumber(number)
|
||||||
if(fs.existsSync(dirMedia)){
|
if (fs.existsSync(dirMedia)) {
|
||||||
const media = MessageMedia.fromFilePath(dirMedia);
|
const media = MessageMedia.fromFilePath(dirMedia);
|
||||||
client.sendMessage(number, media);
|
client.sendMessage(number, media);
|
||||||
}
|
}
|
||||||
@@ -32,6 +32,24 @@ const sendMessage = async (client, number = null, text = null, trigger = null) =
|
|||||||
console.log(`⚡⚡⚡ Enviando mensajes....`);
|
console.log(`⚡⚡⚡ Enviando mensajes....`);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enviamos un mensaje con buttons a nuestro cliente
|
||||||
|
* @param {*} number
|
||||||
|
*/
|
||||||
|
const sendMessageButton = async (client, number = null, text = null, trigger = null) => {
|
||||||
|
number = cleanNumber(number)
|
||||||
|
const message = text
|
||||||
|
|
||||||
|
let button = new Buttons("holaaaa", [
|
||||||
|
{ body: "Leer" },
|
||||||
|
{ body: "SIII" }
|
||||||
|
], "ssssss", "foonooooter");
|
||||||
|
client.sendMessage(number, button);
|
||||||
|
|
||||||
|
console.log(`⚡⚡⚡ Enviando mensajes....`);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Opte
|
* Opte
|
||||||
*/
|
*/
|
||||||
@@ -102,4 +120,4 @@ const readChat = async (number, message, trigger = null) => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = { sendMessage, sendMedia, lastTrigger }
|
module.exports = { sendMessage, sendMedia, lastTrigger, sendMessageButton }
|
||||||
1012
package-lock.json
generated
1012
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -23,7 +23,7 @@
|
|||||||
"qr-image": "^3.2.0",
|
"qr-image": "^3.2.0",
|
||||||
"qrcode-terminal": "^0.12.0",
|
"qrcode-terminal": "^0.12.0",
|
||||||
"socket.io": "^4.4.1",
|
"socket.io": "^4.4.1",
|
||||||
"whatsapp-web.js": "^1.15.3",
|
"whatsapp-web.js": "^1.15.4",
|
||||||
"xlsx": "^0.16.9"
|
"xlsx": "^0.16.9"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
|||||||
Reference in New Issue
Block a user