19 Commits

Author SHA1 Message Date
b00bc21234 Update README.md 2023-02-07 20:00:51 -06:00
4e3766755d Update README.md 2023-02-07 19:58:23 -06:00
db29cc23e6 Update README.md 2023-02-07 19:47:36 -06:00
056b937a11 Update README.md 2023-02-07 19:46:58 -06:00
22925c6389 Update README.md 2023-02-07 03:32:59 -06:00
2b652ca6f3 Merge pull request #1 from cheveguerra/NoInitial
Combiar con No initial
2023-02-07 03:27:44 -06:00
9f159eec7a Update README.md 2023-02-07 03:14:32 -06:00
22de88798f Update README.md 2023-02-07 03:11:27 -06:00
51620a501a Update README.md 2023-02-07 03:06:15 -06:00
41e0edfb49 Update README.md 2023-02-07 03:03:58 -06:00
e5c0c0e724 Update README.md 2023-02-07 03:02:40 -06:00
2fd9226770 Update README.md 2023-02-07 02:57:01 -06:00
754f0259d4 Update README.md 2023-02-07 02:55:23 -06:00
16698cc4e3 Update README.md 2023-02-07 02:52:29 -06:00
b2ae1b768d Merge branch 'NoInitial' of https://github.com/cheveguerra/botLeiferAurik-Mod_2.0 into NoInitial 2023-02-07 02:21:58 -06:00
fa336c7f2d Merge branch 'NoInitial' of https://github.com/cheveguerra/botLeiferAurik-Mod_2.0 into NoInitial 2023-02-07 02:12:14 -06:00
fafcb41ecc merge con BotGuna 2023-02-07 02:06:57 -06:00
e779d24553 feat: blacklist 2023-02-05 07:19:42 -06:00
9054f66ec3 feat: blacklist 2023-02-05 07:00:42 -06:00
2 changed files with 71 additions and 10 deletions

7
.vscode/launch.json vendored Normal file
View File

@@ -0,0 +1,7 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": []
}

View File

@@ -1,5 +1,5 @@
## Chatbot Whatsapp (OpenSource)
#### Actualizado Diciembre 2022
#### Actualizado Febrero 2023
Este proyecto es un clon de la **version 1** (legacy) de [Leifer Mendez](https://github.com/leifermendez/bot-whatsapp) y tiene las siguientes modificaciones:
@@ -33,7 +33,7 @@ Este proyecto es un clon de la **version 1** (legacy) de [Leifer Mendez](https:/
"pasoRequerido":"menu"
}
```
- Permite **expresiones regulares** en las palabras predefinidas en el initial.json.
- 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:
@@ -62,23 +62,28 @@ Este proyecto es un clon de la **version 1** (legacy) de [Leifer Mendez](https:/
- Ponemos __%dia_semana%__ para que aparezca "lunes, martes, miercoles, etc" dependiendo del día de la semana.
- Ponemos __%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".
- Permite el envío de **multiples mensajes** definidos en la **misma respuesta** del **response.json**. (Esta modificación se la robe por completo a [KJoaquin](https://github.com/KJoaquin), el lo solucionó [aquí](https://github.com/codigoencasa/bot-whatsapp/issues/111#issuecomment-1353504575) 🙌🏽 y yo solo lo adapté a mi repo!)
- Permite el envío de **multiples mensajes** (burbujas o globos) definidos en la **misma respuesta** del **response.json**. (Esta modificación se la robe por completo a [KJoaquin](https://github.com/KJoaquin), el lo solucionó [aquí](https://github.com/codigoencasa/bot-whatsapp/issues/111#issuecomment-1353504575) 🙌🏽 y yo solo lo adapté a mi repositorio!.)
Antes:
```json
{
"ejemploViejo":{
"replyMessage":["¿Hola como estas?"],
"ejemploViejo":
{
"replyMessage":
[
"¿Hola como estas?"
],
"media":null,
"trigger":null
}
}
```
Ahora **replyMessage** debe de contener un arreglo con los mensajes que se van a enviar:
Ahora "```replyMessage```" debe de contener un arreglo con los mensajes que se van a enviar:
```json
{
"ejemploNuevo":{
"replyMessage":[
"replyMessage":
[
{ "mensaje":["¿Hola como estas?"]},
{ "mensaje":["Este es el *segundo* mensaje.","Contiene dos lineas 🤪"]},
{ "mensaje":["Este es el *tercer* mensaje"]}
@@ -88,9 +93,58 @@ Este proyecto es un clon de la **version 1** (legacy) de [Leifer Mendez](https:/
}
}
```
- Permite conectarse a **APIs**, por ejemplo: Google Sheets, Excel y cualquier otra API que se pueda llamar desde una función, esto se hace agregando el parámetro "```funcion```" al **response.json**, la funcion especificada recibe automaticamente una variable con toda la información del *mensaje recibido*.
```response.json```
```
"Desbloqueo":{
"keywords": "desbloqueo",
"replyMessage":[
"Mensaje de desbloqueo de usuarios."
],
"funcion":"getFakeHTTP", //esta linea ejecuta la funcion.
"media":null,
"trigger":null,
"pasoRequerido":"soporte"
}
```
```app.js```
```
function fakeHTTP(data){
let body = data.theMsg.body
let from= data.theMsg.from
}
```
- Los archivos **initial.json** y **response.json** se unificaron, y ya solo se usa el **response.json**, para esto solo se agrega el parametro "```keywords```" del **initial.json** al **response.json**.
```response.json```
```
"Desbloqueo":{
"keywords": "desbloqueo", //Esta linea se trae desde initial.json
"replyMessage":[
"Mensaje de desbloqueo de usuarios."
],
"media":null,
"trigger":null,
"pasoRequerido":"soporte"
}
```
- Se puede especificar que al terminar un paso, el flujo se **vaya automaticamente** a otro, por ejemplo, si tenemos un flujo de tres pasos, y queremos que al terminar el tercer paso se regrese automaticamente al primero, agregamos el parametro "```goto```" al **response.json** del tercer paso y ponemos el nombre del paso 1.
```
"paso3":{
"keywords": ["zapatos"],
"replyMessage":["Gracias por tu compra"],
"media":null,
"trigger":null,
"goto":"paso1"
},
```
- 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 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
@@ -106,7 +160,7 @@ El siguiente proyecto se realizó con fines educativos para el canal de [Youtube
> [VER](https://github.com/leifermendez/bot-whatsapp/commits/main)
### Busco colaboradores ⭐
Hola amigos me gusta mucho este proyecto pero por cuestiones de tiempo se me dificulta mantener las actualizaciones si alguno quieres participar en el proyecto escribeme a leifer.contacto@gmail.com
Hola amigos me gusta mucho este proyecto pero por cuestiones de tiempo se me dificulta mantener las actualizaciones si alguno quiere participar en el proyecto escribanme a leifer.contacto@gmail.com
#### Acceso rápido
> Si tienes una cuenta en __heroku__ puedes desplegar este proyecto con (1 click)