mirror of
https://github.com/InsanusMokrassar/TelegramBotAPI-examples.git
synced 2024-11-14 04:13:53 +00:00
34 lines
1.1 KiB
Kotlin
34 lines
1.1 KiB
Kotlin
|
import dev.inmo.kslog.common.KSLog
|
||
|
import dev.inmo.kslog.common.LogLevel
|
||
|
import dev.inmo.kslog.common.defaultMessageFormatter
|
||
|
import dev.inmo.kslog.common.setDefaultKSLog
|
||
|
import dev.inmo.micro_utils.coroutines.subscribeSafelyWithoutExceptions
|
||
|
import dev.inmo.tgbotapi.extensions.api.bot.getMe
|
||
|
import dev.inmo.tgbotapi.extensions.behaviour_builder.telegramBotWithBehaviourAndLongPolling
|
||
|
import dev.inmo.tgbotapi.utils.PreviewFeature
|
||
|
import kotlinx.coroutines.*
|
||
|
|
||
|
/**
|
||
|
* The main purpose of this bot is just to answer "Oh, hi, " and add user mention here
|
||
|
*/
|
||
|
@OptIn(PreviewFeature::class)
|
||
|
suspend fun main(vararg args: String) {
|
||
|
val botToken = args.first()
|
||
|
|
||
|
val isDebug = args.any { it == "debug" }
|
||
|
|
||
|
if (isDebug) {
|
||
|
setDefaultKSLog(
|
||
|
KSLog { level: LogLevel, tag: String?, message: Any, throwable: Throwable? ->
|
||
|
println(defaultMessageFormatter(level, tag, message, throwable))
|
||
|
}
|
||
|
)
|
||
|
}
|
||
|
|
||
|
telegramBotWithBehaviourAndLongPolling(botToken, CoroutineScope(Dispatchers.IO)) {
|
||
|
val me = getMe()
|
||
|
|
||
|
allUpdatesFlow.subscribeSafelyWithoutExceptions(this) { println(it) }
|
||
|
}.second.join()
|
||
|
}
|