M
Guide—A System for Mobile Information Access
A. Priyadharshini1, N. Deepthi, S. Divya and Aswani Kumar2
School of Computing Sciences, VIT University, Vellore-632014, India.
E-mail: 1priya_sami86@yahoo.co.in, 2aswanis@gmail.com
ABSTRACT: Information retrieval systems have developed in a better way along with the development of hand-held devices and GPRS (General Packet Radio Service) technologies. But these services are deprived to the people who do not have GPRS enabled mobiles. In this paper, we have designed a system which facilitates the mobile users to access information about primary services without upgrading their mobile device and not subscribing to any service providers. Users request for the service by sending their query as text message and receive the results in the form of SMS (Short Message Service). The proposed system aims at supporting searches for primary services such as hospitals, restaurants, tourist places, shopping centre’s, educational centre’s, weather report, share prices, etc which are very useful when the users are mobile.
Keywords—SMS, GPRS, AT, Tokens.
Introduction
Information access is the need of the hour. Accessing information can be expected from anywhere, anytime and by any means. This cannot be restricted due to location, devices, etc. After the advent of the age of mobility, there is an exponential growth in the development of mobile phones and other hand held devices. Mobile phones are now poised to overtake the traditional information access devices such as desktop, PC’s and laptops as the prevailing platform for the Internet information access. The user can access Internet in a mobile phone which supports GPRS technology. Thus the information is delivered to the end user across the globe. It is important to understand the emerging information access behaviour of mobile Internet users especially in relation to their use of mobile handsets for information browsing and query-based search [3]. It is found that browsing continues to dominate mobile information access, but search is becoming an increasingly popular information access alternative especially in relation to certain types of mobile handsets and information needs.
There is much application software that brings all kinds of information to the mobile screen. But these methods are not economical for frequent usage because the user with GPRS mobile should pay for Internet subscription. However many users still possess older handsets which do not support GPRS technologies. So these users are unable to access information through mobile phones.
Mobile phones have become ubiquitous and text messaging is accepted globally. Worldwide, approximately 1 billion SMS messages are sent every day [1]. Hence we have designed a system where in information can be accessed using the basic service of mobile phones—SMS.
MGuide uses SMS (Short Message Service) for sending the query and the results are also obtained as SMS. Since text messaging is a low cost service and it is available in any hand held device with a limited configuration, this system is efficient and economical. The proposed system aims at providing primary services like hospitals, hotels and also information about stock prices, weather report, etc. The end user sends his query to the provided number. The mobile phone which receives the query is connected with the system. The query sent to the mobile phone is read using the AT (attention) commands.
AT commands are the instructions used for controlling the mobile phone or GSM/GPRS modem when connected with a computer. Based on the query the results are obtained. The locations of hospitals, restaurants do not change over a period of time and hence they are stored in the database. But information like stock prices, weather reports changes dynamically so this information is directly accessed from web pages. The results obtained are stored in a text file along with sender’s phone number. These results are then sent back as SMS using J2ME.
Related Work Google SMS
The user sends a query in a text message to the Google SMS short code. Google receives the user’s message, parses the query, attempts to retrieve relevant information, and sends results back in one or several SMS messages. [1] Provides services for business listings, residential listings, product prices, dictionary definitions, area codes, and zip codes. For example, if a user sends the text message “pizza 10013”, Google SMS will return business listings (with names, addresses, and contact details) of pizza restaurants in the area with zip code 10013.
This system is used to control and monitor the electric circuitry through SMS using a microcontroller which controls the entire system. Attention Commands are used for the operation on SMS in the mobile phone. User requests the system by sending an SMS to switch on and off the electric circuitry. Knowing the state of the electricity [2] will send a reply to the user giving the state of the electricity. It also provides user defined password for its security and also deletes the messages from the microcontroller after processing it. The messages are received in the form of PDU (Protocol Data Unit) which is decoded by the microcontroller and checks for the validity of the message. Invalid and valid messages with incorrect password are deleted immediately using AT commands.
Valid SMS will be in one of the following forms:
-
Turn on/off the electric circuitry.
-
Check the status of the electric circuitry.
-
Change the password.
Java Technology in Hand Held Devices
Java™ technology has come a long way. Originally conceived for digital TV development, it moved onto desktops and Web tops [5], then into servers, and now, coming full circle, back into devices. Java technology is more prevalent in the small wireless gadgets. J2ME isn’t a specific piece of software or specification. All it means is Java for small devices [8]. The J2ME platform is aimed at the consumer and embedded device market. Due to advantages like portability and security J2ME is used over other tools for small device application development. J2ME applications referred to as midlet, can run on practically any mobile communication device that implements a JVM (java virtual machine). This JVM directly interacts with the native operating system [7]. Web crawler has become a popular technology for indexing the web pages. It is used to collect web content from the Internet and index them to be retrieved when demanded by a user query. This is done by establishing connection to the web server through HTTP protocol [4] and it fetches the web pages from the server.
Most of the systems which are designed for receiving messages use GSM/GPRS modem which adds to the cost of the system. The cost per sms for sending the query is more in the case of existing systems. This motivated us to propose the following system which does not even require subscribing to a service provider and end users of all service providers can make use of this system. In case of GPRS mobiles accessing information directly from web pages is difficult in mobile phone because of the screen size and complex navigation. So instead of accessing the web pages directly, an application is designed for accessing information from the web pages. This can be accomplished using J2ME which will facilitate the users with java enabled phones.
Proposed Architecture
In the architecture (Figure 1) the flow of data is initiated from the client. User sends a query in the form of text message to the Java enabled mobile. SMS sent by the user is stored in the inbox of the Java mobile.
User
Mobile
SMS
Reply
Request
SMS
Java Mobile Connected to System
Message
Decoding
Query
Processing
Servlet
Text File
DATA
BASE
Static
data
Access
Results via HTTP
Encoded
Message
Data Retrieval
Access
Access
Data Retrieval
Tokens
Query
No
Yes
Fig. 1: The proposed architecture
As J2ME (Java2 Micro Edition) does not provide any facility for accessing the inbox, we use AT (Attention) commands to access the inbox messages. The mobile phone connected to the computer is controlled by certain instructions called AT commands. These AT commands are sent to a mobile phone by using a terminal program like HyperTerminal program of Microsoft Windows. There are two ways of sending SMS messages: by text mode and by PDU mode. In this paper, we use PDU mode since it is supported by all mobile phones unlike the Text mode. A connection is established between mobile and the server on any one of the open COM ports by using serial port communication.
The message is read in PDU format which is decoded using a 7-bit decoding algorithm. The query is parsed and the control is then transferred to the search routines which either access the database or web page to access the information. The result along with the phone number of the user is stored in a file which is accessed by the servlet. A Midlet (J2ME program) accesses the information obtained from the servlet and the results are sent in the form of text message to the end user.
Query Parsing
The message received in the server is of PDU format. Hence this hexadecimal format which is eight bits should be decoded into seven bits. This conversion of octets into septets is done by a seven bit decoding. After obtaining the septets, its decimal value is found. Using these decimal values, we obtain its corresponding ASCII character. Thus the message is decoded and query is obtained. Now the query is processed by parsing it to tokens. If the request is for primary services like hospital, hotels, etc., the control is transferred to data base retrieval function from where the results are obtained.
In case of requests for dynamic information like share price, weather reports, etc., the control is transferred to the search routine where the web pages are accessed and thus the information is obtained. The sender’s phone number is swapped internally for every two numbers in SMS PDU mode. By using bubble sort the sender’s phone number is deciphered.
Static Information Access
The static information is stored in a database that is created using Oracle10g. This database consists of information regarding primary services like hospitals, restaurants, tourist spots, etc., which are static over a period of time. The user query which has been parsed as tokens searches across the database by establishing JDBC and thus relevant data is retrieved.
Dynamic Information Access
Services like stock market, weather report are dynamic in nature and so these kind of information cannot be stored in a database. Hence we design a search algorithm which retrieves the dynamic information from the web pages. The search algorithm is designed in such a way that it searches the corresponding data say weather report for a particular place or stock market information about a company for the input given by the user.
The data that is retrieved from web pages is updated constantly. We use URL class to access the required web page and store it in the local disk from which we retrieve the data using File Reader and implement the specific search on the same. The above is done for every new user input.
Information Delivery
The results for the static and the dynamic information that are retrieved from the database and web pages respectively are stored in a file along with the client’s phone number. This file is updated every time the user sends a query. A servlet running at the specific port reads the file and writes its contents to the browser. A midlet reads the browser by establishing a HTTP (Hyper Text Transfer Protocol) connection and sends the contents as SMS by using WMA (wireless messaging API) in J2ME to the end user. The above is done by deploying the jar (java archive) file in the Java mobile which is connected to the server.
Information Access in GPRS Mobile Phones
A Graphical User Interface is designed for the users with GPRS mobile phones. This application is designed in J2ME where the midlet consists of various forms in which the services are listed. Users can select the services according to their choices. This midlet communicates with the servlet of the corresponding service and thus obtaining the results. The servlet access the web pages based on the user request. The main advantage is that the user need not send SMS every time when he needs the service.
Working Flow of the Proposed System
The following steps illustrate the working flow of the system.
-
Open COM serial port
-
Read SMS in pdu mode
AT + CPMS = ME
AT + CNMI = 2, 3, 2, 1, 0
AT + CMGL = 0
-
Read SMS and sender number by 7-bit decoding
-
Transfer control to search algorithms
-
If (static information)
Retrieve from data base
-
Else if (dynamic information)
6.1 read web page
6.2 if (line contains (keywords)
6.3 parse line
6.4 remove HTML tags
6.5 retrieve information
-
Write output to a file
-
Read output file
-
Send reply as sms
The attention command AT + CPMS = ME is used to change the preferred memory storage of the mobile to phone memory. AT + CNMI = 2, 3, 2, 1, 0 command is used for getting new message indication. So whenever a new message indication is found the command AT + CMGL = 0 is executed. This command is used for reading the unread message.
The significant feature of our system is, using SMS to access our service which is a basic application in any mobile phone. Thus the end user does not require GPRS facility. The system does not use GSM/GPRS modem and hence it’s cost effective. Subscriptions to the service providers are not necessary. Users of all service providers can send their queries using MGuide. PDU mode is used for receiving the messages as it is supported by all mobile phones unlike the text mode.
Experimental Results
The proposed system is developed and implemented in windows platform. Time taken for receiving the user query and sending back the results depend on the service provided by the GSM operators. In case of GPRS packages, retrieving the results depends on the Internet Bandwidth. The JAR application was tested using Airtel Mobile Office service with speed of 115.3 Kbps and the results are obtained within four to six seconds.
For static information (database):
Best case: O (Nt)
Worst case: O (N+ Nt)
Where
N–Total no. of tables in the database
Nt–No. of tuples in the particular table
For dynamic information (web pages)
The number of iterations is:
Best Case: O (Lk)
Worst Case: O (Ni*Lk) or O ((N-Nul)*Lk)
Where:
N-total no. of lines in the web page
Ni-index of line where keyword occurred
Nul-unwanted lines in the web page
Lk-length of the keyword
The overall results are shown below which illustrate the user query (Figure 2) and the corresponding information sent from the MGuide (Figure 3) and the format of the query is given in Table 1.
Taoble 1: Query format
Search Feature
|
Sample Query
|
Hospitals
|
Hospital Mumbai
|
Hotels
|
Hotel Chennai
|
Stocks
|
Stock TCS
|
Weather
|
Weather Goa
|
Fig. 2: Sender query
Fig. 3: The results sent back to sender from MGuide
Conclusions
Thus our system facilitates the mobile users to access information from non-GPRS and GPRS mobile phones. It is designed in such a way that it provides information about basic amenities when they are mobile. Hence the information can be accessed quickly and easily. This work can be enhanced by implementing natural language query instead of fixed query format. The database can be extended for more primary services which is necessary for the end user. Further, enhancements would be implementing voice query where in the request and reply would in the form of voice messages.
Acknowledgement
Authors acknowledge the financial support from Dept. of Science and Technology, Govt. of India under the grant number SR/S3/EECE/25/2005.
References -
Schusteritsch, Rudy, Rao, Shailendra and Rodden, Kerry, Mobile Search with Text Messages: Designing the User Experience for Google SMS, In Proceedings Conference on Human Factors in Computing Systems, 1777–1780, 2005.
-
Kalingamudalil, S.R.D., Harambearachchi, J.C., Kumara, L.S.R., DeSilva, J.H.S.R., Rathnayaka, R.M.C.R.K., Piyasiri, G., Indika, W.A.N., Gunarathne, M.M.A.S., Kumara, H.A.D.P.S.S. and Fernando, M.R.D.B., Remote Controlling and Monitoring System to Control Electric Circuitry through SMS using a Microcontroller. In proeedings on first international conference on Industrial and Information systems, 2006
-
Church, Karen, Smyth, Barry, Cotter, Paul and Bradley, Keith, 2007, Mobile Information Access: A Study of Emerging Search Behaviour on the Mobile Internet, ACM Transactions on the Web, 1(1).
-
Takeno, Hiroshi, Muto, Makoto and Fujimoto, Noriyuki, Developing a Web Crawler for Massive Mobile Search Services, in Proceedings of the seventh international conference on mobile data management.
-
BillDay, Sun Microsystems, www.billday.com, Developing Wireless Applications using the Java 2 Platform, Micro Edition.
-
Keogh, James, J2ME complete reference.
-
Sing Li and Jonathan Knudsen. Beginning J2Me From
-
Novice to Professional, Apress, 3rd Edition.
Share with your friends: |