摘要 |
<p>A communication, such as a telephonic or data communication, is routed between an initiator ( 1 ) and a recipient ( 5 ) based on the preferences of the initiator, or of both the initiator and the recipient. A virtual end-point ( 61,66 ) is allocated for each user ( 1,5 ). Each virtual end-point ( 61,66 ) stores one or more end-points for the respective user, typically as address/protocol pairs representing the addresses of the user's communication devices. The virtual end-points ( 61,66 ) are stored in a data store ( 60 ) accessible by a gateway ( 100 ) which communicates with the network(s) ( 80,85 ) with which the communication devices ( 2,6 ) of the initiator and recipient communicate. Preferences are associated with each virtual end-point, and specify the categories of protocols to which the end-points of that virtual end-point belong. The preferences may specify which of the end-points of the respective virtual end-point to use for a communication routing path when certain criteria are met. A routing engine ( 30 ) in the gateway ( 100 ) determines a routing path between an initiator end-point ( 82 ) and a recipient end-point ( 86 ), for example by rules-based processing, in accordance with the preferences associated with the virtual end-points for the initiator and the recipient. The gateway ( 100 ) also converts the protocol or format of the communication from that of the initiator's end-point to that of the recipient's end-point, if required.</p> |