From 66d06afaf718784ea7b699c1217ab35f2a332741 Mon Sep 17 00:00:00 2001 From: Davidson Gomes Date: Sun, 30 Jul 2023 11:03:12 -0300 Subject: [PATCH] feat: New instance manager in /manager route --- CHANGELOG.md | 4 + src/whatsapp/controllers/views.controller.ts | 15 +--- src/whatsapp/routers/index.router.ts | 3 +- src/whatsapp/routers/view.router.ts | 8 +- views/manager.hbs | 30 +++++++ views/qrcode.hbs | 82 -------------------- 6 files changed, 43 insertions(+), 99 deletions(-) create mode 100644 views/manager.hbs delete mode 100644 views/qrcode.hbs diff --git a/CHANGELOG.md b/CHANGELOG.md index 1dc24749..1a37833f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # 1.5.0 (homolog) +### Feature + +* New instance manager in /manager route + ### Fixed * Solved problem when disconnecting from the instance the instance was deleted diff --git a/src/whatsapp/controllers/views.controller.ts b/src/whatsapp/controllers/views.controller.ts index 5f4060ac..e775b960 100644 --- a/src/whatsapp/controllers/views.controller.ts +++ b/src/whatsapp/controllers/views.controller.ts @@ -1,24 +1,15 @@ import { Request, Response } from 'express'; -import { Auth, ConfigService } from '../../config/env.config'; -import { BadRequestException } from '../../exceptions'; -import { InstanceDto } from '../dto/instance.dto'; +import { ConfigService } from '../../config/env.config'; import { HttpStatus } from '../routers/index.router'; import { WAMonitoringService } from '../services/monitor.service'; export class ViewsController { constructor(private readonly waMonit: WAMonitoringService, private readonly configService: ConfigService) {} - public async qrcode(request: Request, response: Response) { + public async manager(request: Request, response: Response) { try { - const param = request.params as unknown as InstanceDto; - const instance = this.waMonit.waInstances[param.instanceName]; - if (instance.connectionStatus.state === 'open') { - throw new BadRequestException('The instance is already connected'); - } - const type = this.configService.get('AUTHENTICATION').TYPE; - - return response.status(HttpStatus.OK).render('qrcode', { type, ...param }); + return response.status(HttpStatus.OK).render('manager'); } catch (error) { console.log('ERROR: ', error); } diff --git a/src/whatsapp/routers/index.router.ts b/src/whatsapp/routers/index.router.ts index db082799..3de9b71d 100644 --- a/src/whatsapp/routers/index.router.ts +++ b/src/whatsapp/routers/index.router.ts @@ -37,7 +37,8 @@ router version: packageJson.version, }); }) - .use('/instance', new InstanceRouter(configService, ...guards).router, new ViewsRouter(instanceExistsGuard).router) + .use('/instance', new InstanceRouter(configService, ...guards).router) + .use('/manager', new ViewsRouter().router) .use('/message', new MessageRouter(...guards).router) .use('/chat', new ChatRouter(...guards).router) .use('/group', new GroupRouter(...guards).router) diff --git a/src/whatsapp/routers/view.router.ts b/src/whatsapp/routers/view.router.ts index c5e18129..11002777 100644 --- a/src/whatsapp/routers/view.router.ts +++ b/src/whatsapp/routers/view.router.ts @@ -1,14 +1,14 @@ -import { RequestHandler, Router } from 'express'; +import { Router } from 'express'; import { RouterBroker } from '../abstract/abstract.router'; import { viewsController } from '../whatsapp.module'; export class ViewsRouter extends RouterBroker { - constructor(...guards: RequestHandler[]) { + constructor() { super(); - this.router.get(this.routerPath('qrcode'), ...guards, (req, res) => { - return viewsController.qrcode(req, res); + this.router.get('/', (req, res) => { + return viewsController.manager(req, res); }); } diff --git a/views/manager.hbs b/views/manager.hbs new file mode 100644 index 00000000..0c81dcc8 --- /dev/null +++ b/views/manager.hbs @@ -0,0 +1,30 @@ + + + + + + + + + + + + Instance Manager + + + + + + + + + \ No newline at end of file diff --git a/views/qrcode.hbs b/views/qrcode.hbs deleted file mode 100644 index 54f39251..00000000 --- a/views/qrcode.hbs +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - Generate QRCode - - - - -
- -
-

Connect to whatsapp

-
- - - -
-
-
- -
- -
- - - - - - \ No newline at end of file