From cda95aa4f26ecac6cc9776a0195388507e0dc520 Mon Sep 17 00:00:00 2001 From: pigwin Date: Mon, 30 Dec 2024 21:03:41 +0000 Subject: [PATCH] v0.1.1 --- data/data.go | 6 ++++-- main.go | 7 +++++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/data/data.go b/data/data.go index f6ef84f..55f1478 100644 --- a/data/data.go +++ b/data/data.go @@ -125,10 +125,12 @@ type Data struct { } `xml:"ServiceDelivery"` } -func FetchData() (*Data, error) { +func FetchData(timestamp string) (*Data, error) { client := &http.Client{} + requestorId := "ti1_" + timestamp - resp, err := client.Get("https://api.entur.io/realtime/v1/rest/et?useOriginalId=true&maxSize=100000") + url := "https://api.entur.io/realtime/v1/rest/et?useOriginalId=true&maxSize=100000&requestorId=" + requestorId + resp, err := client.Get(url) if err != nil { return nil, err } diff --git a/main.go b/main.go index 16bdcf1..c3c407f 100644 --- a/main.go +++ b/main.go @@ -17,10 +17,13 @@ func main() { log.Fatalf("Database setup failed: %v", err) } + // Get the current timestamp + starttimestamp := time.Now().Format("20060102T150405") + for { start := time.Now() - data, err := data.FetchData() + data, err := data.FetchData(starttimestamp) if err != nil { log.Fatal(err) } @@ -31,7 +34,7 @@ func main() { elapsed := time.Since(start) if elapsed < 5*time.Minute { log.Printf("starting again in %v", 5*time.Minute-elapsed) - time.Sleep(1*time.Minute - elapsed) + time.Sleep(5*time.Minute - elapsed) } } }