Guest Post: How Maplytics uses Spatial Math Module for emergency response by locating affected areas

Inogic, a Microsoft ISV for Dynamics 365 CRM, specializes in developing apps for Dynamics 365 that also run on PowerApps. Their flagship product Maplytics is a geo-analytical app Certified for Microsoft Dynamics (CfMD). Maplytics is powered by Bing Maps to provide location insights for Dynamics 365 data and helps businesses do an in-depth analysis of their prospects and clients geographically. It is rated as a preferred solution on Microsoft AppSource.

“Partnering with Bing Maps as the geo-analytical platform has helped us offer the most up to date technology and features with Maplytics and offer fitting solutions to businesses across domains like Finance, Insurance, Health, Manufacturing, Agriculture amongst other industries to accelerate their business processes and get the most of their Dynamics 365 implementation,” said Roohi Shaikh, CEO of Inogic.

Below is a recent use case where Maplytics helped meet a challenging business requirement using Bing Maps Services.

Non-Profit Tasked with Securing the Safety of Students

A non-profit organization ensures the safety and security of school students in a certain region. It safeguards the students from abductions, bushfires, suspicious activity in nearby areas or any other threats by instantly alerting nearby schools. After receiving an alert, the school’s administration sends a team to the impacted location or takes preventive measures required to minimize the hazard. This process results in increased credibility of the education system and improved security for the students, allowing the schools in the region to be proactive upon receiving any alert from the non-profit organization. Also, it reduces the cost of disaster management plans and enables the schools to perform effectively.

In one example scenario, the non-profit organization discovers a fire has broken out at an oil factory in the vicinity of several schools. The sources of the non-profit organization deployed in the region immediately alert the schools within 2, 5 and 10 mile radiuses of the impacted area. They create a High Alert, Low Alert and an Informative Alert for the schools to take necessary action based on their distance from the fire. These alerts were conveyed to the schools via phone call and email.

Solution

Maplytics uses Spatial Math Module offered by the Bing Maps API to perform a proximity search to locate the schools in the requested proximity from Dynamics 365 CE and display them on the map in addition to listing them out with additional details. This helps the non-profit to take proactive actions like sending an email or creating a phone call activity to be assigned to a representative for follow-up with each school.

Maplytics makes use of multiple modules and the REST API services that are available in Bing Maps as part of this solution.

Spatial Math Module offers various operations to perform spatial calculations. Maplytics uses it to calculate the distance between two locations, in this case the center point of the location where the incident occurred, such as a fire break out, and includes the addresses of the schools stored in the Dynamics 365 CE Application.

To present any data on the map or to perform any geospatial operation, it is important to have the geo-coordinates (latitude/longitude) of the location. For this, the addresses of the schools are already geocoded using the Bing Map REST Services API.

e.g. http://dev.virtualearth.net/REST/v1/Locations/US/WA/98052/Redmond/1%20Microsoft%20Way? key={BingMapsKey}

We ship a workflow that is executed automatically when a new school is added to the system or the address of a school is changed. Next, we get the geo-coordinates of the incident location to calculate the distance from that point. For this, we make use of Search Module.

Microsoft.Maps.loadModule('Microsoft.Maps.Search', function () {
                var searchManager = new Microsoft.Maps.Search.SearchManager(map);
                var requestOptions = {
                    bounds: map.getBounds(),
                    where: 'Seattle',
                    callback: function (answer, userData) {
                        map.setView({ bounds: answer.results[0].bestView });
                        map.entities.push(new Microsoft.Maps.Pushpin(answer.results[0].location));
                    }
                };
                searchManager.geocode(requestOptions);
            });

The above snippet of code plots the incident location on the map.

Using the mathematical formulae available, a collection of geo-coordinates are obtained to draw the 2, 5, 10 mile radius. See screenshot below:

Maplytics screenshot

Finally, we plot the schools on the map that are within 2, 5, 10 miles from the incident. Here the Spatial Math Module comes to the rescue.

Microsoft.Maps.SpatialMath.getDistanceTo(pushpins[0].getLocation(), pushpins[1].getLocation(), Microsoft.Maps.SpatialMath.DistanceUnits.Miles);

In the above function, we need to provide the geo-coordinates of the 2 locations. This function supports returning of the distance in both the metric system (km) and the imperial system (miles).

The comparison results that fall within the requested 10-mile radius are then displayed on the map as shown below:

Maplytics Screenshot - Plot Records

With this kind of visualization on the map, the system can immediately identify the schools that need to be notified of the incident. The related school information can be quickly retrieved by clicking on the specific pushpin.

Maplytics Screenshot - Little Harbor School

From here a phone call activity can be created in CRM and assigned to another department for personal follow-up with the school. At the same time, an email can be sent out to all the schools in one go using the Mass Email option available in Maplytics:

Maplytics Screenshot - Mass Email

You can see that in a matter of a few seconds Maplytics meets the needs required in a challenging situation. With the help of the powerful services available through Bing Maps API, we were able to identify the schools in the vicinity and create actionable items for the team in the form of emails and phone calls.

Further using Bing Maps Services, Maplytics has been able to develop features like optimized routing with turn-by-turn navigation to various apps, defining and aligning sales territories with Territory Management, performing Radius Search in proximities, planning and scheduling of appointments with check-in timestamp and determining Area of Service.

To learn more about Maplytics, go to https://www.maplytics.com/.

You can get more information about Bing Maps at https://www.microsoft.com/maps.

– Maplytics Team