`
`(12) United States Patent
`(10) Patent No.:
`US 6,983,310 132
`
`Rouse et al.
`(45) Date of Patent:
`Jan. 3, 2006
`
`(54) SYSTEM AND METHOD FOR PROVIDING
`SEARCH CAPABILTIES ON A WIRELESS
`DEVICE
`
`75
`
`)
`
`(
`
`.
`.
`Inventors Andrew Rouse’ Andover’ MA (US)’
`Quinton Zondervan, Boston, MA
`.
`(US)> Thomas Bentley> North
`Chelmsbrd, MA(US); T1m0th_y
`Lawson, Stow, MA (US); ChristOpher
`Herot, Newton Highlands, MA (US)
`
`(73) Assignee:
`
`International Business Machines
`Corporation, AI'IIlOIlk, NY (Us)
`
`4/1999 Warsta et 61.
`5,896,369 A
`6/1999 LaPorta et al.
`5,918,158 A
`7/1999 Metso et al.
`................ 455/557
`5,920,826 A
`8/1999 Buhrmann et al.
`......... 455/461
`5,933,778 A
`8/1999 Andersson
`5,943,616 A
`8/1999 Zoken ........................ 709/206
`5,944,787 A *
`9
`.
`5 949 326 A
`/1999 Wicks et al.
`,
`,
`11/1999 Laiho
`5,978,685 A
`11/1999 Ditzik
`5,983,073 A
`11/1999 Kotani et al.
`5,987,029 A
`............... 709/206
`6,009,462 A * 12/1999 Birrelletal.
`6,012,068 A
`1/2000 Boezeman et al.
`......... 707/104
`6,014,429 A
`1/2000 LaPorta et al.
`6,018,665 A
`1/2000 Chavez, Jr. et al.
`
`( * ) Notice:
`
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 697 days.
`
`(Continued)
`FOREIGN PATENT DOCUMENTS
`0 785 661 A2
`7/1997
`
`EP
`
`(21) Appl. No.: 09/750,301
`
`(22)
`
`(65)
`
`Filed:
`
`Dec. 29: 2000
`_
`_
`_
`Prior Publication Data
`US 2002/0087620 A1
`Jul. 4, 2002
`
`(51)
`
`Int. Cl.
`(2006.01)
`G06F 13/00
`(52) US. Cl.
`........................................... 709/206; 707/3
`(58) Field of Classification Search .................... 707/3,
`707/4; 709/230, 206
`See application file for complete search history.
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`5,590,178 A
`5,727,950 A
`5,732,074 A
`5,742,668 A
`5,742,905 A
`5,758,293 A
`5,790,974 A
`5,793,762 A
`5,796,728 A
`5,873,045 A
`
`............ 379/96
`12/1996 Murakami et al.
`3/1998 Cook et al.
`................. 434/350
`3/1998 Spaur et 61.
`4/1998 Pepe et al. .................... 379/58
`4/1998 Pepe et 61.
`5/1998 Fraiser
`8/1998 Tognazzini
`8/1998 Penners et 61.
`8/1998 Rondeau et 61.
`2/1999 Lee et 61.
`
`(Continued)
`
`Primary Examiner—Kenneth R. Coulter
`(74) Attorney, Agent, or Firm—Pillsbury Winthrop Shaw
`Pittman LLP
`
`(57)
`
`ABSTRACT
`
`Asystem and method for enabling users to send and receive
`messages and other information from mobile devices and
`enabling users to access server-based information using
`mobile devices over Wireless data networks are disclosed.
`The present invention further provides search capabilities on
`a Wireless device. Search criteria may include searching
`messages (e.g., emails, memos, and/or other correspon-
`dences and documents) based on various fields, such as
`sender, date, subject and other parts of a message. Other
`search criteria may also be used. The present invention may
`also provide an application search form to perform various
`search functions. A search form may contain a formula field
`Where the field may contain a select formula that may be
`evaluated on the server for
`the search operation. This
`formula typically may reference other fields on the search
`form.
`
`35 Claims, 10 Drawing Sheets
`
`Mail Menu
`
`640
`
`6‘30
`
`610
`1 $ New Mail by Date
`New Mail by Author 612
`614
`
`lnbox by Date
`
`[nbox by Author
`Drafts
`
`Trash
`
`All Documents
`
`New Memo
`
`Search All
`
`616
`
`618
`
`620
`
`622
`624
`
`626
`
`600
`
`APPLE 1042
`
`2 3 4 5
`
`6 7 8
`
`9
`
`APPLE 1042
`
`1
`
`
`
`US 6,983,310 132
`
`Page 2
`
`........... 370/310
`
`US. PATENT DOCUMENTS
`6,021,433 A
`2/2000 Payne et al.
`6,038,595 A
`3/2000 Ortony
`6,073,034 A
`6/2000 Jacobsen et al.
`6,073,148 A
`6/2000 Rowe et al.
`................ 707/542
`6,081,706 A
`6/2000 Muths et al.
`6,085,098 A
`7/2000 M0011 et a1.
`6,088,340 A
`7/2000 Buchholz et al.
`6,088,457 A
`7/2000 Parkinson et al.
`6,088,730 A
`7/2000 Kato et a1.
`6,091,956 A
`7/2000 Hollenberg
`6,104,334 A
`8/2000 Allport
`6,108,727 A
`23/2000 Boals et a1.
`6,112,099 A
`8/2000 Ketola
`6,118,856 A
`9/2000 Paarsmarkt et al.
`6,119,155 A
`9/2000 Rossmann et a].
`6,122,263 A
`9/2000 Dahlin et al.
`6,128,509 A
`10/2000 Veijola et al.
`6,131,040 A
`10/2000 Knuutila et al.
`6,134,432 A
`10/2000 Holmes et al.
`6,137,473 A
`10/2000 Cortopassi et al.
`6,138,004 A
`10/2000 McGregor et al.
`6,138,009 A
`10/2000 Birgerson
`6,138,036 A
`10/2000 O’Cinneide
`6,144,942 A
`11/2000 Ruckdashel .................... 705/9
`6,151,491 A
`11/2000 Farris et al.
`6,152,369 A
`11/2000 Wilz, Sr. et al.
`6,157,935 A * 12/2000 Tran et al.
`.................. 715/503
`
`6,161,134 A
`12/2000 Wang et al.
`709/220
`.............. 455/566
`6,169,911 B1
`1/2001 Wagner et al.
`6,199,099 B1
`3/2001 Gershman et al.
`.......... 709/203
`6,292,473 B1
`9/2001 Duske, Jr. et al.
`370/316
`
`............. 345/751
`6,313,852 B1
`11/2001 Ishizaki et al.
`
`6,356,543 B2
`2923133932: :1
`,
`,
`6,401,085 B1
`6,438,575 B1
`6,480,853 B1
`6,509,913 B2
`6,526,274 B1
`6,529,903 B2 *
`6,556,997 B1
`6,560,604 B1
`6,601,061 B1
`6,633,759 B1
`6,636,854 B2
`6,671,715 B1
`6,678,361 B2
`6,684,088 B1
`6,701,378 B1
`6,725,275 B2
`6,741,853 B1
`2001/0006889 A1
`2001/0054020 A1
`2002/0049858 A1*
`2002/0054090 A1
`2002/0065110 A1
`2002/0103935 A1
`2002/0107904 A1
`2004/0205106 A1
`
`3/2002 Hall et al.
`.................. 370/352
`..... 707/10
`:/2002 Gershman et al.
`.
`
`.....
`/2002 Isomursu et al.
`455/466
`
`...... 707/4
`6/2002 Gershman et al.
`.
`................. 709/200
`8/2002 Khan et al.
`11/2002 Jain ............................ 707/10
`1/2003 Martin, Jr. et al.
`......... 345/762
`2/2003 Fickes et al.
`............... 455/414
`
`.
`3/2003 Smith et al.
`707/7
`4/2003 Levy ........................... 707/10
`5/2003 Fascenda ..................... 707/10
`
`7/2003 Holt et al.
`707/3
`
`. 455/419
`10/2003 Kobayashi
`10/2003 Dutta et al. .......... 707/10
`
`12/2003 Langseth et al.
`..
`...... 709/203
`
`.. 379/9324
`1/2004 Rooke et al.
`
`......
`1/2004 Halahmi
`455/566
`
`3/2004 Gilhuly et al.
`709/249
`
`4/2004 Eyal
`......
`709/231
`5/2004 Jiang et al.
`455/418
`
`7/2001 Kraft ...........
`455/412
`
`12/2001 Barth et al. .......... 705/37
`4/2002 Frietas et al.
`709/246
`.....
`5/2002 Silva et al.
`345/747
`.....
`5/2002 Enns et a1.
`455/566
`8/2002 Fishman et al.
`709/246
`8/2002 Talluri et al.
`709/202
`10/2004 Adler et al.
`................ 709/200
`
`W0
`
`FOREIGN PATENT DOCUMENTS
`WO 98/00787
`1/1998
`
`* cited by examiner
`
`2
`
`
`
`US. Patent
`
`Jan. 3, 2006
`
`Sheet 1 0f 10
`
`US 6,983,310 132
`
`329:3
`
`85mm.
`
`or;
`
`9522
`
`$22me
`
`5.032;
`
`o:
`
`mmmnmfio
`
`zmfi
`
`mmmnflmo
`
`£3
`
`829:5
`
`3891
`
`hmaww
`
`GNP
`
`
`
`53mm
`
`ONF
`
`.02.
`
`«NF
`
`Eton
`
`.VNF
`
`
`
`
`
`
`
`
`szo
`
`o:
`
`
`
`
`
`Wiggles...
`
`r.9...—
`
`205mm
`
`om>>
`
`NFvE25
`
`3
`
`
`
`
`
`
`
`
`
`
`US. Patent
`
`Jan. 3, 2006
`
`Sheet 2 0f 10
`
`US 6,983,310 132
`
`
`
`
`
` Request Dispatcher
`
`
`
`244
`
`Request
`Request
`
`
`
`Handler 1
`Handler X
`
`2‘1 41
`21 4x
`
`
`
`
`
`212
`
`Page Generator
`218
`
`XML <—> Notes
`
`XSLT Processor
`
`Translator
`
`222
`
`226
`
`
`TOP/[P
`
`WAP Server
`240
`
`Log
`228
`
`User App Preferences
`216
`
`Admin
`
`230
`
`App Design Manager
`
`220
`
`
`
`
`—l
`
`
`
`
`
`
`L
`
` XML Parser
`
`224
`
`
`
`FIG. 2
`
`4
`
`
`
`US. Patent
`
`Jan. 3, 2006
`
`Sheet 3 0f 10
`
`US 6,983,310 B2
`
`User Interface
`310
`
`
`
`
`
`Compile Manager
`
`Log
`322
`
`
`
`
`
`314
`
`’
`Design Filter
` Script Compiler
`
`
`
`XSLT
`Processor
`324
`
`
`
`
`XML Parser
`326
`
`Notes <-> XML
`
`
`Translator
`
`
`328
`
`
`
`
`
`
`
`l
`
`Stylesheet
`
`Generator
`318
`
`
`
`
`
`Output Packager
`320
`
`316
`
`5
`
`
`
`US. Patent
`
`Jan. 3, 2006
`
`Sheet 4 0f 10
`
`US 6,983,310 132
`
`Mobile Device Access
`
`Default and
`
`Custom
`
`Actions
`
`Module
`
`418
`
`E—mail Module
`
`410
`
`Calendar
`
`Module
`
`412
`
`Customization
`
`Module
`
`420
`
`422
`
`Search Module
`
`Forms Module
`
`414
`
`Views/Folders
`
`Module
`
`416
`
`400
`
`FIG. 4
`
`6
`
`
`
`US. Patent
`
`Jan. 3, 2006
`
`Sheet 5 0f 10
`
`US 6,983,310 B2
`
`E-mail Module
`
`Mail Menu
`
`510
`
`Action Menu
`
`512
`
`Trash Lists
`
`518
`
`New Memo
`
`520
`
`
`
`
`522
`
`Address Book
`
`514
`
`Search
`
`Draft Lists
`
`516
`
`500
`
`FIG. 5
`
`7
`
`
`
`US. Patent
`
`Jan. 3, 2006
`
`Sheet 6 0f 10
`
`US 6,983,310 B2
`
`Mail Menu
`
`540
`
`630
`
`1 % New Mail by Date
`
`610
`
`2
`
`3
`
`4
`
`5
`
`6
`
`7
`
`8
`
`9
`
`New Mail by Author 612
`
`lnbox by Date
`
`614
`
`lnbox by Author
`
`616
`
`Drafts
`
`Trash
`
`618
`
`620
`
`All Documents
`
`622
`
`New Memo
`
`Search All
`
`624
`
`626
`
`FIG. 6
`
`600
`
`8
`
`
`
`US. Patent
`
`Jan. 3, 2006
`
`Sheet 7 0f 10
`
`US 6,983,310 B2
`
`Action Menu
`
`Multilist
`
`Reply
`
`Delete
`
`Fax
`
`Forward
`
`Search
`
`Mail Menu
`
` 740
`
`1
`
`2
`
`3
`
`4
`
`5
`
`6
`
`7
`
`710
`
`712
`
`714
`
`716
`
`718
`
`720
`
`722
`300
`
`FIG. 7
`
`9
`
`
`
`US. Patent
`
`Jan. 3, 2006
`
`Sheet 8 0f 10
`
`US 6,983,310 B2
`
`New Memo
`
`FIG. 8
`
`10
`
`10
`
`
`
`
`
`
`
`
`
`
`
`Modify
`Appointment
`916
`
`
`
`US. Patent
`
`Jan. 3, 2006
`
`Sheet 9 0f 10
`
`US 6,983,310 132
`
`Calendar Module
`
`View
`
`910
`
`
`Add
`
`
`
`Appointment
`
`
`
`912
`
`
`Delete
`
`Appointment
`
`914
`
`
`
`Schedule
`
`Meeting
`
`918
`
`Send
`
`920
`
`
`
`FIG. 9
`
`11
`
`11
`
`
`
`US. Patent
`
`Jan. 3, 2006
`
`Sheet 10 0f 10
`
`US 6,983,310 132
`
`Preprocess the
`Document
`
`1010
`
`Obtain Mobile
`
`XML Description
`
`1012
`
`Read XSL
`
`Stylesheet
`
`1014
`
`Compile Style
`Sheet
`
`1016
`
`
`
`Transform XML
`
`Document
`
`1018
`
`FIG. 10
`
`12
`
`12
`
`
`
`US 6,983,310 B2
`
`1
`SYSTEM AND METHOD FOR PROVIDING
`SEARCH CAPABILTIES ON A WIRELESS
`DEVICE
`
`FIELD OF INVENTION
`
`The present invention relates generally to the field of
`wireless device access and, in particular, to a system and
`method for enabling users to search messages and other
`information received and displayed on mobile devices and
`enabling users to access server-based information using
`mobile devices over wireless data networks.
`
`BACKGROUND OF THE INVENTION
`
`Generally, mobile devices provide various communica-
`tion capabilities to users. Currently, users may access the
`Internet
`through personal mobile devices. For example,
`users may read local and world news headlines and/or short
`summaries on a mobile device, such as a PDA, cell phone,
`pager, etc. Users may also receive alerts and predetermined
`triggers, such as stock movement and other events. How-
`ever, the amount and type of information received may be
`limited due to hardware and physical limitations of a mobile
`device. For example,
`information received on a mobile
`device may not be easily viewable due to the limited screen
`space of a mobile device.
`While mobile devices may access information through the
`Internet, access to a corporate or other network may be
`limited. Also, information transferred from a server on a
`network to a mobile device may require conversion to a form
`viewable on a mobile device. This process may require
`restructuring and re-writing applications and other modifi-
`cations. Oftentimes, users may need to access critical data
`and other information stored on the user’s personal com-
`puter located on a corporate (or other) network. However,
`such information may not be easily accessed through a
`mobile device due to conversion and display limitations.
`Thus, information retrieval may be limited to mobile users.
`Mobile devices and wireless networks rely on a broad
`spectrum of technology. In comparison to personal or desk-
`top computers, each class of mobile device may currently
`represent a unique hardware and software platform. For
`example, mobile phones and PDAs may have varying capa-
`bilities and limitations as computing devices and client
`devices accessing corporate and other networks. The wire-
`less networks that support mobile devices may be similarly
`diverse.
`
`In addition, users may find viewing, storing, sending, and
`maneuvering through information displayed on a mobile
`device to be difficult and limiting. This may be due to the
`lack of customization available on mobile devices.
`
`These and other drawbacks exist with current systems.
`
`SUMMARY OF THE INVENTION
`
`Additional advantages of the invention will be set forth in
`part in the description which follows, and in part will be
`obvious from the description, or may be learned by practice
`of the invention. The advantages of the invention may be
`realized and attained by means of the instrumentalities and
`combinations particularly pointed out
`in the appended
`claims.
`
`The present invention provides interactive access to vari-
`ous databases and directories from web-enabled mobile
`
`65
`
`devices, such as cellular phones, pagers, and PDAs. The
`present invention enables users (e.g., users of Lotus Notes
`
`13
`
`2
`
`to remotely interact with messaging infrastructure
`TM)
`using a variety of mobile devices over wireless data net-
`works. The present invention offers broad sets of features
`that extend the reach of services to small, wireless devices,
`such as cellular phones, pagers, PDAs with wireless
`modems. Users may send and receive messages, alerts,
`pages, notifications and other
`forms of information to
`mobile devices from the user’s desktop. Wireless access
`features of the present invention enable users to remotely
`access servers over wireless data networks and interact with
`
`databases and public directories using mobile devices
`equipped with micro-browsers.
`The present invention further provides search capabilities
`on a wireless device. Search criteria may include searching
`messages (e.g., emails, memos, and/or other correspon-
`dences and documents) based on various fields, such as
`sender, date, subject and other parts of a message. Other
`search criteria may also be used.
`The present invention may also provide an application
`search form to perform various search functions. A search
`form may contain a formula field where the field may
`contain a select formula that may be evaluated on the server
`for the search operation. This formula typically may refer-
`ence other fields on the search form. For example, a designer
`may add a From field on an email application search form so
`that the user may search for email (or other correspondences
`and documents) from a particular person or group. Also, a
`search form may optionally contain a field that may contain
`a view or folder name which may be used to further
`constrain the search to documents in a specified view or
`folder. Other specifications may be defined and other criteria
`may be applied.
`The accompanying drawings, which are incorporated in
`and constitute a part of this specification, illustrate various
`embodiments of the invention and,
`together with the
`description, serve to explain the principles of the invention.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 is a diagram of a functional overview of an overall
`system, according to an embodiment of the present inven-
`tion.
`
`FIG. 2 is a diagram of a wireless servlet, according to an
`embodiment of the present invention.
`FIG. 3 is a diagram of a mobile application development
`tool, according to an embodiment of the present invention.
`FIG. 4 is a diagram of modules for a mobile device access
`system, according to an embodiment of the present inven-
`tion.
`
`FIG. 5 is a diagram of functions available on an electronic
`mail module, according to an embodiment of the present
`invention.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`FIG. 6 is an example of a screen shot of a mail menu for
`a mobile device, according to an embodiment of the present
`invention.
`
`55
`
`FIG. 7 is an example of a screen shot of an action menu
`for a mobile device, according to an embodiment of the
`present invention.
`FIG. 8 is an example of a screen shot for a new memo for
`a mobile device, according to an embodiment of the present
`invention.
`
`60
`
`FIG. 9 is a diagram of functions available on a calendar
`module, according to an embodiment of the present inven-
`tion.
`
`FIG. 10 is a flowchart of a process for formatting a
`document in an appropriate format for a device, according to
`an embodiment of the present invention.
`
`13
`
`
`
`US 6,983,310 B2
`
`3
`DETAILED DESCRIPTION OF THE
`PREFERRED EMBODIMENTS
`
`Mobile services of the present invention enable desktop
`and web browsers (e.g., users of Lotus Notes”) to com-
`municate directly with one- and two-way wireless devices
`worldwide. The present invention allows for easy adminis-
`tration for multiple wireless services, while giving each user
`the ability to control when and what may be received on the
`user’s mobile devices. Users may get direct access to
`electronic mail, calendar, public directories and other infor-
`mation from their data-capable cell phone, interactive pager
`or other wireless device, via a wireless service provider.
`Wireless device access enables users to have instant access
`
`to critical information wherever the user may happen to be,
`via a wide range of communication devices and wireless
`networks.
`
`Users may also customize the information that is received
`and sent from mobile devices. For example, the user may
`select to receive emails (or other correspondences) from a
`particular individual or group of individuals. The user may
`also select to receive a particular type of types of emails (or
`other correspondences), such as the ones marked as high
`priority or otherwise designated as being important. Other
`variations may also be implemented. In addition, the user
`may customize responses, replies and other outgoing infor-
`mation from the user’s mobile device. For example, a user
`may select from a list of possible customized replies, which
`may include “will discuss later”, “will call later” and other
`replies. Customized replies may be predetermined for vary-
`ing types of actions. For example,
`for a stock broker,
`possible replies may include “buy”, “sell”, “hold”, etc.
`Various messaging services may be available through the
`present invention. For example, mobile services may con-
`vert mail messages in order to transmit the mail messages to
`mobile devices over a variety of data messaging networks
`including paging services, cellular phone networks, wireless
`data networks, and other networks. Users may compose mail
`messages using a mail template (or form) and address them
`to mobile device recipients using an email alias (e.g., “John
`Smith Mobile”). Users may compose messages with stan-
`dard mail memo and address messages to e-mail and mobile
`device recipients. Email messages may be routed normally
`and messages intended for pagers or other wireless devices
`may be routed through a foreign domain.
`The outbound message may be converted into an appro-
`priate format for the device and data network and may be
`forwarded via modem or
`IP connection to the service
`
`provider. The wireless service may then transmit the mes-
`sage to the appropriate mobile device. According to an
`embodiment of the present invention, a sender of the mes-
`sage may add acceptable replies at the end of an outgoing
`message to receive an immediate answer from the mobile
`device user. These replies may be sent to the mobile device
`along with the message. Mobile services may then poll the
`wireless service provider periodically looking for
`the
`response from the message recipient. Once received,
`the
`response may be deposited in the originator’s mail inbox.
`A wireless access server of the present invention allows
`mobile users to use a variety of devices to access informa-
`tion in servers via wireless IP service providers. A wireless
`access server may act as a proxy for handling communica-
`tions between the server and mobile devices, such as cellular
`phones, PDAs, two-way pagers equipped with text-based
`micro-browsers and other devices. Text-based browsers may
`use handheld device markup language (“HDML”) to send
`requests and receive data via wireless IP data network to
`
`4
`HDML servers which reside at the wireless service provid-
`er’s operations center. The HDML server may forward the
`requests to the MSD server via frame relay or SSL Internet
`connection. A wireless access server may interpret
`the
`request, act as a proxy between the mobile device and the
`server, and pull the requested information from one or more
`databases. The information may be formatted by the wireless
`access server and sent back to the mobile device.
`
`An end user may use a wireless device to navigate a series
`of menus to request information from the server. The wire-
`less access server may allow access to an end user’s mail
`account, calendar, public directory and other information.
`For example, an end user may view a personal mail inbox
`or search for messages by date, sender, subject or other
`criteria. The user may read mail messages, forward mes-
`sages to other recipients or fax hard copies of the messages
`to one or more fax machines. Other operations may also be
`performed. The user may also compose a new mail memo,
`delete unwanted messages from the mail database and save
`drafts of memos and other information.
`
`An end user may also perform various scheduling opera-
`tions. For example, the user may view daily schedules and
`send selected one or more schedules to one or more fax
`
`if a mobile user’s
`machines or other recipients. Thus,
`administrative assistant or colleague creates a new appoint-
`ment or edits an existing appointment,
`the user may be
`notified of the changes immediately. Users may also create
`new calendar entries,
`including appointments, events,
`reminders and other entries.
`
`A public directory may also be accessible to a user
`through a wireless device, such as a cell phone, PDA, pager
`or other device. Other directories maintained through the
`server may also be accessed. For example, a personal or
`private directory created by the user and maintained on the
`server may be accessed. A user may search the public (or
`other) directory by last or first name (or other criteria) and
`view the individual person records on the mobile device.
`Once the appropriate person is located and displayed, the
`user may automatically create an email message or initiate
`an outgoing call.
`According to another embodiment of the present inven-
`tion, users who are external to an entity’s messaging infra-
`structure may access the mobile services of the present
`invention. An entity may include a business, corporation or
`other group of individuals. Aweb site may be created which
`enables users from outside the entity to compose messages
`and receive responses from mobile device users. Acustomer
`or business partner may point their browser to the web site,
`compose a message, and select one or more recipients from
`a list of mobile device users in the entity, e.g., corporation.
`The list of registered device users may be controlled (or
`maintained) by a system administrator or other authorized
`entity. For example, individuals that may be accessible by
`customers, prospects and partners may be listed on the web
`site.
`
`Mobile services may provide a set of enhanced applica-
`tion interface extensions, enabling developers (or other
`authorized entities) to configure custom mobile applications
`for use on handheld, wireless and mobile devices. For
`example,
`to enhance an organization’s responsiveness to
`customers, users may enable an existing customer care
`solution to distribute messages (or other information) to a
`remote customer service representative via pager, cell phone
`or other mobile device, upon receipt of a predetermined
`trigger, such as a trouble ticket or other alert. The represen-
`tative may then send a reply to the customer’s email address
`instantly from the mobile device.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`14
`
`14
`
`
`
`US 6,983,310 B2
`
`5
`The present invention further enables IT managers, sys-
`tems administrators and other authorized entities with
`
`enhanced security features that may include the ability to
`restrict the devices and wireless services that are allowed to
`access information and/or data.
`Incompatibility issues may exist when enabling email
`functions and access to information from various databases
`
`on a server via a mobile device. For example, mobile devices
`may not have certain capabilities and viewing options avail-
`able on a desktop computer connected to a network. Physical
`and technological impediments may exist. For example, the
`screen of a mobile device, such as cell phone, may not be
`able to support a large amount of text due to the cell phone’s
`compact size thereby limiting the amount of information
`viewable at once. Also, certain texts,
`images and other
`attachments may not be easily viewable or accessed by a
`mobile device, due to limiting screen size and other capa-
`bilities. Also, as mobile devices may be used to access
`information from anywhere in the world, various time/date
`incompatibilities may exist as well.
`The present invention may create and customize style
`sheets that may be applied to data sent to and from a mobile
`device. The present invention provides a method and system
`for converting data sent to and from a mobile device in a
`format that may be understandable to a mobile device and
`viewable on a mobile device.
`
`FIG. 1 illustrates a diagram of a functional overview of an
`overall system for providing wireless device access, accord-
`ing to an embodiment of the present invention. One or more
`clients 110 may access a server 120 through a desktop
`terminal. In addition, one or more remote web clients 112
`may access server 120 through Internet 114 or other com-
`munication means. Server 120 may comprise various mod-
`ules, databases and other functions, such as tool 122 and
`servlet 124. In addition, one or more databases 1281—128N
`may store information related to electronic mail, directories,
`calendar, scheduling applications, and/or other applications.
`Other components, functions and databases may also be
`provided. Awireless access server 126 may be connected to
`a Mobile Server Provider 116, which may also communicate
`through Internet 114. Mobile Server Provider 116 provides
`communication with one or more mobile devices 130, such
`as a pager, a cell phone, a PDA and other wireless devices.
`This system enables a wireless device to access and interact
`with information stored and maintained on Server 120. The
`
`present invention further provides that the information trans-
`mitted to and from mobile device 130 will be in a format
`
`acceptable for display and access on a mobile device.
`The wireless implementation of the present invention may
`include a mobile application development tool 122 and a
`wireless servlet 124 which runs on Server 120. Other
`
`components, tools and applications may also run on Server
`120. Tool 122 may serve to allow the design of a mobile
`version of applications to run (or execute) successfully on
`various wireless devices. Servlet 124 may provide wireless
`device users real-time access to various databases and other
`
`information maintained on Server 120. Thus, the present
`invention provides an infrastructure that allows devices
`using other markup languages to be supported using the
`same or similar architecture.
`
`FIG. 2 illustrates a diagram of various subsystems of a
`wireless servlet, according to an embodiment of the present
`invention. Wireless Servlet 124 may include various sub-
`systems, such as servlet subsystem 210, request dispatcher
`212, request handlers 2141—214X, user application prefer-
`ences 216, page generator 218, application design manager
`220, XSLT processor 222, XML parser 224, XML-notes
`
`6
`translator 226, log 228, and administrator 230. Other sub-
`systems, modules, functions and components may also be
`implemented.
`Servlet subsystem 210 may be a class derived from a
`HTTP servlet base class that receives Get, Post and other
`requests from a device, such as a mobile device via a
`Wireless Application Protocol (“WAP”) server 240,
`for
`example, for providing applications over wireless commu-
`nication networks, through HTTP 242, TCP/IP 244 or other
`connection. It may be written in Java or other programming
`language. Servlet subsystem 210 may interface with request
`dispatcher 212. Server subsystem 210 may use JNI (or other
`mechanism) to pass request dispatcher 212 each request with
`user data, HTTP header information, session identifier and
`other information. In return, request dispatcher 212 may
`return a response along with session information and other
`information. Request dispatcher 212 may be responsible for
`retrieving the correction session context, invoking the cor-
`rect request handler 2141—214X for each request, and return-
`ing one or more responses to servlet subsystem 210. Request
`handlers 214 may process one or more requests from the
`device and send response pages back to the device, such as
`WML decks or WML script bytecodes. For example, request
`handlers 214 may exist for requests, such as login, open
`application, and send mail. Request handlers 214 may also
`update the session state and other information. Request
`handlers 214 may include requests related to basic opera-
`tions (e.g., open application, read, view, open document,
`read item, edit document, save document, delete document,
`create document, etc.), electronic mail (e.g., compose mail,
`send mail, save draft, etc.), calendar (e.g., process invite,
`read calendar, add calendar, schedule meeting, fax calendar,
`etc.), search functions (e.g., address search, find address,
`application search, etc.), and miscellaneous (e.g., edit user
`profile, save user profile, login, go to home deck, load script,
`move to folder, session term, etc.).
`User application preferences 216 may manage user-spe-
`cific settings for a particular application. The designer of a
`mobile application may include application specific mobile
`settings, such as user preferences, as part of the application
`design. Application specific settings may also include set-
`tings such as the default form or view to use. Page generator
`218 may be responsible for creating content pages, such as
`WML decks, which may be sent to a wireless device. It may
`use XML-Notes translator 226 to convert data to XML, the
`application design manager 220 to retrieve XSL style sheets
`and XSLT processor 222 to produce the output page.
`Application design manager 220 may be responsible for
`retrieving mobile application design information, such as
`XSL style sheets used for combining document data with
`forms.
`
`Application design manager 220 may also retrieve design
`elements from an application (or other) database. XSLT
`processor 222 may transform an XML document
`to a
`different XML document based on an XSL style sheet. For
`example, a document represented in a markup language may
`be transformed to a representation in WML using XSLT
`processor 222. XML Parser 224 may provide the capability
`to parse XML documents using DOM, SAX or other objects.
`XML-Notes translator 226 may be used to transform docu-
`ments and view data from an internal format
`to XML
`
`documents. Log 228 may track and maintain errors and other
`events. Administrator 230 may provide administration and
`configuration information, which may be stored in one or
`more databases, to other subsystems. Wireless-specific user
`settings may include the user’s wireless homepage and
`locale settings, such as the language used by the user.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`15
`
`15
`
`
`
`US 6,983,310 B2
`
`7
`FIG. 3 illustrates a diagram of various subsystems of a
`mobile application development
`tool, according to an
`embodiment of the present invention. A mobile application
`development tool may include various subsystems, such as
`user interface 310, compile manager 312, design filter 314,
`script compiler 316, style sheet generator 318, output pack-
`ager 320, log 322, XSLT processor 324, XML parser 326,
`and Notes—XML translator 328. Other subsystems, mod-
`ules, functions and components may also be implemented.
`User interface 310 may include a form which may be
`completed by an application designer (or other authorized
`entity) in order to identify the design elements that may be
`used in a mobile application. User interface 310 may pass a
`compile document
`to compile manager 312 in order to
`produce a compiled mobile application. Compile manager
`312 may receive one or more compile requests from user
`interface 310 where one or more other subsystems may
`complete the compilation process.
`Design filter 314 may validate that the design elements do
`not contain elements that are not needed or are not supported
`by the destination device (e.g., mobile device). Elements not
`needed may be removed and elements that are not supported
`may result in compile and/or other errors. Script compiler
`316 may convert a subset of @functions and JavaScript (or
`other script) to WML script (or other wireless script). Other
`scripts may also be converted to WML script. Style sheet
`generator 318 may use XSL style sheets to generate appli-
`cation specific XSL style sheets that may become part of a
`compiled mobile application and may be used by a wireless
`servlet at run-time. Other types of style sheets may also be
`generated. Output packager 320 may store a compile output
`in a special mobile class. Compile output may include an
`application digest, style sheets and script compilation units.
`Other information may also be included in a compile output.
`Log 322 may track and/or record errors and other events.
`XSLT processor 324 may transform an XML document
`representing a design element, such as a form, to an XSL
`style sheet based on another XSL style sheet. XML parser
`326 may provide the capability to parse XML (or other)
`documents using DOM, SAX or other objects. Notes—XML
`Translator 328 may transform design elements from an
`internal format to XML documents or other form of docu-
`ments.
`
`Style s