[asterisk-users] Timeout(absolute) not working on transfer

Geoff Lane geoff at gjctech.co.uk
Sun Dec 30 09:49:21 CST 2012


Hi All,

Asterisk 1.4.22.1 on CentOS 5

I've configured my dialplan to limit the maximum call length on
outgoing calls. I've done this as I get the first hour of each call
free with my bundle but I pay through the nose if the call goes over
an hour.

Family members who live overseas sometimes ask me to transfer them to
UK landline numbers, which is fine by me as it doesn't cost me
provided they don't exceed the hour limit. However, I noticed a few
days ago that a call from my son (who lives in Australia) that I
transferred didn't time out.

Relevant snippets of extensions.conf follow.

The incoming (via SIP) call fetches up at the following:
exten => [munged],1,Goto(main,1)

exten => main,1,Log(NOTICE, Prefilter: call from ${CALLERID(num)})
exten => main,n,PrivacyManager(2,10)
exten => main,n,GotoIf($["${PRIVACYMGRSTATUS}" = "FAILED"]?withheld,1)
exten => main,n,Log(NOTICE, Incoming call from ${CALLERID(num)})
exten => main,n,GotoIf($[${BLACKLIST()}]?banned,1)
exten => main,n,Set(CALLERID(name)=${DB(cidname/${CALLERID(num)})})
exten => main,n,Dial(${rgMain},${RINGTIME},t)
exten => main,n,Log(NOTICE, Call from ${CALLERID(num)} sent to voicemail)
exten => main,n,VoiceMail(main at default)

To transfer the call, I press # then dial the number, which is in the
form of 01nnn nnnnnn, and so should fetch up at the following:
exten => _01.,1,SET(Timeout(absolute)=3540)
exten => _01.,n,Dial(${UKGeographical}/${EXTEN},,g)    ; send anything preceded with 01 to UKGeographical

Am I missing something (e.g. Timeout(absolute) doesn't apply to
transferred calls) or can anyone spot something else that's allowing
the call to continue past the 59 minute set limit?

TIA,

-- 
Geoff




More information about the asterisk-users mailing list