diff --git a/api/src/chat/services/chat.service.ts b/api/src/chat/services/chat.service.ts index ec7b69e6..6a28b315 100644 --- a/api/src/chat/services/chat.service.ts +++ b/api/src/chat/services/chat.service.ts @@ -47,6 +47,19 @@ export class ChatService { private readonly attachmentService: AttachmentService, ) {} + /** + * Synchronize sent messages cross opened websocket connections of the same account + * + * @param event - The received event + */ + private broadcastSentMessages(event: EventWrapper) { + this.websocketGateway.broadcast( + event.getSender(), + event.getEventType(), + event._adapter.raw, + ); + } + /** * Ends a given conversation (sets active to false) * @@ -268,6 +281,7 @@ export class ChatService { // Already existing user profile // Exec lastvisit hook this.eventEmitter.emit('hook:user:lastvisit', subscriber); + this.broadcastSentMessages(event); } this.websocketGateway.broadcastSubscriberUpdate(subscriber);