[asterisk-dev] [Code Review] Fix up indications issues related to redirects

Joshua Colp jcolp at digium.com
Mon Dec 15 08:26:25 CST 2008


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.digium.com/r/90/#review224
-----------------------------------------------------------

Ship it!


Looks good!

- Joshua


On 2008-12-15 08:12:37, Russell Bryant wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviewboard.digium.com/r/90/
> -----------------------------------------------------------
> 
> (Updated 2008-12-15 08:12:37)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Summary
> -------
> 
> This patch was written to resolve issue #13747.
> 
> The issue that was reported was about a case where a RINGING channel got redirected to an extension to pick up a call from parking.  Once the parked call got taken out of parking, it heard silence until the other side answered.  Ideally, the caller that was parked would get a ringing indication.  This patch fixes this case so that the caller receives ringback once it comes out of parking until the other side answers.
> 
> The fixes are:
> 
> 1) Make sure we remember that a channel was an outgoing channel when doing a masquerade.  This prevents an erroneous ast_answer() call on the channel, which causes a bogus 200 OK to be sent in the case of SIP.
> 
> 2) Add some additional comments to explain related parts of code.
> 
> 3) Update the handling of the ast_channel visible_indication field.  Storing values that are not stateful is pointless.  Control frames that are events or commands should be ignored.
> 
> 4) When a bridge first starts, check to see if the peer channel needs to be given ringing indication because the calling side is still ringing.
> 
> 
> This addresses bug 13747.
>     http://bugs.digium.com/view.php?id=13747
> 
> 
> Diffs
> -----
> 
>   /branches/1.4/main/channel.c 164200 
>   /branches/1.4/res/res_features.c 164200 
> 
> Diff: http://reviewboard.digium.com/r/90/diff
> 
> 
> Testing
> -------
> 
> 1) SIP/5001 calls SIP/5004
> 2) SIP/5001 transfers SIP/5004 to parking
> 
> (5004 is now parked, 5001 idle)
> 
> 3) Originate an outbount call to SIP/5001.
> 4) Redirect the ringing channel to the proper extension to pick up the parked call.
> 
> Verified that after #4, 5001 was still ringing, and that 5004 received ringback.
> 
> 5) Answer SIP/5001
> 
> Verified that the callers could now talk as usual
> 
> 
> Thanks,
> 
> Russell
> 
>




More information about the asterisk-dev mailing list