[asterisk-dev] murf: branch 1.4 r139347 - in /branches/1.4: main/pbx.c res/res_features.c

Steve Murphy murf at digium.com
Wed Sep 3 16:48:46 CDT 2008


> Russell Bryant wrote:
>> One issue with this patch is that app_dial is not the only place a 
>> bridge is performed.  In 1.4, app_queue and app_followme bridge calls as 
>> well.  In trunk, there are more places.
>
> Well, I guess it only matters if there is an option to continue in the 
> dialplan after the bridge.  That doesn't exist in those apps in 1.4.  I 
> think you can do that with Queue in trunk, though.  Also, take a look at 
> the Bridge application in trunk to see if that is affected.

Russell--

OK, I see that app_queue does indeed have a "continue" option, and coded for 
that.

I've moved all edits into branches:

team/murf/1.4-hexten
team/murf/trunk-hexten

So it will be easier for folks to follow.

In trunk, ast_bridge_call is called from:

./apps/app_dial.c:                      res = ast_bridge_call(chan, peer, &config);
./apps/app_queue.c:             bridge = ast_bridge_call(qe->chan,peer, &bridge_config);
./apps/app_followme.c:          res = ast_bridge_call(caller, outbound, &config);
./include/asterisk/features.h:int ast_bridge_call(struct ast_channel *chan, struct ast_channel *peer,struct ast_bridge_config *config);
./main/features.c:      ast_bridge_call(tobj->peer, tobj->chan, &tobj->bconfig);
./main/features.c:              res = ast_bridge_call(transferer, newchan, &bconfig);
./main/features.c:int ast_bridge_call(struct ast_channel *chan,struct ast_channel *peer,struct ast_bridge_config *config)
./main/features.c:              res = ast_bridge_call(chan, peer, &config);
./main/features.c:      ast_bridge_call_thread_launch(tobj);
./main/features.c:      ast_bridge_call(chan, final_dest_chan, &bconfig);


in features.c, the calls to ast_bridge_call occur in:

 builtin_atxfer()  [3 calls here]
 park_exec_full()
 action_bridge()
 bridge_exec()


The bridge_exec is the bridge app. It doesn't have a "keep going" or "continue" option; 
all it says is:

"Usage: Bridge(channel[,options])\n"
"	Allows the ability to bridge two channels via the dialplan.\n"
"The current channel is bridged to the specified 'channel'.\n"
"  Options:\n"
"    p - Play a courtesy tone to 'channel'.\n"
"This application sets the following channel variable upon completion:\n"
" BRIDGERESULT    The result of the bridge attempt as a text string, one of\n"
"           SUCCESS | FAILURE | LOOP | NONEXISTENT | INCOMPATIBLE\n";

So, it doesn't look like we need to do anything there.

murf



-- 
Steve Murphy
Software Developer
Digium
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3227 bytes
Desc: not available
Url : http://lists.digium.com/pipermail/asterisk-dev/attachments/20080903/06bbe61d/attachment.bin 


More information about the asterisk-dev mailing list