diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2e78009d7a..b1e809a788 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -67,6 +67,16 @@ of `]` in links titles
* Now `MediaGroupContent` is `MediaContent`
* All `MedaContent` now have no generics and have basic `TelegramMediaFile` media field
+### 0.12.6 Libraries updates
+
+* `kotlin` version `1.3.21` -> `1.3.30`
+* `kotlin coroutines` version `1.1.1` -> `1.2.0`
+* `kotlin serialization` version `0.10.0` -> `0.11.0`
+* `ktor` version `1.1.2` -> `1.1.3`
+* Added `DeleteWebhook` request
+* All default `startGettingOfUpdates` (in fact - method `start` of `UpdatesPoller`) are suspend and
+will try to delete webhook
+
## 0.11.0
* Kotlin `1.3.11` -> `1.3.21`
diff --git a/README.md b/README.md
index ab2cc8d9d4..a26b2cde92 100644
--- a/README.md
+++ b/README.md
@@ -12,7 +12,39 @@ solves or unuseful moments are describing by official [Telegram Bot API](https:/
This version compatible with [July 2018 update of TelegramBotAPI](https://core.telegram.org/bots/api#july-26-2018). That means that
most part of API has been implemented (according to last [August 2018 update of TelegramBotAPI](https://core.telegram.org/bots/api#august-27-2018))
-except the Passport API which will be included as soon as possible.
+except the Passport API which will be included as soon as possible. All included and supported API
+can be found on [wiki](https://github.com/InsanusMokrassar/TelegramBotAPI/wiki/Included-API).
+
+## How to implement library?
+
+Common ways to implement this library are presented here. In some cases it will require additional steps
+like inserting of additional libraries (like `kotlin stdlib`). In the examples will be used variable
+`telegrambotapi.version`, which must be set up by developer. Available versions are presented on
+[bintray](https://bintray.com/insanusmokrassar/StandardRepository/TelegramBotAPI), next version is last published:
+
+[![Download](https://api.bintray.com/packages/insanusmokrassar/StandardRepository/TelegramBotAPI/images/download.svg) ](https://bintray.com/insanusmokrassar/StandardRepository/TelegramBotAPI/_latestVersion)
+
+### Maven
+
+```xml
+
+ com.github.insanusmokrassar
+ TelegramBotAPI
+ ${telegrambotapi.version}
+
+```
+
+### Gradle
+
+```groovy
+implementation "com.github.insanusmokrassar:TelegramBotAPI:${telegrambotapi.version}"
+```
+
+### Gradle (old)
+
+```groovy
+compile "com.github.insanusmokrassar:TelegramBotAPI:${telegrambotapi.version}"
+```
## How to work with library?
diff --git a/build.gradle b/build.gradle
index 609b4be96a..aef9c31704 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,4 +1,4 @@
-project.version = "0.12.5"
+project.version = "0.12.6"
project.group = "com.github.insanusmokrassar"
buildscript {
diff --git a/gradle.properties b/gradle.properties
index 20f62f9d7f..43c7278bdd 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,9 +1,9 @@
kotlin.code.style=official
-kotlin_version=1.3.21
-kotlin_coroutines_version=1.1.1
-kotlin_serialisation_runtime_version=0.10.0
+kotlin_version=1.3.30
+kotlin_coroutines_version=1.2.0
+kotlin_serialisation_runtime_version=0.11.0
joda_time_version=2.10.1
-ktor_version=1.1.2
+ktor_version=1.1.3
gradle_bintray_plugin_version=1.8.4
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/bot/settings/ProxySettings.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/bot/settings/ProxySettings.kt
index 19dfdec44d..ba83791ef3 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/bot/settings/ProxySettings.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/bot/settings/ProxySettings.kt
@@ -1,16 +1,11 @@
package com.github.insanusmokrassar.TelegramBotAPI.bot.settings
-import kotlinx.serialization.Optional
import kotlinx.serialization.Serializable
@Serializable
data class ProxySettings(
- @Optional
val host: String = "localhost",
- @Optional
val port: Int = 1080,
- @Optional
val username: String? = null,
- @Optional
val password: String? = null
)
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/bot/settings/limiters/PowLimiter.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/bot/settings/limiters/PowLimiter.kt
index da2acc46bf..dfe8e76299 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/bot/settings/limiters/PowLimiter.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/bot/settings/limiters/PowLimiter.kt
@@ -2,7 +2,8 @@ package com.github.insanusmokrassar.TelegramBotAPI.bot.settings.limiters
import kotlinx.coroutines.*
import kotlinx.coroutines.channels.Channel
-import kotlinx.serialization.*
+import kotlinx.serialization.Serializable
+import kotlinx.serialization.Transient
import java.util.concurrent.Executors
import kotlin.coroutines.*
@@ -14,13 +15,9 @@ private object CompleteRequest : RequestEvent()
@Serializable
data class PowLimiter(
- @Optional
private val minAwaitTime: Long = 0L,
- @Optional
private val maxAwaitTime: Long = 10000L,
- @Optional
private val powValue: Double = 4.0,
- @Optional
private val powK: Double = 0.0016
) : RequestLimiter {
@Transient
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/ForwardMessage.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/ForwardMessage.kt
index f0e764be4b..8fa1281ad4 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/ForwardMessage.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/ForwardMessage.kt
@@ -14,7 +14,6 @@ data class ForwardMessage(
@SerialName(messageIdField)
val messageId: MessageIdentifier,
@SerialName(disableNotificationField)
- @Optional
val disableNotification: Boolean = false
): SimpleRequest {
override fun method(): String = "forwardMessage"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetUpdates.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetUpdates.kt
index 9b55e4c99f..b5f88f9882 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetUpdates.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetUpdates.kt
@@ -4,7 +4,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.SimpleReque
import com.github.insanusmokrassar.TelegramBotAPI.types.ALL_UPDATES_LIST
import com.github.insanusmokrassar.TelegramBotAPI.types.UpdateIdentifier
import com.github.insanusmokrassar.TelegramBotAPI.types.update.RawUpdate
-import kotlinx.serialization.*
+import kotlinx.serialization.KSerializer
+import kotlinx.serialization.Serializable
import kotlinx.serialization.internal.ArrayListSerializer
@Deprecated("Replaced to other package", ReplaceWith("UPDATE_MESSAGE", "com.github.insanusmokrassar.TelegramBotAPI.types.UPDATE_MESSAGE"))
@@ -28,13 +29,9 @@ const val UPDATE_PRE_CHECKOUT_QUERY = com.github.insanusmokrassar.TelegramBotAPI
@Serializable
data class GetUpdates(
- @Optional
val offset: UpdateIdentifier? = null,// set `last update id + 1` to receive next part of updates
- @Optional
val limit: Int? = null,
- @Optional
val timeout: Int? = null,
- @Optional
val allowed_updates: List? = ALL_UPDATES_LIST
): SimpleRequest> {
override fun method(): String = "getUpdates"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/abstracts/InputFile.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/abstracts/InputFile.kt
index 7926308dbf..8b70d3d154 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/abstracts/InputFile.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/abstracts/InputFile.kt
@@ -2,8 +2,10 @@ package com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts
import com.github.insanusmokrassar.TelegramBotAPI.utils.StorageFile
import kotlinx.serialization.*
+import kotlinx.serialization.internal.StringDescriptor
import java.io.File
+@Serializable(InputFileSerializer::class)
sealed class InputFile {
abstract val fileId: String
}
@@ -12,16 +14,17 @@ sealed class InputFile {
/**
* Contains file id or file url
*/
-@Serializable(FileIdSerializer::class)
+@Serializable(InputFileSerializer::class)
data class FileId(
override val fileId: String
) : InputFile()
fun String.toInputFile(): InputFile = FileId(this)
-@Serializer(FileId::class)
-object FileIdSerializer : KSerializer {
- override fun serialize(encoder: Encoder, obj: FileId) = encoder.encodeString(obj.fileId)
+@Serializer(InputFile::class)
+object InputFileSerializer : KSerializer {
+ override val descriptor: SerialDescriptor = StringDescriptor.withName(FileId::class.toString())
+ override fun serialize(encoder: Encoder, obj: InputFile) = encoder.encodeString(obj.fileId)
override fun deserialize(decoder: Decoder): FileId = FileId(decoder.decodeString())
}
@@ -29,7 +32,7 @@ object FileIdSerializer : KSerializer {
/**
* Contains info about file for sending
*/
-@Serializable
+@Serializable(InputFileSerializer::class)
data class MultipartFile (
val file: StorageFile,
val mimeType: String = file.contentType,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerCallbackQuery.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerCallbackQuery.kt
index 829c8e4199..08b7464bdc 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerCallbackQuery.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerCallbackQuery.kt
@@ -11,16 +11,12 @@ data class AnswerCallbackQuery(
@SerialName(callbackQueryIdField)
val callbackQueryId: CallbackQueryIdentifier,
@SerialName(textField)
- @Optional
val text: String? = null,
@SerialName(showAlertField)
- @Optional
val showAlert: Boolean? = null,
@SerialName(urlField)
- @Optional
val url: String? = null,
@SerialName(cachedTimeField)
- @Optional
val cachedTimeSeconds: Int? = null
) : SimpleRequest {
override fun method(): String = "answerCallbackQuery"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerInlineQuery.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerInlineQuery.kt
index b4181e0f7e..ed4e3a29aa 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerInlineQuery.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerInlineQuery.kt
@@ -17,19 +17,14 @@ data class AnswerInlineQuery(
@SerialName(resultsField)
val results: List = emptyList(),
@SerialName(cachedTimeField)
- @Optional
val cachedTime: Int? = null,
@SerialName(isPersonalField)
- @Optional
val isPersonal: Boolean? = null,
@SerialName(nextOffsetField)
- @Optional
val nextOffset: String? = null,
@SerialName(switchPmTextField)
- @Optional
val switchPmText: String? = null,
@SerialName(switchPmParameterField)
- @Optional
val switchPmParameter: String? = null
): SimpleRequest {
override fun method(): String = "answerInlineQuery"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/KickChatMember.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/KickChatMember.kt
index 96f917ab9c..0bd97473a7 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/KickChatMember.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/KickChatMember.kt
@@ -13,7 +13,6 @@ data class KickChatMember(
@SerialName(userIdField)
override val userId: UserId,
@SerialName(untilDateField)
- @Optional
override val untilDate: TelegramDate? = null
) : ChatMemberRequest, UntilDate {
override fun method(): String = "kickChatMember"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/PromoteChatMember.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/PromoteChatMember.kt
index 4751adb8c6..57e4fdf090 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/PromoteChatMember.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/PromoteChatMember.kt
@@ -13,31 +13,22 @@ data class PromoteChatMember(
@SerialName(userIdField)
override val userId: UserId,
@SerialName(untilDateField)
- @Optional
override val untilDate: TelegramDate? = null,
@SerialName(canChangeInfoField)
- @Optional
private val canChangeInfo: Boolean? = null,
@SerialName(canPostMessagesField)
- @Optional
private val canPostMessages: Boolean? = null,
@SerialName(canEditMessagesField)
- @Optional
private val canEditMessages: Boolean? = null,
@SerialName(canDeleteMessagesField)
- @Optional
private val canDeleteMessages: Boolean? = null,
@SerialName(canInviteUsersField)
- @Optional
private val canInviteUsers: Boolean? = null,
@SerialName(canRestrictMembersField)
- @Optional
private val canRestrictMembers: Boolean? = null,
@SerialName(canPinMessagesField)
- @Optional
private val canPinMessages: Boolean? = null,
@SerialName(canPromoteMembersField)
- @Optional
private val canPromoteMembers: Boolean? = null
) : ChatMemberRequest, UntilDate {
override fun method(): String = "promoteChatMember"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/RestrictChatMember.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/RestrictChatMember.kt
index cf960fa91b..5179587c6c 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/RestrictChatMember.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/RestrictChatMember.kt
@@ -13,19 +13,14 @@ data class RestrictChatMember(
@SerialName(userIdField)
override val userId: UserId,
@SerialName(untilDateField)
- @Optional
override val untilDate: TelegramDate? = null,
@SerialName(canSendMessagesField)
- @Optional
private val canSendMessages: Boolean? = null,
@SerialName(canSendMediaMessagesField)
- @Optional
private val canSendMediaMessages: Boolean? = null,
@SerialName(canSendOtherMessagesField)
- @Optional
private val canSendOtherMessages: Boolean? = null,
@SerialName(canAddWebPagePreviewsField)
- @Optional
private val canAddWebPagePreviews: Boolean? = null
) : ChatMemberRequest, UntilDate {
override fun method(): String = "restrictChatMember"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/PinChatMessage.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/PinChatMessage.kt
index 000b055562..f9c74c5309 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/PinChatMessage.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/PinChatMessage.kt
@@ -14,7 +14,6 @@ data class PinChatMessage (
@SerialName(messageIdField)
val messageId: MessageIdentifier,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false
): ChatRequest, SimpleRequest, DisableNotification {
override fun method(): String = "pinChatMessage"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatPhoto.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatPhoto.kt
index 184b344255..212346bf6d 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatPhoto.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatPhoto.kt
@@ -13,11 +13,10 @@ import kotlinx.serialization.json.JsonObject
data class SetChatPhoto (
@SerialName(chatIdField)
override val chatId: ChatIdentifier,
- @Transient
val photo: MultipartFile = throw IllegalArgumentException("Unfortunately, this type of objects can't be parsed automatically")
): ChatRequest, MultipartRequest {
override fun method(): String = "setChatPhoto"
override fun resultSerializer(): KSerializer = BooleanSerializer
override val mediaMap: Map = mapOf(photoField to photo)
- override val paramsJson: JsonObject = this.toJson(serializer())
+ override val paramsJson: JsonObject = toJson(serializer())
}
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditChatMessageLiveLocation.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditChatMessageLiveLocation.kt
index 6e274db55f..c492115e85 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditChatMessageLiveLocation.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditChatMessageLiveLocation.kt
@@ -17,7 +17,6 @@ data class EditChatMessageLiveLocation(
@SerialName(longitudeField)
override val longitude: Double,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null
) : EditChatMessage, EditReplyMessage, EditLocationMessage {
override fun method(): String = "editMessageLiveLocation"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditInlineMessageLiveLocation.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditInlineMessageLiveLocation.kt
index 652dac2282..215a67c1a4 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditInlineMessageLiveLocation.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditInlineMessageLiveLocation.kt
@@ -3,7 +3,8 @@ package com.github.insanusmokrassar.TelegramBotAPI.requests.edit.LiveLocation
import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.abstracts.*
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class EditInlineMessageLiveLocation(
@@ -14,7 +15,6 @@ data class EditInlineMessageLiveLocation(
@SerialName(longitudeField)
override val longitude: Double,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null
) : EditInlineMessage, EditReplyMessage, EditLocationMessage {
override fun method(): String = "editMessageLiveLocation"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopChatMessageLiveLocation.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopChatMessageLiveLocation.kt
index aa9fae5b02..7780fa347c 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopChatMessageLiveLocation.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopChatMessageLiveLocation.kt
@@ -14,7 +14,6 @@ data class StopChatMessageLiveLocation(
@SerialName(messageIdField)
override val messageId: MessageIdentifier,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null
) : EditChatMessage, EditReplyMessage {
override fun method(): String = "stopMessageLiveLocation"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopInlineMessageLiveLocation.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopInlineMessageLiveLocation.kt
index 04b24c45e7..3a3b80e6ff 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopInlineMessageLiveLocation.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopInlineMessageLiveLocation.kt
@@ -4,14 +4,14 @@ import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.abstracts.EditIn
import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.abstracts.EditReplyMessage
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class StopInlineMessageLiveLocation(
@SerialName(inlineMessageIdField)
override val inlineMessageId: InlineMessageIdentifier,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null
) : EditInlineMessage, EditReplyMessage {
override fun method(): String = "stopMessageLiveLocation"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditChatMessageReplyMarkup.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditChatMessageReplyMarkup.kt
index 8af0bd16cb..b8ea63b86a 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditChatMessageReplyMarkup.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditChatMessageReplyMarkup.kt
@@ -16,7 +16,6 @@ data class EditChatMessageReplyMarkup(
@SerialName(messageIdField)
override val messageId: MessageIdentifier,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null
) : EditChatMessage, EditReplyMessage {
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditInlineMessageReplyMarkup.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditInlineMessageReplyMarkup.kt
index 854760446f..a5a0f17dd7 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditInlineMessageReplyMarkup.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditInlineMessageReplyMarkup.kt
@@ -4,14 +4,14 @@ import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.abstracts.EditIn
import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.abstracts.EditReplyMessage
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class EditInlineMessageReplyMarkup(
@SerialName(inlineMessageIdField)
override val inlineMessageId: InlineMessageIdentifier,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null
) : EditInlineMessage, EditReplyMessage {
override fun method(): String = editMessageReplyMarkupMethod
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditChatMessageCaption.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditChatMessageCaption.kt
index 09f219eb5f..2d281bb1e4 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditChatMessageCaption.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditChatMessageCaption.kt
@@ -19,10 +19,8 @@ data class EditChatMessageCaption(
@SerialName(captionField)
override val text: String,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null
) : EditChatMessage, EditTextChatMessage, EditReplyMessage {
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditInlineMessageCaption.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditInlineMessageCaption.kt
index 72c4e2474a..6ae7306f0f 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditInlineMessageCaption.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditInlineMessageCaption.kt
@@ -5,7 +5,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class EditInlineMessageCaption(
@@ -14,10 +15,8 @@ data class EditInlineMessageCaption(
@SerialName(captionField)
override val text: String,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null
) : EditInlineMessage, EditTextChatMessage, EditReplyMessage {
override fun method(): String = editMessageCaptionMethod
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditChatMessageMedia.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditChatMessageMedia.kt
index bcb3d96a0a..4ed80b8de2 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditChatMessageMedia.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditChatMessageMedia.kt
@@ -19,7 +19,6 @@ data class EditChatMessageMedia(
@SerialName(mediaField)
override val media: InputMedia,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null
) : EditChatMessage, EditReplyMessage, EditMediaMessage {
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditInlineMessageMedia.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditInlineMessageMedia.kt
index c99f147e47..27920dc26e 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditInlineMessageMedia.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditInlineMessageMedia.kt
@@ -5,7 +5,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.abstracts.*
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InputMedia.InputMedia
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class EditInlineMessageMedia(
@@ -14,7 +15,6 @@ data class EditInlineMessageMedia(
@SerialName(mediaField)
override val media: InputMedia,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null
) : EditInlineMessage, EditReplyMessage, EditMediaMessage {
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditChatMessageText.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditChatMessageText.kt
index 26e816f485..e4d3c12977 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditChatMessageText.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditChatMessageText.kt
@@ -19,13 +19,10 @@ data class EditChatMessageText(
@SerialName(textField)
override val text: String,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(disableWebPagePreviewField)
- @Optional
override val disableWebPagePreview: Boolean? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null
) : EditChatMessage, EditTextChatMessage, EditReplyMessage, EditDisableWebPagePreviewMessage {
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditInlineMessageText.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditInlineMessageText.kt
index edc4647004..d04f4bcdcf 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditInlineMessageText.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditInlineMessageText.kt
@@ -6,7 +6,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class EditInlineMessageText(
@@ -15,13 +16,10 @@ data class EditInlineMessageText(
@SerialName(textField)
override val text: String,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(disableWebPagePreviewField)
- @Optional
override val disableWebPagePreview: Boolean? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null
) : EditInlineMessage, EditTextChatMessage, EditReplyMessage, EditDisableWebPagePreviewMessage {
override fun method(): String = editMessageMediaMethod
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByChatId.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByChatId.kt
index f5a057be78..5c724b2c0c 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByChatId.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByChatId.kt
@@ -3,7 +3,8 @@ package com.github.insanusmokrassar.TelegramBotAPI.requests.games
import com.github.insanusmokrassar.TelegramBotAPI.CommonAbstracts.types.ByMessageId
import com.github.insanusmokrassar.TelegramBotAPI.requests.games.abstracts.SetGameScore
import com.github.insanusmokrassar.TelegramBotAPI.types.*
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class SetGameScoreByChatId (
@@ -16,9 +17,7 @@ data class SetGameScoreByChatId (
@SerialName(messageIdField)
override val messageId: MessageIdentifier,
@SerialName(forceField)
- @Optional
override val force: Boolean = false,
@SerialName(disableEditMessageField)
- @Optional
override val disableEditMessage: Boolean = false
) : SetGameScore, ByMessageId
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByInlineMessageId.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByInlineMessageId.kt
index 67551d60bc..fcdec16441 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByInlineMessageId.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByInlineMessageId.kt
@@ -3,7 +3,8 @@ package com.github.insanusmokrassar.TelegramBotAPI.requests.games
import com.github.insanusmokrassar.TelegramBotAPI.CommonAbstracts.types.ByInlineMessageId
import com.github.insanusmokrassar.TelegramBotAPI.requests.games.abstracts.SetGameScore
import com.github.insanusmokrassar.TelegramBotAPI.types.*
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class SetGameScoreByInlineMessageId (
@@ -14,9 +15,7 @@ data class SetGameScoreByInlineMessageId (
@SerialName(inlineMessageIdField)
override val inlineMessageId: InlineMessageIdentifier,
@SerialName(forceField)
- @Optional
override val force: Boolean = false,
@SerialName(disableEditMessageField)
- @Optional
override val disableEditMessage: Boolean = false
) : SetGameScore, ByInlineMessageId
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendContact.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendContact.kt
index 500f9e7e5c..8b7ef0f15e 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendContact.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendContact.kt
@@ -16,16 +16,12 @@ data class SendContact(
@SerialName(firstNameField)
val firstName: String,
@SerialName(lastNameField)
- @Optional
val lastName: String? = null,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: KeyboardMarkup? = null
) : SendMessageRequest,
ReplyingMarkupSendMessageRequest
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendLocation.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendLocation.kt
index 42593b0dd2..75778768d0 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendLocation.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendLocation.kt
@@ -16,16 +16,12 @@ data class SendLocation(
@SerialName(longitudeField)
override val longitude: Double,
@SerialName(livePeriodField)
- @Optional
val livePeriod: Long? = null,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: KeyboardMarkup? = null
) : SendMessageRequest,
ReplyingMarkupSendMessageRequest,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendMessage.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendMessage.kt
index 8e7c7b16bd..02b0e7d10f 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendMessage.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendMessage.kt
@@ -16,19 +16,14 @@ data class SendMessage(
@SerialName(textField)
override val text: String,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(disableWebPagePreviewField)
- @Optional
override val disableWebPagePreview: Boolean? = null,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: KeyboardMarkup? = null
) : SendMessageRequest,
ReplyingMarkupSendMessageRequest,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendVenue.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendVenue.kt
index e944cccf83..5c6c38eece 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendVenue.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendVenue.kt
@@ -19,16 +19,12 @@ data class SendVenue(
@SerialName(addressField)
val address: String,
@SerialName(foursquareIdField)
- @Optional
val foursquareId: String? = null,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: KeyboardMarkup? = null
) : SendMessageRequest,
PositionedSendMessageRequest,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/games/SendGame.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/games/SendGame.kt
index 38ba35bb1a..f3cc4c9352 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/games/SendGame.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/games/SendGame.kt
@@ -14,13 +14,10 @@ data class SendGame (
@SerialName(gameShortNameField)
val gameShortName: String,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: KeyboardMarkup? = null
) : SendMessageRequest,
ReplyMarkup {
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAnimation.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAnimation.kt
index 7974b242a9..e5d1e4394a 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAnimation.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAnimation.kt
@@ -58,34 +58,24 @@ data class SendAnimationData internal constructor(
@SerialName(chatIdField)
override val chatId: ChatIdentifier,
@SerialName(animationField)
- @Optional
val animation: String? = null,
@SerialName(thumbField)
- @Optional
override val thumb: String? = null,
@SerialName(captionField)
- @Optional
override val text: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(durationField)
- @Optional
override val duration: Long? = null,
@SerialName(widthField)
- @Optional
override val width: Int? = null,
@SerialName(heightField)
- @Optional
override val height: Int? = null,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: KeyboardMarkup? = null
) : DataRequest,
SendMessageRequest,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAudio.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAudio.kt
index 2e086813dd..c6317f0c00 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAudio.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAudio.kt
@@ -59,34 +59,24 @@ data class SendAudioData internal constructor(
@SerialName(chatIdField)
override val chatId: ChatIdentifier,
@SerialName(audioField)
- @Optional
val audio: String? = null,
@SerialName(thumbField)
- @Optional
override val thumb: String? = null,
@SerialName(captionField)
- @Optional
override val text: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(durationField)
- @Optional
override val duration: Long? = null,
@SerialName(performerField)
- @Optional
override val performer: String? = null,
@SerialName(titleField)
- @Optional
override val title: String? = null,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: KeyboardMarkup? = null
) : DataRequest,
SendMessageRequest,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendDocument.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendDocument.kt
index dca1fc11c9..f3cc73279b 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendDocument.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendDocument.kt
@@ -52,25 +52,18 @@ data class SendDocumentData internal constructor(
@SerialName(chatIdField)
override val chatId: ChatIdentifier,
@SerialName(documentField)
- @Optional
val document: String? = null,
@SerialName(thumbField)
- @Optional
override val thumb: String? = null,
@SerialName(captionField)
- @Optional
override val text: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: KeyboardMarkup? = null
) : DataRequest,
SendMessageRequest,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendMediaGroup.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendMediaGroup.kt
index a945196b74..014df6fa83 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendMediaGroup.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendMediaGroup.kt
@@ -61,10 +61,8 @@ data class SendMediaGroupData internal constructor(
@Transient
val media: List = emptyList(),
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null
) : DataRequest>,
SendMessageRequest>
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendPhoto.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendPhoto.kt
index 92336917c0..78b418a0c7 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendPhoto.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendPhoto.kt
@@ -41,22 +41,16 @@ data class SendPhotoData internal constructor(
@SerialName(chatIdField)
override val chatId: ChatIdentifier,
@SerialName(photoField)
- @Optional
val photo: String? = null,
@SerialName(captionField)
- @Optional
override val text: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: KeyboardMarkup? = null
) : DataRequest,
SendMessageRequest,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendSticker.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendSticker.kt
index 3ad1b96fc5..e9d16beb8b 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendSticker.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendSticker.kt
@@ -34,16 +34,12 @@ data class SendStickerByFileId internal constructor(
@SerialName(chatIdField)
override val chatId: ChatIdentifier,
@SerialName(stickerField)
- @Optional
val sticker: FileId? = null,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: KeyboardMarkup? = null
) : SendMessageRequest, ReplyingMarkupSendMessageRequest {
override fun method(): String = "sendSticker"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideo.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideo.kt
index 3097bf07c9..03c69b4d39 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideo.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideo.kt
@@ -60,37 +60,26 @@ data class SendVideoData internal constructor(
@SerialName(chatIdField)
override val chatId: ChatIdentifier,
@SerialName(videoField)
- @Optional
val video: String? = null,
@SerialName(thumbField)
- @Optional
override val thumb: String? = null,
@SerialName(captionField)
- @Optional
override val text: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(durationField)
- @Optional
override val duration: Long? = null,
@SerialName(widthField)
- @Optional
override val width: Int? = null,
@SerialName(heightField)
- @Optional
override val height: Int? = null,
@SerialName(supportStreamingField)
- @Optional
val supportStreaming: Boolean? = null,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: KeyboardMarkup? = null
) : DataRequest,
SendMessageRequest,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideoNote.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideoNote.kt
index c3199c0c2f..88de4f17a0 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideoNote.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideoNote.kt
@@ -56,31 +56,22 @@ data class SendVideoNoteData internal constructor(
@SerialName(chatIdField)
override val chatId: ChatIdentifier,
@SerialName(videoNoteField)
- @Optional
val videoNote: String? = null,
@SerialName(thumbField)
- @Optional
override val thumb: String? = null,
@SerialName(captionField)
- @Optional
override val text: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(durationField)
- @Optional
override val duration: Long? = null,
@SerialName(lengthField)
- @Optional
override val width: Int? = null,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: KeyboardMarkup? = null
) : DataRequest,
SendMessageRequest,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVoice.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVoice.kt
index 16ee8a3a20..c167b8ed3d 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVoice.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVoice.kt
@@ -54,28 +54,20 @@ data class SendVoiceData internal constructor(
@SerialName(chatIdField)
override val chatId: ChatIdentifier,
@SerialName(voiceField)
- @Optional
val voice: String? = null,
@SerialName(thumbField)
- @Optional
override val thumb: String? = null,
@SerialName(captionField)
- @Optional
override val text: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(durationField)
- @Optional
override val duration: Long? = null,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: KeyboardMarkup? = null
) : DataRequest,
SendMessageRequest,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/payments/SendInvoice.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/payments/SendInvoice.kt
index 7f4239b4f1..9dc46a4ffa 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/payments/SendInvoice.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/payments/SendInvoice.kt
@@ -9,7 +9,6 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.payments.LabeledPrice
import com.github.insanusmokrassar.TelegramBotAPI.types.payments.LabeledPricesSerializer
import com.github.insanusmokrassar.TelegramBotAPI.types.payments.abstracts.*
import kotlinx.serialization.*
-import kotlinx.serialization.Optional
import java.util.*
/**
@@ -36,37 +35,26 @@ data class SendInvoice(
@SerialName(pricesField)
override val prices: List,
@SerialName(providerDataField)
- @Optional
val providerData: String? = null,
@SerialName(requireNameField)
- @Optional
val requireName: Boolean = false,
@SerialName(requirePhoneNumberField)
- @Optional
val requirePhoneNumber: Boolean = false,
@SerialName(requireEmailField)
- @Optional
val requireEmail: Boolean = false,
@SerialName(requireShippingAddressField)
- @Optional
val requireShippingAddress: Boolean = false,
@SerialName(shouldSendPhoneNumberToProviderField)
- @Optional
val shouldSendPhoneNumberToProvider: Boolean = false,
@SerialName(shouldSendEmailToProviderField)
- @Optional
val shouldSendEmailToProvider: Boolean = false,
@SerialName(priceDependOnShipAddressField)
- @Optional
val priceDependOnShipAddress: Boolean = false,
@SerialName(disableNotificationField)
- @Optional
override val disableNotification: Boolean = false,
@SerialName(replyToMessageIdField)
- @Optional
override val replyToMessageId: MessageIdentifier? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null
) : Currencied,
Priced,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/AddStickerToSet.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/AddStickerToSet.kt
index 164d42d9ca..9f79ddd49e 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/AddStickerToSet.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/AddStickerToSet.kt
@@ -5,7 +5,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.requests.common.CommonMultipar
import com.github.insanusmokrassar.TelegramBotAPI.requests.stickers.abstracts.StickerSetAction
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.stickers.MaskPosition
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
fun AddStickerToSet(
userId: UserId,
@@ -33,10 +34,8 @@ data class AddStickerToSet internal constructor(
@SerialName(emojisField)
override val emojis: String,
@SerialName(pngStickerField)
- @Optional
val sticker: FileId? = null,
@SerialName(maskPositionField)
- @Optional
override val maskPosition: MaskPosition? = null
) : StickerSetAction {
init {
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/CreateNewStickerSet.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/CreateNewStickerSet.kt
index feb74bcfdd..abb645dd8b 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/CreateNewStickerSet.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/CreateNewStickerSet.kt
@@ -5,7 +5,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.requests.common.CommonMultipar
import com.github.insanusmokrassar.TelegramBotAPI.requests.stickers.abstracts.StickerSetAction
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.stickers.MaskPosition
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
fun CreateNewStickerSet(
userId: UserId,
@@ -34,13 +35,10 @@ data class CreateNewStickerSet internal constructor(
@SerialName(emojisField)
override val emojis: String,
@SerialName(pngStickerField)
- @Optional
val sticker: FileId? = null,
@SerialName(containsMasksField)
- @Optional
val containsMasks: Boolean? = null,
@SerialName(maskPositionField)
- @Optional
override val maskPosition: MaskPosition? = null
) : StickerSetAction {
init {
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/DeleteWebhook.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/DeleteWebhook.kt
new file mode 100644
index 0000000000..2260816fe1
--- /dev/null
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/DeleteWebhook.kt
@@ -0,0 +1,13 @@
+package com.github.insanusmokrassar.TelegramBotAPI.requests.webhook
+
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.SimpleRequest
+import kotlinx.serialization.KSerializer
+import kotlinx.serialization.Serializable
+import kotlinx.serialization.internal.BooleanSerializer
+
+@Serializable
+class DeleteWebhook : SimpleRequest {
+ override fun method(): String = "deleteWebhook"
+
+ override fun resultSerializer(): KSerializer = BooleanSerializer
+}
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/SetWebhook.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/SetWebhook.kt
index 79c6ca74fb..bae1ad4a4c 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/SetWebhook.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/SetWebhook.kt
@@ -44,13 +44,10 @@ data class SetWebhook internal constructor(
@SerialName(urlField)
val url: String,
@SerialName(certificateField)
- @Optional
val certificateFile: String? = null,
@SerialName(maxAllowedConnectionsField)
- @Optional
val maxAllowedConnections: Int? = null,
@SerialName(allowedUpdatesField)
- @Optional
val allowedUpdates: List? = null
) : DataRequest {
override fun method(): String = "setWebhook"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/CallbackQuery/RawCallbackQuery.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/CallbackQuery/RawCallbackQuery.kt
index 611ec6a730..fc84587435 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/CallbackQuery/RawCallbackQuery.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/CallbackQuery/RawCallbackQuery.kt
@@ -10,17 +10,13 @@ data class RawCallbackQuery(
val id: CallbackQueryIdentifier,
@SerialName(fromField)
val from: User,
- @Optional
val message: RawMessage? = null,
@SerialName(inlineMessageIdField)
- @Optional
val inlineMessageId: InlineMessageIdentifier? = null,
@SerialName("chat_instance")
val chatInstance: String,
- @Optional
val data: String? = null,
@SerialName("game_short_name")
- @Optional
val gameShortName: String? = null
) {
@Transient
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/ChatMember/RawChatMember.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/ChatMember/RawChatMember.kt
index f64040c859..11c24ed191 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/ChatMember/RawChatMember.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/ChatMember/RawChatMember.kt
@@ -7,46 +7,32 @@ import kotlinx.serialization.*
data class RawChatMember(
val user: User,
private val status: String,
- @Optional
private val until_date: TelegramDate? = null,
@SerialName(canBeEditedField)
- @Optional
private val canBeEdited: Boolean = false,
@SerialName(canChangeInfoField)
- @Optional
private val canChangeInfo: Boolean = false,
@SerialName(canPostMessagesField)
- @Optional
private val canPostMessages: Boolean = false,
@SerialName(canEditMessagesField)
- @Optional
private val canEditMessages: Boolean = false,
@SerialName(canDeleteMessagesField)
- @Optional
private val canDeleteMessages: Boolean = false,
@SerialName(canInviteUsersField)
- @Optional
private val canInviteUsers: Boolean = false,
@SerialName(canRestrictMembersField)
- @Optional
private val canRestrictMembers: Boolean = false,
@SerialName(canPinMessagesField)
- @Optional
private val canPinMessages: Boolean = false,
@SerialName(canPromoteMembersField)
- @Optional
private val canPromoteMembers: Boolean = false,
@SerialName(canSendMessagesField)
- @Optional
private val canSendMessages: Boolean = false,
@SerialName(canSendMediaMessagesField)
- @Optional
private val canSendMediaMessages: Boolean = false,
@SerialName(canSendOtherMessagesField)
- @Optional
private val canSendOtherMessages: Boolean = false,
@SerialName(canAddWebPagePreviewsField)
- @Optional
private val canAddWebPagePreviews: Boolean = false
) {
@Transient
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Common.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Common.kt
index 8aa06288d6..59c81efe57 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Common.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Common.kt
@@ -184,7 +184,7 @@ const val certificateField = "certificate"
const val pointField = "point"
const val xShiftField = "x_shift"
const val yShiftField = "y_shift"
-const val scaleField = "y_shift"
+const val scaleField = "scale"
const val currencyField = "currency"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Contact.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Contact.kt
index 1ccfbaf76f..d15a3c0409 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Contact.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Contact.kt
@@ -1,7 +1,8 @@
package com.github.insanusmokrassar.TelegramBotAPI.types
import com.github.insanusmokrassar.TelegramBotAPI.CommonAbstracts.CommonContactData
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class Contact(
@@ -10,12 +11,9 @@ data class Contact(
@SerialName(firstNameField)
override val firstName: String,
@SerialName(lastNameField)
- @Optional
override val lastName: String? = null,
@SerialName(userIdField)
- @Optional
val userId: UserId? = null,
@SerialName(vcardField)
- @Optional
override val vcard: String? = null
) : CommonContactData
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/ChosenInlineResult/RawChosenInlineResult.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/ChosenInlineResult/RawChosenInlineResult.kt
index 5b54fd5ae7..1d5b4b81a3 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/ChosenInlineResult/RawChosenInlineResult.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/ChosenInlineResult/RawChosenInlineResult.kt
@@ -13,10 +13,8 @@ data class RawChosenInlineResult(
@SerialName(queryField)
val query: String,
@SerialName(locationField)
- @Optional
val location: Location? = null,
@SerialName(inlineMessageIdField)
- @Optional
val inlineMessageId: InlineMessageIdentifier? = null
) {
@Transient
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultArticle.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultArticle.kt
index aa3094450b..54d8a925de 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultArticle.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultArticle.kt
@@ -4,7 +4,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.InlineQueryResult.abstracts.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.InputMessageContent
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
class InlineQueryResultArticle(
@@ -15,25 +16,18 @@ class InlineQueryResultArticle(
@SerialName(inputMessageContentField)
override val inputMessageContent: InputMessageContent,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(urlField)
- @Optional
override val url: String? = null,
@SerialName(hideUrlField)
- @Optional
val hideUrl: Boolean? = null,
@SerialName(descriptionField)
- @Optional
override val description: String? = null,
@SerialName(thumbUrlField)
- @Optional
override val thumbUrl: String? = null,
@SerialName(thumbWidthField)
- @Optional
override val thumbWidth: Int? = null,
@SerialName(thumbHeightField)
- @Optional
override val thumbHeight: Int? = null
) : InlineQueryResult,
ThumbSizedInlineQueryResult,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultAudioCachedImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultAudioCachedImpl.kt
index a010003078..478def39fd 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultAudioCachedImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultAudioCachedImpl.kt
@@ -8,7 +8,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultAudioCachedImpl(
@@ -17,16 +18,12 @@ data class InlineQueryResultAudioCachedImpl(
@SerialName(audioFileIdField)
override val fileId: FileId,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultAudioCached {
override val type: String = inlineQueryResultAudioType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultAudioImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultAudioImpl.kt
index bc87900ef0..96ffba4ef9 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultAudioImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultAudioImpl.kt
@@ -7,7 +7,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultAudioImpl(
@@ -18,22 +19,16 @@ data class InlineQueryResultAudioImpl(
@SerialName(titleField)
override val title: String,
@SerialName(performerField)
- @Optional
override val performer: String? = null,
@SerialName(audioDurationField)
- @Optional
override val duration: Int? = null,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultAudio {
override val type: String = inlineQueryResultAudioType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultContact.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultContact.kt
index 2adf85af81..a3165cf313 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultContact.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultContact.kt
@@ -5,7 +5,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.InlineQueryResult.abstracts.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.InputMessageContent
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultContact(
@@ -16,25 +17,18 @@ data class InlineQueryResultContact(
@SerialName(firstNameField)
override val firstName: String,
@SerialName(lastNameField)
- @Optional
override val lastName: String? = null,
@SerialName(vcardField)
- @Optional
override val vcard: String? = null,
@SerialName(thumbUrlField)
- @Optional
override val thumbUrl: String? = null,
@SerialName(thumbWidthField)
- @Optional
override val thumbWidth: Int? = null,
@SerialName(thumbHeightField)
- @Optional
override val thumbHeight: Int? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResult,
CommonContactData,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultDocumentCachedImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultDocumentCachedImpl.kt
index 726d940ff6..43580e2d99 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultDocumentCachedImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultDocumentCachedImpl.kt
@@ -8,7 +8,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultDocumentCachedImpl(
@@ -19,19 +20,14 @@ data class InlineQueryResultDocumentCachedImpl(
@SerialName(titleField)
override val title: String,
@SerialName(descriptionField)
- @Optional
override val description: String? = null,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultDocumentCached {
override val type: String = inlineQueryResultDocumentType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultDocumentImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultDocumentImpl.kt
index f6a2dce048..a5998af969 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultDocumentImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultDocumentImpl.kt
@@ -8,7 +8,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
import com.github.insanusmokrassar.TelegramBotAPI.types.files.abstracts.mimeTypeField
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultDocumentImpl(
@@ -21,28 +22,20 @@ data class InlineQueryResultDocumentImpl(
@SerialName(mimeTypeField)
override val mimeType: String,
@SerialName(thumbUrlField)
- @Optional
override val thumbUrl: String? = null,
@SerialName(thumbWidthField)
- @Optional
override val thumbWidth: Int? = null,
@SerialName(thumbHeightField)
- @Optional
override val thumbHeight: Int? = null,
@SerialName(descriptionField)
- @Optional
override val description: String? = null,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultDocument {
override val type: String = inlineQueryResultDocumentType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultGifCachedImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultGifCachedImpl.kt
index c9ecb27da4..6ed362aaef 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultGifCachedImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultGifCachedImpl.kt
@@ -8,7 +8,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultGifCachedImpl(
@@ -17,19 +18,14 @@ data class InlineQueryResultGifCachedImpl(
@SerialName(gifFileIdField)
override val fileId: FileId,
@SerialName(titleField)
- @Optional
override val title: String? = null,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultGifCached {
override val type: String = inlineQueryResultGifType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultGifImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultGifImpl.kt
index b59ddb2593..4785c3cb33 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultGifImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultGifImpl.kt
@@ -7,7 +7,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultGifImpl(
@@ -18,28 +19,20 @@ data class InlineQueryResultGifImpl(
@SerialName(thumbUrlField)
override val thumbUrl: String,
@SerialName(gifWidthField)
- @Optional
override val width: Int? = null,
@SerialName(gifHeightField)
- @Optional
override val height: Int? = null,
@SerialName(gifDurationField)
- @Optional
override val duration: Int? = null,
@SerialName(titleField)
- @Optional
override val title: String? = null,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultGif {
override val type: String = inlineQueryResultGifType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultLocation.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultLocation.kt
index 71f8bbbe11..73bea7a975 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultLocation.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultLocation.kt
@@ -6,7 +6,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.InlineQueryResult.abstracts.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.InputMessageContent
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultLocation(
@@ -19,22 +20,16 @@ data class InlineQueryResultLocation(
@SerialName(titleField)
override val title: String,
@SerialName(livePeriodField)
- @Optional
override val livePeriod: Int? = null,
@SerialName(thumbUrlField)
- @Optional
override val thumbUrl: String? = null,
@SerialName(thumbWidthField)
- @Optional
override val thumbWidth: Int? = null,
@SerialName(thumbHeightField)
- @Optional
override val thumbHeight: Int? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResult,
Locationed,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultMpeg4GifCachedImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultMpeg4GifCachedImpl.kt
index 956f1edcb7..3a38ad7a8c 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultMpeg4GifCachedImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultMpeg4GifCachedImpl.kt
@@ -8,7 +8,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultMpeg4GifCachedImpl(
@@ -17,19 +18,14 @@ data class InlineQueryResultMpeg4GifCachedImpl(
@SerialName(mpeg4GifFileIdField)
override val fileId: FileId,
@SerialName(titleField)
- @Optional
override val title: String? = null,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultMpeg4GifCached {
override val type: String = inlineQueryResultMpeg4GifType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultMpeg4GifImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultMpeg4GifImpl.kt
index 945afca6e2..acf78ca86e 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultMpeg4GifImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultMpeg4GifImpl.kt
@@ -7,7 +7,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultMpeg4GifImpl(
@@ -18,28 +19,20 @@ data class InlineQueryResultMpeg4GifImpl(
@SerialName(thumbUrlField)
override val thumbUrl: String,
@SerialName(mpeg4GifWidthField)
- @Optional
override val width: Int? = null,
@SerialName(mpeg4GifHeightField)
- @Optional
override val height: Int? = null,
@SerialName(mpeg4GifDurationField)
- @Optional
override val duration: Int? = null,
@SerialName(titleField)
- @Optional
override val title: String? = null,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultMpeg4Gif {
override val type: String = inlineQueryResultMpeg4GifType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultPhotoCachedImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultPhotoCachedImpl.kt
index 63eb575864..c6c44cd893 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultPhotoCachedImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultPhotoCachedImpl.kt
@@ -8,7 +8,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultPhotoCachedImpl(
@@ -17,22 +18,16 @@ data class InlineQueryResultPhotoCachedImpl(
@SerialName(photoFileIdField)
override val fileId: FileId,
@SerialName(titleField)
- @Optional
override val title: String? = null,
@SerialName(descriptionField)
- @Optional
override val description: String? = null,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultPhotoCached {
override val type: String = inlineQueryResultPhotoType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultPhotoImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultPhotoImpl.kt
index 15ed0d5993..cb3289ec80 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultPhotoImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultPhotoImpl.kt
@@ -7,7 +7,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultPhotoImpl(
@@ -18,28 +19,20 @@ data class InlineQueryResultPhotoImpl(
@SerialName(thumbUrlField)
override val thumbUrl: String,
@SerialName(photoWidthField)
- @Optional
override val width: Int? = null,
@SerialName(photoHeightField)
- @Optional
override val height: Int? = null,
@SerialName(titleField)
- @Optional
override val title: String? = null,
@SerialName(descriptionField)
- @Optional
override val description: String? = null,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultPhoto {
override val type: String = inlineQueryResultPhotoType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultStickerCached.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultStickerCached.kt
index d8577d6be0..ceb2a2de25 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultStickerCached.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultStickerCached.kt
@@ -5,7 +5,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.InlineQueryResult.abstracts.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.InputMessageContent
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultStickerCached(
@@ -14,10 +15,8 @@ data class InlineQueryResultStickerCached(
@SerialName(stickerFileIdField)
override val fileId: FileId,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResult, WithInputMessageContentInlineQueryResult, WithFileIdInlineQueryResult {
override val type: String = "sticker"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVenue.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVenue.kt
index d5809da48f..59824d1ca5 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVenue.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVenue.kt
@@ -6,7 +6,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.InlineQueryResult.abstracts.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.InputMessageContent
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultVenue(
@@ -21,25 +22,18 @@ data class InlineQueryResultVenue(
@SerialName(addressField)
override val address: String,
@SerialName(foursquareIdField)
- @Optional
override val foursquareId: String? = null,
@SerialName(foursquareTypeField)
- @Optional
override val foursquareType: String? = null,
@SerialName(thumbUrlField)
- @Optional
override val thumbUrl: String? = null,
@SerialName(thumbWidthField)
- @Optional
override val thumbWidth: Int? = null,
@SerialName(thumbHeightField)
- @Optional
override val thumbHeight: Int? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResult,
Locationed,
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVideoCachedImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVideoCachedImpl.kt
index 60ad8cb164..98bfe63f58 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVideoCachedImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVideoCachedImpl.kt
@@ -8,7 +8,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultVideoCachedImpl(
@@ -19,19 +20,14 @@ data class InlineQueryResultVideoCachedImpl(
@SerialName(titleField)
override val title: String,
@SerialName(descriptionField)
- @Optional
override val description: String? = null,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultVideoCached {
override val type: String = inlineQueryResultVideoType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVideoImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVideoImpl.kt
index df32e33267..3d0a52404d 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVideoImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVideoImpl.kt
@@ -8,7 +8,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
import com.github.insanusmokrassar.TelegramBotAPI.types.files.abstracts.mimeTypeField
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultVideoImpl(
@@ -23,28 +24,20 @@ data class InlineQueryResultVideoImpl(
@SerialName(titleField)
override val title: String,
@SerialName(videoWidthField)
- @Optional
override val width: Int? = null,
@SerialName(videoHeightField)
- @Optional
override val height: Int? = null,
@SerialName(videoDurationField)
- @Optional
override val duration: Int? = null,
@SerialName(descriptionField)
- @Optional
override val description: String? = null,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultVideo {
override val type: String = inlineQueryResultVideoType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVoiceCachedImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVoiceCachedImpl.kt
index 9113a6cf3c..0ecca9f32d 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVoiceCachedImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVoiceCachedImpl.kt
@@ -8,7 +8,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultVoiceCachedImpl(
@@ -19,16 +20,12 @@ data class InlineQueryResultVoiceCachedImpl(
@SerialName(titleField)
override val title: String,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultVoiceCached {
override val type: String = inlineQueryResultVoiceType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVoiceImpl.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVoiceImpl.kt
index 6871756798..9090e0bfb1 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVoiceImpl.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/InlineQueryResultVoiceImpl.kt
@@ -7,7 +7,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InlineQueryResultVoiceImpl(
@@ -18,19 +19,14 @@ data class InlineQueryResultVoiceImpl(
@SerialName(titleField)
override val title: String,
@SerialName(voiceDurationField)
- @Optional
override val duration: Int? = null,
@SerialName(captionField)
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(replyMarkupField)
- @Optional
override val replyMarkup: InlineKeyboardMarkup? = null,
@SerialName(inputMessageContentField)
- @Optional
override val inputMessageContent: InputMessageContent? = null
) : InlineQueryResultVoice {
override val type: String = inlineQueryResultVoiceType
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/serializers/InlineQueryResultSerializer.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/serializers/InlineQueryResultSerializer.kt
index 62296d41e5..2e6e9736ff 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/serializers/InlineQueryResultSerializer.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InlineQueryResult/serializers/InlineQueryResultSerializer.kt
@@ -3,11 +3,12 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.InlineQue
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.InlineQueryResult.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.InlineQueryResult.abstracts.InlineQueryResult
import kotlinx.serialization.*
+import kotlinx.serialization.internal.StringDescriptor
import sun.reflect.generics.reflectiveObjects.NotImplementedException
@Serializer(InlineQueryResult::class)
-object InlineQueryResultSerializer :
- KSerializer {
+object InlineQueryResultSerializer : KSerializer {
+ override val descriptor: SerialDescriptor = StringDescriptor.withName(InlineQueryResult::class.toString())
override fun serialize(encoder: Encoder, obj: InlineQueryResult) {
when(obj) {
is InlineQueryResultArticle -> InlineQueryResultArticle.serializer().serialize(encoder, obj)
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputContactMessageContent.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputContactMessageContent.kt
index 840391a117..b327358907 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputContactMessageContent.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputContactMessageContent.kt
@@ -3,7 +3,8 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.InputMess
import com.github.insanusmokrassar.TelegramBotAPI.CommonAbstracts.CommonContactData
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.InputMessageContent
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InputContactMessageContent(
@@ -12,9 +13,7 @@ data class InputContactMessageContent(
@SerialName(firstNameField)
override val firstName: String,
@SerialName(lastNameField)
- @Optional
override val lastName: String? = null,
@SerialName(vcardField)
- @Optional
override val vcard: String? = null
) : CommonContactData, InputMessageContent
\ No newline at end of file
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputLocationMessageContent.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputLocationMessageContent.kt
index c6c1cd172b..c2b6f0110d 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputLocationMessageContent.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputLocationMessageContent.kt
@@ -4,7 +4,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.CommonAbstracts.Livable
import com.github.insanusmokrassar.TelegramBotAPI.CommonAbstracts.Locationed
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.InputMessageContent
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InputLocationMessageContent(
@@ -13,6 +14,5 @@ data class InputLocationMessageContent(
@SerialName(longitudeField)
override val longitude: Double,
@SerialName(livePeriodField)
- @Optional
override val livePeriod: Int? = null
) : Locationed, Livable, InputMessageContent
\ No newline at end of file
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputTextMessageContent.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputTextMessageContent.kt
index b93ae41b47..2b09e22ac9 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputTextMessageContent.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputTextMessageContent.kt
@@ -7,16 +7,15 @@ import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.disableWebPagePreviewField
import com.github.insanusmokrassar.TelegramBotAPI.types.messageTextField
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InputTextMessageContent(
@SerialName(messageTextField)
override val caption: String,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@SerialName(disableWebPagePreviewField)
- @Optional
override val disableWebPagePreview: Boolean? = null
) : Captioned, DisableWebPagePreview, InputMessageContent
\ No newline at end of file
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputVenueMessageContent.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputVenueMessageContent.kt
index 2c17cee68b..53e6e09e3a 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputVenueMessageContent.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContent/InputVenueMessageContent.kt
@@ -4,7 +4,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.CommonAbstracts.CommonVenueDat
import com.github.insanusmokrassar.TelegramBotAPI.CommonAbstracts.Locationed
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.InputMessageContent
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InputVenueMessageContent(
@@ -17,9 +18,7 @@ data class InputVenueMessageContent(
@SerialName(addressField)
override val address: String,
@SerialName(foursquareIdField)
- @Optional
override val foursquareId: String? = null,
@SerialName(foursquareTypeField)
- @Optional
override val foursquareType: String? = null
) : Locationed, CommonVenueData, InputMessageContent
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContentSerializer.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContentSerializer.kt
index 2114cea456..77c3fa4486 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContentSerializer.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/InputMessageContentSerializer.kt
@@ -3,9 +3,11 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.InputMessageContent.*
import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.InputMessageContent
import kotlinx.serialization.*
+import kotlinx.serialization.internal.StringDescriptor
@Serializer(InputMessageContent::class)
object InputMessageContentSerializer : KSerializer {
+ override val descriptor: SerialDescriptor = StringDescriptor.withName(InputMessageContent::class.toString())
override fun serialize(encoder: Encoder, obj: InputMessageContent) {
when (obj) {
is InputContactMessageContent -> InputContactMessageContent.serializer().serialize(encoder, obj)
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/query/RawInlineQuery.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/query/RawInlineQuery.kt
index 054c52265f..425f7dc5f0 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/query/RawInlineQuery.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InlineQueries/query/RawInlineQuery.kt
@@ -14,7 +14,6 @@ data class RawInlineQuery(
@SerialName(offsetField)
val offset: String,
@SerialName(locationField)
- @Optional
val location: Location? = null
) {
@Transient
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaAnimation.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaAnimation.kt
index 9eb5a4446f..8e713c19d7 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaAnimation.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaAnimation.kt
@@ -10,16 +10,11 @@ import kotlinx.serialization.*
data class InputMediaAnimation(
@Transient
override val file: InputFile = throw IllegalStateException("Must be created with file"),
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
- @Optional
override val width: Int? = null,
- @Optional
override val height: Int? = null,
- @Optional
override val duration: Long? = null,
@Transient
override val thumb: InputFile? = null
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaAudio.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaAudio.kt
index e7ed5e3280..53506cbb69 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaAudio.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaAudio.kt
@@ -5,22 +5,17 @@ import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.*
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.parseModeField
import com.github.insanusmokrassar.TelegramBotAPI.types.mediaField
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class InputMediaAudio(
- @Transient
override val file: InputFile = throw IllegalStateException("Must be created with file"),
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
- @Optional
override val duration: Long? = null,
- @Optional
override val performer: String? = null,
- @Optional
override val title: String? = null,
override val thumb: InputFile? = null
) : InputMedia, DuratedInputMedia, ThumbedInputMedia, TitledInputMedia, CaptionedInputMedia, Performerable {
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaDocument.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaDocument.kt
index 4faaa02314..1a63556760 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaDocument.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaDocument.kt
@@ -10,10 +10,8 @@ import kotlinx.serialization.*
data class InputMediaDocument(
@Transient
override val file: InputFile = throw IllegalStateException("Must be created with file"),
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
@Transient
override val thumb: InputFile? = null
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaPhoto.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaPhoto.kt
index ed74803c65..23b123cfb8 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaPhoto.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaPhoto.kt
@@ -11,10 +11,8 @@ import kotlinx.serialization.*
data class InputMediaPhoto(
@Transient
override val file: InputFile = throw IllegalStateException("Must be created with file"),
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null
) : InputMedia, CaptionedInputMedia, MediaGroupMemberInputMedia {
override val type: String = "photo"
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaSerializer.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaSerializer.kt
index f63bad756b..fd4b3f9266 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaSerializer.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaSerializer.kt
@@ -1,9 +1,11 @@
package com.github.insanusmokrassar.TelegramBotAPI.types.InputMedia
import kotlinx.serialization.*
+import kotlinx.serialization.internal.StringDescriptor
@Serializer(InputMedia::class)
object InputMediaSerializer : KSerializer {
+ override val descriptor: SerialDescriptor = StringDescriptor.withName(InputMedia::class.toString())
override fun serialize(encoder: Encoder, obj: InputMedia) {
when (obj) {
is InputMediaVideo -> InputMediaVideo.serializer().serialize(encoder, obj)
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaVideo.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaVideo.kt
index b55eeae2a2..3cc1371231 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaVideo.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/InputMediaVideo.kt
@@ -10,16 +10,11 @@ import kotlinx.serialization.*
data class InputMediaVideo(
@Transient
override val file: InputFile = throw IllegalStateException("Must be created with file"),
- @Optional
override val caption: String? = null,
@SerialName(parseModeField)
- @Optional
override val parseMode: ParseMode? = null,
- @Optional
override val width: Int? = null,
- @Optional
override val height: Int? = null,
- @Optional
override val duration: Long? = null,
@Transient
override val thumb: InputFile? = null
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/MediaGroupMemberInputMediaSerializer.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/MediaGroupMemberInputMediaSerializer.kt
index 2eb606f93f..c435bef316 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/MediaGroupMemberInputMediaSerializer.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/InputMedia/MediaGroupMemberInputMediaSerializer.kt
@@ -1,13 +1,19 @@
package com.github.insanusmokrassar.TelegramBotAPI.types.InputMedia
import kotlinx.serialization.*
+import kotlinx.serialization.internal.StringDescriptor
@Serializer(MediaGroupMemberInputMedia::class)
object MediaGroupMemberInputMediaSerializer : KSerializer {
+ override val descriptor: SerialDescriptor = StringDescriptor.withName(MediaGroupMemberInputMedia::class.toString())
override fun serialize(encoder: Encoder, obj: MediaGroupMemberInputMedia) {
when (obj) {
is InputMediaPhoto -> InputMediaPhoto.serializer().serialize(encoder, obj)
is InputMediaVideo -> InputMediaVideo.serializer().serialize(encoder, obj)
}
}
+
+ override fun deserialize(decoder: Decoder): MediaGroupMemberInputMedia {
+ TODO("not implemented")
+ }
}
\ No newline at end of file
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/MessageEntity/RawMessageEntity.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/MessageEntity/RawMessageEntity.kt
index e841ef3afe..be32fee1bb 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/MessageEntity/RawMessageEntity.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/MessageEntity/RawMessageEntity.kt
@@ -1,7 +1,8 @@
package com.github.insanusmokrassar.TelegramBotAPI.types.MessageEntity
import com.github.insanusmokrassar.TelegramBotAPI.types.User
-import kotlinx.serialization.*
+import kotlinx.serialization.KSerializer
+import kotlinx.serialization.Serializable
import kotlinx.serialization.internal.ArrayListSerializer
@Serializable
@@ -9,9 +10,7 @@ data class RawMessageEntity(
val type: String,
val offset: Int,
val length: Int,
- @Optional
val url: String? = null,
- @Optional
val user: User? = null
) {
fun asMessageEntity(source: String): MessageEntity {
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Response.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Response.kt
index 437c9faacc..c5093b3997 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Response.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Response.kt
@@ -1,6 +1,7 @@
package com.github.insanusmokrassar.TelegramBotAPI.types
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Deprecated(
"Deprecated because incorrect name",
@@ -11,13 +12,9 @@ typealias ResponseParameters = Response
@Serializable
data class Response(
val ok: Boolean = false,
- @Optional
val description: String? = null,
@SerialName("error_code")
- @Optional
val errorCode: Int? = null,
- @Optional
val result: T? = null,
- @Optional
val parameters: ResponseParametersRaw? = null
)
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/ResponseParametersRaw.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/ResponseParametersRaw.kt
index 335b7df35f..f455d06535 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/ResponseParametersRaw.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/ResponseParametersRaw.kt
@@ -5,10 +5,8 @@ import kotlinx.serialization.*
@Serializable
data class ResponseParametersRaw(
@SerialName("migrate_to_chat_id")
- @Optional
private val migrateToChatId: ChatId? = null,
@SerialName("retry_after")
- @Optional
private val retryAfter: Long? = null
) {
@Transient
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/User.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/User.kt
index c824ff3d3c..bb9dfd5e27 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/User.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/User.kt
@@ -1,25 +1,20 @@
package com.github.insanusmokrassar.TelegramBotAPI.types
import kotlinx.serialization.*
-import kotlinx.serialization.Optional
import java.util.*
@Serializable
data class User(
val id: ChatId,
@SerialName(isBotField)
- @Optional
val isBot: Boolean = false,
@SerialName(firstNameField)
val firstName: String,
@SerialName(lastNameField)
- @Optional
val lastName: String? = null,
@SerialName(usernameField)
- @Optional
val username: Username? = null,
@SerialName(languageCodeField)
- @Optional
private val languageCode: String? = null
) {
@Transient
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Venue.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Venue.kt
index 8a7514a62d..ee6928b46c 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Venue.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/Venue.kt
@@ -1,7 +1,8 @@
package com.github.insanusmokrassar.TelegramBotAPI.types
import com.github.insanusmokrassar.TelegramBotAPI.CommonAbstracts.CommonVenueData
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class Venue(
@@ -12,9 +13,7 @@ data class Venue(
@SerialName(addressField)
override val address: String,
@SerialName(foursquareIdField)
- @Optional
override val foursquareId: String? = null,
@SerialName(foursquareTypeField)
- @Optional
override val foursquareType: String? = null
) : CommonVenueData
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/WebhookInfo.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/WebhookInfo.kt
index 84fa832908..7930f11d22 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/WebhookInfo.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/WebhookInfo.kt
@@ -9,19 +9,14 @@ data class WebhookInfo(
@SerialName(pendingUpdateCountField)
val awaitDeliery: Int,
@SerialName(maxAllowedConnectionsField)
- @Optional
val maxConnections: Int = 40, // default count according to documentation
@SerialName(hasCustomCertificateField)
- @Optional
val customCertificate: Boolean = false,
@SerialName(allowedUpdatesField)
- @Optional
val allowedUpdates: List = ALL_UPDATES_LIST,
@SerialName(lastErrorDateField)
- @Optional
val lastErrorDate: TelegramDate? = null,
@SerialName(lastErrorMessageField)
- @Optional
val lastErrorMessage: String? = null
) {
@Transient
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/ForceReply.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/ForceReply.kt
index 383d8d5084..abf21f1542 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/ForceReply.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/ForceReply.kt
@@ -1,10 +1,10 @@
package com.github.insanusmokrassar.TelegramBotAPI.types.buttons
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class ForceReply(
- @Optional
val selective: Boolean? = null
) : KeyboardMarkup {
@SerialName("force_reply")
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/KeyboardButton.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/KeyboardButton.kt
index 7e03499cc2..86bceb79f7 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/KeyboardButton.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/KeyboardButton.kt
@@ -1,14 +1,13 @@
package com.github.insanusmokrassar.TelegramBotAPI.types.buttons
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class KeyboardButton(
val text: String,
@SerialName("request_contact")
- @Optional
val requestContact: Boolean? = null,
@SerialName("request_location")
- @Optional
val requestLocation: Boolean? = null
)
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/KeyboardMarkupSerializer.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/KeyboardMarkupSerializer.kt
index 97de7e2ef1..d69825d7c2 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/KeyboardMarkupSerializer.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/KeyboardMarkupSerializer.kt
@@ -1,9 +1,11 @@
package com.github.insanusmokrassar.TelegramBotAPI.types.buttons
import kotlinx.serialization.*
+import kotlinx.serialization.internal.StringDescriptor
@Serializer(KeyboardMarkup::class)
object KeyboardMarkupSerializer : KSerializer {
+ override val descriptor: SerialDescriptor = StringDescriptor.withName(KeyboardMarkup::class.toString())
override fun serialize(encoder: Encoder, obj: KeyboardMarkup) {
when(obj) {
is ForceReply -> ForceReply.serializer().serialize(encoder, obj)
@@ -12,4 +14,8 @@ object KeyboardMarkupSerializer : KSerializer {
is ReplyKeyboardRemove -> ReplyKeyboardRemove.serializer().serialize(encoder, obj)
}
}
+
+ override fun deserialize(decoder: Decoder): KeyboardMarkup {
+ TODO("not implemented")
+ }
}
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/ReplyKeyboardMarkup.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/ReplyKeyboardMarkup.kt
index 938a1ad8dd..a6e9cf6a3d 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/ReplyKeyboardMarkup.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/ReplyKeyboardMarkup.kt
@@ -1,16 +1,14 @@
package com.github.insanusmokrassar.TelegramBotAPI.types.buttons
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class ReplyKeyboardMarkup(
val keyboard: Matrix,
@SerialName("resize_keyboard")
- @Optional
val resizeKeyboard: Boolean? = null,
@SerialName("one_time_keyboard")
- @Optional
val oneTimeKeyboard: Boolean? = null,
- @Optional
val selective: Boolean? = null
) : KeyboardMarkup
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/ReplyKeyboardRemove.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/ReplyKeyboardRemove.kt
index a5421a7078..0acae3fd4a 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/ReplyKeyboardRemove.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/buttons/ReplyKeyboardRemove.kt
@@ -1,10 +1,10 @@
package com.github.insanusmokrassar.TelegramBotAPI.types.buttons
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class ReplyKeyboardRemove(
- @Optional
val selective: Boolean? = null
) : KeyboardMarkup {
@SerialName("remove_keyboard")
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/chat/RawChat.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/chat/RawChat.kt
index f10eaf9957..69e3a91896 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/chat/RawChat.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/chat/RawChat.kt
@@ -2,24 +2,25 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.chat
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.message.RawMessage
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class RawChat(
override val id: ChatId,
private val type: String,
- @Optional private val title: String? = null,
- @Optional private val username: Username? = null,
- @Optional private val first_name: String? = null,
- @Optional private val last_name: String? = null,
- @Optional private val all_members_are_administrators: Boolean? = null,
- @Optional private val description: String? = null,
- @Optional private val invite_link: String? = null,
- @Optional private val pinned_message: RawMessage? = null,
- @Optional private val sticker_set_name: String? = null,
- @Optional private val can_set_sticker_set: Boolean? = null,
+ private val title: String? = null,
+ private val username: Username? = null,
+ private val first_name: String? = null,
+ private val last_name: String? = null,
+ private val all_members_are_administrators: Boolean? = null,
+ private val description: String? = null,
+ private val invite_link: String? = null,
+ private val pinned_message: RawMessage? = null,
+ private val sticker_set_name: String? = null,
+ private val can_set_sticker_set: Boolean? = null,
@SerialName("photo")
- @Optional override val chatPhoto: ChatPhoto? = null
+ override val chatPhoto: ChatPhoto? = null
) : Chat {
fun extractChat(): Chat {
return when (type) {
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/AnimationFile.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/AnimationFile.kt
index 59ca714b4d..2894fb044e 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/AnimationFile.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/AnimationFile.kt
@@ -2,7 +2,8 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.files
import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
import com.github.insanusmokrassar.TelegramBotAPI.types.files.abstracts.*
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class AnimationFile(
@@ -10,17 +11,12 @@ data class AnimationFile(
override val fileId: FileId,
override val width: Int,
override val height: Int,
- @Optional
override val duration: Long? = null,
- @Optional
override val thumb: PhotoSize? = null,
@SerialName(fileNameField)
- @Optional
override val fileName: String? = null,
@SerialName(mimeTypeField)
- @Optional
override val mimeType: String? = null,
@SerialName(fileSizeField)
- @Optional
override val fileSize: Long? = null
) : TelegramMediaFile, MimedMediaFile, ThumbedMediaFile, PlayableMediaFile, CustomNamedMediaFile, SizedMediaFile
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/AudioFile.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/AudioFile.kt
index 5816c4d87a..eeff93e261 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/AudioFile.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/AudioFile.kt
@@ -3,24 +3,19 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.files
import com.github.insanusmokrassar.TelegramBotAPI.CommonAbstracts.Performerable
import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
import com.github.insanusmokrassar.TelegramBotAPI.types.files.abstracts.*
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class AudioFile(
@SerialName(fileIdField)
override val fileId: FileId,
- @Optional
override val duration: Long? = null,
- @Optional
override val performer: String? = null,
- @Optional
override val title: String? = null,
@SerialName(mimeTypeField)
- @Optional
override val mimeType: String? = null,
@SerialName(fileSizeField)
- @Optional
override val fileSize: Long? = null,
- @Optional
override val thumb: PhotoSize? = null
) : TelegramMediaFile, MimedMediaFile, ThumbedMediaFile, PlayableMediaFile, TitledMediaFile, Performerable
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/DocumentFile.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/DocumentFile.kt
index b6060f4cc3..4235c29696 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/DocumentFile.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/DocumentFile.kt
@@ -2,21 +2,18 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.files
import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
import com.github.insanusmokrassar.TelegramBotAPI.types.files.abstracts.*
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class DocumentFile(
@SerialName(fileIdField)
override val fileId: FileId,
@SerialName(fileSizeField)
- @Optional
override val fileSize: Long? = null,
- @Optional
override val thumb: PhotoSize? = null,
@SerialName(mimeTypeField)
- @Optional
override val mimeType: String? = null,
@SerialName(fileNameField)
- @Optional
override val fileName: String? = null
) : TelegramMediaFile, MimedMediaFile, ThumbedMediaFile, CustomNamedMediaFile
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/File.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/File.kt
index a933f0967d..6badacd212 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/File.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/File.kt
@@ -2,13 +2,13 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.files
import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
import com.github.insanusmokrassar.TelegramBotAPI.types.files.abstracts.*
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class File(
@SerialName(fileIdField)
override val fileId: FileId,
@SerialName(fileSizeField)
- @Optional
override val fileSize: Long? = null
): TelegramMediaFile
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/PathedFile.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/PathedFile.kt
index 0e130b8c62..e7d48b5823 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/PathedFile.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/PathedFile.kt
@@ -2,7 +2,8 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.files
import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
import com.github.insanusmokrassar.TelegramBotAPI.types.files.abstracts.*
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class PathedFile(
@@ -11,7 +12,6 @@ data class PathedFile(
@SerialName(filePathField)
val filePath: String,
@SerialName(fileSizeField)
- @Optional
override val fileSize: Long? = null
): TelegramMediaFile
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/PhotoSize.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/PhotoSize.kt
index 963554dc6b..6b977bf1c3 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/PhotoSize.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/PhotoSize.kt
@@ -20,7 +20,6 @@ data class PhotoSize(
@SerialName(fileIdField)
override val fileId: FileId,
@SerialName(fileSizeField)
- @Optional
override val fileSize: Long? = null,
override val width: Int,
override val height: Int
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/Sticker.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/Sticker.kt
index 6634b4ab42..5cbc60242e 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/Sticker.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/Sticker.kt
@@ -4,7 +4,8 @@ import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.files.abstracts.*
import com.github.insanusmokrassar.TelegramBotAPI.types.stickers.MaskPosition
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class Sticker(
@@ -15,18 +16,13 @@ data class Sticker(
@SerialName(heightField)
override val height: Int,
@SerialName(thumbField)
- @Optional
override val thumb: PhotoSize? = null,
@SerialName(emojiField)
- @Optional
val emoji: String? = null,
@SerialName(stickerSetNameField)
- @Optional
val stickerSetName: String? = null,
@SerialName(maskPositionField)
- @Optional
val maskPosition: MaskPosition? = null,
@SerialName(fileSizeField)
- @Optional
override val fileSize: Long? = null
) : TelegramMediaFile, SizedMediaFile, ThumbedMediaFile
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/TelegramFile.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/TelegramFile.kt
index 8776188bcf..d456422d63 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/TelegramFile.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/TelegramFile.kt
@@ -2,16 +2,15 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.files
import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
import com.github.insanusmokrassar.TelegramBotAPI.types.files.abstracts.*
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class TelegramFile(
@SerialName(fileIdField)
override val fileId: FileId,
@SerialName(fileSizeField)
- @Optional
override val fileSize: Long? = null,
@SerialName("file_path")
- @Optional
val filePath: String? = null
) : TelegramMediaFile
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/VideoFile.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/VideoFile.kt
index 1bc2bf681d..f9e7d74e87 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/VideoFile.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/VideoFile.kt
@@ -2,7 +2,8 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.files
import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
import com.github.insanusmokrassar.TelegramBotAPI.types.files.abstracts.*
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class VideoFile(
@@ -10,14 +11,10 @@ data class VideoFile(
override val fileId: FileId,
override val width: Int,
override val height: Int,
- @Optional
override val duration: Long? = null,
- @Optional
override val thumb: PhotoSize? = null,
@SerialName(mimeTypeField)
- @Optional
override val mimeType: String? = null,
@SerialName(fileSizeField)
- @Optional
override val fileSize: Long? = null
) : TelegramMediaFile, MimedMediaFile, ThumbedMediaFile, PlayableMediaFile, SizedMediaFile
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/VideoNoteFile.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/VideoNoteFile.kt
index ff20f7fdad..90bfb35239 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/VideoNoteFile.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/VideoNoteFile.kt
@@ -2,7 +2,8 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.files
import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
import com.github.insanusmokrassar.TelegramBotAPI.types.files.abstracts.*
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class VideoNoteFile(
@@ -10,12 +11,9 @@ data class VideoNoteFile(
override val fileId: FileId,
@SerialName("length")
override val width: Int,
- @Optional
override val duration: Long? = null,
- @Optional
override val thumb: PhotoSize? = null,
@SerialName(fileSizeField)
- @Optional
override val fileSize: Long? = null
) : TelegramMediaFile, ThumbedMediaFile, PlayableMediaFile, SizedMediaFile {
override val height: Int
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/VoiceFile.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/VoiceFile.kt
index 00c5ba740d..b0ee5a26a7 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/VoiceFile.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/files/VoiceFile.kt
@@ -2,18 +2,16 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.files
import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
import com.github.insanusmokrassar.TelegramBotAPI.types.files.abstracts.*
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class VoiceFile(
@SerialName(fileIdField)
override val fileId: FileId,
- @Optional
override val duration: Long? = null,
@SerialName(mimeTypeField)
- @Optional
override val mimeType: String? = null,
@SerialName(fileSizeField)
- @Optional
override val fileSize: Long? = null
) : TelegramMediaFile, MimedMediaFile, PlayableMediaFile
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/games/Game.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/games/Game.kt
index be6dd46cd4..c531d0e3c3 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/games/Game.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/games/Game.kt
@@ -15,14 +15,11 @@ data class Game(
@SerialName(photoField)
val photo: Photo,
@SerialName(textField)
- @Optional
val text: String? = null,
@Serializable(RawMessageEntitiesSerializer::class)
@SerialName(textEntitiesField)
- @Optional
private val textEntitiesRaw: RawMessageEntities? = null,
@SerialName(animationField)
- @Optional
val animation: AnimationFile? = null
) {
@Transient
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/message/RawMessage.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/message/RawMessage.kt
index 19b54b86d2..30d48e9916 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/message/RawMessage.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/message/RawMessage.kt
@@ -30,60 +30,59 @@ data class RawMessage(
@SerialName(chatField)
private val chat: RawChat,
@SerialName(fromField)
- @Optional
private val from: User? = null,
- @Optional private val forward_from: User? = null,
- @Optional private val forward_from_chat: RawChat? = null,
- @Optional private val forward_from_message_id: MessageIdentifier? = null,
- @Optional private val forward_signature: ForwardSignature? = null,
- @Optional private val forward_date: TelegramDate? = null,
- @Optional private val reply_to_message: RawMessage? = null,
- @Optional private val edit_date: TelegramDate? = null,
- @Optional private val media_group_id: MediaGroupIdentifier? = null,
- @Optional private val author_signature: AuthorSignature? = null,
- @Optional private val text: String? = null,
+ private val forward_from: User? = null,
+ private val forward_from_chat: RawChat? = null,
+ private val forward_from_message_id: MessageIdentifier? = null,
+ private val forward_signature: ForwardSignature? = null,
+ private val forward_date: TelegramDate? = null,
+ private val reply_to_message: RawMessage? = null,
+ private val edit_date: TelegramDate? = null,
+ private val media_group_id: MediaGroupIdentifier? = null,
+ private val author_signature: AuthorSignature? = null,
+ private val text: String? = null,
@Serializable(RawMessageEntitiesSerializer::class)
- @Optional private val entities: RawMessageEntities? = null,
- @Optional private val caption: String? = null,
+ private val entities: RawMessageEntities? = null,
+ private val caption: String? = null,
@Serializable(RawMessageEntitiesSerializer::class)
- @Optional private val caption_entities: RawMessageEntities? = null,
- @Optional private val audio: AudioFile? = null,
- @Optional private val document: DocumentFile? = null,
- @Optional private val animation: AnimationFile? = null,
- @Optional private val game: Game? = null,
+ private val caption_entities: RawMessageEntities? = null,
+ private val audio: AudioFile? = null,
+ private val document: DocumentFile? = null,
+ private val animation: AnimationFile? = null,
+ private val game: Game? = null,
@Serializable(PhotoSerializer::class)
- @Optional private val photo: Photo? = null,
- @Optional private val sticker: Sticker? = null,
- @Optional private val video: VideoFile? = null,
- @Optional private val voice: VoiceFile? = null,
- @Optional private val video_note: VideoNoteFile? = null,
- @Optional private val contact: Contact? = null,
- @Optional private val location: Location? = null,
- @Optional private val venue: Venue? = null,
- @Optional private val new_chat_members: Array? = null,
- @Optional private val left_chat_member: User? = null,
- @Optional private val new_chat_title: String? = null,
+ private val photo: Photo? = null,
+ private val sticker: Sticker? = null,
+ private val video: VideoFile? = null,
+ private val voice: VoiceFile? = null,
+ private val video_note: VideoNoteFile? = null,
+ private val contact: Contact? = null,
+ private val location: Location? = null,
+ private val venue: Venue? = null,
+ private val new_chat_members: List? = null,
+ private val left_chat_member: User? = null,
+ private val new_chat_title: String? = null,
@Serializable(PhotoSerializer::class)
- @Optional private val new_chat_photo: Photo? = null,
- @Optional private val delete_chat_photo: Boolean = false,
- @Optional private val group_chat_created: Boolean = false,
- @Optional private val supergroup_chat_created: Boolean = false,
- @Optional private val channel_chat_created: Boolean = false,
- @Optional private val migrate_to_chat_id: ChatIdentifier? = null,
- @Optional private val migrate_from_chat_id: ChatIdentifier? = null,
- @Optional private val pinned_message: RawMessage? = null,
- @Optional private val invoice: Invoice? = null,
- @Optional private val successful_payment: SuccessfulPayment? = null,
+ private val new_chat_photo: Photo? = null,
+ private val delete_chat_photo: Boolean = false,
+ private val group_chat_created: Boolean = false,
+ private val supergroup_chat_created: Boolean = false,
+ private val channel_chat_created: Boolean = false,
+ private val migrate_to_chat_id: ChatIdentifier? = null,
+ private val migrate_from_chat_id: ChatIdentifier? = null,
+ private val pinned_message: RawMessage? = null,
+ private val invoice: Invoice? = null,
+ private val successful_payment: SuccessfulPayment? = null,
// login property
- @Optional private val connected_website: String? = null,
+ private val connected_website: String? = null,
// passport property
- @Optional private val passport_data: Unit? = null
+ private val passport_data: Unit? = null
) {
@Transient
private val content: MessageContent? by lazy {
- val adaptedCaptionEntities = caption ?.let { _ ->
+ val adaptedCaptionEntities = caption ?.let {
caption_entities ?.map {
it.asMessageEntity(caption)
}
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/payments/PreCheckoutQuery.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/payments/PreCheckoutQuery.kt
index 0148d2c5ca..6a773ed7bc 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/payments/PreCheckoutQuery.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/payments/PreCheckoutQuery.kt
@@ -2,8 +2,8 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.payments
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.payments.abstracts.*
-import kotlinx.serialization.*
-import kotlinx.serialization.Optional
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
import java.util.*
// TODO:: separate to normal classes hierarchy
@@ -21,9 +21,7 @@ data class PreCheckoutQuery(
@SerialName(invoicePayloadField)
val invoicePayload: InvoicePayload,
@SerialName(shippingOptionIdField)
- @Optional
val shippingOptionId: ShippingOptionIdentifier? = null,
@SerialName(orderInfoField)
- @Optional
val orderInfo: OrderInfo? = null
) : Currencied, Amounted
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/payments/ShippingAddress.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/payments/ShippingAddress.kt
index ade1e1a320..2d99fd6bb7 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/payments/ShippingAddress.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/payments/ShippingAddress.kt
@@ -1,7 +1,8 @@
package com.github.insanusmokrassar.TelegramBotAPI.types.payments
import com.github.insanusmokrassar.TelegramBotAPI.types.*
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class ShippingAddress(
@@ -14,9 +15,7 @@ data class ShippingAddress(
@SerialName(secondStreetLineField)
val secondStreetLine: String,
@SerialName(stateField)
- @Optional
val state: String = "",
@SerialName(postCodeField)
- @Optional
val postCode: String = ""
)
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/payments/SuccessfulPayment.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/payments/SuccessfulPayment.kt
index 68f0d5fec0..af3f2c87f7 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/payments/SuccessfulPayment.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/payments/SuccessfulPayment.kt
@@ -2,8 +2,8 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.payments
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.payments.abstracts.*
-import kotlinx.serialization.*
-import kotlinx.serialization.Optional
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
import java.util.*
@Serializable
@@ -20,9 +20,7 @@ data class SuccessfulPayment(
@SerialName(providerPaymentChargeIdField)
val providerPaymentChargeId: String,
@SerialName(shippingOptionIdField)
- @Optional
val shippingOptionId: String? = null,
@SerialName(orderInfoField)
- @Optional
val orderInfo: OrderInfo? = null
) : Amounted, Currencied
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/stickers/StickerSet.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/stickers/StickerSet.kt
index 19f8a48121..85fa4210d5 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/stickers/StickerSet.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/stickers/StickerSet.kt
@@ -2,7 +2,8 @@ package com.github.insanusmokrassar.TelegramBotAPI.types.stickers
import com.github.insanusmokrassar.TelegramBotAPI.types.*
import com.github.insanusmokrassar.TelegramBotAPI.types.files.Sticker
-import kotlinx.serialization.*
+import kotlinx.serialization.SerialName
+import kotlinx.serialization.Serializable
@Serializable
data class StickerSet(
@@ -13,6 +14,5 @@ data class StickerSet(
@SerialName(stickersField)
val stickers: List,
@SerialName(containsMasksField)
- @Optional
val containsMasks: Boolean = false
)
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/update/RawUpdate.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/update/RawUpdate.kt
index 4c5e8699e1..097a200071 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/update/RawUpdate.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/update/RawUpdate.kt
@@ -17,15 +17,15 @@ import kotlinx.serialization.*
data class RawUpdate constructor(
@SerialName(updateIdField)
val updateId: UpdateIdentifier,
- @Optional private val message: RawMessage? = null,
- @Optional private val edited_message: RawMessage? = null,
- @Optional private val channel_post: RawMessage? = null,
- @Optional private val edited_channel_post: RawMessage? = null,
- @Optional private val inline_query: RawInlineQuery? = null,
- @Optional private val chosen_inline_result: RawChosenInlineResult? = null,
- @Optional private val callback_query: RawCallbackQuery? = null,
- @Optional private val shipping_query: ShippingQuery? = null,
- @Optional private val pre_checkout_query: PreCheckoutQuery? = null
+ private val message: RawMessage? = null,
+ private val edited_message: RawMessage? = null,
+ private val channel_post: RawMessage? = null,
+ private val edited_channel_post: RawMessage? = null,
+ private val inline_query: RawInlineQuery? = null,
+ private val chosen_inline_result: RawChosenInlineResult? = null,
+ private val callback_query: RawCallbackQuery? = null,
+ private val shipping_query: ShippingQuery? = null,
+ private val pre_checkout_query: PreCheckoutQuery? = null
) {
@Transient
val asUpdate: Update by lazy {
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/utils/extensions/UpdatesPoller.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/utils/extensions/UpdatesPoller.kt
index f0dd975b2a..7ead0ba33b 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/utils/extensions/UpdatesPoller.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/utils/extensions/UpdatesPoller.kt
@@ -2,6 +2,7 @@ package com.github.insanusmokrassar.TelegramBotAPI.utils.extensions
import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
import com.github.insanusmokrassar.TelegramBotAPI.requests.GetUpdates
+import com.github.insanusmokrassar.TelegramBotAPI.requests.webhook.DeleteWebhook
import com.github.insanusmokrassar.TelegramBotAPI.types.UpdateIdentifier
import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.MediaGroupMessage
import com.github.insanusmokrassar.TelegramBotAPI.types.update.abstracts.BaseMessageUpdate
@@ -72,7 +73,8 @@ class UpdatesPoller(
pushMediaGroupUpdate()
}
- fun start(): Job {
+ suspend fun start(): Job {
+ executor.executeUnsafe(DeleteWebhook())
return pollerJob ?: scope.launch {
while (isActive) {
delay(requestsDelayMillis)
diff --git a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/utils/extensions/UpdatesPolling.kt b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/utils/extensions/UpdatesPolling.kt
index 257b1db839..8777aec2f5 100644
--- a/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/utils/extensions/UpdatesPolling.kt
+++ b/src/main/kotlin/com/github/insanusmokrassar/TelegramBotAPI/utils/extensions/UpdatesPolling.kt
@@ -9,7 +9,7 @@ import java.util.concurrent.Executors
typealias UpdateReceiver = suspend (T) -> Unit
-fun RequestsExecutor.startGettingOfUpdates(
+suspend fun RequestsExecutor.startGettingOfUpdates(
requestsDelayMillis: Long = 1000,
scope: CoroutineScope = CoroutineScope(Executors.newFixedThreadPool(4).asCoroutineDispatcher()),
allowedUpdates: List? = null,
@@ -18,7 +18,7 @@ fun RequestsExecutor.startGettingOfUpdates(
return UpdatesPoller(this, requestsDelayMillis, scope, allowedUpdates, block).start()
}
-fun RequestsExecutor.startGettingOfUpdates(
+suspend fun RequestsExecutor.startGettingOfUpdates(
messageCallback: UpdateReceiver? = null,
messageMediaGroupCallback: UpdateReceiver? = null,
editedMessageCallback: UpdateReceiver? = null,
@@ -58,7 +58,7 @@ fun RequestsExecutor.startGettingOfUpdates(
)
}
-fun RequestsExecutor.startGettingOfUpdates(
+suspend fun RequestsExecutor.startGettingOfUpdates(
messageCallback: UpdateReceiver? = null,
mediaGroupCallback: UpdateReceiver? = null,
editedMessageCallback: UpdateReceiver? = null,