Bing Maps Fleet Tracker is a fleet management solution based on the Bing Maps APIs. It offers functionalities that enable tracking and managing a fleet of vehicles in real time. For more details, read this blog post.
To get this project up and running, the easiest way is to use the Bing Maps Fleet Tracker Deployment Portal, which one-click deploy the Bing Maps Fleet Tracker solution into your Azure subscription. For a step by step walkthrough of how to deploy use the deployment portal, see out of the box deployment. None of the data entered on the deployment portal is stored by Bing Maps Fleet Tracker. It is only used to configure your deployment.
You can obtain a prebuilt apk of the Android client here. For the iOS client, you will need to build it from source.
You can also build and run the project from source as detailed here.
For a walkthrough of using the Bing Maps Fleet Tracker solution, see WALKTHROUGH.md.
The Bing Maps Fleet Tracker solution consist of 3 major components:
Each of these components can be built and run separately, and each can be replaced with implementations of your own.
The backend services are responsible for the collection and processing of location information, the provisioning of tracking devices and assets, dispatching, and report generation. They are made up of an ASP.NET Core 2 service, and two Azure Functions. For more information on building an running the backend services see Backend\README.md.
The administration portal is an angular application that exposes the functionalities of the backend to the deployment administrators. It can be used to view reports, track and provision assets, and compare dispatching routes. For more information on building an running the administration portal see Frontend\README.md.
The mobile client is an ionic mobile application responsible for collection of asset location information and the forwarding of this information to the backend. It is meant to provide an out of the box background tracking solution but it is not the only way to integrate with Bing Maps Fleet Tracker; any GPS device with an internet connection can be used to provide the background tracking (see Using the Rest APIs). For more information on building and running the mobile client see MobileClient\README.md.
After deployment, on your first use of the application, you will be prompted to allow us to collect anonymous aggregate telemetry and error/warning log data. We use the telemetry data to get a feel for the usage of this project. Error log data are used to focus our efforts on fixing the issues you face.
Here is a list of all the telemetry items we collect:
- Deployment Id: this is a random GUID that is unique for each deployment.
- Assets count: the total number of vehicles registered.
- Locations count: the total number of locations stored.
- Auto locations count: the number of automatically detected locations.
- Tracking devices count: the total number of tracking devices.
- Geo-fences count: the number of geo-fences setup.
- Tracking points count: the number of tracking points stored on the system.
Error/warning log data collected consist of:
- Deployment Id: this is a random GUID that is unique for each deployment.
- Software version: the version of the software causing the error/warning.
- Error/warning message: the error/warning message.
You can always enable/disable the data collection from the settings tab in your administration portal.
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.
When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.
See release history.