fix: leave support for url in attachment payload (case for external urls)

This commit is contained in:
Mohamed Marrouchi
2025-01-13 16:20:01 +01:00
parent d7cb39f9f4
commit f399416553
8 changed files with 83 additions and 37 deletions

View File

@@ -411,7 +411,7 @@ export class BlockService extends BaseService<Block, BlockPopulate, BlockFull> {
'url' in block.message.attachment.payload
) {
this.logger.error(
'Attachment Model : `url` payload has been deprecated in favor of `id`',
'Attachment Block : `url` payload has been deprecated in favor of `id`',
block.id,
block.message,
);
@@ -521,9 +521,11 @@ export class BlockService extends BaseService<Block, BlockPopulate, BlockFull> {
}
} else if (blockMessage && 'attachment' in blockMessage) {
const attachmentPayload = blockMessage.attachment.payload;
if (!attachmentPayload.id) {
if (!('id' in attachmentPayload)) {
this.checkDeprecatedAttachmentUrl(block);
throw new Error('Remote attachments are no longer supported!');
throw new Error(
'Remote attachments in blocks are no longer supported!',
);
}
const envelope: StdOutgoingEnvelope = {

View File

@@ -1,5 +1,5 @@
/*
* Copyright © 2024 Hexastack. All rights reserved.
* Copyright © 2025 Hexastack. All rights reserved.
*
* Licensed under the GNU Affero General Public License v3.0 (AGPLv3) with the following additional terms:
* 1. The name "Hexabot" is a trademark of Hexastack. You may not use this name in derivative works without express written permission.
@@ -256,6 +256,8 @@ export class ChatService {
event.setSender(subscriber);
await event.preprocess();
// Trigger message received event
this.eventEmitter.emit('hook:chatbot:received', event);