The present invention relates to electronic messaging, e-mail and the like, and more particularly to a method and system to transmit different contents to different recipients in a single message.
Electronic messaging (hereinafter “e-mail”, “message”, or “messages”) is a very common form of communication. E-mail allows a user to quickly and easily send messages containing: text, media files, and documents to a recipient throughout the world. Typically, a user composes an e-mail with software running on a communication device. The e-mail includes a delivery address for an intended recipient. The user may send the message to the recipient via a network to which the communication device may have access.
E-mail also allows a user to simultaneously send a message to multiple recipients. The recipients' delivery addresses may be added to the message's “To”, “CC” (carbon copy), and “BCC” (blind carbon copy) fields. When composing a single message to multiple recipients, a user may desire to send a private content to one or a selected portion of the recipients, of the same message.
Currently, a user may not compose a single e-mail for multiple recipients and designate private content to a selected portion of the recipients. With currently known systems, a user must generate separate messages for each private content intended for different recipients. This process may be time consuming, tedious, and frustrating.
In accordance with an embodiment of the present invention, a method to compose and transmit different contents to different recipients in a single message may include entering a plurality of different contents in a single message. The method may also include assigning at least one recipient of a plurality of recipients to each different content. The assigning may also provide that each recipient can only view the different contents to which the recipient is assigned. The method may also include securing the different contents such that only the assigned recipient may view the contents.
In accordance with another embodiment of the present invention, a system to compose and transmit different contents to different recipients in a single message may include a data structure operable on a processor to facilitate entering a plurality of different contents in a single message. The system may also include a data structure operable on the processor to facilitate assigning at least one recipient of a plurality of recipients to each of the different content. The system may also include a data structure operable on the processor to facilitate securing the different contents to permit only the assigned recipient to view the contents.
In accordance with another embodiment of the present invention, a computer program product to compose and transmit different contents to different recipients in a single message may include a computer readable medium having computer readable program code embodied therein. The computer readable medium may include computer readable program code configured to facilitate entering a plurality of different contents in a single message. The computer readable medium may also include a computer readable program code configured to facilitate assigning at least one recipient of a plurality of recipients to each different content. The computer readable program code may further include a computer readable program code configured to secure each private contents to only be viewable by the at least one assigned recipient.
As will be appreciated by one of skill in the art, the present invention may be embodied as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects all generally referred to herein as a “circuit”, “module,” or “system.” Furthermore, the present invention may take the form of a computer program product on a computer-usable storage medium having computer-usable program code embodied in the medium.
Any suitable computer readable medium may be utilized. The computer-usable or computer-readable medium may be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium. More specific examples (a non exhaustive list) of the computer-readable medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a transmission media such as those supporting the Internet or an intranet, or a magnetic storage device. Note that the computer-usable or computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via, for instance, optical scanning of the paper or other medium, then compiled, interpreted, or otherwise processed in a suitable manner, if necessary, and then stored in a computer memory. In the context of this document, a computer-usable or computer-readable medium may be any medium that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
Computer program code for carrying out operations of the present invention may be written in an object oriented programming language such as Java7, Smalltalk or 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 a similar language. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer. In the latter scenario, the remote computer may be connected to the user'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).
The present invention is described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. 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 public 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.
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.
The following detailed description of preferred embodiments refers to the accompanying drawings, which illustrate specific embodiments of the invention. Other embodiments having different structures and operations do not depart from the scope of the present invention.
In block 104, the user may enter or attach any public content to the message. All recipients may view any public content. Public content may include: text, media files, hyperlinks, formatted documents, spreadsheets, executable programs, or the like. In block 106, the recipient or recipients of the public content may be entered or selected. A recipient may include an individual, a group, or an entity.
Referring also to
Referring again to
In block 109, any private content may be distinguished from the public content by formatting, highlighting or other appropriate distinguishing means. Distinguishing may allow each recipient to quickly find his private content. Distinguishing may also facilitate the sender in editing each private content to the different recipients. The private content may be distinguished manually by the user or the method 100 or system may be preset to automatically distinguish the private content form the public content. The method 100 or system may also be preset to distinguish each different private content differently if multiple different private contents are composed in a message or e-mail.
Manual distinguishing may include selecting a particular feature available in the message composition software. These features may include highlighting, various fonts (colors, type, and points), bolding, italics, or the like.
A user may enable the method 100 or system to automatically distinguish each new private content. The user may pre-set a distinct distinguishing or formatting style for each new private content up to a predetermined number of private contents. This style may be automatically applied in response to a recipient being associated with each new private content. For example, for a first private message, the content may be italicized or highlighted in yellow; for a second private content, the content may be bolded or highlighted in blue; and so forth for each additional private content.
In block 110, at least one private content recipient may be entered or selected. As discussed, a recipient may include an individual, a group, or an entity. If the user is composing a new message, he may enter at least two recipients in at least one of the address fields. If the user is replying to or forwarding a previously received message, he may select which previous message recipient may receive the private contents. The user may also add a new recipient.
In
Referring back to
In block 116, a recipient or recipients, may be entered, selected, assigned, or the like for each different private content, similar to that described with respect to block 110 and
In block 118, the different private contents may be secured to permit only the assigned recipient or recipients to view the contents. Securing may involve automatically converting each different private content to a format that may be respectively read or viewed only by the assigned recipient or recipients. The securing may include converting and attaching the private content as a Multipurpose Internet Mail Extension (MIME) or the like. The securing may also involve using an encrypting technology.
If a private content recipient is using a web browser that can decipher encrypted private content, the private content may be encrypted. The recipient may insert an encryption key. An encryption key may be sent to the recipient via a separate communication to allow the reader to decrypt and view the private content. Alternatively, means for decrypting the private content may be prearranged by the parties.
If a private content recipient is using a web browser that may not decipher private contents, the private content may be included in a MIME attachment, or the like, in a multi part e-mail message. If a MIME attachment, or the like, is required, the private content and public content are viewable as separate messages. The MIME attachment is locked so that it can only be assessed and viewed by the intended recipient.
Referring back to
In block 120, the message may be transmitted to the all intended recipients. Typically, the send button 210 (
In block 302, a recipient may receive an e-mail including different content intended for different recipients in accordance with an embodiment of the present invention. The message may be accessed on a communication device, such as a computer system, a personal digital assistant, a cellular phone, or similar devices capable of receiving an electronic message.
In block 304, the method 300 or system may determine whether the recipient may receive any private content. As discussed, the method 100 or system may provide for designating a recipient for the public content. The method 100 or system may also provide designating a recipient for the public content and at least one private content. If the method 300 or system determines that the recipient was not designated to receive a private content in block 304, the method 300 or system may proceed to block 306. In block 306, the method 300 or system may only present public content to the recipient.
If the recipient was selected to receive private content, the method 300 may advance to block 308. In block 308, the method 300 or system may enable the recipient's browser or e-mail application to present the private content. In block 308, the method 300 or system may decrypt the private content in response to an encryption key previously received by the recipient. After the recipient enters the encryption key, the private content may be formatted and presented to the recipient using metadata or similar formatting data. Alternatively, if the private content was sent as a MIME attachment, the private content may be formatted using the metadata or the like and presented to the recipient.
In block 310, the method 300 or system may present the public and private content to the recipient. The recipient may view the message on any of previously described communication devices, or the like. If the recipient's browser or e-mail application may decrypt the private content, the private content and public content may be viewed as in the same window. Alternatively, if the recipient's browser or e-mail application may not decipher the encrypted private content, the public content may be viewed in a window and the private content may be viewed in a separate windows.
The method 300 or system may provide additional security for the private content. A recipient may desire to forward or reply to a previously sent or received message that contained any private content. Accordingly, the method 300 or system may prevent any private content received in a previous message from being included in forwarding or replying to that message. This feature, in accordance with an embodiment, of the present invention may ensure that any private content is not transmitted by a recipient or recipients whom were not originally designated to receive the private content.
The communication device 402 may include a system memory or local file system 404. The system memory 404 may include a read only memory (ROM) and a random access memory (RAM). The ROM may include a basic input/output system (BIOS). The BIOS may contain basic routines that help to transfer information between elements or components of the communication device 402. The system memory 404 may contain an operating system 406 to control overall operation of the communication device 402. The system memory 404 may also include a browser 408 or web browser. The system memory 404 may also include data structures 410 or computer-executable code to compose and transmit different content to different recipients in a single message that may be similar or include elements of the methods 100 and 300 of
The communication device 402 may also include a processor or processing unit 414 to control operations of the other components of the communication device 402. The operating system 406, browser 408, data structures 410 and other program modules 412 may be operable on the processor 414. The processor 414 may be coupled to the memory system 404 and other components of the communication device 402 by a system bus 416.
The communication device 402 may also include multiple input devices, output devices or combination input/output devices 418. Each input/output device 418 may be coupled to the system bus 416 by an input/output interface (not shown in
The I/O devices 418 may also include disk drives, optical, mechanical, magnetic, or infrared input/output devices, modems or the like. The I/O devices 418 may be used to access a medium 420. The medium 420 may contain, store, communicate or transport computer-readable or computer-executable instructions or other information for use by or in connection with a system, such as the communication devices 402.
The communication device 402 may also include or be connected other devices, such as a display or monitor 422. The monitor 422 may be used to permit the user to interface with the communication device 402. The monitor 422 may present the screen shots illustrated in
The communication device 402 may also include a hard disk drive 424. The hard drive 424 may be coupled to the system bus 416 by a hard drive interface (not shown in
The communication devices 402 may communicate with a remote server 430 and may access other servers or other communication devices (not shown) similar to communication device 402 via a network 428. The system bus 416 may be coupled to the network 428 by a network interface 426. The network interface 426 may be a modem, Ethernet card, router, gateway or the like for coupling to the network 428. The coupling may be a wired connection or wireless. The network 428 may be the Internet, private network, an intranet or the like.
The server 430 may also include a system memory 444 that include a file system, ROM, RAM and the like. The system memory 444 may include an operating system 446 similar to operating system 406 in communication devices 402. The system memory 444 may also include data structures 448 to compose and transmit different content to different recipients in a single message that may be similar or include elements of the methods 100 and 300 of
The server system memory 444 may also include other files 450, applications, modules and the like. The system memory 444 may further include a traffic log 252 and a termination log 254.
The server 430 may also include a processor 432 or a processing unit to control operation of other devices in the server 430. The server 432 may also include I/O device 434. The I/O devices 434 may be similar to I/O devices 418 of communication devices 402. The server 430 may further include other devices 436, such as a monitor or the like to provide an interface along with the I/O devices 434 to the server 430. The server 430 may also include a hard disk drive 438. A system bus 440 may connect the different components of the server 430. A network interface 442 may couple the server 430 to the network 428 via the system bus 440.
Elements of the present invention, such as methods 100 and 300 of
While the blocks in
Although specific embodiments have been illustrated and described herein, those of ordinary skill in the art appreciate that any arrangement which is calculated to achieve the same purpose may be substituted for the specific embodiments shown and that the invention has other applications in other environments. This application is intended to cover any adaptations or variations of the present invention. The following claims are in no way intended to limit the scope of the invention to the specific embodiments described herein.
The flowcharts and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.