diff --git a/CHANGELOG.md b/CHANGELOG.md index c4263824..510abf7e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,7 @@ * Fixed Lid Messages * Fixed sending variables to typebot * Fixed sending variables from typebot +* Correction sending s3/minio media to chatwoot and typebot # 1.6.0 (2023-12-12 17:24) diff --git a/src/whatsapp/services/chatwoot.service.ts b/src/whatsapp/services/chatwoot.service.ts index a995f367..7aa62994 100644 --- a/src/whatsapp/services/chatwoot.service.ts +++ b/src/whatsapp/services/chatwoot.service.ts @@ -920,7 +920,11 @@ export class ChatwootService { const fileName = decodeURIComponent(parts[parts.length - 1]); this.logger.verbose('file name: ' + fileName); - const mimeType = mimeTypes.lookup(fileName).toString(); + const response = await axios.get(media, { + responseType: 'arraybuffer', + }); + + const mimeType = response.headers['content-type']; this.logger.verbose('mime type: ' + mimeType); let type = 'document'; diff --git a/src/whatsapp/services/whatsapp.service.ts b/src/whatsapp/services/whatsapp.service.ts index 705fa594..d94a44ec 100644 --- a/src/whatsapp/services/whatsapp.service.ts +++ b/src/whatsapp/services/whatsapp.service.ts @@ -2689,7 +2689,9 @@ export class WAStartupService { mimetype = mediaMessage.mimetype; } else { if (isURL(mediaMessage.media)) { - mimetype = getMIMEType(mediaMessage.media); + const response = await axios.get(mediaMessage.media, { responseType: 'arraybuffer' }); + + mimetype = response.headers['content-type']; } else { mimetype = getMIMEType(mediaMessage.fileName); }