The teachings in accordance with the exemplary embodiments of this invention relate generally to user interfaces for devices and methods pertaining to same and, more specifically, relate to messaging applications for use in mobile and other types of devices.
One technique for sending a message from a device is to send the message to a group of recipients. However, current stationary groups do not provide an efficient means for defining recipients in the messaging context. For example, if the message content defines the relevant recipients, then in accordance with conventional practice it is not possible to create such groups beforehand that could apply in different messaging contexts.
For example, assume that a user takes a picture of an art work with the camera of a cellular phone and wants to share it with friends who appreciate the same type of art. At present, the only available technique for defining the recipients is to manually select those recipients to whom the particular message, that includes the image as content, is to be sent.
The foregoing and other problems are overcome, and other advantages are realized, in accordance with the non-limiting and exemplary embodiments of this invention.
In accordance with the exemplary embodiments of this invention there is provided a method that includes initiating a message composition operation with a device; a user selecting a media as a message content; and the device automatically selecting at least one message recipient based at least in part on a type of media selected by the user.
Further in accordance with the exemplary embodiments of this invention there is provided a computer program product that is embodied in at least one computer readable storage media and that comprises program instructions the execution of which by at least one data processor results in operations that include initiating a message composition operation with a device; a user selecting a media as a message content; and the device automatically selecting at least one message recipient based at least in part on a type of media selected by the user.
Still further in accordance with the exemplary embodiments of this invention there is provided a device that comprises at least one data processor; at least one memory coupled to the at least one data processor; at least one interface to a communications network that is coupled to the at least one data processor; and a user interface coupled to the at least one data processor. The data processor is responsive to a user selecting, via the user interface, a media from the memory during a message composition operation as a message content, to automatically select from the memory at least one message recipient based at least in part on a type of media selected by the user.
Further in accordance with the exemplary embodiments of this invention there is provided a data structure stored in a tangible memory device. The data structure includes a plurality of entries containing data for specifying message contact information for entities. The entries are organized by a plurality of message content types and, for each message content type, comprise contact information for an entity or entities that a message having that type of message content type was previously sent to. The data structure may further include, for each message content type, contact information for an entity or entities that a message having that type of message content type was previously received from. The data structure is searchable by a messaging application for automatically selecting at least one message recipient based on a subject of a message being composed.
The foregoing and other aspects of the exemplary embodiments of this invention are made more evident in the following Detailed Description, when read in conjunction with the attached Drawing Figures, wherein:
By way of introduction, the use of the exemplary embodiments of this invention improve and enhance current approaches to providing a messaging capability for a user of a device, such as a mobile device (e.g., a cellular telephone) or a non-mobile device (e.g., a computer).
Referring first to
It should first be noted that while the exemplary embodiments of the invention will be shown and described as being practiced in a wireless communications terminal, in general the teachings of this invention apply to any type of electronic device that is capable of hosting a messaging application software. Thus, the exemplary embodiments of this invention may be used in desktop computers and workstations, laptop computers, notebook computers and personal digital assistants (PDAs), to name just a few of the many possible devices that can benefit from the use of the exemplary embodiments of this invention. As such, it should be appreciated that the description of the MS 100 in
Still referring to
In general, the various embodiments of the MS 100 can include, but are not limited to, cellular telephones, personal digital assistants (PDAs) and portable computers, and may include or incorporate, as non-limiting examples, image capture devices such as digital cameras, gaming devices, music storage and playback appliances, Internet appliances permitting Internet access and browsing, as well as units or terminals that incorporate combinations of such functions.
The MCU 120 is assumed to include or be coupled to some type of a memory 130, including a non-volatile memory for storing an operating program and other information, as well as a volatile memory for temporarily storing required data, scratchpad memory, received packet data, packet data to be transmitted, and the like. The operating program is assumed, for the purposes of this invention, to enable the MCU 120 to execute the software routines, layers and protocols required to implement the methods in accordance with the exemplary embodiments of this invention, as well as to provide a suitable user interface (UI), via display 140 and user input 160, with a user. A microphone 150 and a speaker (not shown) are typically provided for enabling the user to conduct voice calls in a conventional manner.
Stored in the memory 130 is assumed to be a data structure that is descriptive of a message contact list (CL) 130A, including records of messages sent from the MS 100, and possibly also messages received by the MS 100. Associated with the CL 130A is a message or messaging application 130B. The messaging application 130B comprises computer executable program code that interacts with the data structure that is descriptive of the CL 130A, the user interface comprised of the display 140 and the user input 160, as well as media stored in the memory 130, as will be described in detail below. The messaging application 130B that comprises computer executable program code is suitable for use in implementing the exemplary embodiments of this invention, as described more fully below.
The mobile station may also include an image capture device, such as a camera 170.
The mobile station 100 also contains a wireless section that includes a digital signal processor (DSP) 180, or equivalent high speed processor or logic, as well as a wireless transceiver that includes a transmitter 200 and a receiver 220, both of which are coupled to an antenna 240 for communication with the network operator. At least one local oscillator, such as a frequency synthesizer (SYNTH) 260, is provided for tuning the transceiver. Data, such as digitized voice and packet data, is transmitted and received through the antenna 240. The wireless section may be considered to function as a long range interface (e.g., hundreds or thousands of meters) to a base station coupled to a communications network, such as a cellular operator network and/or the Internet. Note that the MS 100 may also include a local area wireless transceiver (Xceiver) 190, such as one based on Bluetooth™ low power RF or infrared (IR) technology. The local area transceiver 190 may be considered as a short range interface (e.g., meters or tens of meters) for coupling to a wireless local area network (WLAN) via a suitable access point. Messages may be sent and received through either or both of the long and short range transceivers.
The exemplary embodiments of this invention may be implemented by computer software (e.g., the messaging application 130B) that is executable by a data processor of the mobile station 100, such as the processor 120, or by hardware, or by a combination of software and hardware. Further in this regard it should be noted that the various blocks of the logic flow diagram of, for example,
The memory 130 may be of any type suitable to the local technical environment and may be implemented using any suitable data storage technology, such as semiconductor-based memory devices, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory. The data processor(s) 120, 180 may be of any type suitable to the local technical environment, and may include one or more of general purpose computers, special purpose computers, microprocessors, digital signal processors (DSPs) and processors based on a multi-core processor architecture, as non-limiting examples.
The exemplary embodiments of this invention relate at least in part to (mobile) messaging and the creation of recipient groups.
The exemplary embodiments of this invention provide a mechanism to create a recipient group based on characteristics of message content in an ad hoc manner. As opposed to manually selecting the recipients or a group of recipients, the user instead may define the content of a message, and the messaging application 130B then analyses relationships between the definition of the content and contacts (such as contacts in the contact list, an address book, or a phone book, collectively referred to as the contact list 130A) and selects the relevant contact or contacts as the recipient(s) of the message.
As an example, assume a user locates an artwork for sale. The user finds the artwork attractive and photographs it using the camera 170. The user has friends who also like art and decides to send the image to them. The user invokes the messaging application 130B, and a blank message is displayed on the display 140. The image is used to insert the message body and the user writes “art” in the subject field. The messaging application 130B then searches for relations between the word “art” and contacts in the contact list 130A. Assume that the messaging application 130B finds five contacts who have shared similar type of content previously, and suggests these five contacts as message recipients. The user then has the option to accept the five selected contacts, or to remove one or more of them and/or to add another recipient (one not part of the original five contacts selected by the messaging application 130B).
There are a number of possible implementations for realizing the exemplary embodiments of this invention. For example, and with regard to the definition of contacts, they may be created automatically based on an interaction history, including messaging history and manual editing performed previously. The contact definition may also be performed manually by the user. The contact definition may also be accomplished by allowing the user to share a profile with one or more other users, where the profile includes metadata, such as user preferences, likes and dislikes, to aid the messaging application 130B to define relations between the content and users.
Further by example, and with regard to definition of content, this may be accomplished using, for example, an active subject field, a message body search, an analysis of relations between the content and contacts, and can be based on intelligence in creating new relationships and updating previous relationships between the content and contacts based on the user behavior, e.g., message characteristics used, actions performed for messages (forwarding certain kinds of messages for certain recipients) and personal folders created.
It can be appreciated that the exemplary embodiments of this invention enable and facilitate the definition of message recipients. The exemplary embodiments of this invention may also enable the user to remember certain contacts that have not been recently contacted, by generating the message recipient fields automatically for the user.
Reference is now made to
These categories preferably correspond to media stored in the memory 130, such as media stored in media folders 130E and sub-folders 130F. Associated therewith may be a media labeler module or function 165 that receives media from media sources (e.g., camera 170, microphone 150, SMS (text), and so forth). Note that text may be locally generated via the user input 160, such as when composing a document. The media labeler 165 is enabled to determine a general category based on the media source that generates the media, such as an image or a sound clip, or from other information, such as a file type. Alternatively, the category, and possibly sub-category, may be explicitly designated by the user via the user input 460. Alternatively, the labeler 165 may automatically designate the category based on the media source, e.g., “image”, while the sub-category is designated by the user (e.g., “landscape”), or as another example may designate the category as “audio” if the media source is the microphone 150, while the user designates the type of audio as “jazz” when recording a sound clip while at a concert. For media received from an external source (e.g., from the Internet 70) the labeler 165 may designate the category based on the file type (e.g., .jpg=image), while the user input 160 is employed to designate the sub-category, e.g., “mountain scene”. In any event, it may be assumed that the memory 130 is populated with one or more stored media from one or more media sources, and may possibly be logically arranged in the folders 130E and sub-folders 130F, as shown in
Further in accordance with the exemplary embodiments of this invention, after the user selects and attaches a particular media to a message 135 as message content, the message composed 130C is enabled to access the message history 130D to lookup the associated contacts, based on at least one of the category and sub-category of the user-selected content. As is shown in
After sending the message the message composer 130C, or some other functionality, preferably updates the message history data structure 130D accordingly.
As was noted above, while the subject line may be filled in by the user, in some embodiments it could be filled in by the message composer 130C, depending on the media selected by the user and on the nature of any metadata associated with the selected media.
In the example illustrated in
Referring to
Note that the execution of Block E may be considered to be optional.
In general, the various embodiments may be implemented in hardware or special purpose circuits, software, logic or any combination thereof. For example, some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software which may be executed by a controller, microprocessor or other computing device, although the invention is not limited thereto. While various aspects of the invention may be illustrated and described as block diagrams, flow charts, or using some other pictorial representation, it is well understood that these blocks, apparatus, systems, techniques or methods described herein may be implemented in, as non-limiting examples, hardware, software, firmware, special purpose circuits or logic, general purpose hardware or controller or other computing devices, or some combination thereof. Embodiments of the inventions may be practiced in various components such as integrated circuit modules. The design of integrated circuits is by and large a highly automated process. Complex and powerful software tools are available for converting a logic level design into a semiconductor circuit design ready to be etched and formed on a semiconductor substrate.
Programs, such as those provided by Synopsys, Inc. of Mountain View, Calif. and Cadence Design, of San Jose, Calif. automatically route conductors and locate components on a semiconductor chip using well established rules of design as well as libraries of pre-stored design modules. Once the design for a semiconductor circuit has been completed, the resultant design, in a standardized electronic format (e.g., Opus, GDSII, or the like) may be transmitted to a semiconductor fabrication facility or “fab” for fabrication.
The foregoing description has provided by way of exemplary and non-limiting embodiments a full and informative description of the invention. However, various modifications and adaptations may become apparent to those skilled in the relevant arts in view of the foregoing description, when read in conjunction with the accompanying drawings and the appended claims.
For example, other type of media content may be employed than just the few examples discussed above. Further, it should be appreciated that in some devices that operate in accordance with the exemplary embodiments of this invention the interface or interfaces may be wired interfaces (e.g., cable, optical fiber) and not wireless interfaces per se.
Further by example, it should be noted that the automatic selection of recipient(s) is not limited only to persons as recipients. For example, assume a case of a user posting material, such as images, to his or someone else's blog. Here the recipient is a blog, as opposed to a person. Thus, as employed herein a recipient can be any entity, e.g., a person, or a real or virtual object or thing, having an address (such as, but not limited to, a phone number, an email address or a URL) where a message can be sent.
Still further by example, the information regarding the recipients can be constructed as well from sources other than messaging and communication history. For instance, the contacts might provide information regarding themselves. Further, a document, or a Powerpoint™, or other types of files can be analyzed for extracting contact-related information.
However, all such and similar modifications of the teachings of this invention will still fall within the scope of this invention.
Furthermore, some of the features of the examples of this invention may be used to advantage without the corresponding use of other features. As such, the foregoing description should be considered as merely illustrative of the principles, teachings, examples and exemplary embodiments of this invention, and not in limitation thereof.