mirror of
https://github.com/InsanusMokrassar/TelegramBotAPI-examples.git
synced 2025-09-03 23:29:50 +00:00
code cleanup
optimized imports here and there, made CustomBot working as intended
This commit is contained in:
@@ -3,24 +3,15 @@ import dev.inmo.kslog.common.LogLevel
|
||||
import dev.inmo.kslog.common.defaultMessageFormatter
|
||||
import dev.inmo.kslog.common.setDefaultKSLog
|
||||
import dev.inmo.tgbotapi.bot.ktor.telegramBot
|
||||
import dev.inmo.tgbotapi.extensions.api.chat.get.getChat
|
||||
import dev.inmo.tgbotapi.extensions.api.send.copyMessage
|
||||
import dev.inmo.tgbotapi.extensions.api.send.reply
|
||||
import dev.inmo.tgbotapi.extensions.api.send.send
|
||||
import dev.inmo.tgbotapi.extensions.api.send.setMessageReaction
|
||||
import dev.inmo.tgbotapi.extensions.behaviour_builder.buildBehaviourWithLongPolling
|
||||
import dev.inmo.tgbotapi.extensions.behaviour_builder.triggers_handling.onChatMessageReactionUpdatedByUser
|
||||
import dev.inmo.tgbotapi.extensions.behaviour_builder.triggers_handling.onChatMessageReactionsCountUpdated
|
||||
import dev.inmo.tgbotapi.extensions.behaviour_builder.triggers_handling.onContentMessage
|
||||
import dev.inmo.tgbotapi.extensions.utils.textLinkTextSourceOrNull
|
||||
import dev.inmo.tgbotapi.extensions.utils.uRLTextSourceOrNull
|
||||
import dev.inmo.tgbotapi.extensions.utils.withContentOrNull
|
||||
import dev.inmo.tgbotapi.types.LinkPreviewOptions
|
||||
import dev.inmo.tgbotapi.types.chat.ExtendedChat
|
||||
import dev.inmo.tgbotapi.types.message.content.TextContent
|
||||
import dev.inmo.tgbotapi.types.message.content.TextedContent
|
||||
import dev.inmo.tgbotapi.types.reactions.Reaction
|
||||
import dev.inmo.tgbotapi.utils.customEmoji
|
||||
import dev.inmo.tgbotapi.utils.regular
|
||||
|
||||
/**
|
||||
@@ -41,17 +32,17 @@ suspend fun main(vararg args: String) {
|
||||
val bot = telegramBot(botToken)
|
||||
|
||||
bot.buildBehaviourWithLongPolling {
|
||||
onContentMessage {
|
||||
val url = it.withContentOrNull<TextedContent>() ?.let {
|
||||
it.content.textSources.firstNotNullOfOrNull {
|
||||
onContentMessage { contentMessage ->
|
||||
val url = contentMessage.withContentOrNull<TextedContent>() ?.let { message ->
|
||||
message.content.textSources.firstNotNullOfOrNull {
|
||||
it.textLinkTextSourceOrNull() ?.url ?: it.uRLTextSourceOrNull() ?.source
|
||||
}
|
||||
} ?: null.apply {
|
||||
reply(it) {
|
||||
reply(contentMessage) {
|
||||
regular("I am support only content with text contains url only")
|
||||
}
|
||||
} ?: return@onContentMessage
|
||||
it.withContentOrNull<TextedContent>() ?.let {
|
||||
contentMessage.withContentOrNull<TextedContent>() ?.let {
|
||||
send(
|
||||
it.chat,
|
||||
it.content.textSources,
|
||||
|
Reference in New Issue
Block a user