From fc3fc65d6408cec52cd01d7eccb9ab5ce820e7ff Mon Sep 17 00:00:00 2001 From: Ollo Date: Sat, 28 Feb 2026 21:04:36 +0100 Subject: [PATCH] refactored fetch_data-function and added station_id as parameter --- src/main.rs | 4 ++-- src/straba.rs | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/main.rs b/src/main.rs index 62f2588..45fc311 100644 --- a/src/main.rs +++ b/src/main.rs @@ -34,7 +34,7 @@ async fn main() -> Result<(), Box> { let mut last_request = Instant::now(); let interval = Duration::from_secs(args.interval as u64); - let mut departure_data = tokio::task::spawn_blocking(|| straba::fetch_data(Some(true))) + let mut departure_data = tokio::task::spawn_blocking(|| straba::fetch_data(2494, Some(true))) .await .unwrap(); let mut data_published = false; @@ -44,7 +44,7 @@ async fn main() -> Result<(), Box> { if now.duration_since(last_request) > interval { data_published = false; last_request = Instant::now(); - departure_data = tokio::task::spawn_blocking(|| straba::fetch_data(Some(false))) + departure_data = tokio::task::spawn_blocking(|| straba::fetch_data(2494, Some(false))) .await .unwrap(); if departure_data.failure { diff --git a/src/straba.rs b/src/straba.rs index 6309042..9731324 100644 --- a/src/straba.rs +++ b/src/straba.rs @@ -3,7 +3,9 @@ use std::time::{SystemTime, UNIX_EPOCH}; use serde::Deserialize; -const STATION_URL: &str = "https://www.rnv-online.de/rest/departure/2494"; +const LOOKUP_STATION_URL: &str = "https://www.rnv-online.de/rest/stop?name="; + +const STATION_URL: &str = "https://www.rnv-online.de/rest/departure/"; /* ******************** JSON Description ****************************** */ #[derive(Default, Debug, Clone, PartialEq, Deserialize)] @@ -79,10 +81,10 @@ pub struct NextDeparture { pub failure: bool, } -pub fn fetch_data(debug_print: Option) -> NextDeparture { +pub fn fetch_data(station_id: u64, debug_print: Option) -> NextDeparture { let st_now = SystemTime::now(); let seconds = st_now.duration_since(UNIX_EPOCH).unwrap().as_secs(); - let url = &format!("{}?datetime={}", STATION_URL, seconds); + let url = &format!("{}{}?datetime={}", STATION_URL, station_id, seconds); let result = reqwest::blocking::get(url); let mut return_value = NextDeparture {