Summary:ASTERISK-03634: Ability to bridge a call from the Manager API
Reporter:Carl de Billy (cdebilly)Labels:
Date Opened:2005-03-05 22:08:53.000-0600Date Closed:2011-06-07 14:05:07
Versions:Frequency of
Environment:Attachments:( 0) bridge.patch.diff.txt
( 1) new_Bridge_Function.txt
Description:It should be possible to bridge two channels together using the Manager API.

Like the "Redirect" Manager command, but instead of calling the ast_async_goto() function for both Channel & ExtraChannel, this new command could use ast_bridge_call(chan1, chan2) to bridge the two channels.
Comments:By: Carl de Billy (cdebilly) 2005-03-06 00:20:54.000-0600

I just modified the "manager.c" file to add the Bridge function to the Manager API.  (see new_Brisge_Function.txt)

I now want an asterisk expert to check the change and valide that it's a good way to do it.

I did it on the following version : Asterisk CVS-HEAD-03/06/05-06:00:25

edited on: 03-06-05 07:51

By: nick (nick) 2005-03-06 09:06:49.000-0600

Patches need to be disclaimed and filed in diff -u form.

By: Carl de Billy (cdebilly) 2005-03-06 13:48:52.000-0600

Ok, I just sign the Disclaimer (Carl de Billy) and it's faxed to the number given.

Now, I just add an attachment including the diff file for the patch I did.  Could someone tell me if I'm doing the right thing ?

By: nick (nick) 2005-03-06 17:22:22.000-0600

Yes, the patch is in the right form and applied cleanly for me. (just a tip, you can do a 'cvs diff -u' and not have to worry about having an older verison around...)


By: Carl de Billy (cdebilly) 2005-03-10 14:14:29.000-0600

This patch is not working well...  I have problem with it.

I'm sorry for having put it there.  I'm currently fixing it.

I'll post another one whn I'll be done with it.  I think I'll use another approach : to use a new "Bridge" application command instead of a Manager API Action.

edited on: 03-10-05 14:15

By: Mark Spencer (markster) 2005-03-12 13:03:33.000-0600

There are a few problems with this patch?

1) This patch locs both channels at the same time without protection.  Not a good thing to do as there is a higher risk of a deadlock.

2) This patch simply finds the channels and attempts to bridge them without somehow taking control of them away from whatever thread is currently managing them.  The "proper" way to do that is to create a *new* channel and then masquerade the channels you want *into* the new ones, and then bridge the new ones.

By: Mark Spencer (markster) 2005-03-30 01:05:17.000-0600

Reopen if you want to continue development of this patch.