The field of this invention is that of devices such as mobiles phones. More particularly, the invention relates to a method for operating such a device while being engaged in a first call.
With devices such as mobile phones, it is common to receive a phone call from a calling party, while already being engaged in a call with another party.
The “Communication hold service”, as defined in the 3GPP specification TS 24.610, lets the called party pause the initial call (to take the new incoming call for instance) and place said other party of the initial call on hold, without ending the initial call. Usually, the other party which is placed on hold hears a pre-configured announcement message.
The called party can resume the initial call at any time by either terminating the new incoming call, or placing the calling party of this new call on hold (i.e. switching the party which is on-hold).
Said communication hold service works well, but when the initial call is a multi-party call (a conference), if a party places on hold such a multi-party call, this announcement message will interrupt the conference for all the other parties until the call is resumed by the party which placed on hold this call. It will reduce the continuity of user experience for all the participants on the conference call. In the worst case, a music is continuously played as long as the communication is held, and the conference is disturbed.
There is still the possibility to deactivate the communication hold service when in a conference to avoid such situation, but a party receiving an incoming call would have no option other than leaving the conference to accept an incoming call.
There is therefore a need for improving the user experience in multi-party calls.
For these purposes, the present invention provides according to a first aspect a method for operating a device, characterized in that it comprises the following steps of, performed by a processing unit of the device:
Preferred but non limiting features of the present invention are as follow:
In a second aspect, the invention proposes a method for operating a network server implementing a communication hold service, characterized in that it comprises the following steps of, performed by a processing unit of the server:
In a third aspect, the invention proposes an electronic device comprising a processing unit configured to implement the following steps:
In a fourth aspect, the invention proposes a network server comprising a processing unit configured to implement the following steps:
According to a fifth and a sixth aspects, the invention provides a computer program product, comprising code instructions for executing a method according to the first aspect for operating a device or according to the second aspect for operating a network server implementing a communication hold service; and a computer-readable medium, on which is stored a computer program product comprising code instructions for executing a method according to the first aspect for operating a device or according to the second aspect for operating a network server implementing a communication hold service.
The above and other objects, features and advantages of this invention will be apparent in the following detailed description of an illustrative embodiment thereof, which is to be read in connection with the accompanying drawings wherein:
The present invention relates to a method for operating a device 1 as represented by
The device 1 typically further comprises a memory 12 (for example flash memory) and the user interface 13 generally includes a screen (possibly touch sensitive), and a vibration module.
The device 1 also typically comprises a battery for powering the processing unit 11 and other units. The device 1 may further comprise others units such as a location unit for providing location data representative of the position of the device 1 (using for example GPS, network triangulation, etc.), further sensors (such as an acceleration sensor, light sensor, etc.), a communication unit for connecting (in particular wirelessly) the device 1 to a network 20 (for example WiFi, Bluetooth, and preferably a mobile network, in particular a GSM/UMTS/LTE network, see below), etc.
This device 1 is typically a smartphone, a tablet computer, a laptop, etc. In the following description the example of a smartphone will be used, but the present invention is not limited to this embodiment as it is well known that computer can nowadays receive phone calls.
As explained, at least one other party 3 is involved, which can be any device similar to the device 1 (a smartphone, a tablet computer, a laptop, etc.).
As explained, the “communication hold service” is described by 3GPP TS 24.610. In this specification, it is simply referred to as “HOLD”.
In the following description, we will assume that the device 1 is engaged in an ongoing call, referred to as “first call”, with at least one other device 3, hereafter also designated as “party”. Said first call is preferably a multi-party conference call, i.e. there is a plurality of said other parties 3. We also assume that said first call is through a network server 2 implementing the communication hold service. Said network server 2 is preferably a SIP application server (“AS/MRF” in 3GPP TS 24.610), but the present invention is not limited to this specific embodiment. The network server 2 comprises also a processing unit 21 and a memory 22.
The communication hold service is triggered if, during said first call, the device 1 receive a second call. The other party(ies) 3 of the first call become(s) a “held” party.
We refer now to
In this figure, UE-A are UE-B are the parties of the first call. UE-A is the user device 1 (and the called party of the second call), while UE-B is the device corresponding to another party 3. As explained, there may be a plurality of other parties 3 (devices UE-B) in case of multi-party conference call. The server 2 is referred to as AS/MRF, and we have three “Proxy/Serving Call Session Control Function” entities P-CSCF A, P-CSCF B and S-CSCF involved.
In
Alternatively, referring now to
This embodiment would be very strange in a normal call (with a single other party), because the other party UE-B would not even know that they have been put on hold by UE-A: they would just realize that they are “alone” in the call in the absence of response from the user of device UE-A.
However, this embodiment makes sense in a multi-party conference call because the conference could continue without disturbance, as the other parties would not even know that they have been put on hold.
On the other hand, in some conference calls, the announcement remains useful, for example if the called party is the host of the conference call.
According to a first aspect, the present invention proposes a method for operating the device 1, performed by its processing unit 11, which astutely adds a user-aware function at the UE, and uses it to switch between the mode “hold with announcement” and “hold without announcement”. As it will be explained, the present method fully complies with the 3GPP TS 24.610, and just makes clever use of its functionalities.
We refer now to
This method can be implemented by an operating software of the device as handling calls is generally a basic functionality of a device such as a smartphone. Alternatively, the present method can be implemented by a dedicated application such as a “chat” application allowing voice and/or video calls, in particular multi-party calls.
As explained, the device 1 is assumed to be engaged in an ongoing call (the first call) through the network server 2 implementing the communication hold service, and the device 1 has either initiated such first call of has received it form a calling party (i.e. is being requested to handle this call through the user interface 13 of the device 1). In a case of a multi-party conference call, the device 1 can simply connect to the conference call (initiated by another party) for instance through a link provided by the host of the conference.
In a first detecting step (a), the processing unit 11 of the device 1 detects, during said first call, an intent of a user of the device 1 to avoid disturbing said first call. This detecting step (a) may be performed by a user-aware function, typically implemented as a set of computer program instructions installed on device 1.
Such a detection may be based on an analysis of the user's behavior, for instance by detecting that the user has not spoken for a certain amount of time during the first call (for instance since the beginning of the first call) or preferably by monitoring the device configuration and detecting a configuration indicative of the user intention not to disturb the first call, such as (but not limited) toggling on a mute function.
In other words, an intent of a user of the device 1 to avoid disturbing said first call is preferably detected when the user has activated the mute function or when the user has not spoken for a given duration during the first call.
Note that step (a) can be action-triggered (for instance when the mute function is activated, or when a second call is received, see below). Alternatively, a determination whether the user of the device 1 wishes to avoid disturbing said first call can be performed regularly.
In response, in a further instructing step (b), if an intent a user of the device 1 to avoid disturbing said first call has been detected, the processing unit 11 of the device 1 instructs said network server 2 to disable playing the announcement message to said at least one other party 3 of said first call if the communication hold service is triggered.
In other words, the configuration of the server 2 is modified, and the hold service is switched from the embodiment “with announcement” of
As an illustrative example, when multiple participants are on the call, usually when a user of device 1 does not want to interrupt the conference, this user will activate the mute function on this device 1. The detection, by the user-aware function, of the UE mute function being toggled on will lead this user-aware function to determine that the user indeed wants to avoid disturbing the first call. This triggers an instruction, prepared by the user-aware function, to the network server not to play the announcement message as it would normally do, in other words to disable the announcement playing function installed at this network server.
This way, the network server 2 will not play the announcement in case the conference call is put on hold by the user of the device 1, so the other parties in the conference call will not hear anything and keep on calling as usual.
The method may then further comprise detecting (c), still during the first call, that the user of the device 1 no longer wishes to avoid disturbing said first call (for instance, because the user has disabled the mute function) and, in response, instructing (d) said network server 2 to re-enable playing the announcement message if the communication hold service is triggered.
In other words, the configuration of the server 2 is modified again, and the hold service is switched back from the embodiment “without announcement” of
This way, the server 2 will this time play the announcement in case the call is put on hold by the user of the device 1, so the other parties in the conference will hear the announcement message and understand that the user of the device 1 is temporary out of the conference.
The method can then be repeated from step (a), see
In case no intent of the user of the device 1 to avoid disturbing said first call is detected while playing the announcement is enabled (step (a)), or in case an intent of the user of the device 1 to avoid disturbing said first call is detected while playing the announcement is already disabled (step (c)), nothing happens (no instruction is sent) and the network server 2 remains in its current state.
The instruction of step (b) and/or step (d) may be performed by sending this instruction in a dedicated message (which allows the user to prevent the playing of the announcement in real time) to the network server 2.
In particular, as depicted in
In any case, thanks to the possibility of “reserving resources”, the server 2 is able to save this instruction and apply it.
As explained, the method may further comprise, when receiving a second call, instructing said network server 2 to trigger the communication hold service.
Said instruction can advantageously be directly combined with the instruction to disable (or re-enable) playing an announcement message to said at least one other party 3 of said first call if the communication hold service is triggered.
In other words, at step (b) or (d), the device 1 preferably sends to network server 2 a single instruction both to trigger the communication hold service and to disable of re-enable playing the announcement message.
In such a case, the method may be simply triggered by an initial step (a0) of receiving the second call at the device 1, as illustrated by
Indeed, referring now to
As explained, said single instruction is typically implemented by a SIP INVITE request.
As the network server 2 implements the communication hold service, if the device 1 receive the second call while still being engaged in the first call, the server 2 triggers the communication hold service and play or not the announcement message according to what it has been instructed.
Thus, according to a second aspect, the present invention proposes a method for operating the network server 2 implementing a communication hold service, performed by its processing unit 21.
Referring to
In response, this instruction is applied by the processing unit 21 and the configuration of the network server 2 is modified accordingly.
Then, in a further step (b′), a second instruction to trigger the communication hold service is further received from the device 1, in particular because the device 1 has received a second call.
Note that, as explained previously, the instruction of steps (a′) and (b″) could be sent within the same SIP INVITE request.
In consequence, in a final step (c′), the processing unit 21 places said at least one other party 3 on hold, but without playing to said at least one other party 3 the announcement message.
Note that in step (a′), the processing unit 21 may also receive from the device 1, an instruction to re-enable playing an announcement message to said at least one other party 3 of said first call if the communication hold service is triggered (i.e. step (d) of the method according to the first aspect).
In such a case, in step (c′) the processing unit 21 will play the announcement message to said at least one other party 3.
To summarize, at step (c′), the server 2 plays or not the announcement message according to the most recent instruction received from device 1.
In an embodiment, the network server 2 may check at step (c′) that the first call is indeed a multi-party conference call before placing said at least one other party 3 on hold without playing to said at least one other party 3 the announcement message (i.e. said at least one other party 3 is placed on hold without playing, to said at least one other party 3, the announcement message only if said first call is a multiparty conference call, else the announcement message is played), so that the announcement is only disabled for an first multi-party conference call while kept enabled for an on first two-party call, where such an announcement may be less problematic.
The present invention further proposes an electronic device 1 comprising a user interface 13 and a processing unit 11, adapted for carrying out the method for operating as previously described. This device 1 may also comprise a memory 12. This processing unit 11 is configured to implement the steps of:
The present invention further proposes a network server 2 comprising a processing unit 11, adapted for carrying out the method for operating as previously described. This server 2 may also comprise a memory 22. This processing unit 21 is configured to implement the steps of:
The present invention further proposes a computer program product, comprising code instructions for executing (in particular with a processing unit 11, 21 of the device 1 and/or the server 2) the previously described method as well as a computer-readable medium (in particular a memory 12, 22 of the device 1 and/or the server 2), on which is stored a computer program product comprising code instructions for executing said method. In particular, this computer program product may be implemented by the operating system of the device or a dedicated communication application.
Number | Date | Country | Kind |
---|---|---|---|
PCT/CN2021/135358 | Dec 2021 | WO | international |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/IB2022/000710 | 12/1/2022 | WO |