Holding, transferring, and conferencing
Contents
- 1 Hold/Retrieve function, consulted party answers
- 2 Hold/Retrieve function, consulted party does not answer
- 3 Single-step transfer
- 4 Single-step transfer (outbound)
- 5 Mute transfer
- 6 Two-step transfer: complete after consulted party answers
- 7 Two-step transfer: complete before consulted party answers (blind)
- 8 Two-step transfer to ACD
- 9 Two-step transfer to a Routing Point
- 10 Single-step conference
- 11 Conference
- 12 Blind conference (complete before consulted party answers)
Learn about the functions and events related to placing calls on hold, transferring calls, and creating conference calls.
For simplicity, the examples on this page use abbreviated attribute values. For example, ConnID 1, which – in actual events – displays as <ConnID>@<metainformation>.
The following comments and abbreviations are used in the call models:
- OPT—Optional.
- DIAL—Might be a dialed number or is not present if Voice Microservices have no information about the other party.
Hold/Retrieve function, consulted party answers
Party A | Party B | Party C |
Call-establishing phase (ConnID 1) | ||
Hold (THoldCall) | ||
EventHeld ConnID 1 |
||
Make call to C (Consultation) (TMakeCall) | ||
Call-establishing phase (ConnID 2) | ||
Release phase (ConnID 2) | ||
Retrieve call from A (TRetrieveCall) | ||
EventRetrieved a ConnID 1 |
||
Release phase (ConnID 1) |
a. With EventRetrieved, the values for attributes ThisDNRole and ThisQueue are the same as those for the attributes of the same names, if any, in the events preceding EventRetrieved (EventEstablished and EvenRinging). For non-ACD calls, however, ThisQueue is not reported.
Abnormal call flow
Interruption point | Party A | Party B |
* | EventReleased ConnID 1 |
EventReleased ConnID 1 |
** | EventReleased ConnID 1 |
EventReleased ConnID 1 |
*** | EventReleased ConnID 1 |
EventReleased ConnID 1 |
Hold/Retrieve function, consulted party does not answer
Party A | Party B | Party C |
Call-establishing phase (ConnID 1) | ||
Hold (THoldCall) | ||
EventHeld ConnID 1 |
||
Unsuccessful internal call (party does not answer) (ConnID 2) | ||
Retrieve call from A (TRetrieveCall) | ||
EventRetrieved a ConnID 1 |
||
Release phase (ConnID 1) |
a. With EventRetrieved, the values for attributes ThisDNRole and ThisQueue are the same as those for the attributes of the same names, if any, in the events preceding EventRetrieved (EventEstablished and EvenRinging). For non-ACD calls, however, ThisQueue is not reported.
Abnormal call flow
Interruption point | Party A | Party B |
* | EventReleased ConnID 1 |
EventReleased ConnID 1 |
** | EventReleased ConnID 1 |
EventReleased ConnID 1 |
Single-step transfer
Party A | Party B | Party C |
Call-establishing phase (ConnID 1) | ||
Single-step transfer to C (TSingleStepTransfer) | ||
|
EventReleased ConnID 1 |
|
Answer (TAnswerCall) | ||
EventEstablished ConnID 1 |
Abnormal call flow
Interruption point | Party A | Party B | Party C |
* | EventReleased ConnID 1 |
||
** | EventReleased ConnID 1 |
EventAbandoned ConnID 1 |
Single-step transfer (outbound)
Party A | Party B | Party C |
Call-establishing phase (ConnID 1) | ||
Single-step transfer to C (TSingleStepTransfer) | ||
EventPartyChanged ConnID 1 EventNetworkReached |
EventReleased ConnID 1 |
|
Answer (TAnswerCall) | ||
EventEstablished ConnID 1 |
Abnormal call flow
Interruption point | Party A | Party B | Party C |
* | EventReleased ConnID 1 |
||
** | EventReleased ConnID 1 |
EventAbandoned ConnID 1 |
Mute transfer
Party A | Party B | Party C |
Call-establishing phase (ConnID 1) | ||
Mute transfer to C (TMuteTransfer*) | ||
EventHeld ConnID 1 |
||
EventDialing ConnID 2 |
EventRinging ConnID 2 | |
EventPartyChanged ConnID 1 |
EventReleased ConnID 1
EventReleased |
EventPartyChanged ConnID 1 |
Answer (TAnswerCall) | ||
EventEstablished ConnID 1 | ||
Release phase (ConnID 1) |
Abnormal call flow
Interruption point | Party A | Party B | Party C |
* | EventReleased ConnID 1 |
EventReleased ConnID 1 |
|
** | EventReleased ConnID 1 |
EventReleased ConnID 1 EventReleased |
EventAbandoned ConnID 2 |
*** | EventReleased ConnID 1 |
EventAbandoned ConnID 1 |
Two-step transfer: complete after consulted party answers
Party A | Party B | Party C |
Call-establishing phase (ConnID 1) | ||
Hold (TInitiateTransfer*) | ||
EventHeld ConnID 1 |
||
Consultation call to C (TInitiateTransfer continues) | ||
Call-establishing phase (ConnID 2) | ||
Transfer held call to C (TCompleteTransfer) | ||
EventPartyChanged ConnID 1 |
EventReleased ConnID 1
EventReleased |
EventPartyChanged ConnID 1 |
Release phase (ConnID 1) |
Abnormal call flow
Interruption point | Party A | Party B | Party C |
* | EventReleased ConnID 1 |
EventReleased ConnID 1 |
|
** | EventReleased ConnID 1 |
EventReleased ConnID 1 EventReleased |
EventAbandoned ConnID 2 |
Two-step transfer: complete before consulted party answers (blind)
Party A | Party B | Party C |
Call-establishing phase (ConnID 1) | ||
Hold (TInitiateTransfer) | ||
EventHeld ConnID 1 |
||
Consultation call to C (TInitiateTransfer continues) | ||
EventDialing ConnID 2 |
EventRinging ConnID 2 | |
Transfer held call to C (TCompleteTransfer) | ||
EventPartyChanged ConnID 1 |
EventReleased ConnID 1
|
EventPartyChanged ConnID 1 |
Answer (TAnswerCall) | ||
EventEstablished ConnID 1 | ||
Release phase (ConnID 1) |
If a call appears on the terminating party after transfer completion, the ConnID field of EventRinging is equal to the connection ID of the original call (ConnID 1), and EventPartyChanged is not generated.
Abnormal call flow
Interruption point | Party A | Party B | Party C |
* | EventReleased ConnID 1 |
EventReleased ConnID 1 |
|
** | EventReleased ConnID 1 |
EventReleased ConnID 1 EventReleased |
EventAbandoned ConnID 2 |
*** | EventReleased ConnID 1 |
EventAbandoned ConnID 1 |
Two-step transfer to ACD
Two-step transfer to ACD means that a call is waiting in a queue, and the transfer completed before any ACD agent is available to receive the call.
The following table describes a two-step transfer to ACD.
Party A | Party B | Party C (ACD) | Party D |
Call-establishing phase (ConnID 1) | |||
Hold (TInitiateTransfer) | |||
EventHeld ConnID 1 |
|||
Consultation call to C (TInitiateTransfer continues) | |||
EventDialing ConnID 2 |
EventQueued ConnID 2 |
||
Transfer held call to C (TCompleteTransfer) | |||
EventPartyChanged ConnID 1 |
EventReleased ConnID 2
EventReleased |
EventPartyChanged ConnID 1 |
|
Diverts call to D | |||
EventDiverted ConnID 1 |
EventRinging ConnID 1 | ||
Answer (TAnswerCall) | |||
EventEstablished ConnID 1 | |||
Release phase (ConnID 1) |
If a call transfer is completed before it is put in an ACD queue, an EventPartyChanged is not generated.
Abnormal call flow
Interruption point | Party A | Party B | Party C | Party D |
* | EventReleased ConnID 1 |
EventReleased ConnID 1 |
||
** | EventReleased ConnID 1 |
EventReleased ConnID 1 EventReleased |
EventAbandoned ConnID 2 |
|
*** | EventReleased ConnID 1 |
EventAbandoned ConnID 1 |
Two-step transfer to a Routing Point
Party A | Party B | Party C (ACD) | Party D |
Call-establishing phase (ConnID 1) | |||
Hold (TInitiateTransfer) | |||
EventHeld ConnID 1 |
|||
Consultation call to C (TInitiateTransfer continues) | |||
EventDialing ConnID 2 |
EventRouteRequest ConnID 2 |
||
Transfer held call to C (TCompleteTransfer) | |||
EventPartyChanged ConnID 1 |
EventReleased ConnID 2 EventReleased |
EventPartyChanged ConnID 1 |
|
Diverts call to D | |||
EventRouteUsed ConnID 1 |
EventRinging ConnID 1 | ||
Answer (TAnswerCall) | |||
EventEstablished ConnID 1 | |||
Release phase (ConnID 1) |
a. ThisDNRole must be Destination if party B is the call originator.
Abnormal call flow
Interruption point | Party A | Party B | Party C | Party D |
* | EventReleased ConnID 1 |
EventReleased ConnID 1 |
||
** | EventReleased ConnID 1 |
EventReleased ConnID 1 EventReleased |
EventAbandoned ConnID 2 |
|
*** | EventReleased ConnID 1 |
EventAbandoned ConnID 1 |
||
**** | EventReleased ConnID 1 |
EventAbandoned ConnID 1 |
Single-step conference
Party A | Party B | Party C |
Call-establishing phase (ConnID 1) | ||
TSingleStepConference | ||
EventPartyAdded ConnID 1 |
EventPartyAdded ConnID 1 |
EventRinging ConnID 1 |
EventEstablished ConnID 1 | ||
Release from conference phase | ||
Release phase (ConnID 1) |
a. ThirdPartyDN has a value of C if Party C initiates the request for a conference.
Conference
Party A | Party B | Party C |
Call-establishing phase (ConnID 1) | ||
Hold | ||
EventHeld ConnID 1 |
||
Consultation call to C | ||
Call-establishing phase (ConnID 2) | ||
Conference | ||
|
EventReleased ConnID 2 EventRetrieved a EventPartyAdded |
|
Release from conference phase | ||
Release phase (ConnID 1) |
a. With EventRetrieved, the values for attributes ThisDNRole and ThisQueue are the same as those for the attributes of the same names, if any, in the events preceding EventRetrieved (EventEstablished and EventRinging). For non-ACD calls, however, ThisQueue is not reported.
b. If only one party is added (as in the case of a simple conference call), the corresponding telephony object is specified in OtherDN. If more than one party is added, then the corresponding telephony objects are specified in Extensions.
Abnormal call flow
Interruption point | Party A | Party B |
* | EventReleased ConnID 1 |
EventReleased ConnID 1 |
Blind conference (complete before consulted party answers)
Party A | Party B | Party C |
Call-establishing phase (ConnID 1) | ||
Hold | ||
EventHeld ConnID 1 |
||
Consultation call to C | ||
EventDialing ConnID 2 |
EventRinging ConnID 2 | |
Conference | ||
|
EventReleased ConnID 2 EventRetrieved a EventPartyAdded |
|
Answer (TAnswerCall) | ||
EventEstablished ConnID 1 | ||
Release from conference phase | ||
Release phase (ConnID 1) |
a. With EventRetrieved, the values for attributes ThisDNRole and ThisQueue are the same as those for the attributes of the same names, if any, in the events preceding EventRetrieved (EventEstablished and EventRinging). For non-ACD calls, however, ThisQueue is not reported.
If a call appears on the terminating party after completion of conference, the ConnID field of EventRinging is equal to the connection ID of the original call (ConnID 1), and EventPartyChanged is not generated.
Abnormal call flow
Interruption point | Party A | Party B | Party C |
* | EventReleased ConnID 1 |
EventReleased ConnID 1 |
|
** | EventReleased ConnID 1 |
EventPartyDeleted ConnID 1 |