fix: Adjusted set in webhook to go empty when enabled false

This commit is contained in:
Davidson Gomes 2023-07-07 13:12:51 -03:00
parent 24712c4c2d
commit 27aa0add4e
6 changed files with 20 additions and 15 deletions

View File

@ -2,7 +2,11 @@
### Features
* Route to send status broadcast
* Route to send status broadcast¼
### Fixed
* Adjusted set in webhook to go empty when enabled false
# 1.1.3 (2023-07-06 11:43)

View File

@ -7,16 +7,6 @@ networks:
services:
redis:
image: redis:latest
command: >
redis-server
--port 6379
--appendonly yes
--save 900 1
--save 300 10
--save 60 10000
--appendfsync everysec
volumes:
- evolution_redis:/data
container_name: redis
ports:
- 6379:6379

View File

@ -104,9 +104,11 @@ export class RedisCache {
public async delAll(hash?: string) {
try {
this.logger.verbose('instance delAll: ' + hash);
return await this.client.del(
const result = await this.client.del(
hash || this.redisEnv.PREFIX_KEY + ':' + this.instanceName,
);
return result;
} catch (error) {
this.logger.error(error);
}

View File

@ -30,7 +30,7 @@ export const instanceNameSchema: JSONSchema7 = {
webhook_by_events: { type: 'boolean' },
events: {
type: 'array',
minItems: 1,
minItems: 0,
items: {
type: 'string',
enum: [
@ -825,7 +825,7 @@ export const webhookSchema: JSONSchema7 = {
enabled: { type: 'boolean', enum: [true, false] },
events: {
type: 'array',
minItems: 1,
minItems: 0,
items: {
type: 'string',
enum: [

View File

@ -8,9 +8,15 @@ export class WebhookController {
constructor(private readonly webhookService: WebhookService) {}
public async createWebhook(instance: InstanceDto, data: WebhookDto) {
if (!isURL(data.url, { require_tld: false })) {
if (data.enabled && !isURL(data.url, { require_tld: false })) {
throw new BadRequestException('Invalid "url" property');
}
if (!data.enabled) {
data.url = '';
data.events = [];
}
return this.webhookService.create(instance, data);
}

View File

@ -216,6 +216,8 @@ export class WAMonitoringService {
rmSync(join(INSTANCE_DIR, instanceName), { recursive: true, force: true });
}
public async clearStoreFiles(instanceName: string) {}
public async loadInstance() {
this.logger.verbose('load instances');
const set = async (name: string) => {
@ -300,6 +302,7 @@ export class WAMonitoringService {
try {
this.logger.verbose('request cleaning up instance: ' + instanceName);
this.cleaningUp(instanceName);
this.clearStoreFiles(instanceName);
} finally {
this.logger.warn(`Instance "${instanceName}" - REMOVED`);
}