Add BOT_CONTACT env option to Chatwoot

This commit is contained in:
Stênio Aníbal 2024-08-21 14:56:41 -03:00
parent 912df56c55
commit 0aeecde847
3 changed files with 26 additions and 2 deletions

View File

@ -151,6 +151,8 @@ CHATWOOT_ENABLED=false
CHATWOOT_MESSAGE_READ=true
# If you leave this option as true, when sending a message in Chatwoot, the client's last message will be marked as read on WhatsApp.
CHATWOOT_MESSAGE_DELETE=true
# If you leave this option as true, a contact will be created on Chatwoot to provide the QR Code and update messages about the instance.
CHATWOOT_BOT_CONTACT=true
# This db connection is used to import messages from whatsapp to chatwoot database
CHATWOOT_IMPORT_DATABASE_CONNECTION_URI=postgresql://user:passwprd@host:5432/chatwoot?sslmode=disable
CHATWOOT_IMPORT_PLACEHOLDER_MEDIA_MESSAGE=true

View File

@ -215,7 +215,13 @@ export class ChatwootService {
inboxId = inbox.id;
}
this.logger.log(`Inox created - inboxId: ${inboxId}`);
this.logger.log(`Inbox created - inboxId: ${inboxId}`);
if (!this.configService.get<Chatwoot>('CHATWOOT').BOT_CONTACT) {
this.logger.log('Chatwoot bot contact is disabled');
return true;
}
this.logger.log('Creating chatwoot bot contact');
const contact =
@ -826,6 +832,12 @@ export class ChatwootService {
return null;
}
if (!this.configService.get<Chatwoot>('CHATWOOT').BOT_CONTACT) {
this.logger.log('Chatwoot bot contact is disabled');
return true;
}
const contact = await this.findContact(instance, '123456');
if (!contact) {
@ -940,6 +952,12 @@ export class ChatwootService {
return null;
}
if (!this.configService.get<Chatwoot>('CHATWOOT').BOT_CONTACT) {
this.logger.log('Chatwoot bot contact is disabled');
return true;
}
const contact = await this.findContact(instance, '123456');
if (!contact) {
@ -1159,7 +1177,9 @@ export class ChatwootService {
return { message: 'bot' };
}
if (chatId === '123456' && body.message_type === 'outgoing') {
const cwBotContact = this.configService.get<Chatwoot>('CHATWOOT').BOT_CONTACT;
if (cwBotContact && chatId === '123456' && body.message_type === 'outgoing') {
const command = messageReceived.replace('/', '');
if (command.includes('init') || command.includes('iniciar')) {

View File

@ -181,6 +181,7 @@ export type Chatwoot = {
ENABLED: boolean;
MESSAGE_DELETE: boolean;
MESSAGE_READ: boolean;
BOT_CONTACT: boolean;
IMPORT: {
DATABASE: {
CONNECTION: {
@ -426,6 +427,7 @@ export class ConfigService {
ENABLED: process.env?.CHATWOOT_ENABLED === 'true',
MESSAGE_DELETE: process.env.CHATWOOT_MESSAGE_DELETE === 'true',
MESSAGE_READ: process.env.CHATWOOT_MESSAGE_READ === 'true',
BOT_CONTACT: process.env.CHATWOOT_BOT_CONTACT === 'true',
IMPORT: {
DATABASE: {
CONNECTION: {