[asterisk-dev] [Code Review] Named call pickup groups. Fixes, missing functionality, and improvements.

Alec Davis reviewboard at asterisk.org
Fri Sep 14 00:33:05 CDT 2012


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/2112/#review7061
-----------------------------------------------------------


first look seems ok. 

Just nit picking.
Yet to test it.
Surprised that multiple calls being pickup by multiple extensions failed, I could have sworn that it worked when call_pickup was reworked. 


/trunk/main/channel.c
<https://reviewboard.asterisk.org/r/2112/#comment13656>

    spelling: specified



/trunk/main/channel.c
<https://reviewboard.asterisk.org/r/2112/#comment13655>

    why not 
    	for ((it = ao2_iterator_init(grp, 0)); (ng = ao2_iterator_next(&it)); ao2_ref(ng, -1)) { 
    
    In other words, the orignal was easier to read, and achieved the same.
    
    The a02_iterator_next is evaluated before the loop is executed.
    


- Alec


On Sept. 13, 2012, 6:52 p.m., rmudgett wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/2112/
> -----------------------------------------------------------
> 
> (Updated Sept. 13, 2012, 6:52 p.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Summary
> -------
> 
> * ASTERISK-20383
> Missing named call pickup group features:
> 
> CHANNEL(callgroup) - Need CHANNEL(namedcallgroup)
> CHANNEL(pickupgroup) - Need CHANNEL(namedpickupgroup)
> Pickup() - Needs to also select from named pickup groups.
> 
> * ASTERISK-20384
> Using the pickupexten, the pickup channel selection could fail even though there was a call it could have picked up. In a call pickup race when there are multiple calls to pickup and two extensions try to pickup a call, it is conceivable that the loser will not pick up any call even though it could have picked up the next oldest matching call.
> 
> Regression because of the named call pickup group feature.
> 
> * See ASTERISK-20386 for the improvements.
> 
> * Fixed some locking issues in CHANNEL().
> 
> 
> This addresses bugs ASTERISK-20383, ASTERISK-20384 and ASTERISK-20386.
>     https://issues.asterisk.org/jira/browse/ASTERISK-20383
>     https://issues.asterisk.org/jira/browse/ASTERISK-20384
>     https://issues.asterisk.org/jira/browse/ASTERISK-20386
> 
> 
> Diffs
> -----
> 
>   /trunk/apps/app_directed_pickup.c 373055 
>   /trunk/funcs/func_channel.c 373055 
>   /trunk/include/asterisk/channel.h 373055 
>   /trunk/include/asterisk/features.h 373055 
>   /trunk/main/channel.c 373055 
>   /trunk/main/features.c 373055 
> 
> Diff: https://reviewboard.asterisk.org/r/2112/diff
> 
> 
> Testing
> -------
> 
> Tested call pickupexten, Pickup(), CHANNEL(namedcallgroup), and CHANNEL(namedpickupgroup) for named call group functionality.
> 
> 
> Thanks,
> 
> rmudgett
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20120914/8583dfd2/attachment-0001.htm>


More information about the asterisk-dev mailing list