From d293fd60f212ad9f28a8e02f3d0e1552d012df3c Mon Sep 17 00:00:00 2001 From: Shautvast Date: Wed, 8 Oct 2025 15:45:40 +0200 Subject: [PATCH] call home url --- src/main.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/main.rs b/src/main.rs index 2257a24..1822383 100644 --- a/src/main.rs +++ b/src/main.rs @@ -23,6 +23,7 @@ pub const SOLAREDGE_SITE_ID: LazyLock = LazyLock::new(|| env::var("SOLAREDGE_SITE_ID").unwrap()); pub const SOLAREDGE_API_KEY: LazyLock = LazyLock::new(|| env::var("SOLAREDGE_API_KEY").unwrap()); +pub const CALL_HOME: LazyLock = LazyLock::new(|| env::var("CALL_HOME").unwrap()); type CachedAppState = Arc>; @@ -63,6 +64,7 @@ async fn main() -> anyhow::Result<()> { let listener = tokio::net::TcpListener::bind(bind_addr).await.unwrap(); println!("server on {}", listener.local_addr().unwrap()); axum::serve(listener, app).await.unwrap(); + report("started"); Ok(()) } @@ -106,7 +108,7 @@ async fn check_energy( .flatten(); if let Some(energy_at_1200) = energy_at_1200 { if energy_at_1200 == 0.0 { - report().await?; + report("No energy measured on the solar panels").await?; } } state.write().unwrap().day_checked = true; @@ -117,12 +119,13 @@ async fn check_energy( } Ok(()) } -async fn report() -> axum::response::Result<(), ErrorResponse> { +async fn report(message: &str) -> axum::response::Result<(), ErrorResponse> { let url = "https://api.pushover.net/1/messages.json"; let form = reqwest::multipart::Form::new() .text("token", PUSHOVER_API_KEY.to_string()) .text("user", PUSHOVER_USER_ID.to_string()) - .text("message", "No energy measured on the solar panels"); + .text("message", message.to_string()) + .text("url", CALL_HOME.to_string()); let client = reqwest::Client::new(); let _ = client