The present invention is directed to an improvement in computing systems and in particular to an improvement in sending messages to recipients using address masking.
In computer systems, and particularly in e-commerce environments, it is typical that messages are sent to recipients using different potential sending services. For example messages may be sent by email, fax or other electronic gateways available to a sending system. Typically a system sending a message to a recipient has available to it the message to be sent, the recipient name, the sending service to be used and the address for the recipient to be utilized by the sending service. Thus where a sending system is forwarding a fax the recipients name and fax name will be used and a fax service called by the sending system to have the message sent to the recipient.
It is also known to interpose a messaging system between a sending system and the sending services. Such a messaging system will potentially automate the management of messages being sent using sending services.
With such systems, there is a potentially significant overhead for the sending system in maintaining information concerning the address of the recipient and the preferred method of receiving messages from the sending service. Similarly there is a potentially costly overhead involved in the sending system supporting new communication methods. For example where a secure electronic communications link is added to a system the sending system will require modification to support such a communication service.
It is therefore desirable to have a messaging system that is able to permit messages to be sent without the sender process specifying the service to be used for the message. It is also desirable to have a messaging system to permit new services to be added without requiring modifications to the sender process.
According to an aspect of the present invention there is provided an improved computer system for sending messages.
According to another aspect of the present invention there is provided a messaging system for use in association with a set of sending services, the messaging system including,
According to another aspect of the present invention there is provided the above messaging system further including a service-address profile for linking a given sending service to a corresponding subset of recipient addresses in the set of recipient identifiers and recipient addresses.
According to another aspect of the present invention there is provided the above messaging system in which the set of recipient identifiers and recipient addresses is maintained in a relational database table and in which the service-address profile defines in which field in the table recipient addresses corresponding to each of the set of sending services are located.
According to another aspect of the present invention there is provided the above messaging system in which the message has an associated message type and in which the message-service profile specifies the sending services based on the message type.
According to another aspect of the present invention there is provided the above messaging system in which the message type is provided to the messaging system by the sender process.
According to another aspect of the present invention there is provided the above messaging system further including means for an administrator to create and maintain the message-service profile.
According to another aspect of the present invention there is provided a computer program product for messaging, the computer program product including a computer usable medium having computer readable code means embodied in said medium, and including computer readable program code means for implementing a messaging system for use in association with a set of sending services, the messaging system including,
According to another aspect of the present invention there is provided a method for delivering a message from a sending process to defined recipients using one or more of a set of specified sending services, the method including the steps of
According to another aspect of the present invention there is provided the above method in which the step of specifying one or more of the set of sending services includes a message-service profile look-up based on a defined message type, the message-service profile being defined to associate message types with sending services.
According to another aspect of the present invention there is provided the above method in which the step of retrieving recipient addresses includes a service-address profile look-up for each specified sending service, the service-address profile being defined to link each sending service to a subset of address data in the set of recipient data
According to another aspect of the present invention there is provided a computer program product for delivering messages, the computer program product including a computer usable medium having computer readable code means embodied in said medium, and including computer readable program code means for carrying out the above methods.
According to another aspect of the present invention there is provided a messaging system for masking recipient addresses, the messaging system including
It will be appreciated by those skilled in the art that the computer program of the invention can be stored on a storage medium or transmitted by wired or wireless transmission for use by computer systems or networks such as the Internet.
Advantages of the present invention include a messaging system that permits messages to be sent without the sender process specifying the service to be used for the message. A further advantage is that a messaging system is provided permitting new sending services to be added (for example new secure electronic communication gateways) without requiring modifications to the sender process.
In the preferred embodiment, sender processes 10 do not maintain information as to which sending service is to be used for forwarding a message, or the addresses to which messages are to be sent. Each one of sender processes 10 is able to generate messages to be sent to one or more recipients. In the preferred embodiment, a sender process will simply pass messaging system 14 the message and the names of the intended recipients. No address or method of delivering the message necessarily specified by sender processes 10. In the preferred embodiment, messaging system 14 arranges for the appropriate sending service to be used and the correct address for the recipients to be included with the message to be sent by one of sending services 20. The recipient address for the message is masked from sender processes 10.
Addresses for recipients are, however, maintained within the system of the preferred embodiment.
It will be understood that a recipient name is typically the name of a person or organization but in certain circumstances can be an identifier that has meaning in the context of the system. For example, the preferred embodiment may be implemented for internal communications in a company where all messaging is sent based on employee number. In the description of the invention, name or identifier may be used to express data signifying a particular message recipient.
Messaging system 14 includes message-service profile 16. In the preferred embodiment, this data is created and maintained by administrator 28 using tools provided in messaging system 14. Message-service profile 16 maintains data to specify a sending service or services for a message. In the preferred embodiment, messages are defined to have types and message-service profile 16 associates sending services with those types. For example, a message may be defined to be an order type or an invoice type. The sending service used will potentially differ based on the type of the message.
It is also possible, however, for message-service profile 16 to be a sophisticated combination of preferences for the selection of sending services, based on recipient name and/or message or sending services characteristics. For example, urgent messages to particular recipients may be sent by both fax service 22 and email service 24 whereas confidential messages may be sent using other services 26.
Messaging system 14 also includes service-address profile 18. This profile specifies, for each sending service in sending services 20, where in recipient data 12 the appropriate address for the sending service wilt be found,
In operation, after sender processes 10 sends a message with designated type and intended recipients to messaging system 14, message-service profile 16 is accessed. Messaging system 14 in this way determines which sending services 20 are to be utilized for forwarding the message to the recipients. In the preferred embodiment, the sending service selected is based on a the message type for the message to be sent. Message service profile 16 is accessed to look up which sending service (or services) is specified for the message type in question.
Service address profile 18 is then accessed to determine where in recipient data 12 the appropriate address is located for the sending service to be used. For example, where recipient data 12 is a database of records having fields, service-address profile 18 will indicate which field contains addresses used by a given one of sending services 20. Service-address profile 18 maintains a link between the sending service and the location of an address within the structure of recipient data 12.
Once the appropriate link to recipient data 12 has been obtained from service-address profile 18, messaging system 14 accesses recipient data 12 to obtain the address (or addresses) for the recipient (or recipients) corresponding to the sending services to be used. The message is then sent from messaging system 14 to the appropriate sending service in sending services 20, with the address retrieved. Where there are multiple recipients or multiple services to be used, messaging system 14 ensures that the services are accessed to provide for communication of all messages to all recipients in the appropriate manner.
The maintenance of the system of the preferred embodiment benefits from the architecture described above. A new sending service may be added to sending services 20 without requiring changes to sender processes 10. Where a new sending service is added to sending services 20, administrator 28 will update message service profile 16, as appropriate. Service address profile 18 will be changed to add a new link to recipient data 12, indicating the location of the appropriate address in the structure of recipient data 12. The sender process functionality remains as previously defined, messages are forwarded to messaging system 14 with the type and the indicated recipients. The inclusion of the new sending service, and the addresses required for the new service, are masked from sender processes 10.
Although a preferred embodiment of the present invention has been described here in detail, it will be appreciated by those skilled in the art that variations may be made thereto without departing from the spirit of the invention or the scope of the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
5333266 | Boaz et al. | Jul 1994 | A |
5406557 | Baudoin | Apr 1995 | A |
5493692 | Theimer et al. | Feb 1996 | A |
5781614 | Brunson | Jul 1998 | A |
5812795 | Horovitz et al. | Sep 1998 | A |
5825869 | Brooks et al. | Oct 1998 | A |
5872779 | Vaudreuil | Feb 1999 | A |
5937161 | Mulligan et al. | Aug 1999 | A |
5944786 | Quinn | Aug 1999 | A |
5987508 | Agraharam et al. | Nov 1999 | A |
6122258 | Brown | Sep 2000 | A |
6216104 | Moshfeghi et al. | Apr 2001 | B1 |
6282565 | Shaw et al. | Aug 2001 | B1 |
6411685 | O'Neal | Jun 2002 | B1 |
6606648 | Mukundan et al. | Aug 2003 | B1 |
6633630 | Owens et al. | Oct 2003 | B1 |
6643684 | Malkin et al. | Nov 2003 | B1 |
6697458 | Kunjibettu | Feb 2004 | B1 |
6782079 | Skladman et al. | Aug 2004 | B2 |
6839717 | Motoyama et al. | Jan 2005 | B1 |
7231427 | Du | Jun 2007 | B1 |
7581221 | Lai et al. | Aug 2009 | B2 |
7606864 | Koch | Oct 2009 | B2 |
20020065034 | Zhang | May 2002 | A1 |
20020138581 | MacIntosh et al. | Sep 2002 | A1 |
20030088556 | Allen, III | May 2003 | A1 |
20100121930 | Blight et al. | May 2010 | A1 |
20100306332 | Law | Dec 2010 | A1 |
20110064209 | Timmins et al. | Mar 2011 | A1 |
Number | Date | Country | |
---|---|---|---|
20030105823 A1 | Jun 2003 | US |