diff --git a/TODO.md b/TODO.md index 353ef86..908a210 100644 --- a/TODO.md +++ b/TODO.md @@ -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 \ No newline at end of file +- [ ] WhatsappWeb provider enviar audio +- [ ] Twilio adapter +- [ ] Meta adapter + +### @bot-whatsapp/cli +- [ ] Mongo adapter +- [ ] MySQL adapter +- [ ] JsonFile adapter \ No newline at end of file diff --git a/packages/README.md b/packages/README.md index 533ac37..0cdc2aa 100644 --- a/packages/README.md +++ b/packages/README.md @@ -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, + }) +} +``` ---