From 9b668619c5aa443602a4d63429b2a58f5a691ba5 Mon Sep 17 00:00:00 2001 From: neo773 <62795688+neo773@users.noreply.github.com> Date: Tue, 25 Nov 2025 22:35:32 +0530 Subject: [PATCH] Update channel sync service to immediately enqueue jobs (#16064) --- .../services/channel-sync.service.ts | 28 +++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/packages/twenty-server/src/modules/connected-account/channel-sync/services/channel-sync.service.ts b/packages/twenty-server/src/modules/connected-account/channel-sync/services/channel-sync.service.ts index a087b0ff64a..a2a837fc65d 100644 --- a/packages/twenty-server/src/modules/connected-account/channel-sync/services/channel-sync.service.ts +++ b/packages/twenty-server/src/modules/connected-account/channel-sync/services/channel-sync.service.ts @@ -4,6 +4,10 @@ import { InjectMessageQueue } from 'src/engine/core-modules/message-queue/decora import { MessageQueue } from 'src/engine/core-modules/message-queue/message-queue.constants'; import { MessageQueueService } from 'src/engine/core-modules/message-queue/services/message-queue.service'; import { TwentyORMGlobalManager } from 'src/engine/twenty-orm/twenty-orm-global.manager'; +import { + CalendarEventListFetchJob, + type CalendarEventListFetchJobData, +} from 'src/modules/calendar/calendar-event-import-manager/jobs/calendar-event-list-fetch.job'; import { CalendarChannelSyncStage, CalendarChannelSyncStatus, @@ -14,6 +18,10 @@ import { MessageChannelSyncStatus, type MessageChannelWorkspaceEntity, } from 'src/modules/messaging/common/standard-objects/message-channel.workspace-entity'; +import { + MessagingMessageListFetchJob, + type MessagingMessageListFetchJobData, +} from 'src/modules/messaging/message-import-manager/jobs/messaging-message-list-fetch.job'; export type StartChannelSyncInput = { connectedAccountId: string; @@ -56,9 +64,17 @@ export class ChannelSyncService { for (const messageChannel of messageChannels) { await messageChannelRepository.update(messageChannel.id, { - syncStage: MessageChannelSyncStage.MESSAGE_LIST_FETCH_PENDING, + syncStage: MessageChannelSyncStage.MESSAGE_LIST_FETCH_SCHEDULED, syncStatus: MessageChannelSyncStatus.ONGOING, }); + + await this.messageQueueService.add( + MessagingMessageListFetchJob.name, + { + workspaceId, + messageChannelId: messageChannel.id, + }, + ); } } @@ -81,9 +97,17 @@ export class ChannelSyncService { for (const calendarChannel of calendarChannels) { await calendarChannelRepository.update(calendarChannel.id, { - syncStage: CalendarChannelSyncStage.CALENDAR_EVENT_LIST_FETCH_PENDING, + syncStage: CalendarChannelSyncStage.CALENDAR_EVENT_LIST_FETCH_SCHEDULED, syncStatus: CalendarChannelSyncStatus.ONGOING, }); + + await this.calendarQueueService.add( + CalendarEventListFetchJob.name, + { + workspaceId, + calendarChannelId: calendarChannel.id, + }, + ); } } }