2020-10-04 10:57:39 +00:00
package dev.inmo.tgbotapi.extensions.api.edit.caption
2020-02-15 09:33:04 +00:00
2022-05-01 16:13:40 +00:00
import dev.inmo.tgbotapi.abstracts.TextedWithTextSources
2020-10-04 11:06:30 +00:00
import dev.inmo.tgbotapi.bot.TelegramBot
import dev.inmo.tgbotapi.requests.edit.caption.EditChatMessageCaption
import dev.inmo.tgbotapi.types.ChatIdentifier
2022-05-01 14:36:07 +00:00
import dev.inmo.tgbotapi.types.message.textsources.TextSource
import dev.inmo.tgbotapi.types.message.textsources.TextSourcesList
2022-09-14 18:17:18 +00:00
import dev.inmo.tgbotapi.types.MessageId
2022-05-01 14:43:03 +00:00
import dev.inmo.tgbotapi.types.message.ParseMode
2020-10-04 11:06:30 +00:00
import dev.inmo.tgbotapi.types.buttons.InlineKeyboardMarkup
2022-04-21 18:16:41 +00:00
import dev.inmo.tgbotapi.types.chat.Chat
2020-10-04 11:06:30 +00:00
import dev.inmo.tgbotapi.types.message.abstracts.ContentMessage
2022-06-24 20:19:20 +00:00
import dev.inmo.tgbotapi.types.message.abstracts.Message
2022-05-01 05:52:02 +00:00
import dev.inmo.tgbotapi.types.message.content.MediaContent
2022-06-24 20:19:20 +00:00
import dev.inmo.tgbotapi.utils.RiskFeature
2020-02-15 09:33:04 +00:00
2021-10-01 13:38:22 +00:00
/ * *
* @param replyMarkup Some [ InlineKeyboardMarkup ] . See [ dev . inmo . tgbotapi . extensions . utils . types . buttons . inlineKeyboard ]
* as a builder for that
* /
2020-10-04 07:18:24 +00:00
suspend fun TelegramBot . editMessageCaption (
2020-02-15 09:33:04 +00:00
chatId : ChatIdentifier ,
2022-09-14 18:17:18 +00:00
messageId : MessageId ,
2020-02-15 09:33:04 +00:00
text : String ,
parseMode : ParseMode ? = null ,
replyMarkup : InlineKeyboardMarkup ? = null
) = execute (
EditChatMessageCaption ( chatId , messageId , text , parseMode , replyMarkup )
)
2021-10-01 13:38:22 +00:00
/ * *
* @param replyMarkup Some [ InlineKeyboardMarkup ] . See [ dev . inmo . tgbotapi . extensions . utils . types . buttons . inlineKeyboard ]
* as a builder for that
* /
2020-10-04 07:18:24 +00:00
suspend fun TelegramBot . editMessageCaption (
2020-02-15 09:33:04 +00:00
chat : Chat ,
2022-09-14 18:17:18 +00:00
messageId : MessageId ,
2020-02-15 09:33:04 +00:00
text : String ,
parseMode : ParseMode ? = null ,
replyMarkup : InlineKeyboardMarkup ? = null
) = editMessageCaption ( chat . id , messageId , text , parseMode , replyMarkup )
2021-10-01 13:38:22 +00:00
/ * *
* @param replyMarkup Some [ InlineKeyboardMarkup ] . See [ dev . inmo . tgbotapi . extensions . utils . types . buttons . inlineKeyboard ]
* as a builder for that
* /
2020-10-04 07:18:24 +00:00
suspend fun < T > TelegramBot . editMessageCaption (
2020-02-15 09:33:04 +00:00
message : ContentMessage < T > ,
text : String ,
parseMode : ParseMode ? = null ,
replyMarkup : InlineKeyboardMarkup ? = null
2022-06-24 20:49:38 +00:00
) : ContentMessage < T > where T : TextedWithTextSources , T : MediaContent {
@Suppress ( " UNCHECKED_CAST " )
return editMessageCaption ( message . chat . id , message . messageId , text , parseMode , replyMarkup ) as ContentMessage < T >
2020-02-15 09:33:04 +00:00
}
2020-11-05 17:48:23 +00:00
2021-10-01 13:38:22 +00:00
/ * *
* @param replyMarkup Some [ InlineKeyboardMarkup ] . See [ dev . inmo . tgbotapi . extensions . utils . types . buttons . inlineKeyboard ]
* as a builder for that
* /
2020-11-05 17:48:23 +00:00
suspend fun TelegramBot . editMessageCaption (
chatId : ChatIdentifier ,
2022-09-14 18:17:18 +00:00
messageId : MessageId ,
2021-05-29 09:34:14 +00:00
entities : TextSourcesList ,
2020-11-05 17:48:23 +00:00
replyMarkup : InlineKeyboardMarkup ? = null
) = execute (
EditChatMessageCaption ( chatId , messageId , entities , replyMarkup )
)
2021-10-01 13:38:22 +00:00
/ * *
* @param replyMarkup Some [ InlineKeyboardMarkup ] . See [ dev . inmo . tgbotapi . extensions . utils . types . buttons . inlineKeyboard ]
* as a builder for that
* /
2020-11-05 17:48:23 +00:00
suspend fun TelegramBot . editMessageCaption (
chat : Chat ,
2022-09-14 18:17:18 +00:00
messageId : MessageId ,
2021-05-29 09:34:14 +00:00
entities : List < TextSource > ,
2020-11-05 17:48:23 +00:00
replyMarkup : InlineKeyboardMarkup ? = null
) = editMessageCaption ( chat . id , messageId , entities , replyMarkup )
2021-10-01 13:38:22 +00:00
/ * *
* @param replyMarkup Some [ InlineKeyboardMarkup ] . See [ dev . inmo . tgbotapi . extensions . utils . types . buttons . inlineKeyboard ]
* as a builder for that
* /
2020-11-05 17:48:23 +00:00
suspend fun < T > TelegramBot . editMessageCaption (
message : ContentMessage < T > ,
entities : List < TextSource > ,
replyMarkup : InlineKeyboardMarkup ? = null
2022-06-24 20:19:20 +00:00
) : ContentMessage < T > where T : TextedWithTextSources , T : MediaContent {
@Suppress ( " UNCHECKED_CAST " )
return editMessageCaption ( message . chat . id , message . messageId , entities , replyMarkup ) as ContentMessage < T >
}
/ * *
* @param replyMarkup Some [ InlineKeyboardMarkup ] . See [ dev . inmo . tgbotapi . extensions . utils . types . buttons . inlineKeyboard ]
* as a builder for that
* /
@RiskFeature ( " This method is unsafe due to absence of any guaranties about the type of message. In case if message is not media message this method will throw an exception " )
suspend fun < T > TelegramBot . editMessageCaption (
message : Message ,
entities : List < TextSource > ,
replyMarkup : InlineKeyboardMarkup ? = null
2021-04-29 11:39:10 +00:00
) : ContentMessage < MediaContent > where T : TextedWithTextSources , T : MediaContent {
2020-11-05 17:48:23 +00:00
return editMessageCaption ( message . chat . id , message . messageId , entities , replyMarkup )
}