Geolocation management system
Real-time tracking of tourist buses to maintain wifi connectivity
Overview
We created a tracking system to monitor and collect insights from geospatial data. The data is generated by a fleet of smart devices mounted on charter buses to supply passengers with a wifi connection.
The primary use case is as an entertainment system allowing onboard movie streaming on smartphones, laptops, and tablets. This geolocation project is a major component of a much larger system for passenger entertainment providing both real-time visual information to bus managers and also real-time features to passengers without signal interruption.
Objectives
- Build a system that offers real-time tracking of buses
- Notify passengers before a bus moves into a new wifi signal area
Client
Infomoss
Industry
Transportation
Location
USA
Tech Stack
ReactJS
NodeJS
JavaScript
Elasticsearch
Logstash
Docker
Linux
AWS
Project challenges
The key challenge was working out how to let passenger devices know in advance that the wifi signal was about to change, without knowing the precise future route of each bus - i.e. where it would go next.
We solved this by creating a network of geofences, constructed from the locations of each of the buses, and then comparing the current position of each bus to the nearest geofence every few seconds.
This allowed us to reliably predict which geofence the bus would cross next (therefore which wifi signal area it would enter) and notify passenger devices in real-time.
Technical Overview
The central element of the geolocation system is in the data layer. To ensure data persistence, we used Elasticsearch along with Filebeat and Logstash as the pipeline for storing the data.
We used Nodejs servers for processing and Leaflet on the front end to display the heatmap. The geolocation system is also used in a React Native passenger-facing app which informs the user of signal changes.
Outcome
The new system provides novel and valuable insights into the movements and relative positions of a whole fleet of vehicles, which can be deployed in a variety of use cases.