fix: Ajusts in sticker message to chatwoot

This commit is contained in:
Davidson Gomes 2023-07-24 20:32:15 -03:00
parent b77f22790b
commit f475391ba6
4 changed files with 141 additions and 136 deletions

View File

@ -41,6 +41,7 @@ export class InstanceController {
chatwoot_url, chatwoot_url,
chatwoot_sign_msg, chatwoot_sign_msg,
}: InstanceDto) { }: InstanceDto) {
try {
this.logger.verbose('requested createInstance from ' + instanceName + ' instance'); this.logger.verbose('requested createInstance from ' + instanceName + ' instance');
if (instanceName !== instanceName.toLowerCase().replace(/[^a-z0-9]/g, '')) { if (instanceName !== instanceName.toLowerCase().replace(/[^a-z0-9]/g, '')) {
@ -189,6 +190,10 @@ export class InstanceController {
webhook_url: `${urlServer}/chatwoot/webhook/${instance.instanceName}`, webhook_url: `${urlServer}/chatwoot/webhook/${instance.instanceName}`,
}, },
}; };
} catch (error) {
console.log(error);
return { error: true, message: error.toString() };
}
} }
public async connectToWhatsapp({ instanceName, number = null }: InstanceDto) { public async connectToWhatsapp({ instanceName, number = null }: InstanceDto) {

View File

@ -102,7 +102,12 @@ export class RepositoryBroker {
this.logger.verbose('creating store path: ' + storePath); this.logger.verbose('creating store path: ' + storePath);
const tempDir = join(storePath, 'temp'); const tempDir = join(storePath, 'temp');
const chatwootDir = join(storePath, 'chatwoot');
if (!fs.existsSync(chatwootDir)) {
this.logger.verbose('creating chatwoot dir: ' + chatwootDir);
fs.mkdirSync(chatwootDir, { recursive: true });
}
if (!fs.existsSync(tempDir)) { if (!fs.existsSync(tempDir)) {
this.logger.verbose('creating temp dir: ' + tempDir); this.logger.verbose('creating temp dir: ' + tempDir);
fs.mkdirSync(tempDir, { recursive: true }); fs.mkdirSync(tempDir, { recursive: true });

View File

@ -1179,7 +1179,7 @@ export class ChatwootService {
videoMessage: msg.videoMessage?.caption, videoMessage: msg.videoMessage?.caption,
extendedTextMessage: msg.extendedTextMessage?.text, extendedTextMessage: msg.extendedTextMessage?.text,
messageContextInfo: msg.messageContextInfo?.stanzaId, messageContextInfo: msg.messageContextInfo?.stanzaId,
stickerMessage: msg.stickerMessage?.fileSha256.toString('base64'), stickerMessage: undefined,
documentMessage: msg.documentMessage?.caption, documentMessage: msg.documentMessage?.caption,
documentWithCaptionMessage: documentWithCaptionMessage:
msg.documentWithCaptionMessage?.message?.documentMessage?.caption, msg.documentWithCaptionMessage?.message?.documentMessage?.caption,
@ -1199,10 +1199,6 @@ export class ChatwootService {
const result = typeKey ? types[typeKey] : undefined; const result = typeKey ? types[typeKey] : undefined;
if (typeKey === 'stickerMessage') {
return null;
}
if (typeKey === 'contactMessage') { if (typeKey === 'contactMessage') {
const vCardData = result.split('\n'); const vCardData = result.split('\n');
const contactInfo = {}; const contactInfo = {};

View File

@ -116,16 +116,15 @@ import { useMultiFileAuthStateDb } from '../../utils/use-multi-file-auth-state-d
import Long from 'long'; import Long from 'long';
import { WebhookRaw } from '../models/webhook.model'; import { WebhookRaw } from '../models/webhook.model';
import { ChatwootRaw } from '../models/chatwoot.model'; import { ChatwootRaw } from '../models/chatwoot.model';
import { SettingsRaw } from '../models';
import { dbserver } from '../../db/db.connect'; import { dbserver } from '../../db/db.connect';
import NodeCache from 'node-cache'; import NodeCache from 'node-cache';
import { useMultiFileAuthStateRedisDb } from '../../utils/use-multi-file-auth-state-redis-db'; import { useMultiFileAuthStateRedisDb } from '../../utils/use-multi-file-auth-state-redis-db';
import sharp from 'sharp'; import sharp from 'sharp';
import { RedisCache } from '../../db/redis.client'; import { RedisCache } from '../../db/redis.client';
import { Log } from '../../config/env.config'; import { Log } from '../../config/env.config';
import ProxyAgent from 'proxy-agent';
import { ChatwootService } from './chatwoot.service'; import { ChatwootService } from './chatwoot.service';
import { waMonitor } from '../whatsapp.module'; import { waMonitor } from '../whatsapp.module';
import { SettingsRaw } from '../models';
export class WAStartupService { export class WAStartupService {
constructor( constructor(
@ -382,7 +381,7 @@ export class WAStartupService {
if (!data) { if (!data) {
this.logger.verbose('Settings not found'); this.logger.verbose('Settings not found');
throw new NotFoundException('Settings not found'); return null;
} }
this.logger.verbose(`Settings url: ${data.reject_call}`); this.logger.verbose(`Settings url: ${data.reject_call}`);
@ -1129,7 +1128,7 @@ export class WAStartupService {
received.messageTimestamp = received.messageTimestamp?.toNumber(); received.messageTimestamp = received.messageTimestamp?.toNumber();
} }
if (settings.groups_ignore && received.key.remoteJid.includes('@g.us')) { if (settings?.groups_ignore && received.key.remoteJid.includes('@g.us')) {
this.logger.verbose('group ignored'); this.logger.verbose('group ignored');
return; return;
} }