The present application relates to a method, a system, devices and a computer program for setting-up a communication channel between two entities in a telecommunication network.
“In-call application” is a technique whereby a voice call is enhanced with an additional service or services such as:
Different possibilities exist how to initiate the execution of an in-call service. Manners to initiate the execution of an in-call service comprise (non-exhaustive):
The use of voice commands is inherently problematic. A first problem with voice commands is that the remote (destination) party hears the command. Another problem with voice commands is that it may not always be captured correctly. A further problem with voice commands is that it requires the user plane to be always routed through the Media resource function, to capture a possible voice command. Summarizing:
Accordingly, a need exists to overcome the above-mentioned problems and to improve the control of an application of a service to a data flow such as a voice call.
This need is met by the features of the independent claim. Further aspects are described in the dependent claims.
According to a first aspect a method is provided by an initiating entity to initiate the set up of one or more communication channels for exchange of information between the initiating entity and one or more responding entities. According to one step, a first message is transmitted on an end-to-end control channel between a first entity and a second entity. The first message comprises as a destination address a second entity address, wherein offer data is added to the transmitted first message and the offer data indicate that the initiating entity is configured to support one or more communication channels and the offer data comprising an address at which the initiating entity is configured to receive the information. A second message is received on the end-to-end control channel wherein the message comprises as destination address a first entity address. The second message furthermore comprises acceptance data in response to the offer data, wherein the acceptance data indicate that a responding entity has accepted the set up of a communication channel and the acceptance data comprising an address at which the responding entity is configured to receive the information. The address at which the service control responding entity is configured to receive service control messages is stored.
According to a further aspect the invention furthermore relates to the corresponding initiating entity operating as mentioned above. The initiating entity comprises a message managing unit configured to transmit the first message on an end-to-end control channel between a first entity and a second entity, wherein the first message comprises as a destination address a second entity address. The message managing unit is configured to add offer data to a transmitted first message, the offer data indicating that the initiating entity is configured to support one or more communication channels and the offer data comprising an address at which the initiating entity is configured to receive the information. Furthermore, the message managing unit is configured to receive a second message on the end-to-end control channel, wherein the second message comprises as the destination address an address of the first entity. The second message furthermore comprises acceptance data in response to the offer data and the acceptance data indicate that a responding entity has accepted the set-up of a communication channel and the acceptance data comprise an address at which the responding entity is configured to receive the information. Furthermore, a storage unit is provided configured to store the address at which the responding entity is configured to receive the information.
The above described method/entity under the first/second aspect helps to set up a communication channel that may be used for controlling application and/or services such as the in-call services discussed in the introductory part of the specification. Both the initiating entity and the responding entity can use the end-to-end control channel where information on control messages are exchanged which have as a destination address either the first entity or the second entity. The information may furthermore contain the offer that the initiating entity is ready to set up a control channel in the end-to-end control channel with any of the entities located in the end-to-end control channel. When the initiating entity receives the acceptance data comprising the address from the responding entity, the initiating entity knows how to address the responding entity in order to direct a control command to the responding entity using the end-to-end control channel. The initiating entity may store the address of the responding entity in order to set up the service control channel between the service control initiating entity and the service control responding entity.
According to another aspect, a method by the responding entity is provided to set up the one or more communication channels for the exchange of information between one or more initiating entities and the responding entity. The responding entity receives a first message on end-to-end control channel between the first entity and the second entity, wherein the first message comprises as a destination address the second entity address. The first message furthermore comprises offer data indicating that an initiating entity is configured to support a communication channel and the offer data comprising an address at which the initiating entity is configured to receive the information. The responding entity may store the address at which the initiating entity is configured to receive the information if the responding entity accepts to set up a communication channel between the initiating entity and the responding entity. The responding entity may then transmit a second message to the first entity, wherein the second message comprises a acceptance data in response to the offer data, wherein the acceptance data indicate that the responding entity accepts to set up the communication channel, wherein the acceptance data furthermore comprise an address at which the responding entity is configured to receive the information.
According to an additional aspect a responding entity in the invention furthermore relates to the corresponding responding entity. When the responding entity is interested in setting up a communication channel using the end-to-end control channel, it can indicate this to the initiating entity with the above-described method.
The responding entity comprises a message managing unit configured to receive a first message on the end-to-end control channel between a first entity and a second entity, wherein the first message comprises as a destination address the second entity address. The first message furthermore comprises offer data indicating that an initiating entity is configured to support a communication channel and the offer data comprising an address at which the initiating entity is configured to receive the information. Furthermore, a storage unit is provided configured to store the addresses at which the initiating entity is configured to receive the information if the responding entity accepts to set up the communication channel between the initiating entity and the responding entity. The message managing unit is configured to transmit a second message to the first entity, wherein the second message comprises acceptance data in response to the offer data. The acceptance data indicate that the responding entity accepts the set up of the communication channel and the acceptance data comprise an address at which the responding entity is configured to receive the information.
The invention also relates to a system comprising the initiating entity and the responding entity.
Furthermore, a method for communicating with one or more second entities is provided by a first entity, wherein an end-to-end control channel is configured between a third and a fourth entity and wherein the first entity and the one or more second entities are part of the end-to-end control channel. The first entity adds an address of the second entity to communicate with the first entity to a control message to be transmitted on the end-to-end control channel. Additionally, information for communication with the second entity is added to the control message and the control message is transmitted towards the second entity via the end-to-end control channel, wherein the destination address of the control message comprises an address of the fourth entity.
Furthermore, a first entity is provided configured to communicate with one or more second entities, wherein an end-to-end control channel is configured between a third and a fourth entity, wherein the first entity and the one or more second entities are part of the end-to-end control channel. The first entity comprises a message managing unit configured to add an address of the second entity to communicate with the first entity to a message to be transmitted on the end-to-end control channel. Furthermore, the message managing unit is configured to add information for communicating with the second entity to the message and is configured to transmit the message towards a second entity via the end-to-end control channel, wherein the destination address of the message comprises an address of the fourth entity.
When a communication channel between the first entity and the second entity has been established, the first entity may use the end-to-end control channel to send one or more messages to the second entity. A message has as a destination address the address of the fourth entity, but additionally contains the address of the second entity so that the latter recognizes that the message contains added information for the second entity. Using the added information, the second entity may then apply the message, e.g. a service, in accordance with the information contained in this control message.
Additionally, a method for communicating with one or more first entities by the second entity is provided, wherein an end-to-end control channel is configured between a third and a fourth entity. The one or more first entities and the second entity are part of the end-to-end control channel. The second entity receives a control messages having as destination address the address of the fourth entity and determines whether an extracted address from the received control message corresponds to an address at which the second entity is configured to receive messages. In the affirmative case, information is extracted from the received control message for communicating with the one or more first entities.
Furthermore, a second entity is provided configured to communicate with one or more first entities, wherein the end-to-end control channel is configured between a third and a fourth entity and wherein the one or more first entities and the second entity are part of the end-to-end control channel. The second entity comprises a receiver configured to receive a message having as destination address an address of the fourth entity. The second entity furthermore comprises a processing unit configured to determine whether an extracted address from the received message corresponds to an address at which the second entity is configured to receive information, wherein in the affirmative the processing unit is configured to extract information for communicating with the one or more first entities from the message.
The invention also relates to a system comprising the first entity and the second entity.
In the following, embodiments will be described in detail with reference to the accompanying drawings. It is to be understood that the following description of the embodiments is not to be taken in a limiting sense. The scope of the invention is not intended to be limited by the embodiments described hereinafter or by the drawings, which are taken to be illustrative only. Furthermore, it is to be understood that the features mentioned above and further below can be used not only in the respective combinations indicated, but also in other combinations or in isolation. Features of the above or below mentioned aspects and embodiments may be combined with each other in other embodiments.
The drawings are to be regarded as being schematic representations, and elements illustrated in the drawings are not necessarily shown to scale. Rather, the various elements are represented such that their function and general purpose becomes apparent to a person skilled in the art. Any connection or coupling between functional bocks, devices, components or other physical or functional units shown in the drawings or described herein may be implemented by a direct or by an indirect connection or coupling. A coupling between components may be established over a wired or wireless connection. Furthermore, functional blocks may be implemented in hardware, firmware, software or a combination thereof.
According to one aspect, a transparent communication channel may be established on top of another communication channel or within a session, for example within a SIP (Session Initiation Protocol) session. As an alternative to an SIP session a communication channel or end-to-end channel according to ITU H.323 may be used. The communication channel may be established between a mobile entity (UE) and a server or between 2 servers in the network. The servers may be application servers (for example SIP application servers). This enables for example the UE to provide instructions to a SIP-AS, related to the execution of an in-call application. Vice versa, the SIP-AS may send instructions to the UE during the call.
The transfer of the instructions or response messages between the UE and the SIP-AS may occur fully in line with SIP signaling. Normally, when a call is established between two entities such as UE-A and UE-B, then when UE-A sends a SIP request towards UE-B, the SIP request is destined for the end point of the SIP session, i.e., the SIP request is destined for UE-B. In other cases, the SIP request (for example REFER) is destined for the MMTel-AS, for initiating Explicit Communication Transfer (ECT).
The method below describes as an example a communication channel between a UE-A and a SIP-AS. The method entails that the UE-A and SIP-AS exchange during call establishment, or on top of an already established call, an in-call application process identifier or offer data. The offer data indicate that the sending entity (UE-A) is ready to establish a relationship (for example a control relationship) with any of the entities located in the end-to-end control channel in the direction of the second entity which builds the endpoint of the end-to-end control channel. This identifier can be used by the UE or the SIP-AS to send an in-call message (for example in-call) application instruction to the SIP-AS or UE respectively.
The below in detail describes methods, devices, system and computer program products can be used for any (communication) channel to be established between two network entities within an end-to-end control channel for communicating and/or exchanging messages (e.g. control messages) between those two network entities. The two network elements may be the end points of the end-to-end control channel, they may be entities located between the end points of the end-to-end control channel, or a mixture of both. The (communication) channel may be a service communication channel for controlling a service located in one of the two network entities, or the (communication) channel may be used to exchange any kind of information between the two network entities (for example status messages, control messages, service control messages, UE specific information, call specific information, ...). An example of the latter comprises the transfer of HTML update information, from an application server to an application client, said application client being contained in a mobile terminal and said transfer being for the purpose of providing the application client with call progress information.
The sequence of the invocation of an application server depends on the call case. Application Server 200 is the application server on which residential or enterprise advanced services are deployed. The UE 100 can furthermore generate a relation to the in-call application 50 via which the application of the service to the user plane in MRF 20 is controlled.
At call establishment SIP signaling traverses the CSCF 10 and the SIP-AS 200-220. The SIP session is established end-to-end between the calling party and the called party. It is desirable, however, that the UE 100 can exchange signaling with the application servers.
As indicated in
This is further shown in
In the example of
The explanation shown in
The UE 100 indicates with the SIP header that it can receive SIP messages, especially SIP Info that are addressed to sip: in-call-application@A-party-IP-address. In step S2, this Invite request is further transmitted to SIP-AS 200b comprising the content: Invite sip:B-party-number@B-party-domain SIP/2.0. As can be deduced from the comparison of the content contained in steps S1 and S2, the session application content was removed by SIP-AS 200a. In step S3, the content is forwarded to the UE-B 300 comprising the same content as present in step S2.
In steps S4 and S5, the SIP 200 Ok message sent back to the SIP-AS 200b and SIP-AS 200a respectively. Now, in step S6 the SIP-AS 200a serving the UE-A 100 adds the session application header to the 200 Ok message, such as Session-application:<sip:in-call-application@sipas.ims.mnc702.mcc320.3gppnetwork.org>. With this added session application content, the SIP-AS 200a indicates with this header that it can receive SIP messages, especially SIP Info messages that are addressed to <sip:in-call-application@sipas.ims.mnc702.mcc320.3gppnetwork.org>.
By virtue of (i) UE-A comprising sip:in-call-application@A-party-IP-address in the session establishment request and (ii) SIP-AS including sip:in-call-application@sipas.ims.mnc702.mcc320.3gppnetwork.org in the session establishment answer, UE-A and SIP-AS have established an application signaling relationship in step S8. The establishment of this relationship does not affect the end-to-end SIP session establishment or the establishment of the user plane in S7.
UE-A 100 and SIP-AS 200a can utilize this Application signaling relationship to exchange SIP Info messages for the control of in-call applications. These messages are routed in accordance with regular SIP signaling. That means, among others, that these messages will be sent towards the contact address of the UE (SIP-AS→UE) or towards the Contact address of the SIP-AS (UE→SIP-AS). (since the SIP-AS is acting as B2BUA, the SIP signaling is addressed towards the SIP-AS′ Contact address). When the UE 100 receives a SIP Info message containing the header Session-application: <sip:in-call-application@A-party-IP-address>, the UE knows that this SIP message is meant for the UE-resident application “in-call-application”. The SIP message as such will be handled as per the regular SIP transaction rules, comprising the sending of a 200 Ok. The message will, however, not be forwarded to the phone application. Instead, it will be forwarded to the in-call application client 120 of
Likewise, when the SIP-AS 200a receives a SIP Info message containing the header <sip:in-call-application@sipas.ims.mnc702.mcc320.3gppnetwork.org>, the SIP-AS 200a knows that this SIP message is meant for SIP-AS resident application “in-call-application” 50. The SIP message as such may be handled as per the regular SIP transaction rules, comprising the sending of a 200 Ok. The message may, however, not be forwarded to the call handling application in the SIP-AS. Instead, it will be forwarded to the in-call application server. Depending on the use case the SIP Info message may be terminated at the SIP-AS 200a (and so not forwarded to UE-B 300) or it may be forwarded to UE-B 300 (with or without the header sip:in-call-application@sipas.ims.mnc702.mcc320.3gppnetwork.org).
At time A, the user intends to trigger the execution of an in-call application (step S3). Hereto, the UE-A sends a SIP Info “towards” the B-party: INFO <B-party contact address>SIP/2.0 Session-application: <sip:in-call-application@sipas.ims.mnc702.mcc320.3gppnetwork.org><message body> (step S3). More specifically, it sends the SIP Info using the contact address and Route set as applicable for the SIP session that is established towards the B-party. UE-A comprises the header Session-application: <sip:in-call-application@sipas.ims.mnc702.mcc320.3gppnetwork.org>. The body of the Info message may contain the in-call application instruction, such as “Record call”, or “Connect confidential third party”.
When the Info message arrives at the SIP-AS 200a, the message is forwarded to the in-call application server; this forwarding is the result of the presence of the SIP header Session-application: <sip:in-call-application@sipas.ims.mnc702.mcc320.3gppnetwork.org>. The SIP-AS is acting as B2BUA. The SIP-AS may respond with 200 Ok (step S4); i.e. it may not pass the Info message on. At B, the in-call application server starts the execution of the requested service.
For the actual in-call application control, syntax may be defined. The body of the Info message of step S5: INFO <A-party contact address>SIP/2.0 Session-application: <sip:in-call-application@A-party-IP-address><message body> may contain the command for executing the required in-call application. The 200 Ok of the Info message may carry the result of the execution (step S6).
Furthermore, it is possible that the mobile entity establishes an application signaling relationship with more than one service application entities, e.g. two application servers. This is shown in example
SIP/2.0 200 Ok
Session-application: <sip:in-call-application@sipas-a1.ims.mnc702.mcc320.3gppnetwork.org>Session-application: <sip:in-call-application@sipas-a2.ims.mnc702.mcc320.3gppnetwork.org>. The user plane is established in step S7, the first relationship being established in step S8, the second application signaling relationship being established in step S9. It should be understood that steps S7, S8 and and S9 need not be carried out in the order indicated. For example step S8 may occur earlier than step S9 or both steps may occur simultaneously.
The two SIP-AS's both return their in-call application signaling addresses towards UE-A so that UE-A 100 establishes two independent relationships. The UE 100 can subscribe to two sets of in-call application services, one set facilitated by SIP-AS 200a, the other set being offered by in-call apps of SIP-AS 200b.
Generally, the UE 100 may be preconfigured with the address of the in-call application servers with which it can establish an in-call application signaling relationship. When the UE has received in the 200 Ok message comprising the session application header from the different application servers, the UE 100 knows that the relationship(s) is/are established and that it can exchange in-call application signaling with each of the application servers 200a, 200b.
In practice, the address of the application server with which the UE can establish an in-call application signaling relationship may be configured in the UE as a wild card address. For a particular call, the SIP-AS that is linked into the SIP session may be one of a group of load sharing/redundant SIP-AS's. The name of each such SIP-AS would match with the wild card address configured in the UE 100.
The above described principles can be further enhanced to facilitate in-session communication between an arbitrary pair of SIP entities in the SIP chain between UE-A 100 and UE-B 300. This is shown in
By way of example, SIP entity 70 B2BUA #1 of
S1: Invite sip:B-party SIP/2.0
S2: Invite sip:B-party SIP/2.0
S3: Invite sip:B-party SIP/2.0
S4: Invite sip:B-party SIP/2.0
S5: Invite sip:B-party SIP/2.0
S6: SIP/2.0 200 Ok S-A:<sip:in-call-app@A-party-address>
S7: SIP/2.0 200 Ok S-A:<sip:in-call-app@A-party-address>
S8: SIP/2.0 200 Ok
S9: SIP/2.0 200 Ok
S10: SIP/2.0 200 Ok
The principles disclosed in
An in-session application signaling relationship may be established between any pair of SIP signaling entities from UE-A 100 to UE-B 300, including these two entities.
Any permutation of in-session application signaling relationships may be established. In the example of
relationships can be established:
For the signaling the following conclusions can be drawn:
As the Invite request message is conveyed from UE-A 100 to UE-B 300, each entity may add itself to a stack of session application headers; an entity will do this only when it intends to establish an in-session signaling relationship with one or more designated other SIP entities, typically an application server. In the example of
When an entity sends 200 Ok, it may add its own address to the session application header for each upstream SIP entity with which it wishes to establish an in-session application signaling relationship. In the example of
A session application header in the 200 Ok may hence contain a multitude of responding addresses.
When a SIP entity receives a 200 Ok, then before passing on the 200 Ok, it may remove its own session application header from the 200 Ok. Rationale is that the presence of this header in the 200 Ok may be only for the purpose of this SIP entity. In the example of
SIP-AS #1200 and a second service control channel being formed between UE-A 100 and SIP-AS #2210. UE-A is the service control entity and the service application entity for service control channel 1 and for service control channel 2. SIP-AS 200 is the service application entity and the service control entity for service control channel 1, wherein SIP-AS 210 is the service application entity and the service control entity for service control channel 2. In the last line of
From the discussion of the above figures some general conclusions can be drawn. When a communication channel (for example a service control channel) should be set up, an initiating entity (for example a service control initiating entity such as UE-A 100) can transmit a first message in the (SIP) communication channel, this message comprising offer data indicating that the initiating entity supports one or more communication channels. Furthermore, as could be deduced from the examples given above, the offer data contain the address at which the initiating entity is able to receive the messages. A responding entity (for example a service control responding entity) can then send an answer message on the end-to-end control channel, this answer message comprising acceptance data in response to the offer data. The acceptance data indicate that the responding entity has accepted to a set up of the communication channel (for example the service control channel) and the acceptance data comprise the address at which the responding entity is configured to receive the messages (for example the service control messages). Thus, the initiating entity can then use this address in order to send messages to the responding entity.
As could be inter alia deduced from
Furthermore, as could be seen from the examples above, the acceptance data may be removed from the second message before the second message is transmitted to the first entity. The first entity may comprise a user equipment or the initiating entity. Furthermore, an application server may comprise the initiating entity.
In the same way for the responding entity (for example a service control responding entity) receiving the message with the offer data, this received message may furthermore comprise offer data originating from more than one initiating entities (for example service control initiating entities) located in the end-to-end control channel towards the first entity. The offer data originating from more than one initiating entities comprise the address at which each of the more than one initiating entities is configured to receive the information (for example service control messages). This could be inter alia deduced from
The second entity may comprise or can be part of the responding entity (for example the service control responding entity), wherein the second entity may comprise a user equipment.
The offer data may also be added to the second message transmitted back to the first entity. Furthermore, the second message from the second entity can be received and the acceptance data can be added before the received second message is transmitted further to the first entity. An application server may furthermore comprise the service control responding entity.
Furthermore, it may be deduced from the different embodiments that the first message is a request message and the second message is a response message. More precisely, the request message may be a SIP Invite message and the response message may be a SIP 200 Ok message.
The offer data and/or the acceptance data may be added as a header of the first and/or the second message.
When the end-to-end control channel is established and the signaling relationship between the initiating entity and the responding entity is established, the initiating entity can play the role of the a control entity (for example a service control entity), and the responding entity can play the role of an application entity (for example a service application entity) which applies the service to for example a data flow. The information (for example the control message) itself including the instruction how to apply the service to the data flow may be added as information to the control message. The control message received on the end-to-end control channel may be received from the first entity and the address is added to the control message and transmitted further to the second entity. In this embodiment, the control entity may be located between the first and the second entity, and the application entity may be further located in direction of the second entity. Furthermore, the control entity may comprise an application server. In another embodiment, the control message may be generated by the control entity on the end-to-end control channel with the address of the first entity as destination address before the information is added and the control message is transmitted to the second entity. The first entity may comprise the service control entity.
As far as the application entity itself is concerned, which applies the service in accordance with the information contained in the control message, the received control message may not be forwarded to the second entity.
The second entity may comprise the application entity or the mobile entity. In another embodiment the received control message may be forwarded to the second entity without the extracted address and without the extracted information. The application entity may comprise the application server and the application entity can transmit an acknowledgement message in response to the received control message using a source address contained in the received control message as destination address. The control message may be a service control message and the generated control message may be configured such that it cannot establish, maintain or release the end-to-end control channel.
The control message can be generated in accordance with a session initiation protocol. Furthermore, the address and the information may be extracted from the request line and from a header, respectively, of the control message.
Furthermore, a first entity may communicate with one or more of the second entities and an end-to-end control channel is configured between a third and a fourth entity, the first and the one or more second entities being part of the end-to-end control channel. For communicating, the first entity may add an address of a second entity to communicate with the first entity to a control message to be transmitted on the end-to-end control channel. Furthermore, information for communicating with the second entity is added to the control message and the control message is transmitted towards the second entity via the end-to-end control channel, wherein the destination address of the control message comprises an address of the fourth entity.
The control message may be received on the end-to-end control channel from the third entity, wherein the address and the information for communicating with the second entity is added to the control message and the control message is transmitted further to the fourth entity.
The first entity can comprise an application server and the third entity may comprise the first entity and/or a mobile entity. Additionally, the address and the information may be added to the header of the control message. The first entity can be a service control entity and the one or more second entities can be service application entities wherein the third and the fourth entity are the endpoints of the end-to-end control channel.
When the second entity is communicating with one or more of the first entities, the control message is received by the second entity, the control message having as destination address an address of the fourth entity. The second entity further determines whether an extracted address from the received control message corresponds to an address at which the second entity is configured to receive messages. If this is the case, the information for communication with one or more of the first entities is extracted from the control message.
The received control message may not be forwarded to the fourth entity. As an alternative, it is possible that the received control message is forwarded to the fourth entity without the extracted address and without the extracted information. Furthermore, the fourth entity can comprise the second entity or a mobile entity.
The second entity can comprise an application server. Furthermore, an acknowledgement message may be transmitted in response to the received control message using a source address contained in the received control message as destination address.
The address and the information may be extracted from a header of the control message.
Furthermore, the generated control message may be designed such that it cannot establish, maintain or release the end-to-end control channel. Furthermore, it is possible that the one or more first entities are service control entities and that the second entity is a service application entity.
As far as the initiating entity, by way of example the service control initiating entity, is concerned, the message managing unit may be configured to remove acceptance data from the second message before transmitting the second message to the first entity.
Furthermore, an initiating entity may be provided to initiate the set up of one or more communication channels, the initiating entity comprising a processor and a memory. The memory can contain instructions executable by said processor whereby the initiating entity is operative to transmit a first message on an end-to-end control channel between a first entity and a second entity, wherein the first message comprises as a destination address a second entity address and wherein offer data is added to the transmitted first message. The offer data can indicate that the initiating entity is configured to support one or more communication channels and the offer data can comprise an address at which the initiating entity is configured to receive the messages. Furthermore, the initiating entity is operative to receive a second message on the end-to-end control channel, wherein the second message comprises as destination address an address of the first entity. The second message furthermore comprises acceptance data in response to the offer data and the acceptance data indicate that a responding entity has accepted the set up of a communication channel and the acceptance data comprise an address at which the responding entity is configured to receive the messages. Furthermore, the initiating entity is operative to store the address at which the responding entity is configured to receive the message.
Furthermore, the responding entity configured to set up one or more communication channels can comprise a processor and a memory, wherein the memory contains instructions executable by said processor. The responding entity is operative to receive a first message on the end-to-end control channel between the first entity and the second entity, wherein the first message comprises as a destination address the second entity address. The first message furthermore comprises offer data indicating that an initiating entity is configured to support a communication channel and the offer data comprise an address at which the initiating entity is configured to receive the messages. The responding entity is furthermore operative to store the addresses at which the one or more initiating entities are configured to receive the messages if the responding entity accepts to set up a communication channel between the one or more initiating entities and the responding entity. Furthermore, it is operative to transmit a second message to the first entity, wherein the second message comprises acceptance data in response to the offer data. The acceptance data indicate that the responding entity accepts the set up of the communication channel and the acceptance data comprise an address at which the responding entity is configured to receive the messages.
Furthermore, a first entity configured to communicate with one or more second entities is provided comprising a processor and a memory, said memory containing instructions executable by the processor, wherein an end-to-end control channel is configured between a third and a fourth entity and wherein the first entity and the one or more second entities are part of the end-to-end control channel. The first entity is operative to add an address of a second entity to communicate with the first entity to a control message to be transmitted on the end-to-end control channel. Furthermore, information for communicating with the second entity is added to the control message and the control message is transmitted towards the second entity via the end-to-end control channel, wherein the destination address of the control message comprises an address of the fourth entity.
Additionally, a second entity configured to communicate with one or more of the first entities is provided with the end-to-end control channel being configured between the third and the fourth entity and wherein the one or more first entities and the second entity are part of the end-to-end control channel. The second entity is operative to receive a control message having as destination address an address of the fourth entity. Furthermore, it is operative to determine whether an expected address from the received control message corresponds to an address at which the second entity is configured to receive messages. If this is the case, it is operative to extract information for communicating with the one or more first entities from the control message.
The above described embodiments enable a mobile entity or any other entity in a end-to-end control channel to communicate with any other entity in the end-to-end control channel for example to establish, utilize and control network-based in-call applications in a transparent manner without the remote party to notice it as it would be the case with an audible indication. The method is also transparent in the sense that it does not rely on any other data communication channel than the already established end-to-end control channel.
An additional advantage can be seen that it provides means for transparent data, in-session communication between two entities (for example application servers) that are connected in the chain of the call. This capability may become relevant for advanced enterprise or residential use cases where for example multiple application servers may jointly control a call. By way of example, MMTel-AS and SIP-AS chained in a call, the SIP-AS may provide enterprise services for the served subscriber.
An in-call signaling relationship (for example application signaling relationship) may be established between two entities (for example a UE and a SIP-AS). This in-call signaling relationship allows for transparent exchange of signaling messages between the entities, for example for the control of in-call applications. The transfer of the messages (for example SIP messages, specifically the Info transaction), may occur in accordance with standard signaling rules (for example SIP signaling rules). One aspect is that the in-call application signaling is explicitly addressed towards the remote end (for example by virtue of the fact that the UE applies the regular SIP routing, as applicable for this SIP session), but is implicitly addressed towards another entity (for example SIP-AS serving the subscriber, by virtue of the fact that it contains the session application header). The result is that there is an in-session signaling relationship established between two entities (for example on the end-to-end SIP chain). The signaling protocol (for example SIP) is carrying the messages for the in-session signaling relationship, but there is no impact on the end-to-end signaling session (for example SIP session).
The in-session relationship may also be established between two entities in the chain (for example SIP-AS's in the SIP chain), as described in one of the examples. This method will be important with proliferation of for example SIP-AS's within a single SIP session, e.g. the chaining of a SIP-AS for advanced enterprise/residential services and MMTel-AS.
The capability may be formed by a session header (for example the session application SIP header). This header may be used to let two entities located in an end-to-end (SIP) session path between two (SIP) session endpoints establish a transparent communication channel with one another. The end-to-end (SIP) session acts as conveyer for the transparent communication channel between the two entities located on this (SIP) session path. But yet, the (SIP) communication between these two entities located on this (SIP) session path does not form part of end-to-end (SIP) session signaling.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2015/057628 | 4/8/2015 | WO | 00 |