From 3cc386acd449681eace2c85dea803caed1a41b87 Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
<41898282+github-actions[bot]@users.noreply.github.com>
Date: Mon, 26 Dec 2022 13:33:21 +0000
Subject: [PATCH 01/14] docs(contributor): contrib-readme-action has updated
readme
---
README.md | 82 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 81 insertions(+), 1 deletion(-)
diff --git a/README.md b/README.md
index a3d02b7..8e70144 100644
--- a/README.md
+++ b/README.md
@@ -11,7 +11,87 @@ Video como hacer PR: https://youtu.be/Lxt8Acob6aU
**Comunidad**
-
+
> Forma parte de este proyecto.
From 512c92309578d15a4df7589d0b3207a25b0e0b4e Mon Sep 17 00:00:00 2001
From: HackMD <37423+hackmd-hub[bot]@users.noreply.github.com>
Date: Sun, 25 Dec 2022 22:15:07 +0000
Subject: [PATCH 02/14] last changed at Dec 25, 2022 11:11 PM, pushed by Leifer
Mendez
---
.../docs/src/routes/docs/masterclass/index.md | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git a/packages/docs/src/routes/docs/masterclass/index.md b/packages/docs/src/routes/docs/masterclass/index.md
index d80dcaa..7788e15 100644
--- a/packages/docs/src/routes/docs/masterclass/index.md
+++ b/packages/docs/src/routes/docs/masterclass/index.md
@@ -1,3 +1,14 @@
-# MasterClass
+### Preguntas Frecuentes para Master Class BOT v2
+> Anota aqui las preguntas o dudas que tengas
+> Pronto estare publicando fecha y hora para la masterclass
-...
+1.- Si necesito correr dos bots al mismo tiempo ¿donde puedo cambiar el puerto?
+2.- Si necesito agregar o modificar funciones del bot, ¿como puedo hacerlo?
+3.- Si quiero mi bot con otra base de datos diferente a MySQL ¿como lo puedo hacer?
+4.- Quiero conectarme a tal o cual API con JSON/XML/etc, ¿se puede hacer?
+5.- ¿Como integrar listas?
+6.- Preguntas y respuestas con el Bot
+7.- Guardar conversaciones en Excel.
+8.- ¿Puedo usar 2 o mas sesiones (códigos QR) al mismo tiempo?
+9.- ¿Puede ser que al usar el provider bailey, al leer el qr.png, que sea desde una url en el navegador, y no desde visual studio? Gracias
+10.- ¿Cómo tomo los datos que me envían en un mensaje para utilizarlo internamente en la búsqueda de datos propios y devolver la respuesta?
From d522b03e2e6e6e3f7c467c59e3d2d6f288fe37b2 Mon Sep 17 00:00:00 2001
From: HackMD <37423+hackmd-hub[bot]@users.noreply.github.com>
Date: Mon, 26 Dec 2022 19:26:37 +0000
Subject: [PATCH 03/14] feat(docs): master class updated
---
packages/docs/src/routes/docs/masterclass/index.md | 1 +
1 file changed, 1 insertion(+)
diff --git a/packages/docs/src/routes/docs/masterclass/index.md b/packages/docs/src/routes/docs/masterclass/index.md
index 7788e15..5b472af 100644
--- a/packages/docs/src/routes/docs/masterclass/index.md
+++ b/packages/docs/src/routes/docs/masterclass/index.md
@@ -1,3 +1,4 @@
+[](https://hackmd.io/79xQyVSgRD6RsTpqtMPPdw)
### Preguntas Frecuentes para Master Class BOT v2
> Anota aqui las preguntas o dudas que tengas
> Pronto estare publicando fecha y hora para la masterclass
From 69fd81a565e61b249ac50917585293d2d84e3dd4 Mon Sep 17 00:00:00 2001
From: Leifer Mendez
Date: Mon, 26 Dec 2022 20:27:54 +0100
Subject: [PATCH 04/14] feat(docs): master class updated
---
packages/docs/src/routes/docs/masterclass/index.md | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/packages/docs/src/routes/docs/masterclass/index.md b/packages/docs/src/routes/docs/masterclass/index.md
index 5b472af..9f94b4e 100644
--- a/packages/docs/src/routes/docs/masterclass/index.md
+++ b/packages/docs/src/routes/docs/masterclass/index.md
@@ -4,12 +4,21 @@
> Pronto estare publicando fecha y hora para la masterclass
1.- Si necesito correr dos bots al mismo tiempo ¿donde puedo cambiar el puerto?
+
2.- Si necesito agregar o modificar funciones del bot, ¿como puedo hacerlo?
+
3.- Si quiero mi bot con otra base de datos diferente a MySQL ¿como lo puedo hacer?
+
4.- Quiero conectarme a tal o cual API con JSON/XML/etc, ¿se puede hacer?
+
5.- ¿Como integrar listas?
+
6.- Preguntas y respuestas con el Bot
+
7.- Guardar conversaciones en Excel.
+
8.- ¿Puedo usar 2 o mas sesiones (códigos QR) al mismo tiempo?
+
9.- ¿Puede ser que al usar el provider bailey, al leer el qr.png, que sea desde una url en el navegador, y no desde visual studio? Gracias
+
10.- ¿Cómo tomo los datos que me envían en un mensaje para utilizarlo internamente en la búsqueda de datos propios y devolver la respuesta?
From de43077860b79a3ed8ed3fff94791b6d5e3f139a Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
Date: Tue, 27 Dec 2022 12:46:41 +0000
Subject: [PATCH 05/14] ci(version): :zap: automatic - "${date}" updated
versions every packages
---
packages/bot/package.json | 2 +-
packages/cli/package.json | 2 +-
packages/create-bot-whatsapp/package.json | 2 +-
packages/database/package.json | 2 +-
packages/provider/package.json | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/packages/bot/package.json b/packages/bot/package.json
index 36331cd..6c473c8 100644
--- a/packages/bot/package.json
+++ b/packages/bot/package.json
@@ -1,6 +1,6 @@
{
"name": "@bot-whatsapp/bot",
- "version": "0.0.26-alpha.0",
+ "version": "0.0.27-alpha.0",
"description": "",
"main": "./lib/bundle.bot.cjs",
"scripts": {
diff --git a/packages/cli/package.json b/packages/cli/package.json
index bfa705d..07c47f9 100644
--- a/packages/cli/package.json
+++ b/packages/cli/package.json
@@ -1,6 +1,6 @@
{
"name": "@bot-whatsapp/cli",
- "version": "0.0.33-alpha.0",
+ "version": "0.0.34-alpha.0",
"description": "",
"main": "index.js",
"devDependencies": {
diff --git a/packages/create-bot-whatsapp/package.json b/packages/create-bot-whatsapp/package.json
index 8d0fa00..d9e0a92 100644
--- a/packages/create-bot-whatsapp/package.json
+++ b/packages/create-bot-whatsapp/package.json
@@ -1,6 +1,6 @@
{
"name": "create-bot-whatsapp",
- "version": "0.0.44-alpha.0",
+ "version": "0.0.45-alpha.0",
"description": "",
"main": "./lib/bundle.create-bot-whatsapp.cjs",
"files": [
diff --git a/packages/database/package.json b/packages/database/package.json
index 48ba464..a29afab 100644
--- a/packages/database/package.json
+++ b/packages/database/package.json
@@ -1,6 +1,6 @@
{
"name": "@bot-whatsapp/database",
- "version": "0.0.25-alpha.0",
+ "version": "0.0.26-alpha.0",
"description": "Esto es el conector a mysql, pg, mongo",
"main": "./lib/mock/index.cjs",
"keywords": [],
diff --git a/packages/provider/package.json b/packages/provider/package.json
index 727ceb1..c3d77ea 100644
--- a/packages/provider/package.json
+++ b/packages/provider/package.json
@@ -1,6 +1,6 @@
{
"name": "@bot-whatsapp/provider",
- "version": "0.0.31-alpha.0",
+ "version": "0.0.32-alpha.0",
"description": "Esto es el conector a Twilio, Meta, etc...",
"main": "./lib/mock/index.cjs",
"keywords": [],
From e5efdec31debfa0957d8a4844274d28a43aaf55d Mon Sep 17 00:00:00 2001
From: marianarolfo <68322254+marianarolfo@users.noreply.github.com>
Date: Tue, 27 Dec 2022 14:17:35 +0100
Subject: [PATCH 06/14] Erratas
---
packages/docs/src/routes/docs/index.mdx | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/packages/docs/src/routes/docs/index.mdx b/packages/docs/src/routes/docs/index.mdx
index d51d17e..6747e26 100644
--- a/packages/docs/src/routes/docs/index.mdx
+++ b/packages/docs/src/routes/docs/index.mdx
@@ -9,12 +9,12 @@ import Alert from '../../components/widgets/Alert'
disfrutar de las nuevas características.
-## ¿Que es esto?
+## ¿Què es esto?
**@bot-whatsapp** es una librería que te permitirá **crear chatbot para WhatsApp** en tan solo minutos de una manera ágil y rápida. A lo largo de esta documentación encontrarás ejemplos y material de ayuda.
-Si eres una persona con **poco tiempo y gran capacidad** de comprensión con conocimientos, ejecutando proyectos en Node.js y manejo de terminal.
-Esta documentación te ayudará a instalar tu bot de WhatsApp en simples pasos con el propósito de que tengas un chatbot funcional **en solo minutos.**
+Si eres una persona con **poco tiempo y gran capacidad** de comprensión, con conocimientos ejecutando proyectos en Node.js y manejo de terminal.
+Esta documentación te ayudará a instalar tu bot de WhatsApp en simples pasos; con el propósito de que tengas un chatbot funcional **en solo minutos.**
---
@@ -40,5 +40,5 @@ npm create bot-whatsapp@latest
-**¿Algun error?**
+**¿Algún error?**
Recuerda que debes de cumplir con los [requisitos minimos](/docs/install) del sistema
From b6fd8e26326b12ec523632d897208c96f6c66fe0 Mon Sep 17 00:00:00 2001
From: marianarolfo <68322254+marianarolfo@users.noreply.github.com>
Date: Tue, 27 Dec 2022 16:12:42 +0100
Subject: [PATCH 07/14] Unirse
---
packages/docs/src/routes/docs/join/index.mdx | 23 ++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/packages/docs/src/routes/docs/join/index.mdx b/packages/docs/src/routes/docs/join/index.mdx
index 87864a4..4d4a99b 100644
--- a/packages/docs/src/routes/docs/join/index.mdx
+++ b/packages/docs/src/routes/docs/join/index.mdx
@@ -1,3 +1,26 @@
# Unirme
+Bienvenido al proyecto! Estamos emocionados de tenerte a bordo y esperamos trabajar contigo.
+
+Deseamos que te sientas cómodo y que puedas aportar tu valioso conocimiento y habilidades.
+
+Recuerda que si tienes alguna inquietud, o simplemente deseas interactuar con los otros colaboradores puedes unirte a la comunidad.
+
+## Ventajas al unirme
+
+Participar en un proyecto de código abierto te permite aprender de manera práctica sobre tecnologías y metodologías de desarrollo de software. También puedes aprender de otros desarrolladores y contribuir a la comunidad de código abierto.
+
+Al unirte te estará brindando la oportunidad de **adquirir experiencia en el desarrollo de software** y en el trabajo en equipo. Esto puede ser muy valioso para tu currículum y para tu carrera profesional.
+
+La visibilidad es uno de los puntos que más se requieren hoy en día, al unirte se te brinda la oportunidad de **mayor visibilidad en la comunidad de desarrolladores y de demostrar tus habilidades**. Esto puede ayudarte a encontrar oportunidades de trabajo o a colaborar con otros proyectos.
+
+Colaboración con otros desarrolladores de todo el mundo y **trabajar juntos para mejorar el proyecto** Al trabajar en equipo y colaborar con otros, podrás mejorar tu comunicación, resolución de problemas y liderazgo, habilidades que cada vez son más demandadas en el entorno laboral.
+
+Contribución al bien común Participar en un proyecto de código abierto te permite contribuir a la comunidad y a la sociedad en general, ya que el código abierto es accesible y utilizable por cualquier persona. **Esto puede ser muy gratificante y sentirte parte de algo más grande**.
+
+Es una excelente manera de incrementar tus habilidades tecnológicas y **estar al tanto de las últimas tendencias y desarrollos en el mundo del software**. Al trabajar con otros desarrolladores y contribuir a proyectos de código abierto, tendrás la oportunidad de **aprender y practicar nuevas tecnologías y metodologías, lo que te ayudará a mejorar tus habilidades y a mantenerte actualizado en el mundo en constante cambio de la tecnología.
+
+
+Esperamos que estés listo para **unirte a nosotros en esta emocionante aventura**
+
...
From e8d625201ed86e162e0b4e82100ede1d08985555 Mon Sep 17 00:00:00 2001
From: vicente1992
Date: Thu, 29 Dec 2022 00:01:10 -0500
Subject: [PATCH 08/14] feat(starters): meta memory base template added
---
packages/provider/src/meta/server.js | 27 ++++++++++++++-------
starters/apps/base-meta-memory/app.js | 10 ++++----
starters/apps/base-meta-memory/package.json | 3 ++-
3 files changed, 25 insertions(+), 15 deletions(-)
diff --git a/packages/provider/src/meta/server.js b/packages/provider/src/meta/server.js
index cb2ac9a..85e0403 100644
--- a/packages/provider/src/meta/server.js
+++ b/packages/provider/src/meta/server.js
@@ -1,6 +1,6 @@
const { EventEmitter } = require('node:events')
const polka = require('polka')
-const { urlencoded } = require('body-parser')
+const { urlencoded, json } = require('body-parser')
class MetaWebHookServer extends EventEmitter {
metaServer
@@ -8,9 +8,11 @@ class MetaWebHookServer extends EventEmitter {
token
constructor(_token, _metaPort) {
super()
- this.metaServer = this.buildHTTPServer()
+ this.metaServer = polka()
this.metaPort = _metaPort
this.token = _token
+
+ this.buildHTTPServer()
}
/**
@@ -21,8 +23,14 @@ class MetaWebHookServer extends EventEmitter {
*/
incomingMsg = (req, res) => {
const { body } = req
- const message = body.entry[0].changes[0].value.messages[0]
+
+ const messages = body.entry[0].changes[0].value?.messages
+
+ if (!messages) return
+
+ const [message] = messages
const to = body.entry[0].changes[0].value.metadata.display_phone_number
+
this.emit('message', {
from: message.from,
to,
@@ -55,16 +63,16 @@ class MetaWebHookServer extends EventEmitter {
const challenge = query['hub.challenge']
if (!mode || !token) {
- return res.sendStatus(403)
+ return (res.statusCode = 403), res.end('No token!')
}
if (this.tokenIsValid(mode, token)) {
console.log('Webhook verified--->😎😎😎😎')
- res.status(200).send(challenge)
+ return (res.statusCode = 200), res.end(challenge)
}
if (!this.tokenIsValid(mode, token)) {
- res.sendStatus(403)
+ return (res.statusCode = 403), res.end('No token!')
}
}
@@ -73,12 +81,13 @@ class MetaWebHookServer extends EventEmitter {
* @returns
*/
buildHTTPServer = () => {
- polka()
+ this.metaServer
.use(urlencoded({ extended: true }))
.get('/webhook', this.verifyToken)
- return polka()
+ this.metaServer
.use(urlencoded({ extended: true }))
+ .use(json())
.post('/webhook', this.incomingMsg)
}
@@ -91,7 +100,7 @@ class MetaWebHookServer extends EventEmitter {
console.log(``)
console.log(`[meta]: Agregar esta url "WHEN A MESSAGE COMES IN"`)
console.log(
- `[meta]: POST http://localhost:${this.metaPort}/meta-hook`
+ `[meta]: POST http://localhost:${this.metaPort}/webhook`
)
console.log(`[meta]: Más información en la documentacion`)
console.log(``)
diff --git a/starters/apps/base-meta-memory/app.js b/starters/apps/base-meta-memory/app.js
index ab26888..c141fad 100644
--- a/starters/apps/base-meta-memory/app.js
+++ b/starters/apps/base-meta-memory/app.js
@@ -6,7 +6,7 @@ const {
addChild,
} = require('@bot-whatsapp/bot')
-const TwilioProvider = require('@bot-whatsapp/provider/twilio')
+const MetaProvider = require('@bot-whatsapp/provider/meta')
const MockAdapter = require('@bot-whatsapp/database/mock')
/**
@@ -79,10 +79,10 @@ const main = async () => {
const adapterDB = new MockAdapter()
const adapterFlow = createFlow([flowPrincipal])
- const adapterProvider = createProvider(TwilioProvider, {
- accountSid: 'YOUR_ACCOUNT_SID',
- authToken: 'YOUR_ACCOUNT_TOKEN',
- vendorNumber: '+14155238886',
+ const adapterProvider = createProvider(MetaProvider, {
+ jwtToken: 'jwtToken',
+ numberId: 'numberId',
+ verifyToken: 'verifyToken',
})
createBot({
diff --git a/starters/apps/base-meta-memory/package.json b/starters/apps/base-meta-memory/package.json
index af95cf3..f86e916 100644
--- a/starters/apps/base-meta-memory/package.json
+++ b/starters/apps/base-meta-memory/package.json
@@ -14,7 +14,8 @@
"@bot-whatsapp/bot": "latest",
"@bot-whatsapp/cli": "latest",
"@bot-whatsapp/database": "latest",
- "@bot-whatsapp/provider": "latest"
+ "@bot-whatsapp/provider": "latest",
+ "axios": "^1.2.1"
},
"author": "",
"license": "ISC"
From 41e95a606dc376e0f4670325297b5ee19c237f1b Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
Date: Thu, 29 Dec 2022 13:57:51 +0000
Subject: [PATCH 09/14] ci(version): :zap: automatic - "${date}" updated
versions every packages
---
packages/bot/package.json | 2 +-
packages/cli/package.json | 2 +-
packages/create-bot-whatsapp/package.json | 2 +-
packages/database/package.json | 2 +-
packages/docs/src/routes/docs/join/index.mdx | 7 +++----
packages/provider/package.json | 2 +-
6 files changed, 8 insertions(+), 9 deletions(-)
diff --git a/packages/bot/package.json b/packages/bot/package.json
index 6c473c8..87d283b 100644
--- a/packages/bot/package.json
+++ b/packages/bot/package.json
@@ -1,6 +1,6 @@
{
"name": "@bot-whatsapp/bot",
- "version": "0.0.27-alpha.0",
+ "version": "0.0.28-alpha.0",
"description": "",
"main": "./lib/bundle.bot.cjs",
"scripts": {
diff --git a/packages/cli/package.json b/packages/cli/package.json
index 07c47f9..5a678c4 100644
--- a/packages/cli/package.json
+++ b/packages/cli/package.json
@@ -1,6 +1,6 @@
{
"name": "@bot-whatsapp/cli",
- "version": "0.0.34-alpha.0",
+ "version": "0.0.35-alpha.0",
"description": "",
"main": "index.js",
"devDependencies": {
diff --git a/packages/create-bot-whatsapp/package.json b/packages/create-bot-whatsapp/package.json
index d9e0a92..2386b2e 100644
--- a/packages/create-bot-whatsapp/package.json
+++ b/packages/create-bot-whatsapp/package.json
@@ -1,6 +1,6 @@
{
"name": "create-bot-whatsapp",
- "version": "0.0.45-alpha.0",
+ "version": "0.0.46-alpha.0",
"description": "",
"main": "./lib/bundle.create-bot-whatsapp.cjs",
"files": [
diff --git a/packages/database/package.json b/packages/database/package.json
index a29afab..a79d823 100644
--- a/packages/database/package.json
+++ b/packages/database/package.json
@@ -1,6 +1,6 @@
{
"name": "@bot-whatsapp/database",
- "version": "0.0.26-alpha.0",
+ "version": "0.0.27-alpha.0",
"description": "Esto es el conector a mysql, pg, mongo",
"main": "./lib/mock/index.cjs",
"keywords": [],
diff --git a/packages/docs/src/routes/docs/join/index.mdx b/packages/docs/src/routes/docs/join/index.mdx
index 4d4a99b..90ca067 100644
--- a/packages/docs/src/routes/docs/join/index.mdx
+++ b/packages/docs/src/routes/docs/join/index.mdx
@@ -4,7 +4,7 @@ Bienvenido al proyecto! Estamos emocionados de tenerte a bordo y esperamos traba
Deseamos que te sientas cómodo y que puedas aportar tu valioso conocimiento y habilidades.
-Recuerda que si tienes alguna inquietud, o simplemente deseas interactuar con los otros colaboradores puedes unirte a la comunidad.
+Recuerda que si tienes alguna inquietud, o simplemente deseas interactuar con los otros colaboradores puedes unirte a la comunidad.
## Ventajas al unirme
@@ -14,12 +14,11 @@ Al unirte te estará brindando la oportunidad de **adquirir experiencia en el de
La visibilidad es uno de los puntos que más se requieren hoy en día, al unirte se te brinda la oportunidad de **mayor visibilidad en la comunidad de desarrolladores y de demostrar tus habilidades**. Esto puede ayudarte a encontrar oportunidades de trabajo o a colaborar con otros proyectos.
-Colaboración con otros desarrolladores de todo el mundo y **trabajar juntos para mejorar el proyecto** Al trabajar en equipo y colaborar con otros, podrás mejorar tu comunicación, resolución de problemas y liderazgo, habilidades que cada vez son más demandadas en el entorno laboral.
+Colaboración con otros desarrolladores de todo el mundo y **trabajar juntos para mejorar el proyecto** Al trabajar en equipo y colaborar con otros, podrás mejorar tu comunicación, resolución de problemas y liderazgo, habilidades que cada vez son más demandadas en el entorno laboral.
Contribución al bien común Participar en un proyecto de código abierto te permite contribuir a la comunidad y a la sociedad en general, ya que el código abierto es accesible y utilizable por cualquier persona. **Esto puede ser muy gratificante y sentirte parte de algo más grande**.
-Es una excelente manera de incrementar tus habilidades tecnológicas y **estar al tanto de las últimas tendencias y desarrollos en el mundo del software**. Al trabajar con otros desarrolladores y contribuir a proyectos de código abierto, tendrás la oportunidad de **aprender y practicar nuevas tecnologías y metodologías, lo que te ayudará a mejorar tus habilidades y a mantenerte actualizado en el mundo en constante cambio de la tecnología.
-
+Es una excelente manera de incrementar tus habilidades tecnológicas y **estar al tanto de las últimas tendencias y desarrollos en el mundo del software**. Al trabajar con otros desarrolladores y contribuir a proyectos de código abierto, tendrás la oportunidad de \*\*aprender y practicar nuevas tecnologías y metodologías, lo que te ayudará a mejorar tus habilidades y a mantenerte actualizado en el mundo en constante cambio de la tecnología.
Esperamos que estés listo para **unirte a nosotros en esta emocionante aventura**
diff --git a/packages/provider/package.json b/packages/provider/package.json
index c3d77ea..7bc108b 100644
--- a/packages/provider/package.json
+++ b/packages/provider/package.json
@@ -1,6 +1,6 @@
{
"name": "@bot-whatsapp/provider",
- "version": "0.0.32-alpha.0",
+ "version": "0.0.33-alpha.0",
"description": "Esto es el conector a Twilio, Meta, etc...",
"main": "./lib/mock/index.cjs",
"keywords": [],
From 20f665175c9b47226df41ce43e05574bd6ab1930 Mon Sep 17 00:00:00 2001
From: vicente1992
Date: Fri, 30 Dec 2022 07:24:29 -0500
Subject: [PATCH 10/14] fix(starters): base templates are added for meta
---
packages/provider/src/meta/server.js | 2 +-
starters/apps/base-meta-json/README.md | 34 +++++++
starters/apps/base-meta-json/app.js | 95 ++++++++++++++++++
starters/apps/base-meta-json/package.json | 22 +++++
starters/apps/base-meta-mongo/README.md | 34 +++++++
starters/apps/base-meta-mongo/app.js | 106 ++++++++++++++++++++
starters/apps/base-meta-mongo/package.json | 23 +++++
starters/apps/base-meta-mysql/README.md | 34 +++++++
starters/apps/base-meta-mysql/app.js | 108 +++++++++++++++++++++
starters/apps/base-meta-mysql/package.json | 23 +++++
10 files changed, 480 insertions(+), 1 deletion(-)
create mode 100644 starters/apps/base-meta-json/README.md
create mode 100644 starters/apps/base-meta-json/app.js
create mode 100644 starters/apps/base-meta-json/package.json
create mode 100644 starters/apps/base-meta-mongo/README.md
create mode 100644 starters/apps/base-meta-mongo/app.js
create mode 100644 starters/apps/base-meta-mongo/package.json
create mode 100644 starters/apps/base-meta-mysql/README.md
create mode 100644 starters/apps/base-meta-mysql/app.js
create mode 100644 starters/apps/base-meta-mysql/package.json
diff --git a/packages/provider/src/meta/server.js b/packages/provider/src/meta/server.js
index 85e0403..3d6ef61 100644
--- a/packages/provider/src/meta/server.js
+++ b/packages/provider/src/meta/server.js
@@ -34,7 +34,7 @@ class MetaWebHookServer extends EventEmitter {
this.emit('message', {
from: message.from,
to,
- body: message.text.body,
+ body: message.text?.body,
})
const json = JSON.stringify({ body })
res.end(json)
diff --git a/starters/apps/base-meta-json/README.md b/starters/apps/base-meta-json/README.md
new file mode 100644
index 0000000..d0e43d2
--- /dev/null
+++ b/starters/apps/base-meta-json/README.md
@@ -0,0 +1,34 @@
+### CHATBOT Whatsapp
+
+Este bot es una aplicación que puedes vincular con tu whatsapp y crear flujos para automatizar tareas en tu negocio o procesos repetitivos.
+
+Este bot contiene un flujo básico en el cual una persona (cliente) escribe **"hola"** y el bot responde:
+- Bienvenido a mi tienda
+- ¿Como puedo ayudarte?
+- Tengo: Zapatos, Bolsos etc..
+
+__Iniciar__
+
+Los flujos se declaran de atrás para adelante, es decir que si tienes un flujo de este tipo:
+
+ Menu Principal
+ - SubMenu 1
+ - Submenu 1.1
+ - Submenu 2
+ - Submenu 2.1
+
+Primero se declaran los submenus 1.1 y 2.1, luego el 1 y 2 y al final el principal.
+
+```
+npm install
+npm start
+```
+
+__¿Tienes problemas?:__ [Abrir Issue](https://github.com/codigoencasa/bot-whatsapp/issues/new/choose)
+
+------
+> ¿Quieres se parte de este proyecto?
+> - [Discord](https://link.codigoencasa.com/DISCORD)
+> - [Twitter](https://twitter.com/leifermendez)
+> - [Youtube](https://www.youtube.com/watch?v=5lEMCeWEJ8o&list=PL_WGMLcL4jzWPhdhcUyhbFU6bC0oJd2BR)
+> - [Telegram](https://t.me/leifermendez)
diff --git a/starters/apps/base-meta-json/app.js b/starters/apps/base-meta-json/app.js
new file mode 100644
index 0000000..506ef6f
--- /dev/null
+++ b/starters/apps/base-meta-json/app.js
@@ -0,0 +1,95 @@
+const {
+ createBot,
+ createProvider,
+ createFlow,
+ addKeyword,
+ addChild,
+} = require('@bot-whatsapp/bot')
+
+const MetaProvider = require('@bot-whatsapp/provider/meta')
+const JsonFileAdapter = require('@bot-whatsapp/database/json')
+
+/**
+ * Aqui declaramos los flujos hijos, los flujos se declaran de atras para adelante, es decir que si tienes un flujo de este tipo:
+ *
+ * Menu Principal
+ * - SubMenu 1
+ * - Submenu 1.1
+ * - Submenu 2
+ * - Submenu 2.1
+ *
+ * Primero declaras los submenus 1.1 y 2.1, luego el 1 y 2 y al final el principal.
+ */
+
+const flowBolsos2 = addKeyword(['bolsos2', '2'])
+ .addAnswer('🤯 *MUCHOS* bolsos ...')
+ .addAnswer('y mas bolsos... bla bla')
+
+const flowZapatos2 = addKeyword(['zapatos2', '2'])
+ .addAnswer('🤯 repito que tengo *MUCHOS* zapatos.')
+ .addAnswer('y algunas otras cosas.')
+
+const flowZapatos = addKeyword(['1', 'zapatos', 'ZAPATOS'])
+ .addAnswer('🤯 Veo que elegiste zapatos')
+ .addAnswer('Tengo muchos zapatos...bla bla')
+ .addAnswer(
+ ['Manda:', '*(2) Zapatos2*', 'para mas información'],
+ { capture: true },
+ (ctx) => {
+ console.log('Aqui puedes ver más info del usuario...')
+ console.log('Puedes enviar un mail, hook, etc..')
+ console.log(ctx)
+ },
+ [...addChild(flowZapatos2)]
+ )
+
+const flowBolsos = addKeyword(['2', 'bolsos', 'BOLSOS'])
+ .addAnswer('🙌 Veo que elegiste bolsos')
+ .addAnswer('Tengo muchos bolsos...bla bla')
+ .addAnswer(
+ ['Manda:', '*(2) Bolsos2*', 'para mas información.'],
+ { capture: true },
+ (ctx) => {
+ console.log('Aqui puedes ver más info del usuario...')
+ console.log('Puedes enviar un mail, hook, etc..')
+ console.log(ctx)
+ },
+ [...addChild(flowBolsos2)]
+ )
+
+/**
+ * Declarando flujo principal
+ */
+
+const flowPrincipal = addKeyword(['hola', 'ole', 'alo'])
+ .addAnswer(['Hola, bienvenido a mi tienda', '¿Como puedo ayudarte?'])
+ .addAnswer(['Tengo:', 'Zapatos', 'Bolsos', 'etc ...'])
+ .addAnswer(
+ ['Para continuar escribe:', '*(1) Zapatos*', '*(2) Bolsos*'],
+ { capture: true },
+ (ctx) => {
+ console.log('Aqui puedes ver más info del usuario...')
+ console.log('Puedes enviar un mail, hook, etc..')
+ console.log(ctx)
+ },
+ [...addChild(flowBolsos), ...addChild(flowZapatos)]
+ )
+
+const main = async () => {
+ const adapterDB = new JsonFileAdapter()
+ const adapterFlow = createFlow([flowPrincipal])
+
+ const adapterProvider = createProvider(MetaProvider, {
+ jwtToken: 'jwtToken',
+ numberId: 'numberId',
+ verifyToken: 'verifyToken',
+ })
+
+ createBot({
+ flow: adapterFlow,
+ provider: adapterProvider,
+ database: adapterDB,
+ })
+}
+
+main()
diff --git a/starters/apps/base-meta-json/package.json b/starters/apps/base-meta-json/package.json
new file mode 100644
index 0000000..3243406
--- /dev/null
+++ b/starters/apps/base-meta-json/package.json
@@ -0,0 +1,22 @@
+{
+ "name": "bot-whatsapp-base-meta-json",
+ "version": "1.0.0",
+ "description": "",
+ "main": "app.js",
+ "scripts": {
+ "pre-copy": "cd .. && yarn run copy.lib base-meta-json",
+ "start": "node app.js"
+ },
+ "keywords": [],
+ "dependencies": {
+ "body-parser": "^1.20.1",
+ "polka": "^0.5.2",
+ "@bot-whatsapp/bot": "latest",
+ "@bot-whatsapp/cli": "latest",
+ "@bot-whatsapp/database": "latest",
+ "@bot-whatsapp/provider": "latest",
+ "axios": "^1.2.1"
+ },
+ "author": "",
+ "license": "ISC"
+}
diff --git a/starters/apps/base-meta-mongo/README.md b/starters/apps/base-meta-mongo/README.md
new file mode 100644
index 0000000..d0e43d2
--- /dev/null
+++ b/starters/apps/base-meta-mongo/README.md
@@ -0,0 +1,34 @@
+### CHATBOT Whatsapp
+
+Este bot es una aplicación que puedes vincular con tu whatsapp y crear flujos para automatizar tareas en tu negocio o procesos repetitivos.
+
+Este bot contiene un flujo básico en el cual una persona (cliente) escribe **"hola"** y el bot responde:
+- Bienvenido a mi tienda
+- ¿Como puedo ayudarte?
+- Tengo: Zapatos, Bolsos etc..
+
+__Iniciar__
+
+Los flujos se declaran de atrás para adelante, es decir que si tienes un flujo de este tipo:
+
+ Menu Principal
+ - SubMenu 1
+ - Submenu 1.1
+ - Submenu 2
+ - Submenu 2.1
+
+Primero se declaran los submenus 1.1 y 2.1, luego el 1 y 2 y al final el principal.
+
+```
+npm install
+npm start
+```
+
+__¿Tienes problemas?:__ [Abrir Issue](https://github.com/codigoencasa/bot-whatsapp/issues/new/choose)
+
+------
+> ¿Quieres se parte de este proyecto?
+> - [Discord](https://link.codigoencasa.com/DISCORD)
+> - [Twitter](https://twitter.com/leifermendez)
+> - [Youtube](https://www.youtube.com/watch?v=5lEMCeWEJ8o&list=PL_WGMLcL4jzWPhdhcUyhbFU6bC0oJd2BR)
+> - [Telegram](https://t.me/leifermendez)
diff --git a/starters/apps/base-meta-mongo/app.js b/starters/apps/base-meta-mongo/app.js
new file mode 100644
index 0000000..8cf05d6
--- /dev/null
+++ b/starters/apps/base-meta-mongo/app.js
@@ -0,0 +1,106 @@
+const {
+ createBot,
+ createProvider,
+ createFlow,
+ addKeyword,
+ addChild,
+} = require('@bot-whatsapp/bot')
+
+const MetaProvider = require('@bot-whatsapp/provider/meta')
+const MongoAdapter = require('@bot-whatsapp/database/mongo')
+
+/**
+ * Declaramos las conexiones de Mongo
+ */
+
+const MONGO_DB_URI = 'mongodb://0.0.0.0:27017'
+const MONGO_DB_NAME = 'db_bot'
+
+/**
+ * Aqui declaramos los flujos hijos, los flujos se declaran de atras para adelante, es decir que si tienes un flujo de este tipo:
+ *
+ * Menu Principal
+ * - SubMenu 1
+ * - Submenu 1.1
+ * - Submenu 2
+ * - Submenu 2.1
+ *
+ * Primero declaras los submenus 1.1 y 2.1, luego el 1 y 2 y al final el principal.
+ */
+
+const flowBolsos2 = addKeyword(['bolsos2', '2'])
+ .addAnswer('🤯 *MUCHOS* bolsos ...')
+ .addAnswer('y mas bolsos... bla bla')
+
+const flowZapatos2 = addKeyword(['zapatos2', '2'])
+ .addAnswer('🤯 repito que tengo *MUCHOS* zapatos.')
+ .addAnswer('y algunas otras cosas.')
+
+const flowZapatos = addKeyword(['1', 'zapatos', 'ZAPATOS'])
+ .addAnswer('🤯 Veo que elegiste zapatos')
+ .addAnswer('Tengo muchos zapatos...bla bla')
+ .addAnswer(
+ ['Manda:', '*(2) Zapatos2*', 'para mas información'],
+ { capture: true },
+ (ctx) => {
+ console.log('Aqui puedes ver más info del usuario...')
+ console.log('Puedes enviar un mail, hook, etc..')
+ console.log(ctx)
+ },
+ [...addChild(flowZapatos2)]
+ )
+
+const flowBolsos = addKeyword(['2', 'bolsos', 'BOLSOS'])
+ .addAnswer('🙌 Veo que elegiste bolsos')
+ .addAnswer('Tengo muchos bolsos...bla bla')
+ .addAnswer(
+ ['Manda:', '*(2) Bolsos2*', 'para mas información.'],
+ { capture: true },
+ (ctx) => {
+ console.log('Aqui puedes ver más info del usuario...')
+ console.log('Puedes enviar un mail, hook, etc..')
+ console.log(ctx)
+ },
+ [...addChild(flowBolsos2)]
+ )
+
+/**
+ * Declarando flujo principal
+ */
+
+const flowPrincipal = addKeyword(['hola', 'ole', 'alo'])
+ .addAnswer(['Hola, bienvenido a mi tienda', '¿Como puedo ayudarte?'])
+ .addAnswer(['Tengo:', 'Zapatos', 'Bolsos', 'etc ...'])
+ .addAnswer(
+ ['Para continuar escribe:', '*(1) Zapatos*', '*(2) Bolsos*'],
+ { capture: true },
+ (ctx) => {
+ console.log('Aqui puedes ver más info del usuario...')
+ console.log('Puedes enviar un mail, hook, etc..')
+ console.log(ctx)
+ },
+ [...addChild(flowBolsos), ...addChild(flowZapatos)]
+ )
+
+const main = async () => {
+ const adapterDB = new MongoAdapter({
+ dbUri: MONGO_DB_URI,
+ dbName: MONGO_DB_NAME,
+ })
+
+ const adapterFlow = createFlow([flowPrincipal])
+
+ const adapterProvider = createProvider(MetaProvider, {
+ jwtToken: 'jwtToken',
+ numberId: 'numberId',
+ verifyToken: 'verifyToken',
+ })
+
+ createBot({
+ flow: adapterFlow,
+ provider: adapterProvider,
+ database: adapterDB,
+ })
+}
+
+main()
diff --git a/starters/apps/base-meta-mongo/package.json b/starters/apps/base-meta-mongo/package.json
new file mode 100644
index 0000000..94055f8
--- /dev/null
+++ b/starters/apps/base-meta-mongo/package.json
@@ -0,0 +1,23 @@
+{
+ "name": "bot-whatsapp-base-meta-mongo",
+ "version": "1.0.0",
+ "description": "",
+ "main": "app.js",
+ "scripts": {
+ "pre-copy": "cd .. && yarn run copy.lib base-meta-mongo",
+ "start": "node app.js"
+ },
+ "keywords": [],
+ "dependencies": {
+ "body-parser": "^1.20.1",
+ "polka": "^0.5.2",
+ "@bot-whatsapp/bot": "latest",
+ "@bot-whatsapp/cli": "latest",
+ "@bot-whatsapp/database": "latest",
+ "@bot-whatsapp/provider": "latest",
+ "axios": "^1.2.1",
+ "mongodb": "^4.12.1"
+ },
+ "author": "",
+ "license": "ISC"
+}
diff --git a/starters/apps/base-meta-mysql/README.md b/starters/apps/base-meta-mysql/README.md
new file mode 100644
index 0000000..d0e43d2
--- /dev/null
+++ b/starters/apps/base-meta-mysql/README.md
@@ -0,0 +1,34 @@
+### CHATBOT Whatsapp
+
+Este bot es una aplicación que puedes vincular con tu whatsapp y crear flujos para automatizar tareas en tu negocio o procesos repetitivos.
+
+Este bot contiene un flujo básico en el cual una persona (cliente) escribe **"hola"** y el bot responde:
+- Bienvenido a mi tienda
+- ¿Como puedo ayudarte?
+- Tengo: Zapatos, Bolsos etc..
+
+__Iniciar__
+
+Los flujos se declaran de atrás para adelante, es decir que si tienes un flujo de este tipo:
+
+ Menu Principal
+ - SubMenu 1
+ - Submenu 1.1
+ - Submenu 2
+ - Submenu 2.1
+
+Primero se declaran los submenus 1.1 y 2.1, luego el 1 y 2 y al final el principal.
+
+```
+npm install
+npm start
+```
+
+__¿Tienes problemas?:__ [Abrir Issue](https://github.com/codigoencasa/bot-whatsapp/issues/new/choose)
+
+------
+> ¿Quieres se parte de este proyecto?
+> - [Discord](https://link.codigoencasa.com/DISCORD)
+> - [Twitter](https://twitter.com/leifermendez)
+> - [Youtube](https://www.youtube.com/watch?v=5lEMCeWEJ8o&list=PL_WGMLcL4jzWPhdhcUyhbFU6bC0oJd2BR)
+> - [Telegram](https://t.me/leifermendez)
diff --git a/starters/apps/base-meta-mysql/app.js b/starters/apps/base-meta-mysql/app.js
new file mode 100644
index 0000000..796f9ba
--- /dev/null
+++ b/starters/apps/base-meta-mysql/app.js
@@ -0,0 +1,108 @@
+const {
+ createBot,
+ createProvider,
+ createFlow,
+ addKeyword,
+ addChild,
+} = require('@bot-whatsapp/bot')
+
+const MetaProvider = require('@bot-whatsapp/provider/meta')
+const MySQLAdapter = require('@bot-whatsapp/database/mysql')
+
+/**
+ * Declaramos las conexiones de MySQL
+ */
+const MYSQL_DB_HOST = 'localhost'
+const MYSQL_DB_USER = 'usr'
+const MYSQL_DB_PASSWORD = 'pass'
+const MYSQL_DB_NAME = 'bot'
+
+/**
+ * Aqui declaramos los flujos hijos, los flujos se declaran de atras para adelante, es decir que si tienes un flujo de este tipo:
+ *
+ * Menu Principal
+ * - SubMenu 1
+ * - Submenu 1.1
+ * - Submenu 2
+ * - Submenu 2.1
+ *
+ * Primero declaras los submenus 1.1 y 2.1, luego el 1 y 2 y al final el principal.
+ */
+
+const flowBolsos2 = addKeyword(['bolsos2', '2'])
+ .addAnswer('🤯 *MUCHOS* bolsos ...')
+ .addAnswer('y mas bolsos... bla bla')
+
+const flowZapatos2 = addKeyword(['zapatos2', '2'])
+ .addAnswer('🤯 repito que tengo *MUCHOS* zapatos.')
+ .addAnswer('y algunas otras cosas.')
+
+const flowZapatos = addKeyword(['1', 'zapatos', 'ZAPATOS'])
+ .addAnswer('🤯 Veo que elegiste zapatos')
+ .addAnswer('Tengo muchos zapatos...bla bla')
+ .addAnswer(
+ ['Manda:', '*(2) Zapatos2*', 'para mas información'],
+ { capture: true },
+ (ctx) => {
+ console.log('Aqui puedes ver más info del usuario...')
+ console.log('Puedes enviar un mail, hook, etc..')
+ console.log(ctx)
+ },
+ [...addChild(flowZapatos2)]
+ )
+
+const flowBolsos = addKeyword(['2', 'bolsos', 'BOLSOS'])
+ .addAnswer('🙌 Veo que elegiste bolsos')
+ .addAnswer('Tengo muchos bolsos...bla bla')
+ .addAnswer(
+ ['Manda:', '*(2) Bolsos2*', 'para mas información.'],
+ { capture: true },
+ (ctx) => {
+ console.log('Aqui puedes ver más info del usuario...')
+ console.log('Puedes enviar un mail, hook, etc..')
+ console.log(ctx)
+ },
+ [...addChild(flowBolsos2)]
+ )
+
+/**
+ * Declarando flujo principal
+ */
+
+const flowPrincipal = addKeyword(['hola', 'ole', 'alo'])
+ .addAnswer(['Hola, bienvenido a mi tienda', '¿Como puedo ayudarte?'])
+ .addAnswer(['Tengo:', 'Zapatos', 'Bolsos', 'etc ...'])
+ .addAnswer(
+ ['Para continuar escribe:', '*(1) Zapatos*', '*(2) Bolsos*'],
+ { capture: true },
+ (ctx) => {
+ console.log('Aqui puedes ver más info del usuario...')
+ console.log('Puedes enviar un mail, hook, etc..')
+ console.log(ctx)
+ },
+ [...addChild(flowBolsos), ...addChild(flowZapatos)]
+ )
+
+const main = async () => {
+ const adapterDB = new MySQLAdapter({
+ host: MYSQL_DB_HOST,
+ user: MYSQL_DB_USER,
+ database: MYSQL_DB_NAME,
+ password: MYSQL_DB_PASSWORD,
+ })
+ const adapterFlow = createFlow([flowPrincipal])
+
+ const adapterProvider = createProvider(MetaProvider, {
+ jwtToken: 'jwtToken',
+ numberId: 'numberId',
+ verifyToken: 'verifyToken',
+ })
+
+ createBot({
+ flow: adapterFlow,
+ provider: adapterProvider,
+ database: adapterDB,
+ })
+}
+
+main()
diff --git a/starters/apps/base-meta-mysql/package.json b/starters/apps/base-meta-mysql/package.json
new file mode 100644
index 0000000..a9a71b0
--- /dev/null
+++ b/starters/apps/base-meta-mysql/package.json
@@ -0,0 +1,23 @@
+{
+ "name": "bot-whatsapp-base-meta-mysql",
+ "version": "1.0.0",
+ "description": "",
+ "main": "app.js",
+ "scripts": {
+ "pre-copy": "cd .. && yarn run copy.lib base-meta-mysql",
+ "start": "node app.js"
+ },
+ "keywords": [],
+ "dependencies": {
+ "body-parser": "^1.20.1",
+ "polka": "^0.5.2",
+ "@bot-whatsapp/bot": "latest",
+ "@bot-whatsapp/cli": "latest",
+ "@bot-whatsapp/database": "latest",
+ "@bot-whatsapp/provider": "latest",
+ "axios": "^1.2.1",
+ "mysql2": "^2.3.3"
+ },
+ "author": "",
+ "license": "ISC"
+}
From ee5b69dbf3b4090e4cb9175c2a75578ac33b10b2 Mon Sep 17 00:00:00 2001
From: "github-actions[bot]"
Date: Fri, 30 Dec 2022 18:45:58 +0000
Subject: [PATCH 11/14] ci(version): :zap: automatic - "${date}" updated
versions every packages
---
packages/bot/package.json | 2 +-
packages/cli/package.json | 2 +-
packages/create-bot-whatsapp/package.json | 2 +-
packages/database/package.json | 2 +-
packages/provider/package.json | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/packages/bot/package.json b/packages/bot/package.json
index 87d283b..94ea8ad 100644
--- a/packages/bot/package.json
+++ b/packages/bot/package.json
@@ -1,6 +1,6 @@
{
"name": "@bot-whatsapp/bot",
- "version": "0.0.28-alpha.0",
+ "version": "0.0.29-alpha.0",
"description": "",
"main": "./lib/bundle.bot.cjs",
"scripts": {
diff --git a/packages/cli/package.json b/packages/cli/package.json
index 5a678c4..3f86f72 100644
--- a/packages/cli/package.json
+++ b/packages/cli/package.json
@@ -1,6 +1,6 @@
{
"name": "@bot-whatsapp/cli",
- "version": "0.0.35-alpha.0",
+ "version": "0.0.36-alpha.0",
"description": "",
"main": "index.js",
"devDependencies": {
diff --git a/packages/create-bot-whatsapp/package.json b/packages/create-bot-whatsapp/package.json
index 2386b2e..9c2358f 100644
--- a/packages/create-bot-whatsapp/package.json
+++ b/packages/create-bot-whatsapp/package.json
@@ -1,6 +1,6 @@
{
"name": "create-bot-whatsapp",
- "version": "0.0.46-alpha.0",
+ "version": "0.0.47-alpha.0",
"description": "",
"main": "./lib/bundle.create-bot-whatsapp.cjs",
"files": [
diff --git a/packages/database/package.json b/packages/database/package.json
index a79d823..71404ba 100644
--- a/packages/database/package.json
+++ b/packages/database/package.json
@@ -1,6 +1,6 @@
{
"name": "@bot-whatsapp/database",
- "version": "0.0.27-alpha.0",
+ "version": "0.0.28-alpha.0",
"description": "Esto es el conector a mysql, pg, mongo",
"main": "./lib/mock/index.cjs",
"keywords": [],
diff --git a/packages/provider/package.json b/packages/provider/package.json
index 7bc108b..7714e30 100644
--- a/packages/provider/package.json
+++ b/packages/provider/package.json
@@ -1,6 +1,6 @@
{
"name": "@bot-whatsapp/provider",
- "version": "0.0.33-alpha.0",
+ "version": "0.0.34-alpha.0",
"description": "Esto es el conector a Twilio, Meta, etc...",
"main": "./lib/mock/index.cjs",
"keywords": [],
From b659cc9b153ea5d34533860e8778a8bf2352a67d Mon Sep 17 00:00:00 2001
From: marianarolfo <68322254+marianarolfo@users.noreply.github.com>
Date: Sat, 31 Dec 2022 13:47:52 +0100
Subject: [PATCH 12/14] docs(README): updated, style
---
README.md | 128 +++++++++++++-----------------------------------------
1 file changed, 30 insertions(+), 98 deletions(-)
diff --git a/README.md b/README.md
index 8b4bc67..208bde0 100644
--- a/README.md
+++ b/README.md
@@ -1,102 +1,34 @@
-[](https://github.com/leifermendez/bot-whatsapp/actions/workflows/ci.yml)
+# Chatbot Library
+
[](http://commitizen.github.io/cz-cli/)
---------
-## Documentacion
-[https://bot-whatsapp.netlify.app/](https://bot-whatsapp.netlify.app/)
-
-🐤 Tablero de tareas : [https://github.com/users/leifermendez/projects/4/views/1](https://github.com/users/leifermendez/projects/4/views/1)
-
-🚀 __Roadmap:__ [https://github.com/users/leifermendez/projects/4/views/1](https://github.com/users/leifermendez/projects/4/views/1)
+[](https://github.com/codigoencasa/bot-whatsapp/actions/workflows/releases.yml)
-**Comunidad**
+
+
+
+
+**Con esta librería, puedes construir flujos automatizados de conversación de manera agnóstica al proveedor de WhatsApp,** configurar respuestas automatizadas para preguntas frecuentes, recibir y responder mensajes de manera automatizada, y hacer un seguimiento de las interacciones con los clientes. Además, puedes configurar fácilmente disparadores que te ayudaran a expandir las funcionalidades sin límites.
+
+## Comenzar
+
+```
+npm create bot-whatsapp@latest
+```
+
+Entiende más a fondo sus funcionalidades explicadas en nuestra documentación.
+
+- Instalacion
+- Base de datos
+- Proveedores
+
+## Recursos
+- [📄 Documentación](https://bot-whatsapp.netlify.app/)
+- [🚀 Roadmap](https://github.com/orgs/codigoencasa/projects/1)
+- [💻 Discord](https://link.codigoencasa.com/DISCORD)
+- [👌 Twitter](https://twitter.com/leifermendez)
+- [🎥 Youtube](https://www.youtube.com/watch?v=5lEMCeWEJ8o&list=PL_WGMLcL4jzWPhdhcUyhbFU6bC0oJd2BR)
+
+## Comunidad
-
-
-
-> Forma parte de este proyecto.
-
-- [Discord](https://link.codigoencasa.com/DISCORD)
-- [Twitter](https://twitter.com/leifermendez)
-- [Youtube](https://www.youtube.com/watch?v=5lEMCeWEJ8o&list=PL_WGMLcL4jzWPhdhcUyhbFU6bC0oJd2BR)
-- [Telegram](https://t.me/leifermendez)
+
\ No newline at end of file
From 5633f7c71c12b375868daceaf422cbd5f10b72e7 Mon Sep 17 00:00:00 2001
From: marianarolfo <68322254+marianarolfo@users.noreply.github.com>
Date: Sat, 31 Dec 2022 13:52:26 +0100
Subject: [PATCH 13/14] docs(READMED): update, style
---
README.md | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/README.md b/README.md
index 208bde0..e0f6488 100644
--- a/README.md
+++ b/README.md
@@ -5,7 +5,7 @@
-
+
**Con esta librería, puedes construir flujos automatizados de conversación de manera agnóstica al proveedor de WhatsApp,** configurar respuestas automatizadas para preguntas frecuentes, recibir y responder mensajes de manera automatizada, y hacer un seguimiento de las interacciones con los clientes. Además, puedes configurar fácilmente disparadores que te ayudaran a expandir las funcionalidades sin límites.
@@ -31,4 +31,6 @@ Entiende más a fondo sus funcionalidades explicadas en nuestra documentación.
## Comunidad
-
\ No newline at end of file
+
+
+
From aff9f19d8e289febf1cec041aa037f8d3846c489 Mon Sep 17 00:00:00 2001
From: marianarolfo <68322254+marianarolfo@users.noreply.github.com>
Date: Sat, 31 Dec 2022 14:10:39 +0100
Subject: [PATCH 14/14] add info install node
---
packages/docs/src/routes/docs/install/index.mdx | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/packages/docs/src/routes/docs/install/index.mdx b/packages/docs/src/routes/docs/install/index.mdx
index 97614d6..cf23f33 100644
--- a/packages/docs/src/routes/docs/install/index.mdx
+++ b/packages/docs/src/routes/docs/install/index.mdx
@@ -6,6 +6,11 @@ A continuación se describen los puntos técnicos que debes de tener en cuenta a
- Node v16 o superior **[descargar node](https://nodejs.org/es/download/)**
+## ¿Como instalar Node en Windows?
+https://youtu.be/xRXHQlqA3Ak?t=376
+
+## ¿Como instalar Node en Ubuntu?
+Te comparto un recurso de **[Digital Ocean](https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-20-04-es)** donde explica como instalar node en Ubuntu.
## ¿Como saber que tengo el Node?
Solo debes ejecutar el siguiente comando y esperar que la versión que te arroja sea superior a v16