I am using call files and the ConfBridge app to bring multiple pre-defined extensions into a confbridge.
The initiating phone gets dumped in immediately and hears the ringing of all other outbound calls in the call files. I can see the rR option to Dial, but do not know how to negate it. I also see a bunch of Google results saying to use a Local channel and never answer it, but I do not know how to accomplish that.
My dialplan basically answers and then copies the call files to spool and then puts the caller into the bridge while the call files get executed and dial RingCentral extensions and dumps them into the same conference when they answer.
Longer version. I don’t believe you are dialling extensions, otherwise you would be very familiar with local channels. On the other hand I cannot work out how you end up hearing ringback tone in the conference unless you are using a local channel, on the A side, to join the conference.
I’d expect you to make the A side of the call be the endpoint, in which case the B side processing won’t happen, and it won’t get added to the conference, until it has stopped ringing, Please provide details of what you’ve actually done, and reasons for doing it hat way.
The only other way I can imagine ringback being sent to the conference is if the provider actually answers the call immediately, in which case all bets are off, because Asterisk doesn’t listen to the tone, but simply considers the call answered. In that case, even the music on hold, or local channel) hacks won’t work.
(If you are really calling extensions, make sure that the extension dialplan doesn’t invoke Answer() before calling Dial().)
To find out about local channels, google for them. to approximate one that never answers, make it run Wait, for a very long time. The purpose of this hack is make the call be to two destinations, which will stop early media ringback being passed through.
You are correct - I am using RingCentral extensions that I have asterisk registering to and also the Dial and ConfBridge commands are going to RingCentral extensions as well. We do not use asterisk for endpoints, but as a swiss army knife (usually with trunking), but Ring Central does not offer any sort of trunking, so our customer is having to burn a RC extension and account per conference member.
My call files have nothing extravagant in them other than the RC user and extension as well as the app and data for the ConfBridge app in them. If there were 4 conference users needed, I have a dialplan that uses a single RC registration that answers the call and 3 other RC users that call out to 3 other RC extensions and dump them into the conference.
So, user 1 dials into Asterisk from a RC registered sip.conf “register” entry. It answer and I use “System” in the dialplan to copy the .call files to spool. At this point, the dialing user gets dumped into the conference while the 3 other call files get dialed using the other sip.conf “register” entries. Yes, burning 4 accounts to get this done since RC is limited.
I can still use any of the Dial features, so you are saying create a audio file of silence and set that to MoH for ringing in the call files?
I did it this way because it is the only way to integrate with their RingCentral implementation. You can think of this as an emergency conferencing system where all users have a speed dial button on their RingCentral phone they press and it joins other phones automatically after it dials us and we dial everyone else. There is nothing local - we just use asterisk to do small features like this. With the unfortunate feature lacking RC, the phones we dial to join the conference after we received the incoming call, we also hear their ringing in the ConfBridge I am creating.
It sounds to me like Ring Central is answering prematurely and then sending call progress in band. You would need to add something like silence detection, or require DTMF from the callee, before you entered the conference.