@@ -506,7 +506,9 @@ export class BusinessStartupService extends ChannelStartupService {
506506 const mediaUrl = await s3Service . getObjectUrl ( fullName ) ;
507507
508508 messageRaw . message . mediaUrl = mediaUrl ;
509- messageRaw . message . base64 = buffer . data . toString ( 'base64' ) ;
509+ if ( this . localWebhook . enabled && this . localWebhook . webhookBase64 ) {
510+ messageRaw . message . base64 = buffer . data . toString ( 'base64' ) ;
511+ }
510512
511513 // Processar OpenAI speech-to-text para áudio após o mediaUrl estar disponível
512514 if ( this . configService . get < Openai > ( 'OPENAI' ) . ENABLED && mediaType === 'audio' ) {
@@ -544,11 +546,19 @@ export class BusinessStartupService extends ChannelStartupService {
544546 this . logger . error ( [ 'Error on upload file to minio' , error ?. message , error ?. stack ] ) ;
545547 }
546548 } else {
547- const buffer = await this . downloadMediaMessage ( received ?. messages [ 0 ] ) ;
548- messageRaw . message . base64 = buffer . toString ( 'base64' ) ;
549+ if ( this . localWebhook . enabled && this . localWebhook . webhookBase64 ) {
550+ const buffer = await this . downloadMediaMessage ( received ?. messages [ 0 ] ) ;
551+ messageRaw . message . base64 = buffer . toString ( 'base64' ) ;
552+ }
549553
550554 // Processar OpenAI speech-to-text para áudio mesmo sem S3
551555 if ( this . configService . get < Openai > ( 'OPENAI' ) . ENABLED && message . type === 'audio' ) {
556+ let openAiBase64 = messageRaw . message . base64 ;
557+ if ( ! openAiBase64 ) {
558+ const buffer = await this . downloadMediaMessage ( received ?. messages [ 0 ] ) ;
559+ openAiBase64 = buffer . toString ( 'base64' ) ;
560+ }
561+
552562 const openAiDefaultSettings = await this . prismaRepository . openaiSetting . findFirst ( {
553563 where : {
554564 instanceId : this . instanceId ,
@@ -564,7 +574,7 @@ export class BusinessStartupService extends ChannelStartupService {
564574 openAiDefaultSettings . OpenaiCreds ,
565575 {
566576 message : {
567- base64 : messageRaw . message . base64 ,
577+ base64 : openAiBase64 ,
568578 ...messageRaw ,
569579 } ,
570580 } ,
@@ -1593,9 +1603,14 @@ export class BusinessStartupService extends ChannelStartupService {
15931603 const messageType = msg . messageType . includes ( 'Message' ) ? msg . messageType : msg . messageType + 'Message' ;
15941604 const mediaMessage = msg . message [ messageType ] ;
15951605
1606+ if ( ! msg . message ?. base64 ) {
1607+ const buffer = await this . downloadMediaMessage ( { type : messageType , ...msg . message } ) ;
1608+ msg . message . base64 = buffer . toString ( 'base64' ) ;
1609+ }
1610+
15961611 return {
15971612 mediaType : msg . messageType ,
1598- fileName : mediaMessage ?. fileName ,
1613+ fileName : mediaMessage ?. fileName || mediaMessage ?. filename ,
15991614 caption : mediaMessage ?. caption ,
16001615 size : {
16011616 fileLength : mediaMessage ?. fileLength ,
0 commit comments