mirror of
https://github.com/dalbodeule/chibot-chzzk-bot.git
synced 2025-06-09 15:28:21 +00:00
50 lines
1.3 KiB
Kotlin
50 lines
1.3 KiB
Kotlin
package space.mori.chzzk_bot
|
|
|
|
import io.github.cdimascio.dotenv.dotenv
|
|
import kotlinx.coroutines.delay
|
|
import kotlinx.coroutines.runBlocking
|
|
import org.slf4j.Logger
|
|
import org.slf4j.LoggerFactory
|
|
import space.mori.chzzk_bot.chatbot.chzzk.ChzzkHandler
|
|
import space.mori.chzzk_bot.chatbot.discord.Discord
|
|
import space.mori.chzzk_bot.chatbot.chzzk.Connector as ChzzkConnector
|
|
import space.mori.chzzk_bot.common.Connector
|
|
import space.mori.chzzk_bot.webserver.start
|
|
import space.mori.chzzk_bot.webserver.stop
|
|
import java.util.concurrent.TimeUnit
|
|
import kotlin.system.exitProcess
|
|
|
|
val dotenv = dotenv {
|
|
ignoreIfMissing = true
|
|
}
|
|
val logger: Logger = LoggerFactory.getLogger("main")
|
|
|
|
val discord = Discord()
|
|
|
|
val connector = Connector
|
|
val chzzkConnector = ChzzkConnector
|
|
val chzzkHandler = ChzzkHandler
|
|
|
|
fun main(args: Array<String>) {
|
|
discord.enable()
|
|
chzzkHandler.enable()
|
|
chzzkHandler.runStreamInfo()
|
|
start()
|
|
|
|
if(dotenv.get("RUN_AGENT", "false").toBoolean()) {
|
|
runBlocking {
|
|
delay(TimeUnit.MINUTES.toMillis(1))
|
|
exitProcess(0)
|
|
}
|
|
}
|
|
|
|
Runtime.getRuntime().addShutdownHook(Thread {
|
|
logger.info("Shutting down...")
|
|
stop()
|
|
|
|
chzzkHandler.stopStreamInfo()
|
|
chzzkHandler.disable()
|
|
discord.disable()
|
|
connector.dataSource.close()
|
|
})
|
|
} |