Can i edit autohang up timeout instead of 20 s?

hi ,
i will explain my issue with an example ,

i made a simple test .
i connected my phone line with a telephone , and called this number from my mobile .
but before i answer the call from my telephone , i hanged the call from mobile .
note that as i hanged the call from my mobile , the phone stopped ringing , i mean there is no delay .

now lets talk about astersik,

now after installing this phone line in elastix server , and call it from mobile , and hangup from mobile before answering it from telephone ,
it takes about 20 seconds before stopping ringing !!!

why there is 20 seconds delay !!!

can i modify this value to something less that this value ??

it seems to me not a PSTN provider issue , cause i tested it without asterisk !!!
any ideas ??

with my best regards

If you are using DAHDI, with analogue lines, look into the ringtimeout parameter. However, the default is 8, not 20 seconds, and you might well need that for some ring cadences.

Otherwise, you are going to have to provide a lot more information about connectivity, together with detailed, timed, protocol logs.

hi daved ,
thanks very your reply

i searched about timeout and found two ringtimeout locations :
this value was 30 and changed it to 10
/etc/asterisk/sla.conf:;ringtimeout=10

also i found another vlaue in :
the value was 8000 and changed it to 1000

/etc/asterisk/chan_extra.conf:ringtimeout=1000

=================================

but im noting no changes in time delay above !!!

i do #amportal restart , does that enough to monitor the changes ??

The correct one is in chan_dahdi.conf. I am not familiar with your GUI, but I guess the GUI includes the second file you mention from there. The comments that go with the specimen form of that file say that you need a restart of Asterisk for it to take effect. As it is part of the GUI, not asterisk, I don’t know what amportal restart does, but I suspect it just restarts the server side of the GUI, not Asterisk.

Note. Anything less than a little over 4000 is likely to cause incoming calls in the USA to be dropped after every ring, as the silence interval is 4 seconds. Anything less than a little above 2000 will have the same effect in the UK. Several countries require over 5000. No country known to Asterisk uses less than 2000.

If you want to detect caller abandon any faster than that, you need ISDN, or SIP from an ITSP using ISDN. Loop start analogue lines were never intended to accurately signal the time a call was abandoned.

The other parameter is related to shared line appearances, and is the time before the call is abandoned whilst still ringing.

If you are really going to hand tune things, you need to get copies of the sample configuration files. If hand tuning is an option, they should have been included with your GUI, otherwise you will need to get them from the sources.

hi mr daved ,
i would like to say some things
1- amportal restart do restart ASTERISK ,
here is a sample output after typing amportal restart ,

[color=#FF00BF][root@mimo ~]# amportal restart
STOPPING ASTERISK
Asterisk ended with exit status 0
Asterisk shutdown normally.
Asterisk Stopped

STOPPING FOP SERVER
FOP Server Stopped
SETTING FILE PERMISSIONS
Permissions OK

STARTING ASTERISK
Asterisk Started

STARTING FOP SERVER
FOP Server Started
================================ [/color]

2- actually i modified the file chan_dahdi.conf with ringtimeout=5000 but the time still about 20 -25 seconds before clearing the line !!!

3-i would like to tell you that i make a test , i just call from my mobile and close , it just enter an ivr , and from FOP2 panel , i begin to calculate the time before the line be cleaned , but it never been 10 seconds or 5 seconds nor 15 ,
it always over than 20 seconds .

i would like to say another thing about during this issue ,
as the line still on my pbx and hasnt been cleaned yet , i can hear it by my FOP2 panel before it cleared , when i hear it
i hear both the ivr and the tone of ( tooot toooot toooot tooot ) both in the same time , and after 20-25 seconds , the line is cleared .
i think that a tone of tooot tone is comming and i think there is delay to undertand it from ASTERSIK >>>>This is just my personal analysis 8) 8)

i displayed my issue as simple as i can , i think there my be a value modified let the timeout more than 20 , or the detectioon of hangup from PSTN need to be modified ??? :unamused: :unamused: :unamused: :unamused:

anyway i will post my config files below :
[color=#00BF00]
[root@mimo ~]# cat /etc/asterisk/chan_dahdi.conf
[trunkgroups]

[channels]
context=from-pstn
signalling=fxs_ks
rxwink=300 ; Atlas seems to use long (250ms) winks
usecallerid=yes
hidecallerid=no
callwaiting=yes
usecallingpres=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=no
faxdetect=both
echotraining=800
;rxgain=0.0
;txgain=0.0
rxgain=1.2
txgain=2.5
callgroup=1
pickupgroup=1

;Uncomment these lines if you have problems with the disconection of your analog lines
busydetect=yes
busycount=1
;busycount=8 ; after using this , it mad an echo ;

;hanguponpolarityswitch=yes

;hanguponpolarityswitch=yes
immediate=yes
ringtimeout=5000
#include dahdi-channels.conf
#include chan_dahdi_additional.conf[/color]

================================================
[color=#0000BF][root@mimo ~]# cat /etc/asterisk/dahdi-channels.conf
; Autogenerated by /usr/sbin/dahdi_genconf on Sun Sep 2 14:38:10 2012
; If you edit this file and execute /usr/sbin/dahdi_genconf again,
; your manual changes will be LOST.
; Dahdi Channels Configurations (chan_dahdi.conf)
;
; This is not intended to be a complete chan_dahdi.conf. Rather, it is intended
; to be #include-d by /etc/chan_dahdi.conf that will include the global settings
;

; Span 1: ATCOM-1600P/16 “ATCOM AX1600P/800P Board 17” (MASTER)
;;; line="1 ATCOM-1600P/16/0 FXSKS (In use)"
signalling=fxs_ks
callerid=asreceived
group=0
context=from-zaptel
channel => 1
callerid=
group=
context=default

;;; line="2 ATCOM-1600P/16/1 FXSKS (In use)"
signalling=fxs_ks
callerid=asreceived
group=0
context=from-zaptel
channel => 2
callerid=
group=
context=default

;;; line="3 ATCOM-1600P/16/2 FXSKS (In use)"
signalling=fxs_ks
callerid=asreceived
group=0
context=from-zaptel
channel => 3
callerid=
group=
context=default

;;; line="4 ATCOM-1600P/16/3 FXSKS (In use)"
signalling=fxs_ks
callerid=asreceived
group=0
context=from-zaptel
channel => 4
callerid=
group=
context=default

;;; line="5 ATCOM-1600P/16/4 FXSKS (In use)"
signalling=fxs_ks
callerid=asreceived
group=0
context=from-zaptel
channel => 5
callerid=
group=
context=default

;;; line="6 ATCOM-1600P/16/5 FXSKS (In use)"
signalling=fxs_ks
callerid=asreceived
group=0
context=from-zaptel
channel => 6
callerid=
group=
context=default

;;; line="7 ATCOM-1600P/16/6 FXSKS (In use)"
signalling=fxs_ks
callerid=asreceived
group=0
context=from-zaptel
channel => 7
callerid=
group=
context=default

;;; line="8 ATCOM-1600P/16/7 FXSKS (In use)"
signalling=fxs_ks
callerid=asreceived
group=0
context=from-zaptel
channel => 8
callerid=
group=
context=default[/color]

my system specifications is :
[color=#FF4000]Kernel
Linux(i386)-2.6.18-238.12.1.el5

Elastix
elastix-2.2.0-14
elastix-firstboot-2.2.0-5
elastix-system-2.2.0-14
elastix-email_admin-2.2.0-9
elastix-vtigercrm-5.1.0-8
elastix-extras-2.0.4-4
elastix-asterisk-sounds-1.2.3-1
elastix-my_extension-2.2.0-5
elastix-agenda-2.2.0-5
elastix-a2billing-1.8.1-16
elastix-addons-2.2.0-4
elastix-im-2.0.4-2
elastix-pbx-2.2.0-14
elastix-security-2.2.0-7
elastix-reports-2.2.0-6
elastix-fax-2.2.0-4

RounCubeMail
RoundCubeMail-0.3.1-10

Mail
postfix-2.3.3-2.3.el5_6
cyrus-imapd-2.3.7-12.el5_7.1

IM
openfire-3.5.1-2

FreePBX
freePBX-2.8.1-7

Asterisk
asterisk-1.8.7.0-0
asterisk-perl-0.10-2
asterisk-addons-1.8.7.0-0

FAX
hylafax-4.3.10-2rhel5
iaxmodem-1.2.0-1.1

DRIVERS
dahdi-2.4.1.2-5
rhino-0.99.4-2.rc1
wanpipe-util-3.5.23-1[/color]

here i will post the debug :
i have 8 analog lines at my atcom card .
i will call from one line to another
i mean i have number xxx123
and number xxx124

both numbers are connected to asterisk at
i will call number xxx123 from number xxx124 and the result will be shown below :
from my extention 102 i perfomed the call :

note that for privacy i hided my number caller id with xxxx
[color=#008080]mimo*CLI>
== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
– Executing [8080xxxxxx@from-internal:1] Macro(“SIP/102-00000058”, “user-callerid,SKIPTTL,”) in new stack
– Executing [s@macro-user-callerid:1] Set(“SIP/102-00000058”, “AMPUSER=102”) in new stack
– Executing [s@macro-user-callerid:2] GotoIf(“SIP/102-00000058”, “0?report”) in new stack
– Executing [s@macro-user-callerid:3] ExecIf(“SIP/102-00000058”, “1?Set(REALCALLERIDNUM=102)”) in new stack
– Executing [s@macro-user-callerid:4] Set(“SIP/102-00000058”, “AMPUSER=102”) in new stack
– Executing [s@macro-user-callerid:5] Set(“SIP/102-00000058”, “AMPUSERCIDNAME=error”) in new stack
– Executing [s@macro-user-callerid:6] GotoIf(“SIP/102-00000058”, “0?report”) in new stack
– Executing [s@macro-user-callerid:7] Set(“SIP/102-00000058”, “AMPUSERCID=102”) in new stack
– Executing [s@macro-user-callerid:8] Set(“SIP/102-00000058”, “CALLERID(all)=“error” <102>”) in new stack
– Executing [s@macro-user-callerid:9] ExecIf(“SIP/102-00000058”, “0?Set(CHANNEL(language)=)”) in new stack
– Executing [s@macro-user-callerid:10] GotoIf(“SIP/102-00000058”, “1?continue”) in new stack
– Goto (macro-user-callerid,s,19)
– Executing [s@macro-user-callerid:19] Set(“SIP/102-00000058”, “CALLERID(number)=102”) in new stack
– Executing [s@macro-user-callerid:20] Set(“SIP/102-00000058”, “CALLERID(name)=error”) in new stack
– Executing [s@macro-user-callerid:21] NoOp(“SIP/102-00000058”, “Using CallerID “error” <102>”) in new stak
– Executing [8080xxxxxx@from-internal:2] NoOp(“SIP/102-00000058”, “Calling Out Route: outfrom909fax”) in new stk
– Executing [8080xxxxxx@from-internal:3] Set(“SIP/102-00000058”, “MOHCLASS=default”) in new stack
– Executing [8080xxxxxx@from-internal:4] Set(“SIP/102-00000058”, “_NODEST=”) in new stack
– Executing [8080xxxxxx@from-internal:5] Macro(“SIP/102-00000058”, “record-enable,102,OUT,”) in new stack
– Executing [s@macro-record-enable:1] GotoIf(“SIP/102-00000058”, “1?check”) in new stack
– Goto (macro-record-enable,s,4)
– Executing [s@macro-record-enable:4] ExecIf(“SIP/102-00000058”, “0?MacroExit()”) in new stack
– Executing [s@macro-record-enable:5] GotoIf(“SIP/102-00000058”, “0?Group:OUT”) in new stack
– Goto (macro-record-enable,s,15)
– Executing [s@macro-record-enable:15] GotoIf(“SIP/102-00000058”, “0?IN”) in new stack
– Executing [s@macro-record-enable:16] ExecIf(“SIP/102-00000058”, “0?MacroExit()”) in new stack
– Executing [s@macro-record-enable:17] NoOp(“SIP/102-00000058”, “Recording enable for 102”) in new stack
– Executing [s@macro-record-enable:18] Set(“SIP/102-00000058”, "CALLFILENAME=OUT102-20120908-201426-1347128066.4k
– Executing [s@macro-record-enable:19] Goto(“SIP/102-00000058”, “record”) in new stack
– Goto (macro-record-enable,s,23)
– Executing [s@macro-record-enable:23] MixMonitor(“SIP/102-00000058”, "OUT102-20120908-201426-1347128066.443.wavk
– Executing [s@macro-record-enable:24] Set(“SIP/102-00000058”, "CDR(userfield)=audio:OUT102-20120908-201426-1347k
– Executing [s@macro-record-enable:25] MacroExit(“SIP/102-00000058”, “”) in new stack
– Executing [8080xxxxxx@from-internal:6] Macro(“SIP/102-00000058”, “dialout-trunk,5,xxxxxx,”) in new stack
– Executing [s@macro-dialout-trunk:1] Set(“SIP/102-00000058”, “DIAL_TRUNK=5”) in new stack
– Executing [s@macro-dialout-trunk:2] GosubIf(“SIP/102-00000058”, “0?sub-pincheck,s,1”) in new stack
– Executing [s@macro-dialout-trunk:3] GotoIf(“SIP/102-00000058”, “0?disabletrunk,1”) in new stack
== Begin MixMonitor Recording SIP/102-00000058
– Executing [s@macro-dialout-trunk:4] Set(“SIP/102-00000058”, “DIAL_NUMBER=xxxxxx”) in new stack
– Executing [s@macro-dialout-trunk:5] Set(“SIP/102-00000058”, “DIAL_TRUNK_OPTIONS=tr”) in new stack
– Executing [s@macro-dialout-trunk:6] Set(“SIP/102-00000058”, “OUTBOUND_GROUP=OUT_5”) in new stack
– Executing [s@macro-dialout-trunk:7] GotoIf(“SIP/102-00000058”, “1?nomax”) in new stack
– Goto (macro-dialout-trunk,s,9)
– Executing [s@macro-dialout-trunk:9] GotoIf(“SIP/102-00000058”, “0?skipoutcid”) in new stack
– Executing [s@macro-dialout-trunk:10] Set(“SIP/102-00000058”, “DIAL_TRUNK_OPTIONS=”) in new stack
– Executing [s@macro-dialout-trunk:11] Macro(“SIP/102-00000058”, “outbound-callerid,5”) in new stack
– Executing [s@macro-outbound-callerid:1] ExecIf(“SIP/102-00000058”, “0?Set(CALLERPRES()=)”) in new stack
– Executing [s@macro-outbound-callerid:2] ExecIf(“SIP/102-00000058”, “0?Set(REALCALLERIDNUM=102)”) in new stack
– Executing [s@macro-outbound-callerid:3] GotoIf(“SIP/102-00000058”, “1?normcid”) in new stack
– Goto (macro-outbound-callerid,s,6)
– Executing [s@macro-outbound-callerid:6] Set(“SIP/102-00000058”, “USEROUTCID=”) in new stack
– Executing [s@macro-outbound-callerid:7] Set(“SIP/102-00000058”, “EMERGENCYCID=”) in new stack
– Executing [s@macro-outbound-callerid:8] Set(“SIP/102-00000058”, “TRUNKOUTCID=”) in new stack
– Executing [s@macro-outbound-callerid:9] GotoIf(“SIP/102-00000058”, “1?trunkcid”) in new stack
– Goto (macro-outbound-callerid,s,12)
– Executing [s@macro-outbound-callerid:12] ExecIf(“SIP/102-00000058”, “0?Set(CALLERID(all)=)”) in new stack
– Executing [s@macro-outbound-callerid:13] ExecIf(“SIP/102-00000058”, “0?Set(CALLERID(all)=)”) in new stack
– Executing [s@macro-outbound-callerid:14] ExecIf(“SIP/102-00000058”, “0?Set(CALLERID(all)=)”) in new stack
– Executing [s@macro-outbound-callerid:15] ExecIf(“SIP/102-00000058”, "0?Set(CALLERPRES()=prohib_passed_screen)"k
– Executing [s@macro-dialout-trunk:12] GosubIf(“SIP/102-00000058”, “0?sub-flp-5,s,1”) in new stack
– Executing [s@macro-dialout-trunk:13] Set(“SIP/102-00000058”, “OUTNUM=xxxxxx”) in new stack
– Executing [s@macro-dialout-trunk:14] Set(“SIP/102-00000058”, “custom=DAHDI/4”) in new stack
– Executing [s@macro-dialout-trunk:15] ExecIf(“SIP/102-00000058”, "0?Set(DIAL_TRUNK_OPTIONS=M(setmusic^default))k
– Executing [s@macro-dialout-trunk:16] Macro(“SIP/102-00000058”, “dialout-trunk-predial-hook,”) in new stack
– Executing [s@macro-dialout-trunk-predial-hook:1] MacroExit(“SIP/102-00000058”, “”) in new stack
– Executing [s@macro-dialout-trunk:17] GotoIf(“SIP/102-00000058”, “0?bypass,1”) in new stack
– Executing [s@macro-dialout-trunk:18] GotoIf(“SIP/102-00000058”, “0?customtrunk”) in new stack
– Executing [s@macro-dialout-trunk:19] Dial(“SIP/102-00000058”, “DAHDI/4/xxxxxx,300,”) in new stack
– Called DAHDI/4/xxxxxx
– DAHDI/4-1 answered SIP/102-00000058
– Starting simple switch on ‘DAHDI/3-1’
[Sep 8 20:14:34] DEBUG[26864]: chan_dahdi.c:1736 my_get_callerid: CallerID number: xxxxxx, name: (null), flags=4
– Executing [s@from-zaptel:1] NoOp(“DAHDI/3-1”, "Entering from-dahdi with DID == ") in new stack
– Executing [s@from-zaptel:2] Ringing(“DAHDI/3-1”, “”) in new stack
– Executing [s@from-zaptel:3] Set(“DAHDI/3-1”, “DID=s”) in new stack
– Executing [s@from-zaptel:4] NoOp(“DAHDI/3-1”, “DID is now s”) in new stack
– Executing [s@from-zaptel:5] GotoIf(“DAHDI/3-1”, “1?dahdiok:checkzap”) in new stack
– Goto (from-zaptel,s,9)
– Executing [s@from-zaptel:9] NoOp(“DAHDI/3-1”, “Is a DAHDI Channel”) in new stack
– Executing [s@from-zaptel:10] Set(“DAHDI/3-1”, “CHAN=3-1”) in new stack
– Executing [s@from-zaptel:11] Set(“DAHDI/3-1”, “CHAN=3”) in new stack
– Executing [s@from-zaptel:12] Macro(“DAHDI/3-1”, “from-dahdi-3,s,1”) in new stack
– Executing [s@macro-from-dahdi-3:1] NoOp(“DAHDI/3-1”, "Entering macro-from-dahdi-3 with DID = s and setting to:k
– Executing [s@macro-from-dahdi-3:2] Set(“DAHDI/3-1”, “__FROM_DID=xxxxxx”) in new stack
– Executing [s@macro-from-dahdi-3:3] Goto(“DAHDI/3-1”, “from-trunk,xxxxxx,1”) in new stack
– Goto (from-trunk,xxxxxx,1)
== Channel ‘DAHDI/3-1’ jumping out of macro ‘from-dahdi-3’
– Executing [xxxxxx@from-trunk:1] Set(“DAHDI/3-1”, “__FROM_DID=xxxxxx”) in new stack
– Executing [xxxxxx@from-trunk:2] Goto(“DAHDI/3-1”, “s,1”) in new stack
– Goto (from-trunk,s,1)
– Executing [s@from-trunk:1] ExecIf(“DAHDI/3-1”, “0?Set(__FROM_DID=s)”) in new stack
– Executing [s@from-trunk:2] Gosub(“DAHDI/3-1”, “app-blacklist-check,s,1”) in new stack
– Executing [s@app-blacklist-check:1] GotoIf(“DAHDI/3-1”, “0?blacklisted”) in new stack
– Executing [s@app-blacklist-check:2] Set(“DAHDI/3-1”, “CALLED_BLACKLIST=1”) in new stack
– Executing [s@app-blacklist-check:3] Return(“DAHDI/3-1”, “”) in new stack
– Executing [s@from-trunk:3] ExecIf(“DAHDI/3-1”, “1 ?Set(CALLERID(name)=xxxxxx)”) in new stack
– Executing [s@from-trunk:4] SetMusicOnHold(“DAHDI/3-1”, “netstreamad”) in new stack
– Executing [s@from-trunk:5] Set(“DAHDI/3-1”, “__MOHCLASS=netstreamad”) in new stack
– Executing [s@from-trunk:6] Set(“DAHDI/3-1”, “__CALLINGPRES_SV=allowed_not_screened”) in new stack
– Executing [s@from-trunk:7] Set(“DAHDI/3-1”, “CALLERPRES()=allowed_not_screened”) in new stack
– Executing [s@from-trunk:8] Goto(“DAHDI/3-1”, “ivr-3,s,1”) in new stack
– Goto (ivr-3,s,1)
– Executing [s@ivr-3:1] Set(“DAHDI/3-1”, “MSG=custom/1”) in new stack
– Executing [s@ivr-3:2] Set(“DAHDI/3-1”, “LOOPCOUNT=0”) in new stack
– Executing [s@ivr-3:3] Set(“DAHDI/3-1”, “__DIR-CONTEXT=”) in new stack
– Executing [s@ivr-3:4] Set(“DAHDI/3-1”, “_IVR_CONTEXT_ivr-3=”) in new stack
– Executing [s@ivr-3:5] Set(“DAHDI/3-1”, “_IVR_CONTEXT=ivr-3”) in new stack
– Executing [s@ivr-3:6] GotoIf(“DAHDI/3-1”, “0?begin”) in new stack
– Executing [s@ivr-3:7] Answer(“DAHDI/3-1”, “”) in new stack
– Executing [s@ivr-3:8] Wait(“DAHDI/3-1”, “1”) in new stack
– Executing [s@ivr-3:9] Set(“DAHDI/3-1”, “TIMEOUT(digit)=3”) in new stack
– Digit timeout set to 3.000
– Executing [s@ivr-3:10] Set(“DAHDI/3-1”, “TIMEOUT(response)=1”) in new stack
– Response timeout set to 1.000
– Executing [s@ivr-3:11] Set(“DAHDI/3-1”, “__IVR_RETVM=”) in new stack
– Executing [s@ivr-3:12] ExecIf(“DAHDI/3-1”, “1?Background(custom/1)”) in new stack
– <DAHDI/3-1> Playing ‘custom/1.slin’ (language ‘en’)
– Executing [h@macro-dialout-trunk:1] Macro(“SIP/102-00000058”, “hangupcall,”) in new stack
– Executing [s@macro-hangupcall:1] GotoIf(“SIP/102-00000058”, “0?endmixmoncheck”) in new stack
– Executing [s@macro-hangupcall:2] Set(“SIP/102-00000058”, "MIXMON_CALLFILENAME=/var/spool/asterisk/monitor/OUT1k
– Executing [s@macro-hangupcall:3] GotoIf(“SIP/102-00000058”, “1?defaultmixmondir”) in new stack
– Goto (macro-hangupcall,s,5)
– Executing [s@macro-hangupcall:5] System(“SIP/102-00000058”, "test -e /var/spool/asterisk/monitor/OUT102-201209k
– Executing [s@macro-hangupcall:6] NoOp(“SIP/102-00000058”, “SYSTEMSTATUS = SUCCESS”) in new stack
– Executing [s@macro-hangupcall:7] GotoIf(“SIP/102-00000058”, “1?endmixmoncheck”) in new stack
– Goto (macro-hangupcall,s,9)
– Executing [s@macro-hangupcall:9] NoOp(“SIP/102-00000058”, “End of MIXMON check”) in new stack
– Executing [s@macro-hangupcall:10] GotoIf(“SIP/102-00000058”, “1?nomeetmemon”) in new stack
– Goto (macro-hangupcall,s,15)
– Executing [s@macro-hangupcall:15] NoOp(“SIP/102-00000058”, “MEETME_RECORDINGFILE=”) in new stack
– Executing [s@macro-hangupcall:16] GotoIf(“SIP/102-00000058”, “1?noautomon”) in new stack
– Goto (macro-hangupcall,s,18)
– Executing [s@macro-hangupcall:18] NoOp(“SIP/102-00000058”, “TOUCH_MONITOR_OUTPUT=”) in new stack
– Executing [s@macro-hangupcall:19] GotoIf(“SIP/102-00000058”, “1?noautomon2”) in new stack
– Goto (macro-hangupcall,s,25)
– Executing [s@macro-hangupcall:25] NoOp(“SIP/102-00000058”, “MONITOR_FILENAME=”) in new stack
– Executing [s@macro-hangupcall:26] GotoIf(“SIP/102-00000058”, “1?skiprg”) in new stack
– Goto (macro-hangupcall,s,29)
– Executing [s@macro-hangupcall:29] GotoIf(“SIP/102-00000058”, “1?skipblkvm”) in new stack
– Goto (macro-hangupcall,s,32)
– Executing [s@macro-hangupcall:32] GotoIf(“SIP/102-00000058”, “1?theend”) in new stack
– Goto (macro-hangupcall,s,34)
– Executing [s@macro-hangupcall:34] Hangup(“SIP/102-00000058”, “”) in new stack
== Spawn extension (macro-hangupcall, s, 34) exited non-zero on ‘SIP/102-00000058’ in macro ‘hangupcall’
== Spawn extension (macro-dialout-trunk, h, 1) exited non-zero on ‘SIP/102-00000058’
– Hanging up on ‘DAHDI/4-1’
– Hungup ‘DAHDI/4-1’
== Spawn extension (macro-dialout-trunk, s, 19) exited non-zero on ‘SIP/102-00000058’ in macro ‘dialout-trunk’
== Spawn extension (from-internal, 8080xxxxxx, 6) exited non-zero on ‘SIP/102-00000058’
== MixMonitor close filestream
== End MixMonitor Recording SIP/102-00000058
– Remote UNIX connection
– Remote UNIX connection disconnected
– Executing [s@ivr-3:13] WaitExten(“DAHDI/3-1”, “,”) in new stack
– Timeout on DAHDI/3-1, going to ‘t’
– Executing [t@ivr-3:1] Goto(“DAHDI/3-1”, “loop,1”) in new stack
– Goto (ivr-3,loop,1)
– Executing [loop@ivr-3:1] Set(“DAHDI/3-1”, “LOOPCOUNT=1”) in new stack
– Executing [loop@ivr-3:2] GotoIf(“DAHDI/3-1”, “0?hang,1”) in new stack
– Executing [loop@ivr-3:3] Goto(“DAHDI/3-1”, “ivr-3,s,begin”) in new stack
– Goto (ivr-3,s,9)
– Executing [s@ivr-3:9] Set(“DAHDI/3-1”, “TIMEOUT(digit)=3”) in new stack
– Digit timeout set to 3.000
– Executing [s@ivr-3:10] Set(“DAHDI/3-1”, “TIMEOUT(response)=1”) in new stack
– Response timeout set to 1.000
– Executing [s@ivr-3:11] Set(“DAHDI/3-1”, “__IVR_RETVM=”) in new stack
– Executing [s@ivr-3:12] ExecIf(“DAHDI/3-1”, “1?Background(custom/1)”) in new stack
– <DAHDI/3-1> Playing ‘custom/1.slin’ (language ‘en’)
== Spawn extension (ivr-3, s, 12) exited non-zero on ‘DAHDI/3-1’
– Executing [h@ivr-3:1] Hangup(“DAHDI/3-1”, “”) in new stack
== Spawn extension (ivr-3, h, 1) exited non-zero on ‘DAHDI/3-1’
– Hanging up on ‘DAHDI/3-1’
– Hungup ‘DAHDI/3-1’[/color]

You scraped the screen, rather than using the log files, so there is no usable timing.

You never mentioned the SIP channel.

DAHDI/3 is not ringing, it is answered. It has to be answered because it is looking for DTMF digits. I am pretty sure that this:

means that it is trying to do the digit handling itself.

You don’t appear to have any hangup detection options set. I can’t tell you what they should be because I don’t know what your PSTN operator uses.

WIthout going into too much detail with respect to the Elastix code, it looks like the 20 seconds is the timeout on failing to receive digits.

I’d suggest raising the question of changing the incomplete number timeout with Elastix.

If you are using supported analogue cards, I would ask the commercial support department of the vendor how they should be configured for disconnect supervision with the particular PSTN access product that you are using (country, operator, type of of service).

Your trace is not a protocol trace.

hi david ,
did you mean that the 20 senconds is ivr and elastix issue and has no relation to asterisk ???
if yes , wts the benefet of using the default 8 seconds of autohangup ?

please tell me what logs and files you need and i will post display them .

i really thanking you for your cooperation and your support .
you gave me deep help & wish to reach the end and solve the problem . :laughing: :laughing:

regards

The 8 seconds is how long Asterisk will wait without seeing ringing current before assuming ringing has stopped. You originally said that it was still ringing, in which case it would have been relevant, but it looks as though the call has been answered and Asterisk is generating ringback, so there will be no ringing current.