aboutsummaryrefslogtreecommitdiff
path: root/src/protocol.rs
diff options
context:
space:
mode:
authormetamuffin <yvchraiqi@protonmail.com>2022-06-06 22:29:14 +0200
committermetamuffin <yvchraiqi@protonmail.com>2022-06-06 22:29:14 +0200
commitdf31b14b3736a1e71dd8c08297f84e3fba228e39 (patch)
treed588627928bdb4133a5f6b582d22b500e9e1ad1e /src/protocol.rs
downloadkarlender-df31b14b3736a1e71dd8c08297f84e3fba228e39.tar
karlender-df31b14b3736a1e71dd8c08297f84e3fba228e39.tar.bz2
karlender-df31b14b3736a1e71dd8c08297f84e3fba228e39.tar.zst
a
Diffstat (limited to 'src/protocol.rs')
-rw-r--r--src/protocol.rs30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/protocol.rs b/src/protocol.rs
new file mode 100644
index 0000000..fdd84d4
--- /dev/null
+++ b/src/protocol.rs
@@ -0,0 +1,30 @@
+use serde::{Deserialize, Serialize};
+
+use crate::occurence::Condition;
+
+#[derive(Debug, Serialize, Deserialize)]
+pub enum ClientboundPacket {
+ Handshake { version: String },
+ DownloadResponse(Vec<Task>),
+}
+
+#[derive(Debug, Serialize, Deserialize)]
+pub enum ServerboundPacket {
+ Download,
+}
+
+#[derive(Debug, Serialize, Deserialize)]
+pub struct Task {
+ name: String,
+ description: String,
+
+ tags: Vec<String>,
+ priority: f64,
+
+ completed: u64,
+ scheduled: u64,
+
+ occurence: Option<Condition>,
+ deadline: Option<Condition>,
+}
+