PBX CallTransfer

Call Transfer is used to transfer a call in progress to some other destination.

There are two types of call transfer:

  • Supervised call transfer - Where the call is placed on hold, a call is placed to another party, a conversation can take place privately before the caller on hold is connected to the new destination. This is also called "Attended Call Transfer" elsewhere in this website.
  • Blind call transfer - Where the call is transferred to the other destination with no intervention (the other destination could ring out and not be answered for instance).

Asterisk Info

  • # - Blind call transfer. Note that the user might end up being forwarded to voicemail or elsewhere.
  • *2 - Attended call transfer.

  • This patch looks for the variable GOTO_ON_TRANSFER in a # transferring channel and sends the transferrer to that context|exten|pri (you can use ^ to represent | to avoid escapes)

exten => 3001,1,SetVar(GOTO_ON_TRANSFER=woohoo^s^1)
exten => 3001,2,Dial(SIP/|60|Tt)

If you now perform a # transfer you will end up at woohoo,s,1

FreePBX Info

FreePBX users can use ## to do a blind call transfer. This is the preferred method of blind-transferring a call in FreePBX, because if a device-dependent implementation (e.g. flash-dial-hangup transfer with a Linksys/Sipura device) is used, the caller may not hear music-on-hold OR a ringing signal while waiting for the call to be picked up. Neither # nor *2 appear to work in FreePBX, at least not in all instances. Part of the reason *2 doesn't work is because the line that would normally enable it is commented out in /etc/asterisk/features.conf but if it is uncommented, it still does not appear to work. Uncommenting and changing it to #2 produces sporadic results, it works sometimes but not others. So, it may be best to use a device-dependent attended transfer if one is available (e.g. flash-dial-wait for answer-converse with transferee-hangup with a Linksys/Sipura device), but use ## when unattended (blind) transfer (or transfer to the parking lot) is desired.

FreePBX "General Options"

Make sure that you set "t" option for "Asterisk Dial Command Options" in FreePBX's "General Settings" Menu, and for "Outbound Dial Command option" always use "T". If you are using "trwkhTRWKH" for both the options (which i was using for sometime and then i accidently found out one day) then even the person dialling in your number, or the person you called can transfer your call to any extension in that context.This is also a feature, as you can have your Agent on mobile be able to transfer the call to someone in office, but still it is very dangerous to allow people to fork calls from outside.

See also

Created by: steveh, Last modification: Fri 29 of Feb, 2008 (13:09 UTC) by bharat_samaria
Please update this page with new information, just login and click on the "Edit" or "Discussion" tab. Get a free login here: Register Thanks! - Find us on Google+