diff --git a/src/message/mod.rs b/src/message/mod.rs index af716b9..847b773 100644 --- a/src/message/mod.rs +++ b/src/message/mod.rs @@ -1,4 +1,5 @@ pub mod event; +pub mod scheduling; use serde::{Deserialize, Serialize}; diff --git a/src/message/scheduling/mod.rs b/src/message/scheduling/mod.rs new file mode 100644 index 0000000..768b2b7 --- /dev/null +++ b/src/message/scheduling/mod.rs @@ -0,0 +1,27 @@ +use serde::{Deserialize, Serialize}; + +#[derive(Clone, Debug, Default, Deserialize, Serialize)] +pub struct ScheduledMessageEvent { + id: uuid::Uuid, + contact_id: uuid::Uuid, + message_id: uuid::Uuid, + scheduled_message_id: uuid::Uuid, + #[serde(with = "time::serde::rfc3339::option")] + created: Option, +} + +#[derive(Clone, Debug, Default, Deserialize, Serialize)] +pub struct ScheduledMessage { + id: uuid::Uuid, + #[serde(with = "time::serde::rfc3339::option")] + scheduled: Option, + #[serde(with = "time::serde::rfc3339::option")] + created: Option, + status: String, + user_id: uuid::Uuid, +} + +pub const READY: &str = "READY"; +pub const PENDING: &str = "PENDING"; +pub const PROCESSING: &str = "PROCESSING"; +pub const DONE: &str = "DONE";