mirror of
https://github.com/EvolutionAPI/evolution-api.git
synced 2025-07-15 19:52:54 -06:00
Merge pull request #802 from judsonjuniorr/v2-webhook-fix
Fix webhook validation
This commit is contained in:
commit
9a09a6662a
@ -81,7 +81,11 @@ export class WebhookController extends EventController implements EventControlle
|
|||||||
local,
|
local,
|
||||||
}: EmitData): Promise<void> {
|
}: EmitData): Promise<void> {
|
||||||
const instanceWebhook = await this.get(instanceName);
|
const instanceWebhook = await this.get(instanceName);
|
||||||
const webhookGlobal = configService.get<Webhook>('WEBHOOK');
|
if (!instanceWebhook || !instanceWebhook.enabled) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const webhookConfig = configService.get<Webhook>('WEBHOOK');
|
||||||
const webhookLocal = instanceWebhook?.events;
|
const webhookLocal = instanceWebhook?.events;
|
||||||
const we = event.replace(/[.-]/gm, '_').toUpperCase();
|
const we = event.replace(/[.-]/gm, '_').toUpperCase();
|
||||||
const transformedWe = we.replace(/_/gm, '-').toLowerCase();
|
const transformedWe = we.replace(/_/gm, '-').toLowerCase();
|
||||||
@ -141,16 +145,12 @@ export class WebhookController extends EventController implements EventControlle
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (webhookGlobal.GLOBAL?.ENABLED) {
|
if (webhookConfig.GLOBAL?.ENABLED) {
|
||||||
if (webhookGlobal.EVENTS[we]) {
|
if (webhookConfig.EVENTS[we]) {
|
||||||
const globalWebhook = configService.get<Webhook>('WEBHOOK').GLOBAL;
|
let globalURL = webhookConfig.GLOBAL.URL;
|
||||||
|
|
||||||
let globalURL;
|
if (webhookConfig.GLOBAL.WEBHOOK_BY_EVENTS) {
|
||||||
|
globalURL = `${globalURL}/${transformedWe}`;
|
||||||
if (webhookGlobal.GLOBAL.WEBHOOK_BY_EVENTS) {
|
|
||||||
globalURL = `${globalWebhook.URL}/${transformedWe}`;
|
|
||||||
} else {
|
|
||||||
globalURL = globalWebhook.URL;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (enabledLog) {
|
if (enabledLog) {
|
||||||
@ -164,7 +164,7 @@ export class WebhookController extends EventController implements EventControlle
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
if (globalWebhook && globalWebhook?.ENABLED && isURL(globalURL)) {
|
if (isURL(globalURL)) {
|
||||||
const httpService = axios.create({ baseURL: globalURL });
|
const httpService = axios.create({ baseURL: globalURL });
|
||||||
|
|
||||||
await httpService.post('', webhookData);
|
await httpService.post('', webhookData);
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { RouterBroker } from '@api/abstract/abstract.router';
|
import { RouterBroker } from '@api/abstract/abstract.router';
|
||||||
import { InstanceDto } from '@api/dto/instance.dto';
|
import { InstanceDto } from '@api/dto/instance.dto';
|
||||||
import { webhookController } from '@api/server.module';
|
|
||||||
import { HttpStatus } from '@api/routes/index.router';
|
import { HttpStatus } from '@api/routes/index.router';
|
||||||
|
import { webhookController } from '@api/server.module';
|
||||||
import { ConfigService, WaBusiness } from '@config/env.config';
|
import { ConfigService, WaBusiness } from '@config/env.config';
|
||||||
import { instanceSchema, webhookSchema } from '@validate/validate.schema';
|
import { instanceSchema, webhookSchema } from '@validate/validate.schema';
|
||||||
import { RequestHandler, Router } from 'express';
|
import { RequestHandler, Router } from 'express';
|
||||||
|
Loading…
Reference in New Issue
Block a user