diff --git a/TelegramBotAPI/CHANGELOG.md b/CHANGELOG.md
similarity index 98%
rename from TelegramBotAPI/CHANGELOG.md
rename to CHANGELOG.md
index f1021ac54f..2cb520ee04 100644
--- a/TelegramBotAPI/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -55,6 +55,18 @@
* Fixes in `InputMedia` - `media` field was not included to serialization
+### 0.23.3 Project separating prepare version
+
+__API Extensions__
+
+* Project created
+* For `SendPhoto` was added new functions for uploading of `MultipartFile`
+* `deleteWebhook` extension for `RequestsExecutor` was added
+
+__Telegram Bot API__
+
+* All `RequestsExecutor` extensions related to Telegram Bots API was replaced into `API Extensions` project
+
## 0.22.0
* **`KtorCallFactory` must return `HttpStatement` instead of `HttpClientCall`**
diff --git a/README.md b/README.md
index b55da202fa..2293a905ba 100644
--- a/README.md
+++ b/README.md
@@ -37,7 +37,11 @@ of signed artifacts in Bintray). You can:
[here](https://mvnrepository.com/artifact/com.github.insanusmokrassar/TelegramBotAPI))
* Add `jCenter` repository in build config
-### Maven
+### TelegramBotAPI
+
+Contains core and most required things, like types, requests and `KtorRequestsExecutor`.
+
+#### Maven
Dependency config presented here:
@@ -49,7 +53,7 @@ Dependency config presented here:
```
-### Gradle
+#### Gradle
To use last versions you will need to add one line in repositories block of your `build.gradle`:
@@ -67,14 +71,49 @@ or for old gradle:
compile "com.github.insanusmokrassar:TelegramBotAPI:$telegrambotapi_version"
```
+### API extensions
+
+Contains extensions for `RequestsExecutor` which usually more obvious than original ones in `TelegramBotAPI` and more
+useful.
+
+#### Maven
+
+Dependency config presented here:
+
+```xml
+
+ com.github.insanusmokrassar
+ TelegramBotAPI-extensions-api
+ ${telegrambotapi.version}
+
+```
+
+#### Gradle
+
+To use last versions you will need to add one line in repositories block of your `build.gradle`:
+
+`jcenter()` or `mavenCentral()`
+
+And add next line to your dependencies block:
+
+```groovy
+implementation "com.github.insanusmokrassar:TelegramBotAPI-extensions-api:$telegrambotapi_version"
+```
+
+or for old gradle:
+
+```groovy
+compile "com.github.insanusmokrassar:TelegramBotAPI-extensions-api:$telegrambotapi_version"
+```
+
## How to work with library?
For now, this library have no some API god-object. Instead of this, this library has several
important objects:
-* [RequestsExecutor](https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/bot/RequestsExecutor.kt)
-* [Requests](https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests)
-* [Types](https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types)
+* [RequestsExecutor](https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/bot/RequestsExecutor.kt)
+* [Requests](https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests)
+* [Types](https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types)
### Types
@@ -101,16 +140,16 @@ val requestsExecutor: RequestsExecutor = ...
requestsExecutor.execute(GetMe())
```
-Or you can use new syntax:
+Or you can use new syntax (available by implementing of project [API extensions](#API-extensions):
```kotlin
val bot: RequestsExecutor = ...
bot.getMe()
```
-The result type of [GetMe (and getMe extension)](https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetMe.kt)
+The result type of [GetMe (and getMe extension)](https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetMe.kt)
request is
-[ExtendedBot](https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/User.kt).
+[ExtendedBot](https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/types/User.kt).
### RequestsExecutor
@@ -206,6 +245,6 @@ Here:
* `WEBHOOK_URL` - the url which will be used by Telegram system to send updates
* `INTERNAL_PORT` - the port which will be used in bot for listening of updates
-* `filter` - instance of [UpdatesFilter](https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/updateshandlers/UpdatesFilter.kt),
+* `filter` - instance of [UpdatesFilter](https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/updateshandlers/UpdatesFilter.kt),
which will be used to filter incoming updates
* `ENGINE_FACTORY` - used factory name, for example, `CIO` in case of usage `io.ktor:ktor-server-cio` as server engine
diff --git a/TelegramBotAPI-extensions-api/build.gradle b/TelegramBotAPI-extensions-api/build.gradle
new file mode 100644
index 0000000000..ee02105871
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/build.gradle
@@ -0,0 +1,48 @@
+buildscript {
+ repositories {
+ mavenLocal()
+ jcenter()
+ mavenCentral()
+ }
+
+ dependencies {
+ classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
+ classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
+ classpath "com.jfrog.bintray.gradle:gradle-bintray-plugin:$gradle_bintray_plugin_version"
+ }
+}
+
+plugins {
+ id "org.jetbrains.kotlin.multiplatform" version "$kotlin_version"
+ id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+}
+
+project.version = "$library_version"
+project.group = "com.github.insanusmokrassar"
+
+apply from: "publish.gradle"
+
+repositories {
+ mavenLocal()
+ jcenter()
+ mavenCentral()
+ maven { url "https://kotlin.bintray.com/kotlinx" }
+}
+
+kotlin {
+ jvm()
+ js()
+
+ sourceSets {
+ commonMain {
+ dependencies {
+ implementation kotlin('stdlib')
+ if (project.hasProperty('RELEASE_MODE') && project.property('RELEASE_MODE') == "true") {
+ api "${project.group}:TelegramBotAPI:$library_version"
+ } else {
+ implementation project(":TelegramBotAPI")
+ }
+ }
+ }
+ }
+}
diff --git a/TelegramBotAPI-extensions-api/maven.publish.gradle b/TelegramBotAPI-extensions-api/maven.publish.gradle
new file mode 100644
index 0000000000..8fc16d04e8
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/maven.publish.gradle
@@ -0,0 +1,57 @@
+apply plugin: 'maven-publish'
+
+task javadocsJar(type: Jar) {
+ classifier = 'javadoc'
+}
+
+afterEvaluate {
+ project.publishing.publications.all {
+ // rename artifacts
+ groupId "${project.group}"
+ if (it.name.contains('kotlinMultiplatform')) {
+ artifactId = "${project.name}"
+ } else {
+ artifactId = "${project.name}-$name"
+ }
+ }
+}
+
+publishing {
+ publications.all {
+ artifact javadocsJar
+
+ pom.withXml {
+ asNode().children().last() + {
+ resolveStrategy = Closure.DELEGATE_FIRST
+
+ description "API extensions which provide work with RequestsExecutor of TelegramBotAPI almost like it is described in original Telegram Bot API reference"
+ name "Telegram Bot API Extensions for API"
+ url "https://insanusmokrassar.github.io/TelegramBotAPI"
+
+ scm {
+ developerConnection "scm:git:[fetch=]https://github.com/insanusmokrassar/TelegramBotAPI.git[push=]https://github.com/insanusmokrassar/TelegramBotAPI.git"
+ url "https://github.com/insanusmokrassar/TelegramBotAPI.git"
+ }
+
+ developers {
+
+ developer {
+ id "InsanusMokrassar"
+ name "Ovsiannikov Aleksei"
+ email "ovsyannikov.alexey95@gmail.com"
+ }
+
+ }
+
+ licenses {
+
+ license {
+ name "Apache Software License 2.0"
+ url "https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/LICENSE"
+ }
+
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/TelegramBotAPI-extensions-api/mpp_publish_template.json b/TelegramBotAPI-extensions-api/mpp_publish_template.json
new file mode 100644
index 0000000000..7558d0e4c0
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/mpp_publish_template.json
@@ -0,0 +1 @@
+{"bintrayConfig":{"repo":"StandardRepository","packageName":"${project.name}","packageVcs":"https://github.com/InsanusMokrassar/TelegramBotAPI"},"licenses":[{"id":"Apache-2.0","title":"Apache Software License 2.0","url":"https://github.com/InsanusMokrassar/TelegramBotAPI/blob/master/LICENSE"}],"mavenConfig":{"name":"Telegram Bot API Extensions for API","description":"API extensions which provide work with RequestsExecutor of TelegramBotAPI almost like it is described in original Telegram Bot API reference","url":"https://insanusmokrassar.github.io/TelegramBotAPI","vcsUrl":"https://github.com/insanusmokrassar/TelegramBotAPI.git","developers":[{"id":"InsanusMokrassar","name":"Ovsiannikov Aleksei","eMail":"ovsyannikov.alexey95@gmail.com"}]},"type":"Multiplatform"}
\ No newline at end of file
diff --git a/TelegramBotAPI-extensions-api/publish.gradle b/TelegramBotAPI-extensions-api/publish.gradle
new file mode 100644
index 0000000000..2fd72b3b1a
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/publish.gradle
@@ -0,0 +1,55 @@
+apply plugin: 'com.jfrog.bintray'
+
+apply from: "maven.publish.gradle"
+
+bintray {
+ user = project.hasProperty('BINTRAY_USER') ? project.property('BINTRAY_USER') : System.getenv('BINTRAY_USER')
+ key = project.hasProperty('BINTRAY_KEY') ? project.property('BINTRAY_KEY') : System.getenv('BINTRAY_KEY')
+ filesSpec {
+ from "${buildDir}/publications/"
+ eachFile {
+ String directorySubname = it.getFile().parentFile.name
+ if (it.getName() == "module.json") {
+ if (directorySubname == "kotlinMultiplatform") {
+ it.setPath("${project.name}/${project.version}/${project.name}-${project.version}.module")
+ } else {
+ it.setPath("${project.name}-${directorySubname}/${project.version}/${project.name}-${directorySubname}-${project.version}.module")
+ }
+ } else {
+ if (directorySubname == "kotlinMultiplatform" && it.getName() == "pom-default.xml") {
+ it.setPath("${project.name}/${project.version}/${project.name}-${project.version}.pom")
+ } else {
+ it.exclude()
+ }
+ }
+ }
+ into "${project.group}".replace(".", "/")
+ }
+ pkg {
+ repo = "StandardRepository"
+ name = "${project.name}"
+ vcsUrl = "https://github.com/InsanusMokrassar/TelegramBotAPI"
+ licenses = ["Apache-2.0"]
+ version {
+ name = "${project.version}"
+ released = new Date()
+ vcsTag = "${project.version}"
+ gpg {
+ sign = true
+ passphrase = project.hasProperty('signing.gnupg.passphrase') ? project.property('signing.gnupg.passphrase') : System.getenv('signing.gnupg.passphrase')
+ }
+ }
+ }
+}
+
+bintrayUpload.doFirst {
+ publications = publishing.publications.collect {
+ if (it.name.contains('kotlinMultiplatform')) {
+ null
+ } else {
+ it.name
+ }
+ } - null
+}
+
+bintrayUpload.dependsOn publishToMavenLocal
\ No newline at end of file
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/DeleteMessage.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/DeleteMessage.kt
new file mode 100644
index 0000000000..70039acd22
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/DeleteMessage.kt
@@ -0,0 +1,28 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.DeleteMessage
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.Message
+
+suspend fun RequestsExecutor.deleteMessage(
+ chatId: ChatIdentifier,
+ messageId: MessageIdentifier
+) = execute(
+ DeleteMessage(chatId, messageId)
+)
+
+suspend fun RequestsExecutor.deleteMessage(
+ chat: Chat,
+ messageId: MessageIdentifier
+) = deleteMessage(chat.id, messageId)
+
+suspend fun RequestsExecutor.deleteMessage(
+ message: Message
+) = deleteMessage(message.chat, message.messageId)
+
+suspend fun Message.delete(
+ requestsExecutor: RequestsExecutor
+) = requestsExecutor.deleteMessage(this)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/ForwardMessage.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/ForwardMessage.kt
new file mode 100644
index 0000000000..ea73e06de3
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/ForwardMessage.kt
@@ -0,0 +1,50 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.ForwardMessage
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.Message
+
+suspend fun RequestsExecutor.forwardMessage(
+ fromChatId: ChatIdentifier,
+ toChatId: ChatIdentifier,
+ messageId: MessageIdentifier,
+ disableNotification: Boolean = false
+) = execute(
+ ForwardMessage(fromChatId, toChatId, messageId, disableNotification)
+)
+
+suspend fun RequestsExecutor.forwardMessage(
+ fromChat: Chat,
+ toChatId: ChatIdentifier,
+ messageId: MessageIdentifier,
+ disableNotification: Boolean = false
+) = forwardMessage(fromChat.id, toChatId, messageId, disableNotification)
+
+suspend fun RequestsExecutor.forwardMessage(
+ fromChatId: ChatIdentifier,
+ toChat: Chat,
+ messageId: MessageIdentifier,
+ disableNotification: Boolean = false
+) = forwardMessage(fromChatId, toChat.id, messageId, disableNotification)
+
+suspend fun RequestsExecutor.forwardMessage(
+ fromChat: Chat,
+ toChat: Chat,
+ messageId: MessageIdentifier,
+ disableNotification: Boolean = false
+) = forwardMessage(fromChat.id, toChat.id, messageId, disableNotification)
+
+suspend fun RequestsExecutor.forwardMessage(
+ toChatId: ChatIdentifier,
+ message: Message,
+ disableNotification: Boolean = false
+) = forwardMessage(message.chat, toChatId, message.messageId, disableNotification)
+
+suspend fun RequestsExecutor.forwardMessage(
+ toChat: Chat,
+ message: Message,
+ disableNotification: Boolean = false
+) = forwardMessage(message.chat, toChat, message.messageId, disableNotification)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/GetMe.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/GetMe.kt
new file mode 100644
index 0000000000..d0a48bdbf4
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/GetMe.kt
@@ -0,0 +1,6 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.GetMe
+
+suspend fun RequestsExecutor.getMe() = execute(GetMe())
\ No newline at end of file
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/GetUpdates.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/GetUpdates.kt
new file mode 100644
index 0000000000..7d9edc0b54
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/GetUpdates.kt
@@ -0,0 +1,27 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.GetUpdates
+import com.github.insanusmokrassar.TelegramBotAPI.types.ALL_UPDATES_LIST
+import com.github.insanusmokrassar.TelegramBotAPI.types.UpdateIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.update.abstracts.Update
+
+suspend fun RequestsExecutor.getUpdates(
+ offset: UpdateIdentifier? = null,
+ limit: Int? = null,
+ timeout: Int? = null,
+ allowed_updates: List? = ALL_UPDATES_LIST
+) = execute(
+ GetUpdates(
+ offset, limit, timeout, allowed_updates
+ )
+)
+
+suspend fun RequestsExecutor.getUpdates(
+ lastUpdate: Update,
+ limit: Int? = null,
+ timeout: Int? = null,
+ allowed_updates: List? = ALL_UPDATES_LIST
+) = getUpdates(
+ lastUpdate.updateId + 1, limit, timeout, allowed_updates
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/LiveLocation.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/LiveLocation.kt
new file mode 100644
index 0000000000..144dc30d3c
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/LiveLocation.kt
@@ -0,0 +1,135 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.LiveLocation.editLiveLocation
+import com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.LiveLocation.stopLiveLocation
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.SendLocation
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.ContentMessage
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.content.LocationContent
+import com.soywiz.klock.DateTime
+import com.soywiz.klock.TimeSpan
+import io.ktor.utils.io.core.Closeable
+import kotlinx.coroutines.CoroutineScope
+import kotlinx.coroutines.launch
+import kotlin.math.ceil
+
+private val livePeriodDelayMillis = (livePeriodLimit.last - 60L) * 1000L
+class LiveLocation internal constructor(
+ private val requestsExecutor: RequestsExecutor,
+ scope: CoroutineScope,
+ autoCloseTimeDelay: Double,
+ initMessage: ContentMessage
+) : Closeable {
+ private val doWhenClose = {
+ scope.launch {
+ requestsExecutor.stopLiveLocation(message)
+ }
+ }
+ private val autoCloseTime = DateTime.now() + TimeSpan(autoCloseTimeDelay)
+ val leftUntilCloseMillis: TimeSpan
+ get() = autoCloseTime - DateTime.now()
+
+ var isClosed: Boolean = false
+ private set
+ get() = field || leftUntilCloseMillis.millisecondsLong < 0L
+
+ private var message: ContentMessage = initMessage
+ val lastLocation: Location
+ get() = message.content.location
+
+ suspend fun updateLocation(
+ location: Location,
+ replyMarkup: InlineKeyboardMarkup? = null
+ ): Location {
+ if (!isClosed) {
+ message = requestsExecutor.editLiveLocation(
+ message,
+ location,
+ replyMarkup
+ )
+ return lastLocation
+ } else {
+ error("LiveLocation is closed")
+ }
+ }
+
+ override fun close() {
+ if (isClosed) {
+ return
+ }
+ isClosed = true
+ doWhenClose()
+ }
+}
+
+suspend fun RequestsExecutor.startLiveLocation(
+ scope: CoroutineScope,
+ chatId: ChatIdentifier,
+ latitude: Double,
+ longitude: Double,
+ liveTimeMillis: Long = livePeriodDelayMillis,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+): LiveLocation {
+ val liveTimeAsDouble = liveTimeMillis.toDouble()
+ val locationMessage = execute(
+ SendLocation(
+ chatId,
+ latitude,
+ longitude,
+ ceil(liveTimeAsDouble / 1000).toLong(),
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+ )
+
+ return LiveLocation(
+ this,
+ scope,
+ liveTimeAsDouble,
+ locationMessage
+ )
+}
+
+suspend fun RequestsExecutor.startLiveLocation(
+ scope: CoroutineScope,
+ chat: Chat,
+ latitude: Double,
+ longitude: Double,
+ liveTimeMillis: Long = livePeriodDelayMillis,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+): LiveLocation = startLiveLocation(
+ scope, chat.id, latitude, longitude, liveTimeMillis, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.startLiveLocation(
+ scope: CoroutineScope,
+ chatId: ChatId,
+ location: Location,
+ liveTimeMillis: Long = livePeriodDelayMillis,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+): LiveLocation = startLiveLocation(
+ scope, chatId, location.latitude, location.longitude, liveTimeMillis, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.startLiveLocation(
+ scope: CoroutineScope,
+ chat: Chat,
+ location: Location,
+ liveTimeMillis: Long = livePeriodDelayMillis,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+): LiveLocation = startLiveLocation(
+ scope, chat.id, location.latitude, location.longitude, liveTimeMillis, disableNotification, replyToMessageId, replyMarkup
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/StopPoll.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/StopPoll.kt
new file mode 100644
index 0000000000..668f716b38
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/StopPoll.kt
@@ -0,0 +1,34 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.StopPoll
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.Message
+
+suspend fun RequestsExecutor.stopPoll(
+ chatId: ChatIdentifier,
+ messageId: MessageIdentifier,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(
+ StopPoll(chatId, messageId, replyMarkup)
+)
+
+suspend fun RequestsExecutor.stopPoll(
+ chat: Chat,
+ messageId: MessageIdentifier,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = stopPoll(chat.id, messageId, replyMarkup)
+
+suspend fun RequestsExecutor.stopPoll(
+ chatId: ChatId,
+ message: Message,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = stopPoll(chatId, message.messageId, replyMarkup)
+
+suspend fun RequestsExecutor.stopPoll(
+ chat: Chat,
+ message: Message,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = stopPoll(chat.id, message.messageId, replyMarkup)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/answers/AnswerCallbackQuery.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/answers/AnswerCallbackQuery.kt
new file mode 100644
index 0000000000..c3bc33741a
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/answers/AnswerCallbackQuery.kt
@@ -0,0 +1,22 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.answers
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.answers.AnswerCallbackQuery
+import com.github.insanusmokrassar.TelegramBotAPI.types.CallbackQuery.CallbackQuery
+import com.github.insanusmokrassar.TelegramBotAPI.types.CallbackQueryIdentifier
+
+suspend fun RequestsExecutor.answerCallbackQuery(
+ callbackQueryId: CallbackQueryIdentifier,
+ text: String? = null,
+ showAlert: Boolean? = null,
+ url: String? = null,
+ cachedTimeSeconds: Int? = null
+) = execute(AnswerCallbackQuery(callbackQueryId, text, showAlert, url, cachedTimeSeconds))
+
+suspend fun RequestsExecutor.answerCallbackQuery(
+ callbackQuery: CallbackQuery,
+ text: String? = null,
+ showAlert: Boolean? = null,
+ url: String? = null,
+ cachedTimeSeconds: Int? = null
+) = answerCallbackQuery(callbackQuery.id, text, showAlert, url, cachedTimeSeconds)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/answers/AnswerInlineQuery.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/answers/AnswerInlineQuery.kt
new file mode 100644
index 0000000000..7cc553212c
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/answers/AnswerInlineQuery.kt
@@ -0,0 +1,29 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.answers
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.answers.AnswerInlineQuery
+import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.InlineQueryResult.abstracts.InlineQueryResult
+import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueries.abstracts.InlineQuery
+import com.github.insanusmokrassar.TelegramBotAPI.types.InlineQueryIdentifier
+
+suspend fun RequestsExecutor.answerInlineQuery(
+ inlineQueryID: InlineQueryIdentifier,
+ results: List = emptyList(),
+ cachedTime: Int? = null,
+ isPersonal: Boolean? = null,
+ nextOffset: String? = null,
+ switchPmText: String? = null,
+ switchPmParameter: String? = null
+) = execute(
+ AnswerInlineQuery(inlineQueryID, results, cachedTime, isPersonal, nextOffset, switchPmText, switchPmParameter)
+)
+
+suspend fun RequestsExecutor.answerInlineQuery(
+ inlineQuery: InlineQuery,
+ results: List = emptyList(),
+ cachedTime: Int? = null,
+ isPersonal: Boolean? = null,
+ nextOffset: String? = null,
+ switchPmText: String? = null,
+ switchPmParameter: String? = null
+) = answerInlineQuery(inlineQuery.id, results, cachedTime, isPersonal, nextOffset, switchPmText, switchPmParameter)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/answers/payments/AnswerPreCheckoutQuery.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/answers/payments/AnswerPreCheckoutQuery.kt
new file mode 100644
index 0000000000..0bdf7e3c30
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/answers/payments/AnswerPreCheckoutQuery.kt
@@ -0,0 +1,23 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.answers.payments
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.answers.payments.AnswerPreCheckoutQueryError
+import com.github.insanusmokrassar.TelegramBotAPI.requests.answers.payments.AnswerPreCheckoutQueryOk
+import com.github.insanusmokrassar.TelegramBotAPI.types.PreCheckoutQueryId
+import com.github.insanusmokrassar.TelegramBotAPI.types.payments.PreCheckoutQuery
+
+suspend fun RequestsExecutor.answerPreCheckoutQueryOk(
+ id: PreCheckoutQueryId
+) = execute(AnswerPreCheckoutQueryOk(id))
+suspend fun RequestsExecutor.answerPreCheckoutQueryOk(
+ preCheckoutQuery: PreCheckoutQuery
+) = answerPreCheckoutQueryOk(preCheckoutQuery.id)
+
+suspend fun RequestsExecutor.answerPreCheckoutQueryError(
+ id: PreCheckoutQueryId,
+ error: String
+) = execute(AnswerPreCheckoutQueryError(id, error))
+suspend fun RequestsExecutor.answerPreCheckoutQueryError(
+ preCheckoutQuery: PreCheckoutQuery,
+ error: String
+) = answerPreCheckoutQueryError(preCheckoutQuery.id, error)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/answers/payments/AnswerShippingQuery.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/answers/payments/AnswerShippingQuery.kt
new file mode 100644
index 0000000000..c154230a59
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/answers/payments/AnswerShippingQuery.kt
@@ -0,0 +1,28 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.answers.payments
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.answers.payments.AnswerShippingQueryError
+import com.github.insanusmokrassar.TelegramBotAPI.requests.answers.payments.AnswerShippingQueryOk
+import com.github.insanusmokrassar.TelegramBotAPI.types.ShippingQueryIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.payments.ShippingOption
+import com.github.insanusmokrassar.TelegramBotAPI.types.payments.ShippingQuery
+
+suspend fun RequestsExecutor.answerShippingQueryOk(
+ id: ShippingQueryIdentifier,
+ shippingOptions: List
+) = execute(AnswerShippingQueryOk(id, shippingOptions))
+suspend fun RequestsExecutor.answerShippingQueryOk(
+ shippingQuery: ShippingQuery,
+ shippingOptions: List
+) = answerShippingQueryOk(shippingQuery.id, shippingOptions)
+
+suspend fun RequestsExecutor.answerShippingQueryError(
+ id: ShippingQueryIdentifier,
+ error: String
+) = execute(AnswerShippingQueryError(id, error))
+suspend fun RequestsExecutor.answerShippingQueryError(
+ shippingQuery: ShippingQuery,
+ error: String
+) = answerShippingQueryError(shippingQuery.id, error)
+
+
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/ExportChatInviteLink.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/ExportChatInviteLink.kt
new file mode 100644
index 0000000000..a3051466f1
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/ExportChatInviteLink.kt
@@ -0,0 +1,14 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.ExportChatInviteLink
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.exportChatInviteLink(
+ chatId: ChatIdentifier
+) = execute(ExportChatInviteLink(chatId))
+
+suspend fun RequestsExecutor.exportChatInviteLink(
+ chat: PublicChat
+) = exportChatInviteLink(chat.id)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/LeaveChat.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/LeaveChat.kt
new file mode 100644
index 0000000000..2523ad5034
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/LeaveChat.kt
@@ -0,0 +1,14 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.LeaveChat
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.leaveChat(
+ chatId: ChatIdentifier
+) = execute(LeaveChat(chatId))
+
+suspend fun RequestsExecutor.leaveChat(
+ chat: PublicChat
+) = leaveChat(chat.id)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/get/GetChat.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/get/GetChat.kt
new file mode 100644
index 0000000000..e7912097da
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/get/GetChat.kt
@@ -0,0 +1,14 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.get
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.get.GetChat
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+
+suspend fun RequestsExecutor.getChat(
+ chatId: ChatIdentifier
+) = execute(GetChat(chatId))
+
+suspend fun RequestsExecutor.getChat(
+ chat: Chat
+) = getChat(chat.id)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/get/GetChatAdministrators.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/get/GetChatAdministrators.kt
new file mode 100644
index 0000000000..35b7197060
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/get/GetChatAdministrators.kt
@@ -0,0 +1,14 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.get
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.get.GetChatAdministrators
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.getChatAdministrators(
+ chatId: ChatIdentifier
+) = execute(GetChatAdministrators(chatId))
+
+suspend fun RequestsExecutor.getChatAdministrators(
+ chat: PublicChat
+) = getChatAdministrators(chat.id)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/get/GetChatMembersCount.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/get/GetChatMembersCount.kt
new file mode 100644
index 0000000000..3c93f12c84
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/get/GetChatMembersCount.kt
@@ -0,0 +1,14 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.get
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.get.GetChatMembersCount
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.getChatMembersCount(
+ chatId: ChatIdentifier
+) = execute(GetChatMembersCount(chatId))
+
+suspend fun RequestsExecutor.getChatMembersCount(
+ chat: PublicChat
+) = getChatMembersCount(chat.id)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/GetChatMember.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/GetChatMember.kt
new file mode 100644
index 0000000000..0297d92d9c
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/GetChatMember.kt
@@ -0,0 +1,26 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.members
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.members.GetChatMember
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.getChatMember(
+ chatId: ChatIdentifier,
+ userId: UserId
+) = execute(GetChatMember(chatId, userId))
+
+suspend fun RequestsExecutor.getChatMember(
+ chat: PublicChat,
+ userId: UserId
+) = getChatMember(chat.id, userId)
+
+suspend fun RequestsExecutor.getChatMember(
+ chatId: ChatId,
+ user: User
+) = getChatMember(chatId, user.id)
+
+suspend fun RequestsExecutor.getChatMember(
+ chat: PublicChat,
+ user: User
+) = getChatMember(chat.id, user.id)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/KickChatMember.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/KickChatMember.kt
new file mode 100644
index 0000000000..1f0aa9c32e
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/KickChatMember.kt
@@ -0,0 +1,30 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.members
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.members.KickChatMember
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.kickChatMember(
+ chatId: ChatIdentifier,
+ userId: UserId,
+ untilDate: TelegramDate? = null
+) = execute(KickChatMember(chatId, userId, untilDate))
+
+suspend fun RequestsExecutor.kickChatMember(
+ chat: PublicChat,
+ userId: UserId,
+ untilDate: TelegramDate? = null
+) = kickChatMember(chat.id, userId, untilDate)
+
+suspend fun RequestsExecutor.kickChatMember(
+ chatId: ChatId,
+ user: User,
+ untilDate: TelegramDate? = null
+) = kickChatMember(chatId, user.id, untilDate)
+
+suspend fun RequestsExecutor.kickChatMember(
+ chat: PublicChat,
+ user: User,
+ untilDate: TelegramDate? = null
+) = kickChatMember(chat.id, user.id, untilDate)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/PromoteChatMember.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/PromoteChatMember.kt
new file mode 100644
index 0000000000..24c1205670
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/PromoteChatMember.kt
@@ -0,0 +1,112 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.members
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.members.PromoteChatMember
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.promoteChatMember(
+ chatId: ChatIdentifier,
+ userId: UserId,
+ untilDate: TelegramDate? = null,
+ canChangeInfo: Boolean? = null,
+ canPostMessages: Boolean? = null,
+ canEditMessages: Boolean? = null,
+ canDeleteMessages: Boolean? = null,
+ canInviteUsers: Boolean? = null,
+ canRestrictMembers: Boolean? = null,
+ canPinMessages: Boolean? = null,
+ canPromoteMembers: Boolean? = null
+) = execute(
+ PromoteChatMember(
+ chatId,
+ userId,
+ untilDate,
+ canChangeInfo,
+ canPostMessages,
+ canEditMessages,
+ canDeleteMessages,
+ canInviteUsers,
+ canRestrictMembers,
+ canPinMessages,
+ canPromoteMembers
+ )
+)
+
+suspend fun RequestsExecutor.promoteChatMember(
+ chat: PublicChat,
+ userId: UserId,
+ untilDate: TelegramDate? = null,
+ canChangeInfo: Boolean? = null,
+ canPostMessages: Boolean? = null,
+ canEditMessages: Boolean? = null,
+ canDeleteMessages: Boolean? = null,
+ canInviteUsers: Boolean? = null,
+ canRestrictMembers: Boolean? = null,
+ canPinMessages: Boolean? = null,
+ canPromoteMembers: Boolean? = null
+) = promoteChatMember(
+ chat.id,
+ userId,
+ untilDate,
+ canChangeInfo,
+ canPostMessages,
+ canEditMessages,
+ canDeleteMessages,
+ canInviteUsers,
+ canRestrictMembers,
+ canPinMessages,
+ canPromoteMembers
+)
+
+suspend fun RequestsExecutor.promoteChatMember(
+ chatId: ChatId,
+ user: User,
+ untilDate: TelegramDate? = null,
+ canChangeInfo: Boolean? = null,
+ canPostMessages: Boolean? = null,
+ canEditMessages: Boolean? = null,
+ canDeleteMessages: Boolean? = null,
+ canInviteUsers: Boolean? = null,
+ canRestrictMembers: Boolean? = null,
+ canPinMessages: Boolean? = null,
+ canPromoteMembers: Boolean? = null
+) = promoteChatMember(
+ chatId,
+ user.id,
+ untilDate,
+ canChangeInfo,
+ canPostMessages,
+ canEditMessages,
+ canDeleteMessages,
+ canInviteUsers,
+ canRestrictMembers,
+ canPinMessages,
+ canPromoteMembers
+)
+
+suspend fun RequestsExecutor.promoteChatMember(
+ chat: PublicChat,
+ user: User,
+ untilDate: TelegramDate? = null,
+ canChangeInfo: Boolean? = null,
+ canPostMessages: Boolean? = null,
+ canEditMessages: Boolean? = null,
+ canDeleteMessages: Boolean? = null,
+ canInviteUsers: Boolean? = null,
+ canRestrictMembers: Boolean? = null,
+ canPinMessages: Boolean? = null,
+ canPromoteMembers: Boolean? = null
+) = promoteChatMember(
+ chat.id,
+ user.id,
+ untilDate,
+ canChangeInfo,
+ canPostMessages,
+ canEditMessages,
+ canDeleteMessages,
+ canInviteUsers,
+ canRestrictMembers,
+ canPinMessages,
+ canPromoteMembers
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/RestrictChatMember.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/RestrictChatMember.kt
new file mode 100644
index 0000000000..6360aec348
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/RestrictChatMember.kt
@@ -0,0 +1,36 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.members
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.members.RestrictChatMember
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.ChatPermissions
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.restrictChatMember(
+ chatId: ChatIdentifier,
+ userId: UserId,
+ untilDate: TelegramDate? = null,
+ permissions: ChatPermissions = ChatPermissions()
+) = execute(RestrictChatMember(chatId, userId, untilDate, permissions))
+
+suspend fun RequestsExecutor.restrictChatMember(
+ chat: PublicChat,
+ userId: UserId,
+ untilDate: TelegramDate? = null,
+ permissions: ChatPermissions = ChatPermissions()
+) = restrictChatMember(chat.id, userId, untilDate, permissions)
+
+suspend fun RequestsExecutor.restrictChatMember(
+ chatId: ChatId,
+ user: User,
+ untilDate: TelegramDate? = null,
+ permissions: ChatPermissions = ChatPermissions()
+) = restrictChatMember(chatId, user.id, untilDate, permissions)
+
+suspend fun RequestsExecutor.restrictChatMember(
+ chat: PublicChat,
+ user: User,
+ untilDate: TelegramDate? = null,
+ permissions: ChatPermissions = ChatPermissions()
+) = restrictChatMember(chat.id, user.id, untilDate, permissions)
+
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/SetChatAdministratorCustomTitle.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/SetChatAdministratorCustomTitle.kt
new file mode 100644
index 0000000000..2f545eeae7
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/SetChatAdministratorCustomTitle.kt
@@ -0,0 +1,30 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.members
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.members.SetChatAdministratorCustomTitle
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.setChatAdministratorCustomTitle(
+ chatId: ChatId,
+ userId: UserId,
+ customTitle: String
+) = execute(SetChatAdministratorCustomTitle(chatId, userId, customTitle))
+
+suspend fun RequestsExecutor.setChatAdministratorCustomTitle(
+ chat: PublicChat,
+ userId: UserId,
+ customTitle: String
+) = setChatAdministratorCustomTitle(chat.id, userId, customTitle)
+
+suspend fun RequestsExecutor.setChatAdministratorCustomTitle(
+ chatId: ChatId,
+ user: User,
+ customTitle: String
+) = setChatAdministratorCustomTitle(chatId, user.id, customTitle)
+
+suspend fun RequestsExecutor.setChatAdministratorCustomTitle(
+ chat: PublicChat,
+ user: User,
+ customTitle: String
+) = setChatAdministratorCustomTitle(chat.id, user.id, customTitle)
\ No newline at end of file
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/UnbanChatMember.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/UnbanChatMember.kt
new file mode 100644
index 0000000000..35c1f26f25
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/members/UnbanChatMember.kt
@@ -0,0 +1,27 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.members
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.members.UnbanChatMember
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.unbanChatMember(
+ chatId: ChatIdentifier,
+ userId: UserId
+) = execute(UnbanChatMember(chatId, userId))
+
+suspend fun RequestsExecutor.unbanChatMember(
+ chat: PublicChat,
+ userId: UserId
+) = unbanChatMember(chat.id, userId)
+
+suspend fun RequestsExecutor.unbanChatMember(
+ chatId: ChatId,
+ user: User
+) = unbanChatMember(chatId, user.id)
+
+suspend fun RequestsExecutor.unbanChatMember(
+ chat: PublicChat,
+ user: User
+) = unbanChatMember(chat.id, user.id)
+
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/DeleteChatPhoto.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/DeleteChatPhoto.kt
new file mode 100644
index 0000000000..919f91b3fb
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/DeleteChatPhoto.kt
@@ -0,0 +1,14 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.modify
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.modify.DeleteChatPhoto
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.deleteChatPhoto(
+ chatId: ChatIdentifier
+) = execute(DeleteChatPhoto(chatId))
+
+suspend fun RequestsExecutor.deleteChatPhoto(
+ chat: PublicChat
+) = deleteChatPhoto(chat.id)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/PinChatMessage.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/PinChatMessage.kt
new file mode 100644
index 0000000000..d678a95c1d
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/PinChatMessage.kt
@@ -0,0 +1,29 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.modify
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.modify.PinChatMessage
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.Message
+
+suspend fun RequestsExecutor.pinChatMessage(
+ chatId: ChatIdentifier,
+ messageId: MessageIdentifier,
+ disableNotification: Boolean = false
+) = execute(PinChatMessage(chatId, messageId, disableNotification))
+
+suspend fun RequestsExecutor.pinChatMessage(
+ chat: PublicChat,
+ messageId: MessageIdentifier,
+ disableNotification: Boolean = false
+) = pinChatMessage(chat.id, messageId, disableNotification)
+
+suspend fun RequestsExecutor.pinChatMessage(
+ message: Message,
+ disableNotification: Boolean = false
+) = if (message.chat is PublicChat) {
+ pinChatMessage(message.chat.id, message.messageId, disableNotification)
+} else {
+ error("It is possible to pin messages only in non one-to-one chats")
+}
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/SetChatDescription.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/SetChatDescription.kt
new file mode 100644
index 0000000000..c20234ceed
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/SetChatDescription.kt
@@ -0,0 +1,16 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.modify
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.modify.SetChatDescription
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.setChatDescription(
+ chatId: ChatIdentifier,
+ description: String
+) = execute(SetChatDescription(chatId, description))
+
+suspend fun RequestsExecutor.setChatDescription(
+ chat: PublicChat,
+ description: String
+) = setChatDescription(chat.id, description)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/SetChatPermissions.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/SetChatPermissions.kt
new file mode 100644
index 0000000000..b10f4bf27d
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/SetChatPermissions.kt
@@ -0,0 +1,17 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.modify
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.modify.SetChatPermissions
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.ChatPermissions
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.setDefaultChatMembersPermissions(
+ chatId: ChatIdentifier,
+ permissions: ChatPermissions
+) = execute(SetChatPermissions(chatId, permissions))
+
+suspend fun RequestsExecutor.setDefaultChatMembersPermissions(
+ chat: PublicChat,
+ permissions: ChatPermissions
+) = setDefaultChatMembersPermissions(chat.id, permissions)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/SetChatPhoto.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/SetChatPhoto.kt
new file mode 100644
index 0000000000..19f3ab0683
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/SetChatPhoto.kt
@@ -0,0 +1,17 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.modify
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.MultipartFile
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.modify.SetChatPhoto
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.setChatPhoto(
+ chatId: ChatIdentifier,
+ photo: MultipartFile
+) = execute(SetChatPhoto(chatId, photo))
+
+suspend fun RequestsExecutor.setChatPhoto(
+ chat: PublicChat,
+ photo: MultipartFile
+) = setChatPhoto(chat.id, photo)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/SetChatTitle.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/SetChatTitle.kt
new file mode 100644
index 0000000000..130495aeaf
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/SetChatTitle.kt
@@ -0,0 +1,16 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.modify
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.modify.SetChatTitle
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.setChatTitle(
+ chatId: ChatIdentifier,
+ title: String
+) = execute(SetChatTitle(chatId, title))
+
+suspend fun RequestsExecutor.setChatTitle(
+ chat: PublicChat,
+ title: String
+) = setChatTitle(chat.id, title)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/UnpinChatMessage.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/UnpinChatMessage.kt
new file mode 100644
index 0000000000..dc542e9a21
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/modify/UnpinChatMessage.kt
@@ -0,0 +1,14 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.modify
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.modify.UnpinChatMessage
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.PublicChat
+
+suspend fun RequestsExecutor.unpinChatMessage(
+ chatId: ChatIdentifier
+) = execute(UnpinChatMessage(chatId))
+
+suspend fun RequestsExecutor.unpinChatMessage(
+ chat: PublicChat
+) = unpinChatMessage(chat.id)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/stickers/DeleteChatStickerSet.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/stickers/DeleteChatStickerSet.kt
new file mode 100644
index 0000000000..6fd6969b51
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/stickers/DeleteChatStickerSet.kt
@@ -0,0 +1,14 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.stickers
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.stickers.DeleteChatStickerSet
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.SupergroupChat
+
+suspend fun RequestsExecutor.deleteChatStickerSet(
+ chatId: ChatIdentifier
+) = execute(DeleteChatStickerSet(chatId))
+
+suspend fun RequestsExecutor.deleteChatStickerSet(
+ chat: SupergroupChat
+) = deleteChatStickerSet(chat.id)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/stickers/SetChatStickerSet.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/stickers/SetChatStickerSet.kt
new file mode 100644
index 0000000000..c1ca61482f
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/chat/stickers/SetChatStickerSet.kt
@@ -0,0 +1,17 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.chat.stickers
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.chat.stickers.SetChatStickerSet
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.StickerSetName
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.SupergroupChat
+
+suspend fun RequestsExecutor.setChatStickerSet(
+ chatId: ChatIdentifier,
+ stickerSetName: StickerSetName
+) = execute(SetChatStickerSet(chatId, stickerSetName))
+
+suspend fun RequestsExecutor.setChatStickerSet(
+ chat: SupergroupChat,
+ stickerSetName: StickerSetName
+) = setChatStickerSet(chat.id, stickerSetName)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/LiveLocation/EditChatMessageLiveLocation.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/LiveLocation/EditChatMessageLiveLocation.kt
new file mode 100644
index 0000000000..72ea23b52a
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/LiveLocation/EditChatMessageLiveLocation.kt
@@ -0,0 +1,60 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.LiveLocation
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.LiveLocation.EditChatMessageLiveLocation
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.ContentMessage
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.content.LocationContent
+
+suspend fun RequestsExecutor.editLiveLocation(
+ chatId: ChatIdentifier,
+ messageId: MessageIdentifier,
+ latitude: Double,
+ longitude: Double,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(
+ EditChatMessageLiveLocation(
+ chatId, messageId, latitude, longitude, replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.editLiveLocation(
+ chat: Chat,
+ messageId: MessageIdentifier,
+ latitude: Double,
+ longitude: Double,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = editLiveLocation(chat.id, messageId, latitude, longitude, replyMarkup)
+
+suspend fun RequestsExecutor.editLiveLocation(
+ message: ContentMessage,
+ latitude: Double,
+ longitude: Double,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = editLiveLocation(message.chat, message.messageId, latitude, longitude, replyMarkup)
+
+suspend fun RequestsExecutor.editLiveLocation(
+ chatId: ChatIdentifier,
+ messageId: MessageIdentifier,
+ location: Location,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(
+ EditChatMessageLiveLocation(
+ chatId, messageId, location.latitude, location.longitude, replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.editLiveLocation(
+ chat: Chat,
+ messageId: MessageIdentifier,
+ location: Location,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = editLiveLocation(chat.id, messageId, location.latitude, location.longitude, replyMarkup)
+
+suspend fun RequestsExecutor.editLiveLocation(
+ message: ContentMessage,
+ location: Location,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = editLiveLocation(message.chat, message.messageId, location.latitude, location.longitude, replyMarkup)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/LiveLocation/EditInlineMessageLiveLocation.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/LiveLocation/EditInlineMessageLiveLocation.kt
new file mode 100644
index 0000000000..c48fe51212
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/LiveLocation/EditInlineMessageLiveLocation.kt
@@ -0,0 +1,23 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.LiveLocation
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.LiveLocation.EditInlineMessageLiveLocation
+import com.github.insanusmokrassar.TelegramBotAPI.types.InlineMessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.Location
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+
+suspend fun RequestsExecutor.editLiveLocation(
+ inlineMessageId: InlineMessageIdentifier,
+ latitude: Double,
+ longitude: Double,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(
+ EditInlineMessageLiveLocation(
+ inlineMessageId, latitude, longitude, replyMarkup
+ )
+)
+suspend fun RequestsExecutor.editLiveLocation(
+ inlineMessageId: InlineMessageIdentifier,
+ location: Location,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = editLiveLocation(inlineMessageId, location.latitude, location.longitude, replyMarkup)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/LiveLocation/StopChatMessageLiveLocation.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/LiveLocation/StopChatMessageLiveLocation.kt
new file mode 100644
index 0000000000..0835dd90e1
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/LiveLocation/StopChatMessageLiveLocation.kt
@@ -0,0 +1,31 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.LiveLocation
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.LiveLocation.StopChatMessageLiveLocation
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.ContentMessage
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.content.LocationContent
+
+suspend fun RequestsExecutor.stopLiveLocation(
+ chatId: ChatIdentifier,
+ messageId: MessageIdentifier,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(
+ StopChatMessageLiveLocation(
+ chatId, messageId, replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.stopLiveLocation(
+ chat: Chat,
+ messageId: MessageIdentifier,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = stopLiveLocation(chat.id, messageId, replyMarkup)
+
+suspend fun RequestsExecutor.stopLiveLocation(
+ message: ContentMessage,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = stopLiveLocation(message.chat, message.messageId, replyMarkup)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/LiveLocation/StopInlineMessageLiveLocation.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/LiveLocation/StopInlineMessageLiveLocation.kt
new file mode 100644
index 0000000000..b1a25409ed
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/LiveLocation/StopInlineMessageLiveLocation.kt
@@ -0,0 +1,15 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.LiveLocation
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.LiveLocation.StopInlineMessageLiveLocation
+import com.github.insanusmokrassar.TelegramBotAPI.types.InlineMessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+
+suspend fun RequestsExecutor.stopLiveLocation(
+ inlineMessageId: InlineMessageIdentifier,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(
+ StopInlineMessageLiveLocation(
+ inlineMessageId, replyMarkup
+ )
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/ReplyMarkup/EditChatMessageReplyMarkup.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/ReplyMarkup/EditChatMessageReplyMarkup.kt
new file mode 100644
index 0000000000..d02884f5b1
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/ReplyMarkup/EditChatMessageReplyMarkup.kt
@@ -0,0 +1,29 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.ReplyMarkup
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.ReplyMarkup.EditChatMessageReplyMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.Message
+
+suspend fun RequestsExecutor.editMessageReplyMarkup(
+ chatId: ChatIdentifier,
+ messageId: MessageIdentifier,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(
+ EditChatMessageReplyMarkup(chatId, messageId, replyMarkup)
+)
+
+suspend fun RequestsExecutor.editMessageReplyMarkup(
+ chat: Chat,
+ messageId: MessageIdentifier,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = editMessageReplyMarkup(chat.id, messageId, replyMarkup)
+
+suspend fun RequestsExecutor.editMessageReplyMarkup(
+ message: Message,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = editMessageReplyMarkup(message.chat.id, message.messageId, replyMarkup)
+
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/ReplyMarkup/EditInlineMessageReplyMarkup.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/ReplyMarkup/EditInlineMessageReplyMarkup.kt
new file mode 100644
index 0000000000..66f7df4730
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/ReplyMarkup/EditInlineMessageReplyMarkup.kt
@@ -0,0 +1,11 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.ReplyMarkup
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.ReplyMarkup.EditInlineMessageReplyMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.InlineMessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+
+suspend fun RequestsExecutor.editMessageReplyMarkup(
+ inlineMessageId: InlineMessageIdentifier,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(EditInlineMessageReplyMarkup(inlineMessageId, replyMarkup))
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/caption/EditChatMessageCaption.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/caption/EditChatMessageCaption.kt
new file mode 100644
index 0000000000..e448ad2324
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/caption/EditChatMessageCaption.kt
@@ -0,0 +1,39 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.caption
+
+import com.github.insanusmokrassar.TelegramBotAPI.CommonAbstracts.CaptionedInput
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.caption.EditChatMessageCaption
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.ContentMessage
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.content.abstracts.MediaContent
+
+suspend fun RequestsExecutor.editMessageCaption(
+ chatId: ChatIdentifier,
+ messageId: MessageIdentifier,
+ text: String,
+ parseMode: ParseMode? = null,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(
+ EditChatMessageCaption(chatId, messageId, text, parseMode, replyMarkup)
+)
+
+suspend fun RequestsExecutor.editMessageCaption(
+ chat: Chat,
+ messageId: MessageIdentifier,
+ text: String,
+ parseMode: ParseMode? = null,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = editMessageCaption(chat.id, messageId, text, parseMode, replyMarkup)
+
+suspend fun RequestsExecutor.editMessageCaption(
+ message: ContentMessage,
+ text: String,
+ parseMode: ParseMode? = null,
+ replyMarkup: InlineKeyboardMarkup? = null
+): ContentMessage where T : CaptionedInput, T : MediaContent {
+ return editMessageCaption(message.chat.id, message.messageId, text, parseMode, replyMarkup)
+}
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/caption/EditInlineMessageCaption.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/caption/EditInlineMessageCaption.kt
new file mode 100644
index 0000000000..a561699e6e
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/caption/EditInlineMessageCaption.kt
@@ -0,0 +1,14 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.caption
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.caption.EditInlineMessageCaption
+import com.github.insanusmokrassar.TelegramBotAPI.types.InlineMessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+
+suspend fun RequestsExecutor.editMessageCaption(
+ inlineMessageId: InlineMessageIdentifier,
+ text: String,
+ parseMode: ParseMode? = null,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(EditInlineMessageCaption(inlineMessageId, text, parseMode, replyMarkup))
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/media/EditChatMessageMedia.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/media/EditChatMessageMedia.kt
new file mode 100644
index 0000000000..5406985cbf
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/media/EditChatMessageMedia.kt
@@ -0,0 +1,33 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.media
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.media.EditChatMessageMedia
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.InputMedia.InputMedia
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.ContentMessage
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.content.abstracts.MediaContent
+
+suspend fun RequestsExecutor.editMessageMedia(
+ chatId: ChatIdentifier,
+ messageId: MessageIdentifier,
+ media: InputMedia,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(
+ EditChatMessageMedia(chatId, messageId, media, replyMarkup)
+)
+
+suspend fun RequestsExecutor.editMessageMedia(
+ chat: Chat,
+ messageId: MessageIdentifier,
+ media: InputMedia,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = editMessageMedia(chat.id, messageId, media, replyMarkup)
+
+suspend fun RequestsExecutor.editMessageMedia(
+ message: ContentMessage,
+ media: InputMedia,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = editMessageMedia(message.chat.id, message.messageId, media, replyMarkup)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/media/EditInlineMessageMedia.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/media/EditInlineMessageMedia.kt
new file mode 100644
index 0000000000..1768ac1f15
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/media/EditInlineMessageMedia.kt
@@ -0,0 +1,13 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.media
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.media.EditInlineMessageMedia
+import com.github.insanusmokrassar.TelegramBotAPI.types.InlineMessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.InputMedia.InputMedia
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+
+suspend fun RequestsExecutor.editMessageCaption(
+ inlineMessageId: InlineMessageIdentifier,
+ media: InputMedia,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(EditInlineMessageMedia(inlineMessageId, media, replyMarkup))
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/text/EditChatMessageText.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/text/EditChatMessageText.kt
new file mode 100644
index 0000000000..18320bc153
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/text/EditChatMessageText.kt
@@ -0,0 +1,39 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.text
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.text.EditChatMessageText
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.ContentMessage
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.content.TextContent
+
+suspend fun RequestsExecutor.editMessageText(
+ chatId: ChatIdentifier,
+ messageId: MessageIdentifier,
+ text: String,
+ parseMode: ParseMode? = null,
+ disableWebPagePreview: Boolean? = null,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(
+ EditChatMessageText(chatId, messageId, text, parseMode, disableWebPagePreview, replyMarkup)
+)
+
+suspend fun RequestsExecutor.editMessageText(
+ chat: Chat,
+ messageId: MessageIdentifier,
+ text: String,
+ parseMode: ParseMode? = null,
+ disableWebPagePreview: Boolean? = null,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = editMessageText(chat.id, messageId, text, parseMode, disableWebPagePreview, replyMarkup)
+
+suspend fun RequestsExecutor.editMessageText(
+ message: ContentMessage,
+ text: String,
+ parseMode: ParseMode? = null,
+ disableWebPagePreview: Boolean? = null,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = editMessageText(message.chat.id, message.messageId, text, parseMode, disableWebPagePreview, replyMarkup)
\ No newline at end of file
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/text/EditInlineMessageText.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/text/EditInlineMessageText.kt
new file mode 100644
index 0000000000..2d0521d73a
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/edit/text/EditInlineMessageText.kt
@@ -0,0 +1,15 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.edit.text
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.edit.text.EditInlineMessageText
+import com.github.insanusmokrassar.TelegramBotAPI.types.InlineMessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+
+suspend fun RequestsExecutor.editMessageText(
+ inlineMessageId: InlineMessageIdentifier,
+ text: String,
+ parseMode: ParseMode? = null,
+ disableWebPagePreview: Boolean? = null,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(EditInlineMessageText(inlineMessageId, text, parseMode, disableWebPagePreview, replyMarkup))
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/games/GetGameHighScoresByChat.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/games/GetGameHighScoresByChat.kt
new file mode 100644
index 0000000000..9253f8d27c
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/games/GetGameHighScoresByChat.kt
@@ -0,0 +1,54 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.games
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.games.GetGameHighScoresByChat
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.ContentMessage
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.content.GameContent
+
+suspend fun RequestsExecutor.getGameScore(
+ userId: UserId,
+ chatId: ChatId,
+ messageId: MessageIdentifier
+) = execute(
+ GetGameHighScoresByChat(userId, chatId, messageId)
+)
+
+suspend fun RequestsExecutor.getGameScore(
+ user: CommonUser,
+ chatId: ChatId,
+ messageId: MessageIdentifier
+) = getGameScore(
+ user.id, chatId, messageId
+)
+
+suspend fun RequestsExecutor.getGameScore(
+ userId: UserId,
+ chat: Chat,
+ messageId: MessageIdentifier
+) = getGameScore(
+ userId, chat.id, messageId
+)
+
+suspend fun RequestsExecutor.getGameScore(
+ user: CommonUser,
+ chat: Chat,
+ messageId: MessageIdentifier
+) = getGameScore(
+ user.id, chat.id, messageId
+)
+
+suspend fun RequestsExecutor.getGameScore(
+ userId: UserId,
+ message: ContentMessage
+) = getGameScore(
+ userId, message.chat.id, message.messageId
+)
+
+suspend fun RequestsExecutor.getGameScore(
+ user: CommonUser,
+ message: ContentMessage
+) = getGameScore(
+ user.id, message.chat.id, message.messageId
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/games/GetGameHighScoresByInlineMessageId.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/games/GetGameHighScoresByInlineMessageId.kt
new file mode 100644
index 0000000000..a1ea482a94
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/games/GetGameHighScoresByInlineMessageId.kt
@@ -0,0 +1,19 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.games
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.games.GetGameHighScoresByInlineMessageId
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+
+suspend fun RequestsExecutor.getGameScore(
+ userId: UserId,
+ inlineMessageId: InlineMessageIdentifier
+) = execute(
+ GetGameHighScoresByInlineMessageId(
+ userId, inlineMessageId
+ )
+)
+
+suspend fun RequestsExecutor.getGameScore(
+ user: CommonUser,
+ inlineMessageId: InlineMessageIdentifier
+) = getGameScore(user.id, inlineMessageId)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/games/SetGameScoreByChatId.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/games/SetGameScoreByChatId.kt
new file mode 100644
index 0000000000..789ca0af5e
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/games/SetGameScoreByChatId.kt
@@ -0,0 +1,72 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.games
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.games.SetGameScoreByChatId
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.abstracts.ContentMessage
+import com.github.insanusmokrassar.TelegramBotAPI.types.message.content.GameContent
+
+suspend fun RequestsExecutor.setGameScore(
+ userId: UserId,
+ score: Long,
+ chatId: ChatId,
+ messageId: MessageIdentifier,
+ force: Boolean = false,
+ disableEditMessage: Boolean = false
+) = execute(
+ SetGameScoreByChatId(userId, score, chatId, messageId, force, disableEditMessage)
+)
+
+suspend fun RequestsExecutor.setGameScore(
+ user: CommonUser,
+ score: Long,
+ chatId: ChatId,
+ messageId: MessageIdentifier,
+ force: Boolean = false,
+ disableEditMessage: Boolean = false
+) = setGameScore(
+ user.id, score, chatId, messageId, force, disableEditMessage
+)
+
+suspend fun RequestsExecutor.setGameScore(
+ userId: UserId,
+ score: Long,
+ chat: Chat,
+ messageId: MessageIdentifier,
+ force: Boolean = false,
+ disableEditMessage: Boolean = false
+) = setGameScore(
+ userId, score, chat.id, messageId, force, disableEditMessage
+)
+
+suspend fun RequestsExecutor.setGameScore(
+ user: CommonUser,
+ score: Long,
+ chat: Chat,
+ messageId: MessageIdentifier,
+ force: Boolean = false,
+ disableEditMessage: Boolean = false
+) = setGameScore(
+ user.id, score, chat.id, messageId, force, disableEditMessage
+)
+
+suspend fun RequestsExecutor.setGameScore(
+ userId: UserId,
+ score: Long,
+ message: ContentMessage,
+ force: Boolean = false,
+ disableEditMessage: Boolean = false
+) = setGameScore(
+ userId, score, message.chat.id, message.messageId, force, disableEditMessage
+)
+
+suspend fun RequestsExecutor.setGameScore(
+ user: CommonUser,
+ score: Long,
+ message: ContentMessage,
+ force: Boolean = false,
+ disableEditMessage: Boolean = false
+) = setGameScore(
+ user.id, score, message.chat.id, message.messageId, force, disableEditMessage
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/games/SetGameScoreByInlineMessageId.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/games/SetGameScoreByInlineMessageId.kt
new file mode 100644
index 0000000000..ded6c96916
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/games/SetGameScoreByInlineMessageId.kt
@@ -0,0 +1,25 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.games
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.games.SetGameScoreByInlineMessageId
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+
+suspend fun RequestsExecutor.setGameScore(
+ userId: UserId,
+ score: Long,
+ inlineMessageId: InlineMessageIdentifier,
+ force: Boolean = false,
+ disableEditMessage: Boolean = false
+) = execute(
+ SetGameScoreByInlineMessageId(
+ userId, score, inlineMessageId, force, disableEditMessage
+ )
+)
+
+suspend fun RequestsExecutor.setGameScore(
+ user: CommonUser,
+ score: Long,
+ inlineMessageId: InlineMessageIdentifier,
+ force: Boolean = false,
+ disableEditMessage: Boolean = false
+) = setGameScore(user.id, score, inlineMessageId, force, disableEditMessage)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/get/GetFile.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/get/GetFile.kt
new file mode 100644
index 0000000000..1fde6e92ea
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/get/GetFile.kt
@@ -0,0 +1,16 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.get
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.get.GetFile
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.abstracts.TelegramMediaFile
+
+suspend fun RequestsExecutor.getFileAdditionalInfo(
+ fileId: FileId
+) = execute(
+ GetFile(fileId)
+)
+
+suspend fun RequestsExecutor.getFileAdditionalInfo(
+ file: TelegramMediaFile
+) = getFileAdditionalInfo(file.fileId)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/get/GetStickerSet.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/get/GetStickerSet.kt
new file mode 100644
index 0000000000..0fce1971cd
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/get/GetStickerSet.kt
@@ -0,0 +1,17 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.get
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.get.GetStickerSet
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.Sticker
+
+suspend fun RequestsExecutor.getStickerSet(
+ name: String
+) = execute(
+ GetStickerSet(name)
+)
+
+suspend fun RequestsExecutor.getStickerSet(
+ sticker: Sticker
+) = getStickerSet(
+ sticker.stickerSetName ?: error("Sticker must contains stickerSetName to be correctly used in getStickerSet method")
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/get/GetUserProfilePhotos.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/get/GetUserProfilePhotos.kt
new file mode 100644
index 0000000000..a3f613e543
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/get/GetUserProfilePhotos.kt
@@ -0,0 +1,22 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.get
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.get.GetUserProfilePhotos
+import com.github.insanusmokrassar.TelegramBotAPI.types.CommonUser
+import com.github.insanusmokrassar.TelegramBotAPI.types.UserId
+
+suspend fun RequestsExecutor.getUserProfilePhotos(
+ userId: UserId,
+ offset: Int? = null,
+ limit: Int? = null
+) = execute(
+ GetUserProfilePhotos(
+ userId, offset, limit
+ )
+)
+
+suspend fun RequestsExecutor.getUserProfilePhotos(
+ user: CommonUser,
+ offset: Int? = null,
+ limit: Int? = null
+) = getUserProfilePhotos(user.id, offset, limit)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendAction.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendAction.kt
new file mode 100644
index 0000000000..a2366ab56a
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendAction.kt
@@ -0,0 +1,102 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.SendAction
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.actions.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+
+suspend fun RequestsExecutor.sendBotAction(
+ chatId: ChatIdentifier,
+ action: BotAction
+) = execute(
+ SendAction(chatId, action)
+)
+
+suspend fun RequestsExecutor.sendBotAction(
+ chat: Chat,
+ action: BotAction
+) = sendBotAction(chat.id, action)
+
+
+suspend fun RequestsExecutor.sendActionTyping(
+ chatId: ChatIdentifier
+) = sendBotAction(chatId, TypingAction)
+
+suspend fun RequestsExecutor.sendActionUploadPhoto(
+ chatId: ChatIdentifier
+) = sendBotAction(chatId, UploadPhotoAction)
+
+suspend fun RequestsExecutor.sendActionRecordVideo(
+ chatId: ChatIdentifier
+) = sendBotAction(chatId, RecordVideoAction)
+
+suspend fun RequestsExecutor.sendActionUploadVideo(
+ chatId: ChatIdentifier
+) = sendBotAction(chatId, UploadVideoAction)
+
+suspend fun RequestsExecutor.sendActionRecordAudio(
+ chatId: ChatIdentifier
+) = sendBotAction(chatId, RecordAudioAction)
+
+suspend fun RequestsExecutor.sendActionUploadAudio(
+ chatId: ChatIdentifier
+) = sendBotAction(chatId, UploadAudioAction)
+
+suspend fun RequestsExecutor.sendActionUploadDocument(
+ chatId: ChatIdentifier
+) = sendBotAction(chatId, UploadDocumentAction)
+
+suspend fun RequestsExecutor.sendActionFindLocation(
+ chatId: ChatIdentifier
+) = sendBotAction(chatId, FindLocationAction)
+
+suspend fun RequestsExecutor.sendActionRecordVideoNote(
+ chatId: ChatIdentifier
+) = sendBotAction(chatId, RecordVideoNoteAction)
+
+suspend fun RequestsExecutor.sendActionUploadVideoNote(
+ chatId: ChatIdentifier
+) = sendBotAction(chatId, UploadVideoNoteAction)
+
+
+suspend fun RequestsExecutor.sendActionTyping(
+ chat: Chat
+) = sendBotAction(chat, TypingAction)
+
+suspend fun RequestsExecutor.sendActionUploadPhoto(
+ chat: Chat
+) = sendBotAction(chat, UploadPhotoAction)
+
+suspend fun RequestsExecutor.sendActionRecordVideo(
+ chat: Chat
+) = sendBotAction(chat, RecordVideoAction)
+
+suspend fun RequestsExecutor.sendActionUploadVideo(
+ chat: Chat
+) = sendBotAction(chat, UploadVideoAction)
+
+suspend fun RequestsExecutor.sendActionRecordAudio(
+ chat: Chat
+) = sendBotAction(chat, RecordAudioAction)
+
+suspend fun RequestsExecutor.sendActionUploadAudio(
+ chat: Chat
+) = sendBotAction(chat, UploadAudioAction)
+
+suspend fun RequestsExecutor.sendActionUploadDocument(
+ chat: Chat
+) = sendBotAction(chat, UploadDocumentAction)
+
+suspend fun RequestsExecutor.sendActionFindLocation(
+ chat: Chat
+) = sendBotAction(chat, FindLocationAction)
+
+suspend fun RequestsExecutor.sendActionRecordVideoNote(
+ chat: Chat
+) = sendBotAction(chat, RecordVideoNoteAction)
+
+suspend fun RequestsExecutor.sendActionUploadVideoNote(
+ chat: Chat
+) = sendBotAction(chat, UploadVideoNoteAction)
+
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendContact.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendContact.kt
new file mode 100644
index 0000000000..6aa4a2cb94
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendContact.kt
@@ -0,0 +1,55 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.SendContact
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+
+suspend fun RequestsExecutor.sendContact(
+ chatId: ChatIdentifier,
+ phoneNumber: String,
+ firstName: String,
+ lastName: String? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendContact(
+ chatId, phoneNumber, firstName, lastName, disableNotification, replyToMessageId, replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendContact(
+ chatId: ChatIdentifier,
+ contact: Contact,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendContact(
+ chatId, contact, disableNotification, replyToMessageId, replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendContact(
+ chat: Chat,
+ phoneNumber: String,
+ firstName: String,
+ lastName: String? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendContact(
+ chat.id, phoneNumber, firstName, lastName, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendContact(
+ chat: Chat,
+ contact: Contact,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendContact(
+ chat.id, contact, disableNotification, replyToMessageId, replyMarkup
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendLocation.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendLocation.kt
new file mode 100644
index 0000000000..2b0437f063
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendLocation.kt
@@ -0,0 +1,71 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.SendLocation
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+
+suspend fun RequestsExecutor.sendLocation(
+ chatId: ChatIdentifier,
+ latitude: Double,
+ longitude: Double,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendLocation(
+ chatId,
+ latitude,
+ longitude,
+ disableNotification = disableNotification,
+ replyToMessageId = replyToMessageId,
+ replyMarkup = replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendLocation(
+ chatId: ChatIdentifier,
+ location: Location,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendLocation(
+ chatId,
+ location.latitude,
+ location.longitude,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+)
+
+suspend fun RequestsExecutor.sendLocation(
+ chat: Chat,
+ latitude: Double,
+ longitude: Double,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendLocation(
+ chat.id,
+ latitude,
+ longitude,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+)
+
+suspend fun RequestsExecutor.sendLocation(
+ chat: Chat,
+ location: Location,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendLocation(
+ chat.id,
+ location.latitude,
+ location.longitude,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendMessage.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendMessage.kt
new file mode 100644
index 0000000000..0275e9916c
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendMessage.kt
@@ -0,0 +1,54 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.SendTextMessage
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+
+suspend fun RequestsExecutor.sendMessage(
+ chatId: ChatIdentifier,
+ text: String,
+ parseMode: ParseMode? = null,
+ disableWebPagePreview: Boolean? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendTextMessage(chatId, text, parseMode, disableWebPagePreview, disableNotification, replyToMessageId, replyMarkup)
+)
+
+suspend fun RequestsExecutor.sendTextMessage(
+ chatId: ChatIdentifier,
+ text: String,
+ parseMode: ParseMode? = null,
+ disableWebPagePreview: Boolean? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendMessage(
+ chatId, text, parseMode, disableWebPagePreview, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendMessage(
+ chat: Chat,
+ text: String,
+ parseMode: ParseMode? = null,
+ disableWebPagePreview: Boolean? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendMessage(chat.id, text, parseMode, disableWebPagePreview, disableNotification, replyToMessageId, replyMarkup)
+
+
+suspend fun RequestsExecutor.sendTextMessage(
+ chat: Chat,
+ text: String,
+ parseMode: ParseMode? = null,
+ disableWebPagePreview: Boolean? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendTextMessage(chat.id, text, parseMode, disableWebPagePreview, disableNotification, replyToMessageId, replyMarkup)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendVenue.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendVenue.kt
new file mode 100644
index 0000000000..4f358d4ad3
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/SendVenue.kt
@@ -0,0 +1,59 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.SendVenue
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+
+suspend fun RequestsExecutor.sendVenue(
+ chatId: ChatIdentifier,
+ latitude: Double,
+ longitude: Double,
+ title: String,
+ address: String,
+ foursquareId: String? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVenue(
+ chatId, latitude, longitude, title, address, foursquareId, disableNotification, replyToMessageId, replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendVenue(
+ chat: Chat,
+ latitude: Double,
+ longitude: Double,
+ title: String,
+ address: String,
+ foursquareId: String? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendVenue(
+ chat.id, latitude, longitude, title, address, foursquareId, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendVenue(
+ chatId: ChatIdentifier,
+ venue: Venue,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVenue(
+ chatId, venue, disableNotification, replyToMessageId, replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendVenue(
+ chat: Chat,
+ venue: Venue,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendVenue(
+ chat.id, venue, disableNotification, replyToMessageId, replyMarkup
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/games/SendGame.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/games/SendGame.kt
new file mode 100644
index 0000000000..fc1bc641d6
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/games/SendGame.kt
@@ -0,0 +1,51 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send.games
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.games.SendGame
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.games.Game
+
+suspend fun RequestsExecutor.sendGame(
+ chatId: ChatIdentifier,
+ gameShortName: String,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendGame(
+ chatId, gameShortName, disableNotification, replyToMessageId, replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendGame(
+ chat: Chat,
+ gameShortName: String,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendGame(
+ chat.id, gameShortName, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendGame(
+ chatId: ChatIdentifier,
+ game: Game,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendGame(
+ chatId, game.title, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendGame(
+ chat: Chat,
+ game: Game,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendGame(
+ chat.id, game.title, disableNotification, replyToMessageId, replyMarkup
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendAnimation.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendAnimation.kt
new file mode 100644
index 0000000000..c7ee2df51b
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendAnimation.kt
@@ -0,0 +1,167 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send.media
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.MultipartFile
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.media.SendAnimation
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.AnimationFile
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.PhotoSize
+
+suspend fun RequestsExecutor.sendAnimation(
+ chatId: ChatIdentifier,
+ animation: FileId,
+ thumb: FileId? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ width: Int? = null,
+ height: Int? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendAnimation(
+ chatId,
+ animation,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ width,
+ height,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendAnimation(
+ chatId: ChatIdentifier,
+ animation: AnimationFile,
+ thumb: PhotoSize? = animation.thumb,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendAnimation(
+ chatId, animation.fileId, thumb ?.fileId, text, parseMode, animation.duration, animation.width, animation.height, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendAnimation(
+ chatId: ChatIdentifier,
+ animation: MultipartFile,
+ thumb: FileId? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ width: Int? = null,
+ height: Int? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendAnimation(
+ chatId,
+ animation,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ width,
+ height,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendAnimation(
+ chatId: ChatIdentifier,
+ animation: MultipartFile,
+ thumb: MultipartFile? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ width: Int? = null,
+ height: Int? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendAnimation(
+ chatId,
+ animation,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ width,
+ height,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendAnimation(
+ chatId: ChatIdentifier,
+ animation: FileId,
+ thumb: MultipartFile,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ width: Int? = null,
+ height: Int? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendAnimation(
+ chatId,
+ animation,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ width,
+ height,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendAnimation(
+ chatId: ChatIdentifier,
+ animation: MultipartFile,
+ thumb: PhotoSize? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ width: Int? = null,
+ height: Int? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendAnimation(
+ chatId, animation, thumb ?.fileId , text, parseMode, duration, width, height, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendAnimation(
+ chatId: ChatIdentifier,
+ animation: AnimationFile,
+ thumb: MultipartFile,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendAnimation(
+ chatId, animation.fileId, thumb, text, parseMode, animation.duration, animation.width, animation.height, disableNotification, replyToMessageId, replyMarkup
+)
+
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendAudio.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendAudio.kt
new file mode 100644
index 0000000000..0951bc44f4
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendAudio.kt
@@ -0,0 +1,168 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send.media
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.MultipartFile
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.media.SendAudio
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.AudioFile
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.PhotoSize
+
+suspend fun RequestsExecutor.sendAudio(
+ chatId: ChatIdentifier,
+ audio: FileId,
+ thumb: FileId? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ performer: String? = null,
+ title: String? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendAudio(
+ chatId,
+ audio,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ performer,
+ title,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendAudio(
+ chatId: ChatIdentifier,
+ audio: AudioFile,
+ thumb: PhotoSize? = audio.thumb,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ title: String? = audio.title,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendAudio(
+ chatId, audio.fileId, thumb ?.fileId, text, parseMode, audio.duration, audio.performer, title, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendAudio(
+ chatId: ChatIdentifier,
+ audio: MultipartFile,
+ thumb: FileId? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ performer: String? = null,
+ title: String? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendAudio(
+ chatId,
+ audio,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ performer,
+ title,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendAudio(
+ chatId: ChatIdentifier,
+ audio: MultipartFile,
+ thumb: MultipartFile? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ performer: String? = null,
+ title: String? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendAudio(
+ chatId,
+ audio,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ performer,
+ title,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendAudio(
+ chatId: ChatIdentifier,
+ audio: FileId,
+ thumb: MultipartFile,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ performer: String? = null,
+ title: String? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendAudio(
+ chatId,
+ audio,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ performer,
+ title,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendAudio(
+ chatId: ChatIdentifier,
+ audio: MultipartFile,
+ thumb: PhotoSize? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ performer: String? = null,
+ title: String? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendAudio(
+ chatId, audio, thumb ?.fileId , text, parseMode, duration, performer, title, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendAudio(
+ chatId: ChatIdentifier,
+ audio: AudioFile,
+ thumb: MultipartFile,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ title: String? = audio.title,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendAudio(
+ chatId, audio.fileId, thumb, text, parseMode, audio.duration, audio.performer, title, disableNotification, replyToMessageId, replyMarkup
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendDocument.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendDocument.kt
new file mode 100644
index 0000000000..a5fe4ffb7d
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendDocument.kt
@@ -0,0 +1,139 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send.media
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.MultipartFile
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.media.SendDocument
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.DocumentFile
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.PhotoSize
+
+suspend fun RequestsExecutor.sendDocument(
+ chatId: ChatIdentifier,
+ document: FileId,
+ thumb: FileId? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendDocument(
+ chatId,
+ document,
+ thumb,
+ text,
+ parseMode,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendDocument(
+ chatId: ChatIdentifier,
+ document: DocumentFile,
+ thumb: PhotoSize? = document.thumb,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendDocument(
+ chatId, document.fileId, thumb ?.fileId, text, parseMode, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendDocument(
+ chatId: ChatIdentifier,
+ document: MultipartFile,
+ thumb: FileId? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendDocument(
+ chatId,
+ document,
+ thumb,
+ text,
+ parseMode,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendDocument(
+ chatId: ChatIdentifier,
+ document: MultipartFile,
+ thumb: MultipartFile? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendDocument(
+ chatId,
+ document,
+ thumb,
+ text,
+ parseMode,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendDocument(
+ chatId: ChatIdentifier,
+ document: FileId,
+ thumb: MultipartFile,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendDocument(
+ chatId,
+ document,
+ thumb,
+ text,
+ parseMode,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendDocument(
+ chatId: ChatIdentifier,
+ document: MultipartFile,
+ thumb: PhotoSize? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendDocument(
+ chatId, document, thumb ?.fileId , text, parseMode, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendDocument(
+ chatId: ChatIdentifier,
+ document: DocumentFile,
+ thumb: MultipartFile,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendDocument(
+ chatId, document.fileId, thumb, text, parseMode, disableNotification, replyToMessageId, replyMarkup
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendMediaGroup.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendMediaGroup.kt
new file mode 100644
index 0000000000..3c8448f445
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendMediaGroup.kt
@@ -0,0 +1,28 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send.media
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.media.SendMediaGroup
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.InputMedia.MediaGroupMemberInputMedia
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+
+suspend fun RequestsExecutor.sendMediaGroup(
+ chatId: ChatIdentifier,
+ media: List,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null
+) = execute(
+ SendMediaGroup(
+ chatId, media, disableNotification, replyToMessageId
+ )
+)
+
+suspend fun RequestsExecutor.sendMediaGroup(
+ chat: Chat,
+ media: List,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null
+) = sendMediaGroup(
+ chat.id, media, disableNotification, replyToMessageId
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendPhoto.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendPhoto.kt
new file mode 100644
index 0000000000..f9460cdc9f
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendPhoto.kt
@@ -0,0 +1,136 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send.media
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.MultipartFile
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.media.SendPhoto
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.*
+
+suspend fun RequestsExecutor.sendPhoto(
+ chatId: ChatIdentifier,
+ fileId: FileId,
+ caption: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendPhoto(
+ chatId,
+ fileId,
+ caption,
+ parseMode,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendPhoto(
+ chatId: ChatIdentifier,
+ photo: MultipartFile,
+ caption: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendPhoto(
+ chatId,
+ photo,
+ caption,
+ parseMode,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendPhoto(
+ chatId: ChatIdentifier,
+ file: PhotoSize,
+ caption: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendPhoto(
+ chatId, file.fileId, caption, parseMode, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendPhoto(
+ chatId: ChatIdentifier,
+ photo: Photo,
+ caption: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendPhoto(
+ chatId, photo.biggest() ?: throw IllegalArgumentException("Photo $photo is empty"), caption, parseMode, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendPhoto(
+ chat: Chat,
+ fileId: FileId,
+ caption: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendPhoto(
+ chat.id,
+ fileId,
+ caption,
+ parseMode,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+)
+
+suspend fun RequestsExecutor.sendPhoto(
+ chat: Chat,
+ file: PhotoSize,
+ caption: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendPhoto(
+ chat.id, file.fileId, caption, parseMode, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendPhoto(
+ chat: Chat,
+ photo: Photo,
+ caption: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendPhoto(
+ chat.id, photo.biggest() ?: throw IllegalArgumentException("Photo $photo is empty"), caption, parseMode, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendPhoto(
+ chat: Chat,
+ fileId: MultipartFile,
+ caption: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendPhoto(
+ chat.id,
+ fileId,
+ caption,
+ parseMode,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendSticker.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendSticker.kt
new file mode 100644
index 0000000000..bc315db06c
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendSticker.kt
@@ -0,0 +1,66 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send.media
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.MultipartFile
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.media.SendSticker
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.Sticker
+
+suspend fun RequestsExecutor.sendSticker(
+ chatId: ChatIdentifier,
+ sticker: FileId,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendSticker(chatId, sticker, disableNotification, replyToMessageId, replyMarkup)
+)
+
+suspend fun RequestsExecutor.sendSticker(
+ chatId: ChatIdentifier,
+ sticker: MultipartFile,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendSticker(chatId, sticker, disableNotification, replyToMessageId, replyMarkup)
+)
+
+suspend fun RequestsExecutor.sendSticker(
+ chat: Chat,
+ sticker: FileId,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendSticker(chat.id, sticker, disableNotification, replyToMessageId, replyMarkup)
+
+suspend fun RequestsExecutor.sendSticker(
+ chat: Chat,
+ sticker: MultipartFile,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendSticker(chat.id, sticker, disableNotification, replyToMessageId, replyMarkup)
+
+suspend fun RequestsExecutor.sendSticker(
+ chatId: ChatIdentifier,
+ sticker: Sticker,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendSticker(
+ chatId, sticker.fileId, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendSticker(
+ chat: Chat,
+ sticker: Sticker,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendSticker(chat.id, sticker.fileId, disableNotification, replyToMessageId, replyMarkup)
+
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendVideo.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendVideo.kt
new file mode 100644
index 0000000000..d623c96509
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendVideo.kt
@@ -0,0 +1,135 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send.media
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.MultipartFile
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.media.SendVideo
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.PhotoSize
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.VideoFile
+
+suspend fun RequestsExecutor.sendVideo(
+ chatId: ChatIdentifier,
+ video: FileId,
+ thumb: FileId? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ width: Int? = null,
+ height: Int? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVideo(
+ chatId,
+ video,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ width,
+ height,
+ null,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendVideo(
+ chatId: ChatIdentifier,
+ video: VideoFile,
+ thumb: PhotoSize? = video.thumb,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendVideo(
+ chatId, video.fileId, thumb ?.fileId, text, parseMode, video.duration, video.width, video.height, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendVideo(
+ chatId: ChatIdentifier,
+ video: MultipartFile,
+ thumb: FileId? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ width: Int? = null,
+ height: Int? = null,
+ supportStreaming: Boolean? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVideo(chatId, video, thumb, text, parseMode, duration, width, height, supportStreaming, disableNotification, replyToMessageId, replyMarkup)
+)
+
+suspend fun RequestsExecutor.sendVideo(
+ chatId: ChatIdentifier,
+ video: MultipartFile,
+ thumb: MultipartFile? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ width: Int? = null,
+ height: Int? = null,
+ supportStreaming: Boolean? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVideo(chatId, video, thumb, text, parseMode, duration, width, height, supportStreaming, disableNotification, replyToMessageId, replyMarkup)
+)
+
+suspend fun RequestsExecutor.sendVideo(
+ chatId: ChatIdentifier,
+ video: FileId,
+ thumb: MultipartFile,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ width: Int? = null,
+ height: Int? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVideo(chatId, video, thumb, text, parseMode, duration, width, height, null, disableNotification, replyToMessageId, replyMarkup)
+)
+
+suspend fun RequestsExecutor.sendVideo(
+ chatId: ChatIdentifier,
+ video: MultipartFile,
+ thumb: PhotoSize? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ width: Int? = null,
+ height: Int? = null,
+ supportStreaming: Boolean? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendVideo(
+ chatId, video, thumb ?.fileId , text, parseMode, duration, width, height, supportStreaming, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendVideo(
+ chatId: ChatIdentifier,
+ video: VideoFile,
+ thumb: MultipartFile,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendVideo(
+ chatId, video.fileId, thumb, text, parseMode, video.duration, video.width, video.height, disableNotification, replyToMessageId, replyMarkup
+)
+
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendVideoNote.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendVideoNote.kt
new file mode 100644
index 0000000000..8fc6ff6946
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendVideoNote.kt
@@ -0,0 +1,157 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send.media
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.MultipartFile
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.media.SendVideoNote
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.PhotoSize
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.VideoFile
+
+suspend fun RequestsExecutor.sendVideoNote(
+ chatId: ChatIdentifier,
+ videoNote: FileId,
+ thumb: FileId? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ size: Int? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVideoNote(
+ chatId,
+ videoNote,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ size,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendVideoNote(
+ chatId: ChatIdentifier,
+ videoNote: VideoFile,
+ thumb: PhotoSize? = videoNote.thumb,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendVideoNote(
+ chatId, videoNote.fileId, thumb ?.fileId, text, parseMode, videoNote.duration, videoNote.width, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendVideoNote(
+ chatId: ChatIdentifier,
+ videoNote: MultipartFile,
+ thumb: FileId? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ size: Int? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVideoNote(
+ chatId,
+ videoNote,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ size,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendVideoNote(
+ chatId: ChatIdentifier,
+ videoNote: MultipartFile,
+ thumb: MultipartFile? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ size: Int? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVideoNote(
+ chatId,
+ videoNote,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ size,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendVideoNote(
+ chatId: ChatIdentifier,
+ videoNote: FileId,
+ thumb: MultipartFile,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ size: Int? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVideoNote(
+ chatId,
+ videoNote,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ size,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendVideoNote(
+ chatId: ChatIdentifier,
+ videoNote: MultipartFile,
+ thumb: PhotoSize? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ size: Int? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendVideoNote(
+ chatId, videoNote, thumb ?.fileId , text, parseMode, duration, size, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendVideoNote(
+ chatId: ChatIdentifier,
+ videoNote: VideoFile,
+ thumb: MultipartFile,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendVideoNote(
+ chatId, videoNote.fileId, thumb, text, parseMode, videoNote.duration, videoNote.width, disableNotification, replyToMessageId, replyMarkup
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendVoice.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendVoice.kt
new file mode 100644
index 0000000000..f0e233378f
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/media/SendVoice.kt
@@ -0,0 +1,149 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send.media
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.MultipartFile
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.media.SendVoice
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.ParseMode.ParseMode
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.AudioFile
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.PhotoSize
+
+suspend fun RequestsExecutor.sendVoice(
+ chatId: ChatIdentifier,
+ voice: FileId,
+ thumb: FileId? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVoice(
+ chatId,
+ voice,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendVoice(
+ chatId: ChatIdentifier,
+ voice: AudioFile,
+ thumb: PhotoSize? = voice.thumb,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendVoice(
+ chatId, voice.fileId, thumb ?.fileId, text, parseMode, voice.duration, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendVoice(
+ chatId: ChatIdentifier,
+ voice: MultipartFile,
+ thumb: FileId? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVoice(
+ chatId,
+ voice,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendVoice(
+ chatId: ChatIdentifier,
+ voice: MultipartFile,
+ thumb: MultipartFile? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVoice(
+ chatId,
+ voice,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendVoice(
+ chatId: ChatIdentifier,
+ voice: FileId,
+ thumb: MultipartFile,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendVoice(
+ chatId,
+ voice,
+ thumb,
+ text,
+ parseMode,
+ duration,
+ disableNotification,
+ replyToMessageId,
+ replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendVoice(
+ chatId: ChatIdentifier,
+ voice: MultipartFile,
+ thumb: PhotoSize? = null,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ duration: Long? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendVoice(
+ chatId, voice, thumb ?.fileId , text, parseMode, duration, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendVoice(
+ chatId: ChatIdentifier,
+ voice: AudioFile,
+ thumb: MultipartFile,
+ text: String? = null,
+ parseMode: ParseMode? = null,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendVoice(
+ chatId, voice.fileId, thumb, text, parseMode, voice.duration, disableNotification, replyToMessageId, replyMarkup
+)
+
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/payments/SendInvoice.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/payments/SendInvoice.kt
new file mode 100644
index 0000000000..6f5b50f7c6
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/payments/SendInvoice.kt
@@ -0,0 +1,54 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send.payments
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.payments.SendInvoice
+import com.github.insanusmokrassar.TelegramBotAPI.types.*
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.InlineKeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.payments.LabeledPrice
+import com.github.insanusmokrassar.TelegramBotAPI.types.payments.abstracts.Currency
+
+suspend fun RequestsExecutor.sendInvoice(
+ chatId: ChatId,
+ title: String,
+ description: String,
+ payload: String,
+ providerToken: String,
+ startParameter: StartParameter,
+ currency: Currency,
+ prices: List,
+ providerData: String? = null,
+ requireName: Boolean = false,
+ requirePhoneNumber: Boolean = false,
+ requireEmail: Boolean = false,
+ requireShippingAddress: Boolean = false,
+ shouldSendPhoneNumberToProvider: Boolean = false,
+ shouldSendEmailToProvider: Boolean = false,
+ priceDependOnShipAddress: Boolean = false,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = execute(
+ SendInvoice(chatId, title, description, payload, providerToken, startParameter, currency, prices, providerData, requireName, requirePhoneNumber, requireEmail, requireShippingAddress, shouldSendPhoneNumberToProvider, shouldSendEmailToProvider, priceDependOnShipAddress, disableNotification, replyToMessageId, replyMarkup)
+)
+
+suspend fun RequestsExecutor.sendInvoice(
+ user: CommonUser,
+ title: String,
+ description: String,
+ payload: String,
+ providerToken: String,
+ startParameter: StartParameter,
+ currency: Currency,
+ prices: List,
+ providerData: String? = null,
+ requireName: Boolean = false,
+ requirePhoneNumber: Boolean = false,
+ requireEmail: Boolean = false,
+ requireShippingAddress: Boolean = false,
+ shouldSendPhoneNumberToProvider: Boolean = false,
+ shouldSendEmailToProvider: Boolean = false,
+ priceDependOnShipAddress: Boolean = false,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: InlineKeyboardMarkup? = null
+) = sendInvoice(user.id, title, description, payload, providerToken, startParameter, currency, prices, providerData, requireName, requirePhoneNumber, requireEmail, requireShippingAddress, shouldSendPhoneNumberToProvider, shouldSendEmailToProvider, priceDependOnShipAddress, disableNotification, replyToMessageId, replyMarkup)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/polls/SendPoll.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/polls/SendPoll.kt
new file mode 100644
index 0000000000..813b91fa0b
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/send/polls/SendPoll.kt
@@ -0,0 +1,135 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.send.polls
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.polls.SendQuizPoll
+import com.github.insanusmokrassar.TelegramBotAPI.requests.send.polls.SendRegularPoll
+import com.github.insanusmokrassar.TelegramBotAPI.types.ChatIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.MessageIdentifier
+import com.github.insanusmokrassar.TelegramBotAPI.types.buttons.KeyboardMarkup
+import com.github.insanusmokrassar.TelegramBotAPI.types.chat.abstracts.Chat
+import com.github.insanusmokrassar.TelegramBotAPI.types.polls.QuizPoll
+import com.github.insanusmokrassar.TelegramBotAPI.types.polls.RegularPoll
+
+suspend fun RequestsExecutor.sendRegularPoll(
+ chatId: ChatIdentifier,
+ question: String,
+ options: List,
+ isAnonymous: Boolean = true,
+ isClosed: Boolean = false,
+ allowMultipleAnswers: Boolean = false,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendRegularPoll(
+ chatId, question, options, isAnonymous, isClosed, allowMultipleAnswers, disableNotification, replyToMessageId, replyMarkup
+ )
+)
+suspend fun RequestsExecutor.sendRegularPoll(
+ chatId: ChatIdentifier,
+ poll: RegularPoll,
+ isClosed: Boolean = false,
+ question: String = poll.question,
+ options: List = poll.options.map { it.text },
+ isAnonymous: Boolean = poll.isAnonymous,
+ allowMultipleAnswers: Boolean = poll.allowMultipleAnswers,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendRegularPoll(
+ chatId, question, options, isAnonymous, isClosed, allowMultipleAnswers, disableNotification, replyToMessageId, replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendRegularPoll(
+ chat: Chat,
+ question: String,
+ options: List,
+ isAnonymous: Boolean = true,
+ isClosed: Boolean = false,
+ allowMultipleAnswers: Boolean = false,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendRegularPoll(
+ chat.id, question, options, isAnonymous, isClosed, allowMultipleAnswers, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendRegularPoll(
+ chat: Chat,
+ poll: RegularPoll,
+ isClosed: Boolean = false,
+ question: String = poll.question,
+ options: List = poll.options.map { it.text },
+ isAnonymous: Boolean = poll.isAnonymous,
+ allowMultipleAnswers: Boolean = poll.allowMultipleAnswers,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendRegularPoll(
+ chat.id, question, options, isAnonymous, isClosed, allowMultipleAnswers, disableNotification, replyToMessageId, replyMarkup
+)
+
+
+suspend fun RequestsExecutor.sendQuizPoll(
+ chatId: ChatIdentifier,
+ question: String,
+ options: List,
+ correctOptionId: Int,
+ isAnonymous: Boolean = true,
+ isClosed: Boolean = false,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendQuizPoll(
+ chatId, question, options, correctOptionId, isAnonymous, isClosed, disableNotification, replyToMessageId, replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendQuizPoll(
+ chat: Chat,
+ question: String,
+ options: List,
+ correctOptionId: Int,
+ isAnonymous: Boolean = true,
+ isClosed: Boolean = false,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendQuizPoll(
+ chat.id, question, options, correctOptionId, isAnonymous, isClosed, disableNotification, replyToMessageId, replyMarkup
+)
+
+suspend fun RequestsExecutor.sendQuizPoll(
+ chatId: ChatIdentifier,
+ isClosed: Boolean = false,
+ quizPoll: QuizPoll,
+ question: String = quizPoll.question,
+ options: List = quizPoll.options.map { it.text },
+ correctOptionId: Int = quizPoll.correctOptionId ?: error("Correct option ID must be provided by income QuizPoll or by developer"),
+ isAnonymous: Boolean = quizPoll.isAnonymous,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = execute(
+ SendQuizPoll(
+ chatId, question, options, correctOptionId, isAnonymous, isClosed, disableNotification, replyToMessageId, replyMarkup
+ )
+)
+
+suspend fun RequestsExecutor.sendQuizPoll(
+ chat: Chat,
+ isClosed: Boolean = false,
+ quizPoll: QuizPoll,
+ question: String = quizPoll.question,
+ options: List = quizPoll.options.map { it.text },
+ correctOptionId: Int = quizPoll.correctOptionId ?: error("Correct option ID must be provided by income QuizPoll or by developer"),
+ isAnonymous: Boolean = quizPoll.isAnonymous,
+ disableNotification: Boolean = false,
+ replyToMessageId: MessageIdentifier? = null,
+ replyMarkup: KeyboardMarkup? = null
+) = sendQuizPoll(
+ chat.id, question, options, correctOptionId, isAnonymous, isClosed, disableNotification, replyToMessageId, replyMarkup
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/AddStickerToSet.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/AddStickerToSet.kt
new file mode 100644
index 0000000000..e2436eb245
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/AddStickerToSet.kt
@@ -0,0 +1,90 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.stickers
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.MultipartFile
+import com.github.insanusmokrassar.TelegramBotAPI.requests.stickers.AddStickerToSet
+import com.github.insanusmokrassar.TelegramBotAPI.types.CommonUser
+import com.github.insanusmokrassar.TelegramBotAPI.types.UserId
+import com.github.insanusmokrassar.TelegramBotAPI.types.stickers.MaskPosition
+import com.github.insanusmokrassar.TelegramBotAPI.types.stickers.StickerSet
+
+suspend fun RequestsExecutor.addStickerToSet(
+ userId: UserId,
+ stickerSetName: String,
+ sticker: FileId,
+ emojis: String,
+ maskPosition: MaskPosition? = null
+) = execute(
+ AddStickerToSet(userId, stickerSetName, sticker, emojis, maskPosition)
+)
+
+suspend fun RequestsExecutor.addStickerToSet(
+ userId: UserId,
+ stickerSetName: String,
+ sticker: MultipartFile,
+ emojis: String,
+ maskPosition: MaskPosition? = null
+) = execute(
+ AddStickerToSet(userId, stickerSetName, sticker, emojis, maskPosition)
+)
+
+suspend fun RequestsExecutor.addStickerToSet(
+ user: CommonUser,
+ stickerSetName: String,
+ sticker: FileId,
+ emojis: String,
+ maskPosition: MaskPosition? = null
+) = addStickerToSet(
+ user.id, stickerSetName, sticker, emojis, maskPosition
+)
+
+suspend fun RequestsExecutor.addStickerToSet(
+ user: CommonUser,
+ stickerSetName: String,
+ sticker: MultipartFile,
+ emojis: String,
+ maskPosition: MaskPosition? = null
+) = addStickerToSet(
+ user.id, stickerSetName, sticker, emojis, maskPosition
+)
+
+suspend fun RequestsExecutor.addStickerToSet(
+ userId: UserId,
+ stickerSet: StickerSet,
+ sticker: FileId,
+ emojis: String,
+ maskPosition: MaskPosition? = null
+) = addStickerToSet(
+ userId, stickerSet.name, sticker, emojis, maskPosition
+)
+
+suspend fun RequestsExecutor.addStickerToSet(
+ userId: UserId,
+ stickerSet: StickerSet,
+ sticker: MultipartFile,
+ emojis: String,
+ maskPosition: MaskPosition? = null
+) = addStickerToSet(
+ userId, stickerSet.name, sticker, emojis, maskPosition
+)
+
+suspend fun RequestsExecutor.addStickerToSet(
+ user: CommonUser,
+ stickerSet: StickerSet,
+ sticker: FileId,
+ emojis: String,
+ maskPosition: MaskPosition? = null
+) = addStickerToSet(
+ user.id, stickerSet.name, sticker, emojis, maskPosition
+)
+
+suspend fun RequestsExecutor.addStickerToSet(
+ user: CommonUser,
+ stickerSet: StickerSet,
+ sticker: MultipartFile,
+ emojis: String,
+ maskPosition: MaskPosition? = null
+) = addStickerToSet(
+ user.id, stickerSet.name, sticker, emojis, maskPosition
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/CreateNewStickerSet.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/CreateNewStickerSet.kt
new file mode 100644
index 0000000000..b65acc0f0a
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/CreateNewStickerSet.kt
@@ -0,0 +1,54 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.stickers
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.MultipartFile
+import com.github.insanusmokrassar.TelegramBotAPI.requests.stickers.CreateNewStickerSet
+import com.github.insanusmokrassar.TelegramBotAPI.types.CommonUser
+import com.github.insanusmokrassar.TelegramBotAPI.types.UserId
+import com.github.insanusmokrassar.TelegramBotAPI.types.stickers.MaskPosition
+
+suspend fun RequestsExecutor.createNewStickerSet(
+ userId: UserId,
+ name: String,
+ sticker: FileId,
+ emojis: String,
+ containsMasks: Boolean? = null,
+ maskPosition: MaskPosition? = null
+) = execute(
+ CreateNewStickerSet(userId, name, sticker, emojis, containsMasks, maskPosition)
+)
+
+suspend fun RequestsExecutor.createNewStickerSet(
+ userId: UserId,
+ name: String,
+ sticker: MultipartFile,
+ emojis: String,
+ containsMasks: Boolean? = null,
+ maskPosition: MaskPosition? = null
+) = execute(
+ CreateNewStickerSet(userId, name, sticker, emojis, containsMasks, maskPosition)
+)
+
+
+suspend fun RequestsExecutor.createNewStickerSet(
+ user: CommonUser,
+ name: String,
+ sticker: FileId,
+ emojis: String,
+ containsMasks: Boolean? = null,
+ maskPosition: MaskPosition? = null
+) = createNewStickerSet(
+ user.id, name, sticker, emojis, containsMasks, maskPosition
+)
+
+suspend fun RequestsExecutor.createNewStickerSet(
+ user: CommonUser,
+ name: String,
+ sticker: MultipartFile,
+ emojis: String,
+ containsMasks: Boolean? = null,
+ maskPosition: MaskPosition? = null
+) = createNewStickerSet(
+ user.id, name, sticker, emojis, containsMasks, maskPosition
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/DeleteStickerFromSet.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/DeleteStickerFromSet.kt
new file mode 100644
index 0000000000..3206463af1
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/DeleteStickerFromSet.kt
@@ -0,0 +1,20 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.stickers
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.stickers.DeleteStickerFromSet
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.Sticker
+
+suspend fun RequestsExecutor.deleteStickerFromSet(
+ sticker: FileId
+) = execute(
+ DeleteStickerFromSet(
+ sticker
+ )
+)
+
+suspend fun RequestsExecutor.deleteStickerFromSet(
+ sticker: Sticker
+) = deleteStickerFromSet(
+ sticker.fileId
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/SetStickerPositionInSet.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/SetStickerPositionInSet.kt
new file mode 100644
index 0000000000..553d131ab3
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/SetStickerPositionInSet.kt
@@ -0,0 +1,24 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.stickers
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.stickers.SetStickerPositionInSet
+import com.github.insanusmokrassar.TelegramBotAPI.types.files.Sticker
+
+suspend fun RequestsExecutor.setStickerPositionInSet(
+ sticker: FileId,
+ position: Int
+) = execute(
+ SetStickerPositionInSet(
+ sticker,
+ position
+ )
+)
+
+suspend fun RequestsExecutor.setStickerPositionInSet(
+ sticker: Sticker,
+ position: Int
+) = setStickerPositionInSet(
+ sticker.fileId,
+ position
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/UploadStickerFile.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/UploadStickerFile.kt
new file mode 100644
index 0000000000..e61ace8cce
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/stickers/UploadStickerFile.kt
@@ -0,0 +1,21 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.stickers
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.MultipartFile
+import com.github.insanusmokrassar.TelegramBotAPI.requests.stickers.UploadStickerFile
+import com.github.insanusmokrassar.TelegramBotAPI.types.CommonUser
+import com.github.insanusmokrassar.TelegramBotAPI.types.UserId
+
+suspend fun RequestsExecutor.uploadStickerFile(
+ userId: UserId,
+ sticker: MultipartFile
+) = execute(
+ UploadStickerFile(userId, sticker)
+)
+
+suspend fun RequestsExecutor.uploadStickerFile(
+ user: CommonUser,
+ sticker: MultipartFile
+) = execute(
+ UploadStickerFile(user.id, sticker)
+)
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/webhook/DeleteWebhook.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/webhook/DeleteWebhook.kt
new file mode 100644
index 0000000000..24ae2bb00a
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/webhook/DeleteWebhook.kt
@@ -0,0 +1,6 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.webhook
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.webhook.DeleteWebhook
+
+suspend fun RequestsExecutor.deleteWebhook() = execute(DeleteWebhook())
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/webhook/GetWebhookInfo.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/webhook/GetWebhookInfo.kt
new file mode 100644
index 0000000000..e8547f44d6
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/webhook/GetWebhookInfo.kt
@@ -0,0 +1,6 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.webhook
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.webhook.GetWebhookInfo
+
+suspend fun RequestsExecutor.getWebhookInfo() = execute(GetWebhookInfo())
diff --git a/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/webhook/SetWebhook.kt b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/webhook/SetWebhook.kt
new file mode 100644
index 0000000000..7d2e45d493
--- /dev/null
+++ b/TelegramBotAPI-extensions-api/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/extensions/api/webhook/SetWebhook.kt
@@ -0,0 +1,28 @@
+package com.github.insanusmokrassar.TelegramBotAPI.extensions.api.webhook
+
+import com.github.insanusmokrassar.TelegramBotAPI.bot.RequestsExecutor
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.FileId
+import com.github.insanusmokrassar.TelegramBotAPI.requests.abstracts.MultipartFile
+import com.github.insanusmokrassar.TelegramBotAPI.requests.webhook.SetWebhook
+
+suspend fun RequestsExecutor.setWebhookInfo(
+ url: String,
+ certificate: FileId,
+ maxAllowedConnections: Int? = null,
+ allowedUpdates: List? = null
+) = execute(
+ SetWebhook(
+ url, certificate, maxAllowedConnections, allowedUpdates
+ )
+)
+
+suspend fun RequestsExecutor.setWebhookInfo(
+ url: String,
+ certificate: MultipartFile,
+ maxAllowedConnections: Int? = null,
+ allowedUpdates: List? = null
+) = execute(
+ SetWebhook(
+ url, certificate, maxAllowedConnections, allowedUpdates
+ )
+)
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/DeleteMessage.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/DeleteMessage.kt
index a7df40851a..f6befe6c15 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/DeleteMessage.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/DeleteMessage.kt
@@ -24,6 +24,7 @@ data class DeleteMessage(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.deleteMessage(
chatId: ChatIdentifier,
messageId: MessageIdentifier
@@ -31,11 +32,13 @@ suspend fun RequestsExecutor.deleteMessage(
DeleteMessage(chatId, messageId)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.deleteMessage(
chat: Chat,
messageId: MessageIdentifier
) = deleteMessage(chat.id, messageId)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.deleteMessage(
message: Message
) = deleteMessage(message.chat, message.messageId)
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/ForwardMessage.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/ForwardMessage.kt
index ebdf92e1fc..22e78d45ad 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/ForwardMessage.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/ForwardMessage.kt
@@ -32,6 +32,7 @@ data class ForwardMessage(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.forwardMessage(
fromChatId: ChatIdentifier,
toChatId: ChatIdentifier,
@@ -41,6 +42,7 @@ suspend fun RequestsExecutor.forwardMessage(
ForwardMessage(fromChatId, toChatId, messageId, disableNotification)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.forwardMessage(
fromChat: Chat,
toChatId: ChatIdentifier,
@@ -48,6 +50,7 @@ suspend fun RequestsExecutor.forwardMessage(
disableNotification: Boolean = false
) = forwardMessage(fromChat.id, toChatId, messageId, disableNotification)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.forwardMessage(
fromChatId: ChatIdentifier,
toChat: Chat,
@@ -55,6 +58,7 @@ suspend fun RequestsExecutor.forwardMessage(
disableNotification: Boolean = false
) = forwardMessage(fromChatId, toChat.id, messageId, disableNotification)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.forwardMessage(
fromChat: Chat,
toChat: Chat,
@@ -62,12 +66,14 @@ suspend fun RequestsExecutor.forwardMessage(
disableNotification: Boolean = false
) = forwardMessage(fromChat.id, toChat.id, messageId, disableNotification)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.forwardMessage(
toChatId: ChatIdentifier,
message: Message,
disableNotification: Boolean = false
) = forwardMessage(message.chat, toChatId, message.messageId, disableNotification)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.forwardMessage(
toChat: Chat,
message: Message,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetMe.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetMe.kt
index dfebfca2c1..5af10ee101 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetMe.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetMe.kt
@@ -14,4 +14,5 @@ class GetMe : SimpleRequest {
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getMe() = execute(GetMe())
\ No newline at end of file
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetUpdates.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetUpdates.kt
index c4094cb6a9..485e3bf8a6 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetUpdates.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/GetUpdates.kt
@@ -29,6 +29,7 @@ data class GetUpdates(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getUpdates(
offset: UpdateIdentifier? = null,
limit: Int? = null,
@@ -40,6 +41,7 @@ suspend fun RequestsExecutor.getUpdates(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getUpdates(
lastUpdate: Update,
limit: Int? = null,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/LiveLocation.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/LiveLocation.kt
index de8dddff05..7da413e3f1 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/LiveLocation.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/LiveLocation.kt
@@ -18,6 +18,7 @@ import kotlinx.coroutines.launch
import kotlin.math.ceil
private val livePeriodDelayMillis = (livePeriodLimit.last - 60L) * 1000L
+@Deprecated("Deprecated due to extracting into separated library")
class LiveLocation internal constructor(
private val requestsExecutor: RequestsExecutor,
scope: CoroutineScope,
@@ -66,6 +67,7 @@ class LiveLocation internal constructor(
}
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.startLiveLocation(
scope: CoroutineScope,
chatId: ChatIdentifier,
@@ -97,6 +99,7 @@ suspend fun RequestsExecutor.startLiveLocation(
)
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.startLiveLocation(
scope: CoroutineScope,
chat: Chat,
@@ -110,6 +113,7 @@ suspend fun RequestsExecutor.startLiveLocation(
scope, chat.id, latitude, longitude, liveTimeMillis, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.startLiveLocation(
scope: CoroutineScope,
chatId: ChatId,
@@ -122,6 +126,7 @@ suspend fun RequestsExecutor.startLiveLocation(
scope, chatId, location.latitude, location.longitude, liveTimeMillis, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.startLiveLocation(
scope: CoroutineScope,
chat: Chat,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/StopPoll.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/StopPoll.kt
index cdf2960886..a087d0b423 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/StopPoll.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/StopPoll.kt
@@ -27,6 +27,7 @@ data class StopPoll(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.stopPoll(
chatId: ChatIdentifier,
messageId: MessageIdentifier,
@@ -35,18 +36,21 @@ suspend fun RequestsExecutor.stopPoll(
StopPoll(chatId, messageId, replyMarkup)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.stopPoll(
chat: Chat,
messageId: MessageIdentifier,
replyMarkup: InlineKeyboardMarkup? = null
) = stopPoll(chat.id, messageId, replyMarkup)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.stopPoll(
chatId: ChatId,
message: Message,
replyMarkup: InlineKeyboardMarkup? = null
) = stopPoll(chatId, message.messageId, replyMarkup)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.stopPoll(
chat: Chat,
message: Message,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerCallbackQuery.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerCallbackQuery.kt
index 0c92f280e0..b298c0679d 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerCallbackQuery.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerCallbackQuery.kt
@@ -34,6 +34,7 @@ fun CallbackQuery.createAnswer(
cachedTimeSeconds: Int? = null
): AnswerCallbackQuery = AnswerCallbackQuery(id, text, showAlert, url, cachedTimeSeconds)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.answerCallbackQuery(
callbackQueryId: CallbackQueryIdentifier,
text: String? = null,
@@ -42,6 +43,7 @@ suspend fun RequestsExecutor.answerCallbackQuery(
cachedTimeSeconds: Int? = null
) = execute(AnswerCallbackQuery(callbackQueryId, text, showAlert, url, cachedTimeSeconds))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.answerCallbackQuery(
callbackQuery: CallbackQuery,
text: String? = null,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerInlineQuery.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerInlineQuery.kt
index 6d42f8162e..cc7d7cdfaa 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerInlineQuery.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/AnswerInlineQuery.kt
@@ -52,6 +52,7 @@ fun InlineQuery.createAnswer(
switchPmParameter
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.answerInlineQuery(
inlineQueryID: InlineQueryIdentifier,
results: List = emptyList(),
@@ -64,6 +65,7 @@ suspend fun RequestsExecutor.answerInlineQuery(
AnswerInlineQuery(inlineQueryID, results, cachedTime, isPersonal, nextOffset, switchPmText, switchPmParameter)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.answerInlineQuery(
inlineQuery: InlineQuery,
results: List = emptyList(),
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/payments/AnswerPreCheckoutQuery.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/payments/AnswerPreCheckoutQuery.kt
index d148db2c93..353c6d7e34 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/payments/AnswerPreCheckoutQuery.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/payments/AnswerPreCheckoutQuery.kt
@@ -42,17 +42,21 @@ fun PreCheckoutQuery.createAnswerError(
error
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.answerPreCheckoutQueryOk(
id: PreCheckoutQueryId
) = execute(AnswerPreCheckoutQueryOk(id))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.answerPreCheckoutQueryOk(
preCheckoutQuery: PreCheckoutQuery
) = answerPreCheckoutQueryOk(preCheckoutQuery.id)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.answerPreCheckoutQueryError(
id: PreCheckoutQueryId,
error: String
) = execute(AnswerPreCheckoutQueryError(id, error))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.answerPreCheckoutQueryError(
preCheckoutQuery: PreCheckoutQuery,
error: String
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/payments/AnswerShippingQuery.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/payments/AnswerShippingQuery.kt
index 9f6ab3ed03..4d9d2c5b74 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/payments/AnswerShippingQuery.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/answers/payments/AnswerShippingQuery.kt
@@ -53,19 +53,23 @@ fun ShippingQuery.createAnswerError(
error
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.answerShippingQueryOk(
id: ShippingQueryIdentifier,
shippingOptions: List
) = execute(AnswerShippingQueryOk(id, shippingOptions))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.answerShippingQueryOk(
shippingQuery: ShippingQuery,
shippingOptions: List
) = answerShippingQueryOk(shippingQuery.id, shippingOptions)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.answerShippingQueryError(
id: ShippingQueryIdentifier,
error: String
) = execute(AnswerShippingQueryError(id, error))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.answerShippingQueryError(
shippingQuery: ShippingQuery,
error: String
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/ExportChatInviteLink.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/ExportChatInviteLink.kt
index b118d2de3c..8dfaa5e279 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/ExportChatInviteLink.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/ExportChatInviteLink.kt
@@ -21,10 +21,12 @@ data class ExportChatInviteLink(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.exportChatInviteLink(
chatId: ChatIdentifier
) = execute(ExportChatInviteLink(chatId))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.exportChatInviteLink(
chat: PublicChat
) = exportChatInviteLink(chat.id)
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/LeaveChat.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/LeaveChat.kt
index 3b61920134..79327a6257 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/LeaveChat.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/LeaveChat.kt
@@ -21,10 +21,12 @@ data class LeaveChat(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.leaveChat(
chatId: ChatIdentifier
) = execute(LeaveChat(chatId))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.leaveChat(
chat: PublicChat
) = leaveChat(chat.id)
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/get/GetChat.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/get/GetChat.kt
index 9ef14933b5..cd257a99f8 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/get/GetChat.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/get/GetChat.kt
@@ -22,10 +22,12 @@ data class GetChat(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getChat(
chatId: ChatIdentifier
) = execute(GetChat(chatId))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getChat(
chat: Chat
) = getChat(chat.id)
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/get/GetChatAdministrators.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/get/GetChatAdministrators.kt
index d63f4a935c..0e43498c1c 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/get/GetChatAdministrators.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/get/GetChatAdministrators.kt
@@ -27,10 +27,12 @@ data class GetChatAdministrators(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getChatAdministrators(
chatId: ChatIdentifier
) = execute(GetChatAdministrators(chatId))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getChatAdministrators(
chat: PublicChat
) = getChatAdministrators(chat.id)
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/get/GetChatMembersCount.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/get/GetChatMembersCount.kt
index 3ec346406c..2ba659c347 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/get/GetChatMembersCount.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/get/GetChatMembersCount.kt
@@ -21,10 +21,12 @@ data class GetChatMembersCount(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getChatMembersCount(
chatId: ChatIdentifier
) = execute(GetChatMembersCount(chatId))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getChatMembersCount(
chat: PublicChat
) = getChatMembersCount(chat.id)
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/GetChatMember.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/GetChatMember.kt
index 16fca63049..cb75a0da7a 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/GetChatMember.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/GetChatMember.kt
@@ -22,21 +22,25 @@ data class GetChatMember(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getChatMember(
chatId: ChatIdentifier,
userId: UserId
) = execute(GetChatMember(chatId, userId))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getChatMember(
chat: PublicChat,
userId: UserId
) = getChatMember(chat.id, userId)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getChatMember(
chatId: ChatId,
user: User
) = getChatMember(chatId, user.id)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getChatMember(
chat: PublicChat,
user: User
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/KickChatMember.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/KickChatMember.kt
index ff1d67b00b..a33931a40c 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/KickChatMember.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/KickChatMember.kt
@@ -24,24 +24,28 @@ data class KickChatMember(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.kickChatMember(
chatId: ChatIdentifier,
userId: UserId,
untilDate: TelegramDate? = null
) = execute(KickChatMember(chatId, userId, untilDate))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.kickChatMember(
chat: PublicChat,
userId: UserId,
untilDate: TelegramDate? = null
) = kickChatMember(chat.id, userId, untilDate)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.kickChatMember(
chatId: ChatId,
user: User,
untilDate: TelegramDate? = null
) = kickChatMember(chatId, user.id, untilDate)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.kickChatMember(
chat: PublicChat,
user: User,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/PromoteChatMember.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/PromoteChatMember.kt
index 7c97a566f0..4e43b4260e 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/PromoteChatMember.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/PromoteChatMember.kt
@@ -40,6 +40,7 @@ data class PromoteChatMember(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.promoteChatMember(
chatId: ChatIdentifier,
userId: UserId,
@@ -68,6 +69,7 @@ suspend fun RequestsExecutor.promoteChatMember(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.promoteChatMember(
chat: PublicChat,
userId: UserId,
@@ -94,6 +96,7 @@ suspend fun RequestsExecutor.promoteChatMember(
canPromoteMembers
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.promoteChatMember(
chatId: ChatId,
user: User,
@@ -120,6 +123,7 @@ suspend fun RequestsExecutor.promoteChatMember(
canPromoteMembers
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.promoteChatMember(
chat: PublicChat,
user: User,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/RestrictChatMember.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/RestrictChatMember.kt
index af97803fc9..2986af0c7c 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/RestrictChatMember.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/RestrictChatMember.kt
@@ -27,6 +27,7 @@ data class RestrictChatMember(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.restrictChatMember(
chatId: ChatIdentifier,
userId: UserId,
@@ -34,6 +35,7 @@ suspend fun RequestsExecutor.restrictChatMember(
permissions: ChatPermissions = ChatPermissions()
) = execute(RestrictChatMember(chatId, userId, untilDate, permissions))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.restrictChatMember(
chat: PublicChat,
userId: UserId,
@@ -41,6 +43,7 @@ suspend fun RequestsExecutor.restrictChatMember(
permissions: ChatPermissions = ChatPermissions()
) = restrictChatMember(chat.id, userId, untilDate, permissions)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.restrictChatMember(
chatId: ChatId,
user: User,
@@ -48,6 +51,7 @@ suspend fun RequestsExecutor.restrictChatMember(
permissions: ChatPermissions = ChatPermissions()
) = restrictChatMember(chatId, user.id, untilDate, permissions)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.restrictChatMember(
chat: PublicChat,
user: User,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/SetChatAdministratorCustomTitle.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/SetChatAdministratorCustomTitle.kt
index 8af7c0e98d..91785b0299 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/SetChatAdministratorCustomTitle.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/SetChatAdministratorCustomTitle.kt
@@ -34,24 +34,28 @@ data class SetChatAdministratorCustomTitle(
}
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setChatAdministratorCustomTitle(
chatId: ChatId,
userId: UserId,
customTitle: String
) = execute(SetChatAdministratorCustomTitle(chatId, userId, customTitle))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setChatAdministratorCustomTitle(
chat: PublicChat,
userId: UserId,
customTitle: String
) = setChatAdministratorCustomTitle(chat.id, userId, customTitle)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setChatAdministratorCustomTitle(
chatId: ChatId,
user: User,
customTitle: String
) = setChatAdministratorCustomTitle(chatId, user.id, customTitle)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setChatAdministratorCustomTitle(
chat: PublicChat,
user: User,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/UnbanChatMember.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/UnbanChatMember.kt
index ec0cecb479..e9f1f3402f 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/UnbanChatMember.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/members/UnbanChatMember.kt
@@ -21,21 +21,25 @@ data class UnbanChatMember(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.unbanChatMember(
chatId: ChatIdentifier,
userId: UserId
) = execute(UnbanChatMember(chatId, userId))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.unbanChatMember(
chat: PublicChat,
userId: UserId
) = unbanChatMember(chat.id, userId)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.unbanChatMember(
chatId: ChatId,
user: User
) = unbanChatMember(chatId, user.id)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.unbanChatMember(
chat: PublicChat,
user: User
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/DeleteChatPhoto.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/DeleteChatPhoto.kt
index 854782d7aa..1638ad3fd7 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/DeleteChatPhoto.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/DeleteChatPhoto.kt
@@ -21,10 +21,12 @@ data class DeleteChatPhoto(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.deleteChatPhoto(
chatId: ChatIdentifier
) = execute(DeleteChatPhoto(chatId))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.deleteChatPhoto(
chat: PublicChat
) = deleteChatPhoto(chat.id)
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/PinChatMessage.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/PinChatMessage.kt
index b64f748a50..7733b54308 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/PinChatMessage.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/PinChatMessage.kt
@@ -25,18 +25,21 @@ data class PinChatMessage (
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.pinChatMessage(
chatId: ChatIdentifier,
messageId: MessageIdentifier,
disableNotification: Boolean = false
) = execute(PinChatMessage(chatId, messageId, disableNotification))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.pinChatMessage(
chat: PublicChat,
messageId: MessageIdentifier,
disableNotification: Boolean = false
) = pinChatMessage(chat.id, messageId, disableNotification)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.pinChatMessage(
message: Message,
disableNotification: Boolean = false
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatDescription.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatDescription.kt
index 183b8881d0..f62656f2cc 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatDescription.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatDescription.kt
@@ -28,11 +28,13 @@ data class SetChatDescription (
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setChatDescription(
chatId: ChatIdentifier,
description: String
) = execute(SetChatDescription(chatId, description))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setChatDescription(
chat: PublicChat,
description: String
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatPermissions.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatPermissions.kt
index b365d7fae9..6909f1426f 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatPermissions.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatPermissions.kt
@@ -23,11 +23,13 @@ data class SetChatPermissions (
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setDefaultChatMembersPermissions(
chatId: ChatIdentifier,
permissions: ChatPermissions
) = execute(SetChatPermissions(chatId, permissions))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setDefaultChatMembersPermissions(
chat: PublicChat,
permissions: ChatPermissions
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatPhoto.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatPhoto.kt
index 0f8f50a36f..7d4ef9b408 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatPhoto.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatPhoto.kt
@@ -24,11 +24,13 @@ data class SetChatPhoto (
override val paramsJson: JsonObject = toJson(serializer())
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setChatPhoto(
chatId: ChatIdentifier,
photo: MultipartFile
) = execute(SetChatPhoto(chatId, photo))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setChatPhoto(
chat: PublicChat,
photo: MultipartFile
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatTitle.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatTitle.kt
index ad7546e0e1..d0117a6686 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatTitle.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/SetChatTitle.kt
@@ -28,11 +28,13 @@ data class SetChatTitle (
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setChatTitle(
chatId: ChatIdentifier,
title: String
) = execute(SetChatTitle(chatId, title))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setChatTitle(
chat: PublicChat,
title: String
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/UnpinChatMessage.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/UnpinChatMessage.kt
index 9838fbb35a..c0cdbc7f5c 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/UnpinChatMessage.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/modify/UnpinChatMessage.kt
@@ -21,10 +21,12 @@ data class UnpinChatMessage(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.unpinChatMessage(
chatId: ChatIdentifier
) = execute(UnpinChatMessage(chatId))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.unpinChatMessage(
chat: PublicChat
) = unpinChatMessage(chat.id)
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/stickers/DeleteChatStickerSet.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/stickers/DeleteChatStickerSet.kt
index 3eaa41a211..1df3e03e47 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/stickers/DeleteChatStickerSet.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/stickers/DeleteChatStickerSet.kt
@@ -21,10 +21,12 @@ data class DeleteChatStickerSet(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.deleteChatStickerSet(
chatId: ChatIdentifier
) = execute(DeleteChatStickerSet(chatId))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.deleteChatStickerSet(
chat: SupergroupChat
) = deleteChatStickerSet(chat.id)
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/stickers/SetChatStickerSet.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/stickers/SetChatStickerSet.kt
index 020c6d34f2..748b930a6f 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/stickers/SetChatStickerSet.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/chat/stickers/SetChatStickerSet.kt
@@ -22,11 +22,13 @@ data class SetChatStickerSet(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setChatStickerSet(
chatId: ChatIdentifier,
stickerSetName: StickerSetName
) = execute(SetChatStickerSet(chatId, stickerSetName))
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setChatStickerSet(
chat: SupergroupChat,
stickerSetName: StickerSetName
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditChatMessageLiveLocation.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditChatMessageLiveLocation.kt
index 3be1fe7c8d..1608304333 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditChatMessageLiveLocation.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditChatMessageLiveLocation.kt
@@ -32,6 +32,7 @@ data class EditChatMessageLiveLocation(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editLiveLocation(
chatId: ChatIdentifier,
messageId: MessageIdentifier,
@@ -44,6 +45,7 @@ suspend fun RequestsExecutor.editLiveLocation(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editLiveLocation(
chat: Chat,
messageId: MessageIdentifier,
@@ -52,6 +54,7 @@ suspend fun RequestsExecutor.editLiveLocation(
replyMarkup: InlineKeyboardMarkup? = null
) = editLiveLocation(chat.id, messageId, latitude, longitude, replyMarkup)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editLiveLocation(
message: ContentMessage,
latitude: Double,
@@ -59,6 +62,7 @@ suspend fun RequestsExecutor.editLiveLocation(
replyMarkup: InlineKeyboardMarkup? = null
) = editLiveLocation(message.chat, message.messageId, latitude, longitude, replyMarkup)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editLiveLocation(
chatId: ChatIdentifier,
messageId: MessageIdentifier,
@@ -70,6 +74,7 @@ suspend fun RequestsExecutor.editLiveLocation(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editLiveLocation(
chat: Chat,
messageId: MessageIdentifier,
@@ -77,6 +82,7 @@ suspend fun RequestsExecutor.editLiveLocation(
replyMarkup: InlineKeyboardMarkup? = null
) = editLiveLocation(chat.id, messageId, location.latitude, location.longitude, replyMarkup)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editLiveLocation(
message: ContentMessage,
location: Location,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditInlineMessageLiveLocation.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditInlineMessageLiveLocation.kt
index 5388254674..b6bbdcb261 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditInlineMessageLiveLocation.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/EditInlineMessageLiveLocation.kt
@@ -22,6 +22,7 @@ data class EditInlineMessageLiveLocation(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editLiveLocation(
inlineMessageId: InlineMessageIdentifier,
latitude: Double,
@@ -32,6 +33,7 @@ suspend fun RequestsExecutor.editLiveLocation(
inlineMessageId, latitude, longitude, replyMarkup
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editLiveLocation(
inlineMessageId: InlineMessageIdentifier,
location: Location,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopChatMessageLiveLocation.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopChatMessageLiveLocation.kt
index 4b6243b941..2e0c77a80f 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopChatMessageLiveLocation.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopChatMessageLiveLocation.kt
@@ -30,6 +30,7 @@ data class StopChatMessageLiveLocation(
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.stopLiveLocation(
chatId: ChatIdentifier,
messageId: MessageIdentifier,
@@ -40,12 +41,14 @@ suspend fun RequestsExecutor.stopLiveLocation(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.stopLiveLocation(
chat: Chat,
messageId: MessageIdentifier,
replyMarkup: InlineKeyboardMarkup? = null
) = stopLiveLocation(chat.id, messageId, replyMarkup)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.stopLiveLocation(
message: ContentMessage,
replyMarkup: InlineKeyboardMarkup? = null
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopInlineMessageLiveLocation.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopInlineMessageLiveLocation.kt
index 1e4ed274ec..e1003999cd 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopInlineMessageLiveLocation.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/LiveLocation/StopInlineMessageLiveLocation.kt
@@ -19,6 +19,7 @@ data class StopInlineMessageLiveLocation(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.stopLiveLocation(
inlineMessageId: InlineMessageIdentifier,
replyMarkup: InlineKeyboardMarkup? = null
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditChatMessageReplyMarkup.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditChatMessageReplyMarkup.kt
index 9344e4432d..ebeb494fd4 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditChatMessageReplyMarkup.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditChatMessageReplyMarkup.kt
@@ -31,6 +31,7 @@ data class EditChatMessageReplyMarkup(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageReplyMarkup(
chatId: ChatIdentifier,
messageId: MessageIdentifier,
@@ -39,12 +40,14 @@ suspend fun RequestsExecutor.editMessageReplyMarkup(
EditChatMessageReplyMarkup(chatId, messageId, replyMarkup)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageReplyMarkup(
chat: Chat,
messageId: MessageIdentifier,
replyMarkup: InlineKeyboardMarkup? = null
) = editMessageReplyMarkup(chat.id, messageId, replyMarkup)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageReplyMarkup(
message: Message,
replyMarkup: InlineKeyboardMarkup? = null
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditInlineMessageReplyMarkup.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditInlineMessageReplyMarkup.kt
index d02af7694d..5995a36c7e 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditInlineMessageReplyMarkup.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/ReplyMarkup/EditInlineMessageReplyMarkup.kt
@@ -19,6 +19,7 @@ data class EditInlineMessageReplyMarkup(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageReplyMarkup(
inlineMessageId: InlineMessageIdentifier,
replyMarkup: InlineKeyboardMarkup? = null
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditChatMessageCaption.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditChatMessageCaption.kt
index d3b95625bf..e818a68484 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditChatMessageCaption.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditChatMessageCaption.kt
@@ -36,6 +36,7 @@ data class EditChatMessageCaption(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageCaption(
chatId: ChatIdentifier,
messageId: MessageIdentifier,
@@ -46,6 +47,7 @@ suspend fun RequestsExecutor.editMessageCaption(
EditChatMessageCaption(chatId, messageId, text, parseMode, replyMarkup)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageCaption(
chat: Chat,
messageId: MessageIdentifier,
@@ -54,6 +56,7 @@ suspend fun RequestsExecutor.editMessageCaption(
replyMarkup: InlineKeyboardMarkup? = null
) = editMessageCaption(chat.id, messageId, text, parseMode, replyMarkup)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageCaption(
message: ContentMessage,
text: String,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditInlineMessageCaption.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditInlineMessageCaption.kt
index 5e14a6979c..59688e9763 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditInlineMessageCaption.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/caption/EditInlineMessageCaption.kt
@@ -24,6 +24,7 @@ data class EditInlineMessageCaption(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageCaption(
inlineMessageId: InlineMessageIdentifier,
text: String,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditChatMessageMedia.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditChatMessageMedia.kt
index fb836f0da3..ef7b97dede 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditChatMessageMedia.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditChatMessageMedia.kt
@@ -41,6 +41,7 @@ data class EditChatMessageMedia(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageMedia(
chatId: ChatIdentifier,
messageId: MessageIdentifier,
@@ -50,6 +51,7 @@ suspend fun RequestsExecutor.editMessageMedia(
EditChatMessageMedia(chatId, messageId, media, replyMarkup)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageMedia(
chat: Chat,
messageId: MessageIdentifier,
@@ -57,6 +59,7 @@ suspend fun RequestsExecutor.editMessageMedia(
replyMarkup: InlineKeyboardMarkup? = null
) = editMessageMedia(chat.id, messageId, media, replyMarkup)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageMedia(
message: ContentMessage,
media: InputMedia,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditInlineMessageMedia.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditInlineMessageMedia.kt
index 428e7d960a..5d90e71ecb 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditInlineMessageMedia.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/media/EditInlineMessageMedia.kt
@@ -29,6 +29,7 @@ data class EditInlineMessageMedia(
override fun method(): String = editMessageMediaMethod
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageCaption(
inlineMessageId: InlineMessageIdentifier,
media: InputMedia,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditChatMessageText.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditChatMessageText.kt
index 5cd1f304b0..416e75742b 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditChatMessageText.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditChatMessageText.kt
@@ -37,6 +37,7 @@ data class EditChatMessageText(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageText(
chatId: ChatIdentifier,
messageId: MessageIdentifier,
@@ -48,6 +49,7 @@ suspend fun RequestsExecutor.editMessageText(
EditChatMessageText(chatId, messageId, text, parseMode, disableWebPagePreview, replyMarkup)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageText(
chat: Chat,
messageId: MessageIdentifier,
@@ -57,6 +59,7 @@ suspend fun RequestsExecutor.editMessageText(
replyMarkup: InlineKeyboardMarkup? = null
) = editMessageText(chat.id, messageId, text, parseMode, disableWebPagePreview, replyMarkup)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageText(
message: ContentMessage,
text: String,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditInlineMessageText.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditInlineMessageText.kt
index fb09e55d3a..6446baff02 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditInlineMessageText.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/edit/text/EditInlineMessageText.kt
@@ -27,6 +27,7 @@ data class EditInlineMessageText(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.editMessageText(
inlineMessageId: InlineMessageIdentifier,
text: String,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/GetGameHighScoresByChat.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/GetGameHighScoresByChat.kt
index ca2f1256ec..26418f9c47 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/GetGameHighScoresByChat.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/GetGameHighScoresByChat.kt
@@ -23,6 +23,7 @@ data class GetGameHighScoresByChat (
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getGameScore(
userId: UserId,
chatId: ChatId,
@@ -31,6 +32,7 @@ suspend fun RequestsExecutor.getGameScore(
GetGameHighScoresByChat(userId, chatId, messageId)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getGameScore(
user: CommonUser,
chatId: ChatId,
@@ -39,6 +41,7 @@ suspend fun RequestsExecutor.getGameScore(
user.id, chatId, messageId
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getGameScore(
userId: UserId,
chat: Chat,
@@ -47,6 +50,7 @@ suspend fun RequestsExecutor.getGameScore(
userId, chat.id, messageId
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getGameScore(
user: CommonUser,
chat: Chat,
@@ -55,6 +59,7 @@ suspend fun RequestsExecutor.getGameScore(
user.id, chat.id, messageId
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getGameScore(
userId: UserId,
message: ContentMessage
@@ -62,6 +67,7 @@ suspend fun RequestsExecutor.getGameScore(
userId, message.chat.id, message.messageId
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getGameScore(
user: CommonUser,
message: ContentMessage
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/GetGameHighScoresByInlineMessageId.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/GetGameHighScoresByInlineMessageId.kt
index c7938b5347..5ad5b14f36 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/GetGameHighScoresByInlineMessageId.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/GetGameHighScoresByInlineMessageId.kt
@@ -17,6 +17,7 @@ data class GetGameHighScoresByInlineMessageId (
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getGameScore(
userId: UserId,
inlineMessageId: InlineMessageIdentifier
@@ -26,6 +27,7 @@ suspend fun RequestsExecutor.getGameScore(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getGameScore(
user: CommonUser,
inlineMessageId: InlineMessageIdentifier
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByChatId.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByChatId.kt
index 36c157a8ec..e31090cb09 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByChatId.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByChatId.kt
@@ -29,6 +29,7 @@ data class SetGameScoreByChatId (
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setGameScore(
userId: UserId,
score: Long,
@@ -40,6 +41,7 @@ suspend fun RequestsExecutor.setGameScore(
SetGameScoreByChatId(userId, score, chatId, messageId, force, disableEditMessage)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setGameScore(
user: CommonUser,
score: Long,
@@ -51,6 +53,7 @@ suspend fun RequestsExecutor.setGameScore(
user.id, score, chatId, messageId, force, disableEditMessage
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setGameScore(
userId: UserId,
score: Long,
@@ -62,6 +65,7 @@ suspend fun RequestsExecutor.setGameScore(
userId, score, chat.id, messageId, force, disableEditMessage
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setGameScore(
user: CommonUser,
score: Long,
@@ -73,6 +77,7 @@ suspend fun RequestsExecutor.setGameScore(
user.id, score, chat.id, messageId, force, disableEditMessage
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setGameScore(
userId: UserId,
score: Long,
@@ -83,6 +88,7 @@ suspend fun RequestsExecutor.setGameScore(
userId, score, message.chat.id, message.messageId, force, disableEditMessage
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setGameScore(
user: CommonUser,
score: Long,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByInlineMessageId.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByInlineMessageId.kt
index 9a6794c826..87f74dae91 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByInlineMessageId.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/games/SetGameScoreByInlineMessageId.kt
@@ -23,6 +23,7 @@ data class SetGameScoreByInlineMessageId (
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setGameScore(
userId: UserId,
score: Long,
@@ -35,6 +36,7 @@ suspend fun RequestsExecutor.setGameScore(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setGameScore(
user: CommonUser,
score: Long,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/get/GetFile.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/get/GetFile.kt
index 7cdc4b0791..74c689a05c 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/get/GetFile.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/get/GetFile.kt
@@ -20,12 +20,14 @@ data class GetFile(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getFileAdditionalInfo(
fileId: FileId
) = execute(
GetFile(fileId)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getFileAdditionalInfo(
file: TelegramMediaFile
) = getFileAdditionalInfo(file.fileId)
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/get/GetStickerSet.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/get/GetStickerSet.kt
index 51da528a29..ccc410e957 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/get/GetStickerSet.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/get/GetStickerSet.kt
@@ -19,12 +19,14 @@ data class GetStickerSet(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getStickerSet(
name: String
) = execute(
GetStickerSet(name)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getStickerSet(
sticker: Sticker
) = getStickerSet(
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/get/GetUserProfilePhotos.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/get/GetUserProfilePhotos.kt
index 3aba2e74fc..84b12ec02c 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/get/GetUserProfilePhotos.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/get/GetUserProfilePhotos.kt
@@ -30,6 +30,7 @@ data class GetUserProfilePhotos(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getUserProfilePhotos(
userId: UserId,
offset: Int? = null,
@@ -40,6 +41,7 @@ suspend fun RequestsExecutor.getUserProfilePhotos(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getUserProfilePhotos(
user: CommonUser,
offset: Int? = null,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendAction.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendAction.kt
index 95de49a2ed..f6b4185dc0 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendAction.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendAction.kt
@@ -26,6 +26,7 @@ data class SendAction(
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendBotAction(
chatId: ChatIdentifier,
action: BotAction
@@ -33,89 +34,110 @@ suspend fun RequestsExecutor.sendBotAction(
SendAction(chatId, action)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendBotAction(
chat: Chat,
action: BotAction
) = sendBotAction(chat.id, action)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionTyping(
chatId: ChatIdentifier
) = sendBotAction(chatId, TypingAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionUploadPhoto(
chatId: ChatIdentifier
) = sendBotAction(chatId, UploadPhotoAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionRecordVideo(
chatId: ChatIdentifier
) = sendBotAction(chatId, RecordVideoAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionUploadVideo(
chatId: ChatIdentifier
) = sendBotAction(chatId, UploadVideoAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionRecordAudio(
chatId: ChatIdentifier
) = sendBotAction(chatId, RecordAudioAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionUploadAudio(
chatId: ChatIdentifier
) = sendBotAction(chatId, UploadAudioAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionUploadDocument(
chatId: ChatIdentifier
) = sendBotAction(chatId, UploadDocumentAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionFindLocation(
chatId: ChatIdentifier
) = sendBotAction(chatId, FindLocationAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionRecordVideoNote(
chatId: ChatIdentifier
) = sendBotAction(chatId, RecordVideoNoteAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionUploadVideoNote(
chatId: ChatIdentifier
) = sendBotAction(chatId, UploadVideoNoteAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionTyping(
chat: Chat
) = sendBotAction(chat, TypingAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionUploadPhoto(
chat: Chat
) = sendBotAction(chat, UploadPhotoAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionRecordVideo(
chat: Chat
) = sendBotAction(chat, RecordVideoAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionUploadVideo(
chat: Chat
) = sendBotAction(chat, UploadVideoAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionRecordAudio(
chat: Chat
) = sendBotAction(chat, RecordAudioAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionUploadAudio(
chat: Chat
) = sendBotAction(chat, UploadAudioAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionUploadDocument(
chat: Chat
) = sendBotAction(chat, UploadDocumentAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionFindLocation(
chat: Chat
) = sendBotAction(chat, FindLocationAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionRecordVideoNote(
chat: Chat
) = sendBotAction(chat, RecordVideoNoteAction)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendActionUploadVideoNote(
chat: Chat
) = sendBotAction(chat, UploadVideoNoteAction)
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendContact.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendContact.kt
index 054ddc68a9..b98fc8f936 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendContact.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendContact.kt
@@ -69,6 +69,7 @@ fun Contact.toRequest(
replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendContact(
chatId: ChatIdentifier,
phoneNumber: String,
@@ -83,6 +84,7 @@ suspend fun RequestsExecutor.sendContact(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendContact(
chatId: ChatIdentifier,
contact: Contact,
@@ -95,6 +97,7 @@ suspend fun RequestsExecutor.sendContact(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendContact(
chat: Chat,
phoneNumber: String,
@@ -107,6 +110,7 @@ suspend fun RequestsExecutor.sendContact(
chat.id, phoneNumber, firstName, lastName, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendContact(
chat: Chat,
contact: Contact,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendLocation.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendLocation.kt
index ecb4d8d60f..7367654f96 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendLocation.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendLocation.kt
@@ -50,6 +50,7 @@ data class SendLocation(
}
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendLocation(
chatId: ChatIdentifier,
latitude: Double,
@@ -68,6 +69,7 @@ suspend fun RequestsExecutor.sendLocation(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendLocation(
chatId: ChatIdentifier,
location: Location,
@@ -83,6 +85,7 @@ suspend fun RequestsExecutor.sendLocation(
replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendLocation(
chat: Chat,
latitude: Double,
@@ -99,6 +102,7 @@ suspend fun RequestsExecutor.sendLocation(
replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendLocation(
chat: Chat,
location: Location,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendMessage.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendMessage.kt
index 8594d7400d..99f7c7b7b0 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendMessage.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendMessage.kt
@@ -58,6 +58,7 @@ data class SendTextMessage(
)
typealias SendMessage = SendTextMessage
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendMessage(
chatId: ChatIdentifier,
text: String,
@@ -70,6 +71,7 @@ suspend fun RequestsExecutor.sendMessage(
SendTextMessage(chatId, text, parseMode, disableWebPagePreview, disableNotification, replyToMessageId, replyMarkup)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendTextMessage(
chatId: ChatIdentifier,
text: String,
@@ -82,6 +84,7 @@ suspend fun RequestsExecutor.sendTextMessage(
chatId, text, parseMode, disableWebPagePreview, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendMessage(
chat: Chat,
text: String,
@@ -93,6 +96,7 @@ suspend fun RequestsExecutor.sendMessage(
) = sendMessage(chat.id, text, parseMode, disableWebPagePreview, disableNotification, replyToMessageId, replyMarkup)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendTextMessage(
chat: Chat,
text: String,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendVenue.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendVenue.kt
index d675b6d394..0bb20b9c4d 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendVenue.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/SendVenue.kt
@@ -76,6 +76,7 @@ fun Venue.toRequest(
replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVenue(
chatId: ChatIdentifier,
latitude: Double,
@@ -92,6 +93,7 @@ suspend fun RequestsExecutor.sendVenue(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVenue(
chat: Chat,
latitude: Double,
@@ -106,6 +108,7 @@ suspend fun RequestsExecutor.sendVenue(
chat.id, latitude, longitude, title, address, foursquareId, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVenue(
chatId: ChatIdentifier,
venue: Venue,
@@ -118,6 +121,7 @@ suspend fun RequestsExecutor.sendVenue(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVenue(
chat: Chat,
venue: Venue,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/games/SendGame.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/games/SendGame.kt
index d254bc29ba..bf06621d67 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/games/SendGame.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/games/SendGame.kt
@@ -36,6 +36,7 @@ data class SendGame (
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendGame(
chatId: ChatIdentifier,
gameShortName: String,
@@ -48,6 +49,7 @@ suspend fun RequestsExecutor.sendGame(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendGame(
chat: Chat,
gameShortName: String,
@@ -58,6 +60,7 @@ suspend fun RequestsExecutor.sendGame(
chat.id, gameShortName, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendGame(
chatId: ChatIdentifier,
game: Game,
@@ -68,6 +71,7 @@ suspend fun RequestsExecutor.sendGame(
chatId, game.title, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendGame(
chat: Chat,
game: Game,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAnimation.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAnimation.kt
index e8be272d5d..08140cec76 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAnimation.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAnimation.kt
@@ -116,6 +116,7 @@ data class SendAnimationFiles internal constructor(
thumbField to thumb
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAnimation(
chatId: ChatIdentifier,
animation: FileId,
@@ -144,6 +145,7 @@ suspend fun RequestsExecutor.sendAnimation(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAnimation(
chatId: ChatIdentifier,
animation: AnimationFile,
@@ -157,6 +159,7 @@ suspend fun RequestsExecutor.sendAnimation(
chatId, animation.fileId, thumb ?.fileId, text, parseMode, animation.duration, animation.width, animation.height, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAnimation(
chatId: ChatIdentifier,
animation: MultipartFile,
@@ -178,6 +181,7 @@ suspend fun RequestsExecutor.sendAnimation(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAnimation(
chatId: ChatIdentifier,
animation: MultipartFile,
@@ -199,6 +203,7 @@ suspend fun RequestsExecutor.sendAnimation(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAnimation(
chatId: ChatIdentifier,
animation: FileId,
@@ -220,6 +225,7 @@ suspend fun RequestsExecutor.sendAnimation(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAnimation(
chatId: ChatIdentifier,
animation: MultipartFile,
@@ -236,6 +242,7 @@ suspend fun RequestsExecutor.sendAnimation(
chatId, animation, thumb ?.fileId , text, parseMode, duration, width, height, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAnimation(
chatId: ChatIdentifier,
animation: AnimationFile,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAudio.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAudio.kt
index 19bf99e4df..030377b127 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAudio.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendAudio.kt
@@ -118,6 +118,7 @@ data class SendAudioFiles internal constructor(
thumbField to thumb
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAudio(
chatId: ChatIdentifier,
audio: FileId,
@@ -146,6 +147,7 @@ suspend fun RequestsExecutor.sendAudio(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAudio(
chatId: ChatIdentifier,
audio: AudioFile,
@@ -160,6 +162,7 @@ suspend fun RequestsExecutor.sendAudio(
chatId, audio.fileId, thumb ?.fileId, text, parseMode, audio.duration, audio.performer, title, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAudio(
chatId: ChatIdentifier,
audio: MultipartFile,
@@ -181,6 +184,7 @@ suspend fun RequestsExecutor.sendAudio(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAudio(
chatId: ChatIdentifier,
audio: MultipartFile,
@@ -202,6 +206,7 @@ suspend fun RequestsExecutor.sendAudio(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAudio(
chatId: ChatIdentifier,
audio: FileId,
@@ -223,6 +228,7 @@ suspend fun RequestsExecutor.sendAudio(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAudio(
chatId: ChatIdentifier,
audio: MultipartFile,
@@ -239,6 +245,7 @@ suspend fun RequestsExecutor.sendAudio(
chatId, audio, thumb ?.fileId , text, parseMode, duration, performer, title, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendAudio(
chatId: ChatIdentifier,
audio: AudioFile,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendDocument.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendDocument.kt
index e770bc6f4e..78e11e7167 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendDocument.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendDocument.kt
@@ -102,6 +102,7 @@ data class SendDocumentFiles internal constructor(
thumbField to thumb
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendDocument(
chatId: ChatIdentifier,
document: FileId,
@@ -124,6 +125,7 @@ suspend fun RequestsExecutor.sendDocument(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendDocument(
chatId: ChatIdentifier,
document: DocumentFile,
@@ -137,6 +139,7 @@ suspend fun RequestsExecutor.sendDocument(
chatId, document.fileId, thumb ?.fileId, text, parseMode, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendDocument(
chatId: ChatIdentifier,
document: MultipartFile,
@@ -155,6 +158,7 @@ suspend fun RequestsExecutor.sendDocument(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendDocument(
chatId: ChatIdentifier,
document: MultipartFile,
@@ -173,6 +177,7 @@ suspend fun RequestsExecutor.sendDocument(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendDocument(
chatId: ChatIdentifier,
document: FileId,
@@ -191,6 +196,7 @@ suspend fun RequestsExecutor.sendDocument(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendDocument(
chatId: ChatIdentifier,
document: MultipartFile,
@@ -204,6 +210,7 @@ suspend fun RequestsExecutor.sendDocument(
chatId, document, thumb ?.fileId , text, parseMode, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendDocument(
chatId: ChatIdentifier,
document: DocumentFile,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendMediaGroup.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendMediaGroup.kt
index 3a1f6ce296..63bae97836 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendMediaGroup.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendMediaGroup.kt
@@ -88,6 +88,7 @@ data class SendMediaGroupFiles internal constructor(
val files: List
) : Files by (files.map { it.fileId to it }.toMap())
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendMediaGroup(
chatId: ChatIdentifier,
media: List,
@@ -99,6 +100,7 @@ suspend fun RequestsExecutor.sendMediaGroup(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendMediaGroup(
chat: Chat,
media: List,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendPhoto.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendPhoto.kt
index 8edecd4053..289985641c 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendPhoto.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendPhoto.kt
@@ -86,6 +86,7 @@ data class SendPhotoFiles internal constructor(
photoField to photo
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendPhoto(
chatId: ChatIdentifier,
fileId: FileId,
@@ -106,6 +107,7 @@ suspend fun RequestsExecutor.sendPhoto(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendPhoto(
chatId: ChatIdentifier,
file: PhotoSize,
@@ -118,6 +120,7 @@ suspend fun RequestsExecutor.sendPhoto(
chatId, file.fileId, caption, parseMode, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendPhoto(
chatId: ChatIdentifier,
photo: Photo,
@@ -130,6 +133,7 @@ suspend fun RequestsExecutor.sendPhoto(
chatId, photo.biggest() ?: throw IllegalArgumentException("Photo $photo is empty"), caption, parseMode, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendPhoto(
chat: Chat,
fileId: FileId,
@@ -148,6 +152,7 @@ suspend fun RequestsExecutor.sendPhoto(
replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendPhoto(
chat: Chat,
file: PhotoSize,
@@ -160,6 +165,7 @@ suspend fun RequestsExecutor.sendPhoto(
chat.id, file.fileId, caption, parseMode, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendPhoto(
chat: Chat,
photo: Photo,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendSticker.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendSticker.kt
index b40049e547..3fbfd21974 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendSticker.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendSticker.kt
@@ -67,6 +67,7 @@ data class SendStickerByFile internal constructor(
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendSticker(
chatId: ChatIdentifier,
sticker: FileId,
@@ -77,6 +78,7 @@ suspend fun RequestsExecutor.sendSticker(
SendStickerByFileId(chatId, sticker, disableNotification, replyToMessageId, replyMarkup)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendSticker(
chatId: ChatIdentifier,
sticker: MultipartFile,
@@ -90,6 +92,7 @@ suspend fun RequestsExecutor.sendSticker(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendSticker(
chat: Chat,
sticker: FileId,
@@ -98,6 +101,7 @@ suspend fun RequestsExecutor.sendSticker(
replyMarkup: KeyboardMarkup? = null
) = sendSticker(chat.id, sticker, disableNotification, replyToMessageId, replyMarkup)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendSticker(
chat: Chat,
sticker: MultipartFile,
@@ -106,6 +110,7 @@ suspend fun RequestsExecutor.sendSticker(
replyMarkup: KeyboardMarkup? = null
) = sendSticker(chat.id, sticker, disableNotification, replyToMessageId, replyMarkup)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendSticker(
chatId: ChatIdentifier,
sticker: Sticker,
@@ -116,6 +121,7 @@ suspend fun RequestsExecutor.sendSticker(
chatId, sticker.fileId, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendSticker(
chat: Chat,
sticker: Sticker,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideo.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideo.kt
index b14c50ee16..0ff86d9ab0 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideo.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideo.kt
@@ -120,6 +120,7 @@ data class SendVideoFiles internal constructor(
thumbField to thumb
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideo(
chatId: ChatIdentifier,
video: FileId,
@@ -149,6 +150,7 @@ suspend fun RequestsExecutor.sendVideo(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideo(
chatId: ChatIdentifier,
video: VideoFile,
@@ -162,6 +164,7 @@ suspend fun RequestsExecutor.sendVideo(
chatId, video.fileId, thumb ?.fileId, text, parseMode, video.duration, video.width, video.height, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideo(
chatId: ChatIdentifier,
video: MultipartFile,
@@ -184,6 +187,7 @@ suspend fun RequestsExecutor.sendVideo(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideo(
chatId: ChatIdentifier,
video: MultipartFile,
@@ -206,6 +210,7 @@ suspend fun RequestsExecutor.sendVideo(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideo(
chatId: ChatIdentifier,
video: FileId,
@@ -227,6 +232,7 @@ suspend fun RequestsExecutor.sendVideo(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideo(
chatId: ChatIdentifier,
video: MultipartFile,
@@ -244,6 +250,7 @@ suspend fun RequestsExecutor.sendVideo(
chatId, video, thumb ?.fileId , text, parseMode, duration, width, height, supportStreaming, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideo(
chatId: ChatIdentifier,
video: VideoFile,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideoNote.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideoNote.kt
index 0062f8c6bd..6f711dba41 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideoNote.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVideoNote.kt
@@ -115,6 +115,7 @@ data class SendVideoNoteFiles internal constructor(
thumbField to thumb
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideoNote(
chatId: ChatIdentifier,
videoNote: FileId,
@@ -141,6 +142,7 @@ suspend fun RequestsExecutor.sendVideoNote(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideoNote(
chatId: ChatIdentifier,
videoNote: VideoFile,
@@ -154,6 +156,7 @@ suspend fun RequestsExecutor.sendVideoNote(
chatId, videoNote.fileId, thumb ?.fileId, text, parseMode, videoNote.duration, videoNote.width, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideoNote(
chatId: ChatIdentifier,
videoNote: MultipartFile,
@@ -174,6 +177,7 @@ suspend fun RequestsExecutor.sendVideoNote(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideoNote(
chatId: ChatIdentifier,
videoNote: MultipartFile,
@@ -194,6 +198,7 @@ suspend fun RequestsExecutor.sendVideoNote(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideoNote(
chatId: ChatIdentifier,
videoNote: FileId,
@@ -214,6 +219,7 @@ suspend fun RequestsExecutor.sendVideoNote(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideoNote(
chatId: ChatIdentifier,
videoNote: MultipartFile,
@@ -229,6 +235,7 @@ suspend fun RequestsExecutor.sendVideoNote(
chatId, videoNote, thumb ?.fileId , text, parseMode, duration, size, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVideoNote(
chatId: ChatIdentifier,
videoNote: VideoFile,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVoice.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVoice.kt
index 6f87306573..46b6e3c499 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVoice.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/media/SendVoice.kt
@@ -107,6 +107,7 @@ data class SendVoiceFiles internal constructor(
thumbField to thumb
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVoice(
chatId: ChatIdentifier,
voice: FileId,
@@ -131,6 +132,7 @@ suspend fun RequestsExecutor.sendVoice(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVoice(
chatId: ChatIdentifier,
voice: AudioFile,
@@ -144,6 +146,7 @@ suspend fun RequestsExecutor.sendVoice(
chatId, voice.fileId, thumb ?.fileId, text, parseMode, voice.duration, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVoice(
chatId: ChatIdentifier,
voice: MultipartFile,
@@ -163,6 +166,7 @@ suspend fun RequestsExecutor.sendVoice(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVoice(
chatId: ChatIdentifier,
voice: MultipartFile,
@@ -182,6 +186,7 @@ suspend fun RequestsExecutor.sendVoice(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVoice(
chatId: ChatIdentifier,
voice: FileId,
@@ -201,6 +206,7 @@ suspend fun RequestsExecutor.sendVoice(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVoice(
chatId: ChatIdentifier,
voice: MultipartFile,
@@ -215,6 +221,7 @@ suspend fun RequestsExecutor.sendVoice(
chatId, voice, thumb ?.fileId , text, parseMode, duration, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendVoice(
chatId: ChatIdentifier,
voice: AudioFile,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/payments/SendInvoice.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/payments/SendInvoice.kt
index 841948d174..74579a267c 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/payments/SendInvoice.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/payments/SendInvoice.kt
@@ -107,6 +107,7 @@ data class SendInvoice(
}
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendInvoice(
chatId: ChatId,
title: String,
@@ -131,6 +132,7 @@ suspend fun RequestsExecutor.sendInvoice(
SendInvoice(chatId, title, description, payload, providerToken, startParameter, currency, prices, providerData, requireName, requirePhoneNumber, requireEmail, requireShippingAddress, shouldSendPhoneNumberToProvider, shouldSendEmailToProvider, priceDependOnShipAddress, disableNotification, replyToMessageId, replyMarkup)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendInvoice(
user: CommonUser,
title: String,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/polls/SendPoll.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/polls/SendPoll.kt
index 40795135fd..1298576c65 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/polls/SendPoll.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/send/polls/SendPoll.kt
@@ -187,6 +187,7 @@ data class SendQuizPoll(
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendRegularPoll(
chatId: ChatIdentifier,
question: String,
@@ -202,6 +203,7 @@ suspend fun RequestsExecutor.sendRegularPoll(
chatId, question, options, isAnonymous, isClosed, allowMultipleAnswers, disableNotification, replyToMessageId, replyMarkup
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendRegularPoll(
chatId: ChatIdentifier,
poll: RegularPoll,
@@ -219,6 +221,7 @@ suspend fun RequestsExecutor.sendRegularPoll(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendRegularPoll(
chat: Chat,
question: String,
@@ -233,6 +236,7 @@ suspend fun RequestsExecutor.sendRegularPoll(
chat.id, question, options, isAnonymous, isClosed, allowMultipleAnswers, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendRegularPoll(
chat: Chat,
poll: RegularPoll,
@@ -249,6 +253,7 @@ suspend fun RequestsExecutor.sendRegularPoll(
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendQuizPoll(
chatId: ChatIdentifier,
question: String,
@@ -265,6 +270,7 @@ suspend fun RequestsExecutor.sendQuizPoll(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendQuizPoll(
chat: Chat,
question: String,
@@ -279,6 +285,7 @@ suspend fun RequestsExecutor.sendQuizPoll(
chat.id, question, options, correctOptionId, isAnonymous, isClosed, disableNotification, replyToMessageId, replyMarkup
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendQuizPoll(
chatId: ChatIdentifier,
isClosed: Boolean = false,
@@ -296,6 +303,7 @@ suspend fun RequestsExecutor.sendQuizPoll(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.sendQuizPoll(
chat: Chat,
isClosed: Boolean = false,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/AddStickerToSet.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/AddStickerToSet.kt
index ac09f673fd..4069488cc5 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/AddStickerToSet.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/AddStickerToSet.kt
@@ -51,6 +51,7 @@ data class AddStickerToSet internal constructor(
override fun method(): String = "addStickerToSet"
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.addStickerToSet(
userId: UserId,
stickerSetName: String,
@@ -63,6 +64,7 @@ suspend fun RequestsExecutor.addStickerToSet(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.addStickerToSet(
userId: UserId,
stickerSetName: String,
@@ -78,6 +80,7 @@ suspend fun RequestsExecutor.addStickerToSet(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.addStickerToSet(
user: CommonUser,
stickerSetName: String,
@@ -88,6 +91,7 @@ suspend fun RequestsExecutor.addStickerToSet(
user.id, stickerSetName, sticker, emojis, maskPosition
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.addStickerToSet(
user: CommonUser,
stickerSetName: String,
@@ -98,6 +102,7 @@ suspend fun RequestsExecutor.addStickerToSet(
user.id, stickerSetName, sticker, emojis, maskPosition
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.addStickerToSet(
userId: UserId,
stickerSet: StickerSet,
@@ -108,6 +113,7 @@ suspend fun RequestsExecutor.addStickerToSet(
userId, stickerSet.name, sticker, emojis, maskPosition
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.addStickerToSet(
userId: UserId,
stickerSet: StickerSet,
@@ -118,6 +124,7 @@ suspend fun RequestsExecutor.addStickerToSet(
userId, stickerSet.name, sticker, emojis, maskPosition
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.addStickerToSet(
user: CommonUser,
stickerSet: StickerSet,
@@ -128,6 +135,7 @@ suspend fun RequestsExecutor.addStickerToSet(
user.id, stickerSet.name, sticker, emojis, maskPosition
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.addStickerToSet(
user: CommonUser,
stickerSet: StickerSet,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/CreateNewStickerSet.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/CreateNewStickerSet.kt
index 9b1ba21a0d..dc808522b7 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/CreateNewStickerSet.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/CreateNewStickerSet.kt
@@ -54,6 +54,7 @@ data class CreateNewStickerSet internal constructor(
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.createNewStickerSet(
userId: UserId,
name: String,
@@ -65,6 +66,7 @@ suspend fun RequestsExecutor.createNewStickerSet(
CreateNewStickerSet(userId, name, emojis, sticker, containsMasks, maskPosition)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.createNewStickerSet(
userId: UserId,
name: String,
@@ -80,6 +82,7 @@ suspend fun RequestsExecutor.createNewStickerSet(
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.createNewStickerSet(
user: CommonUser,
name: String,
@@ -91,6 +94,7 @@ suspend fun RequestsExecutor.createNewStickerSet(
user.id, name, sticker, emojis, containsMasks, maskPosition
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.createNewStickerSet(
user: CommonUser,
name: String,
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/DeleteStickerFromSet.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/DeleteStickerFromSet.kt
index daea8cbf4e..ce667ab7e7 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/DeleteStickerFromSet.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/DeleteStickerFromSet.kt
@@ -22,6 +22,7 @@ data class DeleteStickerFromSet(
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.deleteStickerFromSet(
sticker: FileId
) = execute(
@@ -30,6 +31,7 @@ suspend fun RequestsExecutor.deleteStickerFromSet(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.deleteStickerFromSet(
sticker: Sticker
) = deleteStickerFromSet(
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/SetStickerPositionInSet.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/SetStickerPositionInSet.kt
index 90484177cf..5f6e5f3890 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/SetStickerPositionInSet.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/SetStickerPositionInSet.kt
@@ -29,6 +29,7 @@ data class SetStickerPositionInSet(
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setStickerPositionInSet(
sticker: FileId,
position: Int
@@ -39,6 +40,7 @@ suspend fun RequestsExecutor.setStickerPositionInSet(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setStickerPositionInSet(
sticker: Sticker,
position: Int
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/UploadStickerFile.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/UploadStickerFile.kt
index 43fc8b5f5a..68c39c8a9d 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/UploadStickerFile.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/stickers/UploadStickerFile.kt
@@ -30,6 +30,7 @@ data class UploadStickerFile(
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.uploadStickerFile(
userId: UserId,
sticker: MultipartFile
@@ -37,6 +38,7 @@ suspend fun RequestsExecutor.uploadStickerFile(
UploadStickerFile(userId, sticker)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.uploadStickerFile(
user: CommonUser,
sticker: MultipartFile
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/GetWebhookInfo.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/GetWebhookInfo.kt
index b7c462b355..1d3332f4a6 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/GetWebhookInfo.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/GetWebhookInfo.kt
@@ -15,4 +15,5 @@ class GetWebhookInfo : SimpleRequest {
get() = serializer()
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.getWebhookInfo() = execute(GetWebhookInfo())
diff --git a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/SetWebhook.kt b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/SetWebhook.kt
index 78a68c72b5..71fe700ae8 100644
--- a/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/SetWebhook.kt
+++ b/TelegramBotAPI/src/commonMain/kotlin/com/github/insanusmokrassar/TelegramBotAPI/requests/webhook/SetWebhook.kt
@@ -66,6 +66,7 @@ data class SetWebhook internal constructor(
}
}
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setWebhookInfo(
url: String,
certificate: FileId,
@@ -77,6 +78,7 @@ suspend fun RequestsExecutor.setWebhookInfo(
)
)
+@Deprecated("Deprecated due to extracting into separated library")
suspend fun RequestsExecutor.setWebhookInfo(
url: String,
certificate: MultipartFile,
diff --git a/badges/chat.svg b/badges/chat.svg
index 76893c1334..c3ba92c783 100644
--- a/badges/chat.svg
+++ b/badges/chat.svg
@@ -1 +1,20 @@
-
+
\ No newline at end of file
diff --git a/gradle.properties b/gradle.properties
index 88550dc984..90b30edaf4 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -6,6 +6,6 @@ klock_version=1.8.7
uuid_version=0.0.7
ktor_version=1.3.1
-library_version=0.23.4
+library_version=0.23.3
gradle_bintray_plugin_version=1.8.4
diff --git a/settings.gradle b/settings.gradle
index 92ee4e80c8..251b72d9fc 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -1 +1,2 @@
include ":TelegramBotAPI"
+include ":TelegramBotAPI-extensions-api"