The invention, as well as a preferred mode of use and further objectives and advantages thereof, will best be understood by reference to the following detailed description of illustrative embodiments when read in conjunction with the accompanying drawings, wherein:
The illustrative embodiments provide a mechanism for controlling which recipients of an electronic mail message may respond to the electronic mail message. As such, the illustrative embodiments are primarily concerned with the operations of data processing devices in a distributed data processing environment, such as a network, a plurality of networks, the Internet, or the like. Thus, in order to provide a context for the description of the illustrative embodiments,
With reference now to the figures and in particular with reference to
With reference now to the figures,
In the depicted example, server 104 and server 106 are connected to network 102 along with storage unit 108. In addition, clients 110, 112, and 114 are also connected to network 102. These clients 110, 112, and 114 may be, for example, personal computers, network computers, or the like. In the depicted example, server 104 provides data, such as boot files, operating system images, and applications to the clients 110, 112, and 114. Clients 110, 112, and 114 are clients to server 104 in the depicted example. Distributed data processing system 100 may include additional servers, clients, and other devices not shown.
In the depicted example, distributed data processing system 100 is the Internet with network 102 representing a worldwide collection of networks and gateways that use the Transmission Control Protocol/Internet Protocol (TCP/IP) suite of protocols to communicate with one another. At the heart of the Internet is a backbone of high-speed data communication lines between major nodes or host computers, consisting of thousands of commercial, governmental, educational and other computer systems that route data and messages. Of course, the distributed data processing system 100 may also be implemented to include a number of different types of networks, such as for example, an intranet, a local area network (LAN), a wide area network (WAN), or the like. As stated above,
With reference now to
In the depicted example, data processing system 200 employs a hub architecture including north bridge and memory controller hub (NB/MCH) 202 and south bridge and input/output (I/O) controller hub (SB/ICH) 204. Processing unit 206, main memory 208, and graphics processor 210 are connected to NB/MCH 202. Graphics processor 210 may be connected to NB/MCH 202 through an accelerated graphics port (AGP).
In the depicted example, local area network (LAN) adapter 212 connects to SB/ICH 204. Audio adapter 216, keyboard and mouse adapter 220, modem 222, read only memory (ROM) 224, hard disk drive (HDD) 226, CD-ROM drive 230, universal serial bus (USB) ports and other communication ports 232, and PCI/PCIe devices 234 connect to SB/ICH 204 through bus 238 and bus 240. PCI/PCIe devices may include, for example, Ethernet adapters, add-in cards, and PC cards for notebook computers. PCI uses a card bus controller, while PCIe does not. ROM 224 may be, for example, a flash binary input/output system (BIOS).
HDD 226 and CD-ROM drive 230 connect to SB/ICH 204 through bus 240. HDD 226 and CD-ROM drive 230 may use, for example, an integrated drive electronics (IDE) or serial advanced technology attachment (SATA) interface. Super I/O (SIO) device 236 may be connected to SB/ICH 204.
An operating system runs on processing unit 206. The operating system coordinates and provides control of various components within the data processing system 200 in
As a server, data processing system 200 may be, for example, an IBM® eServer™ pSeries® computer system, running the Advanced Interactive Executive (AIX®) operating system or the LINUX® operating system (eServer, pSeries and AIX are trademarks of International Business Machines Corporation in the United States, other countries, or both while LINUX is a trademark of Linus Torvalds in the United States, other countries, or both). Data processing system 200 may be a symmetric multiprocessor (SMP) system including a plurality of processors in processing unit 206. Alternatively, a single processor system may be employed.
Instructions for the operating system, the object-oriented programming system, and applications or programs are located on storage devices, such as HDD 226, and may be loaded into main memory 208 for execution by processing unit 206. The processes for illustrative embodiments of the present invention may be performed by processing unit 206 using computer usable program code, which may be located in a memory such as, for example, main memory 208, ROM 224, or in one or more peripheral devices 226 and 230, for example.
A bus system, such as bus 238 or bus 240 as shown in
Those of ordinary skill in the art will appreciate that the hardware in
Moreover, the data processing system 200 may take the form of any of a number of different data processing systems including client computing devices, server computing devices, a tablet computer, laptop computer, telephone or other communication device, a personal digital assistant (PDA), or the like. In some illustrative examples, data processing system 200 may be a portable computing device which is configured with flash memory to provide non-volatile memory for storing operating system files and/or user-generated data, for example. Essentially, data processing system 200 may be any known or later developed data processing system without architectural limitation.
Referring again to
With the mechanisms of the illustrative embodiments, the email client application is provided with additional functionality, and additional user interface elements, for specifying whether response, or reply, emails are to be disabled for non-primary recipients of the composed email. That is, the composer of the email may decide that he/she does not want to receive responses or replies from users having the email addresses specified in the “CC” or “BCC” fields of the composed email. The illustrative embodiments provide mechanisms for specifying such a desire during the composition of an email and for enforcing such a desire when handling response or reply emails from such secondary recipients.
In addition, in accordance with the mechanisms of the illustrative embodiments, the composer may specify that responses or replies to this email 310 may only be generated or presented to the user via the client computing device 310 when the response or reply is from an email address corresponding to the primary recipients of the original email 310. The designation of this recipient reply restriction when composing the email 320 may cause an identifier of the recipient reply restriction to be incorporated into the data representation of the email message 320, e.g., as a tag in a header of the email message data representation.
The recipient reply restriction identifier is incorporated into the data representation of the email message 320 and thus, is transmitted along with the email message 320 to the various designated recipient computing devices 360-380. The email message 320 data representation, e.g., data packets, may be transmitted to the recipient computing devices 360-380 via the composer's email server 330, one or more networks 340, and one or more recipient email servers 350. While only one recipient email server 350 is depicted in
Since the data representation of the email message 320 incorporates the recipient reply restriction identifier, when the email message 320 is processed by the email client applications on the recipient client computing devices 360-380, the recipient reply restriction identifier is also processed by the email client applications, if the email client applications support such recipient reply restriction. Whether or not the email client applications support such recipient reply restrictions, a representation of the email in the email client application user interface includes an identifier, e.g., highlighted or otherwise conspicuously presented text statement, to indicate to the user that the email message 320 is subject to a recipient reply restriction.
In one illustrative embodiment, email client applications on recipient computing devices 360-380 may support processing of the recipient reply restriction identifiers in emails 320 to thereby impose controls over the types of inputs that the user may invoke via the user interface of the email client application with regard to the received email 320. For example, the email client application may recognize the presence of the recipient reply restriction identifier in the email 320 and, as a result, compare a email address associated with the recipient client computing device 360-380 to the email addresses specified in the “TO” field to determine if the recipient client computing device 360-380 is a primary recipient or secondary recipient of the email 320. If the recipient client computing device 360-380 is a primary recipient of the email 320, the email client application may operate in a normal manner as is generally known in the art. If the recipient client computing device 360-380 is a secondary recipient of the email, additional functionality of the email client application is invoked to restrict the user's ability to reply to the original email 320.
Thus, for example, in the depicted example of
In one illustrative embodiment, this additional functionality may include determining when a user of the recipient client computing device 360-380 selects an element of the email client application's user interface for replying to the original email 320. In response to the user selecting such an element, the email client application may output, via the recipient client computing device, a message informing the user that replies to the original email 320 are restricted. In this way, users associated with secondary recipient email addresses are informed that they should not attempt to respond or reply to the original email 320. With such an embodiment, the actual reply ability of the client email application is not inhibited. Thus, while the user is informed that the user should not reply to the original email 320, the user may still ignore the warning message and reply anyway.
In other illustrative embodiments, the recipient reply restriction identifier may be used to disable reply elements of the user interface of the email client application. That is, when the original email 320 is represented in the email client application of the recipient client computing device, the user interface elements that allow replies to emails to be disabled, e.g., grayed out or removed from the user interface.
The ability to respond or reply to the original email 310 may be disabled in the user interfaces of the email client applications on the secondary recipient computing devices 340 and 350. Thus, the email client application may forcibly impose the recipient reply restriction on the secondary recipients of the original email 320.
In some illustrative embodiments where recipient reply restrictions are not forcibly enforced, the specifying of the recipient reply restriction may cause a filter data structure to be generated by the email client application used to generate the original email 320. This filter data structure may be keyed to an identifier of the original email 320 such that when a reply to the original email 320 is received, the filter data structure may be applied to the email address of the sender of the reply email. If the email address of the sender is not within the “TO” field of the original email 320, i.e. the sender of the replay email is not a primary recipient of the original email 320, then the reply email may be discarded, placed in a junk mail or trash folder of the email client application, or otherwise not provided to the user of the client device 310 from which the original email 320 was sent. A response email may be sent back to the sender of the reply email to inform the sender that their reply email is being ignored due to the request in the original email 320 that replies only be provided by primary recipients.
In still further illustrative embodiments, rather than specifying that all recipients specified in the secondary recipient fields are restricted from sending replies, the mechanisms of the illustrative embodiments may allow a composer of an original email 320 may specify individual recipients of the original email 320 that are to be restricted from providing replies to the original email 320. Thus, some secondary recipients may be allowed to send replies while others are not.
Thus, with the mechanisms of the illustrative embodiments, replies to emails may be restricted or filtered such that only replies from primary recipients of an original email are received by a composer of the original email. This serves to minimize the amount of unwanted replies the composer of the original email is subjected to. As a result, the composer of the original email is not engaged in unwanted conversations with secondary recipients of an original email when the sending of the original email to the secondary recipients was for informative or courtesy reasons only.
A field 450 of the user interface 400 is provided for entry of the body text of the email. This body text comprises the actual message of the email. A user may make use of a word processor or other email editor application to compose the body text of the email.
A user may access various options for composing the email including an option to limit responses or replies to the email to only those recipients specified in the “TO” field of the email. For example, a user may “right click” a computer mouse when composing the email using the user interface shown in
While a pop-up menu 460 is illustrated in
With the user interface 400 a user that is composing an email message may enter email addresses of zero or more primary recipients in field 410, zero or more email addresses of secondary recipients in fields 420 and 430, a subject of the email in field 440, and body text in field 450. The user may then invoke pop-up menu 460 in order to select an option 470 to restrict replies to the present email to only those recipients specified in the “TO” field 410 of the email. As a result, the visual message 480 may be added to the body text in field 450 (or a visual indicator may be provided in some other portion of the email), and a corresponding identifier may be incorporated into the code or data comprising the email. For example, a tag or the like may be added to the code that defines the email, the tag specifying a “reply from TO” option being selected.
In addition to the mechanism above in which the options 510 and 520 are not selectable, or alternatively, if options 510 and 520 are permitted to remain selectable, a pop-up message 540 may be displayed to a user of the secondary recipient computing device when the user selects one of the options 510 and 520. In such an alternative embodiment, the user may still be allowed to reply to the email message even if the pop-up message 540 is displayed. However, as described above, the pop-up message 540 provides an indicator to the user that they are not supposed to reply to the email and if they do, their replay may be ignored. For example, as described above, the originator of the email may have a filter list associated with the email that is applied to any replies to the email to determine whether the replies are to be presented to the originator of the email or not. If the replies are from secondary recipients, the reply emails may be automatically discarded, placed in a trash or junk mail folder, or the like.
As shown in
The above illustrative embodiments assume that all of the recipients specified in the carbon copy “CC” field or blind carbon copy “BCC” field are to be restricted from sending replies to the original email. In other illustrative embodiments, the user may specify individual recipients that are to be restricted from sending reply emails. Thus, one or more secondary recipients may be restricted from sending replies to the original email while other secondary recipients may be permitted to send replies to the original email. In other illustrative embodiments, the user may even specify primary recipients that are to be restricted from sending replies to the original email, if desired.
The user may select one or more individual email addresses in one or more of the fields 610-630 using a user input device, such as a mouse, keyboard, or the like, and may enter a command for the user interface to provide pop-up menu 660. For example, the user may “right-click” a computer mouse to cause the pop-up menu 660 to be displayed. While a pop-up menu 660 is depicted in this example, it should be appreciated that the present invention is not limited to such and any of a number of different user interface elements may be used to provide the command options in pop-up menu 660 without departing from the spirit and scope of the present invention.
From the pop-up menu 660, the user may select an option 670 to restrict replies from the selected email addresses in fields 610-630. In response to the user selection of one or more email addresses in fields 610-630 and the user selection of the “restrict replies from selected” command option 670, a restricted recipient reply indicator may be added to the code/data representing the email which designates which email addresses are restricted from providing replies to the email. In this way, when the email is received at a client email application, the client email application may process the restricted recipient reply indicator and compare the email address associated with the client email application to the listing of email addresses from which replies are restricted. If the email address associated with the client email application matches an email address in the listing of restricted reply email addresses, then appropriate reply restriction actions may be performed by the client email application, e.g., graying out reply command elements of the user interface, displaying a warning message, or the like.
Thus, in addition to being able to restrict replies from all secondary recipients of an email, the mechanisms of the illustrative embodiments allow a user to specify individual recipients of the email as being restricted from sending replies. While the depicted example requires that the user select individual email addresses from the fields 610-630 of the email user interface and then selecting a “restrict replies from selected” command option, it should be appreciated that the present invention is not limited to such. Rather, in an alternative embodiment, a field similar to fields 610-630 may be added to the user interface for specifying email addresses to which a copy of the email is to be sent but from which replies are restricted. Thus, similar to the “CC” field 620, a field denoted “CCRR” (carbon copy replies restricted) may be provided into which a user may enter email addresses of recipients to which copies of the email are to be provided but from which replies are to be restricted. Other implementations of the mechanisms of the illustrative embodiments for restricting replies from certain recipients of an original email may be used without departing from the spirit and scope of the present invention.
As discussed above, rather than performing the reply restriction operations entirely at the recipient client email application, some or all of the reply restriction operations may be performed at the computing device of the originator of the email using filter lists generated during the composing of the original email. For example, when a user selects individual recipients of the email from the fields 610-630 and selects the “restrict replies from selected” option 670, a listing keyed to an identifier of the email may be generated that lists those email addresses selected as being reply restricted email addresses. This listing may then be applied to all replies to the original email received by the email application on the originator's computing device to determine which replies should be presented to a user and which should be automatically discarded or placed in a trash or junk email folder of the email application.
As described above, in some illustrative embodiments, the selection of a “replies from TO only” option or a “restrict replies from selected” option causes an identifier to be added to the code/data representing the email message.
As shown in
During processing of this HTML tag 700, in accordance with one illustrative embodiment, a client email application may first determine if the code/data of the email has this HTML tag 700 and if so, performs a series of checks on outgoing emails from the client email application. First, the client email application checks to determine if an outgoing email is a reply or forwarding to the original sender of the original email. This check may be performed, for example, using the “from” tag 720 in the HTML tag 700 to see if a “TO” field of the reply or forwarding email matches the email address in the “from” tag 720.
If the reply or forwarding email is being sent to the email address in the “from” tag 720, a check is made to determine if the client email application is associated with an email address that is listed in the “to” tag 730 of the HTML tag 700. If so, then the reply or forwarding email is permitted to be sent without restriction. If the email address of the client email application is not in the “to” tag 730, then the reply or forwarding email is restricted in one or more of the ways previously described above, e.g., displaying a warning message, disabling the reply option user interface elements, or the like. If the reply or forwarding email is not being sent to the original sender of the original email, or there is no RFT tag 710 associated with the original email, then the reply or forwarding email is permitted to be sent without restriction.
As described above, the original HTML tag 700 is carried in the code/data representing the original email for the life of the email. Thus, even if the email is forwarded to other email addresses that are not in the “TO” field of the original email, those email addresses will also not be able to send a reply/forward to the original sender of the original email. Thus, the mechanisms of the illustrative embodiments provide the ability to restrict replies/forwards of emails by those recipients selected by the originator of an email. Such restriction may be performed with regard to individual recipients of the original email, groups of recipients of the original email, e.g., secondary recipients, or the like.
Accordingly, blocks of the flowchart illustrations support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the flowchart illustrations, and combinations of blocks in the flowchart illustrations, can be implemented by special purpose hardware-based computer systems which perform the specified functions or steps, or by combinations of special purpose hardware and computer instructions.
A determination may be made as to whether a user input selecting a recipient reply restriction command option is received (step 840). If a recipient reply restriction command option is selected by the user, a recipient reply restriction identifier is added to the code/data representing the email (step 850). A visual indicator of the reply restriction may optionally be added to a field of the email message as well (step 860). Moreover, a filter data structure may optionally be generated based on the selected recipient reply restriction command option that was selected by the user (step 870). This filter data structure may be stored in association with an identifier of the email for later use in filtering replies or forwarded emails corresponding to the original email.
Thereafter, or if the user does not select a recipient reply restriction command option, a determination is made as to whether the user selects a send command via the user interface (step 880). If the user does not select a send command, the operation returns to step 830 where additional input from the user may be received. If the user does select a send command, the email message is sent to the recipients specified in the appropriate fields of the email message (step 890). The sending of the email message includes sending the recipient reply restriction identifier since the identifier is embedded in the code/data that represents the email message. The operation then terminates.
If the email message includes a recipient reply restriction identifier, a determination may be made as to whether the client email application has an associated email address that matches an email address for which replies are restricted (step 940). Alternatively, the determination may be whether or not the email address associated with the client email application is one from which replies are permitted, e.g., matches an email address in the “TO” field of the received email message.
If the email address of the client email application matches a restricted reply recipient's email address, then various reply restriction operations may be performed by the client email application (step 950). For example, reply command options in the user interface of the client email application may be disabled when rendering the email message via the client email application. In addition, the client email application may output a message informing a user of the recipient computing device that replies to the rendered email message are restricted. The reply restriction operations performed by the client email application are operations designed to restrict the ability of the user of the recipient computing device to reply to the original email message.
The email message is rendered via the client email application (step 960). As mentioned above, if the reply restriction operations include disabling the reply command options in the user interface of the client email application, then these options may be removed or grayed out in the user interface when rendering the email message. Moreover, if the reply restriction operations include outputting a warning message that replies are restricted, then this warning message may be output when rendering the email message or in response to a user attempting to select a reply command option via the user interface of the client email application. After rendering the email message, the operation terminates.
If a filter data structure exists for the received reply email message, an email address corresponding to the originator of the reply email message is compared to the email addresses specified in the filter data structure (step 1040). A determination is made as to whether there is a match between the email address of the originator of the reply email message and one or more email addresses in the filter data structure (step 1050). If there is a match, the reply email message is discarded, e.g., placed in a trash or junk email folder, and is not rendered by the client email application (step 1060). A response email may be returned to the originator of the reply email message to inform them that their reply email is being ignored (step 1070). If there is not a match, then the reply email message is rendered on the client email application (step 1080) and the operation terminates.
The above exemplary mechanism assumes that the filter data structure for the original email message specifies those recipients of the original email that are not permitted to respond to the original email. In some instances, it may be more beneficial to specify in the filter data structure those recipients that are permitted to respond to the original email message. Thus, if the email address of the originator of a reply email message is not listed as one of the recipients from which replies are permitted, the reply email message may be discarded as described above. In this way, if the original email message is forwarded to other recipients not listed in the original email distribution, replies from these other recipients would not be permitted since they are not listed in the filter data structure associated with the original email message as recipients from which replies are permitted.
Thus, the mechanisms of the illustrative embodiments provide an ability to restrict replies from recipients of an electronic mail message. Such restriction helps to limit the number of replies a creator of an email message receives such that only those recipients that the creator wishes to receive replies from can actually reply to the original email. In this way, the creator of the email message is not subjected to unwanted email interaction with recipients that were copied on the email message for courtesy or informative reasons.
It should be appreciated that the illustrative embodiments may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment containing both hardware and software elements. In one exemplary embodiment, the mechanisms of the illustrative embodiments are implemented in software, which includes but is not limited to firmware, resident software, microcode, etc.
Furthermore, the illustrative embodiments may take the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by or in connection with a computer or any instruction execution system. For the purposes of this description, a computer-usable or computer-readable medium can be any apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
The medium may be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium. Examples of a computer-readable medium include a semiconductor or solid state memory, magnetic tape, a removable computer diskette, a random access memory (RAM), a read-only memory (ROM), a rigid magnetic disk and an optical disk. Current examples of optical disks include compact disk-read only memory (CD-ROM), compact disk-read/write (CD-R/W) and DVD.
A data processing system suitable for storing and/or executing program code will include at least one processor coupled directly or indirectly to memory elements through a system bus. The memory elements can include local memory employed during actual execution of the program code, bulk storage, and cache memories which provide temporary storage of at least some program code in order to reduce the number of times code must be retrieved from bulk storage during execution.
Input/output or I/O devices (including but not limited to keyboards, displays, pointing devices, etc.) can be coupled to the system either directly or through intervening I/O controllers. Network adapters may also be coupled to the system to enable the data processing system to become coupled to other data processing systems or remote printers or storage devices through intervening private or public networks. Modems, cable modem and Ethernet cards are just a few of the currently available types of network adapters.
The description of the present invention has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art. The embodiment was chosen and described in order to best explain the principles of the invention, the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.