CA2485960C - Method and apparatus for controlling data provided to a mobile device - Google Patents

Method and apparatus for controlling data provided to a mobile device Download PDF

Info

Publication number
CA2485960C
CA2485960C CA2485960A CA2485960A CA2485960C CA 2485960 C CA2485960 C CA 2485960C CA 2485960 A CA2485960 A CA 2485960A CA 2485960 A CA2485960 A CA 2485960A CA 2485960 C CA2485960 C CA 2485960C
Authority
CA
Canada
Prior art keywords
mobile device
email
filter criteria
data
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
CA2485960A
Other languages
French (fr)
Other versions
CA2485960A1 (en
Inventor
Jia-Der Day
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oracle International Corp
Original Assignee
Oracle International Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oracle International Corp filed Critical Oracle International Corp
Publication of CA2485960A1 publication Critical patent/CA2485960A1/en
Application granted granted Critical
Publication of CA2485960C publication Critical patent/CA2485960C/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/212Monitoring or handling of messages using filtering or selective blocking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/58Message adaptation for wireless communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • H04L67/5651Reducing the amount or size of exchanged application data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Abstract

Techniques are provided for communicating data to a mobile device. A system receives a request for data from a mobile device. The system identifies filter criteria associated with the mobile device. The filter criteria is applied to a set of data to identify particular data elements that satisfy the filter criteria. The identified data elements are then transmitted to the mobile device.

Description

METHOD AND APPARATUS FOR CONTROLLING DATA PROVIDED
TO A MOBILE DEVICE
TECHNICAL FIELD
[0001] The systems and methods described herein relate to mobile devices and, more specifically, to controlling the flow of data to a mobile device from a data source.
BACKGROUND
[0002] As the popularity of the Internet continues to grow, an increasing number of people are accessing the Internet with their mobile devices. These mobile devices include cellular phones, personal digital assistants (PDAs), handheld computers, laptop computers, vehicle-based computer systems, and other types of portable or mobile computing systems. Mobile devices may be used to retrieve electronic mail (email) messages, stock quotes, sporting event scores, weather forecasts, and various other information available from numerous web sites and their associated web pages.
[0003] Many of these mobile devices are relatively small and contain a relatively small display screen. Therefore, it is important to limit the volume of information provided to the mobile device as compared to a device with a larger display screen.
However, today's typical email systems are not optimized for mobile users.
Further, these email systems are not easily customized to accommodate the user of a mobile device. As a result, obtaining email messages and other information via the Internet is tedious and time-consuming.
[0004] Additionally, many of these mobile devices connect to the Internet through a slow or reduced bandwidth communication link. For example, certain mobile devices connect to the Internet via a wireless network that has a communication bandwidth significantly less than typical broadband connections found in many offices and homes.
Thus, it is important to limit the amount of data communicated to a mobile device to avoid long delays in commuW Gating the data to the mobile device.
[0005] Accordingly, there is a need for systems and methods that allow a user of a mobile device to control the volume and type of data that is communicated to the mobile device.
SUMMARY
[0006] The systems and methods described herein allow the user of a mobile device or other computing device to define filter criteria that controls the flow of data to the mobile device. One or more filter criteria may be applied to data, such as email data, to limit the data that is communicated to the mobile device. The mobile device user may create one or more profiles that contain different filter criteria. Different profiles may be selected based on the type of data filtering currently desired by the mobile user.
[0007] In one embodiment, a request for data is received from a mobile device.
Filter criteria associated with the mobile device is identified and applied to a set of data to identify particular data elements that satisfy the filter criteria. The identified data elements are then transmitted to the mobile device without transmitting data elements that do not satisfy the filter criteria.
[0008] In another embodiment, a filter criteria is defined to be applied to multiple email messages by an email server. The filter criteria is provided to the email server. A
request to receive email messages is sent to the email server. An email message is received from the email server such that the received email message satisfies the filter criteria.
BRIEF DESCRIPTION OF THE DRAWINGS
[0009] The systems and methods described herein are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings.
Similar reference munbers are used throughout the drawings to reference similar elements and features.
[0010] Fig. 1 illustrates an example enviromnent in which the systems and methods discussed herein may be implemented.
[0011] Fig. 2 illustrates an exemplary email inbox maintained by an application running on a desktop computer system.
[0012] Fig. 3 illustrates another exemplary email inbox displayed on a mobile device, this email inbox displays a subset of the email messages illustrated in Fig.
2.
[0013] Fig. 4 illustrates a flow diagram of a procedure for defining and applying email filter criteria.
[0014] Fig. 5 illustrates a flow dzagram of a procedure for exchanging data between an email server and a mobile device.
[0015] Figs. 6 and 7 illustrate example user profiles, each containing various attributes and attribute values.
[0016] Fig. 8 is a block diagram that illustrates a computer system upon which the procedures discussed herein may be implemented.
_2_ DETAILED DESCRIPTION
[0017] The systems and methods described herein allow users of computing devices, such as mobile devices, to control the communication of data from a source to the computing device. For purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the various systems and methods.
It will be apparent, however, that the systems and methods described herein may be implemented without these specific details. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.
[0018] Particular examples are described herein with reference to mobile devices, such as cellular phones and personal digital assistants (PDAs). However, the systems and methods described herein may be applied to any type of computing device that can communicate with another device via a communication link. As used herein, the term "mobile devices" shall mean any computing device that is capable of communicating with another device to exchange data. Example mobile devices include cellular phones, PDAs, handheld computers, laptop computers, vehicle-based computer systems, pagers, communicators, and the lilce.
[0019] Further, various examples discussed herein refer to the communication of electronic mail (email) data to a mobile device. However, the systems and methods described herein can be applied to any type of data, such as sports scores, instant messages, weather forecasts, movie listings, and stoclc quotes.
SYSTEM OVERVIEW
[0020] Fig. 1 illustrates an example environment 100 in which the systems and methods discussed herein may be implemented. Environment 100 includes an email server 102, which contains an email data storage device 104, a profile data storage device 106 for various profiles and filters (discussed below), and a virtual inbox 108. Email server 102 receives email messages from multiple sources and distributes those email messages to the appropriate recipient(s). For example, email messages may be received via the Internet or via an intranet from multiple users and other sources.
Users access email server 102 using an email application program, a web browser or other application program. Received email messages are stored in email data storage device 104 for retrieval by the recipients) of the email message. The received email messages typically remain stored in email data storage device 104 until the email message is deleted by the user or archived to another storage device. Email data storage device 104 is a hard disk drive or other non-volatile storage device. Profile data-storage device 106 is also a hard disk drive or other non-volatile storage device. In a particular embodiment, the data contained in email data storage device 10,4 and the data contained in profile data storage device 106 is stored in a common storage device, such as a common disk drive.
[0021] Virtual inbox 108 applies filter criteria stored in profile data storage device 106 to email messages stored in email data storage device 104. After applying the appropriate filter criteria, a subset of selected email messages is identified. This subset of email messages is communicated to a mobile device, as discussed below. A
particular embodiment of email server 102 maintains a separate virtual inbox for each mobile device user. In an alternative embodiment, server 102 maintains a separate virtual inbox for each mobile device of each mobile device user.
[0022] A desktop computer 110 is coupled to email server 102 and is capable of communicating with email data storage device 104 and profile data storage device 106.
Desl~top computer 110 includes a profile and filter management application program that allows a user to create and edit profiles as well as filter criteria stored in profile data storage device 106. As discussed below, a user can define any number of profiles and associated filter criteria for controlling the flow of email data from email server 102 to a mobile device. Additionally, desktop computer 110 typically includes an email application program for sending and receiving email messages. This email application program communicates with email data storage device 104 to send and retrieve email data.
[0023] A mobile device 112 is coupled to email server 102 via a communication link 114. Communication link 114 may be a wired link or a wireless link, or a combination of one or more wired links and one or more wireless linlcs. For example, communication link 114 may be established across a public switched telephone networlc (PSTN) using a modem or similar communication device in mobile device 112. Alternatively, mobile device 112 may utilize a radio frequency or other wireless communication link to exchange data between email server 102 and mobile device 112.
[0024] W one embodiment, mobile device 112 communicates with email server 102 using Internet Messaging Access Protocol (IMAP). IMAP is a protocol that allows mail clients to interact with email servers and manipulate mailboxes (or inboxes) on the email servers. IMAP includes operations for creating and deleting messages as well as checking for new email messages, etc. In this embodiment, mobile device 112 includes at least one application program that is capable of communicating with email server 102 using IMAP to send and receive email message data. As shown in Fig. 1, mobile device 112 communicates with virtual inbox 108 in email server 102.
[0025] Mobile device 112 may also include an application program that allows the user of the mobile device to create and edit profiles as well as filter criteria stored in profile data storage device 106. Additionally, a user can change the active profile (or the active set of filter criteria) by entering one or more commands through mobile device 112.
[0026] An Internet application server 116 is coupled to email server 102 via a communication link 118. Internet application server 116 provides an interface between email server 102 and the Internet. Internet-based devices are able to access information stored in email server 102 via Internet application server 116. Internet application server 116 includes an email client that communicates with email server 102. Internet application server 116 is capable of communicating with multiple virtual inboxes 108 in email server 102. Additionally, Internet application server 116 is capable of transforming data for display on a small device and playing audio files attached to email messages (e.g., transmitting audio data to a mobile device for listening by a user of the mobile device).
[0027] Communication link 118 may be a wired or a wireless communication link, or a combination thereof. In a particular embodiment, Internet application server communicates with email server 102 using IMAP. Internet application server 116 communicates with Internet-based devices using Wireless Access Protocol (WAP), HyperText Transfer Protocol (HTTP) or any other protocol supported by both Internet application server 116 and the Internet-based device. WAP is a specification that allows users to access information via handheld wireless devices such as mobile phones, pagers, etc. HTTP is the underlying protocol used by the world wide web. HTTP defines how messages are formatted and transmitted, and what actions web servers and web browsers should take in response to various commands.
[0028] An example Internet-based device 120 includes a web browser or a WAP
browser application that allows the device to communicate with Internet application server 116 via a WAP gateway 132 or directly via a communication link 136. WAP
gateway 132 provides conversion of signals between WAP protocol and HTTP
protocol.
Specifically, Internet-based device 120 communicates with WAP gateway 132 via a communication link 122, which is typically a wireless communication link with WAP
protocol, but may be any type of communication link using any protocol. WAP
gateway 132 communicates with Internet application server 116 using a communication link 134.
Typically, communication link 134 is a wired communication link using HTTP
protocol.
Alternatively, communication link 134 may be any type of communication link communicating with any protocol. If Internet-based device 120 includes a web browser application, then the device can communicate with Internet application server 116 directly via communication link 136 using HTTP. In this embodiment, Internet-based device 120 does not need to communicate with WAP gateway 132.
[0029] A voice gateway 124 is coupled to Internet application server 116 via a communication link 126. Voice gateway 124 provides an interface between a voice-only device, such as a cellular phone, and Internet application server 116. In one embodiment, voice gateway 124 communicates with Internet application server 116 using HTTP. The output from Internet application server 116 is formatted in Voice extensible Markup Language (VoiceXML) or other voice markup languages supported by the voice gateway 124. VoiceXML allows interaction with the Internet through speech-recognition and text-to-speech technologies. For example, a user interacts with a voice browser by listening to audio data that is either pre-recorded or computer-synthesized and submits audio input through the user's natural speaking voice or through a telephone keypad.
[0030] As shown in Fig. 1, a cellular phone 128 is coupled to voice gateway 124 via a communication link 130. In a particular embodiment, communication link 130 is a wireless link using conventional cellular communication protocol(s). Cellular phone 128 exchanges data with voice gateway 124 which allows the cellular phone to, for example, send and receive email messages with email server 102.
[0031] Although a single desktop computer 110 is shown in Fig. 1, a particular email server may be coupled to any number of computing devices, including desktop computers, laptop computers, other servers, and the like. Similarly, any number of mobile devices may be coupled to email server 102 using both 11VIAP
communication links and WAP or HTTP communication links. In Fig. 1, Internet application server 116, voice gateway 124 and WAP gateway 132 are shown as separate components coupled to email server 102. In alternate embodiments, one or more of these components are incorporated into email server 102. In another embodiment, Internet application server 116, voice gateway 124 and WAP gateway 132 are contained in a single component or device that is coupled to email server 102.
[0032] In a particular embodiment, email server 102 stores email messages, voicemail messages and facsimiles in a user's inbox. The email server 102 converts the voicemail messages to audio files (such as .wav files) and converts the facsimiles to text files or binary files. In this embodiment, Internet application server 116 retrieves messages in a user's inbox and sends them directly to the mobile device or via voice gateway 124 or WAP gateway 132 for protocol conversion. The voice gateway is capable of playing the audio file and performing text-to-speech functions to convert email messages into an audio stream. Thus, mobile device 128 is able to listen to both email and voicemail messages as well as voicemail messages as email attachments.
[0033] Fig. 2 illustrates an exemplary email inbox 200 maintained by an email application running on a desktop computer system. Although this example refers to a desktop computer system, alternate embodiments may utilize a laptop computer system, a workstation, or other computing device. The email data is stored on an email server or other device, such as email server 102 (Fig. 1). The desktop computer system typically has a high-bandwidth connection to the email server, such as via a local area network (LAIC. This high-bandwidth connection allows large amounts of email data to be communicated between the email server and the desktop computer system in a short period of time. Thus, the desktop computer system typically receives all email messages addressed to the user of the desktop computer system. Additionally, the display device used in the desktop computing system generally permits the display of significant amounts of email message data. Email inbox 200 represents an example display of email message data on a desktop computing system.
[0034] The email application executing on a user's desktop computer system retrieves email data associated with that user and displays at least a portion of the email data on the computer's display device. The email application also allows the user to manage the received email data and allows the user to create and distribute new email messages to one or more recipients. Email inbox 200 contains email message data associated with a particular user or email recipient.
[0035] Email inbox 200 includes an attribute column 202 that identifies various email attributes. For example, a check mark in attribute column 202 indicates that the corresponding email message has been flagged for follow-up at a future date and time.
The "DOC" entries in attribute column 202 indicate that the corresponding email message has an attached document, such as a text file, a word processing file, or a spreadsheet file.
An asterisk ("*") in attribute cohunn 202 indicates that the corresponding email message has been marked as being of high importance. The high importance designation may be determined by the sender of the email message or by the email message recipient.
[0036] Email inbox 200 also includes a from column 204 indicating a source of each email message. A subject column 206 indicates the subject matter of the email message content. The data in the subject column 206 is typically provided by the source of the _7_ email message. A date column 208 indicates the date that the email message was sent (or the date that the email message was received by the email server). A scroll bar 210 allows the user to scroll through multiple email messages when the email inbox contains too many email messages to display at the same time. A particular email inbox 200 may contain any number of email messages. Additionally, one or more folders associated with the email inbox 200 may contain email messages.
THE MOBILE DEVICE EMAIL INBOX
[0037] Fig. 3 illustrates another exemplary email inbox 300 displayed on a mobile device. Email inbox 300 displays a subset of the email messages illustrated in Fig. 2.
This subset of email messages is generated by applying various filter criteria to the email messages associated with the user of the mobile device. The information displayed in both inboxes 200 and 300 is retrieved from a cormnon email server or a common email storage device.
[0038] Since the mobile device typically has a smaller display screen than a desktop computer system, certain display columns are deleted or reduced in size. For example, an attribute column 302 identifies whether a particular email message has been designated high importance. However, attribute column 302 does not display other email message attributes, such as flagged email messages or message attachments. A from column 304 identifies the source of the email message and a subject column 306 identifies the subject of the associated email message. The width of columns 304 and 306 have been reduced with respect to the width of corresponding columns in Fig. 2 to allow the columns to fit on a smaller display screen.
[0039] To conserve display space, email inbox 300 does not contain a date column, which would indicate the date that the corresponding email message was sent (or received). Alternate embodiments of email inbox 300 may include a date column having a reduced amount of data (e.g., month and day information, but no year or day of the week information). A scroll bar 308 allows the user to scroll through multiple email messages when the email inbox 300 contains too many email messages to display at the same time. In the example of Fig. 3, there are not enough email messages to fill the display. Thus, there is no slide button or other scroll control mechanism in the scroll bar 308.
[0040] Although particular email data is illustrated in Figs. 2 and 3, alternate email application programs may display different subsets of email data and may display email data in a different manner (e.g., arranged in a different order on the user's display).
_g_ Further, email data associated with multiple users or email recipients may be displayed simultaneously on one or more display devices.
[0041] Fig. 4 illustrates a flow diagram of a procedure 400 for defining and applying email filter criteria. Typically, procedure 400 involves steps that are executed by an email server (such as email server 102 of Fig. 1) or other email processing system.
Initially, a user defines one or more profiles. Each profile has an associated set of filter criteria (block 402). Example filter criteria includes specific values for email message urgency, the sender of the email message, the size of the email message, and the date associated with the email message. For example, one filter criteria may be "sender =
joe@myisp.com". Another filter criteria may be "size < 2 kilobytes".
[0042] In addition to email message filtering, one or more actions may be performed on the email messages. For example, actions may indicate whether or not to retrieve attaclunents from email messages or to truncate attaclnnents larger than a particular size.
Another action may transform the email message into a different format (e.g., transform an HTML email message into a pure text email message). Additionally, an action may cause a summary of the email message to be displayed rather than the entire email message. Various other actions may be performed on email messages in addition to the filtering procedures and other procedures discussed herein.
[0043] A particular profile may contain one or more filter criteria, based on the filtering requirements of the user. The filter criteria may also limit the portion of each email that is sent to the mobile device. For example, a particular filter criteria may allow the first 100 characters of an email message to be transmitted to the mobile device, but blocks transmission of the remainder of the email message. A user can edit the filter criteria associated with a particular profile at any time via a desktop computing system or a mobile device.
[0044] A user may establish multiple email filtering profiles, each of which is used in different situations. For example, a "vacation" or "evening" profile may filter out most email messages while a "work" profile has less restrictive filter criteria, thereby allowing more email messages to pass thorough the filter. After defining one or more profiles, the user selects one of the profiles as the active profile (block 404). The user can change the active profile at any time via a desktop computer system or a mobile device.
The active profile is used by the email server to determine which email messages are communicated to the user's mobile device. Typically, one profile is active for a specific mobile device at a particular time. In a particular embodiment, each profile is associated with a particular mobile device. Users can edit filter criteria associated with a particular profile at any time. Additionally, users can change the active profile at any time.
[0045] The active profile can be selected or determined in various manners. In a particular embodiment, a profile is specified as the active profile by the email application on a mobile device (e.g., mobile device 112 in Fig. 1) when the email application establishes the connection to the email server. In an alternate embodiment, the selection of profiles can be presented to the users on their mobile devices as menu selection items.
Once a profile is chosen, it becomes the active profile for the established email server connection. In another embodiment, the active profile can be determined by the device type or the device group. A device group is one or more types of devices and/or specific devices. For example, a device group may include a cellular phones capable of receiving email messages. Another device group may include a particular user's cellular phone and wireless PDA. In this embodiment, the selection of an active profile is automatically performed based on the device type of the group without any further user interaction.
[0046] The procedure 400 next determines whether a request to receive email messages on a mobile device has been received by an email server (block 406).
Such a request may be received, for example, when a mobile device is powered on or when a user launches an email application on the mobile device. The request to receive email messages may identify the type of device on which the email messages will be received.
Additionally, the request to receive email messages may identify a user of the mobile device or an email account from which email messages are to be retrieved.
[0047] After a request is received from a mobile device, the procedure selects which messages to make visible to the mobile device by filtering email messages (block 408) that are directed to the user of the device based on the filter criteria contained in the active profile of that user. In an embodiment that allows different mobile devices of the same user to have different active profiles, the filtering is performed based on the active profile of that user that is associated with the particular mobile device that is requesting the email.
[0048] Selected portions of selected email messages (i.e., those that satisfy the filter criteria of the active profile) are sent to the user's mobile device (block 410). Since the filtering of email messages is performed by the email server, only the messages that satisfy the filter criteria are sent to the mobile device. This filtering procedure results in a smaller amount of data being communicated to the mobile device as compared to an implementation in which all email messages are sent to the mobile device and the mobile device performs the filtering. The procedure then determines whether the user has changed (e.g., deleted) any email messages (block 412). If the user changed any of the email messages, those changes are applied by the email server (block 414).
Thus, if a user deletes an email message (or otherwise changes an email message), that deletion is applied by the email server such that the email message is no longer available for retrieval by the mobile device or any other device.
[0049] When filtering email messages, the email server 102 may restrict its filtering to email messages in the user's inbox. Alternatively, the email server 102 may access and filter email messages in the user's inbox as well as one or more other email folders associated with the user.
EXCHANGING DATA
[0050] Fig. 5, illustrates a flow diagram of a procedure 500 for exchanging data between an email server and a mobile device. W itially, an email application (e.g., an email application running on a mobile device) establishes a connection with an email server (bloclc 502). In this example, the email application supports disconnected email.
This type of email application typically downloads email messages into an inbox on the mobile device and allows the user to read, change and delete messages when the mobile device is not connected to the email server. Any composed new messages are stored in an outbox on the mobile device while the mobile device is not connected to the email server.
[0051] After establishing a comiection with the email server, the email application in the mobile device sends composed email messages to the email server (block 504). The email application also sends any deleted or changed email messages to the email server (block 506). The email application then receives new email messages filtered by the email server (block 50~). Finally, the email application disconnects form the email server (block 510). The procedure illustrated in Fig. 5 may be performed at regular intervals (e.g., every two minutes or every hour) or in response to a user's request to send or receive email messages.
EXAMPLE PROFILES
[0052] Figs. 6 and 7 illustrate example user profiles 600 and 700, each containing various attributes and attribute values. User profile 600 identifies several different attributes that are applied to each email message to determine whether to transmit the email message to the associated mobile device. A first attribute, "message urgency", requires that a message be an urgent message (also referred to as "high importance" or "high priority") to be sent to the mobile device. Thus, all non-urgent messages are filtered out by this first attribute. A second attribute, "message from", requires that the email message is from "Bob Jones" to satisfy the attribute. A third attribute, "message date", requires that the date of the email message is witlun the past two days.
[0053] Finally, a fourth attribute, "attachments", requires that all attachments be removed from the email message before sending the email message to the mobile device.
This last attribute is a command rather than a condition. All email messages will satisfy this attribute regardless of whether the email message has any attachments.
However, if the email message satisfies the other three attributes, the fourth attribute will instruct the email server to remove any attachments from the email message prior to sending the email message to the mobile device.
[0054] The first three attributes shoran in user profile 600 may be applied using multiple logic rules. For example, the filter criteria may be satisfied if any one of the attributes is satisfied. In this example, the attributes would be logically linked as follows:
SEND IF (Urgency = Urgent) OR (From = Bob Jones) OR (Date = W/In 2 Days) Alternatively, the filter criteria is satisfied when all three of the attributes are satisfied. In this example, the attributes would be logically linked as follows:
SEND IF (Urgency = Urgent) AND (From = Bob Jones) AND (Date = W/In 2 Days) In another embodiment, a combination of logical OR and logical AND operations are applied to the three attributes. For example:
SEND IF (Urgency = Urgent) OR ((From = Bob Jones) AND (Date = W/In 2 Days)) Various other combinations can be implemented depending on the desires of the user.
[0055] Referring to Fig. 7, user profile 700 identifies two different attributes that are applied to each email message to determine whether to transmit the email message to the associated mobile device. A first attribute, "message urgency", requires that a message be an urgent message to be sent to the mobile device. Thus, all non-urgent messages are filtered out by this first attribute. A second attribute, "message from", requires that the message be from "Bob Jones" or "Jennifer". As discussed above, the attributes can be combined using different combinations of the logical OR and logical AND
operations. A
particular profile may contain any number of attributes and any number of satisfactory values associated with each attribute.

HARDWARE OVERVIEW
[0056] Fig. 8 is a block diagram that illustrates a computer system 800 upon which the procedures discussed herein may be implemented. Computer system 800 includes a bus 802 or other communication mechanism for communicating information, and a processor 804 coupled with bus 802 for processing information. Computer system also includes a main memory 806, such as a random access memory (RAM) or other dynamic storage device, coupled to bus 802 for storing information and instructions to be executed by processor 804. Main memory 806 also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 804. Computer system 800 further includes a read only memory (ROM) 808 or other static storage device coupled to bus 802 for storing static information and instructions for processor 804. A storage device 810, such as a magnetic disk or optical disk, is provided and coupled to bus 802 for storing information and instructions.
[0057] Computer system 800 may be coupled via bus 802 to a display 812, such as a cathode ray tube (CRT), for displaying information to a computer user. An input device 814, including alphanumeric and other keys, is coupled to bus 802 for communicating information and command selections to processor 804. Another type of user input device is cursor control 816, such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to processor 804 and for controlling cursor movement on display 812. This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allows the device to specify positions in a plane.
[0058] The described systems and methods are related to the use of computer system 800 for implementing various techniques described herein. According to one embodiment, those techniques are performed by computer system 800 in response to processor 804 executing one or more sequences of one or more instructions contained in main memory 806. Such instructions may be read into main memory 806 from another computer-readable medium, such as storage device 810. Execution of the sequences of instructions contained in main memory 806 causes processor 804 to perform the process steps described herein. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the systems and methods described herein. Thus, the described systems and methods are not limited to any specific combination of hardware circuitry and software.
[0059] The term "computer-readable medium" as used herein refers to any medium that participates in providing instructions to processor 804 for execution.
Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media includes, for example, optical or magnetic disks, such as storage device 810. Volatile media includes dynamic memory, such as main memory 806. Transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise bus 802. Transmission media can also take the form of acoustic or light waves, such as those generated during radio-wave and infra-red data communications.
[0060] Common forms of computer-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punchcards, papertape, any other physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read.
[0061] Various forms of computer-readable media may be involved in carrying one or more sequences of one or more instructions to processor 804 for execution. For example, the instructions may initially be carried on a magnetic disk of a remote computer. The remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem local to computer system 800 can receive the data on the telephone line and use an infra-red transmitter to convert the data to an infra-red signal. An infra-red detector can receive the data carried in the infra-red signal and appropriate circuitry can place the data on bus 802. Bus 802 carries the data to main memory 806, from which processor 804 retrieves and executes the instructions. The instructions received by main memory 806 may optionally be stored on storage device 810 either before or after execution by processor 804.
[0062] Computer system 800 also includes a communication interface 818 coupled to bus 802. Communication interface 818 provides a two-way data communication coupling to a network link 820 that is connected to a local network 822. For example, communication interface 818 may be an integrated services digital network (ISDN) card or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, communication interface 818 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN.
Wireless links may also be implemented. In any such implementation, communication interface 818 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
[0063] Network link 820 typically provides data cormnunication through one or more networks to other data devices. For example, network link 820 may provide a connection through local network 822 to a host computer 824 or to data equipment operated by an Internet Service Provider (ISP) 826. ISP 826 in turn provides data communication services through the world wide packet data communication network now commonly referred to as the "Internet" 828. Local network 822 and Internet 828 both use electrical, electromagnetic or optical signals that carry digital data streams. The signals through the various networks and the signals on network link 820 and through communication interface 818, which carry the digital data to and from computer system 800, are exemplary forms of carrier waves transporting the information.
[0064] Computer system 800 can send messages and receive data, including program code, through the network(s), network link 820 and communication interface 818. In the Internet example, a server 830 might transmit a requested code for an application program through W ternet 828, ISP 826, local network 822 and communication interface 818.
[0065] The received code may be executed by processor 804 as it is received, and/or stored in storage device 810, or other non-volatile storage for later execution. In this manner, computer system 800 may obtain application code in the form of a carrier wave.

Claims (20)

What is claimed is:
1. A method for handling email messages, the method comprising:

receiving, from a first mobile device of a user, a request for email messages that are associated with an email account;

wherein the email account is associated with multiple profiles;

wherein each profile of the multiple profiles is associated with a different set of filter criteria;

identifying a first active profile that is associated with the first mobile device;
identifying a particular set of filter criteria that is associated with the first active profile;
wherein the multiple profiles include a second active profile that is associated with a second mobile device of the user;

wherein the second mobile device is separate from the first mobile device;

applying the particular set of filter criteria to a set of email messages to identify selected email messages that satisfy the filter criteria in the particular set of filter criteria; and transmitting the selected email messages to the first mobile device.
2. The method of Claim 1 wherein the particular set of filter criteria includes an urgency associated with each email message.
3. The method of Claim 1 wherein the particular set of filter criteria includes a source associated with each email message.
4. The method of Claim 1 wherein the particular set of filter criteria includes a date associated with each email message.
5. The method of Claim 1 wherein the particular set of filter criteria is predetermined by the user.
6. The method of Claim 1 further comprising:

receiving a request to delete one of the selected email messages; and deleting the requested email message from the set of email messages.
7. The method of Claim 1 further comprising:

receiving a request to change the particular set of filter criteria; and updating the particular set of filter criteria applied to the set of email messages.
8. The method of Claim 1 wherein the received request for email messages includes information that identifies that the email account is associated with a user of the mobile device.
9. The method of Claim 1 wherein the received request for email messages is communicated from the mobile device using the Internet Messaging Access Protocol.
10. A method for handling access to data, the method comprising:

receiving from a mobile device a request for data;

in response to determining that the request came from the mobile device, identifying filter criteria associated with a device group that only includes devices that are of a same device type as the mobile device;

applying the filter criteria to a set of data to identify particular data elements that satisfy the filter criteria; and transmitting the identified data elements to the mobile device.
11. The method of Claim 10 wherein identifying filter criteria associated with the mobile device includes identifying a profile associated with the mobile device, and wherein the profile contains at least one data filtering criteria.
12. The method of Claim 10 wherein the filter criteria associated with the mobile device is predetermined by a user of the mobile device.
13. The method of Claim 10 further comprising:

receiving a request to delete a specific data element; and deleting the specific data element from the set of data.
14. The method of Claim 10 further comprising storing the filter criteria in a non-volatile memory device.
15. The method of Claim 1, wherein:

the multiple profiles include a plurality of profiles associated with the first mobile device;

one of the plurality of profiles associated with the first mobile device is currently designated as the active profile for the first mobile device.
16. A computer-readable medium carrying instructions which, when executed by one or more processors, causes performance of the method recited in any one of Claims 1-15.
17. An apparatus comprising:

means for receiving, from a first mobile device of a user, a request for data;

wherein the data is associated with multiple profiles;

wherein each profile of the multiple profiles is associated with a different set of filter criteria;

means for identifying a first active profile that is associated with the first mobile device;
means for identifying a particular set of filter criteria that is associated with the first active profile;

wherein the multiple profiles include a second active profile that is associated with a second mobile device of the user;

wherein the second mobile device is separate from the first mobile device;

means for applying the particular set of filter criteria to a set of data to identify specific data entries that satisfy the filter criteria in the particular set of filter criteria, thereby filtering the set of data; and means for transmitting the specific data entries to the first mobile device.
18. The apparatus of Claim 17 further comprising means for editing the particular set of filter criteria based on instructions received from the user.
19. An apparatus for handling access to data, the apparatus comprising:
means for receiving, from a mobile device, a request for data;

means for identifying, in response to determining that the request came from the mobile device, filter criteria associated with a device group that only includes devices that are of a same device type as the mobile device;

means for applying the filter criteria to a set of data to identify particular data elements that satisfy the filter criteria; and means for transmitting the identified data elements to the mobile device.
20. The apparatus of Claim 19 wherein identifying filter criteria associated with the mobile device includes identifying a profile associated with the mobile device, and wherein the profile contains at least one data filtering criteria.
CA2485960A 2002-05-31 2003-05-21 Method and apparatus for controlling data provided to a mobile device Expired - Lifetime CA2485960C (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/159,223 2002-05-31
US10/159,223 US7522910B2 (en) 2002-05-31 2002-05-31 Method and apparatus for controlling data provided to a mobile device
PCT/US2003/016132 WO2003103218A2 (en) 2002-05-31 2003-05-21 Method and apparatus for controlling data provided to a mobile device

Publications (2)

Publication Number Publication Date
CA2485960A1 CA2485960A1 (en) 2003-12-11
CA2485960C true CA2485960C (en) 2011-09-20

Family

ID=29582852

Family Applications (1)

Application Number Title Priority Date Filing Date
CA2485960A Expired - Lifetime CA2485960C (en) 2002-05-31 2003-05-21 Method and apparatus for controlling data provided to a mobile device

Country Status (10)

Country Link
US (1) US7522910B2 (en)
EP (1) EP1510050B1 (en)
JP (1) JP2005528850A (en)
CN (1) CN100384185C (en)
AT (1) ATE367036T1 (en)
AU (1) AU2003241572B2 (en)
CA (1) CA2485960C (en)
DE (1) DE60314877T2 (en)
HK (1) HK1069497A1 (en)
WO (1) WO2003103218A2 (en)

Families Citing this family (222)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6917280B1 (en) * 1999-12-29 2005-07-12 Bellsouth Intellectual Property Corporation Cradle for accepting portable communications device and coupling portable communications device to first network by way of second network
US6898427B1 (en) * 1999-12-29 2005-05-24 Bellsouth Intellectual Property Corporation Method of coupling portable communications device to first network by way of second network
US8156074B1 (en) 2000-01-26 2012-04-10 Synchronoss Technologies, Inc. Data transfer and synchronization system
US6671757B1 (en) 2000-01-26 2003-12-30 Fusionone, Inc. Data transfer and synchronization system
US8620286B2 (en) 2004-02-27 2013-12-31 Synchronoss Technologies, Inc. Method and system for promoting and transferring licensed content and applications
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
US7127271B1 (en) 2001-10-18 2006-10-24 Iwao Fujisaki Communication device
US7466992B1 (en) 2001-10-18 2008-12-16 Iwao Fujisaki Communication device
US7107081B1 (en) 2001-10-18 2006-09-12 Iwao Fujisaki Communication device
US20040006748A1 (en) * 2002-07-03 2004-01-08 Amit Srivastava Systems and methods for providing online event tracking
US7653380B2 (en) * 2002-10-28 2010-01-26 At&T Mobility Ii Llc Profile-driven response to communication events
US8229512B1 (en) 2003-02-08 2012-07-24 Iwao Fujisaki Communication device
US7249162B2 (en) * 2003-02-25 2007-07-24 Microsoft Corporation Adaptive junk message filtering system
US7363053B2 (en) * 2003-03-28 2008-04-22 Lockheed Martin Corproation System for integrated mobile devices
US8241128B1 (en) 2003-04-03 2012-08-14 Iwao Fujisaki Communication device
JP4527367B2 (en) * 2003-07-02 2010-08-18 京セラ株式会社 Terminal device
US20050055433A1 (en) 2003-07-11 2005-03-10 Boban Mathew System and method for advanced rule creation and management within an integrated virtual workspace
WO2005010715A2 (en) 2003-07-21 2005-02-03 Fusionone, Inc. Device message management system
US8219621B2 (en) * 2003-09-04 2012-07-10 Nokia Corporation Method and device for handling push type e-mails for a mobile terminal device according to a user profile
US20050055310A1 (en) * 2003-09-08 2005-03-10 Drewett David Carl Method and system for accessing information within a database
US8090402B1 (en) 2003-09-26 2012-01-03 Iwao Fujisaki Communication device
US7363027B2 (en) 2003-11-11 2008-04-22 Microsoft Corporation Sequential multimodal input
US7158779B2 (en) * 2003-11-11 2007-01-02 Microsoft Corporation Sequential multimodal input
US7917167B1 (en) 2003-11-22 2011-03-29 Iwao Fujisaki Communication device
US7451190B2 (en) * 2003-11-26 2008-11-11 Yahoo! Inc. Associating multiple visibility profiles with a user of a real-time communication system
US20050198300A1 (en) * 2003-12-29 2005-09-08 Li Gong Data logging framework
US7184753B2 (en) * 2004-01-22 2007-02-27 Research In Motion Limited Mailbox pooling pre-empting criteria
US8041348B1 (en) 2004-03-23 2011-10-18 Iwao Fujisaki Communication device
US20050221878A1 (en) * 2004-04-05 2005-10-06 Van Bosch James A Method for entering a personalized communication profile into a communication user interface
JP2005301908A (en) * 2004-04-15 2005-10-27 Toshiba Corp Information apparatus remote control system
ES2585353T3 (en) 2004-05-12 2016-10-05 Synchronoss Technologies, Inc. Advanced contact identification system
US9542076B1 (en) 2004-05-12 2017-01-10 Synchronoss Technologies, Inc. System for and method of updating a personal profile
CN1954566A (en) * 2004-05-14 2007-04-25 皇家飞利浦电子股份有限公司 Method for transmitting messages from a sender to a recipient, a messaging system and message converting means
WO2005119994A1 (en) * 2004-05-18 2005-12-15 Computer Associates Think, Inc. System and method for filtering network messages
JP2006020009A (en) * 2004-07-01 2006-01-19 Sanyo Electric Co Ltd Receiver
US20060080354A1 (en) * 2004-08-27 2006-04-13 Nokia Corporation System for selecting data from a data store based on utility of the data
FI20041159A0 (en) 2004-09-07 2004-09-07 Nokia Corp A method for filtering messages over a computer network
US7711856B1 (en) * 2004-09-30 2010-05-04 Avaya Inc. Method and apparatus for providing an interface for a messaging mailbox
EP1820323A1 (en) * 2004-12-11 2007-08-22 Combots Product GmbH & Co.KG Controlling the direct communication between two communication partners
EP1679844A1 (en) * 2005-01-11 2006-07-12 Research In Motion Limited System and method for filtering pushed content
US7752272B2 (en) 2005-01-11 2010-07-06 Research In Motion Limited System and method for filter content pushed to client device
US8208954B1 (en) 2005-04-08 2012-06-26 Iwao Fujisaki Communication device
WO2006133547A1 (en) * 2005-06-13 2006-12-21 E-Lane Systems Inc. Vehicle immersive communication system
US20070038596A1 (en) * 2005-08-15 2007-02-15 Microsoft Corporation Restricting access to data based on data source rewriting
TWI268438B (en) * 2005-08-30 2006-12-11 Acer Inc Data accessing method, data searching method and message box
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US7818714B2 (en) * 2005-09-15 2010-10-19 Microsoft Corporation Integration of process and workflows into a business application framework
US8000683B2 (en) * 2005-11-17 2011-08-16 Research In Motion Limited System and method for communication record logging
US8086253B1 (en) * 2005-12-15 2011-12-27 Google Inc. Graphical mobile e-mail
US7721087B1 (en) * 2006-03-24 2010-05-18 Symantec Corporation Cross UI platform alerting of security status
US7752274B2 (en) * 2006-04-03 2010-07-06 International Business Machines Corporation Apparatus and method for filtering and selectively inspecting e-mail
US20070276915A1 (en) * 2006-04-04 2007-11-29 Wireless Services Corp. Managing messages between multiple wireless carriers to multiple enterprises using a relatively limited number of identifiers
JP4887918B2 (en) * 2006-06-09 2012-02-29 富士通株式会社 Mail list display program and mail management program
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8280977B2 (en) * 2006-09-27 2012-10-02 International Business Machines Corporation Automatic data transfer using an intermediate device
CN100571280C (en) * 2006-10-13 2009-12-16 华为技术有限公司 A kind of network store system and network storage content access control method
US8238882B2 (en) * 2006-10-19 2012-08-07 Research In Motion Limited System and method for storage of electronic mail
US20080167014A1 (en) * 2007-01-07 2008-07-10 Gregory Novick Voicemail systems and methods
US8553856B2 (en) * 2007-01-07 2013-10-08 Apple Inc. Voicemail systems and methods
US20080167010A1 (en) * 2007-01-07 2008-07-10 Gregory Novick Voicemail Systems and Methods
US20080167009A1 (en) * 2007-01-07 2008-07-10 Gregory Novick Voicemail Systems and Methods
US20080167007A1 (en) * 2007-01-07 2008-07-10 Gregory Novick Voicemail Systems and Methods
US8391844B2 (en) * 2007-01-07 2013-03-05 Apple Inc. Voicemail systems and methods
US20080167012A1 (en) * 2007-01-07 2008-07-10 Gregory Novick Voicemail systems and methods
US20080167011A1 (en) * 2007-01-07 2008-07-10 Gregory Novick Voicemail Systems and Methods
CN101622849B (en) 2007-02-02 2014-06-11 网圣公司 System and method for adding context to prevent data leakage over a computer network
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8559983B1 (en) 2007-05-03 2013-10-15 Iwao Fujisaki Communication device
US7890089B1 (en) 2007-05-03 2011-02-15 Iwao Fujisaki Communication device
GB0709527D0 (en) 2007-05-18 2007-06-27 Surfcontrol Plc Electronic messaging system, message processing apparatus and message processing method
US8185095B2 (en) * 2007-06-06 2012-05-22 Mspot, Inc. Method and apparatus for tracking version of digital content
US8676273B1 (en) 2007-08-24 2014-03-18 Iwao Fujisaki Communication device
US20090080404A1 (en) * 2007-09-26 2009-03-26 Nokia Corporation Active profile selection
US8639214B1 (en) 2007-10-26 2014-01-28 Iwao Fujisaki Communication device
US8539029B2 (en) 2007-10-29 2013-09-17 Microsoft Corporation Pre-send evaluation of E-mail communications
US8472935B1 (en) 2007-10-29 2013-06-25 Iwao Fujisaki Communication device
CA2708073A1 (en) * 2007-12-10 2009-06-18 E-Lane Systems Inc. Vehicle communication system with destination selection for navigation
US8744720B1 (en) 2007-12-27 2014-06-03 Iwao Fujisaki Inter-vehicle middle point maintaining implementer
US8181111B1 (en) 2007-12-31 2012-05-15 Synchronoss Technologies, Inc. System and method for providing social context to digital activity
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US9130986B2 (en) 2008-03-19 2015-09-08 Websense, Inc. Method and system for protection against information stealing software
US9015842B2 (en) 2008-03-19 2015-04-21 Websense, Inc. Method and system for protection against information stealing software
US8990313B2 (en) * 2008-04-01 2015-03-24 Microsoft Technology Licensing, Llc Download of current portions of email messages
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US8280963B2 (en) * 2008-04-10 2012-10-02 Microsoft Corporation Caching and exposing pre-send data relating to the sender or recipient of an electronic mail message
US8543157B1 (en) 2008-05-09 2013-09-24 Iwao Fujisaki Communication device which notifies its pin-point location or geographic area in accordance with user selection
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US8340726B1 (en) 2008-06-30 2012-12-25 Iwao Fujisaki Communication device
US8452307B1 (en) 2008-07-02 2013-05-28 Iwao Fujisaki Communication device
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
KR101653980B1 (en) * 2008-10-22 2016-09-05 삼성전자주식회사 Method and apparatus for managing profile
WO2010067118A1 (en) 2008-12-11 2010-06-17 Novauris Technologies Limited Speech recognition involving a mobile device
US8315607B2 (en) 2009-04-06 2012-11-20 Htc Corporation Method and system for filtering incoming messages to a mobile device
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US20120311585A1 (en) 2011-06-03 2012-12-06 Apple Inc. Organizing task items that represent tasks to perform
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
KR101649623B1 (en) 2009-06-11 2016-08-19 엘지전자 주식회사 Mobile terminal and method for managing e-mail thereof
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US8521809B2 (en) * 2009-07-31 2013-08-27 Z2Live, Inc. Mobile device notification controls system and method
US20110060996A1 (en) * 2009-09-10 2011-03-10 Alberth Jr William P Method and System for Reducing Notifications to a Mobile Device in Accordance with User Preferences
US8255006B1 (en) 2009-11-10 2012-08-28 Fusionone, Inc. Event dependent notification system and method
US20110154229A1 (en) * 2009-12-17 2011-06-23 Microsoft Corporation Mosaic identity
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US10705794B2 (en) 2010-01-18 2020-07-07 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
WO2011089450A2 (en) 2010-01-25 2011-07-28 Andrew Peter Nelson Jerram Apparatuses, methods and systems for a digital conversation management platform
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US8666377B2 (en) * 2010-03-03 2014-03-04 Htc Corporation Method, system and computer-readable medium for synchronizing spot information
EP2378472A1 (en) * 2010-04-15 2011-10-19 HTC Corporation Method and system for providing online services corresponding to multiple mobile devices, server, mobile device, and computer program product
US9148302B2 (en) * 2010-06-14 2015-09-29 Blackberry Limited Automatic full download of important emails
US8943428B2 (en) 2010-11-01 2015-01-27 Synchronoss Technologies, Inc. System for and method of field mapping
US10762293B2 (en) 2010-12-22 2020-09-01 Apple Inc. Using parts-of-speech tagging and named entity recognition for spelling correction
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
US20130210394A1 (en) * 2012-02-14 2013-08-15 Keyona Juliano Stokes 1800 number that connects to the internet and mobile devises
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9483461B2 (en) 2012-03-06 2016-11-01 Apple Inc. Handling speech synthesis of content for multiple languages
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US20130326333A1 (en) * 2012-06-01 2013-12-05 Atiq Hashmi Mobile Content Management System
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US9495129B2 (en) 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US20140053065A1 (en) * 2012-08-16 2014-02-20 Motorola Mobility Llc System and method for adjusting website displays
US9576574B2 (en) 2012-09-10 2017-02-21 Apple Inc. Context-sensitive handling of interruptions by intelligent digital assistant
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
US9578128B2 (en) 2012-10-29 2017-02-21 Google Inc. Systems and methods for message delivery to mobile devices supporting multiple users
US9509653B2 (en) * 2012-10-29 2016-11-29 Google Inc. Systems and methods for directing messages to multiple user profiles on a mobile device
US9241259B2 (en) 2012-11-30 2016-01-19 Websense, Inc. Method and apparatus for managing the transfer of sensitive information to mobile devices
KR102516577B1 (en) 2013-02-07 2023-04-03 애플 인크. Voice trigger for a digital assistant
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
WO2014144579A1 (en) 2013-03-15 2014-09-18 Apple Inc. System and method for updating an adaptive speech recognition model
WO2014144949A2 (en) 2013-03-15 2014-09-18 Apple Inc. Training an at least partial voice command system
US8700722B1 (en) * 2013-03-15 2014-04-15 Google Inc. User-aware cloud to device messaging systems and methods
US9582608B2 (en) 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
EP3008641A1 (en) 2013-06-09 2016-04-20 Apple Inc. Device, method, and graphical user interface for enabling conversation persistence across two or more instances of a digital assistant
CN105265005B (en) 2013-06-13 2019-09-17 苹果公司 System and method for the urgent call initiated by voice command
WO2015020942A1 (en) 2013-08-06 2015-02-12 Apple Inc. Auto-activating smart responses based on activities from remote devices
US9729551B1 (en) * 2013-11-26 2017-08-08 Mobile Iron, Inc. Virtual mailbox
CN103647697B (en) * 2013-11-28 2017-06-20 宇龙计算机通信科技(深圳)有限公司 The mail receiving method and cloud server of mobile terminal
DE102014003520A1 (en) * 2014-03-16 2015-09-17 Tobias Rückert Method and system for processing an electronic message
US9620105B2 (en) 2014-05-15 2017-04-11 Apple Inc. Analyzing audio input for efficient speech and music recognition
US10592095B2 (en) 2014-05-23 2020-03-17 Apple Inc. Instantaneous speaking of content on touch devices
US9502031B2 (en) 2014-05-27 2016-11-22 Apple Inc. Method for supporting dynamic grammars in WFST-based ASR
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10289433B2 (en) 2014-05-30 2019-05-14 Apple Inc. Domain specific language for encoding assistant dialog
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
EP3149728B1 (en) 2014-05-30 2019-01-16 Apple Inc. Multi-command single utterance input method
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US10659851B2 (en) 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
CN105302839B (en) * 2014-07-31 2020-11-03 腾讯科技(深圳)有限公司 File filtering method and system
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10789041B2 (en) 2014-09-12 2020-09-29 Apple Inc. Dynamic thresholds for always listening speech trigger
WO2016049644A1 (en) * 2014-09-26 2016-03-31 Sanjay Parekh Method and system for email privacy, security and information theft detection
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10552013B2 (en) 2014-12-02 2020-02-04 Apple Inc. Data detection
US9711141B2 (en) 2014-12-09 2017-07-18 Apple Inc. Disambiguating heteronyms in speech synthesis
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10101822B2 (en) 2015-06-05 2018-10-16 Apple Inc. Language input correction
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10255907B2 (en) 2015-06-07 2019-04-09 Apple Inc. Automatic accent detection using acoustic models
US10186254B2 (en) 2015-06-07 2019-01-22 Apple Inc. Context-based endpoint detection
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US9697820B2 (en) 2015-09-24 2017-07-04 Apple Inc. Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
DE102016202921A1 (en) * 2016-02-25 2017-08-31 Robert Bosch Gmbh Method for transmitting data between a main unit for processing vehicle data of a vehicle and a mobile terminal and method for providing filter information for filtering vehicle data that can be called up via a main unit of a vehicle
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179309B1 (en) 2016-06-09 2018-04-23 Apple Inc Intelligent automated assistant in a home environment
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
US10523635B2 (en) * 2016-06-17 2019-12-31 Assured Information Security, Inc. Filtering outbound network traffic
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. Far-field extension for digital assistant services
US11528242B2 (en) * 2020-10-23 2022-12-13 Abnormal Security Corporation Discovering graymail through real-time analysis of incoming email

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4855A (en) * 1846-11-14 Twyeb
US5493692A (en) * 1993-12-03 1996-02-20 Xerox Corporation Selective delivery of electronic messages in a multiple computer system based on context and environment of a user
US5958006A (en) * 1995-11-13 1999-09-28 Motorola, Inc. Method and apparatus for communicating summarized data
US5995597A (en) * 1997-01-21 1999-11-30 Woltz; Robert Thomas E-mail processing system and method
US6167261A (en) * 1997-02-27 2000-12-26 At&T Wireless Svcs. Inc. Wireless communication service management
DE19832433B4 (en) 1997-08-01 2010-06-24 Mitel Networks Corporation, Ottawa Device for creating and calling user profiles in a message system
US6636733B1 (en) * 1997-09-19 2003-10-21 Thompson Trust Wireless messaging method
JPH11203216A (en) 1997-11-13 1999-07-30 Casio Comput Co Ltd Electronic mail system and electronic mail auxiliary device
US6157630A (en) 1998-01-26 2000-12-05 Motorola, Inc. Communications system with radio device and server
US6219694B1 (en) * 1998-05-29 2001-04-17 Research In Motion Limited System and method for pushing information from a host system to a mobile data communication device having a shared electronic address
US6496693B1 (en) * 1998-06-16 2002-12-17 International Business Machines Corporation Method and apparatus for transmitting data to a pager in a communications system
US6480711B1 (en) * 1998-09-15 2002-11-12 Nms Communications Corporation Method and system for wireless data communication over the internet
JP2000115527A (en) 1998-10-09 2000-04-21 Canon Inc Electronic document reading device, electronic document displaying method, information terminal device, data displaying method and storing medium
US6442589B1 (en) * 1999-01-14 2002-08-27 Fujitsu Limited Method and system for sorting and forwarding electronic messages and other data
US7076241B1 (en) * 1999-01-15 2006-07-11 International Business Machines Corporation System and method for selectively transmitting electronic messages
US7505759B1 (en) 1999-06-21 2009-03-17 Alcatel-Lucent Usa Inc. System for message control and redirection in a wireless communications network
US20010047397A1 (en) * 2000-02-18 2001-11-29 Jameson David H. Method and system for using pervasive device to access webpages
US6487278B1 (en) * 2000-02-29 2002-11-26 Ameritech Corporation Method and system for interfacing systems unified messaging with legacy systems located behind corporate firewalls
US6741855B1 (en) * 2000-03-24 2004-05-25 Sun Microsystems, Inc. Method and apparatus for remotely managing data via a mobile device
US6781972B1 (en) * 2000-03-31 2004-08-24 Lucent Technologies Inc. Method and system for subscriber-configurable communications service
US8843590B2 (en) 2000-05-31 2014-09-23 Ebm/Ip, Llc Systems, methods and computer program products for facilitating display of content within application programs executing on electronic devices
US6650890B1 (en) * 2000-09-29 2003-11-18 Postini, Inc. Value-added electronic messaging services and transparent implementation thereof using intermediate server
US7844666B2 (en) * 2000-12-12 2010-11-30 Microsoft Corporation Controls and displays for acquiring preferences, inspecting behavior, and guiding the learning and decision policies of an adaptive communications prioritization and routing system
US7616971B2 (en) * 2000-12-29 2009-11-10 International Business Machines Corporation System and method for providing access to forms for displaying information on a wireless access device
US6983310B2 (en) * 2000-12-29 2006-01-03 International Business Machines Corporation System and method for providing search capabilties on a wireless device
US7200556B2 (en) * 2001-05-22 2007-04-03 Siemens Communications, Inc. Methods and apparatus for accessing and processing multimedia messages stored in a unified multimedia mailbox
US7260607B2 (en) * 2001-08-02 2007-08-21 Siemens Communications, Inc. Methods and apparatus for performing media/device sensitive processing of messages stored in unified multimedia and plain text mailboxes
US8583430B2 (en) * 2001-09-06 2013-11-12 J. Albert Avila Semi-automated intermodal voice to data transcription method and apparatus
US8660537B2 (en) * 2001-11-16 2014-02-25 At&T Mobility Ii Llc System for the storage and retrieval of messages
US7249182B1 (en) * 2002-02-27 2007-07-24 Nokia Corporation Personal profile sharing and management for short-range wireless terminals
US8132250B2 (en) * 2002-03-08 2012-03-06 Mcafee, Inc. Message profiling systems and methods
US7376701B2 (en) * 2002-04-29 2008-05-20 Cisco Technology, Inc. System and methodology for control of, and access and response to internet email from a wireless device
US20030212745A1 (en) * 2002-05-08 2003-11-13 Caughey David A. Selective multi-step email message marketing
US7318073B2 (en) * 2002-05-31 2008-01-08 Microsoft Corporation System and method for downloading information to a mobile device
US7103313B2 (en) * 2002-06-05 2006-09-05 Nokia Corporation Automatic determination of access point content and services for short-range wireless terminals
US20040078447A1 (en) * 2002-09-17 2004-04-22 Malik Dale W. User profiles for managing email and instant messaging (IM)
CA2604505C (en) * 2005-04-14 2016-01-19 Research In Motion Limited System and method for customizing notifications in a mobile electronic device
US8494492B2 (en) * 2005-09-28 2013-07-23 Research In Motion Limited System and method for provisioning a mobile wireless communications device to display account or device-specific characteristics
US20080147818A1 (en) * 2006-12-14 2008-06-19 Itzchak Sabo Email enhancement

Also Published As

Publication number Publication date
CA2485960A1 (en) 2003-12-11
WO2003103218A3 (en) 2004-03-25
CN1659837A (en) 2005-08-24
HK1069497A1 (en) 2005-05-20
EP1510050B1 (en) 2007-07-11
CN100384185C (en) 2008-04-23
AU2003241572A1 (en) 2003-12-19
ATE367036T1 (en) 2007-08-15
JP2005528850A (en) 2005-09-22
WO2003103218A2 (en) 2003-12-11
DE60314877T2 (en) 2008-03-13
US20030224760A1 (en) 2003-12-04
EP1510050A2 (en) 2005-03-02
US7522910B2 (en) 2009-04-21
DE60314877D1 (en) 2007-08-23
AU2003241572B2 (en) 2008-07-31

Similar Documents

Publication Publication Date Title
CA2485960C (en) Method and apparatus for controlling data provided to a mobile device
US10182028B1 (en) Method and system for storing real-time communications in an email inbox
US8285267B2 (en) Synchronization in unified messaging systems
US9723460B1 (en) Device message management system
US10057380B2 (en) Providing access to information of multiple types via coordination of distinct information services
US8195714B2 (en) Context instantiated application protocol
US7133919B2 (en) System and method for providing status information from multiple information sources in a single display
JP3930432B2 (en) Computer system for business applications with alarm notification and conditional execution
US8843577B2 (en) Method, system, and computer program product for synchronization of similar data objects with event information
US6621502B1 (en) Method and system for decoupled audio and video presentation
US20080256199A1 (en) Attaching files from the attachments available in a user&#39;s mail box
WO2007123470A2 (en) Method and apparatus for adapting electronic mail
IL150386A (en) Online aggregation in unified messaging
US8065371B1 (en) Cross-platform managed message exchange
US20030172118A1 (en) Method and apparatus for providing post office protocol 3 support for limited storage devices
US6411990B1 (en) Apparatus and method for downlevel date file messaging
JPH0589004A (en) Computer system
JP2003519873A (en) Method and system for managing and tracking the status of electronic media
WO2009057987A1 (en) Smart client application using message formatting technique and mobile database

Legal Events

Date Code Title Description
EEER Examination request
MKEX Expiry

Effective date: 20230523