[asterisk-dev] [Code Review] F option for bridge application
Mark Michelson
reviewboard at asterisk.org
Thu Mar 22 10:46:22 CDT 2012
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/1825/#review5852
-----------------------------------------------------------
/trunk/include/asterisk/utils.h
<https://reviewboard.asterisk.org/r/1825/#comment10692>
\param, not \brief
/trunk/main/features.c
<https://reviewboard.asterisk.org/r/1825/#comment10693>
Doing this is redundant. Both ast_goto_if_exists() and ast_parseable_goto() do the same thing. The difference is that ast_goto_if_exists() takes a separated context, exten, and priority whereas ast_parseable_goto() takes a comma-separated string.
Take a look at how the F() option is implemented in app_dial().
- Mark
On March 22, 2012, 9:37 a.m., jrose wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviewboard.asterisk.org/r/1825/
> -----------------------------------------------------------
>
> (Updated March 22, 2012, 9:37 a.m.)
>
>
> Review request for Asterisk Developers, Mark Michelson and Matt Jordan.
>
>
> Summary
> -------
>
> Similar to the F option added to queue, this adds a new option to the bridge application to transfer the party that gets bridged upon (awkwardly worded maybe) to a position in the dialplan specified by the bridge F option from the perspective of the channel that bridged.
>
> Also moves a shared function from a couple of places for app_dial and app_queue into utils.
>
>
> This addresses bug ASTERISK-19282.
> https://issues.asterisk.org/jira/browse/ASTERISK-19282
>
>
> Diffs
> -----
>
> /trunk/apps/app_dial.c 360188
> /trunk/apps/app_queue.c 360188
> /trunk/include/asterisk/utils.h 360188
> /trunk/main/features.c 360188
> /trunk/main/utils.c 360188
>
> Diff: https://reviewboard.asterisk.org/r/1825/diff
>
>
> Testing
> -------
>
> A sip phone would dial the following extension:
> exten => 045,1,NoOp(BindBape)
> exten => 045,2,Answer()
> exten => 045,3,Set(GLOBAL(CHANBAPE)=${CHANNEL})
> exten => 045,4,Playback(tt-weasels)
> exten => 045,5,Wait(30)
> exten => 045,6,HangUp()
>
>
> From here, a second phone would dial any of these extensions:
> exten => 046,1,NoOp(BrideBape)
> exten => 046,2,Answer()
> exten => 046,3,Bridge(${CHANBAPE}, F(5))
> exten => 046,4,Playback(tt-monkeys)
> exten => 046,5,NoOp(Finish!)
> exten => 046,6,NoOp(Finish More!)
>
> exten => 047,1,NoOp(BridgeBape2)
> exten => 047,2,Answer()
> exten => 047,3,Bridge(${CHANBAPE}, F)
> exten => 047,4,Playback(tt-allbusy)
> exten => 047,5,NoOp(BridgeBape2 finish)
>
> exten => 048,1,NoOp(BridgeBape3)
> exten => 048,2,Answer()
> exten => 048,3,Bridge(${CHANBAPE}, F(049,4))
> exten => 048,4,NoOp(Failure)
>
> exten => 050,1,NoOp(BrigeBape4)
> exten => 050,2,Answer()
> exten => 050,3,Bridge(${CHANBAPE}, F(bridgetestcontext,20,1))
>
>
> Also this stuff:
> exten => 049,1,NoOp(Failure)
> exten => 049,2,NoOp(Failure)
> exten => 049,3,NoOp(Failure)
> exten => 049,4,Playback(tt-weasels)
> exten => 049,5,NoOp(BridgeBape3 Success)
>
> [bridgetestcontext]
> exten => 20,1,NoOp(Successful bape4)
> exten => 20,n,Playback(tt-somethingwrong)
>
>
> For each of these cases, I just checked to make sure that hanging up the bridger resulted in the bridged party getting sent to the expected position.
>
> There will be automated tests added for bridging in general as well as for this feature into testsuite soon as well.
>
>
> Thanks,
>
> jrose
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20120322/1529f603/attachment-0001.htm>
More information about the asterisk-dev
mailing list