diff --git a/CHANGELOG.md b/CHANGELOG.md index 1402f894ec..48349c6ce7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,9 @@ ## 28.0.1 +* `Core`: + * Let all `OptionallyMessageThreadRequest` inheritors to use `@EncodeDefault` annotation to fix default value passing + ## 28.0.0 **THIS UPDATE CONTAINS BREAKING CHANGES** 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 e8b0d99219..07d3e15e5e 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,9 @@ data class ForwardMessage( val toChatId: ChatIdentifier, @SerialName(messageIdField) override val messageId: MessageId, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = toChatId.threadId, @SerialName(videoStartTimestampField) override val startTimestamp: Seconds? = null, diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/ForwardMessages.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/ForwardMessages.kt index 10379b47f3..1fe8468ab0 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/ForwardMessages.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/ForwardMessages.kt @@ -35,7 +35,9 @@ data class ForwardMessages ( val fromChatId: ChatIdentifier, @SerialName(messageIdsField) override val messageIds: List, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = toChatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, 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 b7ba7fa756..08de47d2c5 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 @@ -160,7 +160,9 @@ data class CopyMessage internal constructor( private val rawEntities: List? = null, @SerialName(showCaptionAboveMediaField) override val showCaptionAboveMedia: Boolean = false, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = toChatId.threadId, @SerialName(videoStartTimestampField) override val startTimestamp: Seconds? = null, diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/CopyMessages.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/CopyMessages.kt index 5837642af6..583d6f9849 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/CopyMessages.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/CopyMessages.kt @@ -40,7 +40,9 @@ data class CopyMessages ( val fromChatId: ChatIdentifier, @SerialName(messageIdsField) override val messageIds: List, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = toChatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendAction.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendAction.kt index 2e8a00cd1f..19885769df 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendAction.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendAction.kt @@ -18,7 +18,9 @@ data class SendAction( override val chatId: ChatIdentifier, @SerialName(actionField) val action: BotAction, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId 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 291609e6ef..b0df05f9ca 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 @@ -24,7 +24,9 @@ data class SendContact( val firstName: String, @SerialName(lastNameField) val lastName: String? = null, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendDice.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendDice.kt index 232d7eeafa..36cb2818a3 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendDice.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/SendDice.kt @@ -23,7 +23,9 @@ data class SendDice( override val chatId: ChatIdentifier, @SerialName(emojiField) val animationType: DiceAnimationType? = null, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, 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 8c33684455..27e9e06fe5 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 @@ -139,8 +139,8 @@ sealed interface SendLocation : SendContentMessageRequest? = null, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, 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 b384524f9a..c9214d11d0 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,9 @@ data class SendVenue( val googlePlaceId: GooglePlaceId? = null, @SerialName(googlePlaceTypeField) val googlePlaceType: GooglePlaceType? = null, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, 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 78e8625a02..373bc39549 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 @@ -20,7 +20,9 @@ data class SendGame ( override val chatId: ChatIdentifier, @SerialName(gameShortNameField) val gameShortName: String, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, 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 6c0bbe7b50..39fccac774 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 @@ -160,7 +160,9 @@ data class SendAnimationData internal constructor( override val width: Int? = null, @SerialName(heightField) override val height: Int? = null, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, 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 be6f0124f0..3d5c316bab 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 @@ -149,7 +149,9 @@ data class SendAudioData internal constructor( override val performer: String? = null, @SerialName(titleField) override val title: String? = null, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, 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 f49f4240ec..52bce97b7c 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 @@ -161,7 +161,9 @@ data class SendDocumentData internal constructor( override val parseMode: ParseMode? = null, @SerialName(captionEntitiesField) private val rawEntities: List? = null, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, 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 eac0638b3c..af4eb7b57a 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 @@ -191,7 +191,9 @@ data class SendMediaGroupData internal constructor( @SerialName(chatIdField) override val chatId: ChatIdentifier, val media: List = emptyList(), + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendPaidMedia.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendPaidMedia.kt index 2db109bd21..9e3139e398 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendPaidMedia.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/media/SendPaidMedia.kt @@ -167,7 +167,9 @@ data class SendPaidMediaData internal constructor( val payload: PaidMediaPayload? = null, @SerialName(showCaptionAboveMediaField) override val showCaptionAboveMedia: Boolean = false, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, 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 d4b7842607..8d105cfd7a 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 @@ -128,7 +128,9 @@ data class SendPhotoData internal constructor( override val showCaptionAboveMedia: Boolean = false, @SerialName(hasSpoilerField) override val spoilered: Boolean = false, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, 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 8d97ba2a54..badb30cb0d 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 @@ -58,7 +58,9 @@ data class SendStickerByFileId internal constructor( override val chatId: ChatIdentifier, @SerialName(stickerField) val sticker: InputFile, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, 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 40df7df3a5..6d1ca19c78 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 @@ -181,7 +181,9 @@ data class SendVideoData internal constructor( override val height: Int? = null, @SerialName(supportStreamingField) val supportStreaming: Boolean? = null, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, 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 f88bedadcc..546626e393 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 @@ -74,7 +74,9 @@ data class SendVideoNoteData internal constructor( override val duration: Long? = null, @SerialName(lengthField) override val width: Int? = null, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, 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 68f3e8bd2a..340c9d8cd9 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 @@ -126,7 +126,9 @@ data class SendVoiceData internal constructor( private val rawEntities: List? = null, @SerialName(durationField) override val duration: Long? = null, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/payments/SendInvoice.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/payments/SendInvoice.kt index ea3697c4f1..79c1a9b162 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/payments/SendInvoice.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/payments/SendInvoice.kt @@ -13,6 +13,7 @@ import dev.inmo.tgbotapi.types.payments.LabeledPrice import dev.inmo.tgbotapi.types.payments.LabeledPricesSerializer import dev.inmo.tgbotapi.types.payments.abstracts.Currency import dev.inmo.tgbotapi.types.payments.abstracts.XTR +import dev.inmo.tgbotapi.types.threadId import kotlinx.serialization.* private val invoiceMessageSerializer: DeserializationStrategy> @@ -61,7 +62,9 @@ data class SendInvoice( override val shouldSendEmailToProvider: Boolean = false, @SerialName(priceDependOnShipAddressField) override val priceDependOnShipAddress: Boolean = false, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(disableNotificationField) override val disableNotification: Boolean = false, diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/polls/SendQuizPoll.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/polls/SendQuizPoll.kt index a9067f3c25..819a59e799 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/polls/SendQuizPoll.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/polls/SendQuizPoll.kt @@ -13,6 +13,8 @@ import dev.inmo.tgbotapi.types.polls.ExactScheduledCloseInfo import dev.inmo.tgbotapi.types.polls.InputPollOption import dev.inmo.tgbotapi.types.polls.ScheduledCloseInfo import dev.inmo.tgbotapi.utils.extensions.makeSourceString +import kotlinx.serialization.EncodeDefault +import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable import kotlinx.serialization.SerializationStrategy @@ -46,7 +48,9 @@ class SendQuizPoll internal constructor( override val openPeriod: LongSeconds? = null, @SerialName(closeDateField) override val closeDate: LongSeconds? = null, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId, diff --git a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/polls/SendRegularPoll.kt b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/polls/SendRegularPoll.kt index ce0c770ce6..396145abc6 100644 --- a/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/polls/SendRegularPoll.kt +++ b/tgbotapi.core/src/commonMain/kotlin/dev/inmo/tgbotapi/requests/send/polls/SendRegularPoll.kt @@ -15,6 +15,8 @@ import dev.inmo.tgbotapi.types.polls.ScheduledCloseInfo import dev.inmo.tgbotapi.utils.EntitiesBuilder import dev.inmo.tgbotapi.utils.EntitiesBuilderBody import dev.inmo.tgbotapi.utils.extensions.makeSourceString +import kotlinx.serialization.EncodeDefault +import kotlinx.serialization.ExperimentalSerializationApi import kotlinx.serialization.SerialName import kotlinx.serialization.Serializable import kotlinx.serialization.SerializationStrategy @@ -41,7 +43,9 @@ class SendRegularPoll private constructor( override val openPeriod: LongSeconds?= null, @SerialName(closeDateField) override val closeDate: LongSeconds? = null, + @OptIn(ExperimentalSerializationApi::class) @SerialName(messageThreadIdField) + @EncodeDefault override val threadId: MessageThreadId? = chatId.threadId, @SerialName(businessConnectionIdField) override val businessConnectionId: BusinessConnectionId? = chatId.businessConnectionId,