[asterisk-dev] ARI Snoop

Matthew Jordan mjordan at digium.com
Sun Jul 19 16:02:42 CDT 2015


On Fri, Jul 17, 2015 at 10:14 AM, Phil Mickelson <phil at cbasoftware.com>
wrote:

> Hello,
>
> I've written a full answering service application with Asterisk at the
> center.  All of my interaction with Asterisk is through ARI.  Thank you so
> much for this feature!  Without it I wouldn't have been able to make this
> work!
>

Thanks! That's really great to hear. A lot of times it's hard to know
whether or not a feature is actually making people's lives easier or better
- it's always nice to know that it's working well!


>
> I've just implemented a new Snoop feature.  Without boring you with the
> details (unless you want them) I am able to Snoop on an operator regardless
> of whether or not they are on an active call.  However, the only way the
> Whisper option works is if they are on an actual call.  The only difference
> internally is there are two channels connected through a central bridge.
> Otherwise, the operator's channel is the only one in that bridge.
>

I'd definitely be interested in knowing what you've implemented - it's
always cool to hear how someone makes use of Asterisk and ARI!

I would expect the Whisper option to work regardless of the channel's
presence in a bridge. In both cases (snooping/whispering), the Snoop
operation works by "hooking" itself onto the target channel using an
audiohook. That audiohook feeds audio into/out of the target channel's
stream, which means that so long as audio is flowing in the intended
direction(s), it should get piped in/out.

There could be two things going on here:
1) There's a bug in the Whisper audiohook code or the Snoop code in ARI.
That's certainly possible, as it's one of the more complex parts of ARI.
2) The channel isn't answered or - internally - hasn't been told to send a
progress (183 w/SDP, etc.) notification. Ideally, we'd handle the latter of
those two cases automatically if a Snoop channel is attached to a channel
(which means that would be a bug as well) - but I'd be curious to know if
the channel is answered or not when you attach the Whispering Snoop channel
to it.


> Since I can hear the operator regardless of the current call situation I'm
> assuming there must be code in the Snoop option to mute the operator if a
> call is not active?
>
> Just to be sure, I setup the entire procedure using Swagger instead of my
> program and got the same results.  I also used the Delete Mute option to
> make sure the operator wasn't muted.
>
> Once the operator was on a live call I then had to run Snoop again and was
> able to Whisper to the operator.  I didn't check if I could still Whisper
> to the operator after the call ended.  I should.
>
> Am I right about the restriction for Whisper?  If not, any suggestions?
> And, if I am right, can a new option be added to allow Whisper to work
> without an active call?  And, if that would be a bounty type change if
> someone is interested in making it can you please let me know how much it
> would cost?
>

The wiki page on bug bounties outlines how that process works:

https://wiki.asterisk.org/wiki/display/AST/Asterisk+Bug+Bounties

I can't really say how much it would cost, as that's something that's
negotiated between the person offering the bounty and those who choose to
take it.


>
> Thank you for your time!  And, thank you again for ARI!!!
>
>
No problem! Hopefully we can figure out what is going on with your Whisper
scenario. If the channel is answered and the Whisper isn't working, please
do open up an issue and attach the logs illustrating it so we can't get to
the bottom of the problem.

Matt

-- 
Matthew Jordan
Digium, Inc. | Director of Technology
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: http://digium.com & http://asterisk.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20150719/657fdb77/attachment.html>


More information about the asterisk-dev mailing list