Skip to main content

UC Call Forwarding

Posted by shaun on Sun, 11/25/2007

I noticed that when I phoned a extension with call forwarding set (unconditional) and the call came from the zap, the call would not be forwarded....

-- Goto (macro-tl-userexten-base,s,127)
-- Executing Set("Zap/1-1", "FORWARD=") in new stack
-- Executing GotoIf("Zap/1-1", "1?notforwarded") in new stack
-- Goto (macro-tl-userexten-base,s,134)
-- Executing Set("Zap/1-1", "FORWARD=") in new stack
-- Executing ChanIsAvail("Zap/1-1", "SIP/222") in new stack
-- Executing GotoIf("Zap/1-1", "0?s-NA|1") in new stack

If the call came from another extension it would be forwarded correctly.

-- Goto (macro-tl-userexten-base,s,127)
-- Executing Set("SIP/201-b7002b70", "FORWARD=1") in new stack
-- Executing GotoIf("SIP/201-b7002b70", "0?notforwarded") in new stack
-- Executing Set("SIP/201-b7002b70", "__CALLFWD=1") in new stack
-- Executing Set("SIP/201-b7002b70", "FORWARD_NUM=04044444444) in new stack
-- Executing GotoIf("SIP/201-b7002b70", "0?notforwarded") in new stack

Can we get the same behavior regardless of where the call came from ?


Submitted by thirdlane on Sun, 11/25/2007 Permalink

Hi Shaun,

Is it an external call on an analog line, digital line or how does it enter the PBX?

Could you please provide more details?

Submitted by shaun on Mon, 11/26/2007 Permalink

The call comes in on analog (pots) line and is answered by exten 100 then transfered to 200 who has call forwarding on. The call then rings 200 phone and then eventually goes to voicemail. If call comes in on SIP (trunk) from outside or internal, and exten 100 answers and transfers to 200 the call is forwarded correctly. The phones are snom 320 and snom 300.

-Shaun

Submitted by shaun on Sun, 12/02/2007 Permalink

I re-did the sip scenario. 8880096004 is the outside sip caller. Call comes in from 8880096004, extension 100 picks up and transfers to 201. 201 has call forwarding set to 0401444555.

*CLI>

-- Stopped music on hold on SIP/8880096004-b70080b0

== Spawn extension (from-inside, 201, 0) exited non-zero on 'SIP/8880096004-b70080b0' in macro 'tl-ringgroup-all'

== Spawn extension (from-inside, 201, 0) exited non-zero on 'SIP/8880096004-b70080b0'

-- Executing Macro("SIP/8880096004-b70080b0", "tl-set-variables2|from-inside-redir") in new stack

Extension Changed 100 new state Idle for Notify User 201

-- Executing Set("SIP/8880096004-b70080b0", "tenant=") in new stack

Extension Changed 100 new state Idle for Notify User 501

-- Executing Set("SIP/8880096004-b70080b0", "CDR(userfield)=") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "MOH=native-random") in new stack

-- Executing GotoIf("SIP/8880096004-b70080b0", "1 ?setmoh") in new stack

-- Goto (macro-tl-set-variables2,s,6)

-- Executing SetMusicOnHold("SIP/8880096004-b70080b0", "native-random") in new stack

-- Executing Goto("SIP/8880096004-b70080b0", "from-inside-redir|201|1") in new stack

-- Goto (from-inside-redir,201,1)

== Channel 'SIP/8880096004-b70080b0' jumping out of macro 'tl-set-variables2'

-- Executing Macro("SIP/8880096004-b70080b0", "tl-multidevice-exten|SIP/201|201|SIP/201|") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "DIALED_NUMBER=201") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "RING_DEVICES=SIP/201&SIP/201") in new stack

-- Executing Macro("SIP/8880096004-b70080b0", "tl-userexten-base|SIP/201&SIP/201|201|") in new stack

-- Executing GotoIf("SIP/8880096004-b70080b0", "1?set_options") in new stack

-- Goto (macro-tl-userexten-base,s,7)

-- Executing Set("SIP/8880096004-b70080b0", "OPTIONS=rtT") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "THISEXT=TL/201") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "_CLIMYID=201") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "THISCHAN=TL/201") in new stack

-- Executing GotoIf("SIP/8880096004-b70080b0", "0?beenhere") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "_ORIG_EXTEN=201") in new stack

-- Executing Macro("SIP/8880096004-b70080b0", "tl-notify") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "ADDRESS=") in new stack

-- Executing NoOp("SIP/8880096004-b70080b0", "TL/201") in new stack

-- Executing GotoIf("SIP/8880096004-b70080b0", "1?s-exit|1") in new stack

-- Goto (macro-tl-notify,s-exit,1)

-- Executing MacroExit("SIP/8880096004-b70080b0", "") in new stack

-- Executing Goto("SIP/8880096004-b70080b0", "checkformat") in new stack

-- Goto (macro-tl-userexten-base,s,16)

-- Executing GotoIf("SIP/8880096004-b70080b0", "1?cont1") in new stack

-- Goto (macro-tl-userexten-base,s,18)

-- Executing Set("SIP/8880096004-b70080b0", "RECORD_CALLEE=") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "MY_CHAN=8880096004-b70080b0") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "MYEXTENSION=8880096004") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "MYID=8880096004") in new stack

-- Executing NoOp("SIP/8880096004-b70080b0", "8880096004") in new stack

-- Executing NoOp("SIP/8880096004-b70080b0", "8880096004") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "RECORD_CALLER=") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "VM=") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "VMT0=") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "CFNAEXT=") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "CFNAAN=") in new stack

-- Executing GotoIf("SIP/8880096004-b70080b0", "1?done_checkrecord") in new stack

-- Goto (macro-tl-userexten-base,s,47)

-- Executing NoOp("SIP/8880096004-b70080b0", "") in new stack

-- Executing NoOp("SIP/8880096004-b70080b0", "") in new stack

-- Executing NoOp("SIP/8880096004-b70080b0", "") in new stack

-- Executing NoOp("SIP/8880096004-b70080b0", "rtT") in new stack

-- Executing NoOp("SIP/8880096004-b70080b0", "") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "TIMEOUT=") in new stack

-- Executing GotoIf("SIP/8880096004-b70080b0", "0?next1") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "TIMEOUT=20") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "CDR(userfield)=") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "SCREEN=") in new stack

-- Executing GotoIf("SIP/8880096004-b70080b0", "1?getblock") in new stack

-- Goto (macro-tl-userexten-base,s,62)

-- Executing Set("SIP/8880096004-b70080b0", "BLOCK=") in new stack

-- Executing GotoIf("SIP/8880096004-b70080b0", "1?getrecord") in new stack

-- Goto (macro-tl-userexten-base,s,67)

-- Executing Set("SIP/8880096004-b70080b0", "RECORD=") in new stack

-- Executing NoOp("SIP/8880096004-b70080b0", "calleridnum=8880008001 ") in new stack

-- Executing GotoIf("SIP/8880096004-b70080b0", "1?screening") in new stack

-- Goto (macro-tl-userexten-base,s,100)

-- Executing GotoIf("SIP/8880096004-b70080b0", "1?recording") in new stack

-- Goto (macro-tl-userexten-base,s,125)

-- Executing GotoIf("SIP/8880096004-b70080b0", "1?forwarding") in new stack

-- Goto (macro-tl-userexten-base,s,127)

-- Executing Set("SIP/8880096004-b70080b0", "FORWARD=1") in new stack

-- Executing GotoIf("SIP/8880096004-b70080b0", "0?notforwarded") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "__CALLFWD=1") in new stack

-- Executing Set("SIP/8880096004-b70080b0", "FORWARD_NUM=0401444555") in new stack

-- Executing GotoIf("SIP/8880096004-b70080b0", "0?notforwarded") in new stack

-- Executing Dial("SIP/8880096004-b70080b0", "Local/0401444555@from-inside|20|rtT") in new stack

-- Called 0401444555@from-inside

-- Executing Macro("Local/0401444555@from-inside-d1a8,2", "tl-set-variables2|from-inside-redir") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "tenant=") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "CDR(userfield)=") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "MOH=native-random") in new stack

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "1 ?setmoh") in new stack

-- Goto (macro-tl-set-variables2,s,6)

-- Executing SetMusicOnHold("Local/0401444555@from-inside-d1a8,2", "native-random") in new stack

-- Executing Goto("Local/0401444555@from-inside-d1a8,2", "from-inside-redir|0401444555|1") in new stack

-- Goto (from-inside-redir,0401444555,1)

== Channel 'Local/0401444555@from-inside-d1a8,2' jumping out of macro 'tl-set-variables2'

-- Executing Macro("Local/0401444555@from-inside-d1a8,2", "vp-dialout-5-trunks|120|SIP/Vtrunk-SIP|ZAP/1|ZAP/2|SIP/Vtrunk-SIP|SIP/Vtrunk-SIP|||") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "DIALED_NUMBER=0401444555") in new stack

-- Executing Macro("Local/0401444555@from-inside-d1a8,2", "tl-dialout-base| 120|SIP/Vtrunk-SIP||||ZAP/1||||ZAP/2||||SIP/Vtrunk-SIP||||SIP/Vtrunk-SIP|||") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "status=") in new stack

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "1?enabled") in new stack

-- Goto (macro-tl-dialout-base,s,4)

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "i=2") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "MY_CHAN=0401444555@from-inside-d1a8,2") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "MYEXTENSION=0401444555@from") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "MYID=0401444555@from") in new stack

-- Executing NoOp("Local/0401444555@from-inside-d1a8,2", "MYID=0401444555@from") in new stack

-- Executing NoOp("Local/0401444555@from-inside-d1a8,2", "MYEXTENSION=0401444555@from") in new stack

-- Executing SetAMAFlags("Local/0401444555@from-inside-d1a8,2", "billing") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "RECORD=") in new stack

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "1?done_checkrecord") in new stack

-- Goto (macro-tl-dialout-base,s,21)

-- Executing NoOp("Local/0401444555@from-inside-d1a8,2", "RECORD=") in new stack

-- Executing NoOp("Local/0401444555@from-inside-d1a8,2", "TOUCH_MONITOR=") in new stack

-- Executing NoOp("Local/0401444555@from-inside-d1a8,2", "RECORD_OPTIONS=") in new stack

-- Executing NoOp("Local/0401444555@from-inside-d1a8,2", "RECORDING_FORMAT=wav") in new stack

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "1?calleridallowed") in new stack

-- Goto (macro-tl-dialout-base,s,34)

-- Executing NoOp("Local/0401444555@from-inside-d1a8,2", "CLIMYID=201") in new stack

-- Executing NoOp("Local/0401444555@from-inside-d1a8,2", "MYID=0401444555@from") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "CLI=8880096004") in new stack

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "1?chkcallfwd") in new stack

-- Goto (macro-tl-dialout-base,s,42)

-- Executing NoOp("Local/0401444555@from-inside-d1a8,2", "MYID=0401444555@from") in new stack

-- Executing NoOp("Local/0401444555@from-inside-d1a8,2", "INCOMINGCLI=8880008001") in new stack

-- Executing NoOp("Local/0401444555@from-inside-d1a8,2", "CALLFWD=1") in new stack

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "0?setcalleridasabove") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "CDR(accountcode)=") in new stack

-- Executing NoOp("Local/0401444555@from-inside-d1a8,2", "CFRETAINCLI=TL/201/CFRETAINCLI") in new stack

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "1?setcalleridasabove") in new stack

-- Goto (macro-tl-dialout-base,s,51)

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "0?nocallerid") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "CALLERID(num)=8880096004") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "temp=") in new stack

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "1?onetrunk|1") in new stack

-- Goto (macro-tl-dialout-base,onetrunk,1)

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "FULLNAME=SIP/Vtrunk-SIP") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "TRUNK=Vtrunk-SIP") in new stack

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "0?failed|1") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "TRUNK_STATUS=1") in new stack

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "0?next|1") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "ROUTE_PREPEND=") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "ROUTE_STRIP=") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "ROUTE_OPTIONS=") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "NUMBER_TO_DIAL=0401444555") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "TRUNK_DIALSTRING=") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "TRUNK_NAME=Vtrunk-SIP") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "TRUNK_PROTOCOL=SIP") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "TRUNK_STRIP=0") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "TRUNK_PREPEND=") in new stack

-- Executing Set("Local/0401444555@from-inside-d1a8,2", "CALLERID(num)=8880096004") in new stack

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "0?dial-CUSTOM|1") in new stack

-- Executing Goto("Local/0401444555@from-inside-d1a8,2", "dial-SIP|1") in new stack

-- Goto (macro-tl-dialout-base,dial-SIP,1)

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "1?NoOpt") in new stack

-- Goto (macro-tl-dialout-base,dial-SIP,4)

-- Executing GotoIf("Local/0401444555@from-inside-d1a8,2", "0?noarg") in new stack

-- Executing Dial("Local/0401444555@from-inside-d1a8,2", "SIP/0401444555@Vtrunk-SIP| 120") in new stack

-- Called 0401444555@Vtrunk-SIP

-- SIP/Vtrunk-SIP-081a48f0 is making progress passing it to Local/0401444555@from-inside-d1a8,2

-- Local/0401444555@from-inside-d1a8,1 is making progress passing it to SIP/8880096004-b70080b0

-- SIP/Vtrunk-SIP-081a48f0 is ringing

-- Local/0401444555@from-inside-d1a8,1 is ringing

*CLI>