WO2001059987A2 - Procede et appareil permettant de devier une session a commutation par paquets au moyen d'un agent proxy intelligent - Google Patents

Procede et appareil permettant de devier une session a commutation par paquets au moyen d'un agent proxy intelligent Download PDF

Info

Publication number
WO2001059987A2
WO2001059987A2 PCT/US2000/041161 US0041161W WO0159987A2 WO 2001059987 A2 WO2001059987 A2 WO 2001059987A2 US 0041161 W US0041161 W US 0041161W WO 0159987 A2 WO0159987 A2 WO 0159987A2
Authority
WO
WIPO (PCT)
Prior art keywords
party
session
fake
request
server
Prior art date
Application number
PCT/US2000/041161
Other languages
English (en)
Other versions
WO2001059987A3 (fr
Inventor
Theodore Leon Griggs
Original Assignee
Syndeo Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Syndeo Corporation filed Critical Syndeo Corporation
Priority to AU2001229159A priority Critical patent/AU2001229159A1/en
Publication of WO2001059987A2 publication Critical patent/WO2001059987A2/fr
Publication of WO2001059987A3 publication Critical patent/WO2001059987A3/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/102Gateways
    • H04L65/1033Signalling gateways
    • H04L65/104Signalling gateways in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/102Gateways
    • H04L65/1023Media gateways
    • H04L65/103Media gateways in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1096Supplementary features, e.g. call forwarding or call holding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/54Arrangements for diverting calls for one subscriber to another predetermined subscriber
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13097Numbering, addressing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13176Common channel signaling, CCS7
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13204Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1327Release and resetting of connection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13282Call forward, follow-me, call diversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13296Packet switching, X.25, frame relay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13345Intelligent networks, SCP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13389LAN, internet

Definitions

  • the present invention relates generally to the field of packet-switched networking and, more specifically, to a method and apparatus of switching a session conducted over a packet-switched network between different callees utilizing, for example, an intelligent proxy agent or server.
  • Session Initiation Protocol handles the signaling portion of a session, for example a call.
  • the Session Initiation Protocol is an application-layer control, or signaling, protocol for creating modifying and terminating sessions among two or more participants. Such sessions may include multi-media conferences, calls or multi-media distribution channels.
  • SIP may invite both persons or automated functions (e.g., a media storage service) to participate in a session.
  • SIP provides a number of message types that may be utilized to handle the signaling or control portion of a session. These messages include an invitation message (INVITE), an acknowledge message (ACK) and a terminate message (BYE). Two of the primary purposes of SIP are the initiation of a session utilizing the INVITE message and the tearing down of a session utilizing the BYE message.
  • INVITE invitation message
  • ACK acknowledge message
  • BYE terminate message
  • SIP labels a client application that initiates or responds to a SIP request as a User Agent Client (UAC), or a call user agent.
  • a server application that contacts a user when a SIP request is received is labeled a User Agent Server (UAS).
  • UAS User Agent Server
  • the UAS further returns a response to the user to the originator of the SIP request.
  • a UAS may, in respective proxy and redirect modes, function as a proxy server or a redirect server or agent. In a proxy mode, a UAS may function as both a server and a client for the purposes of making requests on behalf of other clients.
  • Requests are serviced either internally or by passing requests on, possibly after translation, to a further server or client.
  • a UAS interprets and possibly re-writes a request message before forwarding it.
  • a UAS may accept a SIP request, map a callee address to a new address, and return that new address to the client that originated the SIP request.
  • FIG. 1A is a protocol diagram illustrating a prior art sequence 10 of message communications according to SIP.
  • a first facility 12 includes a client application 14 (e.g., an Internet client application) that operates as a UAC and a server application 16 that function as a UAS for the first facility 12.
  • the first facility 12 is coupled via a network 18, in exemplary form of the Internet, to a second facility 20 that includes a further server application 22 that operates as a UAS, a location server 24 and a further client application 26 that operates as a UAC.
  • the server application 22 of the second facility 20 is operating in proxy mode.
  • the sequence 10 commences with the origination at, and communication from, the client application 14 of an INVITE message 28, directed to the further client application 26, for the establishment of a session (e.g., an Internet telephone call) between the client applications 14 and 26.
  • the INVITE message 28 has a header that includes a TO field that specifies a network address of the client application 26 (e.g., the callee) and a FROM field that specifies a network address of the client application 14 (e.g., the caller).
  • the network address may employ DNS-style addressing that specifies a server domain or host at which an address resides (e.g., SIP: user@domain or SIP: user@host).
  • the INVITE message 28 is communicated via the server application 16 and the network 18 to the server application 22 that, in proxy mode, issues a LOOKUP message (e.g., LOOKUP (user)) to the location server 24.
  • LOOKUP e.g., LOOKUP (user)
  • the location server 24 resolves the address, and issues a RETURN message 32 to the server application 22 specifying an address at which the client application 26 may be contacted.
  • the server application 22 then forwards the INVITE message 28, possibly modified to include an alternative network address, to the client application 26.
  • the client application 26 issues an OK message 34, via the server applications 22 and 16 and the network 18, to the client application 14.
  • the OK message 34 provides an indication to the client application 14 that the client application 26 has agreed to participate in a session, and a message body of the OK message 34 may indicate the capabilities of the client application 26.
  • the client application 14 then issues an ACKNOWLEDGE message 36 to the client application 26 via the server application 16, the network 18 and the server application 22.
  • the ACKNOWLEDGE message 36 confirms that the client application 14 has received a final response to the initial INVITE message 28.
  • a VIA field may be added to the general header of the relevant message. Accordingly, the VIA fields included within the general header of a message provide an indication of the network path taken by the relevant message.
  • the purpose of the INVITE message 28 service is thus to establish a session between, for example, a caller and a callee. Either party to a session may then terminate, or tear down, the session by issuing a BYE message (not shown) to the other party.
  • Figure IB is a block diagram providing an alternative representation of the prior art sequence 10 of message communications described above with reference to Figure 1A, and shows further details regarding the content of headers (e.g., the VIA fields) of the various messages that are communicated between the various entities along the network path.
  • headers e.g., the VIA fields
  • SIP supports user mobility by facilitating the redirecting of requests to a user's current location.
  • a user may register a current location with a location server 24, in which case SIP messages may be redirected to the registered location.
  • Figure 2 is a protocol diagram illustrating a further prior art sequence 38 of message communications according to SIP, where a redirect function is performed by a UAS operating in a redirect mode.
  • the client application 14 issues the INVITE message 28 to the server application 22, that in turn issues a LOOKUP message 30 to the location server 24.
  • the RETURN message 32 indicates an alternative address (e.g., an alternative domain or host) that has been registered as the current location with the location server 24 for the client application 26, or the user associated with the client application 26.
  • the server application 22 operating in the redirect mode, issues a MOVED TEMPORARILY message 40 to the client application 14, the message 40 specifying the current location (e.g., a redirect address) of the client application 26 (e.g., the callee).
  • the client application 14 then issues an ACKNOWLEDGE message 42 to the server application 22 and a fresh INVITE message 44 to the redirect address.
  • a server application 27 at a further facility 29 may then perform a lookup operation, as described with respect to Figure 1, and forward the INVITE message 44 to the client application 26.
  • a method of diverting a packet-switched session includes receiving a session invitation request propagated from a first party to request establishment of a session with a second party.
  • a divert trigger event is detected.
  • a fake session initiation request is originated at an intermediate party located intermediate the first and second parties on a network path, the fake session initiation request being constructed to identify the first party as the originator thereof.
  • the fake session initiation request is communicated to a third party to establish the session between the first and third parties.
  • FIG. 1A is a protocol diagram illustrating a prior art sequence of message communications according to the Session Initiation Protocol (SIP).
  • SIP Session Initiation Protocol
  • Figure IB is a block diagram providing an alternative representation of the prior art sequence of message communications illustrated in Figure 1 A.
  • Figure 2 is a protocol diagram illustrating a further prior art sequence of message communications according to SIP.
  • Figure 3 is a flow chart illustrating an exemplary method, according to one embodiment of the present invention, of diverting a packet-switched session from a first callee to a second callee.
  • Figure 4 is a flow chart illustrating an exemplary method, according to one embodiment of the present invention, of reverting a packet-switched session from a second callee back to a first callee.
  • Figures 5A and 5B are block diagrams illustrating exemplary sequences, according to respective embodiments of the present invention, of message communications, whereby a packet-switched session may be diverted from a first callee to a second callee.
  • Figure 6 is a block diagram illustrating an exemplary embodiment of a server application and a client application deployed within, for example, an inbound call center.
  • Figure 7 illustrates an exemplary communication of messages between a client application and a server application.
  • FIG. 8 is a block diagram illustrating an exemplary intermediate party, according to one embodiment of the present invention, in the form of a server application which is shown to include a detector.
  • Figure 9 is a state diagram illustrating a number of exemplary states implemented by a "queue and divert" state machine, according to one embodiment of the present invention.
  • Figure 10 is a state diagram illustrating a number of exemplary states implemented by a "de-queue and ring" state machine, according to one embodiment of the present invention.
  • Figure 11 is a diagrammatic representation of a machine in the exemplary form of a computer system within which a set of instructions may be executed.
  • the term “party” shall be taken to include any entity that participates in, or contributes towards, a session, and shall be taken to include, but not limited to, an Internet telephony application, a multi-media conference application, and a multi-media distribution application.
  • the term “party” shall also be taken to be inclusive of the terms “end-point”, “caller” and “callee”. While an exemplary embodiment is described below with reference to the Session Initiation Protocol (SIP), it will be appreciated that the present invention is not limited to utilization within the context of SIP, and could be implemented within the context of any number of other protocols.
  • SIP Session Initiation Protocol
  • FIG. 3 is a flowchart illustrating an exemplary method 50 of diverting a packet-switched session (e.g., an Internet Protocol (IP)) from, for example, a first callee to a second callee.
  • IP Internet Protocol
  • the diverting of the session in the exemplary embodiment is performed by an intelligent proxy server acting as a UAS, and allows the relevant UAS to regain control of the session at any time and at the discretion of the UAS.
  • the diversion of the session, and the ability to regain control of the session may be useful in the number of applications.
  • the present invention facilitates the diversion of the call to, for example, an outside service that may provide a hold service (e.g., music and /or advertisements).
  • the proxy server is then able to regain control of the session when a live operator becomes available, and establish the session between the caller and the live operator.
  • FIGS. 5A and 5B are block diagrams illustrating exemplary sequences 80 and 81 of message communications whereby a packet -switched session (e.g., an Internet Protocol (IP) session) may be diverted, for example, from a first callee to a second callee.
  • IP Internet Protocol
  • the method 50 commences at block 52 with the actual or attempted establishment of a packet-switch session between first and second parties via a proxy server, for example in the manner described above with reference to Figures 1A and IB.
  • a session divert trigger event is detected.
  • the detected trigger event could comprise any number of events, depending on the context of the session. For example, where the client application 84 has issued an INVITE message (not shown) to an inbound call center, the trigger event may be the placement of a call (supported by the session between the client application 84 and a client application 86) in a queue pending availability of the client application 86, or an agent utilizing the client application 86, to handle the call.
  • the trigger event may be a call transfer function implemented by the callee client application 86, for example, to transfer the call to a different client application 88.
  • a proxy server associated with the callee client application 86 it would be desirable for a proxy server associated with the callee client application 86 to be able to regain control of the call in the event that the different client application 88 is not able to take the call or when the different client application ends a call.
  • the trigger event may be a call transfer function, or new call request, initiated by the caller client application 84 in an environment or application in which it is advantageous for a proxy server to maintain control of a session with the caller client application 84.
  • a proxy server associated with the calling card service may wish to maintain a continuous session with the caller client application 84, but allow the session to be diverted to a number of callee client applications.
  • the method 50 proceeds to perform the actions described at blocks 56, 58 and 59 in Figure 3.
  • the actions at block 56, 58 and 59 will not be required.
  • Figure 5B illustrates the diversion of a session from a first callee to a second callee, where there is no pre-existing session between the caller and the first callee. Specifically, in this case, the call is diverted to the second callee without the establishment of any call, or session, with the first callee.
  • FIG. 5B is a block diagram illustrating an exemplary sequence of message communications where a session is diverted to a second callee, without the prior establishment of a session with the first callee.
  • the caller client application 84 is shown to issue an INVITE message 93 addressed to the callee client application 86.
  • the server application 90 as a proxy agent, absorbs this INVITE message, and issues a fake OK message 95 to the caller client application 84.
  • the fake OK message 95 is constructed to include a network address identifying the second client application 86 (e.g., UAC_2) as the originating entity.
  • the first client application 84 issues n ACKNOWLEDGE message 97, addressed to the callee client application 86.
  • the server application 90 again absorbs this message, and does not forward it to the callee application 86.
  • the server application 90 then proceeds to establish the diverted session with a further client application 88 (e.g., UAC_3) by issuing a fake INVITE message 100, absorbing an OK message 102 from the further callee application 88, and issuing a further fake ACKNOWLEDGE message 104 to the further callee application 88.
  • a further client application 88 e.g., UAC_3
  • an intermediate party located intermediate the first and second parties on a network path generates and issues a fake session termination request to the second party that appears to have been generated upstream.
  • a server application 90 operating as a UAS in proxy mode (i.e., as a proxy agent), generates and issues a fake BYE message 92 to the client application 86.
  • the BYE message 92 includes a header that falsely indicates the message 92 as having been originated at and issued from an upstream location and from the client application 84.
  • the server application 90 as a proxy agent, further generates the fake BYE message 92 to include a number of VIA fields that falsely indicate the message 92 as having traversed a network path between the client application 84 and the server application 90.
  • the BYE message 92 may include a VIA field providing a fake indication that the message 92 traversed the caller server agent 94.
  • the second party confirms receipt of the session termination request, and the intermediate party absorbs this confirmation so that is not communicated to the first party.
  • the callee client application 86 responsive to the BYE message 92, issues an OK message 96 that is addressed to the caller client application 84.
  • the server application 90 then absorbs, and does not forward, the OK message 96.
  • the intermediate party issues a fake acknowledgement message to the second party.
  • the server application 90 issues a fake ACKNOWLEDGE message 98 to the callee client application 86.
  • the fake ACKNOWLEDGE message 98 also includes FROM and VIA fields indicating a fake originator and network path.
  • the actions taken at blocks 56, 58 and 59 cause the callee client application 86 to understand that the session (e.g., the call 82) has been terminated by the caller client application 84.
  • the caller client application 84 has received no information that indicates to it that the status of the relevant session has changed.
  • the intermediate party generates and issues a fake session initiation request to a third party.
  • the server application 90 generates and issues a fake INVITE message 100 to a further callee client application 88 (e.g., a hold service or alternative call recipient).
  • fake INVITE message 100 includes a header that falsely indicates the message 100 as having been originated at and issued from the client application 84.
  • the server application 90 as a proxy agent, further generates the fake INVITE message 100 to include a number of VIA fields that falsely indicate the message 92 as having traversed a network path between the client application 84 and the server application 90.
  • the INVITE message 100 may include a VIA field providing a fake indication that the message 100 traversed the caller server agent 94.
  • INVITE sip uac_3@facilityC SIP/2.0 Via: SIP/2.0/UDP 100.100.100.2 Via: S1P/2.0/UDP 100.100.100.3
  • UAC_l ⁇ uac_l@facilityA>
  • Call-ID 187602141351@facilityA Subject: Telephone Call
  • the third party confirms receipt of the session initiation request, and the intermediate party absorbs this confirmation so that is not communicated to the first party.
  • the callee client application 88 responsive to the INVITE message 100, issues an OK message 102 that is addressed to the caller client application 84.
  • the server application 90 then absorbs, and does not forward, the OK message 102.
  • the intermediate party issues a fake acknowledgement message to the third party.
  • the server application 90 issues a fake ACKNOWLEDGE message 104 to the callee client application 88.
  • the fake ACKNOWLEDGE message 104 also includes FROM and VIA fields indicating a fake originator and network path.
  • Figure 4 is a flowchart illustrating a method 64 of reverting a packet- switched session from, for example, a second callee to which a session was originally diverted back to a first callee to which the session was originally targeted by a caller.
  • the method 64 commences at block 66 from a condition in which a session, for example supporting the call 106 shown in Figure 5A, has been established.
  • a session revert trigger event is detected.
  • the session revert trigger event as with the session divert trigger event, is application and context specific.
  • Figure 6 illustrates an exemplary embodiment where the server application 90 and the client application 86 are deployed in an inbound call center.
  • the session revert event may be the communication of a BYE or a REGISTER message 110 from a client application 86 to the server application 90.
  • the message 110 indicates to the server application 90 that the client application 86 has concluded a previous transaction or session , and is now available to handle the call 82 that was originally diverted to the client application 88.
  • the server application 90 may de-queue the call 82 and proceeded to establish the call between the client applications 84 and 86.
  • the server applications 90 may employ a state machine that recognizes the receipt of the message 110, or the de-queuing of the call 82, as a session revert trigger event.
  • the method 64 specifies a series of operations corresponding substantially to those described above with reference to blocks 56-63, except that the intermediate party (e.g., the server application 90) issues a fake session termination request (e.g., a fake BYE message 112) to the third party (e.g., the client application 88). Further, the intermediate party issues a fake session initiation request (e.g., a fake INVITE message 114) to the second party (e.g., the client application 86).
  • a fake session termination request e.g., a fake BYE message 112
  • the third party e.g., the client application 88
  • the intermediate party issues a fake session initiation request (e.g., a fake INVITE message 114) to the second party (e.g., the client application 86).
  • a fake session initiation request e.g., a fake INVITE message 114
  • Figure 8 is a block diagram illustrating an intermediate party in the exemplary form of an server application 90, which is shown to include a detector in the exemplary form of detect logic 120 that, as described above, detects both session divert and revert trigger events.
  • the detect logic 120 is shown to have an awareness of the receipt of the BYE or REGISTER message 110, discussed above with reference to Figure 6, to enable the detect logic 120 to detect a session revert trigger event.
  • the detect logic 120 is also shown to monitor a call queue table 122, in which calls (e.g. , Internet telephony calls) are queued and de-queued to enable the queuing and de-queuing of calls to act as session divert and revert trigger events. It will be appreciated that, in other applications and contexts, the detect logic 120 may monitor other data structures specific to such further of applications that are suitable for signaling trigger event.
  • calls e.g. , Internet telephony calls
  • the detect logic 120 may monitor other data structures specific to such further of applications that are suitable for signaling trigger event.
  • the server application 90 also includes a protocol module in the exemplary form of flow logic 124 that, responsive to the detection of a session divert or revert trigger event by the detect logic 92, accesses state tables 96 to perform the methodologies discussed above with reference to the flowcharts shown in Figures 3 and 4.
  • the state tables 96 embodying two state machines, namely a "queue and divert" state machine 126 and a "de-queue and ring" state machine 128.
  • Figure 9 is a state diagram illustrating a number of states implemented by the "queue and divert" state machine 126.
  • a first "is available" state 130 evaluates, for example, whether a callee (e.g., the client application 86) is available to handle a call initiated by the issuance of an INVITE message from a caller (e.g., the client application 84). If so, the state machine 126 proceeds to a "ring" state 132, where the call is established with the callee. On the other hand, should the callee not be available to take the call, the state machine 126 proceeds from state 130 to a "queue" state 134, where the call is inserted into the queue table 122.
  • the server application 90 may maintain a set of queues in one or more queue tables 122. The call may be inserted into any queue in such a set of queues.
  • the state machine 126 proceeds to an "invite" state 136, , where an INVITE message is issued to an alternative callee (e.g., a hold service) in a manner described above.
  • the state machine may include a "forward" state (not shown) where a received INVITE message is forwarded along to an original or another addressee (or callee) following establishment of a temporary call (or session) with the alternative callee.
  • Figure 10 is a state diagram illustrating a number of states implemented by the "de-queue and ring" state machine 128.
  • a first "becomes available" state 140 monitors for the receipt at the server application 90 of a BYE message from a relevant client application. In the absence of any such BYE message, the state machine 128 oscillates between an idle state 142 and the "becomes available" state 140. On the detection of the issuance of a BYE message by a monitored client application, the state machine 128 progresses from state 140 to a "dequeue" state 144, where a relevant call is removed from the queue table 122.
  • state machine 128 progresses to state 146, where the server application 90 proceeds to issue an INVITE message to the monitored client application to thereby establish the previously queued call between a callee and the caller (i.e., the monitor client application).
  • the present invention is advantageous in that it allows, for example, a proxy agent to regain control of a call at anytime.
  • a further benefit of the present invention is that may be utilized in a manner that is in compliance with SIP. Accordingly, a session may be diverted to an outside service (e.g., a hold service) provided by a third party that has no knowledge of the "fake" session initiation and termination messages.
  • the present invention thus facilitates seamless interoperability with heterogeneous components.
  • Figure 11 shows a diagrammatic representation of machine in the exemplary form of a computer system 200 within which a set of instructions, for causing the machine to perform any one of the methodologies discussed above, may be executed.
  • the machine may comprise a network router, a network switch, a network bridge, Personal Digital Assistant (PDA), a cellular telephone, a web appliance or any machine capable of executing a sequence of instructions that specify actions to be taken by that machine.
  • PDA Personal Digital Assistant
  • the computer system 200 includes a processor 202, a main memory 204 and a static memory 205, which communicate with each other via a bus 206.
  • the computer system 200 may further include a video display unit 208 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)).
  • the computer system 200 also includes an alpha-numeric input device 210 (e.g. a keyboard), a cursor control device 212 (e.g. a mouse), a disk drive unit 214, a signal generation device 216 (e.g. a speaker) and a network interface device 218.
  • the disk drive unit 214 includes a machine-readable medium 215 on which is stored a set of instructions (i.e., software) 220 embodying any one, or all, of the methodologies described above.
  • the software 220 may comprise the detect logic 120, the flow logic 124, the state tables 96 and the queue table 122 described above with reference to Figure 8.
  • the software 220 is also shown to reside, completely or at least partially, within the main memory 204 and/or within the processor 202.
  • the software 220 may further be transmitted or received via the network interface device 218.
  • machine-readable medium shall be taken to include any medium which is capable of storing or encoding a sequence of instructions for execution by the machine and that cause the machine to perform any one of the methodologies of the present invention.
  • machine-readable medium shall accordingly be taken to included, but not be limited to, solid-state memories, optical and magnetic disks, and carrier wave signals.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Telephonic Communication Services (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

La présente invention concerne un procédé permettant de dévier une session à commutation par paquets, débutant à la réception, au niveau d'un agent proxy, d'une demande d'invitation à la session qui se propage d'un appelant à un établissement de demande d'une session avec un appelé. L'agent proxy détecte un déclenchement de déviation. En réponse à ce déclenchement de déviation, l'agent proxy émet une demande d'initiation de session factice qui est conçue pour identifier l'appelant comme émetteur de ladite demande. La demande d'initiation de session factice est communiquée à un tiers de manière à établir la session entre l'appelant et le tiers. L'agent proxy peut éventuellement établir une session entre l'appelant et l'appelé en réponse à la demande d'invitation à la session factice, avant de communiquer la demande d'initiation de session au tiers.
PCT/US2000/041161 2000-02-08 2000-10-12 Procede et appareil permettant de devier une session a commutation par paquets au moyen d'un agent proxy intelligent WO2001059987A2 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2001229159A AU2001229159A1 (en) 2000-02-08 2000-10-12 Method and apparatus for diverting a packet-switched session utilizing an intelligent proxy agent

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US50040400A 2000-02-08 2000-02-08
US09/500,404 2000-02-08

Publications (2)

Publication Number Publication Date
WO2001059987A2 true WO2001059987A2 (fr) 2001-08-16
WO2001059987A3 WO2001059987A3 (fr) 2002-05-10

Family

ID=23989258

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/041161 WO2001059987A2 (fr) 2000-02-08 2000-10-12 Procede et appareil permettant de devier une session a commutation par paquets au moyen d'un agent proxy intelligent

Country Status (2)

Country Link
AU (1) AU2001229159A1 (fr)
WO (1) WO2001059987A2 (fr)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003077512A1 (fr) * 2002-03-07 2003-09-18 Intel Corporation Appareil et procede pour une integration ordinateur-telephone dans des reseaux telephoniques commutes par paquets
US6876633B2 (en) 1997-10-21 2005-04-05 Intel Corporation Apparatus and method for computer telephone integration in packet switched telephone networks
US6901068B1 (en) 1997-10-21 2005-05-31 Intel Corporation Apparatus and method for computer controlled call processing applications in packet switched telephone networks
US7068648B2 (en) 1997-10-21 2006-06-27 Intel Corporation Apparatus and method for computer controlled call processing and information provision
US7072308B2 (en) 1997-10-21 2006-07-04 Intel Corporation Apparatus and method for computer controlled call processing applications in packet switched telephone networks
US7126942B2 (en) 1997-10-21 2006-10-24 Intel Corporation Apparatus and method for integrated computer controlled call processing in packet switched telephone networks
DE102005031410A1 (de) * 2005-07-05 2007-01-11 Siemens Ag Verfahren zum Aufbau einer multimedialen Verbindung bei kaskadierter Verbindungsweiterleitung
US8184557B2 (en) 1997-10-21 2012-05-22 Intel Corporation Apparatus and method for computer controlled call processing applications in packet switched telephone networks
EP2600590A1 (fr) * 2010-07-27 2013-06-05 ZTE Corporation Procédé de réalisation d'imbrication de services avec différentes catégories et système associé
US9473543B2 (en) 1997-10-21 2016-10-18 Intel Corporation Apparatus and method for application computer to process forwarding instructions and session initiation protocol requests

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998023079A1 (fr) * 1996-11-22 1998-05-28 Sprint Communications Company, L.P. Systeme et procede de transport d'un appel dans un reseau de telecommunication
US5953332A (en) * 1997-02-10 1999-09-14 Genesys Telecommunications Laboratories, Inc. Agent-initiated dynamic requeing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998023079A1 (fr) * 1996-11-22 1998-05-28 Sprint Communications Company, L.P. Systeme et procede de transport d'un appel dans un reseau de telecommunication
US5953332A (en) * 1997-02-10 1999-09-14 Genesys Telecommunications Laboratories, Inc. Agent-initiated dynamic requeing

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SCHULZRINNE H ET AL: "Signaling for Internet telephony" PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON NETWORK PROTOCOLS, XX, XX, 13 October 1998 (1998-10-13), pages 298-307, XP002139514 *
SPARKS R ET AL.: "SIP Telephony Service Examples With Call Flows" INTERNET DRAFT, [Online] October 1999 (1999-10), pages 1-84, XP002178926 Retrieved from the Internet: <URL:http://www.cs.columbia.edu/sip/drafts /draft-sparks-sip-service-examples-00.txt> [retrieved on 2001-09-27] *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7126942B2 (en) 1997-10-21 2006-10-24 Intel Corporation Apparatus and method for integrated computer controlled call processing in packet switched telephone networks
US9473543B2 (en) 1997-10-21 2016-10-18 Intel Corporation Apparatus and method for application computer to process forwarding instructions and session initiation protocol requests
US6876633B2 (en) 1997-10-21 2005-04-05 Intel Corporation Apparatus and method for computer telephone integration in packet switched telephone networks
US6901068B1 (en) 1997-10-21 2005-05-31 Intel Corporation Apparatus and method for computer controlled call processing applications in packet switched telephone networks
US7068648B2 (en) 1997-10-21 2006-06-27 Intel Corporation Apparatus and method for computer controlled call processing and information provision
US7072308B2 (en) 1997-10-21 2006-07-04 Intel Corporation Apparatus and method for computer controlled call processing applications in packet switched telephone networks
US6856618B2 (en) 1997-10-21 2005-02-15 Intel Corporation Apparatus and method for computer telephone integration in packet switched telephone networks
US9661034B2 (en) 1997-10-21 2017-05-23 Intel Corporation Apparatus and method for computer controlled call processing applications for skills-based routing in packet switched telephone networks
US8184557B2 (en) 1997-10-21 2012-05-22 Intel Corporation Apparatus and method for computer controlled call processing applications in packet switched telephone networks
US9497230B2 (en) 1997-10-21 2016-11-15 Intel Corporation Apparatus and method for computer controlled call processing applications in packet switched telephone networks
WO2003077512A1 (fr) * 2002-03-07 2003-09-18 Intel Corporation Appareil et procede pour une integration ordinateur-telephone dans des reseaux telephoniques commutes par paquets
DE102005031410B4 (de) * 2005-07-05 2007-04-12 Siemens Ag Verfahren zum Aufbau einer multimedialen Verbindung bei kaskadierter Verbindungsweiterleitung
DE102005031410A1 (de) * 2005-07-05 2007-01-11 Siemens Ag Verfahren zum Aufbau einer multimedialen Verbindung bei kaskadierter Verbindungsweiterleitung
EP2600590A4 (fr) * 2010-07-27 2014-04-30 Zte Corp Procédé de réalisation d'imbrication de services avec différentes catégories et système associé
EP2600590A1 (fr) * 2010-07-27 2013-06-05 ZTE Corporation Procédé de réalisation d'imbrication de services avec différentes catégories et système associé

Also Published As

Publication number Publication date
WO2001059987A3 (fr) 2002-05-10
AU2001229159A1 (en) 2001-08-20

Similar Documents

Publication Publication Date Title
US7266591B1 (en) Providing content delivery during a call hold condition
US8634412B2 (en) Session initiation protocol (SIP) message incorporating a multi-purpose internet mail extension (MIME) media type for describing the content and format of information included in the SIP message
US7978686B2 (en) System and method for feature-based services control using SIP
US7787501B2 (en) Congestion control in an IP network
EP1911229B1 (fr) Association d&#39;un appel téléphonique à un dialogue sur la base d&#39;un protocole d&#39;ordinateur tel que sip
US7822016B2 (en) IP ACD using SIP format
US8296447B2 (en) Method for copying session information, call control server for executing the same, and computer product
US8014775B2 (en) Method and system for implementing messaging services and a message application server
CA2464513A1 (fr) Agent utilisateur passerelle et serveur mandataire destines a prendre en charge des services de reseau
JP2003517764A (ja) Sipベースの特徴制御システムおよび方法
GB2410650A (en) IP based ACD using buffer server
CA2469213C (fr) Systeme et procede pour integrer des services multimedias a la telephonie traditionnelle via differents reseaux
WO2001059987A2 (fr) Procede et appareil permettant de devier une session a commutation par paquets au moyen d&#39;un agent proxy intelligent
US20060268858A1 (en) Communication system supporting two-way on-hold functionality
KR100564644B1 (ko) 교환기에서 호 보류 서비스를 제공하기 위한 방법 및 그교환기 시스템
KR100425510B1 (ko) 반이중 방식의 패킷 전송 방법
KR20050014129A (ko) 세션초기화프로토콜(sip) 서버 및 그 메시지 처리 방법

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP