This commit is contained in:
dalbodeule 2024-08-14 20:40:20 +09:00
parent 0e3264a9f3
commit ab32fcc7dc
No known key found for this signature in database
GPG Key ID: EFA860D069C9FA65
2 changed files with 4 additions and 4 deletions

View File

@ -29,7 +29,7 @@ object DiscordGuildCache {
return guildId.mapNotNull { getCachedGuilds(it) } return guildId.mapNotNull { getCachedGuilds(it) }
} }
private suspend fun fetchGuilds(beforeGuildId: String? = null, limit: Int = 100): List<DiscordGuildListAPI> { private suspend fun fetchGuilds(beforeGuildId: String? = null): List<DiscordGuildListAPI> {
if(DiscordRatelimits.isLimited()) { if(DiscordRatelimits.isLimited()) {
delay(DiscordRatelimits.getRateReset().takeIf { it > 1000L } ?: 3000L) delay(DiscordRatelimits.getRateReset().takeIf { it > 1000L } ?: 3000L)
} }
@ -37,7 +37,7 @@ object DiscordGuildCache {
headers { headers {
append(HttpHeaders.Authorization, "Bot ${dotenv["DISCORD_TOKEN"]}") append(HttpHeaders.Authorization, "Bot ${dotenv["DISCORD_TOKEN"]}")
} }
parameter("limit", limit) parameter("limit", 200)
if (beforeGuildId != null) { if (beforeGuildId != null) {
parameter("before", beforeGuildId) parameter("before", beforeGuildId)
} }
@ -57,7 +57,7 @@ object DiscordGuildCache {
while (true) { while (true) {
try { try {
val guilds = fetchGuilds(lastGuildId) val guilds = fetchGuilds(lastGuildId)
if (guilds.isEmpty()) { if (guilds.isEmpty() || guilds.size <= 200) {
break break
} }

View File

@ -7,7 +7,7 @@ object DiscordRatelimits {
return rateLimit.remainin == 0 return rateLimit.remainin == 0
} }
fun getRateReset() = rateLimit.resetAfter * 1000L + 300L fun getRateReset() = (rateLimit.resetAfter * 1000) + 300L
private fun setRateLimit(rateLimit: RateLimit) { private fun setRateLimit(rateLimit: RateLimit) {
this.rateLimit = rateLimit this.rateLimit = rateLimit