evewspace/eve-wspace

Active Pilots List

EvilGrinUK opened this issue · 7 comments

Post CREST / ESI integration ( see #162 ) the 'Active Pilots' list is inaccurate. It will list a pilot as active when they are also docked or offline. Which obviously isn't true.

To check for docked pilots check if the structure_id or station_id optional field is returned in the ESI location API request. If they are present then it means the pilot is not in space and should not be displayed as being active. It could be possible to look up the structure / station IDs and display them as docked (and where they are docked) instead.

The ESI location API still returns a valid location if the pilot isn't even logged into the game and places them in the Active Pilots List. However the CREST location API does not return any data if the pilot is offline. Thus a CREST location API check needs to be done to find out if a pilot is online or not

Even when you are logged off in space you get that person on the active pilot list. There is a feature request on the ESI github to cover this in the future. I might take out people who are docked as a temp solution.

So once again -ccp-.

If you have been in space then dock, your active pilot status isn't removed.

It is after 5 min. :)

Oh in the state_locations celery job. I see! I guess I just wasn't being patient enough. :)

It was a quick fix, the caching of 5 min should also be handled differently when ESI is more stable. It could probably go down to 1 minute (just in case it fails one of the tasks).

If you have mapped out a high sec system (eg our home wormhole has a B274 Static) then if you dock up in a station in that mapped high sec system then you don't get removed from the active pilots list. This is because the ESI API doesn't return a structure_id for this situation. It returns a station_id instead.

{
  "solar_system_id": 30001650,
  "station_id": 60009298
}

Fixed (in the CREST branch).