The present invention generally relates to computer systems and in particular to electronic mail (e-mail) in computer systems. Electronic mail (e-mail) is extensively utilized as a professional, educational, and personal mode of communication. E-mail is a method of composing, sending, and/or receiving messages over an electronic communication system. E-mail messages may be sent over the Internet or within an intranet system which allows users within the network of an organization to e-mail each other. An e-mail may be sent to a single recipient, or multiple recipients, simultaneously.
Several problems exist with sending and/or forwarding a single e-mail to multiple recipients when a reply is expected. When e-mail is sent to a large set of people in a forwarded e-mail chain, recipients often reply within the body of the “original” e-mail message, and then continue forwarding the e-mail. The sender may color coordinate or change the font of the response; however, this is not always the case. When an e-mail is forwarded to multiple individuals (or groups) the responses within the e-mail message may become cluttered and confusing to sort through. The end recipient may receive a message that is no longer credible because of inadvertent (or intentional) erroneous manipulation. Current e-mail technology does not allow the recipient of an e-mail message which has been forwarded multiple times, to view which author sent a part of a message, and at what the (date) the author included the information.
Disclosed are a method, system and computer program product for displaying authorship and time stamp data within an electronic mail (e-mail) message comprising multiple contributors. The recipient of a multiple author e-mail may view an e-mail inclusive or exclusive of an author's comments. The e-mail client is capable of identifying the author and insertion date of content included within an e-mail message by hovering on or near the word(s)/or phrase utilizing a pointing device. E-mail content may be viewed in chronological order of contribution(s) as selected by the recipient. Contributed content may be displayed chronologically, or color coordinated to avoid displacing key information.
In one embodiment, the invention provides a method for sorting the authors, date, and time of an incoming e-mail. Utilizing a mail user agent (MUA) such as Eudora™, IBM Lotus Notes™, Microsoft Outlook™, or Outlook Express™, a client creates a single e-mail message addressed to one or more recipients. The e-mail may be forwarded a number of times to multiple individuals. Each individual may insert text and/or information into the body of the e-mail. The original author, as well as each e-mail recipient, may select to view the included messages in chronological order of input, author exclusive, and/or author inclusive.
In one embodiment, the invention provides a method for dynamically displaying author information and a time stamp for information inserted into an e-mail message. A client sends an e-mail to one or more recipients, who then forward the e-mail to one or more recipients, creating a long chain e-mail. Recipients of the e-mail may randomly insert information into the original e-mail body. Authorship and time stamp data are dynamically displayed when a pointing device (e.g. a mouse, pen, biometric type, etc.) is held on or near the text.
The above as well as additional features of the present invention will become apparent in the following detailed written description.
The invention itself will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein:
The illustrative embodiments provide a method, system and computer program product for displaying authorship and time stamp data within an electronic mail (e-mail) message comprising multiple contributors. The recipient of a multiple author e-mail may view an e-mail inclusive or exclusive of an author's comments. The e-mail client is capable of identifying the author and insertion date of content included within an e-mail message by hovering on or near the word(s)/or phrase utilizing a pointing device. E-mail content may be viewed in chronological order of contribution(s) as selected by the recipient. Contributed content may be displayed chronologically, or color coordinated to avoid displacing key information (e.g., newest text bright orange, oldest text is light gray).
In the following detailed description of exemplary embodiments of the invention, specific exemplary embodiments in which the invention may be practiced are described in sufficient detail to enable those skilled in the art to practice the invention, and it is to be understood that other embodiments may be utilized and that logical, architectural, programmatic, mechanical, electrical and other changes may be made without departing from the spirit or scope of the present invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is defined only by the appended claims.
Within the descriptions of the figures, similar elements are provided similar names and reference numerals as those of the previous figure(s). Where a later figure utilizes the element in a different context or with different functionality, the element is provided a different leading numeral representative of the figure number (e.g., 1xx for
It is understood that the use of specific component, device and/or parameter names are for example only and not meant to imply any limitations on the invention. The invention may thus be implemented with different nomenclature/terminology utilized to describe the components/devices/parameters herein, without limitation. Each term utilized herein is to be given its broadest interpretation given the context in which that terms is utilized.
With reference now to the figures,
DPS 100 is also illustrated with a network interface device (NID) 150, with which DPS 100 connects to one or more servers 165 and mail server 195 via an access network, such as the Internet 170. In the described embodiments, Internet 170 is a worldwide collection of networks and gateways that utilize the Transmission Control Protocol/Internet Protocol (TCP/IP) suite of protocols to communicate with one another. Of course, network access may also be provided via a number of different types of networks, such as an intranet, a local area network (LAN), a virtual private network (VPN), or other wide area network (WAN) other than the Internet, for example.
Notably, in addition to the above described hardware components of DPS 100, various features of the invention are completed via software (or firmware) code or logic stored within system memory 115 or other storage (e.g., storage 117) and executed by CPU 105. Thus, illustrated within system memory 115 are a number of software/firmware components, including operating system (OS) 130 (e.g., Microsoft Windows®, a trademark of Microsoft Corp, GNU®/Linux®, registered trademarks of the Free Software Foundation and Linus Torvalds, or AIX®, a registered trademark of IBM), applications 135, mail user agent (MUA) 145, such as Eudora™, IBM Lotus Notes™, Microsoft Outlook™, or Outlook Express™ and author contribution display (ACD) utility 140. In actual implementation, MUA 145, and ACD utility 140 may be combined as a single application collectively providing the various functions of each individual software component when the corresponding code is executed by the CPU 105. For simplicity, ACD utility 140 is illustrated and described as a downloadable enhancement to MUA 145 or software modification which provides specific functions, as described below.
CPU 105 executes ACD utility 140, MUA 145, and OS 130, which supports the user interface features of ACD utility 140 and MUA 145. In the illustrative embodiment, ACD utility 140 provides several graphical user interfaces (GUI) to enable user interaction with, or manipulation of, the functional features of the utility (140). Among the software code/instructions provided by ACD utility 140, and which are specific to the invention, are code for: (a) displaying authorship and time stamp within an e-mail; (b) displaying e-mail content in chronological order; and (c) displaying e-mail messages inclusive and/or exclusive of an individual author. For simplicity of the description, the collective body of code that enables these various features is referred to herein as ACD utility 140. According to the illustrative embodiment, when CPU 105 executes ACD utility 140, DPS 100 initiates a series of functional processes that enable the above functional features as well as additional features/functionality, which are described below within the description of
Those of ordinary skill in the art will appreciate that the hardware and basic configuration depicted in
With reference now to
In one embodiment, annotations are stored on a mail server in metadata associated with e-mail message 210. Annotations, including, but not limited to author name, date, and time are associated with each character of the new content inserted within e-mail message 210. When e-mail message 210 is sent, forwarded, or replied to, a mail server, such as mail server 295, annotates the additions and/or changes, and then stores the changes in metadata on the server. The metadata may be automatically or manually associated with e-mail message 210. Associating the metadata with the e-mail message allows the author, date, and time stamp information to be available while utilizing an e-mail client on and/or off line.
Each computer device within network 220 comprises MUA 145 and ACD utility 140. Computer system 200 sends e-mail message 210 via mail server 295. In one embodiment, within the network, e-mail message 210 is sent to portable device 204 from the MUA on computer system 200, via mail server 295. Utilizing the MUA on portable device 204, information is added to e-mail message 210, then e-mail message 210 is forwarded to computer network 206. One or more clients within computer network 206 may respond to e-mail message 210 by including comments within the body of e-mail message 210, and then forwarding the message to laptop computer 206 within network 220. When e-mail message 210 is forwarded to multiple clients a long chain e-mail is created. In some implementations, e-mail message 210 eventually returns to computer system 200 via mail server 195. Each time e-mail message 210 is sent (i.e., forwarded/responded to), ACD utility 140 (
While illustrated as physical devices,
In
In one embodiment,
With a received e-mail having content provided/contributed by previous authors, the invention includes providing the following functions, among others: receiving an e-mail having content contributed by one or more previous authors who forwarded and replied to the e-mail prior to the e-mail being received; detecting entry of content within the e-mail; automatically associating author information of a pre-identified author set within the e-mail engine as the author for local content generated at the e-mail engine; enabling real-time updating of the pre-identified author to reflect a next author; and automatically associating the next author to any new content received after the real-time updating. Further, with both first time generation e-mail as well as with received e-mail (within an e-mail chain, for example), the invention further includes: transmitting the biographical information associated with the content within the e-mail message, including all authors that have contributed content to an e-mail message chain; and transferring the biographical information of the authors with the transmitting of the e-mail so that the biographical information is displayed in a transmitted e-mail message received at recipient email engine.
In one embodiment, double clicking and or right-clicking on a position in message field 410 utilizing pointer 414 displays control menu 412. Control menu 412 allows a client to select from several functions. A user may select “hide messages from [author]” 412a. Selecting hide messages from [author] 412a, reveals a menu which displays the contributors within the message field 410. When the client selects a contributor from the menu, the content provided by that author may be hidden. Hiding the content may include removing the content from message field 410, embossing the content, and/or fading the color of the information inserted by the selected author.
In one embodiment, “display messages from [author]” 412b may be selected, thereby revealing a menu of names. The menu of names comprises the contributors of content within message field 410. Selecting one or more name(s) from this menu removes (or hides) information provided by each of the other contributors not selected; thereby displaying only content inserted by the selected contributor(s).
In another embodiment, a client may select “display messages in chronological order” (412c) from control menu 412. When “display messages in chronological order” 412c is selected, content may be automatically arranged in the order in which it was contributed. Messages may also be displayed in chronological order utilizing color coordination. Color coordination allows the content to maintain the current structural position; however, the color of the inserted text is modified with relation to date and time of the inserted data (e.g. the newest contributed text is bright orange, and the oldest contributed text is light gray).
In one embodiment, “display author names and time stamp” 412d is selected by a user. Selecting “display author names and time stamp” 412d identifies the one or more contributors of content within message field 410 by displaying the biographical information of the content's author. The biographical information includes but is not limited to the name of the author, date, and time the content was input into the e-mail message. When an e-mail message comprises one or more authors, a new authorship tag is displayed where the new contribution begins. The authorship tag displays the name of the contributor and date/time of the contribution in a persistent manner (i.e., no pointer hovering required).
The process of
The process of
A decision is made at block 604, whether a selection is received to display messages from specific individual e-mail contributors when the e-mail comprises two or more authors. If a decision is made to display the contributed content of an author, the process continues to block 612. At block 612, a list of names of each contributor is displayed. The selection of a name (or names) is received at block 622. At block 624, the contributions of the selected author(s) are displayed and contributions of the other authors (or contributors) are hidden. The process ends at block 630. If the selection to display a particular author's content is not received the process continues to block 606.
At block 606, a decision is made whether a selection to arrange messages in chronological order is detected within control menu 412. If a selection is received to display content within the e-mail message in chronological order, the process continues to block 614. At block 614 the arrangement of the e-mail content in chronological order is executed. The content may be physically arranged in chronological order, or the font color of the e-mail content may be modified, coloring the text according to chronological order (utilizing a color chart/key for guidance). The process then ends at block 630. If the command to arrange the content in chronological order is not received, the process continues to block 608.
A decision is made at block 608 whether a selection to display the authorship of the content of an e-mail message is received within control menu 412. If a selection is detected to display authorship, the name, date, and time in which the content was inserted is displayed. The process then ends at block 630. If a command is not received to display the authorship of the e-mail content, the process continues to block 626. At block 626, a selection is received to close the control menu and/or e-mail message. When the command is received to close the control menu or the e-mail message, the process ends at block 630. If a command is not received to close the control menu or the e-mail message the process returns to block 602.
It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
Further, in the flow charts above, one or more of the methods are embodied as a computer program product in a computer readable medium or containing computer readable code such that a series of steps are performed when the computer readable code is executed on a computing device. In some implementations, certain steps of the methods are combined, performed simultaneously or in a different order, or perhaps omitted, without deviating from the spirit and scope of the invention. Thus, while the method steps are described and illustrated in a particular sequence, use of a specific sequence of steps is not meant to imply any limitations on the invention. Changes may be made with regards to the sequence of steps without departing from the spirit or scope of the present invention. Use of a particular sequence is therefore, not to be taken in a limiting sense, and the scope of the present invention is defined only by the appended claims.
Computer program code for carrying out operations of the present invention may be written in an object oriented programming language such as Java® (Java is a trademark or registered trademark of Sun Microsystems, Inc. in the United States and other countries), Smalltalk, C++ or the like. However, the computer program code for carrying out operations of the present invention may also be written in conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the client's computer, partly on the client's computer, as a stand-alone software package, partly on the client's computer and partly on a remote computer or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the client's computer through a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
As will be further appreciated, the processes in embodiments of the present invention may be implemented using any combination of software, firmware or hardware. As a preparatory step to practicing the invention in software, the programming code (whether software or firmware) will typically be stored in one or more machine readable storage mediums such as fixed (hard) drives, diskettes, optical disks, magnetic tape, semiconductor memories such as ROMs, PROMs, etc., thereby making an article of manufacture (or computer program product) in accordance with the invention. The article of manufacture containing the programming code is used by either executing the code directly from the storage device, by copying the code from the storage device into another storage device such as a hard disk, RAM, etc., or by transmitting the code for remote execution using transmission type media such as digital and analog communication links. The methods of the invention may be practiced by combining one or more machine-readable storage devices containing the code according to the present invention with appropriate processing hardware to execute the code contained therein. An apparatus for practicing the invention could be one or more processing devices and storage systems containing or having network access to program(s) coded in accordance with the invention.
Thus, it is important that while an illustrative embodiment of the present invention is described in the context of a fully functional computer (server) system with installed (or executed) software, those skilled in the art will appreciate that the software aspects of an illustrative embodiment of the present invention are capable of being distributed as a computer program product in a variety of forms, and that an illustrative embodiment of the present invention applies equally regardless of the particular type of media used to actually carry out the distribution. By way of example, a non exclusive list of types of media, includes recordable type (tangible) media such as floppy disks, thumb drives, hard disk drives, CD ROMs, DVDs, and transmission type media such as digital and analogue communication links.
While the invention has been described with reference to exemplary embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted for elements thereof without departing from the scope of the invention. In addition, many modifications may be made to adapt a particular system, device or component thereof to the teachings of the invention without departing from the essential scope thereof. Therefore, it is intended that the invention not be limited to the particular embodiments disclosed for carrying out this invention, but that the invention will include all embodiments falling within the scope of the appended claims. Moreover, the use of the terms first, second, etc. do not denote any order or importance, but rather the terms first, second, etc. are used to distinguish one element from another.
Number | Name | Date | Kind |
---|---|---|---|
6510453 | Apfel et al. | Jan 2003 | B1 |
6865715 | Uchino et al. | Mar 2005 | B2 |
6970907 | Ullmann et al. | Nov 2005 | B1 |
7421690 | Forstall et al. | Sep 2008 | B2 |
7506263 | Johnston et al. | Mar 2009 | B1 |
7720916 | Fisher et al. | May 2010 | B2 |
8015246 | Anderson | Sep 2011 | B1 |
8200762 | Staats | Jun 2012 | B2 |
20020099777 | Gupta et al. | Jul 2002 | A1 |
20030014490 | Bates et al. | Jan 2003 | A1 |
20030050981 | Banerjee et al. | Mar 2003 | A1 |
20050076312 | Gardner et al. | Apr 2005 | A1 |
20050165659 | Gruber | Jul 2005 | A1 |
20050165740 | Kerr et al. | Jul 2005 | A1 |
20050166146 | Silverbrook et al. | Jul 2005 | A1 |
20050268237 | Crane et al. | Dec 2005 | A1 |
20060155809 | Arav | Jul 2006 | A1 |
20060161849 | Miller et al. | Jul 2006 | A1 |
20060190830 | Gerstl et al. | Aug 2006 | A1 |
20060248150 | Chaar et al. | Nov 2006 | A1 |
20070130276 | Zhang et al. | Jun 2007 | A1 |
20070174396 | Kumar et al. | Jul 2007 | A1 |
20070240080 | Eldridge et al. | Oct 2007 | A1 |
20070300153 | Newman et al. | Dec 2007 | A1 |
20080091656 | Charnock et al. | Apr 2008 | A1 |
20080114848 | Lira | May 2008 | A1 |
Number | Date | Country | |
---|---|---|---|
20090157818 A1 | Jun 2009 | US |