This commit is contained in:
2023-01-07 15:46:22 -06:00
2 changed files with 35 additions and 26 deletions

View File

@@ -1,10 +1,11 @@
## Chatbot Whatsapp (OpenSource)
#### Actualizado Diciembre 2022
Este proyecto es un clon del de [Leifer Mendez](https://github.com/leifermendez/bot-whatsapp) y tiene las siguientes modificaciones:
Este proyecto es un clon de la **version 1** (legacy) de [Leifer Mendez](https://github.com/leifermendez/bot-whatsapp) y tiene las siguientes modificaciones:
- Permite menus y submenus
- Los submenus se logran agregando el parametro "```pasoRequerido```" en el **response.json**, este parametro hace que la regla en cuestión **solo se dispare** cuando la regla anterior haya sido la indicada en "```pasoRequerido```".
- Permite **submenus**.
- Un submenú es una regla que **sólo se dispara** cuando la regla anterior es la especificada, los submenus se definen agregando el parametro "```pasoRequerido```" en el **response.json**.
```json
"menu":{
"replyMessage":[
@@ -22,30 +23,38 @@ Este proyecto es un clon del de [Leifer Mendez](https://github.com/leifermendez/
"pasoRequerido":"menu"
}
```
- Permite expresiones regulares en las palabras predefinidas en el initial.json.
- Si queremos usar RegExp, en los "keywords" de **inital.json**, en lugar de un arreglo, debemos usar un string (quitamos los [])
- Permite **expresiones regulares** en las palabras predefinidas en el initial.json.
- Si queremos usar RegExp, en los "keywords" de **inital.json**, en lugar de un arreglo, debemos usar un string ( quitamos los [] )
y en él usamos "*" para significar cualquier texto y "|" para significar "OR", esto nos permite ser mas flexibles
con los "keywords", por ejemplo, si queremos que el mensaje pueda decir:
"Hola quiero info del paquete" o "Requiero mas informacion"
"Hola quiero info del paquete" o "Requiero más información"
ponemos ```*info*``` y la regla se va a disparar porque los dos contienen "info", o si queremos que se dispare con:
"Quiero info del paquete numero 3" o "Me gusto el paquete de Angular"
ponemos ```*paquete*3*|*paquete*angular*``` y la regla se dispara porque contiene "paquete" Y "3" -O- "paquete" Y "angular".
Ponemos ```*info*``` y la regla se va a disparar porque los dos contienen "info".
Si queremos que se dispare con:
"Quiero info del paquete numero 3" o "Me gustó el paquete de Angular"
Ponemos ```*paquete*3*|*paquete*angular*``` y la regla se va a disparar porque contiene "paquete" y "3" -O- "paquete" y "angular".
```json
{
"keywords": "*pak*3*|*pak*angular*|*paquete*3*|*paquete*angular*",
"key": "paq3"
}
```
- Permite remplazos en el texto de los mensajes por ejemplo:
- Permite **remplazos** en el texto de los mensajes por ejemplo:
- __%saludo%__ para que aparezca "Buenos días, tardes o noches" dependiendo de la hora.
- __%primer_nombre%__ para que aparezca el nombre (hasta el primer espacio) del remitente.
- __%dia_semana%__ para que aparezca "lunes, martes, miercoles, etc" dependiendo del día de la semana.
- __%msjant_XX%__ para que aparezca el mensaje xx anterior, es decir, si quieres mostrar el texto de 2 mensajes anteriores se pone %msjant_2%.
- etc, etc, se pueden agregar mas remplazos en la funcion "remplazos" en el archivo "adapter\index.js".
- Las modificaciones están enfocadas al uso de los archivos __initial.json__ y __response.json__, yo no uso MySQL o DialogFlow, así que no sé si las modificaciones funcionen con esos modulos, en particular el __remplazo %msjant_x%__ depende de los archivos __JSON__ que se crean en el directorio "chats".
- Tiene agregado el parche de botones y listas, así que funcionan sin problema (las listas no funcionan si el bot esta ligado a un número que use Whatsapp Business).
- Tiene los ultimos parches de DialogFlow (27-dic-2022) (When Dialogflow asks for an Image, then Upload it to Google Drive and then generate Shared Link)
- Las modificaciones están enfocadas al uso de los archivos __initial.json__ y __response.json__, yo no uso MySQL o DialogFlow, así que no sé si las modificaciones funcionen con esos modulos, en particular el __remplazo %msjant_XX%__ depende de los archivos __JSON__ que se crean en el directorio "chats".
- Tiene agregado el parche de **botones y listas**, así que funcionan sin problema (las listas no funcionan si el bot esta ligado a un número que use **Whatsapp Business**).
- Tiene los ultimos parches de **DialogFlow** (27-dic-2022) (When Dialogflow asks for an Image, then **Upload it to Google Drive** and then generate Shared Link)
## INICIA DOCUMENTACION DEL PROYECTO ORIGINAL

View File

@@ -1,38 +1,38 @@
[
{
"numero":"5215554192439"
"numero":"52155XXXXXX39"
},
{
"numero":"5215527026728"
"numero":"52155XXXXXX28"
},
{
"numero":"5215527026728"
"numero":"52155XXXXXX39"
},
{
"numero":"5215527026728"
"numero":"52155XXXXXX28"
},
{
"numero":"5215527026728"
"numero":"52155XXXXXX39"
},
{
"numero":"5215527026728"
"numero":"52155XXXXXX28"
},
{
"numero":"5215527026728"
"numero":"52155XXXXXX39"
},
{
"numero":"5215527026728"
"numero":"52155XXXXXX28"
},
{
"numero":"5215527026728"
"numero":"52155XXXXXX39"
},
{
"numero":"5215527026728"
"numero":"52155XXXXXX28"
},
{
"numero":"5215527026728"
"numero":"52155XXXXXX28"
},
{
"numero":"5215554192439"
"numero":"52155XXXXXX39"
}
]
]