Update typebot.service.ts

This commit is contained in:
Luis-Fernando 2024-03-28 23:51:37 -03:00 committed by GitHub
parent 0cad87718d
commit 23c57594ab
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -271,7 +271,6 @@ export class TypebotService {
private getTypeMessage(msg: any) { private getTypeMessage(msg: any) {
this.logger.verbose('get type message'); this.logger.verbose('get type message');
const types = { const types = {
messageType: 'UNKNOWN',
conversation: msg.conversation, conversation: msg.conversation,
extendedTextMessage: msg.extendedTextMessage?.text, extendedTextMessage: msg.extendedTextMessage?.text,
audioMessage: msg.audioMessage?.url, audioMessage: msg.audioMessage?.url,
@ -285,36 +284,10 @@ export class TypebotService {
responseRowId: msg.listResponseMessage?.singleSelectReply?.selectedRowId, responseRowId: msg.listResponseMessage?.singleSelectReply?.selectedRowId,
}; };
// linha 288 a 314 const messageType = Object.keys(types).find(key => types[key] !== undefined) || 'unknown';
types.messageType = Object.keys(types).find((key) => types[key] !== undefined) || 'UNKNOWN';
// Agora, adiciona a lógica de verificação detalhada para definir o tipo detalhado da mensagem
if (types.conversation !== undefined) {
types.detailedMessageType = 'Text Message';
} else if (types.extendedTextMessage !== undefined) {
types.detailedMessageType = 'Extended Text Message';
} else if (types.audioMessage !== undefined) {
types.detailedMessageType = 'Audio Message';
} else if (types.imageMessage !== undefined) {
types.detailedMessageType = 'Image Message';
} else if (types.videoMessage !== undefined) {
types.detailedMessageType = 'Video Message';
} else if (types.documentMessage !== undefined) {
types.detailedMessageType = 'Document Message';
} else if (types.contactMessage !== undefined) {
types.detailedMessageType = 'Contact Message';
} else if (types.locationMessage !== undefined) {
types.detailedMessageType = 'Location Message';
} else if (types.viewOnceMessageV2 !== undefined) {
types.detailedMessageType = 'View Once Message';
} else if (types.listResponseMessage !== undefined || types.responseRowId !== undefined) {
types.detailedMessageType = 'List Response Message';
} else {
types.detailedMessageType = 'Unknown Message Type';
}
this.logger.verbose('Type message: ' + JSON.stringify(types)); this.logger.verbose('Type message: ' + JSON.stringify(types));
return types; return { ...types, messageType };
} }
private getMessageContent(types: any) { private getMessageContent(types: any) {
@ -700,6 +673,7 @@ export class TypebotService {
const delay_message = findTypebot.delay_message; const delay_message = findTypebot.delay_message;
const unknown_message = findTypebot.unknown_message; const unknown_message = findTypebot.unknown_message;
const listening_from_me = findTypebot.listening_from_me; const listening_from_me = findTypebot.listening_from_me;
const messageType = this.getTypeMessage(msg.message).messageType; // variavel que extrai o tipo de mensagem.
const session = sessions.find((session) => session.remoteJid === remoteJid); const session = sessions.find((session) => session.remoteJid === remoteJid);
@ -822,6 +796,10 @@ export class TypebotService {
sessions: sessions, sessions: sessions,
remoteJid: remoteJid, remoteJid: remoteJid,
pushName: msg.pushName, pushName: msg.pushName,
//linha 800 a 802 add
prefilledVariables: {
messageType: messageType,
},
}); });
await this.sendWAMessage(instance, remoteJid, data.messages, data.input, data.clientSideActions); await this.sendWAMessage(instance, remoteJid, data.messages, data.input, data.clientSideActions);