From 925c4dae6cc1c5a66dc0f9103311cc9f2a910571 Mon Sep 17 00:00:00 2001 From: InsanusMokrassar Date: Thu, 10 Nov 2022 16:24:20 +0600 Subject: [PATCH] ChatIdWithThreadId, all chats ids now value classes, update chats ids hierarchy --- CHANGELOG.md | 8 + .../tgbotapi/extensions/api/ForwardMessage.kt | 13 +- .../extensions/api/LiveFlowLocation.kt | 6 +- .../extensions/api/LiveLocationProvider.kt | 13 +- .../extensions/api/send/CopyMessage.kt | 41 ++-- .../api/send/RepliesWithChatsAndMessages.kt | 136 ++++++------- .../extensions/api/send/SendContact.kt | 8 +- .../tgbotapi/extensions/api/send/SendDice.kt | 5 +- .../extensions/api/send/SendLiveLocation.kt | 16 +- .../extensions/api/send/SendMessage.kt | 32 +-- .../extensions/api/send/SendStaticLocation.kt | 17 +- .../tgbotapi/extensions/api/send/SendVenue.kt | 12 +- .../tgbotapi/extensions/api/send/Sends.kt | 185 +++++++++--------- .../extensions/api/send/games/SendGame.kt | 9 +- .../api/send/media/SendAnimation.kt | 17 +- .../extensions/api/send/media/SendAudio.kt | 17 +- .../extensions/api/send/media/SendDocument.kt | 17 +- .../api/send/media/SendMediaGroup.kt | 33 ++-- .../extensions/api/send/media/SendPhoto.kt | 25 +-- .../extensions/api/send/media/SendSticker.kt | 9 +- .../extensions/api/send/media/SendVideo.kt | 17 +- .../api/send/media/SendVideoNote.kt | 9 +- .../extensions/api/send/media/SendVoice.kt | 8 +- .../api/send/payments/SendInvoice.kt | 3 +- .../inmo/tgbotapi/requests/ForwardMessage.kt | 2 +- .../tgbotapi/requests/send/CopyMessage.kt | 10 +- .../tgbotapi/requests/send/SendContact.kt | 6 +- .../tgbotapi/requests/send/SendLocation.kt | 8 +- .../tgbotapi/requests/send/SendMessage.kt | 6 +- .../inmo/tgbotapi/requests/send/SendVenue.kt | 6 +- .../tgbotapi/requests/send/games/SendGame.kt | 2 +- .../requests/send/media/SendAnimation.kt | 6 +- .../tgbotapi/requests/send/media/SendAudio.kt | 6 +- .../requests/send/media/SendDocument.kt | 6 +- .../requests/send/media/SendMediaGroup.kt | 10 +- .../tgbotapi/requests/send/media/SendPhoto.kt | 6 +- .../requests/send/media/SendSticker.kt | 4 +- .../tgbotapi/requests/send/media/SendVideo.kt | 6 +- .../requests/send/media/SendVideoNote.kt | 4 +- .../tgbotapi/requests/send/media/SendVoice.kt | 6 +- .../tgbotapi/requests/send/polls/SendPoll.kt | 16 +- .../dev/inmo/tgbotapi/types/ChatIdentifier.kt | 2 + .../dev/inmo/tgbotapi/types/chat/Abstracts.kt | 4 +- .../dev/inmo/tgbotapi/types/chat/Extended.kt | 6 +- .../dev/inmo/tgbotapi/types/chat/Impls.kt | 6 +- .../types/message/content/Abstracts.kt | 3 +- .../extensions/ChatIdentifierWithThreadId.kt | 76 ------- .../extensions/utils/ClassCastsNew.kt | 39 ++++ 48 files changed, 445 insertions(+), 457 deletions(-) delete mode 100644 tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/utils/extensions/ChatIdentifierWithThreadId.kt diff --git a/CHANGELOG.md b/CHANGELOG.md index ce272c5b40..84309e4124 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # TelegramBotAPI changelog +## 4.1.0 + +* `Core`: + * All the chats identifiers has been rewritten as value classes + * New chat identifier: `ChatIdWithThreadId` + * `RawMessage` will create `ChatIdWithThreadId` chat id under the hood by default + * All the methods which potentially using `threadId` will try to take it from `chatId` + ## 4.0.0 **!!! THIS UPDATE CONTAINS FULL REWORK OF MEDIA GROUPS FUNCTIONALITY !!!** diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/ForwardMessage.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/ForwardMessage.kt index 025419a86c..4893eb13c8 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/ForwardMessage.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/ForwardMessage.kt @@ -7,12 +7,13 @@ import dev.inmo.tgbotapi.types.MessageId import dev.inmo.tgbotapi.types.MessageThreadId import dev.inmo.tgbotapi.types.chat.Chat import dev.inmo.tgbotapi.types.message.abstracts.Message +import dev.inmo.tgbotapi.types.threadId suspend fun TelegramBot.forwardMessage( fromChatId: ChatIdentifier, toChatId: ChatIdentifier, messageId: MessageId, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false ) = execute( @@ -23,7 +24,7 @@ suspend fun TelegramBot.forwardMessage( fromChat: Chat, toChatId: ChatIdentifier, messageId: MessageId, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false ) = forwardMessage(fromChat.id, toChatId, messageId, threadId, disableNotification, protectContent) @@ -32,7 +33,7 @@ suspend fun TelegramBot.forwardMessage( fromChatId: ChatIdentifier, toChat: Chat, messageId: MessageId, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false ) = forwardMessage(fromChatId, toChat.id, messageId, threadId, disableNotification, protectContent) @@ -41,7 +42,7 @@ suspend fun TelegramBot.forwardMessage( fromChat: Chat, toChat: Chat, messageId: MessageId, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false ) = forwardMessage(fromChat.id, toChat.id, messageId, threadId, disableNotification, protectContent) @@ -49,7 +50,7 @@ suspend fun TelegramBot.forwardMessage( suspend fun TelegramBot.forwardMessage( toChatId: ChatIdentifier, message: Message, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false ) = forwardMessage(message.chat, toChatId, message.messageId, threadId, disableNotification, protectContent) @@ -57,7 +58,7 @@ suspend fun TelegramBot.forwardMessage( suspend fun TelegramBot.forwardMessage( toChat: Chat, message: Message, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false ) = forwardMessage(message.chat, toChat, message.messageId, threadId, disableNotification, protectContent) diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/LiveFlowLocation.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/LiveFlowLocation.kt index 76d59ce25e..aa168e30d1 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/LiveFlowLocation.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/LiveFlowLocation.kt @@ -41,7 +41,7 @@ suspend fun TelegramBot.handleLiveLocation( chatId: ChatIdentifier, locationsFlow: Flow, liveTimeMillis: Long = defaultLivePeriodDelayMillis, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -98,7 +98,7 @@ suspend fun TelegramBot.handleLiveLocation( chatId: ChatIdentifier, locationsFlow: Flow, liveTimeMillis: Long = defaultLivePeriodDelayMillis, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -135,7 +135,7 @@ suspend fun TelegramBot.handleLiveLocation( chatId: ChatIdentifier, locationsFlow: Flow>, liveTimeMillis: Long = defaultLivePeriodDelayMillis, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/LiveLocationProvider.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/LiveLocationProvider.kt index 9818e26730..2831be8eaa 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/LiveLocationProvider.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/LiveLocationProvider.kt @@ -15,6 +15,7 @@ import dev.inmo.tgbotapi.types.location.StaticLocation import dev.inmo.tgbotapi.types.message.abstracts.ContentMessage import dev.inmo.tgbotapi.types.message.abstracts.Message import dev.inmo.tgbotapi.types.message.content.LocationContent +import dev.inmo.tgbotapi.utils.extensions.threadIdOrNull import io.ktor.utils.io.core.Closeable import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.launch @@ -90,7 +91,7 @@ suspend fun TelegramBot.startLiveLocation( initHorizontalAccuracy: Meters? = null, initHeading: Degrees? = null, initProximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -137,7 +138,7 @@ suspend fun TelegramBot.startLiveLocation( initHorizontalAccuracy: Meters? = null, initHeading: Degrees? = null, initProximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -172,7 +173,7 @@ suspend fun TelegramBot.startLiveLocation( initHorizontalAccuracy: Meters? = null, initHeading: Degrees? = null, initProximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -207,7 +208,7 @@ suspend fun TelegramBot.startLiveLocation( initHorizontalAccuracy: Meters? = null, initHeading: Degrees? = null, initProximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -243,7 +244,7 @@ suspend inline fun TelegramBot.replyWithLiveLocation( initHorizontalAccuracy: Meters? = null, initHeading: Degrees? = null, initProximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = to.threadIdOrNull, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -277,7 +278,7 @@ suspend inline fun TelegramBot.replyWithLiveLocation( initHorizontalAccuracy: Meters? = null, initHeading: Degrees? = null, initProximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = to.threadIdOrNull, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/CopyMessage.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/CopyMessage.kt index c192394f92..40ee1f326d 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/CopyMessage.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/CopyMessage.kt @@ -10,6 +10,7 @@ import dev.inmo.tgbotapi.types.message.ParseMode import dev.inmo.tgbotapi.types.buttons.KeyboardMarkup import dev.inmo.tgbotapi.types.chat.Chat import dev.inmo.tgbotapi.types.message.abstracts.Message +import dev.inmo.tgbotapi.types.threadId /** * @param replyMarkup Some of [KeyboardMarkup]. See [dev.inmo.tgbotapi.extensions.utils.types.buttons.replyKeyboard] or @@ -21,7 +22,7 @@ suspend inline fun TelegramBot.copyMessage( toChatId: ChatIdentifier, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -53,7 +54,7 @@ suspend inline fun TelegramBot.copyMessage( toChatId: ChatIdentifier, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -71,7 +72,7 @@ suspend inline fun TelegramBot.copyMessage( toChat: Chat, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -89,7 +90,7 @@ suspend inline fun TelegramBot.copyMessage( toChat: Chat, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -107,7 +108,7 @@ suspend inline fun TelegramBot.copyMessage( messageId: MessageId, toChatId: ChatIdentifier, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -137,7 +138,7 @@ suspend inline fun TelegramBot.copyMessage( messageId: MessageId, toChatId: ChatIdentifier, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -154,7 +155,7 @@ suspend inline fun TelegramBot.copyMessage( messageId: MessageId, toChat: Chat, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -171,7 +172,7 @@ suspend inline fun TelegramBot.copyMessage( messageId: MessageId, toChat: Chat, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -188,7 +189,7 @@ suspend inline fun TelegramBot.copyMessage( message: Message, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -205,7 +206,7 @@ suspend inline fun TelegramBot.copyMessage( message: Message, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -221,7 +222,7 @@ suspend inline fun TelegramBot.copyMessage( toChatId: ChatIdentifier, message: Message, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -237,7 +238,7 @@ suspend inline fun TelegramBot.copyMessage( toChat: Chat, message: Message, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -255,7 +256,7 @@ suspend inline fun TelegramBot.copyMessage( messageId: MessageId, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -287,7 +288,7 @@ suspend inline fun TelegramBot.copyMessage( messageId: MessageId, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -317,7 +318,7 @@ suspend inline fun TelegramBot.copyMessage( messageId: MessageId, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -347,7 +348,7 @@ suspend inline fun TelegramBot.copyMessage( messageId: MessageId, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -377,7 +378,7 @@ suspend inline fun TelegramBot.copyMessage( fromChatId: ChatIdentifier, messageId: MessageId, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -407,7 +408,7 @@ suspend inline fun TelegramBot.copyMessage( fromChat: Chat, messageId: MessageId, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -435,7 +436,7 @@ suspend inline fun TelegramBot.copyMessage( fromChatId: ChatIdentifier, messageId: MessageId, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -463,7 +464,7 @@ suspend inline fun TelegramBot.copyMessage( fromChat: Chat, messageId: MessageId, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/RepliesWithChatsAndMessages.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/RepliesWithChatsAndMessages.kt index 87e90fe760..d81c42fbc3 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/RepliesWithChatsAndMessages.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/RepliesWithChatsAndMessages.kt @@ -47,7 +47,7 @@ suspend inline fun TelegramBot.reply( phoneNumber: String, firstName: String, lastName: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -73,7 +73,7 @@ suspend inline fun TelegramBot.reply( toChatId: IdChatIdentifier, toMessageId: MessageId, contact: Contact, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -100,7 +100,7 @@ suspend inline fun TelegramBot.replyWithDice( toChatId: IdChatIdentifier, toMessageId: MessageId, animationType: DiceAnimationType? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -115,7 +115,7 @@ suspend inline fun TelegramBot.reply( toChatId: IdChatIdentifier, toMessageId: MessageId, animationType: DiceAnimationType, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -134,7 +134,7 @@ suspend inline fun TelegramBot.reply( toMessageId: MessageId, latitude: Double, longitude: Double, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -159,7 +159,7 @@ suspend inline fun TelegramBot.reply( toChatId: IdChatIdentifier, toMessageId: MessageId, location: StaticLocation, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -188,7 +188,7 @@ suspend inline fun TelegramBot.reply( text: String, parseMode: ParseMode? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -215,7 +215,7 @@ suspend inline fun TelegramBot.reply( toMessageId: MessageId, entities: TextSourcesList, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -241,7 +241,7 @@ suspend fun TelegramBot.reply( toMessageId: MessageId, separator: TextSource? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -258,7 +258,7 @@ suspend fun TelegramBot.reply( toMessageId: MessageId, separator: String, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -284,7 +284,7 @@ suspend inline fun TelegramBot.reply( foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -317,7 +317,7 @@ suspend inline fun TelegramBot.reply( foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -344,7 +344,7 @@ suspend inline fun TelegramBot.reply( toChatId: IdChatIdentifier, toMessageId: MessageId, venue: Venue, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -367,7 +367,7 @@ suspend inline fun TelegramBot.replyWithGame( toChatId: IdChatIdentifier, toMessageId: MessageId, gameShortName: String, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -380,7 +380,7 @@ suspend inline fun TelegramBot.replyWithGame( toChatId: IdChatIdentifier, toMessageId: MessageId, game: Game, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -393,7 +393,7 @@ suspend inline fun TelegramBot.reply( toChatId: IdChatIdentifier, toMessageId: MessageId, game: Game, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -413,7 +413,7 @@ suspend inline fun TelegramBot.replyWithAnimation( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -444,7 +444,7 @@ suspend inline fun TelegramBot.reply( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -460,7 +460,7 @@ suspend inline fun TelegramBot.replyWithAnimation( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -489,7 +489,7 @@ suspend inline fun TelegramBot.reply( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -509,7 +509,7 @@ suspend inline fun TelegramBot.replyWithAudio( duration: Long? = null, performer: String? = null, title: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -523,7 +523,7 @@ suspend inline fun TelegramBot.reply( text: String? = null, parseMode: ParseMode? = null, title: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -539,7 +539,7 @@ suspend inline fun TelegramBot.replyWithAudio( duration: Long? = null, performer: String? = null, title: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -552,7 +552,7 @@ suspend inline fun TelegramBot.reply( audio: AudioFile, entities: TextSourcesList, title: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -569,7 +569,7 @@ suspend inline fun TelegramBot.replyWithDocument( thumb: InputFile? = null, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -583,7 +583,7 @@ suspend inline fun TelegramBot.reply( document: DocumentFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -597,7 +597,7 @@ suspend inline fun TelegramBot.replyWithDocument( document: InputFile, thumb: InputFile? = null, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -610,7 +610,7 @@ suspend inline fun TelegramBot.reply( toMessageId: MessageId, document: DocumentFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -626,7 +626,7 @@ suspend inline fun TelegramBot.replyWithMediaGroup( toChatId: IdChatIdentifier, toMessageId: MessageId, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null @@ -636,7 +636,7 @@ suspend inline fun TelegramBot.replyWithPlaylist( toChatId: IdChatIdentifier, toMessageId: MessageId, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null @@ -646,7 +646,7 @@ suspend inline fun TelegramBot.replyWithDocuments( toChatId: IdChatIdentifier, toMessageId: MessageId, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null @@ -656,7 +656,7 @@ suspend inline fun TelegramBot.replyWithGallery( toChatId: IdChatIdentifier, toMessageId: MessageId, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null @@ -671,7 +671,7 @@ suspend inline fun TelegramBot.replyWithPhoto( fileId: InputFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -684,7 +684,7 @@ suspend inline fun TelegramBot.reply( photo: Photo, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -697,7 +697,7 @@ suspend inline fun TelegramBot.reply( photoSize: PhotoSize, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -710,7 +710,7 @@ suspend inline fun TelegramBot.replyWithPhoto( toMessageId: MessageId, fileId: InputFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -722,7 +722,7 @@ suspend inline fun TelegramBot.reply( toMessageId: MessageId, photo: Photo, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -734,7 +734,7 @@ suspend inline fun TelegramBot.reply( toMessageId: MessageId, photoSize: PhotoSize, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -748,7 +748,7 @@ suspend inline fun TelegramBot.replyWithSticker( toChatId: IdChatIdentifier, toMessageId: MessageId, sticker: InputFile, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -759,7 +759,7 @@ suspend inline fun TelegramBot.reply( toChatId: IdChatIdentifier, toMessageId: MessageId, sticker: Sticker, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -779,7 +779,7 @@ suspend inline fun TelegramBot.replyWithVideo( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -792,7 +792,7 @@ suspend inline fun TelegramBot.reply( video: VideoFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -808,7 +808,7 @@ suspend inline fun TelegramBot.replyWithVideo( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -820,7 +820,7 @@ suspend inline fun TelegramBot.reply( toMessageId: MessageId, video: VideoFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -837,7 +837,7 @@ suspend inline fun TelegramBot.replyWithVideoNote( thumb: InputFile? = null, duration: Long? = null, size: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -848,7 +848,7 @@ suspend inline fun TelegramBot.reply( toChatId: IdChatIdentifier, toMessageId: MessageId, videoNote: VideoNoteFile, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -865,7 +865,7 @@ suspend inline fun TelegramBot.replyWithVoice( text: String? = null, parseMode: ParseMode? = null, duration: Long? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -878,7 +878,7 @@ suspend inline fun TelegramBot.reply( voice: VoiceFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -892,7 +892,7 @@ suspend inline fun TelegramBot.replyWithVoice( voice: InputFile, entities: TextSourcesList, duration: Long? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -904,7 +904,7 @@ suspend inline fun TelegramBot.reply( toMessageId: MessageId, voice: VoiceFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -938,7 +938,7 @@ suspend inline fun TelegramBot.reply( shouldSendPhoneNumberToProvider: Boolean = false, shouldSendEmailToProvider: Boolean = false, priceDependOnShipAddress: Boolean = false, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -957,7 +957,7 @@ suspend inline fun TelegramBot.reply( isClosed: Boolean = false, allowMultipleAnswers: Boolean = false, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -974,7 +974,7 @@ suspend inline fun TelegramBot.reply( isAnonymous: Boolean = poll.isAnonymous, allowMultipleAnswers: Boolean = poll.allowMultipleAnswers, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -992,7 +992,7 @@ suspend inline fun TelegramBot.reply( explanation: String? = null, parseMode: ParseMode? = null, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -1011,7 +1011,7 @@ suspend inline fun TelegramBot.reply( explanation: String? = null, parseMode: ParseMode? = null, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -1028,7 +1028,7 @@ suspend inline fun TelegramBot.reply( isAnonymous: Boolean = true, isClosed: Boolean = false, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -1046,7 +1046,7 @@ suspend inline fun TelegramBot.reply( correctOptionId: Int = quizPoll.correctOptionId ?: error("Correct option ID must be provided by income QuizPoll or by developer"), isAnonymous: Boolean = quizPoll.isAnonymous, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -1063,7 +1063,7 @@ suspend inline fun TelegramBot.reply( options: List = poll.options.map { it.text }, isAnonymous: Boolean = poll.isAnonymous, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -1112,7 +1112,7 @@ suspend inline fun TelegramBot.reply( messageId: MessageId, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -1138,7 +1138,7 @@ suspend inline fun TelegramBot.reply( messageId: MessageId, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -1151,7 +1151,7 @@ suspend inline fun TelegramBot.reply( copy: Message, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -1162,7 +1162,7 @@ suspend fun TelegramBot.reply( toChatId: IdChatIdentifier, toMessageId: MessageId, content: MessageContent, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -1191,7 +1191,7 @@ suspend fun TelegramBot.reply( toMessageId: MessageId, locationsFlow: Flow, liveTimeMillis: Long = defaultLivePeriodDelayMillis, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null @@ -1218,7 +1218,7 @@ suspend fun TelegramBot.reply( toMessageId: MessageId, locationsFlow: Flow, liveTimeMillis: Long = defaultLivePeriodDelayMillis, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null @@ -1247,7 +1247,7 @@ suspend fun TelegramBot.reply( toMessageId: MessageId, locationsFlow: Flow>, liveTimeMillis: Long = defaultLivePeriodDelayMillis, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null @@ -1268,7 +1268,7 @@ suspend fun TelegramBot.reply( toChatId: IdChatIdentifier, toMessageId: MessageId, mediaFile: TelegramMediaFile, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -1374,7 +1374,7 @@ suspend fun TelegramBot.reply( content: TextedMediaContent, text: String?, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -1461,7 +1461,7 @@ suspend fun TelegramBot.reply( toMessageId: MessageId, content: TextedMediaContent, entities: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendContact.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendContact.kt index b3ffe9138b..adaf50afa8 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendContact.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendContact.kt @@ -15,7 +15,7 @@ suspend fun TelegramBot.sendContact( phoneNumber: String, firstName: String, lastName: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -34,7 +34,7 @@ suspend fun TelegramBot.sendContact( suspend fun TelegramBot.sendContact( chatId: ChatIdentifier, contact: Contact, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -55,7 +55,7 @@ suspend fun TelegramBot.sendContact( phoneNumber: String, firstName: String, lastName: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -72,7 +72,7 @@ suspend fun TelegramBot.sendContact( suspend fun TelegramBot.sendContact( chat: Chat, contact: Contact, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendDice.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendDice.kt index c5d7ce3cc9..e7094f1400 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendDice.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendDice.kt @@ -8,6 +8,7 @@ import dev.inmo.tgbotapi.types.MessageThreadId import dev.inmo.tgbotapi.types.buttons.KeyboardMarkup import dev.inmo.tgbotapi.types.chat.Chat import dev.inmo.tgbotapi.types.dice.DiceAnimationType +import dev.inmo.tgbotapi.types.threadId /** * @param replyMarkup Some of [KeyboardMarkup]. See [dev.inmo.tgbotapi.extensions.utils.types.buttons.replyKeyboard] or @@ -16,7 +17,7 @@ import dev.inmo.tgbotapi.types.dice.DiceAnimationType suspend fun TelegramBot.sendDice( chatId: ChatIdentifier, animationType: DiceAnimationType? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -33,7 +34,7 @@ suspend fun TelegramBot.sendDice( suspend fun TelegramBot.sendDice( chat: Chat, animationType: DiceAnimationType? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendLiveLocation.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendLiveLocation.kt index d5666fd3b2..674b61d276 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendLiveLocation.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendLiveLocation.kt @@ -19,7 +19,7 @@ suspend fun TelegramBot.sendLocation( horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -54,7 +54,7 @@ suspend fun TelegramBot.sendLocation( horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -88,7 +88,7 @@ suspend fun TelegramBot.sendLocation( horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -121,7 +121,7 @@ suspend fun TelegramBot.sendLocation( horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -155,7 +155,7 @@ suspend fun TelegramBot.sendLiveLocation( horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -174,7 +174,7 @@ suspend fun TelegramBot.sendLiveLocation( horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -194,7 +194,7 @@ suspend fun TelegramBot.sendLiveLocation( horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -213,7 +213,7 @@ suspend fun TelegramBot.sendLiveLocation( horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendMessage.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendMessage.kt index 0c267d18cd..9bdc7b1cbb 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendMessage.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendMessage.kt @@ -20,7 +20,7 @@ suspend fun TelegramBot.sendMessage( text: String, parseMode: ParseMode? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -50,7 +50,7 @@ suspend fun TelegramBot.sendTextMessage( text: String, parseMode: ParseMode? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -69,7 +69,7 @@ suspend fun TelegramBot.sendTextMessage( text: String, parseMode: ParseMode? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -87,7 +87,7 @@ suspend fun TelegramBot.sendMessage( text: String, parseMode: ParseMode? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -103,7 +103,7 @@ suspend fun TelegramBot.sendMessage( chatId: ChatIdentifier, entities: TextSourcesList, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -121,7 +121,7 @@ suspend fun TelegramBot.sendMessage( chatId: ChatIdentifier, separator: TextSource? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -139,7 +139,7 @@ suspend fun TelegramBot.sendMessage( chatId: ChatIdentifier, separator: String, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -156,7 +156,7 @@ suspend fun TelegramBot.sendTextMessage( chatId: ChatIdentifier, entities: TextSourcesList, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -174,7 +174,7 @@ suspend fun TelegramBot.sendTextMessage( chatId: ChatIdentifier, separator: TextSource? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -192,7 +192,7 @@ suspend fun TelegramBot.sendTextMessage( chatId: ChatIdentifier, separator: String, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -209,7 +209,7 @@ suspend fun TelegramBot.sendMessage( chat: Chat, entities: TextSourcesList, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -225,7 +225,7 @@ suspend fun TelegramBot.sendMessage( chat: Chat, separator: TextSource? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -243,7 +243,7 @@ suspend fun TelegramBot.sendMessage( chat: Chat, separator: String, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -261,7 +261,7 @@ suspend fun TelegramBot.sendTextMessage( chat: Chat, entities: TextSourcesList, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -277,7 +277,7 @@ suspend fun TelegramBot.sendTextMessage( chat: Chat, separator: TextSource? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -295,7 +295,7 @@ suspend fun TelegramBot.sendTextMessage( chat: Chat, separator: String, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendStaticLocation.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendStaticLocation.kt index 6f545ec428..d201c7cb42 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendStaticLocation.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendStaticLocation.kt @@ -8,6 +8,7 @@ import dev.inmo.tgbotapi.types.MessageThreadId import dev.inmo.tgbotapi.types.buttons.KeyboardMarkup import dev.inmo.tgbotapi.types.chat.Chat import dev.inmo.tgbotapi.types.location.Location +import dev.inmo.tgbotapi.types.threadId /** * @param replyMarkup Some of [KeyboardMarkup]. See [dev.inmo.tgbotapi.extensions.utils.types.buttons.replyKeyboard] or @@ -17,7 +18,7 @@ suspend fun TelegramBot.sendLocation( chatId: ChatIdentifier, latitude: Double, longitude: Double, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -44,7 +45,7 @@ suspend fun TelegramBot.sendLocation( suspend fun TelegramBot.sendLocation( chatId: ChatIdentifier, location: Location, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -70,7 +71,7 @@ suspend fun TelegramBot.sendLocation( chat: Chat, latitude: Double, longitude: Double, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -95,7 +96,7 @@ suspend fun TelegramBot.sendLocation( suspend fun TelegramBot.sendLocation( chat: Chat, location: Location, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -121,7 +122,7 @@ suspend fun TelegramBot.sendStaticLocation( chatId: ChatIdentifier, latitude: Double, longitude: Double, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -136,7 +137,7 @@ suspend fun TelegramBot.sendStaticLocation( suspend fun TelegramBot.sendStaticLocation( chatId: ChatIdentifier, location: Location, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -152,7 +153,7 @@ suspend fun TelegramBot.sendStaticLocation( chat: Chat, latitude: Double, longitude: Double, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -167,7 +168,7 @@ suspend fun TelegramBot.sendStaticLocation( suspend fun TelegramBot.sendStaticLocation( chat: Chat, location: Location, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendVenue.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendVenue.kt index 4549d6afcf..1025ac993f 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendVenue.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/SendVenue.kt @@ -22,7 +22,7 @@ suspend fun TelegramBot.sendVenue( foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -62,7 +62,7 @@ suspend fun TelegramBot.sendVenue( foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -99,7 +99,7 @@ suspend fun TelegramBot.sendVenue( foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -136,7 +136,7 @@ suspend fun TelegramBot.sendVenue( foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -167,7 +167,7 @@ suspend fun TelegramBot.sendVenue( suspend fun TelegramBot.sendVenue( chatId: ChatIdentifier, venue: Venue, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -193,7 +193,7 @@ suspend fun TelegramBot.sendVenue( suspend fun TelegramBot.sendVenue( chat: Chat, venue: Venue, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, 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 6f933f48b6..45cdac1c67 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 @@ -59,7 +59,7 @@ suspend fun TelegramBot.send( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -80,7 +80,7 @@ suspend fun TelegramBot.send( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -100,7 +100,7 @@ suspend fun TelegramBot.send( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -120,7 +120,7 @@ suspend fun TelegramBot.send( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -139,7 +139,7 @@ suspend fun TelegramBot.send( text: String? = null, parseMode: ParseMode? = null, title: String? = audio.title, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -158,7 +158,7 @@ suspend fun TelegramBot.send( text: String? = null, parseMode: ParseMode? = null, title: String? = audio.title, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -176,7 +176,7 @@ suspend inline fun TelegramBot.send( audio: AudioFile, entities: TextSourcesList, title: String? = audio.title, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -194,7 +194,7 @@ suspend inline fun TelegramBot.send( audio: AudioFile, entities: TextSourcesList, title: String? = audio.title, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -212,7 +212,7 @@ suspend fun TelegramBot.send( phoneNumber: String, firstName: String, lastName: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -228,7 +228,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, contact: Contact, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -246,7 +246,7 @@ suspend fun TelegramBot.send( phoneNumber: String, firstName: String, lastName: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -262,7 +262,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, contact: Contact, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -278,7 +278,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, animationType: DiceAnimationType, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -294,7 +294,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, animationType: DiceAnimationType, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -312,7 +312,7 @@ suspend fun TelegramBot.send( document: DocumentFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -331,7 +331,7 @@ suspend fun TelegramBot.send( document: DocumentFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -349,7 +349,7 @@ suspend inline fun TelegramBot.send( chatId: ChatIdentifier, document: DocumentFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -367,7 +367,7 @@ suspend inline fun TelegramBot.send( chat: Chat, document: DocumentFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -384,7 +384,7 @@ suspend inline fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, game: Game, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -400,7 +400,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, game: Game, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -432,7 +432,7 @@ suspend fun TelegramBot.send( shouldSendPhoneNumberToProvider: Boolean = false, shouldSendEmailToProvider: Boolean = false, priceDependOnShipAddress: Boolean = false, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -464,13 +464,12 @@ suspend fun TelegramBot.send( shouldSendPhoneNumberToProvider: Boolean = false, shouldSendEmailToProvider: Boolean = false, priceDependOnShipAddress: Boolean = false, - threadId: MessageThreadId? = null, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: InlineKeyboardMarkup? = null -) = sendInvoice(user, title, description, payload, providerToken, currency, prices, maxTipAmount, suggestedTipAmounts, startParameter, providerData, requireName, requirePhoneNumber, requireEmail, requireShippingAddress, shouldSendPhoneNumberToProvider, shouldSendEmailToProvider, priceDependOnShipAddress, threadId, disableNotification, protectContent, replyToMessageId, allowSendingWithoutReply, replyMarkup) +) = sendInvoice(user, title, description, payload, providerToken, currency, prices, maxTipAmount, suggestedTipAmounts, startParameter, providerData, requireName, requirePhoneNumber, requireEmail, requireShippingAddress, shouldSendPhoneNumberToProvider, shouldSendEmailToProvider, priceDependOnShipAddress, disableNotification, protectContent, replyToMessageId, allowSendingWithoutReply, replyMarkup) /** * Will execute [sendStaticLocation] request @@ -481,7 +480,7 @@ suspend fun TelegramBot.send( chatId: ChatIdentifier, latitude: Double, longitude: Double, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -497,7 +496,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, location: StaticLocation, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -514,7 +513,7 @@ suspend fun TelegramBot.send( chat: Chat, latitude: Double, longitude: Double, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -530,7 +529,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, location: StaticLocation, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, allowSendingWithoutReply: Boolean? = null, @@ -548,7 +547,7 @@ suspend fun TelegramBot.send( text: String, parseMode: ParseMode? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -566,7 +565,7 @@ suspend fun TelegramBot.send( text: String, parseMode: ParseMode? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -583,7 +582,7 @@ suspend fun TelegramBot.send( chatId: ChatIdentifier, entities: TextSourcesList, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -599,7 +598,7 @@ suspend fun TelegramBot.send( chatId: ChatIdentifier, separator: TextSource? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -617,7 +616,7 @@ suspend fun TelegramBot.send( chatId: ChatIdentifier, separator: String, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -636,7 +635,7 @@ suspend fun TelegramBot.send( chat: Chat, entities: TextSourcesList, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -652,7 +651,7 @@ suspend fun TelegramBot.send( chat: Chat, separator: TextSource? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -670,7 +669,7 @@ suspend fun TelegramBot.send( chat: Chat, separator: String, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -689,7 +688,7 @@ suspend fun TelegramBot.send( photo: Photo, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -707,7 +706,7 @@ suspend fun TelegramBot.send( photo: Photo, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -725,7 +724,7 @@ suspend fun TelegramBot.send( photoSize: PhotoSize, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -743,7 +742,7 @@ suspend fun TelegramBot.send( photoSize: PhotoSize, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -760,7 +759,7 @@ suspend inline fun TelegramBot.send( chatId: ChatIdentifier, photo: Photo, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -777,7 +776,7 @@ suspend inline fun TelegramBot.send( chat: Chat, photo: Photo, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -794,7 +793,7 @@ suspend inline fun TelegramBot.send( chatId: ChatIdentifier, photoSize: PhotoSize, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -811,7 +810,7 @@ suspend inline fun TelegramBot.send( chat: Chat, photoSize: PhotoSize, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -832,7 +831,7 @@ suspend fun TelegramBot.send( isClosed: Boolean = false, allowMultipleAnswers: Boolean = false, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -854,7 +853,7 @@ suspend fun TelegramBot.send( isAnonymous: Boolean = poll.isAnonymous, allowMultipleAnswers: Boolean = poll.allowMultipleAnswers, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -875,7 +874,7 @@ suspend fun TelegramBot.send( isClosed: Boolean = false, allowMultipleAnswers: Boolean = false, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -897,7 +896,7 @@ suspend fun TelegramBot.send( isAnonymous: Boolean = poll.isAnonymous, allowMultipleAnswers: Boolean = poll.allowMultipleAnswers, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -920,7 +919,7 @@ suspend fun TelegramBot.send( explanation: String? = null, parseMode: ParseMode? = null, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -943,7 +942,7 @@ suspend fun TelegramBot.send( explanation: String? = null, parseMode: ParseMode? = null, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -967,7 +966,7 @@ suspend fun TelegramBot.send( explanation: String? = null, parseMode: ParseMode? = null, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -993,7 +992,7 @@ suspend fun TelegramBot.send( explanation: String? = null, parseMode: ParseMode? = null, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1015,7 +1014,7 @@ suspend inline fun TelegramBot.send( isClosed: Boolean = false, entities: TextSourcesList, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1037,7 +1036,7 @@ suspend inline fun TelegramBot.send( isClosed: Boolean = false, entities: TextSourcesList, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1060,7 +1059,7 @@ suspend inline fun TelegramBot.send( isAnonymous: Boolean = quizPoll.isAnonymous, entities: TextSourcesList, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1083,7 +1082,7 @@ suspend inline fun TelegramBot.send( isAnonymous: Boolean = quizPoll.isAnonymous, entities: TextSourcesList, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1099,7 +1098,7 @@ suspend inline fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, sticker: Sticker, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1115,7 +1114,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, sticker: Sticker, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1137,7 +1136,7 @@ suspend fun TelegramBot.send( horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1171,7 +1170,7 @@ suspend fun TelegramBot.send( horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1194,7 +1193,7 @@ suspend fun TelegramBot.send( horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1216,7 +1215,7 @@ suspend fun TelegramBot.send( horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1241,7 +1240,7 @@ suspend fun TelegramBot.send( foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1264,7 +1263,7 @@ suspend fun TelegramBot.send( foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1286,7 +1285,7 @@ suspend fun TelegramBot.send( foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1308,7 +1307,7 @@ suspend fun TelegramBot.send( foursquareType: FoursquareType? = null, googlePlaceId: GooglePlaceId? = null, googlePlaceType: GooglePlaceType? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1324,7 +1323,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, venue: Venue, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1340,7 +1339,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, venue: Venue, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1358,7 +1357,7 @@ suspend fun TelegramBot.send( video: VideoFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1376,7 +1375,7 @@ suspend fun TelegramBot.send( video: VideoFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1393,7 +1392,7 @@ suspend inline fun TelegramBot.send( chatId: ChatIdentifier, video: VideoFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1410,7 +1409,7 @@ suspend inline fun TelegramBot.send( chat: Chat, video: VideoFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1426,7 +1425,7 @@ suspend inline fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, videoNote: VideoNoteFile, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1442,7 +1441,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, videoNote: VideoNoteFile, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1460,7 +1459,7 @@ suspend fun TelegramBot.send( voice: VoiceFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1478,7 +1477,7 @@ suspend fun TelegramBot.send( voice: VoiceFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1495,7 +1494,7 @@ suspend inline fun TelegramBot.send( chatId: ChatIdentifier, voice: VoiceFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1512,7 +1511,7 @@ suspend inline fun TelegramBot.send( chat: Chat, voice: VoiceFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1528,7 +1527,7 @@ suspend inline fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1543,7 +1542,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1558,7 +1557,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1573,7 +1572,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1587,7 +1586,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1601,7 +1600,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1615,7 +1614,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1629,7 +1628,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1643,7 +1642,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1657,7 +1656,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1671,7 +1670,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1685,7 +1684,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1699,7 +1698,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1713,7 +1712,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1727,7 +1726,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -1741,7 +1740,7 @@ suspend fun TelegramBot.send( suspend fun TelegramBot.send( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/games/SendGame.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/games/SendGame.kt index 2982753287..10e26f0527 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/games/SendGame.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/games/SendGame.kt @@ -8,6 +8,7 @@ import dev.inmo.tgbotapi.types.MessageThreadId import dev.inmo.tgbotapi.types.buttons.KeyboardMarkup import dev.inmo.tgbotapi.types.chat.Chat import dev.inmo.tgbotapi.types.games.Game +import dev.inmo.tgbotapi.types.threadId /** * @param replyMarkup Some of [KeyboardMarkup]. See [dev.inmo.tgbotapi.extensions.utils.types.buttons.replyKeyboard] or @@ -16,7 +17,7 @@ import dev.inmo.tgbotapi.types.games.Game suspend fun TelegramBot.sendGame( chatId: ChatIdentifier, gameShortName: String, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -35,7 +36,7 @@ suspend fun TelegramBot.sendGame( suspend fun TelegramBot.sendGame( chat: Chat, gameShortName: String, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -52,7 +53,7 @@ suspend fun TelegramBot.sendGame( suspend fun TelegramBot.sendGame( chatId: ChatIdentifier, game: Game, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -69,7 +70,7 @@ suspend fun TelegramBot.sendGame( suspend fun TelegramBot.sendGame( chat: Chat, game: Game, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendAnimation.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendAnimation.kt index 1cc5ccffab..edfb5dfb29 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendAnimation.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendAnimation.kt @@ -11,6 +11,7 @@ import dev.inmo.tgbotapi.types.message.ParseMode import dev.inmo.tgbotapi.types.buttons.KeyboardMarkup import dev.inmo.tgbotapi.types.chat.Chat import dev.inmo.tgbotapi.types.files.AnimationFile +import dev.inmo.tgbotapi.types.threadId /** * @param replyMarkup Some of [KeyboardMarkup]. See [dev.inmo.tgbotapi.extensions.utils.types.buttons.replyKeyboard] or @@ -25,7 +26,7 @@ suspend fun TelegramBot.sendAnimation( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -62,7 +63,7 @@ suspend fun TelegramBot.sendAnimation( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -85,7 +86,7 @@ suspend fun TelegramBot.sendAnimation( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -105,7 +106,7 @@ suspend fun TelegramBot.sendAnimation( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -126,7 +127,7 @@ suspend fun TelegramBot.sendAnimation( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -161,7 +162,7 @@ suspend fun TelegramBot.sendAnimation( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -183,7 +184,7 @@ suspend fun TelegramBot.sendAnimation( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -202,7 +203,7 @@ suspend fun TelegramBot.sendAnimation( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendAudio.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendAudio.kt index a0e00630fd..a6752e3470 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendAudio.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendAudio.kt @@ -11,6 +11,7 @@ import dev.inmo.tgbotapi.types.message.ParseMode import dev.inmo.tgbotapi.types.buttons.KeyboardMarkup import dev.inmo.tgbotapi.types.chat.Chat import dev.inmo.tgbotapi.types.files.AudioFile +import dev.inmo.tgbotapi.types.threadId /** * @param replyMarkup Some of [KeyboardMarkup]. See [dev.inmo.tgbotapi.extensions.utils.types.buttons.replyKeyboard] or @@ -25,7 +26,7 @@ suspend fun TelegramBot.sendAudio( duration: Long? = null, performer: String? = null, title: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -63,7 +64,7 @@ suspend fun TelegramBot.sendAudio( duration: Long? = null, performer: String? = null, title: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -81,7 +82,7 @@ suspend fun TelegramBot.sendAudio( text: String? = null, parseMode: ParseMode? = null, title: String? = audio.title, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -99,7 +100,7 @@ suspend fun TelegramBot.sendAudio( text: String? = null, parseMode: ParseMode? = null, title: String? = audio.title, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -120,7 +121,7 @@ suspend inline fun TelegramBot.sendAudio( duration: Long? = null, performer: String? = null, title: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -156,7 +157,7 @@ suspend inline fun TelegramBot.sendAudio( duration: Long? = null, performer: String? = null, title: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -173,7 +174,7 @@ suspend inline fun TelegramBot.sendAudio( audio: AudioFile, entities: TextSourcesList, title: String? = audio.title, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -190,7 +191,7 @@ suspend inline fun TelegramBot.sendAudio( audio: AudioFile, entities: TextSourcesList, title: String? = audio.title, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendDocument.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendDocument.kt index d23bb801da..7173129726 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendDocument.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendDocument.kt @@ -11,6 +11,7 @@ import dev.inmo.tgbotapi.types.message.ParseMode import dev.inmo.tgbotapi.types.buttons.KeyboardMarkup import dev.inmo.tgbotapi.types.chat.Chat import dev.inmo.tgbotapi.types.files.DocumentFile +import dev.inmo.tgbotapi.types.threadId /** * @param replyMarkup Some of [KeyboardMarkup]. See [dev.inmo.tgbotapi.extensions.utils.types.buttons.replyKeyboard] or @@ -22,7 +23,7 @@ suspend fun TelegramBot.sendDocument( thumb: InputFile? = null, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -56,7 +57,7 @@ suspend fun TelegramBot.sendDocument( thumb: InputFile? = null, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -74,7 +75,7 @@ suspend fun TelegramBot.sendDocument( document: DocumentFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -94,7 +95,7 @@ suspend fun TelegramBot.sendDocument( document: DocumentFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -112,7 +113,7 @@ suspend inline fun TelegramBot.sendDocument( document: InputFile, thumb: InputFile? = null, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -144,7 +145,7 @@ suspend inline fun TelegramBot.sendDocument( document: InputFile, thumb: InputFile? = null, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -161,7 +162,7 @@ suspend inline fun TelegramBot.sendDocument( chatId: ChatIdentifier, document: DocumentFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -180,7 +181,7 @@ suspend inline fun TelegramBot.sendDocument( chat: Chat, document: DocumentFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendMediaGroup.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendMediaGroup.kt index c89915764d..5b24700c0c 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendMediaGroup.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendMediaGroup.kt @@ -11,6 +11,7 @@ import dev.inmo.tgbotapi.types.message.content.MediaGroupPartContent import dev.inmo.tgbotapi.types.message.content.VisualMediaGroupPartContent import dev.inmo.tgbotapi.types.message.content.AudioContent import dev.inmo.tgbotapi.types.message.content.DocumentContent +import dev.inmo.tgbotapi.types.threadId import dev.inmo.tgbotapi.utils.RiskFeature import kotlin.jvm.JvmName @@ -21,7 +22,7 @@ import kotlin.jvm.JvmName suspend fun TelegramBot.sendMediaGroup( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -39,7 +40,7 @@ suspend fun TelegramBot.sendMediaGroup( suspend fun TelegramBot.sendMediaGroup( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -56,7 +57,7 @@ suspend fun TelegramBot.sendMediaGroup( suspend fun TelegramBot.sendMediaGroup( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -73,7 +74,7 @@ suspend fun TelegramBot.sendMediaGroup( suspend fun TelegramBot.sendMediaGroup( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -88,7 +89,7 @@ suspend fun TelegramBot.sendMediaGroup( suspend fun TelegramBot.sendPlaylist( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -105,7 +106,7 @@ suspend fun TelegramBot.sendPlaylist( suspend fun TelegramBot.sendPlaylist( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -121,7 +122,7 @@ suspend fun TelegramBot.sendPlaylist( suspend fun TelegramBot.sendPlaylist( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -137,7 +138,7 @@ suspend fun TelegramBot.sendPlaylist( suspend fun TelegramBot.sendPlaylist( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -152,7 +153,7 @@ suspend fun TelegramBot.sendPlaylist( suspend fun TelegramBot.sendDocumentsGroup( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -169,7 +170,7 @@ suspend fun TelegramBot.sendDocumentsGroup( suspend fun TelegramBot.sendDocumentsGroup( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -185,7 +186,7 @@ suspend fun TelegramBot.sendDocumentsGroup( suspend fun TelegramBot.sendDocumentsGroup( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -201,7 +202,7 @@ suspend fun TelegramBot.sendDocumentsGroup( suspend fun TelegramBot.sendDocumentsGroup( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -216,7 +217,7 @@ suspend fun TelegramBot.sendDocumentsGroup( suspend fun TelegramBot.sendVisualMediaGroup( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -233,7 +234,7 @@ suspend fun TelegramBot.sendVisualMediaGroup( suspend fun TelegramBot.sendVisualMediaGroup( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -249,7 +250,7 @@ suspend fun TelegramBot.sendVisualMediaGroup( suspend fun TelegramBot.sendVisualMediaGroup( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -265,7 +266,7 @@ suspend fun TelegramBot.sendVisualMediaGroup( suspend fun TelegramBot.sendVisualMediaGroup( chat: Chat, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendPhoto.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendPhoto.kt index e876006f71..c091231391 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendPhoto.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendPhoto.kt @@ -11,6 +11,7 @@ import dev.inmo.tgbotapi.types.message.ParseMode import dev.inmo.tgbotapi.types.buttons.KeyboardMarkup import dev.inmo.tgbotapi.types.chat.Chat import dev.inmo.tgbotapi.types.files.* +import dev.inmo.tgbotapi.types.threadId /** * @param replyMarkup Some of [KeyboardMarkup]. See [dev.inmo.tgbotapi.extensions.utils.types.buttons.replyKeyboard] or @@ -21,7 +22,7 @@ suspend fun TelegramBot.sendPhoto( fileId: InputFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -51,7 +52,7 @@ suspend fun TelegramBot.sendPhoto( fileId: InputFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -68,7 +69,7 @@ suspend fun TelegramBot.sendPhoto( photo: Photo, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -85,7 +86,7 @@ suspend fun TelegramBot.sendPhoto( photo: Photo, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -102,7 +103,7 @@ suspend fun TelegramBot.sendPhoto( photoSize: PhotoSize, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -119,7 +120,7 @@ suspend fun TelegramBot.sendPhoto( photoSize: PhotoSize, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -136,7 +137,7 @@ suspend inline fun TelegramBot.sendPhoto( chatId: ChatIdentifier, fileId: InputFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -164,7 +165,7 @@ suspend inline fun TelegramBot.sendPhoto( chat: Chat, fileId: InputFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -180,7 +181,7 @@ suspend inline fun TelegramBot.sendPhoto( chatId: ChatIdentifier, photo: Photo, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -196,7 +197,7 @@ suspend inline fun TelegramBot.sendPhoto( chat: Chat, photo: Photo, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -212,7 +213,7 @@ suspend inline fun TelegramBot.sendPhoto( chatId: ChatIdentifier, photoSize: PhotoSize, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -228,7 +229,7 @@ suspend inline fun TelegramBot.sendPhoto( chat: Chat, photoSize: PhotoSize, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendSticker.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendSticker.kt index d77908e86f..f3e4812bd5 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendSticker.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendSticker.kt @@ -9,6 +9,7 @@ import dev.inmo.tgbotapi.types.MessageThreadId import dev.inmo.tgbotapi.types.buttons.KeyboardMarkup import dev.inmo.tgbotapi.types.chat.Chat import dev.inmo.tgbotapi.types.files.Sticker +import dev.inmo.tgbotapi.types.threadId /** * @param replyMarkup Some of [KeyboardMarkup]. See [dev.inmo.tgbotapi.extensions.utils.types.buttons.replyKeyboard] or @@ -17,7 +18,7 @@ import dev.inmo.tgbotapi.types.files.Sticker suspend fun TelegramBot.sendSticker( chatId: ChatIdentifier, sticker: InputFile, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -34,7 +35,7 @@ suspend fun TelegramBot.sendSticker( suspend fun TelegramBot.sendSticker( chat: Chat, sticker: InputFile, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -49,7 +50,7 @@ suspend fun TelegramBot.sendSticker( suspend fun TelegramBot.sendSticker( chatId: ChatIdentifier, sticker: Sticker, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -64,7 +65,7 @@ suspend fun TelegramBot.sendSticker( suspend fun TelegramBot.sendSticker( chat: Chat, sticker: Sticker, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendVideo.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendVideo.kt index 9c9ba07fb4..c9123bab69 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendVideo.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendVideo.kt @@ -11,6 +11,7 @@ import dev.inmo.tgbotapi.types.message.ParseMode import dev.inmo.tgbotapi.types.buttons.KeyboardMarkup import dev.inmo.tgbotapi.types.chat.Chat import dev.inmo.tgbotapi.types.files.VideoFile +import dev.inmo.tgbotapi.types.threadId /** * @param replyMarkup Some of [KeyboardMarkup]. See [dev.inmo.tgbotapi.extensions.utils.types.buttons.replyKeyboard] or @@ -25,7 +26,7 @@ suspend fun TelegramBot.sendVideo( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -60,7 +61,7 @@ suspend fun TelegramBot.sendVideo( video: VideoFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -81,7 +82,7 @@ suspend fun TelegramBot.sendVideo( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -99,7 +100,7 @@ suspend fun TelegramBot.sendVideo( video: VideoFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -119,7 +120,7 @@ suspend inline fun TelegramBot.sendVideo( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -152,7 +153,7 @@ suspend inline fun TelegramBot.sendVideo( chatId: ChatIdentifier, video: VideoFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -172,7 +173,7 @@ suspend inline fun TelegramBot.sendVideo( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -189,7 +190,7 @@ suspend inline fun TelegramBot.sendVideo( chat: Chat, video: VideoFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendVideoNote.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendVideoNote.kt index b7c101a6ca..5eb4b848b3 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendVideoNote.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendVideoNote.kt @@ -9,6 +9,7 @@ import dev.inmo.tgbotapi.types.MessageThreadId import dev.inmo.tgbotapi.types.buttons.KeyboardMarkup import dev.inmo.tgbotapi.types.chat.Chat import dev.inmo.tgbotapi.types.files.VideoNoteFile +import dev.inmo.tgbotapi.types.threadId /** * @param replyMarkup Some of [KeyboardMarkup]. See [dev.inmo.tgbotapi.extensions.utils.types.buttons.replyKeyboard] or @@ -20,7 +21,7 @@ suspend fun TelegramBot.sendVideoNote( thumb: InputFile? = null, duration: Long? = null, size: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -49,7 +50,7 @@ suspend fun TelegramBot.sendVideoNote( suspend fun TelegramBot.sendVideoNote( chatId: ChatIdentifier, videoNote: VideoNoteFile, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -69,7 +70,7 @@ suspend fun TelegramBot.sendVideoNote( thumb: InputFile? = null, duration: Long? = null, size: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -84,7 +85,7 @@ suspend fun TelegramBot.sendVideoNote( suspend fun TelegramBot.sendVideoNote( chat: Chat, videoNote: VideoNoteFile, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendVoice.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendVoice.kt index 641bb1a953..3be4a2435f 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendVoice.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/media/SendVoice.kt @@ -55,7 +55,7 @@ suspend fun TelegramBot.sendVoice( text: String? = null, parseMode: ParseMode? = null, duration: Long? = null, - threadId: MessageThreadId? = chatId.threadId, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -91,7 +91,7 @@ suspend fun TelegramBot.sendVoice( voice: VoiceFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = chatId.threadId, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -139,7 +139,7 @@ suspend inline fun TelegramBot.sendVoice( voice: InputFile, entities: TextSourcesList, duration: Long? = null, - threadId: MessageThreadId? = chatId.threadId, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -172,7 +172,7 @@ suspend inline fun TelegramBot.sendVoice( chat: Chat, voice: VoiceFile, entities: TextSourcesList, - threadId: MessageThreadId? = chatId.threadId, + threadId: MessageThreadId? = chat.id.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/payments/SendInvoice.kt b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/payments/SendInvoice.kt index 8a0888298d..6fa583d15a 100644 --- a/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/payments/SendInvoice.kt +++ b/tgbotapi.api/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/api/send/payments/SendInvoice.kt @@ -64,10 +64,9 @@ suspend fun TelegramBot.sendInvoice( shouldSendPhoneNumberToProvider: Boolean = false, shouldSendEmailToProvider: Boolean = false, priceDependOnShipAddress: Boolean = false, - threadId: MessageThreadId? = null, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, allowSendingWithoutReply: Boolean? = null, replyMarkup: InlineKeyboardMarkup? = null -) = sendInvoice(user.id, title, description, payload, providerToken, currency, prices, maxTipAmount, suggestedTipAmounts, startParameter, providerData, requireName, requirePhoneNumber, requireEmail, requireShippingAddress, shouldSendPhoneNumberToProvider, shouldSendEmailToProvider, priceDependOnShipAddress, threadId, disableNotification, protectContent, replyToMessageId, allowSendingWithoutReply, replyMarkup) +) = sendInvoice(user.id, title, description, payload, providerToken, currency, prices, maxTipAmount, suggestedTipAmounts, startParameter, providerData, requireName, requirePhoneNumber, requireEmail, requireShippingAddress, shouldSendPhoneNumberToProvider, shouldSendEmailToProvider, priceDependOnShipAddress, null, disableNotification, protectContent, replyToMessageId, allowSendingWithoutReply, replyMarkup) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/ForwardMessage.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/ForwardMessage.kt index aa0aae7480..eca9e8706a 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/ForwardMessage.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/ForwardMessage.kt @@ -20,7 +20,7 @@ data class ForwardMessage( @SerialName(messageIdField) override val messageId: MessageId, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = toChatId.threadId, @SerialName(disableNotificationField) val disableNotification: Boolean = false, @SerialName(protectContentField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/CopyMessage.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/CopyMessage.kt index 39a9def570..710d152811 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/CopyMessage.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/CopyMessage.kt @@ -27,7 +27,7 @@ fun CopyMessage( messageId: MessageId, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -53,7 +53,7 @@ fun CopyMessage( fromChatId: ChatIdentifier, messageId: MessageId, entities: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -80,7 +80,7 @@ fun CopyMessage( toChatId: ChatIdentifier, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -106,7 +106,7 @@ fun CopyMessage( messageId: MessageId, toChatId: ChatIdentifier, entities: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = toChatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -142,7 +142,7 @@ data class CopyMessage internal constructor( @SerialName(captionEntitiesField) private val rawEntities: List? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = toChatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendContact.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendContact.kt index cf12d44db3..2d10e109df 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendContact.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendContact.kt @@ -23,7 +23,7 @@ data class SendContact( @SerialName(lastNameField) val lastName: String? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) @@ -40,7 +40,7 @@ data class SendContact( constructor( chatId: ChatIdentifier, contact: Contact, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -68,7 +68,7 @@ data class SendContact( fun Contact.toRequest( chatId: ChatIdentifier, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendLocation.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendLocation.kt index 8631b754e2..43d3cafa00 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendLocation.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendLocation.kt @@ -18,7 +18,7 @@ fun SendLocation( chatId: ChatIdentifier, latitude: Double, longitude: Double, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -44,7 +44,7 @@ fun SendStaticLocation( chatId: ChatIdentifier, latitude: Double, longitude: Double, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -60,7 +60,7 @@ fun SendLiveLocation( horizontalAccuracy: Meters? = null, heading: Degrees? = null, proximityAlertRadius: Meters? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -99,7 +99,7 @@ data class SendLocation internal constructor( @SerialName(proximityAlertRadiusField) override val proximityAlertRadius: Meters? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendMessage.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendMessage.kt index 985c370832..85e69e7406 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendMessage.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendMessage.kt @@ -25,7 +25,7 @@ fun SendTextMessage( text: String, parseMode: ParseMode? = null, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -49,7 +49,7 @@ fun SendTextMessage( chatId: ChatIdentifier, entities: TextSourcesList, disableWebPagePreview: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -80,7 +80,7 @@ data class SendTextMessage internal constructor( @SerialName(entitiesField) private val rawEntities: List? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableWebPagePreviewField) override val disableWebPagePreview: Boolean? = null, @SerialName(disableNotificationField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendVenue.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendVenue.kt index ebfc14d123..2a4d0af6ca 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendVenue.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendVenue.kt @@ -33,7 +33,7 @@ data class SendVenue( @SerialName(googlePlaceTypeField) val googlePlaceType: GooglePlaceType? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) @@ -52,7 +52,7 @@ data class SendVenue( constructor( chatId: ChatIdentifier, venue: Venue, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -85,7 +85,7 @@ data class SendVenue( fun Venue.toRequest( chatId: ChatIdentifier, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/games/SendGame.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/games/SendGame.kt index b73451db82..43769a00a3 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/games/SendGame.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/games/SendGame.kt @@ -19,7 +19,7 @@ data class SendGame ( @SerialName(gameShortNameField) val gameShortName: String, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendAnimation.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendAnimation.kt index 2dd7f07681..576ab84087 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendAnimation.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendAnimation.kt @@ -28,7 +28,7 @@ fun SendAnimation( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -76,7 +76,7 @@ fun SendAnimation( duration: Long? = null, width: Int? = null, height: Int? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -140,7 +140,7 @@ data class SendAnimationData internal constructor( @SerialName(heightField) override val height: Int? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendAudio.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendAudio.kt index ea74af2e3c..b819e076af 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendAudio.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendAudio.kt @@ -29,7 +29,7 @@ fun SendAudio( duration: Long? = null, performer: String? = null, title: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -77,7 +77,7 @@ fun SendAudio( duration: Long? = null, performer: String? = null, title: String? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -141,7 +141,7 @@ data class SendAudioData internal constructor( @SerialName(titleField) override val title: String? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendDocument.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendDocument.kt index 977ac85e49..35b2ab3d93 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendDocument.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendDocument.kt @@ -34,7 +34,7 @@ fun SendDocument( thumb: InputFile? = null, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -87,7 +87,7 @@ fun SendDocument( document: InputFile, thumb: InputFile? = null, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -153,7 +153,7 @@ data class SendDocumentData internal constructor( @SerialName(captionEntitiesField) private val rawEntities: List? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendMediaGroup.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendMediaGroup.kt index c3c599aab9..506e7934fd 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendMediaGroup.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendMediaGroup.kt @@ -32,7 +32,7 @@ const val rawSendingMediaGroupsWarning = "Media groups contains restrictions rel fun SendMediaGroup( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -82,7 +82,7 @@ fun SendMediaGroup( inline fun SendPlaylist( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -98,7 +98,7 @@ inline fun SendPlaylist( inline fun SendDocumentsGroup( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -115,7 +115,7 @@ inline fun SendDocumentsGroup( inline fun SendVisualMediaGroup( chatId: ChatIdentifier, media: List, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -143,7 +143,7 @@ data class SendMediaGroupData internal constructor( override val chatId: ChatIdentifier, val media: List = emptyList(), @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendPhoto.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendPhoto.kt index 6a65961780..e2a7dde628 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendPhoto.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendPhoto.kt @@ -23,7 +23,7 @@ fun SendPhoto( photo: InputFile, text: String? = null, parseMode: ParseMode? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -55,7 +55,7 @@ fun SendPhoto( chatId: ChatIdentifier, photo: InputFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -99,7 +99,7 @@ data class SendPhotoData internal constructor( @SerialName(captionEntitiesField) private val rawEntities: List? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendSticker.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendSticker.kt index a29ccb529b..71bad4d3b8 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendSticker.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendSticker.kt @@ -15,7 +15,7 @@ import kotlinx.serialization.json.JsonObject fun SendSticker( chatId: ChatIdentifier, sticker: InputFile, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -47,7 +47,7 @@ data class SendStickerByFileId internal constructor( @SerialName(stickerField) val sticker: FileId? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendVideo.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendVideo.kt index c3c3923cff..8f78a4c37b 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendVideo.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendVideo.kt @@ -29,7 +29,7 @@ fun SendVideo( width: Int? = null, height: Int? = null, supportStreaming: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -79,7 +79,7 @@ fun SendVideo( width: Int? = null, height: Int? = null, supportStreaming: Boolean? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -146,7 +146,7 @@ data class SendVideoData internal constructor( @SerialName(supportStreamingField) val supportStreaming: Boolean? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendVideoNote.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendVideoNote.kt index 0ef8e8d090..d80bd0679b 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendVideoNote.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendVideoNote.kt @@ -17,7 +17,7 @@ fun SendVideoNote( thumb: InputFile? = null, duration: Long? = null, size: Int? = null, // in documentation - length (size of video side) - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -69,7 +69,7 @@ data class SendVideoNoteData internal constructor( @SerialName(lengthField) override val width: Int? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendVoice.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendVoice.kt index a84e655594..900632aea1 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendVoice.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendVoice.kt @@ -25,7 +25,7 @@ fun SendVoice( text: String? = null, parseMode: ParseMode? = null, duration: Long? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -64,7 +64,7 @@ fun SendVoice( chatId: ChatIdentifier, voice: InputFile, entities: TextSourcesList, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, duration: Long? = null, disableNotification: Boolean = false, protectContent: Boolean = false, @@ -118,7 +118,7 @@ data class SendVoiceData internal constructor( @SerialName(durationField) override val duration: Long? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/polls/SendPoll.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/polls/SendPoll.kt index 8982be33d4..19f24ccc85 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/polls/SendPoll.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/polls/SendPoll.kt @@ -48,7 +48,7 @@ fun SendPoll( options: List, isAnonymous: Boolean = true, isClosed: Boolean = false, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -74,7 +74,7 @@ fun SendPoll( */ fun Poll.createRequest( chatId: ChatIdentifier, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -202,7 +202,7 @@ data class SendRegularPoll( @SerialName(closeDateField) override val closeDate: LongSeconds?, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) @@ -232,7 +232,7 @@ fun SendRegularPoll( isClosed: Boolean = false, allowMultipleAnswers: Boolean = false, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -265,7 +265,7 @@ fun SendQuizPoll( explanation: String? = null, parseMode: ParseMode? = null, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -299,7 +299,7 @@ fun SendQuizPoll( isClosed: Boolean = false, entities: List, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -335,7 +335,7 @@ internal fun SendQuizPoll( parseMode: ParseMode? = null, rawEntities: List? = null, closeInfo: ScheduledCloseInfo? = null, - threadId: MessageThreadId? = null, + threadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, @@ -386,7 +386,7 @@ data class SendQuizPoll internal constructor( @SerialName(closeDateField) override val closeDate: LongSeconds? = null, @SerialName(messageThreadIdField) - override val threadId: MessageThreadId? = null, + override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, @SerialName(protectContentField) 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 ef52607f9f..42805b6d75 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 @@ -3,6 +3,7 @@ package dev.inmo.tgbotapi.types import dev.inmo.micro_utils.common.Warning import dev.inmo.tgbotapi.types.chat.User import dev.inmo.tgbotapi.utils.RiskFeature +import dev.inmo.tgbotapi.utils.internal.ClassCastsIncluded import kotlinx.serialization.KSerializer import kotlinx.serialization.Serializable import kotlinx.serialization.descriptors.SerialDescriptor @@ -15,6 +16,7 @@ import kotlin.jvm.JvmInline const val internalLinkBeginning = "https://t.me" @Serializable(ChatIdentifierSerializer::class) +@ClassCastsIncluded sealed interface ChatIdentifier /** diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/chat/Abstracts.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/chat/Abstracts.kt index 41d015e32a..0ddb3da843 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/chat/Abstracts.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/chat/Abstracts.kt @@ -25,7 +25,9 @@ sealed interface PublicChat : Chat { sealed interface SuperPublicChat : PublicChat, UsernameChat @Serializable(PreviewChatSerializer::class) -sealed interface ChannelChat : SuperPublicChat +sealed interface ChannelChat : SuperPublicChat { + override val id: ChatId +} @Serializable(PreviewChatSerializer::class) sealed interface GroupChat : PublicChat diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/chat/Extended.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/chat/Extended.kt index 2ab307b473..20ed573d34 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/chat/Extended.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/chat/Extended.kt @@ -10,7 +10,7 @@ import kotlinx.serialization.json.JsonObject @Serializable data class ExtendedChannelChatImpl( @SerialName(idField) - override val id: IdChatIdentifier, + override val id: ChatId, @SerialName(titleField) override val title: String, @SerialName(usernameField) @@ -33,7 +33,7 @@ data class ExtendedChannelChatImpl( @Serializable data class ExtendedGroupChatImpl( @SerialName(idField) - override val id: IdChatIdentifier, + override val id: ChatId, @SerialName(titleField) override val title: String, @SerialName(photoField) @@ -78,7 +78,7 @@ typealias ExtendedUser = ExtendedPrivateChatImpl @Serializable data class ExtendedSupergroupChatImpl( @SerialName(idField) - override val id: IdChatIdentifier, + override val id: ChatId, @SerialName(titleField) override val title: String, @SerialName(usernameField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/chat/Impls.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/chat/Impls.kt index 5bd1fc3037..e329c3b015 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/chat/Impls.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/chat/Impls.kt @@ -10,7 +10,7 @@ import kotlinx.serialization.Serializable @Serializable data class GroupChatImpl( @SerialName(idField) - override val id: IdChatIdentifier, + override val id: ChatId, @SerialName(titleField) override val title: String ) : GroupChat @@ -30,7 +30,7 @@ data class PrivateChatImpl( @Serializable data class SupergroupChatImpl( @SerialName(idField) - override val id: IdChatIdentifier, + override val id: ChatId, @SerialName(titleField) override val title: String, @SerialName(usernameField) @@ -50,7 +50,7 @@ data class ForumChatImpl( @Serializable data class ChannelChatImpl( @SerialName(idField) - override val id: IdChatIdentifier, + override val id: ChatId, @SerialName(titleField) override val title: String, @SerialName(usernameField) diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/message/content/Abstracts.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/message/content/Abstracts.kt index 4610948074..d7087fc5c7 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/message/content/Abstracts.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/types/message/content/Abstracts.kt @@ -9,6 +9,7 @@ import dev.inmo.tgbotapi.types.buttons.KeyboardMarkup import dev.inmo.tgbotapi.types.files.TelegramMediaFile import dev.inmo.tgbotapi.types.media.TelegramMedia import dev.inmo.tgbotapi.types.message.abstracts.* +import dev.inmo.tgbotapi.types.threadId import dev.inmo.tgbotapi.utils.RiskFeature import kotlinx.serialization.modules.* @@ -114,7 +115,7 @@ sealed interface MediaContent: MessageContent { sealed interface ResendableContent { fun createResend( chatId: ChatIdentifier, - messageThreadId: MessageThreadId? = null, + messageThreadId: MessageThreadId? = chatId.threadId, disableNotification: Boolean = false, protectContent: Boolean = false, replyToMessageId: MessageId? = null, diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/utils/extensions/ChatIdentifierWithThreadId.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/utils/extensions/ChatIdentifierWithThreadId.kt deleted file mode 100644 index d74d88de2d..0000000000 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/utils/extensions/ChatIdentifierWithThreadId.kt +++ /dev/null @@ -1,76 +0,0 @@ -package dev.inmo.tgbotapi.utils.extensions - -import dev.inmo.tgbotapi.types.IdChatIdentifier -import dev.inmo.tgbotapi.types.MessageThreadId -import dev.inmo.tgbotapi.types.message.abstracts.Message -import kotlinx.serialization.Serializable -import kotlin.Pair -import kotlin.jvm.JvmInline - -/** - * Union to keep both [IdChatIdentifier] and optionally [MessageThreadId] as an identifier of target for messages sending and - * other information - */ -sealed interface ChatIdWithThreadId { - val chatId: IdChatIdentifier - val threadId: MessageThreadId? - - /** - * Lightweight variant of [ChatIdWithThreadId] due to absence of any conversations - */ - @JvmInline - value class ByMessage( - val sourceMessage: Message - ) : ChatIdWithThreadId { - override val chatId: IdChatIdentifier - get() = sourceMessage.chat.id - override val threadId: MessageThreadId? - get() = sourceMessage.threadIdOrNull - } - - /** - * [Serializable] variant of [ChatIdWithThreadId] based on [Pair] of target [IdChatIdentifier] and [MessageThreadId] - * - * @see invoke - * @see serializable - */ - @Serializable - @JvmInline - value class ByPair( - val pair: Pair - ) : ChatIdWithThreadId { - override val chatId: IdChatIdentifier - get() = pair.first - override val threadId: MessageThreadId? - get() = pair.second - } - - companion object { - /** - * Creates lightweight [ByMessage] variant of [ChatIdWithThreadId] - */ - inline operator fun invoke(message: Message) = ByMessage(message) - - /** - * Creates [ByPair] variant of [ChatIdWithThreadId] using incoming [message] [Message.chat] and extension - * [Message.threadIdOrNull] - */ - inline fun serializable(message: Message) = ByPair(message.chat.id to message.threadIdOrNull) - - /** - * Creates [ByPair] variant of [ChatIdWithThreadId] using incoming [pair] - */ - inline fun serializable(pair: Pair) = ByPair(pair) - } -} -/** - * Creates [ChatIdWithThreadId.ByMessage] variant of [ChatIdWithThreadId] using [ChatIdWithThreadId.serializable] - */ -val Message.chatIdWithThreadId - get() = ChatIdWithThreadId(this) - -/** - * Creates [ChatIdWithThreadId.ByPair] variant of [ChatIdWithThreadId] using [ChatIdWithThreadId.serializable] - */ -val Message.serializableChatIdWithThreadId - get() = ChatIdWithThreadId.serializable(this) diff --git a/tgbotapi.utils/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/utils/ClassCastsNew.kt b/tgbotapi.utils/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/utils/ClassCastsNew.kt index 2f2929d78d..60b258a418 100644 --- a/tgbotapi.utils/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/utils/ClassCastsNew.kt +++ b/tgbotapi.utils/src/commonMain/kotlin/dev/inmo/tgbotapi/extensions/utils/ClassCastsNew.kt @@ -14,10 +14,14 @@ import dev.inmo.tgbotapi.abstracts.FromUser import dev.inmo.tgbotapi.abstracts.WithUser import dev.inmo.tgbotapi.requests.send.payments.CreateInvoiceLink import dev.inmo.tgbotapi.requests.send.payments.SendInvoice +import dev.inmo.tgbotapi.types.ChatId +import dev.inmo.tgbotapi.types.ChatIdWithThreadId +import dev.inmo.tgbotapi.types.ChatIdentifier import dev.inmo.tgbotapi.types.ChatInviteLink import dev.inmo.tgbotapi.types.ChatInviteLinkUnlimited import dev.inmo.tgbotapi.types.ChatInviteLinkWithJoinRequest import dev.inmo.tgbotapi.types.ChatInviteLinkWithLimitedMembers +import dev.inmo.tgbotapi.types.IdChatIdentifier import dev.inmo.tgbotapi.types.InlineQueries.ChosenInlineResult.BaseChosenInlineResult import dev.inmo.tgbotapi.types.InlineQueries.ChosenInlineResult.ChosenInlineResult import dev.inmo.tgbotapi.types.InlineQueries.ChosenInlineResult.LocationChosenInlineResult @@ -84,6 +88,7 @@ import dev.inmo.tgbotapi.types.InlineQueries.query.InlineQuery import dev.inmo.tgbotapi.types.InlineQueries.query.LocationInlineQuery import dev.inmo.tgbotapi.types.PrimaryInviteLink import dev.inmo.tgbotapi.types.SecondaryChatInviteLink +import dev.inmo.tgbotapi.types.Username import dev.inmo.tgbotapi.types.actions.BotAction import dev.inmo.tgbotapi.types.actions.ChooseStickerAction import dev.inmo.tgbotapi.types.actions.CustomBotAction @@ -986,6 +991,40 @@ public inline fun WithUser.ifMessageGameShortNameCallbackQuery(block: (MessageGameShortNameCallbackQuery) -> T): T? = messageGameShortNameCallbackQueryOrNull() ?.let(block) +public inline fun ChatIdentifier.idChatIdentifierOrNull(): IdChatIdentifier? = this as? + dev.inmo.tgbotapi.types.IdChatIdentifier + +public inline fun ChatIdentifier.idChatIdentifierOrThrow(): IdChatIdentifier = this as + dev.inmo.tgbotapi.types.IdChatIdentifier + +public inline fun ChatIdentifier.ifIdChatIdentifier(block: (IdChatIdentifier) -> T): T? = + idChatIdentifierOrNull() ?.let(block) + +public inline fun ChatIdentifier.chatIdOrNull(): ChatId? = this as? dev.inmo.tgbotapi.types.ChatId + +public inline fun ChatIdentifier.chatIdOrThrow(): ChatId = this as dev.inmo.tgbotapi.types.ChatId + +public inline fun ChatIdentifier.ifChatId(block: (ChatId) -> T): T? = chatIdOrNull() + ?.let(block) + +public inline fun ChatIdentifier.chatIdWithThreadIdOrNull(): ChatIdWithThreadId? = this as? + dev.inmo.tgbotapi.types.ChatIdWithThreadId + +public inline fun ChatIdentifier.chatIdWithThreadIdOrThrow(): ChatIdWithThreadId = this as + dev.inmo.tgbotapi.types.ChatIdWithThreadId + +public inline fun ChatIdentifier.ifChatIdWithThreadId(block: (ChatIdWithThreadId) -> T): T? = + chatIdWithThreadIdOrNull() ?.let(block) + +public inline fun ChatIdentifier.usernameOrNull(): Username? = this as? + dev.inmo.tgbotapi.types.Username + +public inline fun ChatIdentifier.usernameOrThrow(): Username = this as + dev.inmo.tgbotapi.types.Username + +public inline fun ChatIdentifier.ifUsername(block: (Username) -> T): T? = usernameOrNull() + ?.let(block) + public inline fun InlineQueryResult.inlineQueryResultArticleOrNull(): InlineQueryResultArticle? = this as? dev.inmo.tgbotapi.types.InlineQueries.InlineQueryResult.InlineQueryResultArticle