System And Method For Displaying Message History When Composing A Message
A system and a method are provided for displaying message history while composing a message. The method includes displaying a message composition application comprising a first recipient field, a message history display area, and a message composition field; detecting an input into the first recipient field for specifying a recipient; and upon detecting that the recipient has been specified: displaying a second recipient field; navigating application focus from the first recipient field to the second recipient field; and displaying a message history associated with the recipient in the message history display area.
Latest RESEARCH IN MOTION LIMITED Patents:
- Aligning timing for direct communications
- MANAGING SHORT RANGE WIRELESS DATA TRANSMISSIONS
- METHODS AND SYSTEMS FOR CONTROLLING NFC-CAPABLE MOBILE COMMUNICATIONS DEVICES
- IMAGING COVER FOR A MOBILE COMMUNICATION DEVICE
- MOBILE WIRELESS COMMUNICATIONS DEVICE PROVIDING NEAR FIELD COMMUNICATION (NFC) UNLOCK AND TAG DATA CHANGE FEATURES AND RELATED METHODS
The following relates to systems and methods for displaying message history when composing a message.
BACKGROUNDMessaging has become a popular way of electronically communicating in a conversational style, in particular using a mobile or handheld device. A user can send messages to a recipient and receive messages from the recipient and can also send and receive messages among a group of recipients, or participants. Messages may be composed and read in a graphical user interface (GUI), which allows a user to specify the recipient or recipients. Non-limiting examples of messaging technology include text messaging and instant messaging (IM). Text messaging includes, for example, short messaging service (SMS) messaging and multimedia messaging service (MMS) messaging.
Messaging conversations often have a history of messages exchanged between the conversation participants, and several conversations may exist with the same recipient. For example, a user may begin a new conversation with a recipient rather than continue a previous conversation. Furthermore, if a recipient is a member of multiple groups, the recipient may be involved in multiple ongoing conversations at the same time. Organizing such conversations can therefore become challenging.
Embodiments will now be described by way of example only with reference to the appended drawings wherein:
In messaging applications, such as text messaging and instant messaging, a user typically composes a message and sends the message to a recipient. The messages that are exchanged between a user and a recipient are also typically recorded or saved. These messages may hereinafter be commonly referred to as a “message history”.
Turning to
It can be appreciated that the mobile device is herein generally referenced with the numeral “10” and that the suffixes “a”, “b”, “c”, and “d” are used only to distinguish between different mobile devices 10 in the examples described.
Mobile device 10a has access to, or has stored thereon, or both, a message history 35. Message history 35 includes messages that have already been exchanged in a message composition application such as SMS, IM, MMS, etc. In one example, message history 35 stores message histories organized according to the sender(s) and receiver(s) involved in the associated messaging conversation. For example, messages exchanged solely between mobile device 10a and mobile device 10b are saved together in storage 200. Similarly, messages exchanged solely between mobile device 10a and mobile device 10c, and messages exchanged solely between mobile device 10a and mobile device 10d, are saved respectively in storages 202 and 204. Messages exchanged among a group of participants that comprises mobile device 10a and any plurality of other mobile devices 10, e.g., mobile device 10b, mobile device 10c, and mobile device 10d, are stored in group storage 205.
A user of mobile device 10a interacts with components of mobile device 10a to participate in a messaging conversation. For example, the user provides input to mobile device 10a using input mechanisms, such as a keyboard and a touch-sensitive screen, in order to compose a new message or to read a received message. Mobile device 10a presents information to the user using output devices, such as a display and a speaker. Using input mechanisms and output mechanisms of mobile device 10a, the user performs messaging functionality as described below, as is well known in the art.
It is recognized that displaying message history at certain times, such as when composing or drafting a message which has not yet been sent, provides beneficial information to the user. For example, when composing a message to a recipient, it is beneficial to know what messages have been previously exchanged between the user and the recipient. This, for example, provides the user with the context of the conversation and allows the user to prepare a message that is appropriate within the context.
It is also recognized that selecting the correct recipient may be difficult based on limited information. For example, although a recipient can be identified by name, or a picture, or both, a user may still not fully recognize the recipient. It is also recognized that the message history between the user and the recipient can help confirm and clarify the identity of the recipient. The user can also use the message history to help identify the subjective relationship (e.g. friendly, curt, informal, formal, etc.) between the user and the recipient.
As the present systems and methods described herein show the message history, for example, upon specifying a recipient, the user can determine whether or not the specified recipient is correct. If the specified recipient is not correct, as determined from the message history, the user can specify another recipient.
Turning to
Referring to
GUI 210 also enables user to add icons to a message, such as emoticons, by selecting emoticon button 218. GUI 210 also includes keyboard button 220, recipients button 224, attachments button 226, and next unopened item button 228. Upon detecting an actuation of keyboard button 220, a touch screen keyboard is shown on a display of mobile device 10a display. Upon detecting an actuation of recipients button 224, the selected recipients are shown. Further information about the recipients can also be shown. Upon detecting an actuation of attachments button 226, functionality is presentation that enables a user to add or attach a file to the message. Upon detecting an actuation of next unopened item button 228, the next unopened message is displayed.
Continuing with
Upon detecting a selection of cursor 32, indicating the selection by a user of recipient name “Thomas Michaels”, GUI 210 of
As shown in GUI 210 of
The user can use the message history to confirm that he or she has selected the correct or desired recipient for messaging. In the example shown in
In one example, when actuations are detected to move cursor 232 from the second recipient field 234 to message composition field 216, recipient field 212 and recipient field 234 continue to be displayed. In such an example, the user is able to change recipients while drafting a message through navigation between message composition field 216 and recipient field 212 or second recipient field 234.
Referring to
GUI 210 of
Turning to
As shown in
Message C 4 represents an external message from a sender that is not directly connected to host system 25, such as mobile device 10, some other mobile device (not shown), or any device connected to the public or private network 24 (e.g. the Internet). Message C may be e-mail, voice-mail, calendar information, database updates, web-page updates or a command message from mobile device 10 to host system 25. Host system 25 may comprise, communication links, hardware and software associated with a corporate enterprise computer network system, one or more wireless mobility agents, a TCP/IP connection, a collection of data stores, (for example a data store for e-mail could be an off-the-shelf mail server like Microsoft Exchange® Server or Lotus Notes® Server), and in some examples, is contained within and behind a corporate firewall.
As an illustrative example of the operation for wireless router 26 shown in
Wireless router 26 provides a range of services to make creating a push-based host service possible. These networks may comprise: (1) the Code Division Multiple Access (CDMA) network, (2) the Groupe Special Mobile or the Global System for Mobile Communications (GSM) and the General Packet Radio Service (GPRS), and (3) the existing and upcoming third-generation (3G) and fourth generation (4G) networks like EDGE, UMTS and HSDPA, LTE, Wi-Max etc. Some older examples of data-centric networks include, but are not limited to: (1) the Mobitex Radio Network (“Mobitex”) and (2) the DataTAC Radio Network (“DataTAC”).
To be effective in providing push services for host systems 25, wireless router 26 may implement a set of defined functions. It can be appreciated that one could select many different hardware configurations for wireless router 26, however, many of the same or similar set of features would likely be present in the different configurations.
An example configuration of mobile device 10 is illustrated in
Main processor 102 also interacts with additional subsystems such as a Random Access Memory (RAM) 106, a flash memory 108, a display 110, an auxiliary input/output (I/O) subsystem 112, a data port 114, a keyboard 116, a speaker 118, a microphone 120, a GPS receiver 121, short-range communications subsystem 122, and other device subsystems 124. As will be discussed below, short-range communications subsystem 122 can implement any suitable or desirable device-to-device or peer-to-peer communications protocol capable of communicating at a relatively short range, e.g. directly from one device to another. Examples include Bluetooth®, ad-hoc WiFi, infrared, or any “long-range” protocol re-configured to utilize available short-range components. It will therefore be appreciated short-range communications subsystem 122 may represent any hardware, software or combination of both that enable a communication protocol to be implemented between devices or entities in a short range scenario, such protocol being standard or proprietary.
Some of the subsystems of mobile device 10 perform communication-related functions, whereas other subsystems may provide “resident” or on-device functions. By way of example, display 110 and keyboard 116 may be used for both communication-related functions, such as entering a text message for transmission over network 200, and device-resident functions such as a calculator or task list.
Mobile device 10 can send and receive communication signals over network 200 after required network registration or activation procedures have been completed. Network access is associated with a subscriber or user of mobile device 10. To identify a subscriber, mobile device 10 may use a subscriber module component or “smart card” 126, such as a Subscriber Identity Module (SIM), a Removable User Identity Module (RUIM) and a Universal Subscriber Identity Module (USIM). In the example shown, a SIM/RUIM/USIM 126 is to be inserted into a SIM/RUIM/USIM interface 128 in order to communicate with a network. Without the component 126, mobile device 10 is not fully operational for communication with the network 200. Once SIM/RUIM/USIM 126 is inserted into SIM/RUIM/USIM interface 128, it is coupled to the main processor 102.
Mobile device 10 is typically a battery-powered device and in this example includes a battery interface 132 for receiving one or more rechargeable batteries 130. In at least some embodiments, battery 130 can be a smart battery with an embedded microprocessor. Battery interface 132 is coupled to a regulator (not shown), which assists battery 130 in providing power V+ to mobile device 10. Although current technology makes use of a battery, future technologies such as micro fuel cells may provide the power to mobile device 10.
Mobile device 10 also includes an operating system 134 and software components 136 to 146 which are described in more detail below. Operating system 134 and software components 136 to 146 that are executed by main processor 102 are typically stored in a persistent store such as flash memory 108, which may alternatively be a read-only memory (ROM) or similar storage element (not shown). Those skilled in the art will appreciate that portions of operating system 134 and software components 136 to 146, such as specific device applications, or parts thereof, may be temporarily loaded into a volatile store such as the RAM 106. Other software components can also be included, as is well known to those skilled in the art.
The subset of software applications 136 that control basic device operations, including data and voice communication applications, may be installed on mobile device 10 during its manufacture. Software applications may include a message application 138, a device state module 140, a Personal Information Manager (PIM) 142, a connect module 144 and an IT policy module 146. A message application 138 can be any suitable software program that allows a user of mobile device 10 to send and receive electronic messages, wherein messages are typically stored in flash memory 108 of mobile device 10. A device state module 140 provides persistence, i.e. device state module 140 ensures that important device data is stored in persistent memory, such as flash memory 108, so that the data is not lost when mobile device 10 is turned off or loses power. A PIM 142 includes functionality for organizing and managing data items of interest to the user, such as, but not limited to, e-mail, text messages, instant messages, contacts, calendar events, and voice mails, and may interact with network 200. A connect module 144 implements the communication protocols that are required for mobile device 10 to communicate with the wireless infrastructure and any host system 25, such as an enterprise system, that mobile device 10 is authorized to interface with. An IT policy module 146 receives IT policy data that encodes the IT policy, and may be responsible for organizing and securing rules such as the “Set Maximum Password Attempts” IT policy.
Other types of software applications or components 139 can also be installed on mobile device 10. These software applications 139 can be pre-installed applications (i.e. other than message application 138) or third party applications, which are added after the manufacture of mobile device 10. Examples of third party applications include games, calculators, utilities, etc. Additional applications 139 can be loaded onto mobile device 10 through at least one of wireless network 20, auxiliary I/O subsystem 112, data port 114, short-range communications subsystem 122, or any other suitable device subsystem 124.
Data port 114 can be any suitable port that enables data communication between mobile device 10 and another computing device. Data port 114 can be a serial or a parallel port. In some instances, data port 114 can be a USB port that includes data lines for data transfer and a supply line that can provide a charging current to charge battery 130 of mobile device 10.
For voice communications, received signals are output to speaker 118, and signals for transmission are generated by microphone 120. Although voice or audio signal output is accomplished primarily through speaker 118, display 110 can also be used to provide additional information such as the identity of a calling party, duration of a voice call, or other voice call related information.
For composing data items, such as e-mail messages and text messages, for example, a user or subscriber could use a touch-sensitive overlay (not shown) on display 110 that is part of a touch screen display (not shown), in addition to possibly auxiliary I/O subsystem 112. Auxiliary I/O subsystem 112 may include devices such as: a mouse, track ball, infrared fingerprint detector, or a roller wheel with dynamic button pressing capability. A composed item may be transmitted over wireless network 20 through communication subsystem 104.
Another example of a messaging application is a text messaging application 57 which is used for sending messages over phone or cellular networks. These messages include, for example, SMS and MMS messages. The message histories from the text messages are storied in database 35. Like other messaging applications, text messaging application 57 and message histories 35 can interact with other applications, such as contacts database 34 of address book 56.
The host system instant messaging application 50 is an instant messaging service that is hosted and provided by host system 25. The host system instant messaging application 50 includes or otherwise has access to a host buddy list 30 for storing contact information for buddies also using host system instant messaging application 50. 3rd part instant messaging application 52 includes or otherwise has access to a 3rd party buddy list 32 for storing contact information for buddies also using 3rd party instant messaging application 52. It will be appreciated that any number of host system or 3rd party instant messaging services can be installed and run on mobile device 10 and thus the two shown in
In some example embodiments, each message generally comprises a body, which contains the content for the message (e.g. text), and a header, which contains various fields used for transmitting and processing each message. For example, the header includes a message type field to specify the type of transmission (e.g. PIN, SMS, MMS, email, etc.), a source field to specify the device address for the sender, a destination field to specify the device address for the intended recipient, a conversation ID field to identify which conversation thread the message corresponds to (e.g. such that each message is identified by the conversation in which it was sent), and a timestamp field to indicate the time (and if desired, the date) at which the message was sent by the designated sender.
It will be appreciated that any module or component exemplified herein that executes instructions or operations may include or otherwise have access to computer readable media such as storage media, computer storage media, or data storage devices (removable and/or non-removable) such as, for example, magnetic disks, optical disks, or tape. Computer storage media may include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data, except transitory propagating signals per se. Examples of computer storage media include RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by an application, module, or both. Any such computer storage media may be part of mobile device 10, or accessible or connectable thereto. Any application or module herein described may be implemented using computer readable/executable instructions or operations that may be stored or otherwise held by such computer readable media.
Details regarding examples for displaying message history when composing a message will now be discussed.
Turning to
Referring first to
In
Referring to
Turning to
Further example mobile device GUIs show the flexibility of the order in which information is added in
Referring first to
Referring to
Once the desired recipient is input, with reference to
Turning to
Turning to
Referring first to
Referring to
Referring to
Mobile device 10 is configured to receive text input into recipient field 212. Upon receiving text input, a list of candidate recipients corresponding to the text input into the recipient field is displayed in a list, such as, for example, dropdown list 230, a popup list or the like. The list, for example, comprises the desired recipient and other recipients having some correspondence to the input text. Upon detecting an initial interest in one of the candidate recipients, such as, for example, through the detection that cursor 232 has been positioned over a recipient in the list or by detecting a single click or touch of a recipient in the list, or some other similar input mechanism, mobile device 10 displays the message history between the user of mobile device 10 and the recipient of interest in message history display area 214. Mobile device 10 is further configured to receive a conclusive selection input, such as, for example, through the detection of an actuation input while an entry in the list is highlighted or by detecting a double click or touch of a recipient in the list, or some other similar input mechanism, which selects one of the recipients from the list for inclusion as a recipient in recipient field 212. In another example, before receiving the conclusive selection input selecting the desired recipient, mobile device 10 detects a second initial interest in another one of the candidate recipients and displays a second message history between the user and the another one of the candidate recipients in message history display area 214.
Turning to
Referring to
In one example, link 324 reduces the number of messages to scroll over when navigating between recipient field 212 and message composition field 216. For example if input is currently being entered into message composition field 216, and a switch is desired to input text into recipient field 212, in some examples it is necessary to scroll through all of the messages displayed in message history display area 214. In some examples, the messages in message history display area 214 are displayed in a continuous fashion and if there are many messages in the message history, it may be necessary to scroll through all of the messages, up to the earliest message, before being able to navigate to recipient field 212. In the example shown in
Upon detecting a selection of link 324 of
The message history shown in message history display area 214 is a portion of a complete message history between the user of mobile device 10 and the recipient. The message history shown in the message history display area 214 may be selected to be the most recent portion of the complete message history, and the link 324, when selected, navigates to an older portion of the complete message history.
Turning to
Turning to
Referring first to
In the example GUI 210 of
Upon selecting the recipient name “Thomas (ALL)” 354, referring to
Messages displayed in message history display area 214 of
As seen from
A specified recipient may unify multiple recipient contact addresses, and the message history displayed in such an example may include a combination of messages exchanged between the user and any one of the multiple recipient contact addresses. For example, each of the recipient contact addresses may have identical names associated with the contact entry.
Turning to
As shown in to
Turning to
In one aspect, there is provided a method of operating a mobile device comprising: displaying a message composition application comprising a first recipient field, a message history display area, and a message composition field; detecting an input into the first recipient field for specifying a recipient; and upon detecting that the recipient has been specified: displaying a second recipient field; navigating application focus from the first recipient field to the second recipient field; and displaying a message history associated with the recipient in the message history display area.
In another aspect, there is provided a computer readable medium comprising computer executable instructions for displaying message history while composing a message, the computer executable instructions comprising: displaying a message composition application comprising a first recipient field, a message history display area, and a message composition field; detecting an input into the first recipient field for specifying a recipient; and upon detecting that the recipient has been specified: displaying a second recipient field; navigating application focus from the first recipient field to the second recipient field; and displaying a message history associated with the recipient in the message history display area.
In yet another aspect, there is provided a mobile device comprising a processor, a display, and memory, the memory comprising computer executable instructions for displaying message history on the display while composing a message, the computer executable instructions comprising: displaying a message composition application comprising a first recipient field, a message history display area, and a message composition field; detecting an input into the first recipient field for specifying a recipient; and upon detecting that the recipient has been specified: displaying a second recipient field; navigating application focus from the first recipient field to the second recipient field; and displaying a message history associated with the recipient in the message history display area.
The steps or operations in the flow charts described herein are just for example. There may be many variations to these steps or operations without departing from the spirit of the invention. For instance, the steps may be performed in a differing order, or steps may be added, deleted, or modified.
It can also be appreciated that the displays or screens described herein are just for example. There may be many variations to the configuration and arrangement of information and user interface controls without departing from the scope of the above principles. For instance, the information and the user interface controls may be in a differing order, or may be added, deleted, or modified.
Although the above has been described with reference to certain specific embodiments, various modifications thereof will be apparent to those skilled in the art without departing from the scope of the claims appended hereto.
Claims
1. A method of operating a mobile device comprising:
- displaying a message composition application comprising a first recipient field, a message history display area, and a message composition field;
- detecting an input into the first recipient field for specifying a recipient; and
- upon detecting that the recipient has been specified: displaying a second recipient field; navigating application focus from the first recipient field to the second recipient field; and displaying a message history associated with the recipient in the message history display area.
2. The method of claim 1 further comprising, when detecting application focus has moved from the second recipient field to the message composition field, continuing to display the first recipient field and the second recipient field.
3. The method of claim 1 further comprising receiving text input in the message composition field before receiving the input in the first recipient field for specifying the recipient.
4. The method of claim 1 further comprising:
- receiving text in the first recipient field;
- displaying a list of candidate recipients corresponding to the text in the first recipient field, the list also comprising the recipient;
- detecting that a cursor has been positioned over the recipient in the list;
- displaying the message history associated with the recipient in the message history display area; and
- receiving a selection input specifying the recipient, wherein the selection input is the input received in the first recipient field.
5. The method of claim 4 further comprising, before receiving the selection input specifying the recipient, detecting that the cursor has been positioned over a candidate recipient, and displaying message history associated with the candidate recipient in the message history display area.
6. The method of claim 1 wherein the message history shown in the message history display area is a portion of a complete message history associated with the recipient, and a link is provided in the message composition application to navigate between different portions of the complete message history.
7. The method of claim 6 wherein the message history shown in the message history display area is the most recent portion of the complete message history, and the link, when selected, navigates to an older portion of the complete message history.
8. The method of claim 1 wherein the recipient that has been specified is a contact entry unifying multiple recipient contact addresses, and the message history displayed comprises a combination of messages exchanged with any one of the multiple recipient contact addresses.
9. The method of claim 8 wherein each of the recipient contact addresses have identical names associated with the contact entry.
10. The method of claim 1 wherein the message is a text message, which is exchanged using a short messaging service protocol or a multimedia messaging service protocol.
11. The method of claim 1 further comprising receiving an additional input specifying an additional recipient, and replacing the message history associated with the recipient with a message history associated with the additional recipient.
12. A computer readable medium comprising computer executable instructions for displaying message history while composing a message, the computer executable instructions comprising:
- displaying a message composition application comprising a first recipient field, a message history display area, and a message composition field;
- detecting an input into the first recipient field for specifying a recipient; and
- upon detecting that the recipient has been specified: displaying a second recipient field; navigating application focus from the first recipient field to the second recipient field; and displaying a message history associated with the recipient in the message history display area.
13. The computer readable medium of claim 12 further comprising, when detecting application focus has moved from the second recipient field to the message composition field, continuing to display the first recipient field and the second recipient field.
14. The computer readable medium of claim 12 further comprising receiving text input in the message composition field before receiving the input in the first recipient field for specifying the recipient.
15. The computer readable medium of claim 12 further comprising:
- receiving text in the first recipient field;
- displaying a list of candidate recipients corresponding to the text in the first recipient field, the list also comprising the recipient;
- detecting that a cursor has been positioned over the recipient in the list;
- displaying the message history associated with the recipient in the message history display area; and
- receiving a selection input specifying the recipient, wherein the selection input is the input received in the first recipient field.
16. The computer readable medium of claim 15 further comprising, before receiving the selection input specifying the recipient, detecting that the cursor has been positioned over a candidate recipient, and displaying message history associated with the candidate recipient in the message history display area.
17. The computer readable medium of claim 12 wherein the message history shown in the message history display area is a portion of a complete message history associated with the recipient, and a link is provided in the message composition application to navigate between different portions of the complete message history.
18. The computer readable medium of claim 17 wherein the message history shown in the message history display area is the most recent portion of the complete message history, and the link, when selected, navigates to an older portion of the complete message history.
19. The computer readable medium of claim 12 wherein the recipient that has been specified is a contact entry unifying multiple recipient contact addresses, and the message history displayed comprises a combination of messages exchanged with any one of the multiple recipient contact addresses.
20. The computer readable medium of claim 19 wherein each of the recipient contact addresses have identical names associated with the contact entry.
21. The computer readable medium of claim 12 wherein the message is a text message, which is exchanged using a short messaging service protocol or a multimedia messaging service protocol.
22. The computer readable medium of claim 12 further comprising receiving an additional input specifying an additional recipient, and replacing the message history associated with the recipient with a message history associated with the additional recipient.
23. A mobile device comprising a processor, a display, and memory, the memory comprising computer executable instructions for displaying message history on the display while composing a message, the computer executable instructions comprising:
- displaying a message composition application comprising a first recipient field, a message history display area, and a message composition field;
- detecting an input into the first recipient field for specifying a recipient; and
- upon detecting that the recipient has been specified: displaying a second recipient field; navigating application focus from the first recipient field to the second recipient field; and displaying a message history associated with the recipient in the message history display area.
Type: Application
Filed: Nov 14, 2011
Publication Date: May 16, 2013
Applicant: RESEARCH IN MOTION LIMITED (Waterloo)
Inventors: Leonid Vymenets (North York), Henry Yao-Tsu Chen (Waterloo), Francis Thomas Riddle (Portsmouth, NH)
Application Number: 13/295,404
International Classification: G06F 3/048 (20060101); G06F 15/16 (20060101);