From 1d8b4255a635f5942ec51a1c4017666618a8e553 Mon Sep 17 00:00:00 2001 From: InsanusMokrassar Date: Tue, 8 Sep 2026 18:04:06 +0600 Subject: [PATCH] fixes --- CHANGELOG.md | 9 +- tgbotapi.api/api/tgbotapi.api.api | 84 +++++++++---------- .../extensions/api/send/SendMessageDraft.kt | 66 +++++++-------- .../api/send/SendRichMessageDraft.kt | 9 +- .../tgbotapi/extensions/api/send/Sends.kt | 54 ++++++------ .../api/send/polls/SendRegularPoll.kt | 4 +- .../api/send/SendMessageDraftTest.kt | 11 +-- .../api/send/SendRichMessageDraftTest.kt | 7 +- tgbotapi.core/api/tgbotapi.core.api | 41 +++++---- .../requests/send/SendMessageDraft.kt | 26 +++--- .../requests/send/SendRichMessageDraft.kt | 14 ++-- .../dev/inmo/tgbotapi/types/ChatIdentifier.kt | 8 ++ .../dev/inmo/tgbotapi/utils/ThreadIds.kt | 57 +++++++++++++ .../tgbotapi/types/GeneralBotApi103Test.kt | 12 +-- 14 files changed, 241 insertions(+), 161 deletions(-) create mode 100644 tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/utils/ThreadIds.kt diff --git a/CHANGELOG.md b/CHANGELOG.md index 9bf0cef714..43be182694 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,16 +11,15 @@ * `FlowsUpdatesFilter` gained the abstract `messageGenerationStoppedUpdatesFlow` property; direct implementations must supply the flow, while subclasses of `AbstractFlowsUpdatesFilter` inherit the filtered implementation * `RichText` gained the public `isValidRichMessageButtonText` contract and the `RichText`/`RichBlock`/`InputRichBlock` sealed hierarchies gained Bot API 10.3 variants; permitted same-module implementations and exhaustive `when` expressions must cover the new contracts and variants * `SendRichMessageDraft`, `sendRichMessageDraft`, and the corresponding generic `send` overload widened `chatId` from `ChatId` to `IdChatIdentifier`; source calls passing `ChatId` remain valid, while the JVM signatures changed -* `SendMessageDraft` and `SendRichMessageDraft` request/API surfaces replaced `threadId: MessageThreadId?` with `directMessageThreadId: DirectMessageThreadId?`; serialized requests now use `direct_messages_topic_id` instead of `message_thread_id`, and JVM signatures changed -**Migration advice**: Direct and generic `send` extensions accept either `receiverUserId = userId, callbackQueryId = callbackId, replaceCallbackQueryMessage = ...` or `ephemeralMessageParameters = EphemeralMessageParameters(receiverUserId = userId, callbackQueryId = callbackId, replaceCallbackQueryMessage = ...)`; send-request constructors and `reply` API overloads require the parameter-object form; replace draft `threadId = MessageThreadId(...)` arguments with `directMessageThreadId = DirectMessageThreadId(...)`; add `canSendWelcomeMessages` and `messageGenerationStoppedUpdatesFlow` to direct interface implementations; add Bot API 10.3 branches to exhaustive rich-type `when` expressions +**Migration advice**: Direct and generic `send` extensions accept either `receiverUserId = userId, callbackQueryId = callbackId, replaceCallbackQueryMessage = ...` or `ephemeralMessageParameters = EphemeralMessageParameters(receiverUserId = userId, callbackQueryId = callbackId, replaceCallbackQueryMessage = ...)`; send-request constructors and `reply` API overloads require the parameter-object form; add `canSendWelcomeMessages` and `messageGenerationStoppedUpdatesFlow` to direct interface implementations; add Bot API 10.3 branches to exhaustive rich-type `when` expressions **Compatibility note**: The new `text`/`entities`/`isPrivate` fields of `GiftSentOrReceivedEvent.UniqueGift.Common` and `GiftSentOrReceivedEvent.UniqueGift.ReceivedInBusinessAccount` are trailing constructor parameters; existing positional argument and `componentN` order is preserved * `Core`: * (`Ephemeral messages`) Added `EphemeralMessageParameters`; replaced the flat send-request recipient/callback parameters with `ephemeralMessageParameters`, including callback-message replacement support - * (`Rich Messages`) Widened `SendRichMessageDraft.chatId` from `ChatId` to `IdChatIdentifier`, allowing contextual numeric identifiers to supply the default direct messages topic - * (`General`) Migrated `SendMessageDraft` and `SendRichMessageDraft` from `message_thread_id`/`MessageThreadId` to `direct_messages_topic_id`/`DirectMessageThreadId` + * (`Rich Messages`) Widened `SendRichMessageDraft.chatId` from `ChatId` to `IdChatIdentifier`, allowing contextual numeric identifiers to supply the default message thread + * (`General`) Added message-thread defaults for `SendMessageDraft` and `SendRichMessageDraft`, including conversion from direct-message-thread chat identifiers * (`Ephemeral messages`) Added new-file uploads for `editEphemeralMessageMedia`; collected secondary live-photo `photo` attachments for ephemeral and regular media edits, media groups, and paid media; added `showCaptionAboveMedia` for caption edits and rich-message text edits * (`Ephemeral messages`) Added `canSendWelcomeMessages` administrator right and `promoteChatMember` parameter * (`Rich Messages`) Added rich-message button actions, rich-text/button-row entities, typed button styles/alignment, expandable block quotations, compact tables, document blocks, document media links and direct document uploads @@ -35,7 +34,7 @@ * `API`: * (`Ephemeral messages`) Migrated send/reply extension surfaces to `ephemeralMessageParameters`; added rich ephemeral text editing and caption-above-media support * (`Rich Messages`) Widened `sendRichMessageDraft` and the corresponding generic `send` overload from `ChatId` to `IdChatIdentifier` - * (`General`) Migrated direct, streaming-flow, `Chat`, builder, and generic draft-send extensions from `threadId`/`MessageThreadId` to `directMessageThreadId`/`DirectMessageThreadId` + * (`General`) Kept `threadId`/`MessageThreadId` across direct, streaming-flow, `Chat`, builder, and generic draft-send extensions; direct-message-thread chat identifiers supply converted defaults * (`Ephemeral messages`) Retained 172 non-deprecated direct and generic `send` overloads accepting `receiverUserId`/`callbackQueryId`/`replaceCallbackQueryMessage` as an alternative API form; every overload delegates to the corresponding `ephemeralMessageParameters` overload * (`Ephemeral messages`) Added named rich-message overloads and generic `InputRichMessage`/`RichMessageContent` aliases across both ephemeral reply families * (`General`) Added `canStop`/`keepOnStop` to `sendMessageDraft`/`sendRichMessageDraft` extension surfaces, including streaming draft flows and `send` overloads diff --git a/tgbotapi.api/api/tgbotapi.api.api b/tgbotapi.api/api/tgbotapi.api.api index dc484b6734..da157d2055 100644 --- a/tgbotapi.api/api/tgbotapi.api.api +++ b/tgbotapi.api/api/tgbotapi.api.api @@ -2171,28 +2171,28 @@ public final class dev/inmo/tgbotapi/extensions/api/send/SendLiveLocationKt { public final class dev/inmo/tgbotapi/extensions/api/send/SendMessageDraftKt { public static final fun getGlobalDraftIdAllocator ()Ldev/inmo/tgbotapi/utils/DraftIdAllocator; - public static final fun sendMessageDraft-YbdynyA (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/util/List;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static final fun sendMessageDraft-YbdynyA (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/util/List;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static synthetic fun sendMessageDraft-YbdynyA$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/util/List;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static synthetic fun sendMessageDraft-YbdynyA$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/util/List;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static final fun sendMessageDraft-kmLdejg (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static final fun sendMessageDraft-kmLdejg (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static synthetic fun sendMessageDraft-kmLdejg$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static synthetic fun sendMessageDraft-kmLdejg$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static final fun sendMessageDraft-u66x3No (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static final fun sendMessageDraft-u66x3No (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static final fun sendMessageDraft-u66x3No (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static final fun sendMessageDraft-u66x3No (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static synthetic fun sendMessageDraft-u66x3No$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static synthetic fun sendMessageDraft-u66x3No$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static synthetic fun sendMessageDraft-u66x3No$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static synthetic fun sendMessageDraft-u66x3No$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static final fun sendMessageDraftFlow-I4TxxCg (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Lkotlinx/coroutines/flow/Flow;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ldev/inmo/tgbotapi/types/DraftId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static synthetic fun sendMessageDraftFlow-I4TxxCg$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Lkotlinx/coroutines/flow/Flow;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ldev/inmo/tgbotapi/types/DraftId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static final fun sendMessageDraftFlowWithTexts-I4TxxCg (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Lkotlinx/coroutines/flow/Flow;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ldev/inmo/tgbotapi/types/DraftId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static synthetic fun sendMessageDraftFlowWithTexts-I4TxxCg$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Lkotlinx/coroutines/flow/Flow;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ldev/inmo/tgbotapi/types/DraftId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static final fun sendMessageDraftFlowWithTextsAndParseMode-I4TxxCg (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Lkotlinx/coroutines/flow/Flow;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ldev/inmo/tgbotapi/types/DraftId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static synthetic fun sendMessageDraftFlowWithTextsAndParseMode-I4TxxCg$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Lkotlinx/coroutines/flow/Flow;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ldev/inmo/tgbotapi/types/DraftId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static final fun sendMessageDraft-43MdJKs (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static final fun sendMessageDraft-43MdJKs (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static synthetic fun sendMessageDraft-43MdJKs$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static synthetic fun sendMessageDraft-43MdJKs$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static final fun sendMessageDraft-ZrJ4e30 (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/util/List;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static final fun sendMessageDraft-ZrJ4e30 (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/util/List;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static synthetic fun sendMessageDraft-ZrJ4e30$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/util/List;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static synthetic fun sendMessageDraft-ZrJ4e30$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/util/List;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static final fun sendMessageDraft-bSf9ep8 (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static final fun sendMessageDraft-bSf9ep8 (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static final fun sendMessageDraft-bSf9ep8 (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static final fun sendMessageDraft-bSf9ep8 (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static synthetic fun sendMessageDraft-bSf9ep8$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static synthetic fun sendMessageDraft-bSf9ep8$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static synthetic fun sendMessageDraft-bSf9ep8$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static synthetic fun sendMessageDraft-bSf9ep8$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static final fun sendMessageDraftFlow-aLPLotU (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Lkotlinx/coroutines/flow/Flow;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DraftId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static synthetic fun sendMessageDraftFlow-aLPLotU$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Lkotlinx/coroutines/flow/Flow;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DraftId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static final fun sendMessageDraftFlowWithTexts-aLPLotU (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Lkotlinx/coroutines/flow/Flow;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DraftId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static synthetic fun sendMessageDraftFlowWithTexts-aLPLotU$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Lkotlinx/coroutines/flow/Flow;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DraftId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static final fun sendMessageDraftFlowWithTextsAndParseMode-aLPLotU (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Lkotlinx/coroutines/flow/Flow;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DraftId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static synthetic fun sendMessageDraftFlowWithTextsAndParseMode-aLPLotU$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Lkotlinx/coroutines/flow/Flow;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DraftId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; } public final class dev/inmo/tgbotapi/extensions/api/send/SendMessageKt { @@ -2263,8 +2263,8 @@ public final class dev/inmo/tgbotapi/extensions/api/send/SendMessageKt { } public final class dev/inmo/tgbotapi/extensions/api/send/SendRichMessageDraftKt { - public static final fun sendRichMessageDraft-rV6_g2g (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static synthetic fun sendRichMessageDraft-rV6_g2g$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static final fun sendRichMessageDraft-ISPvrcY (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static synthetic fun sendRichMessageDraft-ISPvrcY$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; } public final class dev/inmo/tgbotapi/extensions/api/send/SendRichMessageKt { @@ -2343,6 +2343,10 @@ public final class dev/inmo/tgbotapi/extensions/api/send/SendsKt { public static final fun send-2IwcvHg (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ljava/util/List;Ljava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;ZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/EphemeralMessageParameters;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static synthetic fun send-2IwcvHg$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ljava/util/List;Ljava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;ZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/EphemeralMessageParameters;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static synthetic fun send-2IwcvHg$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ljava/util/List;Ljava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;ZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/EphemeralMessageParameters;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static final fun send-43MdJKs (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static final fun send-43MdJKs (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static synthetic fun send-43MdJKs$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static synthetic fun send-43MdJKs$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static final fun send-59dkE5s (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;DDLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/EphemeralMessageParameters;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static final fun send-59dkE5s (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ldev/inmo/tgbotapi/types/files/AnimationFile;Ljava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;ZZLjava/lang/Long;Ljava/lang/Integer;Ljava/lang/Integer;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/EphemeralMessageParameters;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static final fun send-59dkE5s (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;DDLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/EphemeralMessageParameters;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; @@ -2375,6 +2379,8 @@ public final class dev/inmo/tgbotapi/extensions/api/send/SendsKt { public static synthetic fun send-BKdLCOc$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;ZZZZLdev/inmo/tgbotapi/types/polls/ScheduledCloseInfo;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static final fun send-I3_Lavo (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/lang/Integer;Ljava/util/List;Ljava/lang/String;Ljava/lang/String;ZZZZZZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/InlineKeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static synthetic fun send-I3_Lavo$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/lang/Integer;Ljava/util/List;Ljava/lang/String;Ljava/lang/String;ZZZZZZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/InlineKeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static final fun send-ISPvrcY (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static synthetic fun send-ISPvrcY$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static final fun send-JGcy_pA (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ldev/inmo/tgbotapi/types/polls/RegularPoll;Ljava/util/List;ZLjava/util/List;ZZLdev/inmo/tgbotapi/types/polls/ScheduledCloseInfo;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static final fun send-JGcy_pA (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ljava/lang/String;Ljava/util/List;Ldev/inmo/tgbotapi/types/message/ParseMode;ZZZLdev/inmo/tgbotapi/types/polls/ScheduledCloseInfo;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static final fun send-JGcy_pA (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ldev/inmo/tgbotapi/types/polls/RegularPoll;Ljava/util/List;ZLjava/util/List;ZZLdev/inmo/tgbotapi/types/polls/ScheduledCloseInfo;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; @@ -2533,10 +2539,10 @@ public final class dev/inmo/tgbotapi/extensions/api/send/SendsKt { public static synthetic fun send-Y9bTzIg$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ldev/inmo/tgbotapi/types/location/StaticLocation;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/EphemeralMessageParameters;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static synthetic fun send-Y9bTzIg$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ldev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/EphemeralMessageParameters;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static synthetic fun send-Y9bTzIg$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ldev/inmo/tgbotapi/types/venue/Venue;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/EphemeralMessageParameters;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static final fun send-YbdynyA (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/util/List;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static final fun send-YbdynyA (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/util/List;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static synthetic fun send-YbdynyA$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/util/List;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static synthetic fun send-YbdynyA$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/util/List;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static final fun send-ZrJ4e30 (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/util/List;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static final fun send-ZrJ4e30 (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/util/List;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static synthetic fun send-ZrJ4e30$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/util/List;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static synthetic fun send-ZrJ4e30$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/util/List;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static final fun send-Zzzb9Qk (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ldev/inmo/tgbotapi/types/files/LivePhotoFile;Ljava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;ZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static final fun send-Zzzb9Qk (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ldev/inmo/tgbotapi/types/files/PhotoSize;Ljava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;ZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static final fun send-Zzzb9Qk (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ldev/inmo/tgbotapi/types/files/VideoFile;Ljava/util/List;ZZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; @@ -2569,6 +2575,14 @@ public final class dev/inmo/tgbotapi/extensions/api/send/SendsKt { public static synthetic fun send-b7ftvUk$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ldev/inmo/tgbotapi/types/files/VideoNoteFile;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static synthetic fun send-b7ftvUk$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ldev/inmo/tgbotapi/types/location/StaticLocation;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static synthetic fun send-b7ftvUk$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ldev/inmo/tgbotapi/types/venue/Venue;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static final fun send-bSf9ep8 (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static final fun send-bSf9ep8 (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static final fun send-bSf9ep8 (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static final fun send-bSf9ep8 (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; + public static synthetic fun send-bSf9ep8$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static synthetic fun send-bSf9ep8$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static synthetic fun send-bSf9ep8$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; + public static synthetic fun send-bSf9ep8$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static final fun send-coHvRTg (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ljava/util/List;Ljava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;ZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static final fun send-coHvRTg (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ljava/util/List;Ljava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;ZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static synthetic fun send-coHvRTg$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ljava/util/List;Ljava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;ZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; @@ -2605,10 +2619,6 @@ public final class dev/inmo/tgbotapi/extensions/api/send/SendsKt { public static synthetic fun send-kO8K6IE$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ldev/inmo/tgbotapi/types/files/VoiceFile;Ljava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static synthetic fun send-kO8K6IE$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ljava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/LinkPreviewOptions;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static synthetic fun send-kO8K6IE$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static final fun send-kmLdejg (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static final fun send-kmLdejg (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static synthetic fun send-kmLdejg$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static synthetic fun send-kmLdejg$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static final fun send-lCY-GWg (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ldev/inmo/tgbotapi/types/files/LivePhotoFile;Ljava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;ZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/EphemeralMessageParameters;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static final fun send-lCY-GWg (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ldev/inmo/tgbotapi/types/files/PhotoSize;Ljava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;ZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/EphemeralMessageParameters;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static final fun send-lCY-GWg (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ldev/inmo/tgbotapi/types/files/VideoFile;Ljava/util/List;ZZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/EphemeralMessageParameters;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; @@ -2645,16 +2655,6 @@ public final class dev/inmo/tgbotapi/extensions/api/send/SendsKt { public static final fun send-qli2uN8 (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ljava/util/List;Ljava/util/List;ZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static synthetic fun send-qli2uN8$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ljava/util/List;Ljava/util/List;ZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static synthetic fun send-qli2uN8$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;Ljava/util/List;Ljava/util/List;ZZLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static final fun send-rV6_g2g (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static synthetic fun send-rV6_g2g$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static final fun send-u66x3No (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static final fun send-u66x3No (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static final fun send-u66x3No (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static final fun send-u66x3No (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; - public static synthetic fun send-u66x3No$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static synthetic fun send-u66x3No$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static synthetic fun send-u66x3No$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLdev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; - public static synthetic fun send-u66x3No$default (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/chat/Chat;JLjava/lang/String;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object; public static final fun send-usfYKJQ (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ldev/inmo/tgbotapi/types/files/DocumentFile;Ljava/util/List;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Ljava/lang/Boolean;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static final fun send-usfYKJQ (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ldev/inmo/tgbotapi/types/message/textsources/TextSource;Ldev/inmo/tgbotapi/types/LinkPreviewOptions;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; public static final fun send-usfYKJQ (Ldev/inmo/tgbotapi/bot/RequestsExecutor;Ldev/inmo/tgbotapi/types/ChatIdentifier;Ljava/lang/String;Ldev/inmo/tgbotapi/types/LinkPreviewOptions;Ldev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/IdChatIdentifier;Ljava/lang/String;Ljava/lang/Boolean;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;Lkotlin/jvm/functions/Function1;Lkotlin/coroutines/Continuation;)Ljava/lang/Object; diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendMessageDraft.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendMessageDraft.kt index 874308bd8a..d9edbffcf2 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendMessageDraft.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendMessageDraft.kt @@ -20,14 +20,14 @@ import kotlinx.coroutines.flow.firstOrNull import kotlinx.coroutines.flow.map /** - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ public suspend fun TelegramBot.sendMessageDraft( chatId: IdChatIdentifier, draftId: DraftId, text: String, parseMode: ParseMode? = null, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null ): Unit = execute( @@ -36,7 +36,7 @@ public suspend fun TelegramBot.sendMessageDraft( draftId = draftId, text = text, parseMode = parseMode, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) @@ -63,12 +63,12 @@ private suspend fun TelegramBot.sendMessageDraftFlow( public val GlobalDraftIdAllocator: DraftIdAllocator by lazy { DraftIdAllocator() } /** - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ public suspend fun TelegramBot.sendMessageDraftFlow( chatId: IdChatIdentifier, messagesFlow: Flow, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, draftId: DraftId? = null, canStop: Boolean? = null, keepOnStop: Boolean? = null @@ -76,18 +76,18 @@ public suspend fun TelegramBot.sendMessageDraftFlow( val draftId = draftId ?: GlobalDraftIdAllocator.allocate() return sendMessageDraftFlow( messagesFlow.map { - SendMessageDraft(chatId = chatId, draftId = draftId, entities = it, directMessageThreadId = directMessageThreadId, canStop = canStop, keepOnStop = keepOnStop) + SendMessageDraft(chatId = chatId, draftId = draftId, entities = it, threadId = threadId, canStop = canStop, keepOnStop = keepOnStop) } ) } /** - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ public suspend fun TelegramBot.sendMessageDraftFlowWithTextsAndParseMode( chatId: IdChatIdentifier, messagesFlow: Flow>, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, draftId: DraftId? = null, canStop: Boolean? = null, keepOnStop: Boolean? = null @@ -95,18 +95,18 @@ public suspend fun TelegramBot.sendMessageDraftFlowWithTextsAndParseMode( val draftId = draftId ?: GlobalDraftIdAllocator.allocate() return sendMessageDraftFlow( messagesFlow.map { - SendMessageDraft(chatId = chatId, draftId = draftId, text = it.first, parseMode = it.second, directMessageThreadId = directMessageThreadId, canStop = canStop, keepOnStop = keepOnStop) + SendMessageDraft(chatId = chatId, draftId = draftId, text = it.first, parseMode = it.second, threadId = threadId, canStop = canStop, keepOnStop = keepOnStop) } ) } /** - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ public suspend fun TelegramBot.sendMessageDraftFlowWithTexts( chatId: IdChatIdentifier, messagesFlow: Flow, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, draftId: DraftId? = null, canStop: Boolean? = null, keepOnStop: Boolean? = null @@ -117,7 +117,7 @@ public suspend fun TelegramBot.sendMessageDraftFlowWithTexts( messagesFlow = messagesFlow.map { it.escapeMarkdownV2Common() to MarkdownV2 }, - directMessageThreadId = directMessageThreadId, + threadId = threadId, draftId = draftId, canStop = canStop, keepOnStop = keepOnStop @@ -125,14 +125,14 @@ public suspend fun TelegramBot.sendMessageDraftFlowWithTexts( } /** - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chat]. + * @param threadId Message thread identifier. Defaults from [chat]. */ public suspend fun TelegramBot.sendMessageDraft( chat: Chat, draftId: DraftId, text: String, parseMode: ParseMode? = null, - directMessageThreadId: DirectMessageThreadId? = chat.id.directMessageThreadId, + threadId: MessageThreadId? = chat.id.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null ): Unit = sendMessageDraft( @@ -140,19 +140,19 @@ public suspend fun TelegramBot.sendMessageDraft( draftId = draftId, text = text, parseMode = parseMode, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) /** - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ public suspend fun TelegramBot.sendMessageDraft( chatId: IdChatIdentifier, draftId: DraftId, entities: TextSourcesList, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null ): Unit = execute( @@ -160,39 +160,39 @@ public suspend fun TelegramBot.sendMessageDraft( chatId = chatId, draftId = draftId, entities = entities, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) ) /** - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chat]. + * @param threadId Message thread identifier. Defaults from [chat]. */ public suspend fun TelegramBot.sendMessageDraft( chat: Chat, draftId: DraftId, entities: TextSourcesList, - directMessageThreadId: DirectMessageThreadId? = chat.id.directMessageThreadId, + threadId: MessageThreadId? = chat.id.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null ): Unit = sendMessageDraft( chatId = chat.id, draftId = draftId, entities = entities, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) /** - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ public suspend fun TelegramBot.sendMessageDraft( chatId: IdChatIdentifier, draftId: DraftId, separator: TextSource? = null, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null, builderBody: EntitiesBuilderBody @@ -200,19 +200,19 @@ public suspend fun TelegramBot.sendMessageDraft( chatId = chatId, draftId = draftId, entities = buildEntities(separator, builderBody), - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) /** - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ public suspend fun TelegramBot.sendMessageDraft( chatId: IdChatIdentifier, draftId: DraftId, separator: String, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null, builderBody: EntitiesBuilderBody @@ -220,19 +220,19 @@ public suspend fun TelegramBot.sendMessageDraft( chatId = chatId, draftId = draftId, entities = buildEntities(separator, builderBody), - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) /** - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chat]. + * @param threadId Message thread identifier. Defaults from [chat]. */ public suspend fun TelegramBot.sendMessageDraft( chat: Chat, draftId: DraftId, separator: TextSource? = null, - directMessageThreadId: DirectMessageThreadId? = chat.id.directMessageThreadId, + threadId: MessageThreadId? = chat.id.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null, builderBody: EntitiesBuilderBody @@ -240,20 +240,20 @@ public suspend fun TelegramBot.sendMessageDraft( chatId = chat.id, draftId = draftId, separator = separator, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop, builderBody = builderBody ) /** - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chat]. + * @param threadId Message thread identifier. Defaults from [chat]. */ public suspend fun TelegramBot.sendMessageDraft( chat: Chat, draftId: DraftId, separator: String, - directMessageThreadId: DirectMessageThreadId? = chat.id.directMessageThreadId, + threadId: MessageThreadId? = chat.id.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null, builderBody: EntitiesBuilderBody @@ -261,7 +261,7 @@ public suspend fun TelegramBot.sendMessageDraft( chatId = chat.id, draftId = draftId, separator = separator, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop, builderBody = builderBody diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendRichMessageDraft.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendRichMessageDraft.kt index e84f4f3c2c..672288ebda 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendRichMessageDraft.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendRichMessageDraft.kt @@ -2,19 +2,20 @@ package dev.inmo.tgbotapi.extensions.api.send import dev.inmo.tgbotapi.bot.TelegramBot import dev.inmo.tgbotapi.requests.send.SendRichMessageDraft -import dev.inmo.tgbotapi.types.DirectMessageThreadId import dev.inmo.tgbotapi.types.IdChatIdentifier +import dev.inmo.tgbotapi.types.MessageThreadId +import dev.inmo.tgbotapi.types.threadIdOrDirectMessageThreadIdAsThreadId import dev.inmo.tgbotapi.types.rich.InputRichMessage /** * @param chatId Numeric target chat identifier. - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ public suspend fun TelegramBot.sendRichMessageDraft( chatId: IdChatIdentifier, draftId: Long, richMessage: InputRichMessage, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null ): Unit = execute( @@ -22,7 +23,7 @@ public suspend fun TelegramBot.sendRichMessageDraft( chatId = chatId, draftId = draftId, richMessage = richMessage, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/Sends.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/Sends.kt index 8716c19684..bfc05ebf00 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/Sends.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/Sends.kt @@ -2438,14 +2438,14 @@ public suspend fun TelegramBot.send( /** * Will execute [sendMessageDraft] request - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ public suspend fun TelegramBot.send( chatId: IdChatIdentifier, draftId: DraftId, text: String, parseMode: ParseMode? = null, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null ): Unit = sendMessageDraft( @@ -2453,21 +2453,21 @@ public suspend fun TelegramBot.send( draftId = draftId, text = text, parseMode = parseMode, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) /** * Will execute [sendMessageDraft] request - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chat]. + * @param threadId Message thread identifier. Defaults from [chat]. */ public suspend fun TelegramBot.send( chat: Chat, draftId: DraftId, text: String, parseMode: ParseMode? = null, - directMessageThreadId: DirectMessageThreadId? = chat.id.directMessageThreadId, + threadId: MessageThreadId? = chat.id.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null ): Unit = sendMessageDraft( @@ -2475,60 +2475,60 @@ public suspend fun TelegramBot.send( draftId = draftId, text = text, parseMode = parseMode, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) /** * Will execute [sendMessageDraft] request - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ public suspend fun TelegramBot.send( chatId: IdChatIdentifier, draftId: DraftId, entities: TextSourcesList, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null ): Unit = sendMessageDraft( chatId = chatId, draftId = draftId, entities = entities, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) /** * Will execute [sendMessageDraft] request - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chat]. + * @param threadId Message thread identifier. Defaults from [chat]. */ public suspend fun TelegramBot.send( chat: Chat, draftId: DraftId, entities: TextSourcesList, - directMessageThreadId: DirectMessageThreadId? = chat.id.directMessageThreadId, + threadId: MessageThreadId? = chat.id.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null ): Unit = sendMessageDraft( chat = chat, draftId = draftId, entities = entities, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) /** * Will execute [sendMessageDraft] request - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ public suspend fun TelegramBot.send( chatId: IdChatIdentifier, draftId: DraftId, separator: TextSource? = null, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null, builderBody: EntitiesBuilderBody @@ -2536,7 +2536,7 @@ public suspend fun TelegramBot.send( chatId = chatId, draftId = draftId, separator = separator, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop, builderBody = builderBody @@ -2544,13 +2544,13 @@ public suspend fun TelegramBot.send( /** * Will execute [sendMessageDraft] request - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ public suspend fun TelegramBot.send( chatId: IdChatIdentifier, draftId: DraftId, separator: String, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null, builderBody: EntitiesBuilderBody @@ -2558,7 +2558,7 @@ public suspend fun TelegramBot.send( chatId = chatId, draftId = draftId, separator = separator, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop, builderBody = builderBody @@ -2566,13 +2566,13 @@ public suspend fun TelegramBot.send( /** * Will execute [sendMessageDraft] request - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chat]. + * @param threadId Message thread identifier. Defaults from [chat]. */ public suspend fun TelegramBot.send( chat: Chat, draftId: DraftId, separator: TextSource? = null, - directMessageThreadId: DirectMessageThreadId? = chat.id.directMessageThreadId, + threadId: MessageThreadId? = chat.id.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null, builderBody: EntitiesBuilderBody @@ -2580,7 +2580,7 @@ public suspend fun TelegramBot.send( chat = chat, draftId = draftId, separator = separator, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop, builderBody = builderBody @@ -2588,13 +2588,13 @@ public suspend fun TelegramBot.send( /** * Will execute [sendMessageDraft] request - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chat]. + * @param threadId Message thread identifier. Defaults from [chat]. */ public suspend fun TelegramBot.send( chat: Chat, draftId: DraftId, separator: String, - directMessageThreadId: DirectMessageThreadId? = chat.id.directMessageThreadId, + threadId: MessageThreadId? = chat.id.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null, builderBody: EntitiesBuilderBody @@ -2602,7 +2602,7 @@ public suspend fun TelegramBot.send( chat = chat, draftId = draftId, separator = separator, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop, builderBody = builderBody @@ -2611,20 +2611,20 @@ public suspend fun TelegramBot.send( /** * Will execute [sendRichMessageDraft] request * @param chatId Numeric target chat identifier. - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ public suspend fun TelegramBot.send( chatId: IdChatIdentifier, draftId: Long, richMessage: InputRichMessage, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null ): Unit = sendRichMessageDraft( chatId = chatId, draftId = draftId, richMessage = richMessage, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/polls/SendRegularPoll.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/polls/SendRegularPoll.kt index b54138573b..5bf7f9c370 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/polls/SendRegularPoll.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/polls/SendRegularPoll.kt @@ -155,8 +155,8 @@ public suspend fun TelegramBot.sendRegularPoll( media: InputPollMedia? = null, membersOnly: Boolean = false, countryCodes: List? = null, - threadId: MessageThreadId? = chatId.threadId, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, + directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadIdOrMessageThreadIdAsDirectMessageThreadId, businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, disableNotification: Boolean = false, protectContent: Boolean = false, diff --git a/tgbotapi.api/src/commonTest/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendMessageDraftTest.kt b/tgbotapi.api/src/commonTest/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendMessageDraftTest.kt index 803b3d27e1..d3be7a54f0 100644 --- a/tgbotapi.api/src/commonTest/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendMessageDraftTest.kt +++ b/tgbotapi.api/src/commonTest/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendMessageDraftTest.kt @@ -7,6 +7,7 @@ import dev.inmo.tgbotapi.types.ChatIdWithChannelDirectMessageThreadId import dev.inmo.tgbotapi.types.DirectMessageThreadId import dev.inmo.tgbotapi.types.DraftId import dev.inmo.tgbotapi.types.IdChatIdentifier +import dev.inmo.tgbotapi.types.MessageThreadId import dev.inmo.tgbotapi.types.RawChatId import kotlin.coroutines.Continuation import kotlin.coroutines.EmptyCoroutineContext @@ -49,7 +50,7 @@ class SendMessageDraftTest { } @Test - fun directExtensionForwardsDirectMessageThreadId() { + fun directExtensionForwardsThreadId() { val chatId: IdChatIdentifier = ChatIdWithChannelDirectMessageThreadId( RawChatId(1L), DirectMessageThreadId(2L) @@ -60,17 +61,17 @@ class SendMessageDraftTest { chatId, DraftId(3L), "direct", - directMessageThreadId = DirectMessageThreadId(7L) + threadId = MessageThreadId(7L) ) } ) assertEquals(chatId, request.chatId) - assertEquals(DirectMessageThreadId(7L), request.directMessageThreadId) + assertEquals(MessageThreadId(7L), request.threadId) } @Test - fun genericExtensionForwardsDirectMessageThreadId() { + fun genericExtensionConvertsDirectMessageThreadIdToThreadId() { val chatId: IdChatIdentifier = ChatIdWithChannelDirectMessageThreadId( RawChatId(4L), DirectMessageThreadId(5L) @@ -82,6 +83,6 @@ class SendMessageDraftTest { ) assertEquals(chatId, request.chatId) - assertEquals(DirectMessageThreadId(5L), request.directMessageThreadId) + assertEquals(MessageThreadId(5L), request.threadId) } } diff --git a/tgbotapi.api/src/commonTest/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendRichMessageDraftTest.kt b/tgbotapi.api/src/commonTest/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendRichMessageDraftTest.kt index fdcbef1b96..c1efbc4451 100644 --- a/tgbotapi.api/src/commonTest/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendRichMessageDraftTest.kt +++ b/tgbotapi.api/src/commonTest/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendRichMessageDraftTest.kt @@ -6,6 +6,7 @@ import dev.inmo.tgbotapi.requests.send.SendRichMessageDraft import dev.inmo.tgbotapi.types.ChatIdWithChannelDirectMessageThreadId import dev.inmo.tgbotapi.types.DirectMessageThreadId import dev.inmo.tgbotapi.types.IdChatIdentifier +import dev.inmo.tgbotapi.types.MessageThreadId import dev.inmo.tgbotapi.types.RawChatId import dev.inmo.tgbotapi.types.rich.InputRichMessageHTML import kotlin.coroutines.Continuation @@ -57,13 +58,13 @@ class SendRichMessageDraftTest { chatId, 3L, InputRichMessageHTML("direct"), - directMessageThreadId = DirectMessageThreadId(7L) + threadId = MessageThreadId(7L) ) } ) assertEquals(chatId, request.chatId) - assertEquals(DirectMessageThreadId(7L), request.directMessageThreadId) + assertEquals(MessageThreadId(7L), request.threadId) } @Test @@ -76,6 +77,6 @@ class SendRichMessageDraftTest { ) assertEquals(chatId, request.chatId) - assertEquals(DirectMessageThreadId(5L), request.directMessageThreadId) + assertEquals(MessageThreadId(5L), request.threadId) } } diff --git a/tgbotapi.core/api/tgbotapi.core.api b/tgbotapi.core/api/tgbotapi.core.api index 5e84e1fb5c..9fd3cb5189 100644 --- a/tgbotapi.core/api/tgbotapi.core.api +++ b/tgbotapi.core/api/tgbotapi.core.api @@ -6951,21 +6951,20 @@ public final class dev/inmo/tgbotapi/requests/send/SendLocationKt { public static synthetic fun SendStaticLocation-bYfvUCQ$default (Ldev/inmo/tgbotapi/types/ChatIdentifier;DDLdev/inmo/tgbotapi/types/MessageThreadId;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/String;Ldev/inmo/tgbotapi/types/EphemeralMessageParameters;ZZZLjava/lang/String;Ldev/inmo/tgbotapi/types/message/SuggestedPostParameters;Ldev/inmo/tgbotapi/types/ReplyParameters;Ldev/inmo/tgbotapi/types/buttons/KeyboardMarkup;ILjava/lang/Object;)Ldev/inmo/tgbotapi/requests/send/SendLocation$Static; } -public final class dev/inmo/tgbotapi/requests/send/SendMessageDraft : dev/inmo/tgbotapi/abstracts/TextedOutput, dev/inmo/tgbotapi/requests/send/abstracts/OptionallyDirectMessageThreadRequest, dev/inmo/tgbotapi/requests/send/abstracts/SendChatMessageRequest { +public final class dev/inmo/tgbotapi/requests/send/SendMessageDraft : dev/inmo/tgbotapi/abstracts/TextedOutput, dev/inmo/tgbotapi/requests/send/abstracts/OptionallyMessageThreadRequest, dev/inmo/tgbotapi/requests/send/abstracts/SendChatMessageRequest { public static final field Companion Ldev/inmo/tgbotapi/requests/send/SendMessageDraft$Companion; - public synthetic fun (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ljava/util/List;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public synthetic fun (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ljava/util/List;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;ILkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Ldev/inmo/tgbotapi/types/IdChatIdentifier; public final fun component2-12UPeIw ()J public final fun component3 ()Ljava/lang/String; public final fun component4 ()Ldev/inmo/tgbotapi/types/message/ParseMode; - public final fun component6-1osv_qQ ()Ldev/inmo/tgbotapi/types/DirectMessageThreadId; + public final fun component6-S3HF-10 ()Ldev/inmo/tgbotapi/types/MessageThreadId; public final fun component7 ()Ljava/lang/Boolean; public final fun component8 ()Ljava/lang/Boolean; public fun equals (Ljava/lang/Object;)Z public final fun getCanStop ()Ljava/lang/Boolean; public synthetic fun getChatId ()Ldev/inmo/tgbotapi/types/ChatIdentifier; public fun getChatId ()Ldev/inmo/tgbotapi/types/IdChatIdentifier; - public fun getDirectMessageThreadId-1osv_qQ ()Ldev/inmo/tgbotapi/types/DirectMessageThreadId; public final fun getDraftId-12UPeIw ()J public fun getEntities ()Ljava/util/List; public final fun getKeepOnStop ()Ljava/lang/Boolean; @@ -6974,6 +6973,7 @@ public final class dev/inmo/tgbotapi/requests/send/SendMessageDraft : dev/inmo/t public fun getResultDeserializer ()Lkotlinx/serialization/DeserializationStrategy; public fun getText ()Ljava/lang/String; public fun getTextSources ()Ljava/util/List; + public fun getThreadId-S3HF-10 ()Ldev/inmo/tgbotapi/types/MessageThreadId; public fun hashCode ()I public fun method ()Ljava/lang/String; public fun toString ()Ljava/lang/String; @@ -6995,10 +6995,10 @@ public final class dev/inmo/tgbotapi/requests/send/SendMessageDraft$Companion { } public final class dev/inmo/tgbotapi/requests/send/SendMessageDraftKt { - public static final fun SendMessageDraft-XkbMyLA (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;)Ldev/inmo/tgbotapi/requests/send/SendMessageDraft; - public static synthetic fun SendMessageDraft-XkbMyLA$default (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;ILjava/lang/Object;)Ldev/inmo/tgbotapi/requests/send/SendMessageDraft; - public static final fun SendMessageDraft-rrT3ZwM (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/util/List;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;)Ldev/inmo/tgbotapi/requests/send/SendMessageDraft; - public static synthetic fun SendMessageDraft-rrT3ZwM$default (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/util/List;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;ILjava/lang/Object;)Ldev/inmo/tgbotapi/requests/send/SendMessageDraft; + public static final fun SendMessageDraft-89UPcpI (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/util/List;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;)Ldev/inmo/tgbotapi/requests/send/SendMessageDraft; + public static synthetic fun SendMessageDraft-89UPcpI$default (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/util/List;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;ILjava/lang/Object;)Ldev/inmo/tgbotapi/requests/send/SendMessageDraft; + public static final fun SendMessageDraft-pJUp6k4 (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;)Ldev/inmo/tgbotapi/requests/send/SendMessageDraft; + public static synthetic fun SendMessageDraft-pJUp6k4$default (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLjava/lang/String;Ldev/inmo/tgbotapi/types/message/ParseMode;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;ILjava/lang/Object;)Ldev/inmo/tgbotapi/requests/send/SendMessageDraft; } public final class dev/inmo/tgbotapi/requests/send/SendMessageKt { @@ -7068,27 +7068,27 @@ public final class dev/inmo/tgbotapi/requests/send/SendRichMessage$Companion { public final fun serializer ()Lkotlinx/serialization/KSerializer; } -public final class dev/inmo/tgbotapi/requests/send/SendRichMessageDraft : dev/inmo/tgbotapi/requests/abstracts/SimpleRequest { +public final class dev/inmo/tgbotapi/requests/send/SendRichMessageDraft : dev/inmo/tgbotapi/requests/abstracts/SimpleRequest, dev/inmo/tgbotapi/requests/send/abstracts/OptionallyMessageThreadRequest { public static final field Companion Ldev/inmo/tgbotapi/requests/send/SendRichMessageDraft$Companion; - public synthetic fun (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;ILkotlin/jvm/internal/DefaultConstructorMarker;)V - public synthetic fun (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/internal/DefaultConstructorMarker;)V + public synthetic fun (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;ILkotlin/jvm/internal/DefaultConstructorMarker;)V + public synthetic fun (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;Lkotlin/jvm/internal/DefaultConstructorMarker;)V public final fun component1 ()Ldev/inmo/tgbotapi/types/IdChatIdentifier; public final fun component2 ()J public final fun component3 ()Ldev/inmo/tgbotapi/types/rich/InputRichMessage; - public final fun component4-1osv_qQ ()Ldev/inmo/tgbotapi/types/DirectMessageThreadId; + public final fun component4-S3HF-10 ()Ldev/inmo/tgbotapi/types/MessageThreadId; public final fun component5 ()Ljava/lang/Boolean; public final fun component6 ()Ljava/lang/Boolean; - public final fun copy--nslZuo (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;)Ldev/inmo/tgbotapi/requests/send/SendRichMessageDraft; - public static synthetic fun copy--nslZuo$default (Ldev/inmo/tgbotapi/requests/send/SendRichMessageDraft;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/DirectMessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;ILjava/lang/Object;)Ldev/inmo/tgbotapi/requests/send/SendRichMessageDraft; + public final fun copy-GAvqYPo (Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;)Ldev/inmo/tgbotapi/requests/send/SendRichMessageDraft; + public static synthetic fun copy-GAvqYPo$default (Ldev/inmo/tgbotapi/requests/send/SendRichMessageDraft;Ldev/inmo/tgbotapi/types/IdChatIdentifier;JLdev/inmo/tgbotapi/types/rich/InputRichMessage;Ldev/inmo/tgbotapi/types/MessageThreadId;Ljava/lang/Boolean;Ljava/lang/Boolean;ILjava/lang/Object;)Ldev/inmo/tgbotapi/requests/send/SendRichMessageDraft; public fun equals (Ljava/lang/Object;)Z public final fun getCanStop ()Ljava/lang/Boolean; public final fun getChatId ()Ldev/inmo/tgbotapi/types/IdChatIdentifier; - public final fun getDirectMessageThreadId-1osv_qQ ()Ldev/inmo/tgbotapi/types/DirectMessageThreadId; public final fun getDraftId ()J public final fun getKeepOnStop ()Ljava/lang/Boolean; public fun getRequestSerializer ()Lkotlinx/serialization/SerializationStrategy; public fun getResultDeserializer ()Lkotlinx/serialization/DeserializationStrategy; public final fun getRichMessage ()Ldev/inmo/tgbotapi/types/rich/InputRichMessage; + public fun getThreadId-S3HF-10 ()Ldev/inmo/tgbotapi/types/MessageThreadId; public fun hashCode ()I public fun method ()Ljava/lang/String; public fun toString ()Ljava/lang/String; @@ -11169,9 +11169,11 @@ public final class dev/inmo/tgbotapi/types/ChatIdentifierKt { public static final field managedBotNewBotUsername Ljava/lang/String; public static final fun getBusinessConnectionId (Ldev/inmo/tgbotapi/types/ChatIdentifier;)Ljava/lang/String; public static final fun getDirectMessageThreadId (Ldev/inmo/tgbotapi/types/ChatIdentifier;)Ldev/inmo/tgbotapi/types/DirectMessageThreadId; + public static final fun getDirectMessageThreadIdOrMessageThreadIdAsDirectMessageThreadId (Ldev/inmo/tgbotapi/types/ChatIdentifier;)Ldev/inmo/tgbotapi/types/DirectMessageThreadId; public static final fun getEphemeralMessageId (Ldev/inmo/tgbotapi/types/ChatIdentifier;)Ldev/inmo/tgbotapi/types/EphemeralMessageId; public static final fun getReceiverUser (Ldev/inmo/tgbotapi/types/ChatIdentifier;)Ldev/inmo/tgbotapi/types/IdChatIdentifier; public static final fun getThreadId (Ldev/inmo/tgbotapi/types/ChatIdentifier;)Ldev/inmo/tgbotapi/types/MessageThreadId; + public static final fun getThreadIdOrDirectMessageThreadIdAsThreadId (Ldev/inmo/tgbotapi/types/ChatIdentifier;)Ldev/inmo/tgbotapi/types/MessageThreadId; public static final fun getUserLink (Ldev/inmo/tgbotapi/types/IdChatIdentifier;)Ljava/lang/String; public static final fun getUserLink (Ldev/inmo/tgbotapi/types/chat/User;)Ljava/lang/String; public static final fun getUserLink-0218hRU (J)Ljava/lang/String; @@ -41189,6 +41191,15 @@ public final class dev/inmo/tgbotapi/utils/TelegramFakeUserKt { public static final fun isFakeTelegramUser (Ldev/inmo/tgbotapi/types/chat/User;)Z } +public final class dev/inmo/tgbotapi/utils/ThreadIdsKt { + public static final fun directMessageThreadId-LhemCKU (J)J + public static final fun directMessageThreadId-Ps15c30 (J)J + public static final fun messageThreadId-LhemCKU (J)J + public static final fun messageThreadId-Ps15c30 (J)J + public static final fun toCommon-LhemCKU (J)J + public static final fun toDirect-Ps15c30 (J)J +} + public final class dev/inmo/tgbotapi/utils/TimeSpanAsSecondsSerializer : kotlinx/serialization/KSerializer { public static final field INSTANCE Ldev/inmo/tgbotapi/utils/TimeSpanAsSecondsSerializer; public synthetic fun deserialize (Lkotlinx/serialization/encoding/Decoder;)Ljava/lang/Object; diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendMessageDraft.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendMessageDraft.kt index ec35f9b1bb..5735370d2b 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendMessageDraft.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendMessageDraft.kt @@ -16,16 +16,16 @@ import dev.inmo.tgbotapi.utils.serializers.UnitFromBooleanSerializer import kotlinx.serialization.* /** - * Creates a plain-text draft for a direct messages topic. + * Creates a plain-text message draft. * - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ fun SendMessageDraft( chatId: IdChatIdentifier, draftId: DraftId, text: String, parseMode: ParseMode? = null, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null ) = SendMessageDraft( @@ -34,21 +34,21 @@ fun SendMessageDraft( text = text, parseMode = parseMode, rawEntities = null, - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) /** - * Creates an entity-formatted draft for a direct messages topic. + * Creates an entity-formatted message draft. * - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ fun SendMessageDraft( chatId: IdChatIdentifier, draftId: DraftId, entities: TextSourcesList, - directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, canStop: Boolean? = null, keepOnStop: Boolean? = null ) = SendMessageDraft( @@ -57,15 +57,15 @@ fun SendMessageDraft( text = entities.makeString(), parseMode = null, rawEntities = entities.toRawMessageEntities(), - directMessageThreadId = directMessageThreadId, + threadId = threadId, canStop = canStop, keepOnStop = keepOnStop ) /** - * Streams a partial text message draft to a direct messages topic. + * Streams a partial text message draft. * - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. */ @ConsistentCopyVisibility @Serializable @@ -81,16 +81,16 @@ data class SendMessageDraft internal constructor( @SerialName(entitiesField) private val rawEntities: List? = null, @OptIn(ExperimentalSerializationApi::class) - @SerialName(directMessagesTopicIdField) + @SerialName(messageThreadIdField) @EncodeDefault - override val directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + override val threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, @SerialName(canStopField) val canStop: Boolean? = null, @SerialName(keepOnStopField) val keepOnStop: Boolean? = null ) : SendChatMessageRequest, TextedOutput, - OptionallyDirectMessageThreadRequest + OptionallyMessageThreadRequest { override val textSources: TextSourcesList? by lazy { rawEntities ?.asTextSources(text) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendRichMessageDraft.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendRichMessageDraft.kt index 5c5ebab797..8ed90f518c 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendRichMessageDraft.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendRichMessageDraft.kt @@ -1,13 +1,15 @@ package dev.inmo.tgbotapi.requests.send import dev.inmo.tgbotapi.requests.abstracts.SimpleRequest -import dev.inmo.tgbotapi.types.DirectMessageThreadId +import dev.inmo.tgbotapi.requests.send.abstracts.OptionallyMessageThreadRequest import dev.inmo.tgbotapi.types.IdChatIdentifier +import dev.inmo.tgbotapi.types.MessageThreadId import dev.inmo.tgbotapi.types.canStopField import dev.inmo.tgbotapi.types.chatIdField -import dev.inmo.tgbotapi.types.directMessagesTopicIdField import dev.inmo.tgbotapi.types.draftIdField import dev.inmo.tgbotapi.types.keepOnStopField +import dev.inmo.tgbotapi.types.messageThreadIdField +import dev.inmo.tgbotapi.types.threadIdOrDirectMessageThreadIdAsThreadId import dev.inmo.tgbotapi.types.richMessageField import dev.inmo.tgbotapi.types.rich.InputRichMessage import dev.inmo.tgbotapi.types.rich.multipartFiles @@ -23,7 +25,7 @@ import kotlinx.serialization.SerializationStrategy * with the complete message to persist it in the user's chat. * * @param chatId Numeric target chat identifier. - * @param directMessageThreadId Direct messages topic identifier. Defaults from [chatId]. + * @param threadId Message thread identifier. Defaults from [chatId]. * @see sendRichMessageDraft */ @Serializable @@ -37,13 +39,13 @@ data class SendRichMessageDraft( val draftId: Long, @SerialName(richMessageField) val richMessage: InputRichMessage, - @SerialName(directMessagesTopicIdField) - val directMessageThreadId: DirectMessageThreadId? = chatId.directMessageThreadId, + @SerialName(messageThreadIdField) + override val threadId: MessageThreadId? = chatId.threadIdOrDirectMessageThreadIdAsThreadId, @SerialName(canStopField) val canStop: Boolean? = null, @SerialName(keepOnStopField) val keepOnStop: Boolean? = null -) : SimpleRequest { +) : SimpleRequest, OptionallyMessageThreadRequest { init { require(draftId != 0L) { "draftId of SendRichMessageDraft must be non-zero" diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatIdentifier.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatIdentifier.kt index 77438032d4..81292526da 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatIdentifier.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/ChatIdentifier.kt @@ -6,7 +6,9 @@ import dev.inmo.micro_utils.common.Warning import dev.inmo.tgbotapi.types.business_connection.BusinessConnectionId import dev.inmo.tgbotapi.types.chat.User import dev.inmo.tgbotapi.utils.RiskFeature +import dev.inmo.tgbotapi.utils.directMessageThreadId import dev.inmo.tgbotapi.utils.internal.ClassCastsIncluded +import dev.inmo.tgbotapi.utils.messageThreadId import kotlinx.serialization.KSerializer import kotlinx.serialization.Serializable import kotlinx.serialization.builtins.serializer @@ -182,6 +184,12 @@ val ChatIdentifier.threadId: MessageThreadId? val ChatIdentifier.directMessageThreadId: DirectMessageThreadId? get() = (this as? IdChatIdentifier) ?.directMessageThreadId +val ChatIdentifier.directMessageThreadIdOrMessageThreadIdAsDirectMessageThreadId: DirectMessageThreadId? + get() = directMessageThreadId ?: (threadId ?.directMessageThreadId()) + +val ChatIdentifier.threadIdOrDirectMessageThreadIdAsThreadId: MessageThreadId? + get() = threadId ?: (directMessageThreadId ?.messageThreadId()) + /** Returns the embedded business connection, or `null` when no business connection is available. */ val ChatIdentifier.businessConnectionId: BusinessConnectionId? get() = (this as? IdChatIdentifier) ?.businessConnectionId diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/utils/ThreadIds.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/utils/ThreadIds.kt new file mode 100644 index 0000000000..b140ff03d2 --- /dev/null +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/utils/ThreadIds.kt @@ -0,0 +1,57 @@ +package dev.inmo.tgbotapi.utils + +import dev.inmo.tgbotapi.types.DirectMessageThreadId +import dev.inmo.tgbotapi.types.MessageThreadId + +/** + * Converts a [MessageThreadId] instance to a [DirectMessageThreadId] by using its underlying `long` value. + * + * @receiver The [MessageThreadId] instance to be converted. + * @return A new [DirectMessageThreadId] instance with the same `long` value as the receiver. + */ +fun MessageThreadId.toDirect() = DirectMessageThreadId(long) +/** + * Converts a [DirectMessageThreadId] instance to a [MessageThreadId] instance. + * + * This extension function facilitates type transformation between two inline classes + * with the same underlying value, allowing seamless usage of their respective types. + * + * @receiver The [DirectMessageThreadId] instance to be transformed. + * @return The corresponding [MessageThreadId] instance containing the same underlying value. + */ +fun DirectMessageThreadId.toCommon() = MessageThreadId(long) + +/** + * Returns the current instance of [DirectMessageThreadId]. + * + * This method provides a straightforward way to retrieve the object in its current state + * without introducing any modifications or transformations. + * + * @return The current instance of [DirectMessageThreadId]. + */ +fun DirectMessageThreadId.directMessageThreadId(): DirectMessageThreadId = this +/** + * Converts this [MessageThreadId] instance to a [DirectMessageThreadId]. + * + * @return A new [DirectMessageThreadId] instance with the same underlying `long` value as this [MessageThreadId]. + */ +fun MessageThreadId.directMessageThreadId(): DirectMessageThreadId = toDirect() + +/** + * Converts a [DirectMessageThreadId] instance to a [MessageThreadId] instance. + * + * This method provides a straightforward way to transform a [DirectMessageThreadId] + * object into a [MessageThreadId] object by leveraging the underlying value. + * + * @return The [MessageThreadId] instance containing the same underlying value as the original [DirectMessageThreadId]. + */ +fun DirectMessageThreadId.messageThreadId(): MessageThreadId = toCommon() +/** + * Returns the current instance of the MessageThreadId. + * + * The method is a utility function that allows for consistent handling of `MessageThreadId` + * instances and can be used when chaining operations without altering the instance. + * + * @return The current `MessageThreadId` instance. + */ +fun MessageThreadId.messageThreadId(): MessageThreadId = this diff --git a/tgbotapi.core/src/commonTest/kotlin/dev/inmo/tgbotapi/types/GeneralBotApi103Test.kt b/tgbotapi.core/src/commonTest/kotlin/dev/inmo/tgbotapi/types/GeneralBotApi103Test.kt index be0086c11d..6b049795ad 100644 --- a/tgbotapi.core/src/commonTest/kotlin/dev/inmo/tgbotapi/types/GeneralBotApi103Test.kt +++ b/tgbotapi.core/src/commonTest/kotlin/dev/inmo/tgbotapi/types/GeneralBotApi103Test.kt @@ -47,14 +47,14 @@ class GeneralBotApi103Test { assertEquals(chatId, messageDraft.chatId) assertEquals(chatId, richDraft.chatId) - assertEquals(DirectMessageThreadId(4L), messageDraft.directMessageThreadId) - assertEquals(DirectMessageThreadId(4L), richDraft.directMessageThreadId) + assertEquals(MessageThreadId(4L), messageDraft.threadId) + assertEquals(MessageThreadId(4L), richDraft.threadId) assertEquals("3", messageDraftJson[chatIdField].toString()) assertEquals("3", richDraftJson[chatIdField].toString()) - assertEquals("4", messageDraftJson[directMessagesTopicIdField].toString()) - assertEquals("4", richDraftJson[directMessagesTopicIdField].toString()) - assertEquals(null, messageDraftJson[messageThreadIdField]) - assertEquals(null, richDraftJson[messageThreadIdField]) + assertEquals("4", messageDraftJson[messageThreadIdField].toString()) + assertEquals("4", richDraftJson[messageThreadIdField].toString()) + assertEquals(null, messageDraftJson[directMessagesTopicIdField]) + assertEquals(null, richDraftJson[directMessagesTopicIdField]) } @Test