Call transfer in Asterisk

Overview of two major types of transfer with specific examples

Transferring a call means that one side of the conversation (A) tells Asterisk to connect the other side (B) to the third destination in the system (C). To perform this function, Asterisk supports two types of call transfer: blind and attended. The latter can be assigned with various behavior patterns depending on the needs of a particular company.

In this article, we discuss the basics and give specific examples of system behavior for different types of call transferring.

Blind transfer

Blind transfer means that its initiator (A) forwards the other party of the conversation (B) to a third party's phone (C). When A presses the transfer button, he loses the connection with B and C. Instead, a separate connection is established between them.

In this case, the standard key combination is ##, which means the blind transfer is made following the scheme: ##[extension].

Also, you can add a hash to the end of the combination - ##[extension]#. Thus, you let Asterisk know that you are done dialing and the system can proceed with the target action.

Example

Jane calls Mark.

Mark decides to transfer her to Peter.

Mark dials ##. Asterisk gives an audio prompt that signals it is ready for the transfer.

Mark enters Peter's extension number on the dialer.

Asterisk breaks the connection between Mark and Jane and creates a separate channel for Jane, who is now connected directly to Peter.

If Peter does not pick up, Jane's call will return to Mark's phone.

Attended transfer

Attended, or supervised, transfer is carried out as follows: before transferring a call, party A first connects to party C, makes sure they are ready to receive the call, and then transfers party B to C. Thus, the initiator of the transfer controls the process until it is completed. It is especially useful when the transfer initiator wants to make sure that the receiving party is ready to accept the call in advance.

In this case, the combination is *2[extension]#.

Example

Jane calls Mark and asks to transfer her to Peter.

Mark dials *2. Asterisk gives an audio prompt that signals it is ready for the transfer. 

Mark enters Peter's extension number on the dialer. Asterisk puts Jane on hold and creates a channel for Mark and Peter.

Peter picks up and talks to Mark. Mark gets Peter's consent to receive the transferred call and hangs up.

Asterisk breaks the connection between Mark and Jane. Peter gets a short audio prompt, while Asterisk establishes a connection between Jane and Peter.

Typically, a telephone unit has a specific key for call transferring. It can be just an asterisk or a special "transfer" button. But it is not as simple in case with Asterisk. For Asterisk to work correctly, you need to use the key combinations described above. However, on many SIP-devices, it is possible to configure the "transfer" button and assign it with ## or *2 key combinations. Then the call can be transferred in one click.

In some softphones, the appropriate combinations are dialed by default. For example, in our web-dialer Softphone24, that was implemented especially for the integration of Bitrix24 and Asterisk, we have programmed the needed combinations right from the start. The user needs to click just the transfer button and select a transfer type. All information about the call is recorded in Bitrix24.

If it does not happen this way, most likely the problem lies with the module configuration. Since when transferring Asterisk splits the call into two components that are not interconnected with each other, it often happens so that in CRM a user sees only one (first) part of the conversation. To avoid this error, read our article on how to configure the module so that it should transmit a complete call record.

Back