2022-11-17 09:09:10 +00:00
|
|
|
package dev.inmo.plaguposter.common
|
|
|
|
|
|
|
|
import dev.inmo.kslog.common.i
|
|
|
|
import dev.inmo.kslog.common.iS
|
|
|
|
import dev.inmo.kslog.common.logger
|
|
|
|
import dev.inmo.plagubot.Plugin
|
|
|
|
import dev.inmo.tgbotapi.extensions.api.chat.get.getChat
|
|
|
|
import dev.inmo.tgbotapi.extensions.behaviour_builder.BehaviourContext
|
2022-12-14 05:50:02 +00:00
|
|
|
import kotlinx.coroutines.CoroutineScope
|
|
|
|
import kotlinx.coroutines.Dispatchers
|
|
|
|
import kotlinx.coroutines.SupervisorJob
|
|
|
|
import kotlinx.serialization.json.JsonObject
|
|
|
|
import org.jetbrains.exposed.sql.Database
|
2022-11-17 09:09:10 +00:00
|
|
|
import org.koin.core.Koin
|
2022-12-14 05:50:02 +00:00
|
|
|
import org.koin.core.module.Module
|
2022-11-17 09:09:10 +00:00
|
|
|
|
|
|
|
object CommonPlugin : Plugin {
|
|
|
|
private val Log = logger
|
2022-12-14 05:50:02 +00:00
|
|
|
override fun Module.setupDI(database: Database, params: JsonObject) {
|
|
|
|
single { CoroutineScope(Dispatchers.Default + SupervisorJob()) }
|
|
|
|
}
|
|
|
|
|
2022-11-17 09:09:10 +00:00
|
|
|
override suspend fun BehaviourContext.setupBotPlugin(koin: Koin) {
|
|
|
|
val config = koin.get<ChatConfig>()
|
|
|
|
|
|
|
|
Log.iS { "Target chat info: ${getChat(config.targetChatId)}" }
|
|
|
|
Log.iS { "Source chat info: ${getChat(config.sourceChatId)}" }
|
|
|
|
Log.iS { "Cache chat info: ${getChat(config.cacheChatId)}" }
|
|
|
|
}
|
|
|
|
}
|