Method Of Setting Up A Call Back
Abstract:
The invention concerns a method of setting up a call-back (305, 315) to a caller (32) in a packet-based telecommunications network, and a terminal and a media server (31) to execute this method. The call-back (305, 315) is initiated by a user (30) receiving a media stream (311, 312, 316). The user (30) sets up a packet-based connection to a media server (31) and receives the media stream (311, 312, 316) from the media server (31). After choosing by the user (30) to call back the caller (32), the media server (31) generates a cookie with data defining a state of the media stream (311,312, 316) and sends the cookie to the user (30). The user (30) initiates the call-back (305, 315) to the caller (32) independently of the media server (31). After termination of the call-back (305, 315), the data defining the state of the media stream (311,312, 316) are sent to the media server (31) or an associated media server and are used to resume the transmission of the media stream (311, 312, 316) to the user (30) from a state following the state defined by the data.
Specification
Method of setting UP a call-back
The present invention relates to a metiiod of setting up a call-bacl< to a caller in a packet-based telecommunications network, and a terminal and a media server to execute said method.
When a user is dealing with a streaming media server (e.g., a voicemail server), he may decide to initiate an audio and/or video communication (call¬back) with someone who left a message (caller). Some multimedia mail servers provide a facility where the streaming is interrupted and where the server initiates a communication with the caller on behalf of the user. When the user has finished the call-back, he comes back to the media server and may listen to the next message. With this approach, there are three technical problems. First, two media server ports are used while the user is having his real time communication (call-back to the caller). Second, signalling and sometimes media flows are hair-pinned through the media server. This may burden the network. Third, as the media server initiates a call on behalf of the user, there is usually inconsistencies in authentication (the media server does not know the user's password), display (the media server is calling the caller instead of the user is calling the caller), authorisation (the media server does not know the rules associated to the user), and reporting (billing, call-log).
Fig. 1 is a block diagram of a typical call-back situation according to prior art, illustrating the aforementioned drawbacks. Fig. la shows a user 10 connected to a media server 11. For example, the user 10 has called the media server 11 to listen to his telephone mailbox managed by the media
2 .
server 11. The connection comprises a SIP dialogue 101 and a transmission of media streams 111 from the media server 11 to the user 10 (SIP = Session Initiation Protocol). After the media server 11 has replayed to the user 10 a voice message left by a caller 12, the media server 11 announces to the user 10 the instruction 1001: "Press 1 for calling this person back." , When referring to a user 10 and a caller 12, we implicitly mean that the user 10 uses a user's terminal and the caller 12 uses a caller's terminal for establishing telecommunications connections.
Fig. lb shows the successive situation after the user 10 has pressed the key "1" on his device. The media server 11 sends a SIP INVITE message 103 to the caller 12 for establishing a call-back to the caller 12. The connection between the user 10 and the media server 11, comprising a SIP dialogue 102 and a media stream 112, is maintained.
The successive situation has two alternatives: Either, cf. Fig. 1c1, all data exchange between the user 10 and the caller 12 are routed through the media server 11, I.e., both signalling traffic 104,105 and media streams 114, 115 (Full hair-pinning). Or, cf. Fig. 1c2, only signalling traffic 106,107 between the user 10 and the caller 12 is routed through the media server 11 whereas media streams 11B are sent on a direct way under avoidance of the media server 11 (Signalling hair-pinning). Fig. 1d shows a successive situation after the call-back to the caller 12 has been terminated. The connection between the user 10 and the media server 11, comprising a SIP dialogue 109 and a media stream 119, is maintained. The user 10 resumes to listen to the mailbox entries. For example, the media server 11 announces to the user 10 the instmctlon 1009: "Press 1 for deleting the message. Press 2 for listening to the next message."
Fig, 2 is a message flow diagram of a similar call-back situation according to
prior art. This description focuses on tlie role of a media server witii respect
to a caller. It is implied that the conversation between the caller and a user is
bridged by the media server. A user 20, called Alice, is subscriber to a
corporate telecommunications network which is connected via a corporate
SIP server 23 to a media server 21. The user 20 wants to listen to her
telephone mailbox managed by the media server 21. The user 20 initiates a |
SIP session by sending a SIP INVITE message 201 addressed to her
mailbox address "mymailbox@corporate.com" to the corporate SIP server
23. The corporate SIP server 23 fonwards 202 the SIP INVITE message to
the media server 21. The media server 21 replies to the corporate SIP server
23 with a "200 OK" message 203, which is forwarded 204 from the corporate
SIP server 23 to the user 20. The "200 OK" message is acknowledged (ACK)
205 by the user 20. The ACK message is fonwarded 206 from the corporate
SIP server 23 to the media server 21.
A connection 207 for the exchange of RTP media streams is estafc)lished between the user 20 and the media server 21 (RTP » Real-time Transport Protocol). The media server 21 announces to the user 20 the instruction 208: "Bob's message: 'Hello Alice! Blablabla.' To call back Bob, press 1. To listen to next message, press 2." Bob is the name of a caller 22 who has left a voicemail on the telephone mailbox of the user 20. The user 20 responds to this announcement 208 by pressing 209 the key "1" on her device. When referring to the user 20 and the caller 22, we implicitly mean that the user 20 uses a user's terminal and the caller 22 uses a caller's terminal for establishing telecommunications connections.
A
Triggered by the pressing of tlie key "1" on the user's 20 terminal, the media server 21 initiates a call-back SIP session with the caller 22 by sending a SIP INVITE message 210 addressed to the caller's 22 address "bob@corporate.com" to the corporate SIP server 23. The corporate SIP server 23 forwards 211 the SIP INVITE message to the caller 22. When the caller's 22 terminal, triggered by the INVITE message 210, 211, starts playing a ring tone, a 180 RINGING response 212, 213 is sent back, via the corporate SIP server 23, to the media server 21. On receipt of the 180 RINGING response, a UAC of the media server 21 is responsible to play a ring-back tone 214 at the media server 21 (UAC = User Agent Client).
Once the caller 22 picks up 215 the phone, the successful 200 OK response 216, 217 is sent from the caller 22 via the corporate SIP server 23 back to the media server 21 because the request is correctly processed. The 200 OK message 216, 217 is acknowledged (ACK) 218 by the media server 21, and the call is connected. Now the actual conversation 219 between the caller and the media server 21 is transmitted as data via RTP. The media server 21 bridges 220 the RTP flows to the user 20, and thus acts as a man-in-the middle between the user 20 and the caller 22. During the call-back to the caller 22, the media server 21 is a statefui media server 290. When the called party says "Good-bye" 221 and hangs up, a BYE request 222 is sent to the media server 21. The media sen/er 21 responds with a 200 OK 223 to the caller 22.
After the call-back connection to the caller 22 has been terminated, the media stream transmission 224 from the media server 21 to the user 20 is resumed at a point where it had been interrupted for the set-up of the call¬back to the caller 22. The media server 21 may resume the media stream
224 with the announcement 225: "Next message is from Charles: 'Hello Alice!'".
Moreover, when a user performs a call via internet using SIP (QSiG or H.323) then such a call will usually be stateless (QSIG = Q signalling). This has big drawbacks when the user would like to Initiate a call-back to a caller after hearing some message left by that caller on the user's (audio/video) mailbox.
Rosenberg, J., Lennox, J. and Schulzrinne, H., "Programming Internet Telephony Services", IEEE Internet Computing, Vol. 3, No. 3,1999, pp. 63-72 (Tech-Report Number CUCS-010-99), describe a solution to achieve that a script related to a call persists so to allow to continue to interact with the server to process subsequent responses. It is achieved by defining a state token, called a script cookie, which is passed from the script to the server through a SIP CGI (= Common Gateway interface) meta-header. When the script is re-executed at some later point, the server passes the cookie back to it through environment variables.
The currently best solution is for the server to act as man in the middle and renegotiate the media flows so that media ports of the media servers are free until the real-time communication. However, the media server still keeps a signalling context open; if there is a VXML interpreter, the context is still active as well (VXML = Voice Extensible Mark-up Language). As aforementioned, there is a way to prevent media hair-pinning. However if devices of the users and media server are separated by a Session Border Controller (= SBC), the SBC keeps contexts open as well. Another currently available solution is that there is proprietary information in the message
initiated by the media server that can indicate on whose behalf the call is made. This is partly done by the OmnlTouch® Unified Communication media server. However, this mechanism does not work in a multi-vendor environment and is complex in networks.
It is the object of the present invention to improve the set-up of a call-back by a user receiving a media stream.
The object of the present invention is achieved by a method of setting up a call-back to a caller in a packet-based telecommunications network, the call¬back being initiated by a user receiving a media stream comprising data related to the caller, whereby the method comprises the steps of setting up by the user a packet-based connection to a media server and receiving the media stream from the media server, after choosing by the user to call back the caller, generating by the media server a cookie with data defining a state of the media stream and sending the cookie to the user, initiating by the user the call-back to the caller independently of the media server, and, after termination of the call-back, sending the data defining the state of the media stream to the media server or an associated media server and using the data defining the state of the media stream to resume the transmission of the media stream to the user from a state following the state defined by the data. The object of the present invention is further achieved by a terminal for setting up a call-back to a caller in a packet-based telecommunications network, the call-back being initiated by a user receiving a media stream comprising data related to the caller through the terminal, whereby the terminal is adapted to set up a packet-based connection to a media server and receive the media stream from the media server, receive, after choosing by the user to call back the caller, a cookie generated by the media server
with data defining a state of the media stream, set up the call-back initiated by the user to the caller independently of the media server, and send, after termination of the call-back, the data defining the state of the media stream to the media server or an associated media server which uses the data defining the state of the media stream to resume the transmission of the media stream to the terminal from a state following the state defined by the data. IVIoreover, the object of the present invention is achieved by a media server for setting up a call-back to a caller in a packet-based telecommunications network, the call-back being initiated by a user receiving a media stream comprising data related to the caller, whereby the media server is adapted to send the media stream to the user via a packet-based connection set up by the user to the media server, generate, after choosing by the user to call back the caller, a cookie with data defining a state of the media stream and send the cookie to the user, receive, after termination of the call-back, the data defining the state of the media stream from the Oser and use the data defining the state of the media stream to resume the transmission of the media stream to the user from a state following the state defined by the data
In information processing, a state is the complete set of properties transmitted by an object to an observer via one or more channels. Any change in the nature or quantity of such properties in a state is detected by an observer and thus a transmission of information occurs.
An information system or protocol that relies upon state is said to be stateful. One that does not is said to be stateless. For example, there are stateless firewalls and stateless servers, and HTTP is considered a stateless protocol (HTTP = Hypertext Transfer Protocol). A character encoding such as ISO 2022 is said to be stateful If the interpretation of a particular code value
depends on the code values that came before it (ISO = International Organisation for Standardisation).
In comparison to the prior art cited above, the proposed idea differs by making the whole media server "call" stateless, i.e., the script logic and the SIP server. The state of.the call is l
Documents
Orders
| Section |
Controller |
Decision Date |
|
|
|
Application Documents
| # |
Name |
Date |
| 1 |
abs 7429-chenp-2009 abstract 18-12-2009.jpg |
2009-12-18 |
| 1 |
Other Patent Document [09-12-2016(online)].pdf |
2016-12-09 |
| 2 |
7429-chenp-2009 power of attorney 18-12-2009.pdf |
2009-12-18 |
| 2 |
7429-CHENP-2009_EXAMREPORT.pdf |
2016-07-02 |
| 3 |
7429-CHENP-2009-Correspondence-051115.pdf |
2015-11-07 |
| 3 |
7429-chenp-2009 pct 18-12-2009.pdf |
2009-12-18 |
| 4 |
7429-CHENP-2009-OTHERS-051115.pdf |
2015-11-07 |
| 4 |
7429-chenp-2009 form-5 18-12-2009.pdf |
2009-12-18 |
| 5 |
7429-CHENP-2009 OTHER PATENT DOCUMENT 05-11-2015.pdf |
2015-11-05 |
| 5 |
7429-chenp-2009 form-3 18-12-2009.pdf |
2009-12-18 |
| 6 |
Petition Under Rule 137 [05-11-2015(online)].pdf |
2015-11-05 |
| 6 |
7429-chenp-2009 form-2 18-12-2009.pdf |
2009-12-18 |
| 7 |
7429-CHENP-2009-Abstract-301015.pdf |
2015-11-02 |
| 7 |
7429-chenp-2009 form-18 18-12-2009.pdf |
2009-12-18 |
| 8 |
7429-CHENP-2009-Claims-301015..pdf |
2015-11-02 |
| 8 |
7429-chenp-2009 form-1 18-12-2009.pdf |
2009-12-18 |
| 9 |
7429-chenp-2009 drawings 18-12-2009.pdf |
2009-12-18 |
| 9 |
7429-CHENP-2009-Examination Report Reply Recieved-301015.pdf |
2015-11-02 |
| 10 |
7429-chenp-2009 description (complete) 18-12-2009.pdf |
2009-12-18 |
| 10 |
7429-CHENP-2009-Form 3-301015.pdf |
2015-11-02 |
| 11 |
7429-chenp-2009 correspondence others 18-12-2009.pdf |
2009-12-18 |
| 11 |
7429-CHENP-2009-OTHERS-301015.pdf |
2015-11-02 |
| 12 |
7429-chenp-2009 claims 18-12-2009.pdf |
2009-12-18 |
| 12 |
7429-CHENP-2009 OTHER PATENT DOCUMENT 30-10-2015.pdf |
2015-10-30 |
| 13 |
7429-chenp-2009 abstract 18-12-2009.pdf |
2009-12-18 |
| 13 |
Petition Under Rule 137 [30-10-2015(online)].pdf |
2015-10-30 |
| 14 |
7429-CHENP-2009 CORRESPONDENCE OTHERS 17-04-2015.pdf |
2015-04-17 |
| 14 |
7429-CHENP-2009 FORM-13 07-12-2010.pdf |
2010-12-07 |
| 15 |
7429-CHENP-2009 FORM-3 04-02-2014.pdf |
2014-02-04 |
| 15 |
7429-chenp-2009 correspondence others 07-12-2010.pdf |
2010-12-07 |
| 16 |
7429-CHENP-2009 CORRESPONDENCE OTHERS 04-02-2014.pdf |
2014-02-04 |
| 16 |
7429-CHENP-2009 FORM-3 11-06-2013.pdf |
2013-06-11 |
| 17 |
7429-CHENP-2009 CORRESPONDENCE OTHERS 11-06-2013.pdf |
2013-06-11 |
| 17 |
7429-CHENP-2009 FORM-3 30-09-2013.pdf |
2013-09-30 |
| 18 |
7429-CHENP-2009 CORRESPONDENCE OTHERS 30-09-2013.pdf |
2013-09-30 |
| 19 |
7429-CHENP-2009 FORM-3 30-09-2013.pdf |
2013-09-30 |
| 19 |
7429-CHENP-2009 CORRESPONDENCE OTHERS 11-06-2013.pdf |
2013-06-11 |
| 20 |
7429-CHENP-2009 CORRESPONDENCE OTHERS 04-02-2014.pdf |
2014-02-04 |
| 20 |
7429-CHENP-2009 FORM-3 11-06-2013.pdf |
2013-06-11 |
| 21 |
7429-CHENP-2009 FORM-3 04-02-2014.pdf |
2014-02-04 |
| 21 |
7429-chenp-2009 correspondence others 07-12-2010.pdf |
2010-12-07 |
| 22 |
7429-CHENP-2009 CORRESPONDENCE OTHERS 17-04-2015.pdf |
2015-04-17 |
| 22 |
7429-CHENP-2009 FORM-13 07-12-2010.pdf |
2010-12-07 |
| 23 |
7429-chenp-2009 abstract 18-12-2009.pdf |
2009-12-18 |
| 23 |
Petition Under Rule 137 [30-10-2015(online)].pdf |
2015-10-30 |
| 24 |
7429-CHENP-2009 OTHER PATENT DOCUMENT 30-10-2015.pdf |
2015-10-30 |
| 24 |
7429-chenp-2009 claims 18-12-2009.pdf |
2009-12-18 |
| 25 |
7429-chenp-2009 correspondence others 18-12-2009.pdf |
2009-12-18 |
| 25 |
7429-CHENP-2009-OTHERS-301015.pdf |
2015-11-02 |
| 26 |
7429-chenp-2009 description (complete) 18-12-2009.pdf |
2009-12-18 |
| 26 |
7429-CHENP-2009-Form 3-301015.pdf |
2015-11-02 |
| 27 |
7429-chenp-2009 drawings 18-12-2009.pdf |
2009-12-18 |
| 27 |
7429-CHENP-2009-Examination Report Reply Recieved-301015.pdf |
2015-11-02 |
| 28 |
7429-chenp-2009 form-1 18-12-2009.pdf |
2009-12-18 |
| 28 |
7429-CHENP-2009-Claims-301015..pdf |
2015-11-02 |
| 29 |
7429-chenp-2009 form-18 18-12-2009.pdf |
2009-12-18 |
| 29 |
7429-CHENP-2009-Abstract-301015.pdf |
2015-11-02 |
| 30 |
7429-chenp-2009 form-2 18-12-2009.pdf |
2009-12-18 |
| 30 |
Petition Under Rule 137 [05-11-2015(online)].pdf |
2015-11-05 |
| 31 |
7429-CHENP-2009 OTHER PATENT DOCUMENT 05-11-2015.pdf |
2015-11-05 |
| 31 |
7429-chenp-2009 form-3 18-12-2009.pdf |
2009-12-18 |
| 32 |
7429-CHENP-2009-OTHERS-051115.pdf |
2015-11-07 |
| 32 |
7429-chenp-2009 form-5 18-12-2009.pdf |
2009-12-18 |
| 33 |
7429-CHENP-2009-Correspondence-051115.pdf |
2015-11-07 |
| 33 |
7429-chenp-2009 pct 18-12-2009.pdf |
2009-12-18 |
| 34 |
7429-CHENP-2009_EXAMREPORT.pdf |
2016-07-02 |
| 34 |
7429-chenp-2009 power of attorney 18-12-2009.pdf |
2009-12-18 |
| 35 |
Other Patent Document [09-12-2016(online)].pdf |
2016-12-09 |
| 35 |
abs 7429-chenp-2009 abstract 18-12-2009.jpg |
2009-12-18 |