One of the goals of HiReach is to provide useful software tools for startups aiming at working in the transport poverty domain, that will be used in their own software as a support for their services. In this regard, two APIs (Application Programming Interface) were developed: a Geofencing API, and a Congestion API. In this context, an API can be defined as a connection (a callable software function or set of functions) between a software solution and a database with specific information.
This is a NodeJs + Redis API designed to monitor travellers during a planned trip and check if the predefined route and all its aspects is respected and if something happens it will inform supervisors in real time about the issue.
The API needs a list of travellers to monitor alongside with route details for each one and optionally a list of supervisors for each traveller.
The API can detect and inform in real time, by using the push notification system, the following events:
- If the traveller does not respect the predefined route and goes off the specified road.
- If the traveller stays too much in the same spot.
- When a traveller reaches a specific location that was set in the route configuration.
- When a traveller does not reach a specific location at a specific time that was set in the route configuration.
- When a traveller reaches a specific location earlier than a specific time set in the route configuration and by how much earlier.
- When a traveller reaches a specific location later than a specific time set in the route configuration and by how much later.
- When a traveller initiates a new geofence session.
- When a traveller reaches the destination.
The API comes with a large list of configurable variables for each traveller, like controlling what notifications to be triggered, specific messages for each event with support for multiple languages or parameters for geofence accuracy. Also, it will return valuable information during the geofence session which can be used for tracking history, reports or in-app custom notifications system.
The source code of the API is available here: https://github.com/HiReach-Project/geofencing
This is a REST API built to track congestion spots and crowded areas using real-time location data from mobile devices.
Use case: A mobility mobile app is available, with a large user base. The mobile app, installed on a user device, will send location data (latitude, longitude) to this API. Using this data, the API calculates live congestion in different requested spots. The API can also make future predictions based on history data by using a Machine Learning algorithm.
By using this API, you can:
- show crowded areas on a map
- plan a route avoiding crowded bus stations
- notify your users when approaching crowded areas
- predict future congestion to enhance route planning
The Congestion API can be used with the following two APIs to extend its feature set:
- Congestion API Gateway
Congestion API Gateway is a REST API gateway built to aggregate data from multiple Congestion APIs. The congestion API is more accurate when the user base is larger. This API Gateway is built to make it possible for multiple companies to share their congestion data while keeping it in their own private database. The more companies contribute with location data, the more accurate the congestion data will be.
How it works: Multiple companies are using the Congestion API but they want to keep their users location data in their own private database and only share congestion data. Users who have access to the API Gateway can request data about congestion in a certain point defined by latitude and longitude. The gateway then calls every node and aggregates the data from all companies and returns a more accurate response.
- Prediction API
Prediction API is a REST API built on top of fbprophet for forecasting time-series data. It is used by the Congestion API to predict future congestion.
The source code of the API is available here: