diff --git a/src/api/gramjs/apiBuilders/messages.ts b/src/api/gramjs/apiBuilders/messages.ts index 43e79a516..4fbff39b1 100644 --- a/src/api/gramjs/apiBuilders/messages.ts +++ b/src/api/gramjs/apiBuilders/messages.ts @@ -141,7 +141,7 @@ export function buildApiMessageFromNotification( notification: GramJs.UpdateServiceNotification, currentDate: number, ): ApiMessage { - const localId = getNextLocalMessageId(); + const localId = getNextLocalMessageId(currentDate); const content = buildMessageContent(notification); return { @@ -1359,7 +1359,7 @@ export function buildLocalForwardedMessage({ noCaptions?: boolean; isCurrentUserPremium?: boolean; }): ApiMessage { - const localId = getNextLocalMessageId(); + const localId = getNextLocalMessageId(toChat?.lastMessage?.id); const { content, chatId: fromChatId, diff --git a/src/api/gramjs/methods/messages.ts b/src/api/gramjs/methods/messages.ts index e02027e36..9f263f918 100644 --- a/src/api/gramjs/methods/messages.ts +++ b/src/api/gramjs/methods/messages.ts @@ -215,6 +215,7 @@ export async function fetchMessage({ chat, messageId }: { chat: ApiChat; message } let mediaQueue = Promise.resolve(); +let lastSendMessagePromise = Promise.resolve(); export function sendMessage( { @@ -307,7 +308,7 @@ export function sendMessage( }, randomId, localMessage, onProgress); } - const sendPromise = (async () => { + lastSendMessagePromise = (async () => { let media: GramJs.TypeInputMedia | undefined; if (attachment) { try { @@ -367,7 +368,7 @@ export function sendMessage( } })(); - return sendPromise; + return lastSendMessagePromise; } const groupedUploads: Record