A METHOD AND SYSTEM FOR RELEASING A VOICE RESPONSE UNIT FROM A PROTOCOL SESSION

Abstract: An approach for processing voice calls over a packet switched network (105) as to efficiently utilize the functionalities of a Voice Response Unit (VRU) (113). According to one embodiment, a call originator (101), acting as a User Agent Client in accordance with the Session Initiation Protocol (SIP), issues messages to establish a first call-leg with the VRU (113). The VRU (113) performs digit collection to obtain information to authenticate the call originator (101) and to authorize the voice call. Based upon the issued messages from the call originator, the VRU establishes a second call-leg with the call terminator. The VRU is released from the voice call after binding the call-legs to connect the call originator to the call terminator (103).

Description: TITLE OF THE INVENTION Λ METHOD AND S YSTlϊM FOR RELEASING Λ VOICE RESPONSE UNIT FROM Λ PROTOCOL SESSION BACKGROUND OF ' THE INVENTION Field of the Invention: The present invention relates lo call processing, and is moie pailiculaily minted to establishing a voice call over a packet switched network via a voice icsponse unit. Discussion of the Background The popularity and convenience of the Internet has resulted in the reinvention of traditional telephony services. These services are offered over a packet switched network with minimal or no cost to the users. IP (Internet Piolocol) telephony, thus, have found significant success, particularly in the long distance market. In general, IP telephony, which is also icfcπcd to as Voice-ovcr-IP (VOIP), is the conversion of voice information into ilula packets t at ni u transmitted over an IP network. Users also have turned lo IP telephony as a matter of convenience in that both voice and data services are accessible thiough a single piece of equipment, namely a personal computer. The continual integiation of voice and data sei vices further fuels tliis demand for IP telephony applications. With the growing acceptance of IP telephony among the millions of cυusnineis, sci vice providers arc cognizant of the impact that these users have on nciwυik capacity (e.g., switch sizing, line capacity) as well as network resources (e.g., peripheial voice pioccssing devices). Λ valuable network resource is the voice response unit (VRU). which piovides announcement and interactive voice response functions. These functions have become essential for the expedient lieatment of voice calls, especially in call center applications and operator assistance. Because VRU ports are expensive, it is desirable to ensure efficient use of such poi ts. Figure 8 illustrates a conventional JP telephony system. In this system 800, an end ollice 801 houses u switch 803 and a VRU 805 : the switch 803 communicates with the V RU ovei a release line trunk (IILT). Switch 803 serves user 807 to a public switch telephone nclwoik (PSTN) 809. The VRU 805 is not functionally integrated with the IP network 8 15. That is, the VRU 805 works primarily in conjunction with the switch 803 within the PSTN realm. Using plain old telephone service (POTS), a calling paity 807 can place a telephone call ovei PSTN 809 lo a called party 81 1 or 813. The PS ' FN 809 is connected to an IP (Internet Pr otocol) network 1( 15, thereby enabling communication among the voice stations 807, 81 1 , and 13, which are connected to the public switch telephone network 809, and the personal computers 1 7 and 81 , which are attached to the IP network 815. Attention is now drawn tυ transmission of voice calls over the IV network 815. Four possible scenarios exist with the placement of a VOIP call: ( 1 ) p onc-lo-phone, (2) phone-to-PC, (3) PC-lυ-phonc, and (<1) PC-lυ-PC. In the first scenario of phone-lo-phone call establishment, voice station 807 is switched ihrυugh PSTN 809 by switch 803 to a VOIP gateway (not shown), which fυrwaids the call through the IP nclwoik 15. ' I he paeketi/ccl voice - 2 - SUBSTTTUTE SHEET (RULE 26) call is then routed through the IP network 815, exiting the IP network 8 15 at an appropriate point to enter PSTN 809 and terminates at voice station 81 1. Under the second scenario, voice station 807 places a call to personal computer (PC) 817 through switch 803 to PSTN 809. This voice call is then switched by the PSTN 809 to a VOIP gateway (not shown), which forwards the voice call to PC 817 via IP network 815. The third scenario involves PC 817 placing a call to voice station 813, for example. Using a voice encoder, PC 817 introduces a stream of voice packets into IP network 815 that arc destined for a VOIP gateway (not shown). A VOIP gateway (not shown) converts the packetizcd voice information into a PO TS electrical signal, which is circuit switched to voice station 813. Lastly, in the fourth scenario, PC 8 17 establishes a voice call with PC 819. In tliis case, packetizcd voice data is transmitted from PC 817 via IP network 8 15 to PC 8 19, where the packetized voice data is decoded. As indicated above, a network resource that permits the efficient processing of voice calls is a VRU 805. Figure 9 shows a conventional call path that is established by switch 803 to VRU 805. RLT links 901 connect switch 803 to VRU 805, consuming two potts of each of these network components 803 and 805. RLT links 901 enable the release of a call back to switch 803 from VRU 805. This releasing functionality allows the VRU 805 lo be dropped from the voice call without impacting the call completion between call originator 903 and call lcrniiiiator 905. For explanatory purposes, it is assumed that a VRU 805 is needed to assist with call processing from call originator 903 (i.e., calling party) lo call terminator 805 (i.e., called parly). Call originator 903 places a voice call lo switch 803 using port I . In turn, the switch 803 switches the call out of port 3 to port 1 of VRU 805. Once this call is established with VRU 805, the VRU 805 prompts the call originator 903, for example, to collect digits regarding account codes or billing information in order to authorize and validate the call originator 903. After this - 3 - SUBSΠTUTE SHEET (RULE 26) process, the VRU 805 loops the voice call back to the switch 803 via port 2 over RLT 901 into port 4 of switch 803. Switch 803 then switches the call out of port 2 to call lerininalor 905. ' I he RLT links 901 permits the VRU 805 to drop out of the call when the call is completed between call originator 903 and call terminator 905. This release mechanism occurs over the PSTN 809. Such a mechanism is important because it frees up ie VRU 805 lo process other calls; in addition, the switch 803 frees up two of its ports. An equivalent functionality is desirable in an IP telephony system. Based on the foregoing, there is a clear need for improved approaches for call processing with respect to use of network resources. There is also a need to increase the integration of voice services over a data network. There is a further need to minimize the cost of network operation. Based on die need to efficiently employ network resources, an approach for optimizing the use of VRU in an IP telephony environment is highly desirable. SUMMARY OF THE INVENTION According to one aspect of the invention, u method is provided for processing a voice call over a packet switched network between a call originator and a call terminator. The method comprises establishing a first call-leg between the call originator and a voice response unit (VRU) using a menu router that provides call control services according to a signaling protocol. The method also includes establishing a second call-leg between ihe VRU and the call terminator based upon the signaling protocol. The method further includes binding the first call-leg and the second call-leg to complete the voice call between the call originator and the call terminator, and releasing the voice cull from die VRU based upon the signaling protocol Under this approach, network resources arc efficiently utilized, resulting in reduction of network operation costs According to another aspect of the invention, a communication system for processing a voice call over a packet switched network compπses a call originator that is configured to initiate and lo receive the voice call over the packet switched network A menu router performs call control services relating to the voice call A voice response unit (VRU) processes a call setup request from the call originator. A call terminator is configured to process the \ oιce call I he call originator, the call terminator, menu router, and the VRU communicate using a common protocol 1 he call originator establishes a f irst call-leg with the VRU via ihe menu iouter I he VRU establishes a second call-leg with the call lerininalor and drops fiom the voice call upon binding the first call-leg and the second call-leg I he above arrangement udvantagcously provides greater integration of voice services over a packet switched network In yet another aspect of the invention, a computer-readable medium carrying one or more sequences of one or more instructions for processing a voice call over a packet switched netwoi k between a call originator and a call terminator 1 he one or more sequences of one or more instructions include instructions which, when executed by one or more pioccssors, cause the one or more processors to perform the step of establishing a first call-leg between the call originator and α voice response un t (VRU) usuig a menu router that provides call control services according to a signaling prolocol Another step comprises establishing a second call-leg between the VRU and the call terminator based upon the signaling protocol Another step includes binding ihe fust call-leg and the second call-leg to complete the voice call between the call originator and the call terminator Yet another step includes releasing the voice call from the 5 - SUBSTTTUTE SHEET (RULE 26) VRU based upon the signaling protocol. This approach advunlugeously peππits increased network operation efficiency. BRIEF DESCRIPTION OF THE DRAWINGS A more complete appreciation of the invention and many of the attendant advantages thereof will be readily obtained as the same becomes better understood by reference lo the following detailed description when considered in connection with the accompanying drawings, wherein: Figure 1 is a block diagram of an IP telephony system, according to an embodiment of the present invention; Figure 2 is diagram of the IP telephony protocol architecture employed by the system υf Figure 1 ; Figure 3 is a diagram of a Session Initiation Protocol (SIP) model that is used in the system of Fiyurc 1 ; Figure 4 is a diagram of an exemplary network of menu routers, according lo one embodiment of the present invention; Figure 5 is a diagram illustrating the interaction between the call originator, call terminator, and the voice response unit (VRU) in the system of Figure 1 ; Figure 6 is a flow diagram of the operation of releasing the VRU in die system of Figure 1 ; Figure 7 is a diagram of a computer syslcm that can perform the process of Figure 6, in accordance with an embodiment of the present invention; Figure 8 is a diagram of a conventional IP telephony system; and Figure 9 is a diagram of the release line trunk (RLT) mechanism that is utilized in a traditional PSTN. DESCRIPTION OF THE PREFERRED EMBODIMENTS In the following description, for the purpose of explanation, specific details arc set forth in order to provide a thorough understanding of the invention. However, it will be apparent that the invention may be practiced without diesc specific details. In some instances, well-known structures and devices are depicted in block diagram form in order lo avoid unnecessarily obscuring the invention. The present invention accomplishes the release of VRU potts upon completion of the VOIP call by utilizing a signaling protocol, such as a Session Initiation Protocol (SIP). A call originator establishes a first call-leg with the VRU, wliich performs digit collection to obtain, for example, account or billing information from the call originator. Based upon (he collected information, the VRU can determine whether die call originator is authorized to place a call. Thereafter, the VRU establishes a second call-leg with the call terminator and drops out of the voice call. Although the present invention is discussed with respect to the Session Initiation Protocol, it should be appreciated that one of ordinary skill in the art would recognize that the present invention has applicability to other equivalent communication prolocols. Further, the discussion below focuses on a call scenario that involves a PC-to-PC call establishment, it is understood that the present invention can be practiced with other call scenarios (e.g., PC-lo- phone and phone-to-PC). - 7 - S UBSTΓΓUTE SHEET (RULE 26) Figure 1 shows the architecture of a IP telephony system according to one embodiment of the present invention. Although call originator 101 and call terminator 103 are shown lo be attached to a IP network 105, it is understood that ihe call originator 101 and call lerininalor 103 may be voice stations off die PSTN 107 as well. In general, the call originator 1 01 and the call terminator 103 may be any device that is capable of processing voice calls; e.g., an analog telephone set, a digital telephone station, or a personal computer that is loaded with the appropriate software and accompanying hardware. Voice communication can be established in the IP telephony system 100 among any of the devices, 101 , 103, 109. and 1 1 1 . However, this particular embodiment is explained only with respect to the communication between call originator 101 and call terminator 103 in conjunction with VRU 1 13. As shown in Figure 1 , the end office 151 houses a switch 1 1 , which bridges calls from the PSTN 107 to an automatic call distributor (ACD) 1 17 via, for example, a release line Irunk. A VRU controller 1 19 is connected to ACD 1 17 through one or moic Switch to Computer Application Interface (SCAJ) links. These SCAI links provide com i ication between ACD 1 17 and VRU controller 1 19, which is responsible for selecting a group or a particular agent to wliich the call is lo be routed. In other words, the VRU conlrollcr 1 1 communicates with the ΛCD 1 17 for call delivery to the different agents within, for example, an operator center (not shown). The term agent denotes an entity that participates in call processing; e.g., a live pcison on a manual operator console or a software process. VRU conlroller 1 1 further provides such functionalities as coordinating data and voice for operator-assisted calls. A Local Area Network (LAN) 121 pcπnits the VRU controller 1 19 lo communicate with VRU 1 13. LAN 121 also provides connectivity to IP network 105. As previously mentioned, call originator 101 and call terminator 103 are PCs that have access to IP network 105. It is assumed that these devices 101 and 103 are appropriately equipped with voice encoders and decoders as well as software to process VOIP calls. In lliis example, call originator 101 initiates a VOIP call that requires the services of a VRU 1 13. VRU 1 13 provides announcement capability as well as Interactive Voice Response (IVR) capability. In essence, VRU 1 13 provides an ability to collect various information from and supply announcement information to a calling parly (i.e., call originator). In this instance, after the call originator 101 establishes a call-leg with VRU 1 13, the VRU 1 13 prompts call originator 10 L for a billing code or an account code, thereby enabling the authentication and validation of call originator 101 to authorize the desired voice call. After being granted authorization, the VOIP call from call originator 101 can be completed to call terminator 103 through the IP network 105. During the call process of the VOIP call from call originator 101 to call terminator 103, it is important Uiat VRU 1 13 be utilized efficiently. Keeping the VRU 1 13 in the voice call for the entire call would result in the VRU 1 13 remaining idle for a significant portion of that voice call, wasting precious network resources. That is, VRU 1 13 should remain in the voice call only for the duration that it is needed to collect information from call originator 101. To accomplish this task, a suite of protocols arc utilized thai collectively define IP telephony signaling. Figure 2 illustrates the IP telephony protocol architecture in accordance with an embodiment of the present invention. The layered nature of the architecture provides protocol separation and independence, whereby one protocol can be exchanged or modified without affecting the other higher layer or lower layer protocols. It is advantageous that Uie development of these protocols can occur concurrently and independently. - 9 - SUBSTΓTUTE SHEET (RULE 26) The foundation of the architecture rests with the IP layer 201. ' I he IP layer 201 provides an unreliable, connectionless data delivery service at the network level. The service is "uiueliable" in the sense that the delivery is on a "best effort" basis; thai is, no guarantees of packet delivery are made. IP is the de facto Internet working protocol standard. Current standards provide two versions of IP: Version 4 and Version 6. One of the key differences between the versions concerns addressing; under Version 4. the address fields aie 32 bits in length, whereas in Version 6. the address field has been extended to 128 bits. Above the IP layer 201 are the TCP (Transmission Control Protocol) 203 and the UDP (User Datagram Protocol) 205. The TCP layer 203 provides a conneclion-orienled protocol that ensures reliable delivery of the IP packets, in part, by performing sequencing functions. This sequencing function reorders any IP packets that arrive out of sequence. In contrast, the User Datagram Protocol (UDP) 205 provides a connectionless service that utilizes the IP protocol 201 to send a data unit, known as a datagram. Unlike TCP 203, UDP 205 docs not provide sequencing of packets, relying on the higher layer protocols to sυrl the information. UDP 205 is preferable over TCP 203 when the data units arc small, which saves processing time because of the minimal reassembly time. One of ordinary skill in the art would recognize that embodiments of the present invention can be practiced using either TCP 203 or UDP 205, as well as oilier equivalent protocols. The next layer in the IP telephony architecture of Figure 2 supplies the necessary IP telephony signaling and includes the H.323 protocol 207 and the Session Initiation Protocol (SIP) 209. The H.323 protocol 207, which is pioiuulgatcd by the International Telecommunication Union (ITU), specifies a suite of protocols for multimedia communication. SIP 209 is a competing standard that has been developed by the Internet Engineering Task Force - 10 - SUBSTTTUTE SHEET (RULE 26) (IETF). SIP 209 is a signaling protocol that is based on a client-sci vci model. It should be noled that both the H.323 protocol 207 and SIP 209 are not limited to IP lelephony applications, but have applicability to multimedia services in general. In the prcfeued embodiment of the present invention, SIP 209 is used to create and teπninate voice calls over an I P network 105. However, it is understood that one of ordinary skill in the art would realize that the 11.323 protocol 207 and similar protocols carr be utilized in lieu of SIP 209. Above SIP 209 is Ihe Session Description Protocol (SDP) 21 1 , wliich provides information about media streams in the multimedia sessions, as to pcπnit the recipients of the session description to participate in the session. As seen in Figure 2, SIP 209 can utilize either TCP 203 or UDP 205. 1 lowevcr, UDP 205 is adopted in die preferred embodiment of the present invention. Similar lo other IETF protocols (e.g., die simple mail transfer protocol (SMTP) and Hypertext Transfer Protocol (HTTP)), SIP 209 is a textual protocol. As indicated earlier, SIP 209 is a client-server protocol, and as such, clients generate requests that arc responded to by the servers. Figure 3 illustrates the client-server model 300 of SIP 209. On the client side, SIP 209 defines a User Agent Client (UΛC), which is responsible for initiating a SIP request. On the server side, a User Agent Server (UΛS) 303 receives the SIP request and icturns an appropriate response. Both the UΛC 301 and the UΛS 303 act on behalf of an end user. SIP fur ther defines two types of User Agent Servers: (1 ) proxy server 305, and (2) redirect server 307. SIP proxy server 305 receives requests from the UAC 301 and determines the next server that the request should be forwarded. Accordingly, the SIP proxy server 305 sends the iequest to such a server. During tlus process of receiving and forwarding, the proxy server 305 behaves both as a client and a server by issuing both requests and responses as appropriate. In the case of the redirect server 307. ihe client 301 is given giealer responsibility. The redirect server 307 does not forward requests from UAC 301 to the next server, but instead responds back to the client 301 with the address of the next server. The client 301 . thus, has the onus of directly communicating with this designated server. Using the SIP client-server model, IP telephony calls can be processed, according to the present invention, lo efficiently utilize a Voice Response Unit. Figure 4 shows a computer network associated wilh the call originator in implementing SIP, according to an embodiment of the present invention. Call originator 101 , which in this exemplar^' embodiment is a PC, is attached lo LAN 401 . However, it is recognised that the call originator 101 can be any device that is capable of supporting IP voice. LAN 401 can be any type of network, including Ethernet, Token Ring, FDDI (Fiber Distributed Data Interface), or ATM (Asynchronous Transfer Mode). In this exemplary network, the call originator (as a User Agent Client) 101 communicates with a menu router/proxy ser ver 405, which acts as a UΛS. The menu router 405 offers call originator 101 a menu of choices that invoke vurious call processing actions. Additionally, menu router 405 launches specific menu scripts according to the request message that is sent by call originator 101 . The menu router 405 provides media proxy and media mixing and can perform as a proxy server according to the menu scripts. Because the menu router 405 has the capability to behave as a proxy server, the menu router 405 is also designated as a menu router/proxy server. Although the menu router 405 is shown as a part of the same network as the cail originator 101 , the menu router 405 may exist anywhere within the same network domain as the call originator. When UΛC 403 issues a request, cail originator 101 first locates a proxy server 405 using the IP address of the proxy server 405. Assuming the VOIP call is destined for call terminator - 12 - SUBSTTTUTE SHEET (RULE 26) 103, proxy server 405 forwards a request from call originator 101 to proxy server 407. To reuch proxy server 407, die request travels over LAN 401 to a gateway 409, which provides an interface to IP network 105. After traversing the IP network 105, the request emerges at another gateway 403, which is attached to LAN 41 1 , where the request is retrieved by proxy server 407. Proxy server 407 then communicates with a location server 413 to determine Ihe location of call terminator 103. Attention is now drawn to a VOIP call involving VRU 1 13, as shown in Figure 5. For explanatory purposes, it is assumed that the call originator 101 , the call terminator 103, and the VRU 1 13 belong to separate domains 501 , 503, and 505, respectively. Within domain 501 , call originator 101 sends a request to establish a call with VRU 1 13 to menu rouler/proxy server 405, which in turn communicates with menu router/proxy server 507 of domain 505. The proxy server 507 notifies VRU 1 13 of the request by call originator 101. Upon receiving the request from call originator 101 , proxy server 507 inquires location server 509 for the address of VRU 1 13. If VRU 113 is able to accept die request (i.e., has available ports), VRU 1 13 issues an acknowledgment back to call originator 101. Consequently, a successful connection has been made between -call originator 101 and VRU 1 13, and thus, VRU 1 13 can begin the process of digit collection, as previously discussed. Upon completion of the digit collection from call originator 101 , VRU 1 13 issues a request to proxy server 507 to establish a eall-leg with call terminator 103 within domain 503. After receiving the request from the VRU 1 13, proxy server 407 queries location server 1 1 lo dcteπnine the address of call terminator 103. Subsequently, call terminator 103 receives the request and acknowledges, thereby establishing a call-leg between call terminator 103 and VRU 1 13. Having established this second call-leg, VRU 1 13 binds the first call-leg from call - 13 - SUBSTTTUTE SHEET (RULE 26) originator 101 to this second call-leg to permit the communication between call originator 101 and call terminator 103. VRU 1 13 then drops from the call. By dropping from the call, VRU 1 1 frees up its ports to process other voice calls. It should be rioted that within domain 501 , there exists a location server 513 to process calls for device 101 : in actual implementation, call originator 101 can also behave as a call terminator within the single device. The system of Figure 5 employs SIP lo exchange messages among domains 501 , 503, and 505. A detailed discussion of SIP and its call control services are desciibed in IETF RFC 2543 and IETF Internet draft "SIP Call Control Services", June 17, 1999; both of these documents are incorporated herein by reference in their entirety. SIP messages are either requests or responses. The User Agent Clients issue requests, while the User Agent Sci vcis provide responses to these requests. SIP defines six types of requests, which are also iefeπed to as methods. Hie fust method is the INVITE method, which invites a user to a conference. The next method is the ΛCK method, which provides for reliable message exchanges for invitations in that the client is sent a confirmation to the INVITE request. That is, a successful SIP invitation includes an INVITE request followed by an ΛCK request. Another method is the BYE request, which indicates to the UΛS that the call should be released. In oljier words, BYE terminates a connection between two users or parties in a conference. The next method is the OPTIONS method; this method solicits infoπnalion about capabilities and docs not assist with establishment of a call. Lastly, the REGISTER provides information about a user's location to a SIP server. Figure 6 shows the operation involving the use of a VRU to establish a call between a call originator 101 and a call terminator 103. utilizing SIP. It should be noted that Figure 6 piovides a simplified SIP message flow between call originator 101 and call originator 103 using VRU 1 13. In step 601 , call originator 101 issues an INVITE request to VRU 1 13. In response, VRU 1 13 issues a 200 OK message, indicating that the invitation was successful, per step 603. Next, call originator 101 , as in step 605, sends an ΛCK message lo VRU 1 13 lo acknowledge Ihe previous message. At this point, call originator 101 and VRU 1 13 exchange data as necessary. After die VRU 1 13 completes processing, call originator 101 issues a BYE VRU message using an Also header to indicate that call originator 101 seeks lo establish a call with call terminator 103, per step 607. Next, VRU 1 13 issues a 200 OK message, as in step 609, lo indicate that die previous message was successful. In turn, VRU 1 13, as in step 61 1 , sends an INVITE call terminator message to call terminator 103. In step 613, call terminator 103 issues a 200 OK message to VRU 1 13, which then acknowledges via an ΛCK message, per step 61 . Λt this point in the call processing, VRU 1 13 drops out of the voice call, leaving call originator 101 and call terminator 1 3 to exchange voice messages. Under this arrangement, the valuable network resource, VRU 1 13, is not unnecessarily tied up for the duration of the voice call between call originator 101 a d call terminator 103. Figure 7 illustrates a computer system 701 upon which an embodiment accoiding lo the present invention may be implemented. Computer system 701 includes a bus 703 or other communication mechanism for communicating information, and a processor 705 coupled with bus 703 for processing the information. Computer system 701 also includes a main memory 707, such as a random access memory (RAM) or other dynamic storage device, coupled to bus 703 for storing information and instructions to be executed by processor 705. In addition, main memory 707 may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 705. Computer system 701 further - 15 - SUBSTTTUTE SHEET (RULE 26) includes a read only memory (ROM) 709 or other static storage device coupled to bus 703 for storing static information and instructions for processor 705. Λ storage device 71 1. such as a magnetic disk or optical disk, is provided and coupled to bus 703 for storing information and instructions. 5 Computer system 701 may be coupled via bus 703 to a display 713. such as a cathode ray tube (CRT), for displaying information to a computer user. An input device 71 5. including alphanumeric and other keys, is coupled to bus 703 for communicating information and command selections to processor 705. Another type of user input device is cuisor control 7 17, such as a mouse, a trackball, or cursor direction keys for communicating direction information 10 and command selections to processor 705 and for controlling cursor movement on display 71 3. Embodiments are related to the use of computer system 701 lo control ΛRU 201 leniolely via (he transmission of control messages. According to one embodiment, the issuance of SIP messages is provided by computer system 701 in response to processor 705 executing one or more sequences of one or more instructions contained in main memory 707. Such instructions i j may be read into main memory 707 from another computer-readable medium, such as storage device 71 1. Executiorr of the sequences of instructions contained in main memory 707 causes processor 705 to perfoπn the process steps described herein. One or more processors in a multiprocessing arrangement may also be employed to execute the sequences of mstniclions contained in main memory 707. In alternative embodiments, hard-wired circuitry may be used in { dace of 0 or in combination with software instructions. Thus, embodiments arc not limited to any specific combination of hardware circuitry and software. Further, the Sessions Initiation Protocol as well as the instructions to transmit and ieceive SIP messages may reside on a computer-readable medium. The term "computer-readable - 16 - SUBSTΓTUTE SHEET (RULE 26 ) medium" as used herein refers to any medium that participates m prov iding liistiuctions to processor 705 for execution Such a medium may take many for ms, including but not limited to, non-volatile media, volatile media, and Iransinrssiυn media I Jon \ ol.ιtιle media includes, lor example, optical or magnetic disks, such as storage device 71 1 Volatile media includes d) iiαmic memory, such as main memory 707 1 rαnsirnssiυn media includes coaxial cables, copper wire and fiber optics, including the wires that comprise bus 703 I rausinissiυn media can also take die form of acoustic or light waves, such as those generated during radio c and infrared data communications Common forms of computer-readable media include, fur example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a (_ IJ-RUM, any oilier optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLΛSI I-LPROM, an> other memory chip or cartridge, a earner wave as described hcrcmaflcr, or any other medium from which a computer can read Various forms of computer readable media may be involved in carry i ig one or more sequences of one or more instructions to processor 705 for execution I or example, the instructions may initially be coined on a magnetic disk of a remote computer I he remote computer can load the instructions relating to the transmission of SIP messages lo control call processing remotely into its dynamic memory and send the instructions o\ cr a telephone line using a modem A modem local to computer system 701 can receive (lie dala on the telephone line and use an infrared transmitter to convert the data to an infr ared signal An lnfiared deteelυi cuupled to bus 703 can receive the dala earned in the mliared signal and place the dala on bus 703 Bus 703 carries die data to main memory 707, from which processor 705 r etriev es and 17 - SUBSTΓΓUTE SHEET (RULE 26 ) executes the instructions. The instructions received by main memory 707 may optionully be stored on storage device 71 1 either before or after execution by processor 705. Computer system 701 also includes a communication interface 719 coupled lo bus 703. Communication interface 71 provides a two-way data communication coupling to a network link 721 that is connected to a local netwoik 723. For example, communication interface 719 may be a network interface card to attach to any packet swilched local aiea nclwoik (LAN). As another example, communication interface 71 may be an asymmetrical digital subscriber line (ADSL) card, an integrated services digital network (ISDN) card or a modem lo provide a data communication connection to a corresponding type of telephone line. Wireless links may also be implemented. In any such implementation, communication interface 719 sends and receives electrical, electromagnetic or optical signals that carry digital dala streams representing various types of information. Network link 721 typically provides data communication through one or more networks to other data devices. For example, network link 721 may provide a connection through local network 723 to a host computer 725 or to data equipment operated by a service provider, which provides data communication services through the IP netwoik 105. LAN 723 and IP nclwoik 105 both use electrical, electromagnetic or optical signals that carry digital data streams. Flic signals through the various networks and the signals on network link 721 and through communication interface 719, which carr}' the digital dala to and from computer system 701 , are exemplary forms of carrier waves transporting the information. Computer system 701 can send SIP messages and receive data, including program code, tltrough the πetwork(s), netwoik link 721 and communication interface 719. 18 - SUBSTΠUTE SHEET (RULE 26) The techniques described herein provide several advantages over prior approaches to call processing in which a NRU 1 13 is needed to establish a VOIP call between call originator 101 and call terminator 103. The present invention presents an efficient and economically feasible approach to processing VOIP calls involving a VRU 1 13. The VRU 1 1 3 drops liom the voice call after binding the two call-legs of the call originator 101 and the call lerininalor 103. Obviously, numerous modifications and variations of the present invention arc possible in light of the above teachings. It is therefore to be understood that within ie scope of ie appended claims, the invention may be practiced otherwise than as specifically described herein.

Claims: WHAT IS CLAIMED AS NEW AND DESIRED TO DE SECURED BY LETTERS PATENT OF THE UNITED STATES IS: 1. A method for processing a voice call over a packet switched network between a call originator and a call terminator, (he method comprising: establishing a first call-leg between the call originator and a voice response unit (VRU) using a menu router that provides call control services according to a signaling protocol; establishing a second call-leg between the VRU and the call terminator based upon the signaling protocol; binding the first call-leg and the second call-leg lo complete the voice call between the call originator and die call terminator; and releasing the voice call from the VRU based upon the signaling protocol. 2. The method according to claim 1 , wherein the signaling protocol in the step of establishing the first call-leg is a Session Initiation Protocoi. 3. The method according lo claim 1 , further comprising: collecting digit information from the call originator by the VRU; and performing authentication and authorization of the call originator by the VRU based upon Ihe collecting step. 4. The method according to claim 1 , wherein step of establishing the first call-leg comprises: invoking menu scripts within the menu router based upon messages conveyed by the signaling protocol; and providing media proxy and media mixing services. - 20 - SUBSTΓΓUTE SHEET (RULE 26) 5. The method according to claim 1 , wherein the packet switched network is an Internet Protocol (IP) network. 6. The method according lo claim 1 , wherein the packet switched network is the Internet. 7. The method according to claim 1 , wherein the call originator and the call lerininalor arc personal computers with voice processing capabilities. 8. The rnediod according to claim 7, wherein the step of establishing the first call-leg comprises locating the VRU by querying a location server that stores an address of the VRU. 9. Λ communication system for processing a voice call over a packet switched network, the communication system comprising: a call originator configured to initiate and to receive the voice call over the packet switched network; a menu router configured to perform call control services relating to the voice call; a voice response unit (VRU) configured to process a call setup request from the call originator; and a call tcπninator configured to process the voice call, wherein the call originator, the call terminator, menu router, and the VRU communicate using a common protocol, the call originator cstablisldng a first call-leg with the VRU via the menu router, the VRU establishing a second call-leg with the call terminator and dropping from the voice call upon binding die first call-leg and the second call-leg. 10. The system according lo claim 9, the common protocol is a Session Initiation Protocol. 1 1 . The system according to claim 9. wherein the VRU is configured to collect digit information from the call originator and to perform authentication and authorization of the call originator based upon the collected infoiination. 1 . The system according to claim 9. wherein the menu router is configured lo invoke menu scripts based upon messages that are conveyed by the common protocol, the menu router providing media proxy and media mixing services to the call originator and ihe call terminators. 13. The system according to claim 9. wherein the packet switched network is an Internet Protocol (IP) network. 14. The system according to claim 9. wherein die packet switched network is the Internet. 15. The system uccording to claim 9, wherein the call originator and the call terminator are personal computers with voice processing capabilities. 16. The system according to claim 9, further comprising: a first location server configured to provide addressing information of the VRU, the first location server being in a domain that includes the VRU; a second location server configured to provide addressing information of the call terminator, the second location server being in another domain that includes the call terminator. 17. The system according to claim 1 9, further comprising: a switch coupled to the VRU and configured to switch the voice call over a voice network; and a voice station configured to initiate the voice call that is switched by the switch onto the packet switched network. 18. A computer-readable medium carrying one or more sequences of one or oi e instructions for processing a voice call over a packet swilched network between a call originator and a call terminator, the one or more sequences of one or more instructions including instructions which, when executed by one or more processors, cause the one or more processors to perform die steps of: establisliing a first call-leg between the call originator uπd a voice response unit (VRU) using a menu router that provides call control services according lo a signaling protocol; establisliing a second call-leg between the VRU and the call terminator based upon the signaling protocol; binding the first call-leg and the second call-leg lo complete the voice call between ie call originator and the call terminator; and releasing the voice call from the VRU based upon the signaling protocol. 19. The computer-readable medium according to claim 18, wherein the signaling protocol is a Session Initiation Protocol. 20. The computer-readable medium according to claim 18, further comprising performing the steps of: collecting digit information from the call originator by the VRU; and performing authentication and audiorization of the call originator by the VRU based upon the collecting step. 21. The computer-readable medium according to claim 1 8, wherein step of establishing the first call-leg comprises: invoking menu scripts within the menu router based upon messages conveyed by the signaling protocol; and - 23 - SUBSTΓΓUTE SHEET (RULE 26) providing media proxy and media mixing services. 22. The computer-readable medium according to claim 18, wherein the step of establishing die first call-leg comprises locating the VRU by querying a location server that stores an address of the VRU.

Inventors: CANNON MATTHEW, DONOVAN STEVEN R, HEARTY JOHN, CANNON, MATTHEW, DONOVAN, STEVEN, R., HEARTY, JOHN
Applicants: MCI WORLDCOM INC, MCI WORLDCOM, INC.
Application year: 2000
Main classification: H04L12
IPC codes: H04L12, H04L29, H04M3, H04M7