Abstract:
A method and apparatus for completing call or contacts over a network based upon an identifier. The contacting party sends a message requesting contact with the contacted party, and the system locates the contacted party via a data network or telephone address specified preferably by the contacted party.

Description:
TECHNICAL FIELD 
     This invention relates to telephony and data communications, and more particularly, to an improved method and apparatus for merging the functionality of a telephone network with that of a data network. In a preferred embodiment, the data network is a packet switching network such as the Internet. 
     BACKGROUND OF THE INVENTION 
     The Internet and similar data communications networks have become the communications medium of choice. Recently, communications previously transmitted over circuit switched networks are being transmitted more and more over packet switched networks, such as the Internet. Thus, for example, present day art includes a variety of examples of voice telephone calls and facsimile images being transmitted as packetized data over the Internet. Unfortunately, the merging of the Internet and the public switched telephone network (PSTN) has been less than perfect. One reason is that the Internet and the PSTN have separate addressing schemes. In the Internet, a person is denoted by a logical address which may be accessed from any physical location. In the PSTN, the addresses (i.e., telephone numbers) denote physical locations (i.e., telephone extensions), which may be utilized by any person. 
     Some systems exist in present art which provide for the exchange of data between the PSTN and the Internet. For example, U.S. Pat. No. 5,428,608 provides a technique for allowing a modem to communicate over the PSTN and to separately route data calls over the Internet. Although the &#39;608 patent provides a technique for permitting similar equipment to communicate over both the PSTN and the Internet, the &#39;608 patent contains several major drawbacks. The most important drawback is that this patent fails to solve the problem of different addressing schemes of the two networks, and the associated burden that it places upon users. 
     In view of the above, there exists a need in the art for an improved technique of communicating over both the Internet and the PSTN. 
     SUMMARY OF THE INVENTION 
     The above and other problems of the prior art are overcome in accordance with the present invention which relates to an integrated system for data, voice, and other communications. In accordance with the present invention, a server interfaces with both a data network and the PSTN. The server includes a mechanism for finding contact information for contacted parties. The party is then contacted to complete a call via Internet Protocal (IP) telephony or IP telephony in combination with other forms of media. 
     If the contacted party is a member of the same “community” as the contacting party, the local server completes the contact. If the contacted party is not a member of the local community, the server determines, from a remote domain name server (DNS), the appropriate local server for the contacted party. A data network connection is then formed between the local server for the contacted party and the local server for the contacting party. The contact is then completed by the local server for the contacted party. 
     Call completion may occur over the Internet or PSTN, or a combination of both, yet the identifier entered by the calling party to identify the called party would be the same. The server in the same local “community” as the called party performs a table lookup and translates an identifier entered by the calling party into a network address on either the telephone network or the Internet. Moreover, the table lookup also ascertains which network should be used to complete the call. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  shows an architectural diagram for an exemplary embodiment of the present invention; and 
         FIG. 2  shows a flow chart of the functions to be implemented at the proxy server of the contacting party. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
       FIG. 1  shows an exemplary architectural diagram of a first embodiment of the present invention. The arrangement of  FIG. 1  includes two ecall proxy servers  106  and  108 , each connected to an Internet service provider  103  and  130  respectively. Each of the proxy servers  106  and  108  is also connected to a local exchange carrier (LEC)  104  and  134  respectively. Communications links  122 ,  120  and  124  may represent communications that occur over the Internet or any other data network. Preferably, such data network is a packet switched data network. 
     The Ecall proxy servers  106  and  108 , or just servers, are responsible for interfacing to the public networks, including the Internet and the PSTN. Notably, each ecall server may be implemented by a third party application service provider (ASP), so that the functionality of the servers may actually be split among several servers. 
     Telephone device  137  interfaces over an Internet Protocol (IP) communications link  128  through an Internet Service Provider (ISP) gateway  132 . In an alternative embodiment, telephone devices such as  101  may interface directly with proxy server  106  through LEC  104 . In such a case, communications link  140  would be a circuit switched Public Switched Telephone Network (PSTN) link, and server  106  would include the appropriate hardware find software for converting the communications on communications link  140  into packetized IP information. 
     In order to explain the operation of the exemplary embodiment described in  FIG. 1 , we presume that party A wishes to contact party B. Note that we use the term “contact,” rather than “call.” The contact may be comprised of voice communications (e.g., a telephone call) or it may include contact via e-mail with a live web chat or other media. Importantly, in accordance with the teachings of the present invention, party A need not even be aware of the type of contact that will be ultimately implemented. Instead, party A may initiate the contact using PSTN, IP, etc., and party B may be contacted, at his option, utilizing any of the foregoing. In a preferred embodiment, party B may be contacted by establishing a voice over IP connection between a computer and the server. 
     For purposes of explanation, presume that party A picks up the telephone  101  and dials the telephone number of party B. The telephone number of party B is mapped by LEC  104  to communications line  140  and connected to proxy server  106 . The call from telephone  101  to proxy server  106  is completed in the conventional manner used by the PSTN. We also note that between LEC  104  and proxy server  106 , it is possible to interpose an ISP gateway such as that shown as  132 . In such a case, the PSTN call on communications link  140  would be converted to IP prior to being completed to proxy server  106 . 
     If a connection is made to the server  106 , the identifier of called party B may be entered using touch tones or other signaling. Thus, party A could enter an email address of party B that is used to locate the local server to party B. 
     Proxy server  106  acts in a manner loosely analogous to the local exchange in a telephone network. More specifically, proxy server  106  includes a table of parties to be contacted which are members of the local community of proxy server  106 . In the data network world, proxy server  106  might represent a company domain name, such as acme.com, and the parties within proxy server  106  would include all of the employees. In the present art, e-mail systems typically work in a similar manner, with the server for a particular company having a record of each and every e-mail address within that domain name. For purposes of explanation herein, a proxy server is said to be associated with a community in which a party X is contained if the server has stored the contact information (i.e.; network address) for that party X. 
     If the contacted party B is a member of the particular domain represented by proxy server  106 , then the contact may be completed by establishing a connection to the appropriate party B. Whether that contact is completed via e-mail, voicemail, or telephone, and whether the connection from proxy server  106  to the contacted party is over the Internet or the PSTN is of no concern to party A. Instead, the proxy server  106  includes a table which defines how contacts to party B should be made. 
     If the contacted party B is not a member of the local community of proxy server  106 , then proxy server  106  contacts via communications link  122 , a DNS server  170 . The DNS server  170  includes the appropriate data and/or communications in order to determine a logical network address of the contacted party B. The DNS server  170  operates in a manner similar to the way an e-mail address is located for a receiving party in today&#39;s e-mail systems. Thus, the DNS server  170  would typically determine not the actual location or logical address of the particular contacted party B, but rather, the network address of proxy server  108 . By analogy, in today&#39;s world, if an e-mail is sent to Joe at ITXC.com, the DNS server  170  would typically locate the network address of ITXC.com. The responsibility of forwarding the communication to the particular e-mail address within the domain name would normally be placed upon the local email host for ITXC.com. 
     Once the DNS server  170  locates the network address of the proxy server  108  of which contacted party B is a member, a communications link  124  is established between proxy server  106  and proxy server  108 . The communications link  124  would typically be an IP communications link over the Internet, although it is possible that portions of the link may be implemented using the Internet while other portions may be implemented using the PSTN. 
     Once the proxy server  108  is located and the communications link is established, the call set-up process continues at proxy server  108 . Proxy server  108  checks a table of addresses and locates the particular contacted party B. Within the record for contact party B, is the appropriate network address. Note that the network address also includes information indicative of which type of contact should be made from Proxy Server  108  to party B. Thus, the record within proxy server  108  may instruct the system to contact party B over the PSTN and a particular telephone number, or it may instruct proxy server  108  to establish an IP call to an audio equipped PC  136  through an ISP  130  or to a hand held or other device. The party A placing the contact has no need to be aware of the particular type of contact between proxy server  108  and party B. 
     Notably, party B itself may determine through a graphical user interface (GUI) the particular contact information used by proxy server  108  in order to contact party B. Party B may specify to proxy server  108  that an IP voice communications should be established to a particular “softphone” within the PC  136 . Alternatively, party B may specify that a particular telephone number over the PSTN should be dialed. Notably, server  108  may also optionally contain an interface directly to the PSTN. This would allow a potential contacted party to specify virtually any technique that it wants to be used for potential contacts. Moreover, the technique used to contact the contacted party may vary depending upon who the contacting party is. For example, if the contact is initiated from a telephone, the caller ID is known. If the contact is initiated from another computer, over the Internet, the e-mail address will be known. Server  108  may use this data to assign certain contacts to IP calls, while others are sent to a cell phone over the PSTN. 
       FIG. 2  depicts an exemplary flow chart to implement the teachings of the present invention in proxy server  106 . At start  201 , the processing begins and incoming contact is received either on exemplary communications links  140  or  150 . Proxy server  106  first ascertains whether or not the incoming contact is a local contact. If so, a table look up is performed at block  209 , and decision block  202  determines if the parameters for contacting the contacted party are within proxy server  106 . If so, a contact will be initiated through proxy server  106  either over the Internet, PSTN, or a combination of both as previously described. The decision as to whether the contact should be completed via an Internet or PSTN connection may be included within information stored on server  106 . 
     If the party to be contacted is in the local community of server  106 , then the server  106  determines from a table lookup  209  the appropriate contact information for the party to be contacted. Such information may include a network address, the network over which the contacted party desires to be contacted, etc. Call setup is then completed at block  208 , and the processing of the call proceeds at block  207 . 
     Alternatively, if the party to be contacted is not a member of the local community of interest of server  106 , then server  106  contacts the DNS server  170  to determine which server is the server that has the contacted party within its local community of interest. The contacted party&#39;s identifier, which may be an email or “ecall” address, is transmitted from server  106  to DNS server  170 . The DNS server  170  may be a network or servers and other computers. In any event, the DNS server  170  return to the server  106  the network address of the server  108  that is part of the community of interest of the party to be contacted. In  FIG. 2 , this is shown functionally at block  204 . 
     Upon server  106  receiving the network address of server  108 , control is transferred to block  205  where server  106  initiates a data network connection to establish a communications session  124  over the packet switched network. As indicated at block  205 , server  106  then enters a wait state, to allow server  108  to set up the final leg of the contact with the contacted party. Note that during the establishment of the communications session over 124, the identifier of contacting party may be sent to server  108 . Server  108  then sets up the call using the technique specified by the contacted party, and signals server  106  that the call set up. At block  206 , the call takes place and the system then return to the top of the flow chart in  FIG. 2  to process other calls. 
     Notably, the system allows a single email or ecall address to be utilized irrespective of whether the contacted party will ultimately be contacted over the Internet or the PSTN. The system also allows the potential contacted party to specify which network and network address to use, and when and how to contact the party. The contacting party need only be aware of one ecall or email address. 
     The client software to assist in initiating the contact may include a single icon that can be selected for either email or ecall. The user would then be asked to select whether email or ecall is desired. The client software would then send either an email message or a request for a call as previously outlined. Notably, if a request for a call is sent, the initiator does not need to know whether such will ultimately terminate via the PSTN or the Internet. Moreover, the initiator does not need to know whether the party being contacted is in the same community as the contacting party or not. 
     While the above describes the preferred embodiment of the invention, various other modifications and additions will be apparent to those of skill in the art. Such modifications are intented to be covered by the following claims.