From 7fbb4ccc52057190efc8bd1238c4efef5f9a2e2c Mon Sep 17 00:00:00 2001 From: Rodrigo Rodriguez Date: Tue, 12 May 2020 19:41:51 -0300 Subject: [PATCH] fix(core.gbapp): Healthly status fixed for WhatsApp. --- packages/core.gbapp/services/GBMinService.ts | 8 +++++++- packages/whatsapp.gblib/services/WhatsappDirectLine.ts | 6 +++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/packages/core.gbapp/services/GBMinService.ts b/packages/core.gbapp/services/GBMinService.ts index 8fb1abaf..235f7cf6 100644 --- a/packages/core.gbapp/services/GBMinService.ts +++ b/packages/core.gbapp/services/GBMinService.ts @@ -249,7 +249,13 @@ export class GBMinService { server.get(`/${min.instance.botId}/check`, async (req, res) => { try { if (min.whatsAppDirectLine != undefined && instance.whatsappServiceKey !== null) { - min.whatsAppDirectLine.check(min); + if (!await min.whatsAppDirectLine.check(min)) { + const error = `WhatsApp API lost connection.`; + GBLog.error(error); + res.status(500).send(error); + + return; + } } res.status(200).send(`General Bot ${min.botId} is healthly.`); } catch (error) { diff --git a/packages/whatsapp.gblib/services/WhatsappDirectLine.ts b/packages/whatsapp.gblib/services/WhatsappDirectLine.ts index 9d5e4d39..c729507d 100644 --- a/packages/whatsapp.gblib/services/WhatsappDirectLine.ts +++ b/packages/whatsapp.gblib/services/WhatsappDirectLine.ts @@ -132,7 +132,7 @@ export class WhatsappDirectLine extends GBService { public async check() { - GBLog.info(`GBWhatsapp: Cheking server...`); + GBLog.info(`GBWhatsapp: Checking server...`); const options = { url: urlJoin(this.whatsappServiceUrl, 'status') + `?token=${this.min.instance.whatsappServiceKey}` , @@ -141,8 +141,8 @@ export class WhatsappDirectLine extends GBService { }; const res = await request(options); - - return res.body.accountStatus === "authenticated"; + const json = JSON.parse(res); + return json.accountStatus === "authenticated"; }