FOLLOWME Project Proposal for 8803 Advanced Internet Application Development Spring 2009 Project Members: Kunal Chawla Shantanu Gupta Dinesh A. Joshi Radhika Shivapurkar
Motivation: Many location based services using GPS have been implemented and are in day to day use to locate everything from points of interest to family members, from restaurants to ATMs. In most of these location based usage scenarios we know the address of our destination. We ask GPS to help us get there. GPS coordinates are available and the GPS device guides us with what directions to take, which landmarks should we follow etc. But real life scenarios are always not ideal like knowing the address. Many times we just know how to reach a destination not knowing the address. How many times are we following a car and a red light spoils the tracking. What happens? We are Lost.We are clueless which way to go unless we contact the person and take manual direction from the car we were following. Our GPS won t guide us in this case because we do not know the destination address. What if it s a trek on a mountain and you are following you friend? This is still worse. Don t you think we need an application which can help us to follow our guide who can be your friend or your friend s car? Yes we indeed do. This has motivated us to create FollowMe an application which will allow us trace and follow the path of the leader. FollowMe will continuously update you with the path taken by your guide.and you Follow the Footsteps!!! Related Works: MapQuest Find Me is a service which helps a user find location of friends, places of interest, ATM, bank locations etc. MapQuest Find Me enables you to view maps, get directions, bookmark locations etc. MapQuest combines GPS technology with database of interest to provide appropriate information. Automatic location reporting, People Finder, Points of interest Locations, direction and address book features. Dodgeball is a social networking software provider for mobile phones. It enables a user to update text based locations and provide relevant location based information about their friends and places of interest and events. However Google is going to withdraw the service soon. 1
Google Latitudes it the latest release by Google. Latitude built on the basic maps and directions feature of Google Maps by adding a social element to it. The basic idea of Google Latitude is that you can let your smart phone or laptop be a physical tracking device for where you are. Latitude shares the phone number of friends and allows one to call them, send an SMS, and help them decide meetings - it can send directions from your location to theirs. Proposed work: The system we propose is pretty simple and is based on the assumption that smart phones such as Google s G1, Apple s iphone will be a common place. We will provide a client for such smart phones and a web service which will allow them to coordinate their activities. We envision that the users simply flick on the application, set the mode and select the person (actually phone) to follow. One of the devices will post its current location to a web service and the other will simply update itself with it and calculate the correct trajectory to follow. Thus this service will be a push-pull service or a publisher-subscriber or a producer-consumer model. We have planned to use the Android platform to deploy our experimental application. The clients will use a web service that would use a protocol such as XML-RPC, SOAP, REST etc to update their status. The producing client will update the web service with its current location while the consuming client will get the producing client s location with some additional data most probably a vector. 3b: Post Location 4: Query C2 s location 5: Web Service Responds Web Service 3b: Post Location Client 1 Client 2 1a: Query Location 2a: GPS Responds GPS 1b: Query Location 2b: GPS Responds Fig.1 2
Architectural Design Plan of Action The following are the technologies we intend to use: 1. Android API: We intend to develop this application over the Android OS so the entire code will be developed using the Android API s. 2. Web Services/XMTP 3. A location server which can keep track of the location. 4. Android mobile phone for testing 3
Timeline: Date Feb 10 th Feb 24 th Feb 3 rd Mar 17 th Mar 31 st Apr 7 th Apr 14 th April 21 st Milestone Project Proposal Map Rendering: Studying Android API and Map rendering in Android GPS: Fetching GPS location and displaying it on the map Web-service/XMTP Phase 1: Uploading the GPS location from mobile phone to the server Web-service/XMTP Phase 2: Getting the GPS location of other mobile phone from the server and displaying it on the phone Buffer: If any of the above task require more than the estimated time this week can be used to wrap up the remaining part. Testing Documentation Deliverables & Evaluation/Testing: 1. Demonstration of FollowMe Application. We intend to show the GPS location of both the mobile ones only on the one which is following other. If time permits we will try to show the GPS locations of the two phones on both the phones. 2. We intend to demonstrate this application on Android Phones. 3. The evaluation of the system should be based on how well we manage to : a. Render Map on the Android phone b. Accuracy of the GPS location of other phone obtained and the path followed by the other phone. c. Response time to get the location of the other phone from the server. 4. Things that will not be addressed as a part of this project: a. In case the 2 nd vehicle cannot follow the first one due to some traffic regulation like size of vehicle, this application will not provide an alternate route. 4
Future Scope & Extensions: FollowMe will be an innovative project for continuous path tracking and its utility is very much a need on daily basis. FolowMe can have social networking as add on. It will allow you to add up friend, maintain friend list, update their locations, manage meetings and appointments, organize location based social events etc. Deployment of FollowMe on Garmin devices will be a future extension to this innovative project. Also the application can be developed to work on various mobile platforms like Symbian S60 OS, Windows Mobile and iphone. Bibliography: http://www.google.com/mobile/default/latitude.html http://www.flickr.com/photos/dpstyles/3253717612/ http://www.medianama.com/2009/02/223-on-google-latitude-vs-big-maps/ 5