[asterisk-bugs] [JIRA] (ASTERISK-16352) [patch] Dialplan execution stops after awhile on an attended transfer by the calling party (with use of Dial 'g' option)
Matt Jordan (JIRA)
noreply at issues.asterisk.org
Thu Feb 26 09:19:35 CST 2015
[ https://issues.asterisk.org/jira/browse/ASTERISK-16352?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=167971#comment-167971 ]
Matt Jordan edited comment on ASTERISK-16352 at 2/26/15 9:19 AM:
-----------------------------------------------------------------
It appears my machine just got a lot quicker (If I knew how, I would have sold my knowledge to Intel ;-) )
Anyway, it explains why I wasn't able to reproduce the problem.
Simply increasing the While loop to count until 2000 does the trick or like I did, include a command that takes a little longer to execute. Like this ODBC call:
{noformat}
exten = s,n,Set(RESULT=${ODBC_CST(SELECT callerid FROM device WHERE id= '\1'\)})
{noformat}
All of which will help if you want to see the error occur...
HINT: Don't run Asterisk in the background, it could make your CLI output incomplete. just start it using "asterisk -vvvc"
was (Author: ramonpeek):
It appears my machine just got a lot quicker (If I knew how, I would have sold my knowledge to Intel ;-) )
Anyway, it explains why I wasn't able to reproduce the problem.
Simply increasing the While loop to count until 2000 does the trick or like I did, include a command that takes a little longer to execute. Like this ODBC call:
exten = s,n,Set(RESULT=${ODBC_CST(SELECT callerid FROM device WHERE id= '\1'\)})
All of which will help if you want to see the error occur...
HINT: Don't run Asterisk in the background, it could make your CLI output incomplete. just start it using "asterisk -vvvc"
> [patch] Dialplan execution stops after awhile on an attended transfer by the calling party (with use of Dial 'g' option)
> -------------------------------------------------------------------------------------------------------------------------
>
> Key: ASTERISK-16352
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-16352
> Project: Asterisk
> Issue Type: Bug
> Components: PBX/General
> Reporter: Ramon Peek
> Severity: Minor
> Attachments: debug_log2.tar.gz, patch.diff
>
>
> Dialplan execution stops after awhile on an attended transfer by the calling party (with use of Dial() command 'g' option)
> This applies to systems with large dialplans (which we use), small dialplans do not seem to encounter much problems, due to the delay in SIP messaging.
> If traced, you can see the after Asterisk receives a SIP BYE message, the dialplan execution is immediately stopped even though there are other priorities to evaluate in the dialplan.
> SEE STEPS TO REPRODUCE (in advanced view mode)
> *STEPS TO REPRODUCE*
> I use this dialplan:
> {noformat}
> exten = 801,1,Dial(SIP/401,15,g)
> exten = 801,n,Goto(test,s,1)
> exten = 802,1,Dial(SIP/402,15,g)
> exten = 802,n,Goto(test,s,1)
> exten = 803,1,Dial(SIP/403,15,g)
> exten = 803,n,Goto(test,s,1)
> exten = h,1,Goto(test,s,1)
> [test]
> exten = s,1,Set(COUNT=1)
> exten = s,n,While($[${COUNT} <= 1000])
> exten = s,n,Noop(Waiting loop started for issue 1321 - counter value = ${COUNT})
> exten = s,n,Set(COUNT=$[${COUNT} + 1])
> exten = s,n,EndWhile
> exten = s,n,Hangup
> {noformat}
> Then:
> * From peer 403 (extension 803) dial 801 (peer 401) and answer.
> * Put call on Hold at 403
> * From peer 403 dial 802 (peer 402) and answer.
> * transfer the call.. (SIP REFER)
> Notice that the dialplan execution stops before the counter reaches 1000.
> NOTE:
> -----
> Please note that this example may seem ludicrous. However in my dialplan I use many ODBC calls that take up some time to execute, which is why I was confronted with this issue.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list