CS 8803 AIAD PROJECT PROPOSAL-INSTANT CAR POOLING TEAM#2 CS 8803 AIAD PROJECT PROPOSAL INSTANT CAR POOLING ON THE ANDROID PLATFORM Vinaya Shenoy Parikshit Sudumbrekar Madhura Tipnis 1 CS 8803 AIAD PROJECT PROPOSAL-INSTANT CAR POOLING TEAM#2 Project Motivation and Objectives: With increasing convergence between different technologies like the cellular world, internet (IP) world, different applications have become popular and many more are under development. One of the prominent services popular amongst the users is the "Location Based Services" and "presence". The current location-based services out there in the market use the policy of 'broadcasting locations' while enabling any activity between the various users. This may lead to unintended recipients being the beneficiary of certain events. With this in mind, we aim to develop an application/service that would enable selective delivery of events/messages to the intended recipients based on their location. This would help in avoiding thousands of messages being sent to unintended recipients. The objective of this project is to enable events (having a very short time to live or those which need to be serviced immediately) being delivered to the intended recipients for their immediate service. The ultimate goal is to develop a car pooling application wherein any individual at a very short notice could generate an event requesting a car pool to go from location A to location B. The event could also contain the route the person desires to travel on. Based on this information and the location of the person, the event would be delivered to only those recipients who are within a pre-defined radius from that location. This event could further be enhanced by using Google maps to give directions regarding the exact location of the person initiating the event. With this aim under consideration, we hope to present a stripped-down application that would provide all the basic functionalities of the overall application. The objectives for this project can be listed as follows: • • • • • Development of an application that would enable users to generate events Enabling the users to send the event to recipients they selected from their contact list. Enabling the recipients to respond with either a yes or a no. Whenever the recipient responds with a yes, his location co-ordinates are sent back to the event initiator. Creation of a Google Map that shows the event creator the directions between his location, the final destination address and the location of the intermediate pick-up points, which are the locations of the recipients that have replied with a ‘yes’ to the car pooling event message. Demonstrating the application by using Android simulators Related Work: • • Location tracking is the most essential thing and a definite pre requisite for any mobility related application. This can be done in different ways. A social tool has been developed which helps the user connect with people around him. This tool has been developed on the Symbian Operating System. The location of the user is detected in the cell phone by getting information from the cell tower. This application doesn’t need GPS. Each user can keep up with what is happening with people in the friend’s list. Broadcasting of messages is the approach followed in this tool. It also 2 CS 8803 AIAD • PROJECT PROPOSAL-INSTANT CAR POOLING TEAM#2 provides other features like connecting people with similar interests. It helps the user explore various places in and around the location detected. There is a mobile social networking service called Loopt which broadcasts the location of the user even when the phone is closed. It also allows sending of messages or sharing of photos between contacts. This Loopt is currently limited to the Sprint network. Proposed Work: We aim to build an application for the students of the Georgia Tech campus that would enable them to generate interactive events at a very short notice. The application that would demonstrate this functionality would be the Car Pooling application. The initiator creates a car pool event and selects a list of friends from his contact whom he wishes to invite for the event. When the event is created, it contains the following information: • • • • The subject of the event The Time at which the event is going to take place The vacancy in the car (The total number of friends that can be accommodated) The address of the final destination This event is received by all the recipients that are selected from the contact list. They get a message stating all the above information. Further, they get an option to either accept the invitation or decline the invitation. If the recipient responds with a ‘yes’; a list of recipients attending the car pooling event is populated at the initiator’s end. This list is created on a ‘firstcome-first-serve’ basis. The initiator also has the facility of getting a Google Map that shows the location of all the pick-up points (location of recipients that have responded with a yes) and the final destination location. The architecture that we propose makes direct communication between the event creator and all the intended recipients. The location (in the form of latitude and longitude) of all the recipients is forwarded back to the event creator. The diagram shows a basic high-level architecture of our system. 3 CS 8803 AIAD PROJECT PROPOSAL-INSTANT CAR POOLING TEAM#2 A EI = Event Initiator EI B C D Friends responding with their locations and ‘yes’ or ‘no’ to the event Figure 1: Architecture Diagram The diagram describes our architecture and the flow of communication between all the parties present in our system. The interesting part from our project is that once the vacancies are over, all the future recipients that respond positively are automatically sent a ‘sorry’ message with the subject being that the Carpool is full and there is no vacancy. Thus, the event initiator does not have to worry about looking after these issues. Thus, after specifying vacancy, the event initiator gets the following: • • • Recipients that are attending the car pool The order of pick-up based on the order of response The route to be taken by the initiator. 4 CS 8803 AIAD PROJECT PROPOSAL-INSTANT CAR POOLING TEAM#2 Plan of Action: We plan to incorporate the following technologies into our project: • • Android Platform: We plan to use the Android platform as our mobile platform. This would give us hands-on experience in the latest of the mobile platforms. Android platform also provides APIs for finding the geo-location of users. Google Map: Our main focus in this project apart from message passing is the creation of Google Maps. The map shows the path and the directions between the event creator, final destination and all the intermediate pick-up points. The intermediate pick-up points indicate the location of all the recipients that have responded positively to the car pool event. Schedule: We plan to follow the following schedule for completing our project: Date Mile-Stone Feb 10th Project Proposal submission. Feb 24th Configuration of the Android platform and performing some feasibility studies. March 17th Implementing the entire Front-End for the Car Pooling application April 7th Implementing the Google Map functionality and integrating it with the main project April 14th Begin the documentation and start the testing process April 23rd Completion of the project along with the documentation. 5 CS 8803 AIAD PROJECT PROPOSAL-INSTANT CAR POOLING TEAM#2 Testing and Evaluation: Due to lack of hardware at this moment we intend to test and demonstrate only on an emulator. We will be running Android emulators on 3-4 laptops and be getting GPS location data for each of the emulators by creating a mock location provider and/or downloading KML files of placemarks from Google Earth and try to run the system on a wireless network. We will be running all the test case scenarios like an invitee should not be messaged if he is not in the range for the event, message when an invitee is in the range, etc. The evaluation should be based on how well we manage to achieve the following objectives: • • • User Interface to create the event on the cell phone Web service to poll invitees for their locations and filter invitees on the basis of distance from event location Final creation of event and message communication to invitees Future Work: This project aims to demonstrate a stripped down car pooling application. In the future, we aim to incorporate the following: • • • Development of a web-service that handles all the communication between the users, the Google Map creation and handling all the location information. Thus, Location privacy issues can also be taken care of. Development of algorithms that would help in calculating the shortest path between the event creator, final destination and all the intermediate pick-up points. Other features like deleting past events and showing only pending events can be thought of. Bibliography: • • • The Android Competency Center. January 16th 2009 <http://www.androidcompetencycenter.com/tag/android-location-apis/> Devx. January 14th 2009. < http://www.devx.com/wireless/Article/40524> Android, The Official Site. <http://www.android.com/#utm_campaign=en&utm_source=en-ha-nausbk&utm_medium=ha&utm_term=android> 6