szczanieckiej.git

commit 3a35e673c4cafbe9f21f9edc01af5d4d53b78cca

Author: Adam <git@apiote.xyz>

fix parsing json from lua updates

 traffic/brussels_stib_mivb.go | 11 +++++++++++
 traffic/realtime.go | 2 +-
 traffic/realtime_lua.go | 1 +


diff --git a/traffic/brussels_stib_mivb.go b/traffic/brussels_stib_mivb.go
index 10f10fce61b5a42a6996679066e515166f81aa43..bbfb1d402fe2354c41b22958cc93f0649cb06354 100644
--- a/traffic/brussels_stib_mivb.go
+++ b/traffic/brussels_stib_mivb.go
@@ -102,6 +102,17 @@ 			updates = {
 				areTripsInTimetable=false,
 				updates={}
 			}
+			updates.updates[''] = {
+				time="000000",
+				stopID=stopID,
+				delay=0,
+				timetableRelationship=1,
+				vehicleStatus={
+					lineName="",
+					headsign=""
+				}
+			}
+
 
 			for i,entry in ipairs(struct.results) do
 				times, error_message = json.decode(entry.passingtimes)




diff --git a/traffic/realtime.go b/traffic/realtime.go
index 7f2582e87fc8430243fffbb53c616ce454dbe036..4b72058b5767772208b1383c2565f2b98fecf26c 100644
--- a/traffic/realtime.go
+++ b/traffic/realtime.go
@@ -135,7 +135,7 @@ 	departures := make([]DepartureRealtime, len(updates))
 	now := time.Now().In(timezone)
 	i := 0
 	for _, update := range updates {
-		departureTime, err := time.ParseInLocation("150405", update.Time, timezone)
+		departureTime, err := time.ParseInLocation("150405", update.Time, timezone) // FIXME might be ""
 		if err != nil {
 			return departures, fmt.Errorf("while parsing time: %w", err)
 		}




diff --git a/traffic/realtime_lua.go b/traffic/realtime_lua.go
index a2f31c342cc949b14cad5f486f4162df15327114..2ecdedc5b54cc4c4a9bbaf99e26bbd5c859dfc4a 100644
--- a/traffic/realtime_lua.go
+++ b/traffic/realtime_lua.go
@@ -100,6 +100,7 @@ 	err := json.Unmarshal([]byte(result.(lua.LString)), &luaUpdates)
 	if err != nil {
 		return luaUpdates.Updates, true, fmt.Errorf("while unmarshalling updates : %w", err)
 	}
+	delete(luaUpdates.Updates, "")
 
 	vehicleStatuses, err := getLuaRealtimeVehiclesMap(ctx)
 	if err != nil {