umts / pvta-multiplatform

Transit realtime app for mobile devices
Other
6 stars 5 forks source link

Change "There are no buses currently on [route]" text on route page #454

Closed sherson closed 6 years ago

sherson commented 6 years ago

If a route has buses, but none are logged into Avail (or if they're logged in but downloading runfiles over the radio), the route page displays:

There are no buses currently on the [route].

This is misleading.

A simple approach could be to change the text to something to the effect of:

There are no buses on the [route] (or none are reporting their location: please check the stop screen for scheduled departures)

Though that feels clunky... any suggestions?

Another possible approach could be to check if a route is running and display appropriate text, but that may be too much trouble for what is somewhat of an edge case (a messy way to do this: look up stops for the route and see if there are departures on one of the stops).

werebus commented 6 years ago

Ugh. I hate issues that are essentially, "What do we do if Avail lies to us?"

Text change seems fine, I guess. Although, where is that link supposed to go?

Your second suggestion is likely to involve a lot of HTTP requests. In that there isn't a programmatic way to know what stops are the "important" ones, so we'll have to get departures for every stop on that route. Not impossible, but likely a noticeable slow-down.

I guess my other question is, what is the route page even for? What is the "user story" that involves that page? It almost seems like one of those features that only appeals to bus nerds. Now, I do use that page, but only as a way to get through to the map, so I can see where the bus I'm waiting for is. Is that screen otherwise useful to anyone?

sherson commented 6 years ago

I favor simply changing the text. I was thinking the link would simply go to the routes and stops page, but it makes more sense for the user to just click the link below it for the list of stops. So perhaps:

There are no buses on the [route] (or none are reporting their location: please check your stop's scheduled departures)

I couldn't think of a non-kludgy way to ensure that we check a stop that is being serviced by that route today (without checking all stops, which I assumed would be too slow to even consider), so I figured we'd use past departures to minimize the likelihood of not finding the route. But that's not a reliable approach (too many instances for which routes do not service stops: 30 for Valley Medical, 39 for stops along 47, several routes for Fearing St, etc.), so I think this is too messy to bother with.

You raised a good point about the route page, though it shows:

what how useful? notes
last stop serviced maybe can be misleading without showing the age of information... and also it's on the map page
how late the bus is maybe more useful on the map page, which it's also already on
onboard passengers maybe shows how full the bus is (but not especially reliable, unfortunately)
public messages very  
link to list of stops on route yes  

Perhaps we could've had the map on the middle of this page (such that public messages were above it, a link to a list of stops below it, and onboard passenger were in the bus icon popup), but that'd take precious screen real estate from the map.

Given that our long-term plan (once we have GTFS-realtime) is to transition to OneBusAway or TransitApp, I'm reluctant to make big changes to this app.

werebus commented 6 years ago

Agreed. Especially while #447 is unresolved; I forgot about alerts, and the route page is currently the only place those are displayed. Your second wording has about the right amount of hedging, (🦔) I think.

I do love looking at, say, the route page for the 31 seeing 3 or 4 buses and then wondering if my bus is the one missing...

mboneil10 commented 6 years ago

So, is this question resolved?

sherson commented 6 years ago

Yeah, lets just go with the text change:

There are no buses on the [route] (or none are reporting their location: please check your stop's scheduled departures)