pls let this work thanks
This commit is contained in:
parent
d263cf39b9
commit
016c9688c8
@ -41,9 +41,6 @@ class StreamerCollection : KordExKoinComponent {
|
|||||||
StreamerData::name eq streamerName,
|
StreamerData::name eq streamerName,
|
||||||
setValue(StreamerData::servers, coll.servers - Server(guildId, channelId, roleId))
|
setValue(StreamerData::servers, coll.servers - Server(guildId, channelId, roleId))
|
||||||
)
|
)
|
||||||
if (coll.servers.isEmpty()) {
|
|
||||||
collection.deleteOne(StreamerData::name eq streamerName)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,11 +1,14 @@
|
|||||||
package dev.jansel.feixiao.extensions
|
package dev.jansel.feixiao.extensions
|
||||||
|
|
||||||
import dev.jansel.feixiao.database.collections.StreamerCollection
|
import dev.jansel.feixiao.database.collections.StreamerCollection
|
||||||
|
import dev.jansel.feixiao.database.entities.StreamerData
|
||||||
import dev.jansel.feixiao.logger
|
import dev.jansel.feixiao.logger
|
||||||
import dev.jansel.feixiao.twitchClient
|
import dev.jansel.feixiao.twitchClient
|
||||||
import dev.kord.core.event.gateway.ReadyEvent
|
import dev.kord.core.event.gateway.ReadyEvent
|
||||||
import dev.kordex.core.extensions.Extension
|
import dev.kordex.core.extensions.Extension
|
||||||
import dev.kordex.core.extensions.event
|
import dev.kordex.core.extensions.event
|
||||||
|
import org.litote.kmongo.deleteMany
|
||||||
|
import org.litote.kmongo.eq
|
||||||
|
|
||||||
class EventHooks : Extension() {
|
class EventHooks : Extension() {
|
||||||
override val name = "eventhooks"
|
override val name = "eventhooks"
|
||||||
@ -15,10 +18,15 @@ class EventHooks : Extension() {
|
|||||||
action {
|
action {
|
||||||
logger.info { "Bot is ready!" }
|
logger.info { "Bot is ready!" }
|
||||||
kord.editPresence { listening("the database") }
|
kord.editPresence { listening("the database") }
|
||||||
// check every entry in the database and enable the stream event listener
|
// check every entry in the database and enable the stream event listener if a server is listening to the streamer
|
||||||
StreamerCollection().collection.find().toList().forEach {
|
StreamerCollection().collection.find().toList().forEach {
|
||||||
twitchClient!!.clientHelper.enableStreamEventListener(it.name)
|
if (it.servers.isNotEmpty()) {
|
||||||
logger.info { "Enabled stream event listener for ${it.name}" }
|
twitchClient!!.clientHelper.enableStreamEventListener(it.name)
|
||||||
|
logger.info { "Enabled stream event listener for ${it.name}" }
|
||||||
|
} else {
|
||||||
|
logger.info { "No servers are listening to ${it.name}, deleting from the database..." }
|
||||||
|
StreamerCollection().collection.deleteMany(StreamerData::name eq it.name)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user