diff options
Diffstat (limited to 'src/Enmarcha.Sources.Tussa')
| -rw-r--r-- | src/Enmarcha.Sources.Tussa/Response.cs | 4 | ||||
| -rw-r--r-- | src/Enmarcha.Sources.Tussa/SantiagoRealtimeEstimatesProvider.cs | 16 |
2 files changed, 9 insertions, 11 deletions
diff --git a/src/Enmarcha.Sources.Tussa/Response.cs b/src/Enmarcha.Sources.Tussa/Response.cs index df941b9..cbb1573 100644 --- a/src/Enmarcha.Sources.Tussa/Response.cs +++ b/src/Enmarcha.Sources.Tussa/Response.cs @@ -4,7 +4,7 @@ namespace Enmarcha.Sources.Tussa; public class MaisbusResponse { - [JsonPropertyName("id")] public string Id { get; set; } + [JsonPropertyName("id")] public int Id { get; set; } [JsonPropertyName("codigo")] public string Code { get; set; } [JsonPropertyName("nombre")] public string Name { get; set; } [JsonPropertyName("coordenadas")] public Coordinates Coordinates { get; set; } @@ -21,7 +21,7 @@ public class Coordinates public class Route { - [JsonPropertyName("id")] public string Id { get; set; } + [JsonPropertyName("id")] public int Id { get; set; } [JsonPropertyName("sinoptico")] public string Sinoptico { get; set; } [JsonPropertyName("nombre")] public string Name { get; set; } [JsonPropertyName("estilo")] public string Colour { get; set; } diff --git a/src/Enmarcha.Sources.Tussa/SantiagoRealtimeEstimatesProvider.cs b/src/Enmarcha.Sources.Tussa/SantiagoRealtimeEstimatesProvider.cs index 7437a05..6ef79a3 100644 --- a/src/Enmarcha.Sources.Tussa/SantiagoRealtimeEstimatesProvider.cs +++ b/src/Enmarcha.Sources.Tussa/SantiagoRealtimeEstimatesProvider.cs @@ -11,10 +11,14 @@ public class SantiagoRealtimeEstimatesProvider _http = http; } - public async Task<List<SantiagoEstimate>> GetEstimatesForStop(int stopId) + public async Task<List<Route>> GetEstimatesForStop(int stopId) { var url = GetRequestUrl(stopId.ToString()); + var request = new HttpRequestMessage(HttpMethod.Get, url); + request.Headers.Add("Accept", "application/json"); + request.Headers.Add("User-Agent", "Mozilla/5.0 (compatible; EnMarcha/0.1; https://enmarcha.app)"); + var response = await _http.GetAsync(url); var maisbusResponse = await response.Content.ReadFromJsonAsync<MaisbusResponse>(); @@ -24,17 +28,11 @@ public class SantiagoRealtimeEstimatesProvider throw new Exception("Error parsing maisbus response: " + responseString); } - return maisbusResponse.Routes.Select(r => new SantiagoEstimate - ( - r.Id.ToString(), - r.MinutesToArrive - )).OrderBy(a => a.Minutes).ToList(); + return maisbusResponse.Routes.ToList(); } private static string GetRequestUrl(string stopId) { - return $"https://tussa.gal/maisbus/api/stop/{stopId}"; + return $"https://app.tussa.org/tussa/api/paradas/{stopId}"; } } - -public record SantiagoEstimate(string RouteId, int Minutes); |
