How to prepare xml dialplan for freeswitch conference outbound calls

image

What is an XML dialplan?

The XML dialplan is the default dialplan used by FreeSwitch. XML is easily edited by hand without requiring special tools, other than a text editor. In general, dialplans are used to route a call to an endpoint, which can be a traditional extension, voicemail, interactive voice response (IVR) menu or other compatible application.

What is dialplan In FreeSWITCH?

About The FreeSWITCH dialplan is a decision tree that provides routing services to bridge call legs together, execute dialplan applications, and invoke custom scripts that you write, among other things.

How do I make an outbound call using FreeSWITCH?

To make an outbound call using the Flowroute number you have specified in your gateway, sip_profiles/external/flowroute.xml, run this command: What FreeSWITCH does is originate a new call and then echo back the audio picked up by the destination number in order to demonstrate a successful two-way media connection.

What are dialplans and how do they work?

In general, dialplans are used to route a call to an endpoint, which can be a traditional extension, voicemail, interactive voice response (IVR) menu or other compatible application. Dialplans are extremely flexible. Dialplans can be separated into context s, allowing calls to follow different pathways for different kinds of calls.

image


What is Dialplan in FreeSWITCH?

The FreeSWITCH dialplan is a decision tree that provides routing services to bridge call legs together, execute dialplan applications, and invoke custom scripts that you write, among other things.


How do I make a call on FreeSWITCH?

0:112:02FreeSWITCH with Fred – Making internal Calls – YouTubeYouTubeStart of suggested clipEnd of suggested clipWith that should background I’ll open up the free switch console. And show you the call happening inMoreWith that should background I’ll open up the free switch console. And show you the call happening in real time I have set up two soft phones in my laptop.


What is SIP profile in FreeSWITCH?

A SIP profile is just a couple address/port to which FreeSWITCH is listening. Let’s say our server has IP address 194.20. 24.11. The “internal” SIP profile in example configuration will have FreeSWITCH listen to port 5060. So, the “internal” SIP profile is listening at 194.20.


What is FreeSWITCH PBX?

FreeSWITCH is a core component in many PBX in a box commercial products and open-source projects. Some of the commercial products are hardware and software bundles, for which the manufacturer supports and releases the software as open source.


What is Sofia in FreeSWITCH?

Sofia is a FreeSWITCH™ module (mod_sofia) that provides SIP connectivity to and from FreeSWITCH in the form of a User Agent.


What is Sofia SIP?

Sofia-SIP is an open-source SIP User-Agent library, compliant with the IETF RFC3261 specification (see the feature table). It can be used as a building block for SIP client software for uses such as VoIP, IM, and many other real-time and person-to-person communication services.


What is fusion PBX?

FusionPBX is a FreeSWITCH-based multi-tenant PBX that provides a robust set of features for business phone systems. Using SignalWire services with FusionPBX allows you to leverage our high call quality and low rates.


How to use conference_set_auto_outcall?

Use conference_set_auto_outcall to have mod_conference call one or more conferees when a conference starts. To have it call more than one endpoint, simply repeat the conference_set_auto_outcall action in the dialplan for each destination number.


Why is 1004 mute?

Because 1004 is in a noisy environment that station has the “mute” flag set initially; when that station presses 0 it will toggle the mute as normal, it simply starts in the muted state to avoid disrupting the conference with noise .


Discussion

Some folks like the idea that a conference moderator (or any caller with “proper access”) should be able dynamically to add a call to a conference. There are many ways to solve this problem. More elaborate methods use scripts.


Configuration

Add these entries to your $$ {conf_dir}/autoload_configs/conference.conf.xml. First, add this group:


Operation

Regular callers simply dial in (or get transferred to) 46xx. The Moderator dials *46xx. All default caller-controls are available to normal callers and moderators except for the * key which normally toggles deaf/mute. The * key does not respond to normal callers.


Ringback Issues

With the above dialplan, local extensions and certain gateways being called from the conference did not send ringback tones back into the conference. There appears to be a way to fake this, but note that you will get a “joined” sound triggered both when the ringback is faked (because the loopback call joined) and when the originate is answered.


Why does Freeswitch use multiple contexts?

FreeSWITCH uses multiple context s to prevent internal extensions from being exposed to the world. The two contexts in the vanilla FreeSWITCH configuration are called public and default, but these names are arbitrary and can be carefully changed. New contexts can also be added.


Is Freeswitch a single entity?

The FreeSWITCH dialplan is not a single entity. You have the option to run different dialplan subsystems natively. These are not all translated into the same back–end as other systems may be employed. Instead each is a unique, independent method through which you can access information.


What is freeswitch EC2?

FreeSWITCH is a scalable open-source telephony platform that routes and interconnects audio, video, text, and other media. With its rich features and stable telephony platform, you can develop many types of applications using a wide range of free tools. This is the first in a series of Flowroute articles on FreeSWITCH configured and tested for AWS EC2.


What is SIP profile?

SIP Profiles allow you to define paths to devices or carriers that may live inside or outside your network. You will update the SIP Profile for external registrations, external.xml, which is used when registering to networks or services that are considered “off-net” which is Flowroute in this case.


Getting ready

Making outbound calls requires you to know the numbering format that your provider requires. For example, do they require all 11 digits for US dialing? Or will they accept 10? In our example, we’re going to assume that our provider will accept a 10-digit format for US dialing.


How to do it..

Routing outbound calls is simply a matter of creating a dialplan entry. Follow these steps:


How it works..

Assuming you have a phone set up on the default context, our regular expression will match any destination_number that follows the US dialing format (10 or 11 digits) and send the call to our_sip_provider in a 10-digit format.


There’s more..

The regular expression matching in FreeSWITCH allows the possibility of having very powerful conditions. You can also match caller_id_number to route calls from a user at extension 1011 out to the second gateway called our_sip_provider2 and everyone else at the our_sip_provider. Consider the following alternative outbound_calls.xml file:


How to use conference_set_auto_outcall?

Use conference_set_auto_outcall to have mod_conference call endpoints and join them to a conference bridge. To have it call more than one participant, just repeat the conference_set_auto_outcall action in the dialplan for each destination number or address.


What is caller control?

Caller controls are used to modify the state of the conference, such as lowering the volume, mute a participant, and such. Below are the commands that can be assigned to digits and executed during a conference. The “moderator-controls” group provides additional controls for participants who enter the conference with the moderator flag set. See below.


What is mod_conference?

mod_conference provides both inbound and outbound conference bridge service for FreeSWITCH™. It can process multiple bit rates, load various profiles that specify DTMF controls, play prompt sounds and tones, and many other functions. You can create as many conferences as you like, as long as there still are free system resources (i.e. memory, CPU power, network bandwidth) available.


What happens if caller ID is not set?

If the caller id values are not set, the variables in conference.conf.xml will be used. Specifically, the value for caller-id-number will be used for the number and the value for caller-id-name will be used for the name.


What is confname pin?

The first time a conference name (confname) is used, it will be created on demand, and the pin will be set to what ever is specified at that time: the pin in the data string if specified, or if not, the “pin” setting in the conference profile, and if that is also unspecified, then there is no pin protection.


Can you have multiple destinations in one line?

Alternatively, you can set multiple destinations in one line, just remember to escape your variables if you have more than one or any non-escaped chars in it . <action application=”conference_set_auto_outcall” data=” [‘var1=a,var2=b’]user/1001@$$ {domain}, [‘var1=c,var2=d’]user/1002@$$ {domain}”/>. Variable.


Can you specify a number of different profiles in a conference?

profiles. You can specify a number of different profiles in the profiles section, these will let you easily apply a number of settings to a conference. Please note that the profiles are not conference rooms, but define settings that are later applied to conference rooms.

image

Leave a Comment