added mor doc

This commit is contained in:
Leifer Mendez
2022-11-28 09:52:17 +01:00
parent c6b23d353a
commit 8d24093aec
2 changed files with 38 additions and 28 deletions

20
TODO.md
View File

@@ -1,8 +1,26 @@
### @bot-whatsapp/bot
- [X] Posibilidad de en el capture meter todo un nuevo CTX de FLOW .addAnswer('Marca la opcion',{capture:true, join:CTX})
- [X] .addKeyword('1') no funciona con 1 caracter
- [X] sensitivy viene activado por defecto
- [ ] fallback respuesta en hijo: Se puede colocar en option el ref de la answer fallback
- [ ] colocar mensaje esperando conectando whatsapp (provider)
- [ ] Cuando Envian Sticket devuelve mensaje raro
- [ ] createDatabase validar implementacion de funciones
### @bot-whatsapp/database
- [ ] __(doc):__ Video para explicar como implementar nuevos database
- [ ] Mongo adapter
- [ ] MySQL adapter
- [ ] JsonFile adapter
### @bot-whatsapp/provider
- [ ] __(doc):__ Video para explicar como implementar nuevos providers
- [ ] WhatsappWeb provider enviar imagenes
- [ ] WhatsappWeb provider enviar audio
- [ ] WhatsappWeb provider enviar audio
- [ ] Twilio adapter
- [ ] Meta adapter
### @bot-whatsapp/cli
- [ ] Mongo adapter
- [ ] MySQL adapter
- [ ] JsonFile adapter

View File

@@ -1,36 +1,28 @@
### 🚀 Packages
### 🚀 Package (@bot-whatsapp/database)
Se separaran responsabilidades del proyecto en diferentes packages, de esta manera se podra versionar y controlar los diferentes versionamientos y cambios con un mayor desacoplamiento.
Este package tiene como reponsabilidad proveer de diferentes adaptadores para la capa de datos.
La idea es brindar multiples opciones como un adaptador de MySQL, Mongo, entre otros.
##### Principales Funciones
Ejemplo de como se implementaria:
El bot tiene tres funciones principales hasta este momento la cuales divideremos en paquetes para que puedan trabajarse y por separador sin acoplamiento.
```js
const MongoAdapter = require('@bot-whatsapp/database/mongo')
/// o
const MySQLAdapter = require('@bot-whatsapp/database/mysql')
**Package CLI** (_Command Line Interface_)
const main = async () => {
> Sera basicamente un asistente via `cosola` el cual nos ayudara a realizar las instalacion de las dependencias necesarias y a crear un archivo de configuracion para tener un migrado rápido.
> La idea esque se pueda ejecutar un commando parecido a `npm create bot@leifermendez` o algo parecido y comienze a instalar todo.
const adapterDB = new MongoAdapter()
const adapterFlow = createFlow([flujoBot])
const adapterProvider = createProvider(WebWhatsappProvider)
🤞 Funciones deseadas:
- Que actualice y corrija los problema de versionamientos más frecuetes
- Verificar la versión de NODE correcta
- Verificar OS para brindar mejor soporte de puppeter
- Limpiar sesion, borrar carpeta de sesion
- Seleccionar provider
- Poder usar un archivo .json con la configuración
**Package Provider**
> Es parte clave del proyecto la idea es poder tener la opcion de incluir otro proveedor de mensajeria como la api oficial o api de twilio
- WhatsappWeb (_default_)
- Whatsapp API official
- Twilio
**Package Input/Output**
> Gestionar los diferentes mensajes entranates y poder responder, a la vez de mantener un registro de los datos
createBot({
flow: adapterFlow,
provider: adapterProvider,
database: adapterDB,
})
}
```
---