summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config/default.json3
-rw-r--r--gateway/src/shard/actions.rs6
-rw-r--r--gateway/src/shard/mod.rs5
3 files changed, 10 insertions, 4 deletions
diff --git a/config/default.json b/config/default.json
index 51a8729..3aa90cb 100644
--- a/config/default.json
+++ b/config/default.json
@@ -28,5 +28,8 @@
"public_key": "",
"client_id": 123
}
+ },
+ "gateway": {
+
}
} \ No newline at end of file
diff --git a/gateway/src/shard/actions.rs b/gateway/src/shard/actions.rs
index b6ef038..39a7ca2 100644
--- a/gateway/src/shard/actions.rs
+++ b/gateway/src/shard/actions.rs
@@ -57,6 +57,10 @@ impl Shard {
.await
} else {
info!("Sending login");
+ let mut shards: Option<[u64; 2]> = None;
+ if let Some(sharding) = self.config.shard.as_ref() {
+ shards = Some([sharding.current_shard, sharding.total_shards]);
+ }
self._send(BaseMessage {
t: None,
sequence: None,
@@ -69,7 +73,7 @@ impl Shard {
browser: "Nova".to_string(),
device: "Nova".to_string(),
},
- shard: Some([0, 2]),
+ shard: shards,
compress: Some(false),
large_threshold: Some(500),
presence: None,
diff --git a/gateway/src/shard/mod.rs b/gateway/src/shard/mod.rs
index b458451..55828d0 100644
--- a/gateway/src/shard/mod.rs
+++ b/gateway/src/shard/mod.rs
@@ -8,11 +8,10 @@ mod state;
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
pub struct Sharding {
- pub total_shards: i64,
- pub current_shard: i64
+ pub total_shards: u64,
+ pub current_shard: u64
}
-
#[derive(Debug, Deserialize, Serialize, Default, Clone)]
pub struct ShardConfig {
pub max_reconnects: usize,