[asterisk-bugs] [JIRA] (ASTERISK-25846) Gracefully deal with Absent Stasis Apps

Andrew Nagy (JIRA) noreply at issues.asterisk.org
Tue Mar 15 12:54:56 CDT 2016


     [ https://issues.asterisk.org/jira/browse/ASTERISK-25846?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andrew Nagy updated ASTERISK-25846:
-----------------------------------

    Description: 
I was just reviewing
https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Stasis. I noticed there is a handy variable named {code}${STASISSTATUS}{code} returned when Stasis is finished (OR fails). However if I never register my stasis application and dial into the context where stasis is at once Asterisk hits stasis and realizes it can't talk to said app Asterisk just hangs up on the channel. I was hoping to be returned to the dialplan to be able to run a failover destination.

Quick Dialplan:
{code}
[ari-trunk]
exten => 45,1,Noop(Attempting to join test ari)
exten => 45,n,Macro(user-callerid,)
exten => 45,n,Stasis(test,45)
exten => 45,n,GotoIf($[${STASISSTATUS} = "FAILED"]?from-did-direct,1000,1)
exten => 45,n,GotoIf($[${STASISSTATUS} = "SUCCESS"]?app-blackhole,busy,1)
exten => 45,n,Answer
exten => 45,hint,Stasis:45
{code}

CLI:
{code}
    -- Executing [45 at from-internal:3] Stasis("PJSIP/1003-00000001",test,45") in new stack
  == Spawn extension (from-internal, 45, 3) exited non-zero on "PJSIP/1003-00000001"
    -- Executing [h at from-internal:1] Macro("PJSIP/1003-00000001","hangupcall") in new stack
{code}

I propose to to more gracefully handle this and just return to the dialplan so the creator can do something appropriate instead of just having Asterisk hang up the channel

  was:
I was just reviewing
https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Stasis. I noticed there is a handy variable named {code}${STASISSTATUS}{code} returned when Stasis is finished (OR fails). However if I never register my stasis application and dial into the context where stasis is at once Asterisk hits stasis and realizes it can¹t talk to said app Asterisk just hangs up on the channel.

Quick Dialplan:
{code}
[ari-trunk]
exten => 45,1,Noop(Attempting to join test ari)
exten => 45,n,Macro(user-callerid,)
exten => 45,n,Stasis(test,45)
exten => 45,n,GotoIf($[${STASISSTATUS} = "FAILED"]?from-did-direct,1000,1)
exten => 45,n,GotoIf($[${STASISSTATUS} = "SUCCESS"]?app-blackhole,busy,1)
exten => 45,n,Answer
exten => 45,hint,Stasis:45
{code}

CLI:
{code}
    -- Executing [45 at from-internal:3] Stasis("PJSIP/1003-00000001",test,45") in new stack
  == Spawn extension (from-internal, 45, 3) exited non-zero on "PJSIP/1003-00000001"
    -- Executing [h at from-internal:1] Macro("PJSIP/1003-00000001","hangupcall") in new stack
{code}

I propose to to more gracefully handle this and just return to the dialplan so the creator can do something appropriate instead of just having Asterisk hang up the channel


> Gracefully deal with Absent Stasis Apps
> ---------------------------------------
>
>                 Key: ASTERISK-25846
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-25846
>             Project: Asterisk
>          Issue Type: Improvement
>      Security Level: None
>    Affects Versions: 13.7.2
>            Reporter: Andrew Nagy
>            Severity: Minor
>
> I was just reviewing
> https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Stasis. I noticed there is a handy variable named {code}${STASISSTATUS}{code} returned when Stasis is finished (OR fails). However if I never register my stasis application and dial into the context where stasis is at once Asterisk hits stasis and realizes it can't talk to said app Asterisk just hangs up on the channel. I was hoping to be returned to the dialplan to be able to run a failover destination.
> Quick Dialplan:
> {code}
> [ari-trunk]
> exten => 45,1,Noop(Attempting to join test ari)
> exten => 45,n,Macro(user-callerid,)
> exten => 45,n,Stasis(test,45)
> exten => 45,n,GotoIf($[${STASISSTATUS} = "FAILED"]?from-did-direct,1000,1)
> exten => 45,n,GotoIf($[${STASISSTATUS} = "SUCCESS"]?app-blackhole,busy,1)
> exten => 45,n,Answer
> exten => 45,hint,Stasis:45
> {code}
> CLI:
> {code}
>     -- Executing [45 at from-internal:3] Stasis("PJSIP/1003-00000001",test,45") in new stack
>   == Spawn extension (from-internal, 45, 3) exited non-zero on "PJSIP/1003-00000001"
>     -- Executing [h at from-internal:1] Macro("PJSIP/1003-00000001","hangupcall") in new stack
> {code}
> I propose to to more gracefully handle this and just return to the dialplan so the creator can do something appropriate instead of just having Asterisk hang up the channel



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



More information about the asterisk-bugs mailing list