send correct shard guild counts

This commit is contained in:
jude 2020-10-24 12:48:32 +01:00
parent 50fb419a19
commit 2737747f6e
3 changed files with 12 additions and 7 deletions

2
Cargo.lock generated
View File

@ -1338,7 +1338,7 @@ dependencies = [
[[package]] [[package]]
name = "soundfx-rs" name = "soundfx-rs"
version = "1.0.1-rc.3" version = "1.0.1-rc.4"
dependencies = [ dependencies = [
"dotenv", "dotenv",
"lazy_static", "lazy_static",

View File

@ -1,6 +1,6 @@
[package] [package]
name = "soundfx-rs" name = "soundfx-rs"
version = "1.0.1-rc.3" version = "1.0.1-rc.4"
authors = ["jude-lafitteIII <judewrs@gmail.com>"] authors = ["jude-lafitteIII <judewrs@gmail.com>"]
edition = "2018" edition = "2018"

View File

@ -249,15 +249,20 @@ impl EventHandler for Handler {
async fn guild_create(&self, ctx: Context, guild: Guild, is_new: bool) { async fn guild_create(&self, ctx: Context, guild: Guild, is_new: bool) {
if is_new { if is_new {
if let Ok(token) = env::var("DISCORDBOTS_TOKEN") { if let Ok(token) = env::var("DISCORDBOTS_TOKEN") {
let guild_count = ctx.cache.guild_count().await as u64;
let shard_count = ctx.cache.shard_count().await; let shard_count = ctx.cache.shard_count().await;
let current_shard_id = shard_id(guild.id.as_u64().to_owned(), shard_count);
let guild_count = ctx
.cache
.guilds()
.await
.iter()
.filter(|g| shard_id(g.as_u64().to_owned(), shard_count) == current_shard_id)
.count() as u64;
let mut hm = HashMap::new(); let mut hm = HashMap::new();
hm.insert("server_count", guild_count); hm.insert("server_count", guild_count);
hm.insert( hm.insert("shard_id", current_shard_id);
"shard_id",
shard_id(guild.id.as_u64().to_owned(), shard_count),
);
hm.insert("shard_count", shard_count); hm.insert("shard_count", shard_count);
let client = ctx let client = ctx