This commit is contained in:
Leifer Mendez
2022-11-09 20:07:52 +01:00
parent ceb6faa5af
commit 8410309e38
11 changed files with 124 additions and 4270 deletions

View File

@@ -1,5 +1,8 @@
/**
* Clase principal del BOT
* [ ] Escuchar eventos del provider
* [ ] Guardar historial en db
* [ ] Buscar mensaje en flow
*
*/
class BotClass {
flowClass
@@ -15,11 +18,26 @@ class BotClass {
)
}
/**
* @private
* @param {*} ctxMessage
*/
handleOnMessage = (ctxMessage) => {
this.databaseClass.saveLog(ctxMessage)
this.continue(ctxMessage)
}
handleEvents = (eventName) => {
if (eventName === 'message') return
if (eventName === 'auth_success') return
if (eventName === 'auth_error') return
}
/**
* @private
* @param {*} message
* @param {*} ref
*/
continue = (message, ref = false) => {
const responde = this.flowClass.find(message, ref)
if (responde) {

View File

@@ -0,0 +1,22 @@
const { EventEmitter } = require('node:events')
const { test } = require('uvu')
const assert = require('uvu/assert')
const { create } = require('../')
class MockFlow {}
class MockDB {}
class MockProvider extends EventEmitter {}
test(`BotClass`, async () => {
const setting = {
flow: new MockFlow(),
database: new MockDB(),
provider: new MockProvider(),
}
const bot = await create(setting)
bot.on('message', (ctx) => console.log(ctx))
})
test.run()