Skip to content

Commit 8aac740

Browse files
committed
fix(integrations): resolve typebot media regression and baileys link preview
- Fix linkPreview logic in Baileys to default to true - Add support for 'file' and 'embed' types in Typebot integration - Ensure correct media type detection for PDFs and docs
1 parent 6efa879 commit 8aac740

File tree

2 files changed

+41
-11
lines changed

2 files changed

+41
-11
lines changed

src/api/integrations/channel/whatsapp/whatsapp.baileys.service.ts

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -436,7 +436,7 @@ export class BaileysStartupService extends ChannelStartupService {
436436
qrcodeTerminal.generate(qr, { small: true }, (qrcode) =>
437437
this.logger.log(
438438
`\n{ instance: ${this.instance.name} pairingCode: ${this.instance.qrcode.pairingCode}, qrcodeCount: ${this.instance.qrcode.count} }\n` +
439-
qrcode,
439+
qrcode,
440440
),
441441
);
442442

@@ -1049,16 +1049,16 @@ export class BaileysStartupService extends ChannelStartupService {
10491049

10501050
const messagesRepository: Set<string> = new Set(
10511051
chatwootImport.getRepositoryMessagesCache(instance) ??
1052-
(
1053-
await this.prismaRepository.message.findMany({
1054-
select: { key: true },
1055-
where: { instanceId: this.instanceId },
1056-
})
1057-
).map((message) => {
1058-
const key = message.key as { id: string };
1052+
(
1053+
await this.prismaRepository.message.findMany({
1054+
select: { key: true },
1055+
where: { instanceId: this.instanceId },
1056+
})
1057+
).map((message) => {
1058+
const key = message.key as { id: string };
10591059

1060-
return key.id;
1061-
}),
1060+
return key.id;
1061+
}),
10621062
);
10631063

10641064
if (chatwootImport.getRepositoryMessagesCache(instance) === null) {
@@ -2432,7 +2432,7 @@ export class BaileysStartupService extends ChannelStartupService {
24322432
}
24332433
}
24342434

2435-
const linkPreview = options?.linkPreview != false ? undefined : false;
2435+
const linkPreview = options?.linkPreview !== false;
24362436

24372437
let quoted: WAMessage;
24382438

src/api/integrations/chatbot/typebot/services/typebot.service.ts

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -368,6 +368,36 @@ export class TypebotService extends BaseChatbotService<TypebotModel, any> {
368368
sendTelemetry('/message/sendWhatsAppAudio');
369369
}
370370

371+
if (message.type === 'file' || message.type === 'embed') {
372+
const mediaUrl = message.content.url;
373+
const mediaType = this.getMediaType(mediaUrl);
374+
375+
if (mediaType === 'audio') {
376+
await instance.audioWhatsapp(
377+
{
378+
number: session.remoteJid,
379+
delay: settings?.delayMessage || 1000,
380+
encoding: true,
381+
audio: mediaUrl,
382+
},
383+
false,
384+
);
385+
} else {
386+
await instance.mediaMessage(
387+
{
388+
number: session.remoteJid,
389+
delay: settings?.delayMessage || 1000,
390+
mediatype: mediaType || 'document',
391+
media: mediaUrl,
392+
fileName: message.content.name || 'document.pdf',
393+
},
394+
null,
395+
false,
396+
);
397+
}
398+
sendTelemetry('/message/sendMedia');
399+
}
400+
371401
const wait = findItemAndGetSecondsToWait(clientSideActions, message.id);
372402

373403
if (wait) {

0 commit comments

Comments
 (0)