Jonathan Lurie breaks down Microsoft's cool new MapPoint Location Server, giving you the who, what, why, where, and when (but not necessarily in that order).
What Is MapPoint Location Server?
MapPoint Location Server (MLS) is software that will make your cell phone locatable! But before you start screaming foul and making references to George Orwell's 1984, read the rest of this article. Microsoft is currently working with cellular operators such as Sprint, Bell Mobility Canada, and other as-yet-unnamed cellular companies to integrate Microsoft Location Server. The other cellular companies were unnamed to me but my secret sources indicate that ATT (AT&T?) may well be on its way to having its MLS plugin online soon. You didn't hear it here. Well, yes you did but you can't quote me on it!
Anyhow, for these cellular operators to work, an MLS plugin must be implemented. The plugin allows these cellular operators to offer a new (optional) service to their subscribers: locatable cell phones, which can act as honing beacons. So when Steve, Microsoft's MapPoint Location Server guru, runs the service on his phone, authorized users can ask "where's Steve?" Where the hell is Steve anyway? Let's see where he's peddling his "wares".
MLS enables users to know Steve's approximate location, assuming Steve's cell phone has not been lost or stolen. I say approximate because it depends on how the cellular operator implements the tracking. Some operators will use assisted GPS (APGS), which can result in very accurate approximations (30 feet or less). Others will use the nearest cell phone tower, which can result in less accurate approximations (could be as far as a mile).
The uses for MLS are practically innumerable, although I hope we don't see parents surgically implanting cell phones into their children's bodies to serve as tracking devices. Let's keep those surgically implanted foreign objects as small as possible, or avoid them altogether!
How It Works
MLS is a component of Microsoft's MapPoint Web Service (MWS). MWS licensing enables businesses to locate their "assets." Although primarily used for tracking cell phones, MLS could easily track pagers (does anyone still use pagers?) and other devices as well.
Once installed, a developer can issue queries against the MLS using a set of Web services (Step 1). The query includes an "asset" identifier associated with a user's Windows account. When a user is provisioned in MLS, his or her cell phone number, for example, is associated with the user's Windows account and stored in the MLS SQL DB. The query from the developer contains the account name (Windows) of the user to be located, and MMLS looks up the phoned number and sends that to the operator.
MapPoint Location Server would in turn query the cellular operator (Step 2) configured for the specific asset identifier (for example, Sprint). Remember that a business might have hundreds of locatable assets, and each can exist on a different cellular operator. The operator then locates the asset and returns its geographic latitude and longitude (Step 3). At that point, MLS could notify the asset (Step 4) that its location is being queried (an option configurable by the asset owner) and then return the latitude and longitude to the requestor. The requestor probably would want to display the location on a map, which it could render by using MapPoint Web Service (Step 5 & 6).
Click here for a larger image.
Out of the box, users can use MLS to locate themselves, their buddies, and any nearby MWS point-of-interest (POI) locations. (A POI could be a gas station, restaurant, and so forth) On the development side, with a little customization work to the software, Microsoft's MapPoint Web Service can also provide useful information such as which phone out of a group of phones is nearest a certain location, how far apart two addresses are, directions for getting from point A to B, and so on.
Who Will Use MapPoint Location Server?
We already know that law enforcement vehicles, ambulances, fire trucks, and some taxicabs have installed GPS locators so the vehicles can be tracked. The business drivers and corresponding return on investment for location-based application development need no further expatiation in those established industries. The real question is whether they will make the switch to MLS? I would venture to say that many of them will, for the simple reason that it is so much easier to develop location-based applications on the MLS platform. The ease of development obviously means increased productivity, faster time to market, faster time to value, blah, blah, blah. (Time-to-value is the time delta between the moment a business need is identified and when it's filled.) Now, consider all the small taxicab companies that have not "automated" due to the high cost of traditional location-based services technologies. MLS changes that.
Does MLS provide a better mousetrap for these applications? Probably not. MLS is not necessarily better because it may not provide pinpoint accuracy. Remember, the preciseness of the geographic location depends on the cellular operator. This lack of absolute precision may be inadequate for critical uses (military, medical, and so forth), but it's very acceptable for commercial uses. Thus, the question of whether MLS is better is a moot point. Besides, I expect that most will use APGS to get excellent location precision anyway. Where MLS hits a home run is in providing affordable location-based services to companies that could not previously afford them.
I have spent a good deal of time building law enforcement applications, and I can attest to the difficulty in building applications that integrate maps. With law enforcement applications, the need for geographic information systems (GIS) is crucial. Analysing crime statistics against a map allows law enforcement management (police chiefs) to allocate resources (police officers) with greater efficacy. The APIs for building GIS were relatively cumbersome and difficult to integrate—especially with a mobile device. MLS abstracts the developer from many of these complexities and thereby provides a far cheaper mousetrap because it doesn't require expensive mapping software nor GPS tracking devices to be installed. A cell phone will do, and many of us already have those.
Why Use MapPoint Location Server?
If I may adopt corporate speak: MapPoint Location Server's value proposition can be asseverated by measuring its potential for improvements over existing operational processes. Got it? No? Let me try again: MapPoint Location Server helps a business to do more with less. For example, consider a small distributorship that delivers beer and alcohol. It uses only half a dozen trucks to service a metropolitan city and each driver has a "locatable" cell phone. A retailer that is out of inventory places an online order with the distributorship for immediate delivery. Leveraging a service-oriented architecture (SOA), the new order could execute a background process that determines whether any of the drivers are within close proximity to the retailer and even whether the truck contains sufficient inventory at the time. If practical, a message could be sent to the driver instructing him to make the delivery. Other uses include tracking your sales staff on their daily routes: Are they really working hard, or hardly working? The following list provides just a few ideas to consider:
- News dispatch—Tracking news vans and reporters for better dispatch. Reporters can be messaged when the van is within twenty minutes of its destination.
- Service repair—Dispatch mobile repair technicians
- Delivery drivers—Where are they?
- Fleet management/tracking
- Field service management—utilities, repair, and so on
- Sales force automation
- Security applications
- Real estate—Show similar properties within one mile of current location
- Mobile workforce management
- Taxi and transportation
- Locate colleagues—Where is my technical sales support?
- Where can I get film developed? Eat? Sleep? Get cash?
- Is there a restaurant near the theater?
Timothy Stockstill, CTO of Code Conference (a company specializing in mobile applications such as route automation and an early adopter of Microsoft's MapPoint Web Service—yes, that was a blatant plug for my company!), cites MLS as a breakthrough technology for the mobile sector. Location-based applications are now within reach of everyday businesses.
Mobile workers will certainly benefit from MLS, but they aren't necessarily the only ones. Think about how MLS might lead to new services. Doctors, nurses, and other health providers would be able to respond to life-threatening emergencies in record time, given that the person nearest the location could be messaged immediately. (But let's get real. Doctors making house calls?!)
In essence, MLS allows developers to build new applications that will turn the cell phone into the attention-focusing device of tomorrow. The concept of "attention focusing" is currently the subject of significant research at the Infospheres Project at the California Institute of Technology, where I will be pursuing my doctorate studies (yet another plug?!?). The term is highly relevant to MLS, because MLS allows people to become more integrated into critical business processes, meaning humans become more "integrated" into the software. The bottom line is that you're going to be able to respond to exigencies at any time, day or night, because when your cell phone beeps it may no longer be a matter of convenience but a matter of necessity. Hence, the device focuses your attention, whereas currently it often defocuses you. MLS will make devices even more attention focusing because you will not be "notified" unless you are geographically situated in a position to take action. A fire in Los Angeles, for example, would not cause a notification to be sent to a Los Angeles fireman currently vacationing in Miami, unless to tell him to cut the vacation short!
When Will MLS Have Widespread Adoption?
MLS adoption is difficult to predict. At this stage, it is a new product that Microsoft is keen to educate developers about. MLS is expected to be available on the Sprint network sometime this summer. Widespread adoption will lag until all the major networks are integrated. Several obstacles may delay widespread adoption, not the least of which is society's perception of tracking technology. People are bound to wonder whether MLS poses a threat to their privacy. That was my concern, but a cursory review of the product revealed that it has many advanced security features, such as the ability for the asset (cell phone) to be notified when its location is being queried. I felt much more comfortable after learning that. I would, however, advise fugitives to discard cell phones when trying to evade law enforcement officials.
Let's face it; it's always been possible to locate someone who has a cell phone. MLS just makes it somewhat easier. You can learn about lots of other security features elsewhere, if you need more reassuring. What seems significant is that we as consumers will soon change the way we perceive our cell phones. Forgetting your phone or having its battery run low is not uncommon. As the role of the cell phone is augmented with attention-focusing applications, cell phone users will have to be more responsible. Of course, that's assuming we all want to be reachable and locatable all the time.
Do you really need a where? I just put this section in so you can't claim I didn't cover where MLS is. "It's all around you, it's in the air you breathe, it's in the ..." Okay, okay, it's like The Matrix."
Licensing & Pricing
MLS is a component of MapPoint Web Service. There is NO charge for MLS!
You must have a valid MWS agreement with Microsoft (MWS agreement or Trial MWS agreement). The MWS access fee is approximately $8,000 per annum and includes 500k transactions and 50 locatable devices. Additional locatable devices cost about $2 per device. It's highly likely that the cellular operator will also charge a small fee (I've heard between $5–10 per device per month).
Opportunity for Developers?
Here's the good news: The availability of MLS represents a major opportunity for entrepreneurial developers. Developers must write the applications that will serve as a front end for users to query MLS. Of course, MLS comes with an application, Microsoft Mobile Locator, which tracks assets. The following screen shot displays a screen shot of the Microsoft Mobile Locator.
Click here for a larger image.
The application above is useful, but it will not represent the business rules associated with specific applications (for example, the application will not know that it should not display assets owned by employees who have taken vacation that week). Developers will have to write these types of applications.
Applications for taxicab routing are a perfect example. A developer will write the code that will place an automated voice call when the taxi is within five minutes of its pickup location; placing a phone call from your C# application may sound difficult but it's a snap with VS.NET 2005.
Getting Started with MLS
From a purely technical perspective, building location-based applications requires developers to learn more about MapPoint Web Service. If you are interested in learning more, acquire a free subscription to MapPoint Web Service. This offer is available to MSDN® Universal, Enterprise, and Professional subscribers. Once you have created a MWS account, you should install MLS. Then, go ahead and build your applications using the Fixed Location Plugin, which Microsoft provides so you don't need to have a cell phone. The locations are hard-coded into a file. You can also sign up for a new MLS newsgroup.
Whether or not you'll use MLS depends on whether you can find a use for it in your current line of business. One thing is for certain, however (regardless of whether you are a Microsoft fan or not), this is cool!
For more information on Microsoft Location Server visit:
About the Author
Jonathan Lurie has been working with information systems in numerous verticals from accounting to law enforcement. In addition to writing, he teaches .NET and XML classes. He holds a BSc in Computer Science and has several certifications including Java Programmer, IBM XML Developer, Solomon, MCT, MCDBA, MCSD, MCSE, and MSF Instructor.