mirror of
https://github.com/EvolutionAPI/evolution-api.git
synced 2025-09-02 12:38:26 -06:00
feat: Added rabbitmq to send events
This commit is contained in:
parent
55f8e179af
commit
f1571b5f66
@ -29,7 +29,7 @@ export class InstanceController {
|
|||||||
private readonly chatwootService: ChatwootService,
|
private readonly chatwootService: ChatwootService,
|
||||||
private readonly settingsService: SettingsService,
|
private readonly settingsService: SettingsService,
|
||||||
private readonly websocketService: WebsocketService,
|
private readonly websocketService: WebsocketService,
|
||||||
private readonly rebbitmqService: RabbitmqService,
|
private readonly rabbitmqService: RabbitmqService,
|
||||||
private readonly cache: RedisCache,
|
private readonly cache: RedisCache,
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
@ -57,6 +57,8 @@ export class InstanceController {
|
|||||||
read_status,
|
read_status,
|
||||||
websocket_enabled,
|
websocket_enabled,
|
||||||
websocket_events,
|
websocket_events,
|
||||||
|
rabbitmq_enabled,
|
||||||
|
rabbitmq_events,
|
||||||
}: InstanceDto) {
|
}: InstanceDto) {
|
||||||
try {
|
try {
|
||||||
this.logger.verbose('requested createInstance from ' + instanceName + ' instance');
|
this.logger.verbose('requested createInstance from ' + instanceName + ' instance');
|
||||||
@ -177,6 +179,50 @@ export class InstanceController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let rabbitmqEvents: string[];
|
||||||
|
|
||||||
|
if (rabbitmq_enabled) {
|
||||||
|
this.logger.verbose('creating rabbitmq');
|
||||||
|
try {
|
||||||
|
let newEvents: string[] = [];
|
||||||
|
if (rabbitmq_events.length === 0) {
|
||||||
|
newEvents = [
|
||||||
|
'APPLICATION_STARTUP',
|
||||||
|
'QRCODE_UPDATED',
|
||||||
|
'MESSAGES_SET',
|
||||||
|
'MESSAGES_UPSERT',
|
||||||
|
'MESSAGES_UPDATE',
|
||||||
|
'MESSAGES_DELETE',
|
||||||
|
'SEND_MESSAGE',
|
||||||
|
'CONTACTS_SET',
|
||||||
|
'CONTACTS_UPSERT',
|
||||||
|
'CONTACTS_UPDATE',
|
||||||
|
'PRESENCE_UPDATE',
|
||||||
|
'CHATS_SET',
|
||||||
|
'CHATS_UPSERT',
|
||||||
|
'CHATS_UPDATE',
|
||||||
|
'CHATS_DELETE',
|
||||||
|
'GROUPS_UPSERT',
|
||||||
|
'GROUP_UPDATE',
|
||||||
|
'GROUP_PARTICIPANTS_UPDATE',
|
||||||
|
'CONNECTION_UPDATE',
|
||||||
|
'CALL',
|
||||||
|
'NEW_JWT_TOKEN',
|
||||||
|
];
|
||||||
|
} else {
|
||||||
|
newEvents = events;
|
||||||
|
}
|
||||||
|
this.rabbitmqService.create(instance, {
|
||||||
|
enabled: true,
|
||||||
|
events: newEvents,
|
||||||
|
});
|
||||||
|
|
||||||
|
rabbitmqEvents = (await this.rabbitmqService.find(instance)).events;
|
||||||
|
} catch (error) {
|
||||||
|
this.logger.log(error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
this.logger.verbose('creating settings');
|
this.logger.verbose('creating settings');
|
||||||
const settings: wa.LocalSettings = {
|
const settings: wa.LocalSettings = {
|
||||||
reject_call: reject_call || false,
|
reject_call: reject_call || false,
|
||||||
@ -216,6 +262,10 @@ export class InstanceController {
|
|||||||
enabled: websocket_enabled,
|
enabled: websocket_enabled,
|
||||||
events: websocketEvents,
|
events: websocketEvents,
|
||||||
},
|
},
|
||||||
|
rabbitmq: {
|
||||||
|
enabled: rabbitmq_enabled,
|
||||||
|
events: rabbitmqEvents,
|
||||||
|
},
|
||||||
settings,
|
settings,
|
||||||
qrcode: getQrcode,
|
qrcode: getQrcode,
|
||||||
};
|
};
|
||||||
@ -295,6 +345,10 @@ export class InstanceController {
|
|||||||
enabled: websocket_enabled,
|
enabled: websocket_enabled,
|
||||||
events: websocketEvents,
|
events: websocketEvents,
|
||||||
},
|
},
|
||||||
|
rabbitmq: {
|
||||||
|
enabled: rabbitmq_enabled,
|
||||||
|
events: rabbitmqEvents,
|
||||||
|
},
|
||||||
settings,
|
settings,
|
||||||
chatwoot: {
|
chatwoot: {
|
||||||
enabled: true,
|
enabled: true,
|
||||||
|
@ -20,4 +20,6 @@ export class InstanceDto {
|
|||||||
chatwoot_conversation_pending?: boolean;
|
chatwoot_conversation_pending?: boolean;
|
||||||
websocket_enabled?: boolean;
|
websocket_enabled?: boolean;
|
||||||
websocket_events?: string[];
|
websocket_events?: string[];
|
||||||
|
rabbitmq_enabled?: boolean;
|
||||||
|
rabbitmq_events?: string[];
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user