[asterisk-dev] [Code Review] 2393: Add directed pickup to features

rmudgett reviewboard at asterisk.org
Thu Apr 4 15:44:53 CDT 2013


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


Since this is a chan_skinny specific feature, it should not affect other channel drivers.

I think this feature could work this way:
1) Device requests feature.
2) Device supplies exten to attempt pickup.
3) Driver creates a channel.
4) Driver sets a channel variable with the requested exten to pickup.  Say SKINNY_PICKUP_EXTEN?
5) Driver starts dialplan at a location configured by the skinny.conf file for this feature.
6) Dialplan uses Pickup(${SKINNY_PICKUP_EXTEN}@context) to fetch the call.
7) If the pickup attempt was not successful, Pickup continues in the dialplan so the user could do something else like play a file.

At the very least, I don't think special directed pickup group options are needed.  The existing pickup groups and named pickup groups are sufficient to restrict the available extensions to select the requested exten.


- rmudgett


On March 28, 2013, 9:11 p.m., wedhorn wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/2393/
> -----------------------------------------------------------
> 
> (Updated March 28, 2013, 9:11 p.m.)
> 
> 
> Review request for Asterisk Developers.
> 
> 
> Repository: Asterisk
> 
> 
> Description
> -------
> 
> Added ast_pickup_call_directed to features. Included some refactoring of ast_pickup_call to reuse same code.
> 
> In order to use ast_pickup_call, the chan passed in must have the exten set of the intended target. Will only pickup the target if the exten's match and the pickupgroupdirected and callgroupdirected of the chans match.
> 
> Also add ast_channel_callgroupdirected and ast_channel_pickupgroupdirected functions (and set functions) including code to set both of these in skinny and sip.
> 
> Code to actually do a directed pickup included in skinny.
> 
> 
> Diffs
> -----
> 
>   /trunk/CHANGES 383948 
>   /trunk/channels/chan_sip.c 383948 
>   /trunk/channels/chan_skinny.c 383948 
>   /trunk/channels/sip/include/sip.h 383948 
>   /trunk/configs/sip.conf.sample 383948 
>   /trunk/configs/skinny.conf.sample 383948 
>   /trunk/include/asterisk/channel.h 383948 
>   /trunk/include/asterisk/features.h 383948 
>   /trunk/main/channel_internal_api.c 383948 
>   /trunk/main/features.c 383948 
> 
> Diff: https://reviewboard.asterisk.org/r/2393/diff/
> 
> 
> Testing
> -------
> 
> Directed pickup to non ringing skinny and non ringing sip device (with matching and unset groups). Returns without picking up.
> 
> Directed pickup to ringing skinny and ringing sip device, with matching groups, picks up call, with unmatching groups return without pickup.
> 
> 
> Thanks,
> 
> wedhorn
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20130404/195152e3/attachment.htm>


More information about the asterisk-dev mailing list