[asterisk-bugs] [JIRA] (ASTERISK-23549) Blind Transfer faliure when using AGI

Rusty Newton (JIRA) noreply at issues.asterisk.org
Tue Apr 8 16:14:18 CDT 2014


    [ https://issues.asterisk.org/jira/browse/ASTERISK-23549?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=217147#comment-217147 ] 

Rusty Newton commented on ASTERISK-23549:
-----------------------------------------

I noticed, just comparing verbose messages between an instance where the scenario works and where it fails the following:

In a working scenario we see:

{noformat}
    -- Channel SIP/6004-00000019 left 'native_rtp' basic-bridge <e0cac3f7-6699-4885-a5b3-6975e1fb40b8>
<SIP/6001-00000018>AGI Tx >> 200 result=0
    -- <SIP/6001-00000018>AGI Script /root/asterisk.sh completed, returning 4
  == Spawn extension (agi-test-context, 12, 1) exited non-zero on 'SIP/6001-00000018'
    -- Executing [12 at agi-test-context:1] Dial("SIP/6001-00000018", "SIP/6002,45,Tt") in new stack
{noformat}

In the failing scenario we see:

{noformat}
    -- Channel SIP/6004-0000001c left 'native_rtp' basic-bridge <d2e652ed-2565-4201-a479-7a0c356d9bbf>
<SIP/6001-0000001b>AGI Tx >> 200 result=0
<SIP/6001-0000001b>AGI Rx << EXEC Hangup
    -- AGI Script Executing Application: (Hangup) Options: ()
<SIP/6001-0000001b>AGI Tx >> 200 result=-1
[Apr  8 16:05:27] ERROR[20234][C-00000009]: utils.c:1329 ast_carefulwrite: write() returned error: Broken pipe
    -- <SIP/6001-0000001b>AGI Script /root/asterisk.sh completed, returning 4
  == Spawn extension (agi-test-context, 12, 1) exited non-zero on 'SIP/6001-0000001b'
    -- Executing [12 at agi-test-context:1] Dial("SIP/6001-0000001b", "SIP/6002,45,Tt") in new stack
{noformat}

Does look like something is jumping the gun, resulting in unpredictable behavior.

> Blind Transfer faliure when using AGI
> -------------------------------------
>
>                 Key: ASTERISK-23549
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-23549
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>    Affects Versions: SVN, 11.8.1, 12.1.1
>            Reporter: Maciej Krajewski
>         Attachments: asterisk.sh, full_failing.txt, full.gz, full_working.txt
>
>
> Blind Transfers fails when it is  done by B side and you are using AGI in dialplan.
> I've made some additional tests, the problem occurs only if AGI hangups the connection (EXEC HANGUP) at the end.
> The problem did not occur in Asterisk 1.8.19.1 (I haven't checked in later versions).
> I've attached the logs and made a simple AGI in bash to recreate this situation.
> The dialplan should look like this:
> {noformat}
> exten => h,1,NoOP("po AGI ===================="${EXTEN}" "${ORGDEST}");
> exten => h,2,Hangup
> exten => t,1,Hangup(18)
> exten => T,1,Hangup(18)
> exten => 12,1,Dial(SIP/test002,45,Tt)
> exten => 12,n,Hangup()
> exten => 13,1,Dial(SIP/test003,45,Tt)
> exten => 13,n,Hangup()
> exten => 14,1,Dial(SIP/test004,45,Tt)
> exten => 14,2,Hangup()
> exten => 1,1,AGI(/root/asterisk.sh)
> same => n,Hangup()
> {noformat}
> The problem does not occur if transfer is made by side A.
> The problem does not occur if AGI does not send HANGUP at the end.
> Call Scenario in log:
> test003 dials 1 (calls to test004), test004 BT to test002 (dials 12). All calls are disconnected.



--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list