feat: transform template message

This commit is contained in:
tms-desarrollo 2025-05-22 15:29:47 -04:00
parent 427c994993
commit c08a9d2e6e

View File

@ -713,6 +713,20 @@ export class BusinessStartupService extends ChannelStartupService {
return message;
}
private getTemplateMessage(message: string, parameters: any[]) {
let transformedMessage = message;
for (const index in parameters) {
const parameter = parameters[index];
transformedMessage = transformedMessage.replace(`{{${index + 1}}}`, parameter.text);
}
return transformedMessage;
}
private getTemplateComponent(components: any[], name: string) {
const c = components.find((c) => c.type.toUpperCase() === name.toUpperCase());
return c ?? {};
}
protected async eventHandler(content: any) {
const database = this.configService.get<Database>('DATABASE');
const settings = await this.findSettings();
@ -903,7 +917,10 @@ export class BusinessStartupService extends ChannelStartupService {
},
};
quoted ? (content.context = { message_id: quoted.id }) : content;
message = { conversation: `▶️${message['template']['name']}◀️` };
const body = this.getTemplateComponent(message['template']['components'], 'body');
message = {
conversation: this.getTemplateMessage(message['template']['message'], body.parameters),
};
return await this.post(content, 'messages');
}
})();