[asterisk-app-dev] WebSocket Stasis Control Best Practice

Krandon krandon.bruse at gmail.com
Tue Jul 8 15:35:50 CDT 2014



-- 
KB


On Tuesday, July 8, 2014 at 3:08 PM, Matthew Jordan wrote:

> On Tue, Jul 8, 2014 at 1:40 PM, Krandon <krandon.bruse at gmail.com (mailto:krandon.bruse at gmail.com)> wrote:
> > Hey guys,
> > 
> > Scale testing has been going very well. I will have some prelim numbers
> > soon. You guys are on top of it. I found one small bug - a crash related to
> > string length of the request. I went to Jira to report it, updated Asterisk
> > from 3 weeks ago to now, saw there was a patch and the bug was already
> > fixed. A+!
> > 
> > I do have a implementation question. I am currently using Websockets to
> > create the call request and dump it into Stasis. However, if the initial leg
> > A call fails (for whatever reason) then I never see the call come into the
> > Stasis app. This is to be expected, as the App has not been invoked. What's
> > the best way to get the status of that first call? (SIP code would be great,
> > but not necessary first time around)
> > 
> 
> 
> Are you Originating a Local channel from ARI?
> 
> If so, we just made a bug fix (going out in 12.4.0) where the half of
> the Local channel that goes off into dialplan will also be subscribed
> to. The other half will always go into the Stasis application first,
> so that gives you something that you're subscribed to that is *also*
> doing your dialplan call.
> 
> If calling something directly (like a PJSIP endpoint or a SIP peer),
> then I'd expect you to be subscribed to that channel if you told it
> you wanted it in your Stasis app when it answered. That should give
> you a ChannelDestroyed event at the very least - if not, that sounds
> buggy.
> 
Hey Matthew,

Right now, we POST to /channels to create a new channel. Currently, the endpoint is SIP/provider/number - we also define the extension/context/priority to drop it into the dial plan for AMD, followed by the Stasis app. We may have it call the Stasis app first, then continue to dial plan, and stasis again - but there just may be a better way. I will go back and test, but I believe even when we originated a channel through WebSockets with the Stasis App as the argument, if the call failed completely (no answer), then we never got anything from it. I'll double check.

The ChannelDestroyed event would be good, we can work from that. Good to know on the local channel side, as we have considered doing that as well.
> 
> -- 
> Matthew Jordan
> Digium, Inc. | Engineering Manager
> 445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
> Check us out at: http://digium.com & http://asterisk.org
> 
> _______________________________________________
> asterisk-app-dev mailing list
> asterisk-app-dev at lists.digium.com (mailto:asterisk-app-dev at lists.digium.com)
> http://lists.digium.com/cgi-bin/mailman/listinfo/asterisk-app-dev
> 
> 


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-app-dev/attachments/20140708/758b7ac5/attachment.html>


More information about the asterisk-app-dev mailing list