slight refactoring of hacky hue routine

This commit is contained in:
2020-10-29 08:11:21 -07:00
parent 6e7e74205e
commit 0ae116acc3

View File

@@ -126,20 +126,35 @@ fn play_chime() {
};
}
fn hue_base(reqwest: &reqwest::Client) -> reqwest::RequestBuilder {
reqwest.put(&format!("http://{}/api/{}/lights/10/state", HUE_ADDRESS, HUE_KEY))
async fn hue_base(reqwest: &reqwest::Client, body: &'static str, delay_millis: u64) {
let _ = reqwest.put(&format!("http://{}/api/{}/lights/10/state", HUE_ADDRESS, HUE_KEY))
.body(body).send().await;
delay_for(Duration::from_millis(delay_millis)).await;
}
async fn flash_patio(reqwest: &reqwest::Client) {
for _ in 0..5 {
let _ = hue_base(reqwest).body(r#"{"transitiontime":0,"sat":254, "bri":254,"hue":2125}"#) // orange
.send().await;
delay_for(Duration::from_millis(250)).await;
let _ = hue_base(reqwest).body(r#"{"transitiontime":0,"hue":25500}"#) // green
.send().await;
delay_for(Duration::from_millis(250)).await;
let _ = hue_base(reqwest).body(r#"{"transitiontime":0,"hue":56228}"#) // purple
.send().await;
delay_for(Duration::from_millis(250)).await;
hue_base(reqwest,
r#"{"transitiontime":0,"bri":254,"sat":254}"#, // resaturate
250).await;
for _ in 0..2 {
hue_base(reqwest,
r#"{"transitiontime":0,"hue":2125}"#, // orange
250).await;
hue_base(reqwest,
r#"{"transitiontime":0,"hue":25500}"#, // green
250).await;
hue_base(reqwest,
r#"{"transitiontime":0,"hue":56228}"#, // purple
250).await;
}
delay_for(Duration::from_millis(250)).await;
hue_base(reqwest,
r#"{"transitiontime":20,"bri":20}"#, // fade
2_250).await;
hue_base(reqwest,
r#"{"transitiontime":1,"bri":20,"sat":0}"#, // desaturate
250).await;
hue_base(reqwest,
r#"{"transitiontime":40,"bri":180,"sat":0}"#, // fade up
4_000).await;
}