U.S. patent application number 09/885634 was filed with the patent office on 2002-07-04 for system and method for providing wireless device access to e-mail applications.
Invention is credited to Bentley, Thomas, Herot, Christopher, Lawson, Timothy, Rouse, Andrew, Zondervan, Quinton.
Application Number | 20020087628 09/885634 |
Document ID | / |
Family ID | 36263363 |
Filed Date | 2002-07-04 |
United States Patent
Application |
20020087628 |
Kind Code |
A1 |
Rouse, Andrew ; et
al. |
July 4, 2002 |
System and method for providing wireless device access to e-mail
applications
Abstract
A system 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 system and method provide
wireless device access where users may have access to an electronic
mail application from the user's mobile device, such as a mobile
phone, interactive pager, PDA or other wireless device, via a
wireless service provider. The e-mail application may enable users
to view messages in various presentation views. Sorting functions
and access to address books may be available. Other functionality
may include compose, fax, forward, reply, keep private and other
functions.
Inventors: |
Rouse, Andrew; (Andover,
MA) ; Zondervan, Quinton; (Boston, MA) ;
Bentley, Thomas; (North Chelmsford, MA) ; Lawson,
Timothy; (Stow, MA) ; Herot, Christopher;
(Newton Highlands, MA) |
Correspondence
Address: |
James G. Gatto
Mintz, Levin, Cohn, Ferris,
Glovsky and Popeo, P.C.
11911 Freedom Drive, Suite 400
Reston
VA
20190
US
|
Family ID: |
36263363 |
Appl. No.: |
09/885634 |
Filed: |
June 20, 2001 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
09885634 |
Jun 20, 2001 |
|
|
|
09750320 |
Dec 29, 2000 |
|
|
|
09885634 |
Jun 20, 2001 |
|
|
|
09750301 |
Dec 29, 2000 |
|
|
|
Current U.S.
Class: |
709/203 ;
455/556.1 |
Current CPC
Class: |
H04M 3/533 20130101;
H04M 2203/105 20130101; H04L 67/565 20220501; H04M 3/4938 20130101;
H04M 3/5322 20130101; H04L 51/58 20220501; H04M 3/493 20130101;
H04M 2201/38 20130101; H04M 2203/6009 20130101; H04L 67/04
20130101; H04L 67/02 20130101; H04M 2203/2072 20130101 |
Class at
Publication: |
709/203 ;
455/556 |
International
Class: |
G06F 015/16; H04M
001/00; H04B 001/38 |
Claims
What is claimed is:
1. A method of operating an e-mail application via networkable
media in a wireless client device, comprising the steps of: (a)
selecting at least one e-mail option for execution on the wireless
client device; and (b) using the e-mail application to communicate
transmissable media content via a wireless medium based on the at
least one e-mail option.
2. The method of claim 1, further comprising the step of: (c)
selecting at least one of a view option, a sort option, a compose
option, a fax option, a forward option, a reply option, a private
option, multiple view option, a search option, and a confirmation
option.
3. The method of claim 1, further comprising the step of: (d)
communicating via at least one of a Bluetooth protocol, a Wireless
Application protocol, a Global System Mobile protocol, and a
Wireless Markup Language protocol.
4. The method of claim 1, further comprising the step of: (e)
presenting the transmissible media content to a user according to
at least one presentation option.
5. The method of claim 4, further comprising the step of: (f)
presenting the transmissable media content in a quick view
format.
6. The method of claim 4, further comprising the step of: (g)
presenting the transmissable media content according to at least
one user selected criteria comprising at least one of date, subject
and author.
7. The method of claim 1, wherein the transmissable media content
comprises at least one of e-mail data, memo data, address data, and
search data.
8. The method of claim 1, further comprising the step of: (h)
communicating the transmissable media content from a data source
remote from the wireless client device.
9. The method of claim 1, wherein the transmissable media content
comprises content formatted according to at least one of SMTP, POP,
and IMAP.
10. A system for operating an e-mail application via networkable
media in a wireless client device, comprising: an input interface
that accepts at least one e-mail option for execution on the
wireless client device; and a processor unit, communicating with
the input interface, that is configured to use the e-mail
application to communicate transmissable media content via a
wireless medium based on the at least one e-mail option.
11. The system of claim 10, wherein the processor unit is
configured to select at least one of a view option, a sort option,
a compose option, a fax option, a forward option, a reply option, a
private option, multiple view option, a search option, and a
confirmation option.
12. The system of claim 10, wherein the communicating of the
transmissable media content comprises communicating via at least
one of a Bluetooth protocol, a Wireless Application Protocol, a
Global System Mobile protocol and a Wireless Markup Language
protocol.
13. The system of claim 10, wherein the processor unit, connected
to the input interface, is configured to present the transmissable
media content to a user according to the at least one presentation
option.
14. The system of claim 13, wherein the processor unit presents the
transmissable media content via a display screen of a wireless
client device in a quick view format.
15. The system of claim 13, wherein the processor unit presents the
transmissable media content via a display screen of a wireless
client device according to at least one user selected criteria
comprising at least one of date, subject, and author.
16. The system of claim 10, wherein the transmissable media content
comprises at least one of e-mail data, calendar data, address data,
form data, navigation data, and search data.
17. The system of claim 10, wherein the transmissable media content
is transmitted from a data source remote from the wireless client
device.
18. The system of claim 10, wherein the transmissable media content
comprises content formatted according to at least one of SMTP, POP,
and IMAP.
19. A system for operating an e-mail application via networkable
media in a wireless client device, comprising: input interface
means for accepting at least one e-mail option for execution on the
wireless client device; and processor means, communicating with the
input interface means, for communicating transmissable media
content via a wireless medium based on the at least one e-mail
option using the e-mail applications.
20. The system of claim 19, wherein the processor means is
configured to select at least one of a view option, a sort option,
a compose option, a fax option, a forward option, a reply option, a
private option, multiple view option, a search option, and a
confirmation option.
21. The system of claim 19, wherein the communicating of the
transmissable media content comprises communicating via at least
one of a Bluetooth protocol, a Wireless Application Protocol, a
Global System Mobile protocol, and a Wireless Markup Language
protocol.
22. The system of claim 19, wherein the processor means, connected
to the input interface means, is configured to present the
transmissable media content to a user according to the at least one
presentation option.
23. The system of claim 22, wherein the processor means presents
the transmissable media content via a display means of a wireless
client device in a quick view format.
24. The system of claim 22, wherein the processor means presents
the transmissable media content via a display means of a wireless
client device according to at least one user selected criteria
comprising at least one of date, subject, and author.
25. The system of claim 19, wherein the transmissable media content
comprises at least one of e-mail data, calendar data, address data,
form data, navigation data, and search data.
26. The system of claim 19, wherein the transmissable media content
is transmitted from a data source remote from the wireless client
device.
27. The system of claim 19, wherein the transmissable media content
comprises content formatted according to at least one of SMTP, POP,
and IMAP.
28. A storage medium for storing machine readable code, the machine
readable code being executable to operate an e-mail application via
networkable media in a wireless client device, the storage medium
comprising: selecting code that selects at least one e-mail option
for execution on the wireless client device; and communicating code
that uses the e-mail application to communicate transmissable media
content via a wireless medium based on the at least one search
option.
29. The storage medium of claim 28, further comprising option
selecting code that selects at least one of a view option, a sort
option, a compose option, a fax option, a forward option, a reply
option, a private option, multiple view option, a search option,
and a confirmation option.
30. The storage medium of claim 28, further comprising protocol
communicating code that communicates via at least one of a
Bluetooth protocol, a Wireless Application protocol, a Global
System Mobile protocol, and a Wireless Markup Language
protocol.
31. The storage medium of claim 28, further comprising presenting
code that presents the transmissible media content to a user
according to at least one presentation option.
32. The storage medium of claim 31, further comprising quick view
presenting code that presents the transmissable media content in a
quick view format.
33. The storage medium of claim 31, further comprising criteria
presenting code that presents the transmissable media content
according to at least one user selected criteria comprising at
least one of date, subject and author.
34. The storage medium of claim 28, wherein the transmissable media
content comprises at least one of e-mail data, memo data, address
data, and search data.
35. The storage medium of claim 28, further comprising remote
communicating code that communicates the transmissable media
content from a data source remote from the wireless client
device.
36. The storage medium of claim 28, wherein the transmissable media
content comprises content formatted according to at least one of
SMTP, POP, and IMAP.
Description
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a Continuation-in-Part of prior
application Ser. No. 09/750,320, filed Dec. 29, 2000. This
application is also a Continuation-in-Part of prior application
Ser. No. 09/750,301, filed Dec. 29, 2000. The entire disclosure of
the prior application is considered as being part of the disclosure
of the accompanying applications and are hereby incorporated by
reference therein.
FIELD OF INVENTION
[0002] The present invention relates generally to the field of
wireless device access and, in particular, to a system and method
for enabling users to send and receive messages through an e-mail
application from mobile devices and enabling users to access
server-based information using mobile devices over wireless data
networks.
BACKGROUND OF THE INVENTION
[0003] Generally, mobile devices provide various communication
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 Personal Digital Assistant ("PDA"), mobile phone, pager,
etc. Users may also receive alerts and predetermined triggers, such
as stock movement and other events. However, 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.
[0004] 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 modifications. Oftentimes, users may need to
access critical data and other information stored on the user's
personal computer 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.
[0005] Mobile devices and wireless networks rely on a broad
spectrum of technology. In comparison to personal or desktop
computers, each class of mobile device may currently represent a
unique hardware and software platform. For example, mobile phones
and PDAs may have varying capabilities and limitations as computing
devices and client devices accessing corporate and other networks.
The wireless networks that support mobile devices may be similarly
diverse.
[0006] 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.
[0007] These and other drawbacks exist with current systems.
SUMMARY OF THE INVENTION
[0008] 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.
[0009] The present invention provides interactive access to various
databases and directories from web-enabled mobile devices, such as
mobile phones, pagers, and PDAs. The present invention enables
users (e.g., users of Lotus Notes.TM.) to remotely interact with
messaging infrastructure using a variety of mobile devices over
wireless data networks. The present invention offers broad sets of
features that extend the reach of services to small, wireless
devices, such as mobile 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.
[0010] The present invention provides a system and method for
providing wireless device access where users may have direct access
to electronic mail, calendar, public directories and other
information from the user's mobile device, such as a data-capable
mobile phone, interactive pager or other wireless device, via a
wireless service provider.
[0011] 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 messages to other recipients
or fax hard copies of the messages to one or more fax machines. The
user may also compose a unread mail memo, delete unwanted messages
from the mail database and save drafts of memos and other
information.
[0012] An end user may also perform various scheduling operations.
For example, the user may view daily schedules and send selected
one or more schedules to one or more fax machines or other
recipients. Users may also create new calendar entries, including
appointments, events, reminders and other entries.
[0013] A public directory may also be accessible to a user through
a wireless device, such as a mobile 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 electronic mail
(e-mail) message or initiate an outgoing call.
[0014] Multiple types of forms may be used by the present invention
for various applications. Different types of forms may include
facsimile, memorandum, invitation, user profile and other
applications. Forms for each application may include predetermined
form fields that are specific to each application. Forms may be
created, modified and forwarded (or sent) to one or more selected
recipients. Other operations may also be performed.
[0015] Application navigation may occur through views and folders
where the user may open a selected document from a list of views
and folders.
[0016] 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
[0017] FIG. 1 is a diagram of a functional overview of an overall
system, according to an embodiment of the present invention.
[0018] FIG. 2 is a diagram of a wireless servlet, according to an
embodiment of the present invention.
[0019] FIG. 3 is a diagram of a mobile application development
tool, according to an embodiment of the present invention.
[0020] FIG. 4 is a diagram of modules for a mobile device access
system, according to an embodiment of the present invention.
[0021] FIG. 5 is a diagram of functions available on an electronic
mail module, according to an embodiment of the present
invention.
[0022] 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.
[0023] 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.
[0024] 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.
[0025] FIG. 9 is a diagram of functions available on a calendar
module, according to an embodiment of the present invention.
[0026] 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.
[0027] FIG. 11 is a flowchart of a method for formatting a document
in an appropriate format for a mobile device according to an
embodiment of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0028] Mobile services of the present invention enable desktop and
web browsers (e.g., users of Lotus Notes.TM.) to communicate
directly with one- and two-way wireless devices worldwide. The
present invention allows for easy administration 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 e-mail, calendar, public directories and
other information from their data-capable mobile 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.
[0029] Users may also customize the information that is received
and sent from mobile devices. For example, the user may select to
receive e-mails (or other correspondences) from a particular
individual or group of individuals. The user may also select to
receive a particular type of types of e-mails (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 information 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 varying types of actions. For example, for a
stock broker, possible replies may include "buy", "sell", "hold",
etc.
[0030] Various messaging services may be available through the
present invention. For example, mobile services may convert e-mail
messages in order to transmit the mail messages to mobile devices
over a variety of data messaging networks including paging
services, mobile 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 e-mail
alias (e.g., "John Smith Mobile"). Users may compose messages with
standard mail memo and address messages to e-mail and mobile device
recipients. E-mail messages may be routed normally and messages
intended for pagers or other wireless devices may be routed through
a foreign domain.
[0031] The outbound message may be converted into an appropriate
format for the device and data network and may be forwarded via
modem or Internet Protocol ("IP") connection to the service
provider. The wireless service may then transmit the message to the
appropriate mobile device. According to an embodiment of the
present invention, a sender of the message 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 e-mail inbox.
[0032] A wireless access server of the present invention allows
mobile users to use a variety of devices to access information in
servers via wireless IP service providers. A wireless access server
may act as a proxy for handling communications between the server
and mobile devices, such as mobile phones, PDAs, two-way pagers
equipped with text-based micro-browsers and other devices.
Text-based browsers may use Wireless Markup Language ("WML"),
Handheld Device Markup Language ("HDML"), or other language to send
requests and receive data via wireless IP data network to HDML
servers which reside at the wireless service provider's operations
center. The HDML server may forward the requests to a server (e.g.,
a Mobile Service for Domino ("MSD") server offered by Lotus
Development Corporation) via frame relay or Secure Sockets Layer
("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.
[0033] An end user may use a wireless device to navigate a series
of menus to request information from the server. The wireless
access server may allow access to an end user's mail account,
calendar, public directory and other information.
[0034] 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 messages 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
unread mail memo, delete unwanted messages from the mail database
and save drafts of memos and other information.
[0035] An end user may also perform various scheduling operations.
For example, the user may view daily schedules and send selected
one or more schedules to one or more fax machines or other
recipients. Thus, if a mobile user's administrative assistant or
colleague creates a new appointment 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.
[0036] A public directory may also be accessible to a user through
a wireless device, such as a mobile 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 e-mail message or
initiate an outgoing call.
[0037] According to another embodiment of the present invention,
users who are external to an entity's messaging infrastructure may
access the mobile services of the present invention. An entity may
include a business, corporation or other group of individuals. A
web site may be created which enables users from outside the entity
to compose messages and receive responses from mobile device users.
A customer 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.
[0038] Mobile services may provide a set of enhanced application
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,
mobile phone or other mobile device, upon receipt of a
predetermined trigger, such as a trouble ticket or other alert. The
representative may then send a reply to the customer's e-mail
address instantly from the mobile device.
[0039] The present invention further enables IT managers, systems
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.
[0040] Incompatibility issues may exist when enabling e-mail
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 available on a
desktop computer connected to a network. Physical and technological
impediments may exist. For example, the screen of a mobile device,
such as mobile phone, may not be able to support a large amount of
text due to the mobile 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 capabilities.
Also, as mobile devices may be used to access information from
anywhere in the world, various time/date incompatibilities may
exist as well.
[0041] 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.
[0042] FIG. 1 illustrates a diagram of a functional overview of an
overall system for providing wireless device access, according 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 communication means. Server 120 may comprise various
modules, databases and other functions, such as tool 122 and
servlet 124. In addition, one or more databases 128.sub.I-
128.sub.N may store information related to electronic mail,
directories, calendar, scheduling applications, and/or other
applications. Other components, functions and databases may also be
provided. A wireless 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 mobile 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 transmitted to and from mobile device 130 will be in a
format acceptable for display and access on a mobile device.
[0043] 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.
[0044] 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 subsystems,
such as servlet subsystem 210, request dispatcher 212, request
handlers 214.sub.1-214.sub.X, user application preferences 216,
page generator 218, application design manager 220, XSLT processor
222, XML parser 224, XML-notes translator 226, log 228, and
administrator 230. Other subsystems, modules, functions and
components may also be implemented.
[0045] Servlet subsystem 210 may be a class derived from a Hyper
Text Transport Protocol ("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 communication
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 Java Native Interface ("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 correct session context, invoking
the correct request handler 214.sub.1-214.sub.X for each request,
and returning 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 operations (e.g., open application, read, view,
open document, read item, edit document, save document, delete
document, create document, etc.), electronic mail (e.g., compose,
send, save, etc.), calendar (e.g., invite, read, add, schedule
meeting, fax, etc.), search functions (e.g., address search, find
address, application search, etc.), and mismobileaneous (e.g., edit
user profile, save user profile, login, go to home deck, load
script, move to folder, session term, etc.).
[0046] User application preferences 216 may manage user-specific
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 settings 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 Extensible Markup Language
("XML")-Notes translator 226 to convert data to XML, the
application design manager 220 to retrieve Extensible Stylesheet
Language ("XSL") style sheets and XML Stylesheet Language
Transformations ("XSLT") processor 222 to produce the output
page.
[0047] 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 Document Object Module ("DOM"), Simple Application Program
Interface for XML ("SAX") or other objects. XML-Notes translator
226 may be used to transform documents 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.
[0048] 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 packager 320, log 322, XSLT processor 324,
XML parser 326, and Notes--XML translator 328. Other subsystems,
modules, functions and components may also be implemented. The
Mobile Application Development tool may be used by a designer to
make views/folders available to a user using a wireless device.
[0049] 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.
[0050] 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 such as LotusScript may
also be converted to WML script. Style sheet generator 318 may use
XSL style sheets to generate application 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.
[0051] 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
documents.
[0052] Style sheets may be both input and output of a mobile
application compilation process. Style sheets may include view,
read document, edit document, create document, forward document,
read item, read mail, edit mail, create mail, read invitation, read
calendar, edit calendar, create calendar, search address, search
application, user profile and others.
[0053] FIG. 4 is a diagram 400 of modules available on a mobile
device access system, according to an embodiment of the present
invention. A module may be a processor of related task requests
from users of mobile devices. Various modules and functions may be
available through the system of the present invention. Modules may
include e-mail module 410, calendar module 412, forms module 414,
view/folders module 416, default and custom actions module 418,
customization module 420, search module 422 and address book module
424. Other modules may also be implemented.
[0054] E-mail module 410 may access the functionality of address
book module 424. This may be achieved using Application Calling
developed by the Lotus Development Corporation. Application Calling
enables a user using a first application accessible from a wireless
device to access a service of a second application. The user may
then return to the first application without losing the content of
the first application. For example, e-mail and calendar
applications may use Application Calling for name and telephone
number searches via address book module 424. Thus, Application
Calling may simulate process forking on a wireless device.
[0055] Address book module, as shown in FIG. 4, may provide the
user with a list of recipients for an e-mail or other
correspondence, according to an embodiment of the present
invention. The address book may display information of individuals
stored in a public, private, personal and other directories.
Information may include a list of individuals, including full name,
e-mail address, various phone numbers, address information, aliases
and other personal and contact information.
[0056] The present invention allows WAP browser enabled wireless
devices access to various applications. Users may access e-mail,
calendar, personal, public and other directories from mobile
devices, such as mobile phone, interactive pager, PDA, via a
wireless service provider.
[0057] As various applications may be supported, a user may
customize the type of information, the format of the information
and other characteristics related to information received on a
mobile device. For example, a user may customize various rules or
priority instructions for viewing received information on a mobile
device. A user may request a rule where e-mail (or other
information and correspondences) received from a particular person
or group of persons may be sent to an identified mobile device.
Alerts may also be programmed for a particular person or group of
persons or other predetermined triggering events (e.g. stock
activity). The user may also limit messages (or other
correspondences) sent to an identified mobile device to messages
marked with high (or other level of) priority or otherwise
identified as being important. Viewing options may include enabling
the user to choose which features (or lines) of a message that the
user would like to make viewable. For example, the user may want to
limit incoming message views to select fields, such as From field
and subject line field, which may include up to a predetermined
number of characters. Other customized rules and viewing options
may be defined by the user and applied by the system of the present
invention. Other customizations and options may be available.
[0058] FIG. 5 illustrates various functions and operations may be
available through an e-mail module, according to an embodiment of
the present invention. E-mail module 410 may include mail menu 510,
action menu 512, draft lists 514, trash lists 516, new memo 518 and
search 520. Other functions and operations may also be
available.
[0059] Draft lists may be displayed, as shown by 516 in FIG. 5, to
the user, according to an embodiment of the present invention.
Draft lists may be displayed as a list of draft view messages where
messages may be displayed in descending date order. Other viewing
orders may also be implemented. Drafts may include messages or
other memos that have not been completed or sent yet.
[0060] Trash lists may be displayed, as shown by 518 in FIG. 5, to
the user, according to an embodiment of the present invention.
Trash list may display a list of messages in a trash folder,
according to a particular order, which may include descending order
by date, ascending order by date, or other specified order. E-mails
or other messages that have been deleted may be stored in a trash
folder.
[0061] New memo functionality, as shown by 520 in FIG. 5, may be
available, according to an embodiment of the present invention.
FIG. 8 illustrates an example of a screen for composing a new memo,
as displayed on a mobile device, according to an embodiment of the
present invention. A new memo may include various fields. For
example, a recipient field may be identified in line 810. One or
more recipients may be identified as well as groups of recipients.
An information copy of the memo may be sent to an identified
recipient in line 812. Line 814 may enable the user to send one or
more recipients a blind information copy of the memo where other
recipients may not see the one or more names (or other identifier)
specified in line 814. Subject field 816 enables the user to enter
text for the subject of the outgoing mail message. Body field 818
may contain the text for the body of the outgoing mail message.
Memo options may include sending the message, canceling the
message, saving the message as a draft and other options. Other
fields and operations may be implemented. According to an
embodiment of the present invention, each field (e.g., 810, 812,
814, 816 and/or 818) may be a separate screen on a mobile
device.
[0062] Search functions, as shown by 522 in FIG. 5, may also be
available to the user, according to an embodiment of the present
invention. Search criteria may include searching messages (e.g.,
e-mails, memos, and/or other correspondences and documents) based
on various fields, such as sender, date, subject and other parts of
a message. Other search criteria may also be used. For example, a
user may select the sender (or from) field to enter text (e.g., a
character, string of characters, etc.) which may be used to match
the sender (or from) field in documents in a mail or other
database. The search may use a "contains" mechanism which may give
a positive match on any document which has a sender (or from) field
containing the text string provided. A user may also select a
subject field to enter text which may be used to match the subject
field in documents in a mail or other database. The search may use
a "contains" mechanism which may give a positive match on any
document which has a subject field containing the text string
provided. In addition, the user may select a date field to enter a
date which may be used to match the delivered (or sent) date in
documents in a mail or other database. The search may use a "since"
mechanism which may give a positive match on any document which has
a delivered (or sent) date greater than or equal to the data
provided. Other search mechanisms may also be implemented. Other
fields may also be used to search from. Numeric strings and/or text
and number combination strings may also be used as search
criteria.
[0063] FIG. 6 illustrates an example of a mail menu as displayed on
a mobile device, according to an embodiment of the present
invention. The mail menu screen 600 may include various viewing
options which the user may select. Viewing options may include
viewing unread mail by date 610, unread mail by author 612, inbox
by date 614, inbox by author 616, drafts 618, trash 620, and all
documents 622. Other viewing options may also include new memo 624,
search all 626 and other views.
[0064] Unread mail may be displayed to the user where the user may
specify a criteria for a display list, such as unread mail by date,
by author, by subject and other criteria. For example, unread mail
by date 610 may display a list of unread messages from an inbox
folder to the user, received on a particular date or range of
dates. Information associated with each message may be displayed to
the user, such as the subject of each message. A user may also
select to view the first predetermined number of words or letters
of the message and/or subject for a quick view. A viewing order may
be implemented to display the messages, such as chronological,
reverse chronological, alphabetical and other viewing orders.
Unread mail by author 612 may display a list of messages according
to a specified sender (or originator). Unread mail by author 612
may also display messages according to a string entered, such as
part of an identifier (e.g., name) associated with one or more
senders. The string may include characters of the last name, first
name, or other identifier of one or more senders.
[0065] Inbox by date 614 may display a list of messages to the user
where all messages from an inbox folder may be included.
Information associated with each message may be displayed, such as
subject, author, etc. Reverse chronological or other identified
order may be used to display the messages. Inbox by author 616 may
display messages by an identified author or authors with a common
string of characters or other criteria.
[0066] Drafts view 618 may display a list of messages to the user
where some or all messages from a drafts folder may be included.
Information associated with each message may be displayed, such as
subject, author, etc. Trash view 620 may display a list of messages
from a trash folder. Information associated with each message may
be displayed, such as subject, author, etc. All documents view 622
may display all current documents available to the user. Various
display orders may be used, such as chronological, reverse
chronological, alphabetical, etc.
[0067] New memo view 624 may allow the user to create and send a
new outgoing mail message. Search all view 626 allows the user to
search the mail database for all messages which match a
criteria.
[0068] Phone keys 640 may serve as short cut keys for moving to the
option with the corresponding number, thus selecting the option and
invoking it. Arrow 630 indicates to the user which option may be
currently invoked. The invention may determine whether, for
example, a microbrowser enables phone keys 640 to serve as short
cut keys. If this feature is enabled, the invention may generate
markup language deck based on this determination.
[0069] FIG. 7 illustrates an example of an action menu for a mail
application as displayed on a mobile device, according to an
embodiment of the present invention. The action menu screen 700 may
include various action options which the user may select. Action
options may include multiple selection 710, reply 712, delete 714,
fax 716, forward 718, search 720, mail menu 722. Other action
options may also be implemented.
[0070] Multiple selection 710 enables the user to act on multiple
selected messages at once. For example, the user may request that
two or more messages be deleted, moved, or otherwise acted on with
a single request. Reply 712 enables the user to reply to a selected
message. Various reply options may also be available. For example,
a user may select to reply, reply with history, reply to all, and
reply to all with history. User defined customized replies may also
be available. Other reply options may be available. Delete 714
enables the user to delete a selected message where the deleted
message may be moved to a trash folder. In addition, a delete
message may be displayed to the user to confirm this action. Fax
716 may send the selected message to one or more fax machines
specified by the user. Forward 718 enables the user to forward a
selected message in a new memo. Search 720 enables the user to
search the current view for messages which match the supplied
criteria. A search string entered by the user is matched if the
field contents contain the entered search string. Mail menu 722
navigates the user back to the mail application menu. Other options
may be available to the user, such as access to a calendar
application, address book application and other applications.
[0071] Phone keys 740 may serve as short cut keys for moving to the
option with the corresponding number, thus selecting the option and
invoking it. Arrow 730 indicates to the user which option may be
currently invoked. The invention may determine whether, for
example, a microbrowser enables phone keys 740 to serve as short
cut keys. If this feature is enabled, the invention may generate
markup language deck based on this determination.
[0072] FIG. 9 illustrates various functions and operations that may
be available through a calendar module, according to an embodiment
of the present invention. A calendar module 412 may provide a menu
of options. For example, view 910 may provide viewing options, such
as daily view, weekly view, monthly view and other selected time
frames. Also, add appointment 912 may enable a user to add one or
more appointments, delete appointment 914 may enable a user to
delete one or more appointments and modify appointment 916 may
enable a user to modify one or more existing appointments. Other
operations are also available. A user may schedule one or more
meetings with various participants through schedule meeting 918.
Intended participants may include individuals stored in databases,
directories and/or address books. One or more calendar entries and
other various information may be forwarded/sent to one or more
recipients through send 920. For example, selected calendar entries
may be faxed or e-mailed to recipients. Other operations may also
be available.
[0073] Various functions and operations may be available through a
Forms module 414, according to an embodiment of the present
invention. The present invention may create forms that the end user
may use to display, edit or create new documents on a wireless
device. Also, these forms may include subforms. When an application
designer creates mobile versions of existing forms in a wireless
access application, the alias for the mobile forms may be the
existing form name or the existing form alias name. For example, an
e-mail application may have a mobile form named MobileMemo, which
may be a modified version of the Memo form. The alias for the
MobileMemo form may be "Memo." This allows documents created on a
mobile device and saved on the server to be viewed properly from
the client or a web browser. It also allows form names saved in
documents to be matched with the names of mobile forms.
[0074] An application designer may also create multiple forms with
the same alias. This may be useful for allowing the end user to
choose the form to use to display or edit documents. The
application designer may also designate that a form be used only
for reading or only for editing documents. Other restrictions may
also be applied. Default forms may be specified as well.
[0075] Form may support varying components, such as text, field,
subform, default actions (e.g., categorize, send document, forward,
move to folder, remove from folder), custom actions, images, and
other actions.
[0076] Form properties used in a wireless access application form
may include name, which may be used as a form name when selecting a
form to display a document on a mobile device; alias, which may be
used as a form name in a document when creating a new document on a
mobile device; type, which may be used when creating a response
document on a mobile device; automatically enable edit mode; and
default read access for documents created with the form, which may
be used to determine whether the user is allowed to use the form on
the mobile device. Other form properties may also be available.
[0077] Varying fields may be supported in a form or subform, such
as rich text, text, date/time, number, checkbox, radio button,
listbox, authors, names, readers and other fields. Rich text fields
may be treated as simple text fields when sent to a mobile device
where the text may be used and any embedded objects may be ignored
or otherwise suppressed. However, attachments and other objects may
be addressed. For example, when an attachment appears in a rich
text field, a text replacement string may be substituted for the
attachment in the text stream sent to the mobile device. Rich text
fields in a wireless access application may also be assigned a
truncation property, where a predetermined number of bytes of field
(or number of characters) contents may be sent to the mobile
device.
[0078] Text fields may allow for multiple values, for example. Text
fields in a wireless access application may also be assigned a
truncation property in a similar manner as Rich text fields. Text
fields may also be assigned a "Mail To" property. If a form has a
text field with a "Mail To" property, then whenever a document is
displayed with this form a "Mail" action may be available on the
mobile device. The mail action may allow the user to create an
e-mail (or other message) with the "To" field pre-filled with the
value of this field. If more than one field in a form has the "Mail
To" property, then the user may be presented with the available
e-mail address choices.
[0079] Text fields in a wireless access application may also be
assigned a "Dial Phone" property. If a form has a text field with a
"Dial Phone" property, then whenever a document is displayed with
this form, a "Call" action may be available on the mobile device.
The "Call" action may allow the user to dial the phone number
contained in this field. If more than one field in a form has the
"Dial Phone" property, then the mobile device user may be presented
with the available phone number (or other contact information)
choices.
[0080] Date/Time fields format may be determined from the mobile
user's locale settings. Local time zone may also be determined from
the mobile user's locale settings and the time may be displayed on
the device as local time.
[0081] Number fields may support field properties, such as number
format (e.g., decimal, percent, currency); decimal places; decimal
symbol; thousands separator; currency symbol and other field
properties.
[0082] Multiple types of forms may be used by the present invention
for various applications. Different types of forms may include
facsimile, memorandum, invitation, user profile and other
applications. Forms for each application may include predetermined
form fields that are specific to each application. Forms may be
created, modified and forwarded (or sent) to one or more selected
recipients. Other operations may also be performed.
[0083] For example, forms may be displayed as brief forms and full
forms. Other options are also available. For example a full form
may display all the fields available while a brief form may display
the fields selected (or customized) by the user.
[0084] For example, a brief memo view may display a selected
portion of a memo, such as the body of the text. If the body field
is longer than the screen size, then a portion of the body field
may be displayed. Other fields may be selected by the user. A full
memo view may include a from field, date field, send to field, copy
to field, subject field, body field and other fields. Actions
associated with a memo may include reply, delete, fax, forward,
switch view and other actions and viewing options.
[0085] For example, a brief invitation view may display one or more
selected fields or portions of an invitation, such as start date
field, end date field, and subject field, for example. Other fields
or portions of the invitation may be selected. A full invitation
view may include chair field, start date field, end date field,
location field, subject field, comments field, body field and other
fields. Actions associated with an invitation may include accept,
decline, fax, switch view, and other actions and viewing
options.
[0086] A fax form may include a name prompt; fax number, comment
and other fields. A fax menu may include send, cancel, save as
draft and other operations. The fax may be sent to one or more
recipients selected from an address book, directory or other
database.
[0087] Privacy features may also be available in wireless access
applications of the present invention. For example, a "Prevent
Copying" option may be used when composing an e-mail message or
other document or correspondence. A message (or document)
designated with the "Prevent Copying" option may not be forwarded
or faxed. Various privacy options and levels of privacy may be
available. For example, if a user selects multiple messages to
forward or fax, those messages designated as private may be ignored
(e.g., those messages may not be forwarded or faxed). If all
selected messages are designated as private, then an error message
may be displayed to the user. If a user elects to reply with
history to a message designated as private, then the reply may be
sent without the contents of the original message. An error message
may or may not be given. If a message has a different level of
privacy attached to it, then forwarding and reply with history may
work normally, but faxing may be prevented. Other levels and forms
of privacy may be designated for different messages, documents and
applications.
[0088] An application designer may create views and folders,
through View/Folders module 416, that the end user may use to list
documents and other correspondences, for example. Each wireless
access application may contain at least one view or folder. A view
may contain one or more various components and properties, such as
name, view selection formula, default actions, columns and other
actions. According to an embodiment of the present invention,
application navigation may occur through views and folders where
the user may open a selected document from a list of views and
folders.
[0089] Columns may support properties, such as column value, title,
sort order, click on header to sort, multi-value separator, number
formats (e.g., general, fixed, currency, percentage, etc.), decimal
places, date and time content (e.g., date and time, date only, time
only) and other properties. Formatting information for number
column values may be determined from a mobile user's local
settings, such as decimal symbol, thousands separator, currency
symbol and other formatting information. The format for date/time
column values may be determined from a mobile user's locale
settings. Locale time zone may also be determined from the mobile
user's locale settings and time may be displayed on the device as
local time. Column contents may be designed so that a maximum of a
predetermined number of characters may be display for any column.
If necessary, field values used as column content may be
truncated.
[0090] An application designer may include a Using Database
Document with a wireless access application. This may cause an
action menu item to be included with each view/folder that may be
used to read the Using Database Document. The components allowed in
a Using Database Document may be text and bitmap images. Other
components may also be available.
[0091] A wireless access application may contain default, custom
and other actions, which may be accessed through Default and Custom
Actions module 418. Default actions may be supported in one or more
of forms, views and folders. Custom actions may be supported in
forms and subforms. Custom actions may be written using a
particular language, such as WML script or other language. For an
action to be included in mobile wireless access application, the
display property "Include action in Action menu" or similar display
property may be selected for the action.
[0092] Default actions may support various actions, such as
categorize, send document, forward, move to folder, remove from
folder and other actions. Categorize action may add one or more
categories to the categories field of a document. Send document
action may add one or more recipient names to a send to field of a
document. Forward action may add one or more recipient names to a
send to field of a memo form and add a document to the body field.
Move to folder action may add a document to a folder. Remove from
folder action may remove a document from a folder.
[0093] A wireless access application may contain script in certain
contexts, according to an embodiment of the present invention.
Various components may be available for scripting, such as form
events; custom actions; field defaults, input translation and input
validation; computed fields; column values and other components. A
subset of @function language ("FL") may be supported as well as
Lotus Script and WML Scripts ("WMLS"). Other scripts may also be
supported.
[0094] WML Script may be supported for certain events. In order to
access field values, a WML browser and functions may be used.
Because the WML syntax for variable names may differ from the
syntax for field names, name mapping may be performed according to
various predetermined rules.
[0095] According to another embodiment of the present invention, a
wireless page generator may format the document, view, page (or
other information) into an appropriate format for the device. A
wireless page generator of the present invention may receive
requests for and generate pages of data to be sent to and displayed
on a wireless device. A page generator may also encompass a XML to
WML translator. For example, the data may be in WML for display on
a WAP phone or other mobile device. In another example, it may be
data intended for an Mode, HDML or other device. Other applications
may be implemented.
[0096] Requests for a page of data may come from one or more
request handlers. A page of information requested for display on
the device may be of several different types. For example,
information requested for display may include a document from a
database formatted by a form. To create this type of page, the page
generator may take the appropriate data from the database and
transform the data based on a style sheet specific to the type of
device it is to be displayed on.
[0097] Also, information requested for display may include a list
of documents in a database, selected and formatted by a view or
folder. This process may be similar for documents and forms. A list
of entries in the view may be obtained from a database, the details
of those entries may be read, and the data may then be transformed
by a style sheet into the requested (or desired) format.
[0098] The page of information requested may also encompass a fixed
(or predetermined) pre-generated page of data, such as a database
containing a "Using" or "Help" document. The page of information
may also include files to be sent to the phone (or other device),
for example, a script file required (or requested) by the page on
the phone. These may be scripts defined in a form, but in WML they
may be sent separately to the phone (or other mobile device).
Another example may include an image file.
[0099] The page of information requested may also include a user's
home page, listing mobile applications a user may be authorized to
access and other information. The options available on the user's
home page, and the associated URL to open may be stored in a
document in an administration or other database. This may be merged
with an appropriate Home Page style sheet to create a page specific
to the device.
[0100] The page of information requested may also include a mobile
applications main menu. For example, an e-mail application may
offer "read unread mail," "create e-mail," etc. Another example may
include error messages, such as "error opening database" or
"authorization to open database denied." The error message text may
be generated from an appropriate resource file. This text may then
be transformed by a style sheet into the format required (or
requested) by a device (e.g., WML).
[0101] A database designer (or other authorized entity) may define
one or more mobile applications in a database. According to an
embodiment of the present invention, each mobile application may
create an "App Digest" in a database. An App Digest may be a design
element for a database. Examples of forms may include "e-mail" or
"calendar." One function of the App Digest may be to hold
information regarding the application and a copy of the design
elements used by the mobile application in a format required (or
desired) by the mobile service.
[0102] Mobile design elements (e.g., document and view style
sheets, pre-generated pages and scripts) may be saved in the App
Digest as attached files. These mobile design elements may be
intended to be derived from equivalent design elements in a
database (e.g., forms, views, help, etc.). A compiler may
automatically generate these items from forms and views designed by
an application designer. Also, style sheets and pages may be hand
coded.
[0103] A wireless App Digest may contain various attachments with
names in a format which may include device type and device model.
Files may be in a structured field format containing various design
elements (e.g., style sheets, pre-formatted pages, etc.) and
associated information (for example, each style sheets may need an
associated form name, such as "memo"). If a design element is not
found in the appropriate device type/device model file, then the
page generator may look in a generic device type file. In this way,
if there are significant differences between devices of the same
type, the relevant style sheet may be included in each of the files
whereas if each model behaves the same (or similarly), a single
style sheet may be put in a generic device type file.
[0104] If a request handler requests a pre-generated page or a
script, the appropriate page of data may be read from the App
Digest and returned to the request handler. If a request handler
requests a document, a view or any other page that may be formatted
by a style sheet, the page generator may obtain and merge
information from the sources. Thus, the values of the fields in the
document may be read and formatted on a screen according to the
layout specified in the form. The wireless page generator may
format the document, view, page (or other information) into an
appropriate format for the device.
[0105] FIG. 10 illustrates a process for formatting a document (or
other page of data) in an appropriate format for a device,
according to an embodiment of the present invention. At step 1010,
the document may be pre-processed to replace one or more elements
that may not be able to be displayed or otherwise hindered (e.g.,
encrypted fields or file attachments), which may include text
indicating what has been removed (or altered). Also, data types
that may not be able to be represented on a device (e.g., date/time
fields) may be converted into text. For example, date/time fields
may be replaced with text giving the date in the user's local time
zone, which may be formatted according to date/time zone
preferences. In another example, fields may be truncated that have
been marked in the design as being truncatable, to a maximum mobile
size. Fields that have not been marked as truncatable may be tested
for size based on the maximum size of WML the device may accept.
Also, the size the style sheet can be without this data may also be
considered.
[0106] At step 1012, a mobile XML description may be obtained of a
document data or view. At step 1014, an XSL style sheet may be read
from an App Digest. At step 1016, the appropriate style sheet may
be compiled (or generated). At step 1018, the XML document may be
transformed according to the style sheet using an XSLT processor
and return the resulting page of data to a request handler or other
authorized entity or unit. Alternatively, the process may proceed
directly from step 1014 to step 1018 (as indicated by the dashed
line) if the stylesheet does not require further processing.
[0107] FIG. 11 illustrates a method for formatting a document (or
other page of data) in an appropriate format for a mobile device
according to another embodiment of the invention. At step 1110, a
document may be pre-processed to replace one or more elements that
may not be able to be displayed or are otherwise hindered (for
example, encrypted fields or file attachments), that may include
text indicating portions that may have been removed are
altered.
[0108] This embodiment may enable a servlet to compile a design
stylesheet at run-time for a new type of mobile device.
[0109] At step 1112, a mobile XML description may be obtained of a
document data or view. At step 1114, an XSL stylesheet may be read
from an Appdigest. At step 1116, an XSL stylesheet may be
retrieved. Step 1118 may then retrieve a design form or view for
the XSL stylesheet. In step 1120, an XML description for the design
may be obtained. After obtaining the XML description, step 1122 may
then compile a stylesheet based on the XSL stylesheet retrieved in
step 1116 and the design form or view retrieved in step 1118. Step
1124 may then transform the XML document to the stylesheet using an
XSLT processor and return the resulting page of data to a request
handler or other authorized entity or unit.
[0110] For further improvement, the design elements of an
application may be cached by the page generator, since these items
may not change frequently. In the case of style sheets, the
compiled style sheet may be cached. In addition to the design
elements required (or desired) for a particular application, there
may also be a number of common design elements required (or
desired) by the mobile service. These may be stored in a mobile
application form in an administrative (or other) database. Design
elements included in this application may include a style sheet to
build an error message to send to a device and a style sheet to
build a home page. Other design elements may also be designated as
such.
[0111] Multiple mobile device types may be supported through the
present invention. According to an embodiment of the present
invention, a generic output may be provided where the specifics
related to the receiving mobile device may be irrelevant. For
example, regardless of the model, type or series number of the
mobile device being used, information sent to the mobile device may
be viewed properly. Further the information may be customizable by
the user.
[0112] Mobile device users may customize various aspects of views
and applications, through Customization module 420. Examples of
customizable options may include home page (e.g., personal, any
URL), time zone, date format, font format, language and other
options. This feature of the invention provides for international
applications. For example, a user may receive a message in French
from a client in France or other location. The text message in
French may be accepted by a mobile device and displayed in French
or English (or other selected language). The data transmitted may
be formatted to display an identified time zone, date format and
other features and characteristics for customized viewing
options.
[0113] A server form in a directory of the present invention may
contain a subform that allows server level configuration
information to be administered. The subform may contain various
tabs, such as Basics tab, Wireless Access tab and Wireless Security
tab. Basics tab may contain server settings which may be common to
various applications and products. The Wireless Access tab and the
Wireless Security tab may contain server settings specific to a
wireless product.
[0114] Server locale information may be used when sending date,
time and currency information to a wireless device. However, the
time zone information, the date format and other information may be
over-ridden by a user via the wireless user settings in an
appropriate form, e.g., Person form.
[0115] The Person form in a directory may contain a subform that
allows wireless user settings to be administered. Wireless user
settings may be optional. For example, wireless user settings
related to time may be administered by a user from a wireless
device.
[0116] According to another embodiment of the present invention, a
wireless servlet may use an attachment to a user's Person document
to define and save application specific preferences, such as mobile
form preferences, search key values and other preferences. This
attachment may be similar to a web "cookie" and may contain
information that may not be directly administered at the server.
For example, a user may submit a search or series of searches in an
application (e.g., e-mail or calendar). The user may enter search
criteria, which may include search terms, strings of characters and
other information in a search form. This search criteria may be
saved in a file, as an attachment, for example. Also, the search
criteria may be stored on a client side device, such as the mobile
device. When a subsequent search is conducted, the previous
searches may be accessed and/or retrieved. This feature of the
present invention may facilitate searching techniques by the
user.
[0117] A wireless user home page form may be used to configure an
initial menu for a user when accessing a wireless servlet. A
default home page document may also be available. Each user home
page entry may include various types. For example, a wireless
request may be sent to a current wireless server, a URL to any web
page, or a submenu for more home page entries. Other options may be
available. If a user's home page has a single request or URL menu
item, then that item may be executed.
[0118] An application designer may design an application user
profile form. The application user profile form may enable the user
to choose the form to be used when viewing or editing documents (or
other information) on a mobile device. Also, application user
profile form may enable the user to choose a default view to be
used when viewing documents (or other information) on the mobile
device. Application user profile form may also enable the user to
manage and choose words or phrases for fields in a form.
[0119] The user may select the form to be used on a mobile device
when reading or editing documents. The user may select a mobile
form for each application form that is used. For example, if an
application has a Sales form, the application designer may create
two mobile versions of this form called MobileSales and BriefSales,
both with alias Sales. The user may choose either MobileSales or
BriefSales as the form to use for reading Sales documents on the
mobile device. If the application has another form, then the
application designer may create multiple mobile versions of that
form and the user may also choose which to use for reading or
editing documents of that type. Other options and variations may
also be implemented.
[0120] The user may select a default view to be used on the mobile
device when reading documents and performing other operations.
[0121] If the application designer adds text fields to the user
profile form with the same (or similar) field names as fields in
the wireless access application form, then the user may add a list
of names, words or phrases which may then be selected on the mobile
device as values for corresponding fields. This may be similar to a
keyword field type in a form. Further, the user may modify the
list. For example, for an e-mail application, the user profile form
may contain a text field with the name Subject. The user may then
add phrases such as "Sales Status", "Just saying hello," "Can we
meet?" to this field and those phrases may become choices for the
content of the Subject field in a Memo (or other) form when sending
an e-mail (or other document) from a mobile device.
[0122] An application designer may design an application search
form. If an application has a search form, then users may have the
option to search (as well as open and perform other operations to)
the application from their home page or other environment. If a
user chooses to search an application, then the search form may be
opened for editing on a mobile device where the user may submit
various search settings. The search form may be a profile form and
each user may have a profile document containing the last or
previous search settings used, as well as other information.
[0123] 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. For example, a designer may add a
From field on an e-mail application search form so that the user
may search for e-mail 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.
[0124] According to another embodiment of the present invention,
text-to-speech capability may be provided. Thus, any information in
the form of text received by a mobile device may be converted to
speech.
[0125] The features of the present invention may be applied to a
financial services example. However, it may be understood that the
present invention may be applied to various applications. This
following example of financial services is presented as a mere
example of the present invention. A financial planner (or user) or
other entity doing business in the financial field may have various
stocks to manage. The financial planner of this example may have
set buy and sell thresholds for each stock. Timing is critical and
a delayed buy or sell may mean a difference of hundreds of
thousands to various clients. However, the financial planner may
not be able to constantly monitor the market. Through the present
invention, any time the price reaches an upper or lower threshold,
the present invention may notify mobile services and using a short
messaging or other services a short message may be sent to the
financial planner where a mobile device (e.g., pager, mobile phone)
may alert the financial planner. However, the financial planner may
be in a situation where immediate action may not be possible. For
example, the financial planner may be in a meeting, in an airplane
or otherwise unable to react to the message. Through the present
invention, the financial planner may have programmed the mobile
device (e.g., pager) so that with a single press of a button, the
financial planner may direct a message to a broker (or other
entity). If the financial planner is notified that one of the
stocks has reached the critical point, the financial planner may
simply pick a reply (e.g., sell, buy, hold) and forward the message
to the broker (or other selected recipient) without having to leave
a meeting or make a call.
[0126] The method and system of the present invention may be
implemented through various communication environments, such as a
Wireless Application Protocol, Bluetooth protocol, Global System
Mobile protocol, Wireless Markup Language protocol and other
wireless communication protocols. Bluetooth wireless communications
technology provides the ability to exchange data and voice between
communication devices. Bluetooth may include a radio-based standard
for small personal devices to automatically connect and exchange
information for personal wireless applications. Bluetooth may
further include a short-range networking protocol for connecting
different types of devices, such as mobile phone, desktop or
notebook computers. Bluetooth may enable access to the Internet via
a phone's mobile data system and linking the user's voice to a
computer. Devices that are Bluetooth enabled may communicate by
wireless signals within a defined range where a line-of-sight
connection is not needed. For example, Bluetooth technology may
transfer an e-mail from a user's mobile phone to a personal
computer for easier reading and reply.
[0127] Bluetooth may enable the creation and use of a Wireless
Personal Area Network ("WPANs") where a WPAN may connect devices to
establish data communications channels for applications. The WPAN
may form a network for a single individual and that person's
interactions with personal digital devices. Bluetooth may be a
packet-based communications medium and may accommodate both data
and voice transmissions.
[0128] The foregoing description of a system and method for
providing wireless device access is illustrative, and changes in
the above construction and sequences of operation may occur to
persons skilled in the art. For example, although multiple modules
are shown for carrying out the invention, additional or fewer
modules may be used and multiple modules may be positioned in
various locations. Additionally, although the invention is intended
to be practiced with Lotus.RTM. Notes.RTM. applications, the
invention may be practiced with various applications because the
invention uses XML to represent data and design. It should be
noted, however, that the invention is not limited to XML and may be
practiced using another language. Other embodiments, uses and
advantages of the present invention will be apparent to those
skilled in the art from consideration of the specification and
practice of the invention disclosed herein. The specification and
examples should be considered exemplary only. The scope of the
invention is accordingly intended to be limited only by the
following claims.
* * * * *