diff options
| author | Gustav Sörnäs <gustav@sornas.net> | 2020-12-01 08:02:09 +0100 |
|---|---|---|
| committer | Gustav Sörnäs <gustav@sornas.net> | 2020-12-01 08:02:09 +0100 |
| commit | a2076bc460040f64e47ab884af058b49ebcae622 (patch) | |
| tree | ca69ddcf5ff33e3978fe8e44e5d96dadab64770d | |
| parent | d4e6afa7961866348bc602c099e8c290db677320 (diff) | |
| download | kodapa-main.tar.gz | |
fix bad mergemain
| -rw-r--r-- | Cargo.toml | 2 | ||||
| -rw-r--r-- | src/agenda.rs | 2 | ||||
| -rw-r--r-- | src/discord.rs | 5 | ||||
| -rw-r--r-- | src/reminder.rs | 2 | ||||
| -rw-r--r-- | src/slack.rs | 5 |
5 files changed, 9 insertions, 7 deletions
@@ -24,4 +24,4 @@ features = [ "derive" ] [dependencies.tokio] version = "0.3" -features = [ "macros", "rt", "rt-multi-thread", "sync" ] +features = [ "macros", "rt", "rt-multi-thread", "sync", "time" ] diff --git a/src/agenda.rs b/src/agenda.rs index ce271cc..e27a4ca 100644 --- a/src/agenda.rs +++ b/src/agenda.rs @@ -95,7 +95,7 @@ where } } -fn read_agenda() -> Agenda { +pub fn read_agenda() -> Agenda { match fs::read_to_string("agenda.json") { Ok(s) => serde_json::from_str(&s).expect("Error parsing agenda.json"), Err(_) => Agenda { points: Vec::new() }, diff --git a/src/discord.rs b/src/discord.rs index 40c30ac..6ee42b7 100644 --- a/src/discord.rs +++ b/src/discord.rs @@ -169,8 +169,9 @@ async fn handle_reminders( channel: Option<ChannelId>, ) { if let Some(channel) = channel { - while let Some(reminder) = reminder.recv().await { - match reminder { + while reminder.changed().await.is_ok() { + let reminder = reminder.borrow(); + match *reminder { ReminderType::OneHour => { client .lock() diff --git a/src/reminder.rs b/src/reminder.rs index 2dc6eb0..fd05351 100644 --- a/src/reminder.rs +++ b/src/reminder.rs @@ -43,7 +43,7 @@ pub async fn handle(sender: watch::Sender<ReminderType>) { match reminder.reminder_type { ReminderType::OneHour => { if in_remind_zone(now, next) && !in_remind_zone(reminder.last_fire, next) { - sender.broadcast(ReminderType::OneHour).unwrap(); + sender.send(ReminderType::OneHour).unwrap(); reminder.last_fire = now; } } diff --git a/src/slack.rs b/src/slack.rs index 0b02fac..170aa25 100644 --- a/src/slack.rs +++ b/src/slack.rs @@ -234,8 +234,9 @@ async fn handle_reminders( channel: Option<String>, ) { if let Some(channel) = channel { - while let Some(reminder) = reminder.recv().await { - match reminder { + while reminder.changed().await.is_ok() { + let reminder = reminder.borrow(); + match *reminder { ReminderType::OneHour => { sender.send_typing(&channel).unwrap(); sender |
