Asterisk-3-way conference call

Hi,

So I’ve been trying to set up three way calling which I know has been an ongoing discussion in this forum.

I’ve been able to set it up such that when a user enters a specific phone number they enter a conference room and when any other user enters in the same number they enter the conference room as well. What I want to do is when 2 users are in the conference room, one user can invite a 3rd user rather than the 3rd user dialling in to the conference.

In my meetme.conf I have:
[rooms]

conf => 5810,5144,1999
conf => 8572435810,5144,1999

In confbridge.conf I have:

[default_user]
type=user

[default_bridge]
type=bridge

And in my extensions.conf I have:
;conference
exten => 8572435810,1,ConfBridge(1,default_bridge,default_user)

All I want to do is when a user in the conference types in 0, they can add someone to the call.

I understand this may be a simple task but I’ve explored a lot of documentation and examples online and I’m unsure how they apply to my specific circumstance. If someone could provide any guidance/assistance I would greatly appreciate it!

Thank you.

P.S. Here is a couple of the links I’ve been looking at:
http://lists.digium.com/pipermail/asterisk-users/2011-June/263345.html
https://www.voip-info.org/wiki/index.php?page_id=3372

Using confbridge you can use dialplan_exec(context,exten,priority) option with originate command to add a new user to the conference

1 Like

Hey ambiorixg12,

Is this example from this link what you are referring to:
http://mytechrepublic.com/how-to-configure-confbridge-conference-in-asterisk-11-20-0/

I tried implementing it but it didn’t seem to work for me. Could it be because it is referring to an older version of asterisk?

I think what I’m not understanding is how to prompt the user to enter a phone number when they press 0.

Thanks!

Hello @ambiorixg12,

I went with your recommendation of using dialplan_exec and the Originate command and here is what I wrote:

exten => 602,1,NoOp()
same => n,Goto(conference,1)

exten => conference,1,NoOp()
same => n,Set(thisBridge=primary)
same => n,ConfBridge(${thisBridge},default_bridge,admin_user,sample_user_menu)

exten => conference_joiner,1,NoOp()
same => n,Read(numberToDial,vm-enter-num-to-call)
same => n,Originate(SIP/${numberToDial},exten,default,602,1)

The code gets to the originate command and prompts the user to enter a number to dial but after doing so it gives this error:

WARNING[20880][C-00000270]: chan_sip.c:6032 create_addr: Purely numeric hostname (8572435810), and not a peer–rejecting!
– Auto fallthrough, channel ‘SIP/john-00000480’ status is ‘UNKNOWN’

I think that means that the number I’m dialing, 8572435810, is not registered. I’m not sure where and how I register it.

Do you have any advice?

Thanks!

Asterisk trying to dial to the number directly as an IP

Hello ambiorixg12,

Thank you for responding.

Why do you think that is? I believe I’m using the Originate command correctly and I’ve registered the number I’m trying to dial in my sip.conf.

There is no device through which to dial it, so the number treated as the name of the device, but there is no device of that name, and, as it is purely numeric it is not treated as a literal IP address or domain name.

1 Like

Hi David,

I see what you’re saying now. I changed the configuration in sip.conf such that it wasn’t a purely numeric hostname,

I came across a different error now:

Auto fallthrough, channel ‘SIP/john-00000920’ status is ‘UNKNOWN’

Do you know why that is?

However, I am able to make and receive calls from this number.

I feel I am very close to getting this working.

Thanks so much for your help.

You ran off the end of the dialplan without doing anything that sets DIALSTATUS. This would be normal for an extension that just goes to a voice announcement, if you don’t, redundantly, call Hangup.

Hey david551 and ambiorixg12,

I just wanted to update you that I got it to work!

Thank you again for your help.

1 Like

I was able to setup basic 3-way calling using in-built features designed for asterisk 12+. I did this simply by adding the following to /etc/asterisk/features_featuremap_custom.conf:

[general]
atxferthreeway = *42
atxferabort = #42

You initiate by starting a transfer via *2. The callee is placed on hold and you are presented with a dial tone. Dial the new number to bring into the 3-way call. Then once you are ready to bridge dial *42 (or whatever you defined above for atxferthreeway). To cancel the 3-way call and go back to the original call dial #42 (or whatever you defined above for atxferabort).

This uses features already defined as part of atxfer via asterisk. You can see other features defined by checking the features.conf.sample via https://github.com/asterisk/asterisk/blob/master/configs/samples/features.conf.sample