Method and system for proxying telephony messages
First Claim
1. A method of proxying telephony messages, the method comprising:
- receiving a first call signaling message from a calling computer of a public network, the first call signaling message comprising an alias of a callee computer of a private network and a public network address of a proxy computer;
determining from the alias which computer of the private network is the callee computer;
generating a second call signaling message for performing the function of the first call signaling message on behalf of the calling computer, the second call signaling message comprising the alias and a private network address of the callee computer;
sending the second call signaling message to the callee computer;
receiving a first outbound call signaling message from the callee computer, the first outbound call signaling message comprising a first port assignment for the transmission of call control messages between the callee computer and the proxy computer;
generating a second outbound call signaling message for performing the function of the first outbound call signaling message, the second outbound call signaling message comprising a port assignment for the transmission of call control messages between the proxy computer and the calling computer; and
sending the second outbound call signaling message to the calling computer.
3 Assignments
0 Petitions
Accused Products
Abstract
A proxy computer of a network can receive incoming telephony messages from one or more computers outside of the network and proxy them to computers within the network. Similarly, the proxy computer can receive outgoing telephony messages from within the network and proxy them to computers outside of the network. To set up inbound calls, a proxy program on the proxy computer looks for the presence of an alias in the call signaling messages, references a data structure to determine which computer on the network is associated with the alias, and proxies the call signaling and control messages between the callee computer and the calling computer based on the association, thereby creating a logical connection between the calling computer and the callee computer.
38 Citations
18 Claims
-
1. A method of proxying telephony messages, the method comprising:
-
receiving a first call signaling message from a calling computer of a public network, the first call signaling message comprising an alias of a callee computer of a private network and a public network address of a proxy computer;
determining from the alias which computer of the private network is the callee computer;
generating a second call signaling message for performing the function of the first call signaling message on behalf of the calling computer, the second call signaling message comprising the alias and a private network address of the callee computer;
sending the second call signaling message to the callee computer;
receiving a first outbound call signaling message from the callee computer, the first outbound call signaling message comprising a first port assignment for the transmission of call control messages between the callee computer and the proxy computer;
generating a second outbound call signaling message for performing the function of the first outbound call signaling message, the second outbound call signaling message comprising a port assignment for the transmission of call control messages between the proxy computer and the calling computer; and
sending the second outbound call signaling message to the calling computer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
monitoring a port for the presence of call signaling messages; and
if a call signaling message is determined to be present, forwarding the message to the proxy computer.
-
-
5. The method of claim 1, wherein the determining step further comprises:
-
making a function call to a directory access module that maintains a table of associations between aliases and network addresses of computers on the private network; and
receiving the network address of the callee computer from the directory access module.
-
-
6. The method of claim 1, further comprising:
creating an H.323 call bridge object in response to the receipt of the first call signaling message, wherein the call bridge object maintains Q.931 state information and H.245 state information for the caller and callee.
-
7. The method of claim 1, wherein the outbound call signaling message is a connect message.
-
8. The method of claim 7, wherein the connect message is structured according to the Q.931 protocol.
-
9. A computer-readable medium having stored thereon computer executable instructions for performing the steps of claim 1.
-
10. A method of registering with a directory service on a proxy computer, the method comprising:
-
receiving a message comprising an alias for identifying a computer of the private network and a network address of the private network computer;
extracting from the message the network address of the private network computer;
replacing the network address of the private network computer with a public network address of the proxy computer in the message, wherein the alias is associated with the public network address of the proxy computer;
submitting the modified message to the directory service as a request to register the private network computer with the directory service; and
creating an entry to associate the alias with the private network address of the private network computer. - View Dependent Claims (11, 12, 13, 14, 15, 16)
receiving a setup message with the alias of the private network computer from a calling computer of a public network;
determining the network address of the private network computer using the alias from the setup message;
generating a second setup message with the determined network address of the private network computer;
sending the second setup message to the private network computer; and
assigning a first port assignment for communication between the private network computer and the proxy computer and a second port assignment for communication between the calling computer and the proxy computer.
-
-
17. A method of proxying telephony messages between a computer of a private network and a computer of a public network via a proxy computer connected to both the private network and the public network, the method comprising:
-
monitoring a port assigned to a directory service of the public network for a message from a private network computer as a request to register with the directory service, wherein the message includes an alias to associate the private network computer with a network address of the private network computer;
intercepting the message determined from the monitoring step;
extracting the network address of the private network computer from the message;
replacing the network address of the private network computer with a public network of the proxy computer in the message;
sending the modified message to the directory service;
determining whether the directory service registered the private network computer with the modified message; and
creating an entry to associate the alias with the network address of the private network computer responsive to the private network computer being registered with the directory service. - View Dependent Claims (18)
receiving a message from a calling computer of the public network to connect with the private network computer, wherein the message is sent using the public network address of the proxy computer;
determining the network address of the private network computer from the created entry; and
sending the message to the private network computer using the network address of the private network computer.
-
Specification