Astersik Conference Bridge
-
Upload
abdul-malik -
Category
Documents
-
view
216 -
download
0
description
Transcript of Astersik Conference Bridge
Knowledge Is Power
An Easy To BuildFree Conference Bridge
A conference bridge allows multiple users to all dial the same telephone number and all be connectedtogether as if they were in a virtual conference room. A single conference bridge can have multiple"rooms" with each room having it's own telephone number. Typically, teleconference bridge functionalitybuilt into corporate telephone systems from manufacturers such as Nortel and Avaya were extremelyexpensive. They realize that conference calls can save companies a lot of money in time and travel sothey charge a premium for the ability to host such calls. The most common alternative to expensive PBXmanufacturer options are hosted teleconference services with either monthly subscription charges or perminute/peruser charges which can also get expensive.
Asterisk, the open source software PBX, has long offered MeetMe conference bridge functionality. Theproblem is getting it to interface with your corporate telephone system. One common option is to interfacean Asterisk system to a PBX using a SIP trunk. The option we'll use on this page is to set up an H.323connection between Asterisk and an Avaya IP Office PBX. However, it should work for any PBX thatsupports H.323 connections. We chose to use an H.323 connection because it is a more robust protocol(should you wish to expand beyond simple audio teleconferencing to teleconferencing with video andwhite board capabilities at some point) and, on our phone system, it didn't require any additional licenses(we would have needed to purchase SIP licenses to use a SIP trunk).
There is an allinone version of Asterisk called AsteriskNow that includes not only the Asterisk PBXsoftware but the CentOS Linux operating system and a Webbased GUI management interface forAsterisk called FreePBX. You simply boot off of an AsteriskNow DVD and everything you need for a fullyfunctional PBX system gets installed and mostly configured for you.
Here's all you'll need to do to get a conference bridge working with an H.323capable PBX:
1. Download the free AsteriskNOW DVD ISO image and burn it to a DVD.2. Install AsteriskNOW on PC or server.3. Use the FreePBX GUI management tool to configure a conference room.4. On the Asterisk server manually create an H.323 configuration file.5. On your PBX create an H.323 trunk.6. On your PBX create a short code (route).
Download AsteriskNOW
You can download the latest AsteriskNOW DVD ISO image from here. Naturally if you're going to be usingan older PC you'll want to download the 32bit version.
www.asterisk.org/downloads/asterisknow
Install AsteriskNOW
NOTE that installing AsteriskNOW will wipe out whatever is currently on the harddrive.
The DVD you created using the image you downloaded is called a "Asterisk distribution" because itincludes everything, the Linux operating system (CentOS), the Asterisk server application, the ApacheWeb server application to serve up the FreePBX Web pages, etc. etc. etc. Installing the software off of thisone DVD will give you a complete Asterisk PBX server.
While even an older PC will work just fine to set up a test or small conference bridge, if you plan on settingup a production conference bridge that will see moderate to heavy use be sure to take into account the
maximum number of simultaneous callers you'll have on the system. The number of rooms or the numberof callers in a room doesn't matter as much as the number of all callers put together. If you're going tohave 15 or more people simultaneously dialed into the system you'll want to install the software on somepretty respectable server hardware with a fast CPU and a lot of memory.
Screen shot courtesy of the AsteriskNOW Installation Page
Boot off the DVD and the AsteriskNOW installation menu will appear. With Full Install under the newestversion already highlighted press Enter.
Screen shot courtesy of the AsteriskNOW Installation Page
The next screen requiring input is the "Configure TCP/IP" screen. If you're not accustomed to navigatingtextbased screens you'll want to press the tab key to move the small highlight to the asterisk in front of"Enable IPv6 support" and press the space bar to deselect it. Then press the tab key again to highlightOK and press Enter.
Screen shot courtesy of the AsteriskNOW Installation Page
Likewise on the "Time Zone Selection" screen, press the tab key to highlight the list of time zones and usethe up and down arrow keys to find yours. You typically won't find "Eastern" or "Central" so you have toselect a city (such as Chicago for USCentral). Once you have your time zone city selected tab to OK andpress Enter.
Screen shot courtesy of the AsteriskNOW Installation Page
Next you are prompted for a password. You will be prompted for two passwords during the installation andsetup. This is the first one and it is for the Linux root account. On a Linux system root is the superuseraccount, like Administrator is on a Windows machine. You need this password to log into the system itselfso don't forget what you enter here.
The second password you'll be asked for is for the FreePBX GUI managementapplication. You'll not only be prompted for a password but for a user name as well.There's no reason you can't use "root" for that user name and the same passwordjust to keep things simple.
At this point your work is done for the software installation part of the setup. All of the Linux, Asterisk, andFreePBX application packages will be installed automatically. The installation may seem like it hangs atvarious points, especially if you're using an older PC. Just be patient.
When the software installation completes the DVD will eject and the system will reboot. Be sure to grabthe DVD out of the tray before the system reboots to prevent the system from booting off the DVD againand wiping out the installation you just completed.
After rebooting the installation routine pulls down application updates. It says it'll take a couple minutes butit actually takes considerably longer even with a fast Internet connection so if you have a slow connection
it'll take awhile.
Once the updates are complete you'll be at the Linux login: prompt. At that prompt type in root and hitEnter and then type in the password that you entered during the software installation.
Screen shot courtesy of the AsteriskNOW Installation Page
Once you log in you'll be at what's called a "shell prompt" which is the Linux operating sytem waiting foryou to enter a command. We'll be entering commands later but for now notice that just above shell promptis the "Interface eth0 IP" address. This is the IP address the system got via DHCP during the installprocess. (eth0 is Linuxese for the PC's ethernet network adapter. Linux starts numbering things at zero.)This is the IP addres you'll use to manage the system using the FreePBX GUI management interface andenter into an H.323 configuration file.
Configure a Conference Room
Go over to a Windows system that's on the same network as the Asterisk server, open a Web browser,and in the browser address line enter the Asterisk system's eth0 IP address we just mentioned above.This will pull up the FreePBX management GUI. This is where you have to enter that second password wetalked about earlier. The very first time you go to this address you'll be prompted to enter a user ID,password and admin email address for the FreePBX application. As mentioned earlier, feel free to useroot as the user name and the same password you used earlier if you want.
Once an ID, password, and email address are entered a menu of applications is presented.
Screen shot courtesy of the AsteriskNOW Installation Page
Click on the FreePBX Administration icon and you'll be prompted to enter the user name and passwordthat you just created. A System Overview page will then appear. (You can bring up this same page at anytime by pointing to Reports on the top menu bar and clicking on System Status.)
The FreePBX menu is along the top of the page. Point to Applications and click on the Conferences linkto bring up the conference room configuration page.
Enter the phone number for the conference room and a descriptive name. The PIN numbers are optional.If you specify an Admin PIN and have the "Leader Wait" option set to 'Yes' then the callers will not be ableto communication with each other until the admin logs in. They'll be able to connect to the conferenceroom but they'll just hear music (if you set the "Music On Hold" option to 'Yes') until someone with theAdmin PIN logs in.
Set any of the other options you want. For instance, if the "User Join/Leave" option is set to 'Yes' the calleris asked to say their name when they log in and it is played back into the room when they join and leavethe call.
When using PIN numbers you want to let everyone know what the User PIN is butkeep the Admin PIN a secret and only give it to those who will be conducting theconference calls.
Click on the Submit Changes button near the bottom of the page and a red Apply Config button willappear next to the menu at the top of the page. Click on this button to apply the changes (which will reloadthe Asterisk application on the Linux system) and then click on the Logout button in the upperright cornerof the screen.
We're all done with the Webbased GUI management tool. The next step is done back on the Linuxsystem running Asterisk.
Create An H.323 Configuration File
Luckily the ooh323 channel driver for H.323 connectivity gets loaded automatically in AsteriskNow so allwe have to do is create a configuration file for the driver to use. Chances are likely the screen went intopower save mode on the Linux system so just hit the backspace key to bring it back.
At the shell prompt type in the following command and press Enter to get into the directory containing theAsterisk configuration files:
cd /etc/asterisk
If you want to see how many configuration files there are type in ls and press Enter. There are no H.323configuration files so we'll create one. At the shell prompt type in the following command and press Enterto open a new, blank text file in the nano text editor.
nano ooh323.conf
and type in the following lines. Recall that when we first logged in the system displayed the IP address ofthe eth0 interface that you used in the browser address bar to access the FreePBX GUI. Use that same IPaddress for the bindaddr value.
[general]port=1720bindaddr=10.24.66.68disallow=allallow=gsm,ulaw,alawdtmfmode=inband
[pbx]type=friendcontext=ext‐meetmehost=172.20.1.18port=1720
The 172.20.1.18 host entry is the IP address of the PBX. The extmeetme context is the context createdby FreePBX for conference rooms.
Press CtrlX to exit and press the y (yes) key to confirm saving the file and press Enter to confirm the filename and you'll return the shell prompt.
We're all done configuring things on the Asterisk side so reboot the system by typing in the followingcommand at the shell prompt:
shutdown r now
If you ever want to power down your PC intead of reboot it simply replace the r with P (that's anuppercase P). You never want to just turn off a Linux system.
Configuring the PBX
Naturally every PBX will be different on how you accomplish these, but the two tasks you need tocomplete are creating an H.323 trunk and creating a route for the DN (telephone number) you use for yourconference room number (2663, which spells conf, in our example above). I'm using an Avaya IP Officesystem for examples on this page. While Avaya IP Office does come with conference bridge functionality itis very limited and is basically just like a Conference key on a telephone but allows more participants.
Note that you should only have to create a single H.323 trunk. If youplan on creating multiple conference rooms they each will have theirown DN (phone number) and each DN will have it's own route but eachroute will all use the same H.323 trunk (in the case of IP Office the same"Outgoing Group ID").
On the left side of the Avaya IP Office system manager rightclick on Line, point to New, and then click onH323 Line. On the VoIP Line tab the Line Number will be automatically assigned as will the OutgoingGroup ID. You can change the Outgoing Group ID to a 3x, 4x or some other value simply to make it moredistinctive. The Telephone Number is more of a descriptive field for the sake of identifcation and enteringa number other than the one you used in the conference room properties will not cause a problem. If youcreate more than one conference room, i.e. have more than one telephone number using the H.323 link,you could list them all.
The two entries for channel numbers will depend on the bandwidth of your IP connection between thePBX and the Asterisk system. If it's all on the same LAN and utilization isn't high you could probably set itat the max (250) value. Keep in mind these are not perconferenceroom limits but a limit on all callers forall conference rooms that you will create.
On the VoIP Setting tab for the Gateway IP Address you'll enter the same PBX address that you enteredfor the "host" value in the H.323 configuration file on the Asterisk system.
You'll also want to change the Supplementary Services dropdown to None. This will enable all of thecheckboxes on the right side of the window, some of which were previously greyed out. Now uncheck allof these checkboxes. Recall that in the H.323 configuration file on the Asterisk system we set thedtmfmode to inband which is why we have to uncheck the Out of Band DTMF checkbox.
We don't do anything with short codes here so you can now save this line configuration. On an Avaya IPOffice system a simple line setup like this requires a system reboot but don't do that just yet. Next we'lladd a short code to route the calls for 2663 telephone number to the H.323 line we just configured.
On the left side of the IP Office system manager rightclick on Short Codes and click on New. Here theCode is the phone number you used when you configured the conference room. In the Telephone Numberfield just put a period. This means that the system will use the value (phone number) that the user dialed,which will be the conference room number. Lastly, select the Line Group number that you entered in theproperties of the H.323 Line that you just created. Now save the short code and save the systemconfiguration and you'll be informed that the system has to be rebooted.
If you want to create additional conference rooms all you need to do is create the conference room on theAsterisk system using the FreePBX Web GUI and then add another short code on the PBX making surethe phone number for the new conference room is the same as the Code number in the new short code.(You'll use the same Line Group number in all additional short codes.) By the way, the phone numbersyou use for each conference room are referred to as "extensions" in the Asterisk configuration files.
Testing and Troubleshooting
Once the PBX comes back up you should be able to place a call to your conference bridge telephonenumber and hear a prompt to enter a PIN number (if you entered one in the configuration). If you don't,you'll want to see if your calls are making it to the Asterisk system. Log into the Linux system with the rootaccount and at the shell prompt type in:
asterisk rvvvvvv
Asterisk is already running as a process. The r indicates that you want to connect to this process. Themultiple v characters (enter 5 to 8 of them) indicates that you want a high level of verboseness, i.e. thatyou want Asterisk to give you as much feedback as possible. When you hit Enter you'll be in Asterisk'sshell with a *CLI> prompt. This is Asterisk waiting for you to enter a command but it will also displayfeedback messages when an action is taken. (Type in quit when you want to exit the Asterisk CLI.)
With the Asterisk CLI up, call the conference room number and see if lines start scrolling on the CLIdisplay. It's important if lines do appear because it indicates that the call is making it throughto yourAsterisk system. That would indicate your PBX and Linux H.323 configurations are correct. This eliminateshalf the potential issues right there.
These lines will tell you what Asterisk is doing about the call and may give you an error indicating what theproblem is, particularly if it's a syntax issue because you mistyped one of the lines we entered earlier.Your best friend in this situation is Google. Enter any error exactly and within quotes so Google searchesfor it as a continuous string. Some errors may not be anything service affecting but others may tell youwhat you need to correct.
If no text scrolls in the CLI interface doublecheck your ooh323.conf file for typos and if that's correct thenthere's likely an issue with your PBX configuration.
Cut Off Announcements
A problem I ran into was that the beginning of the voice prompts would get cutoff. For instance, instead of hearing "Please enter the conference PIN number" Iwould hear "rence PIN number." I discovered that this can be remedied byadding a couple lines to the conference room configuration file on the Asterisksystem.
HOWEVER, editing the configuration files on a system running FreePBX is not agood idea because every time you make a change using the GUI and apply thechanges these files get recreated so any changes you make are lost. That's whyyou'll see Asterisk conf files with "_custom" in the name. These files don't getrecreated and it's where you'd normally want to put your custom changes.Unfortunately changing these custom files won't work for us in this situation so ifyou need to add these statements to fix an announcement issue, only do so afteryou've created all of your conference rooms because you'll need to add thecorrective statements for each room (each extension).
On the Asterisk system enter the following command to get into the directory withthe Asterisk configuration files:
cd /etc/asterisk
Then open the configuration file in the nano text editor with the command:
nano extensions_additional.conf
Pagedown the file and look for the Meetme context which starts with thefollowing line:
[extmeetme]
Below that you should see statement with your conference room(s) phonenumber(s) in them. Put the cursor at the beginning of the line that looks like this:
exten =>2663,n,Read(PIN,enter_your_conference_pin_number,,,,)
and hit Enter twice to create two blank lines above it. Then enter the followingtwo commands on those blank lines using the approprite conference room phonenumber:
exten => 2663,n,Answerexten => 2663,n,Wait(1)
Repeat this for any of your other conference room numbers in the [extmeetme] context. When you're done press CtrlX to exit and press the y (yes)key to confirm saving the file and press Enter to confirm the file name and you'llreturn the shell prompt.
Now reboot the system by typing in the following command at the shell prompt:
shutdown r now
Now when you call the conference room number you should hear the wholeprompt. It has something to do with the VoIP line taking too long to get set upand the statements we added forces it up faster.
Just remember that if you ever make any changes to your FreePBX configurationthat file may get overwritten and you'll have to add those statements again.
If you're a telecom worker check out my other page on building a speakback box using Asterisk.
Keith's Home Page
Contents, diagrams, and images Copyright © 20042015 Keith Parkansky All rights reserved.Certain graphics, symbols, and terms used on this site and in its documents are registered trademarks
of their respective owners and are contained herein for identification purposes only.No endorsement of this site, its contents, or its documents by these owners is expressed or implied.
LIABILITY
IN NO EVENT WILL KEITH PARKANSKY BE LIABLE TO ANY PARTY (i) FOR ANY DIRECT, INDIRECT, SPECIAL, PUNITIVE ORCONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, DAMAGES FOR LOSS OF BUSINESS PROFITS, BUSINESS
INTERRUPTION, LOSS OF PROGRAMS OR INFORMATION, AND THE LIKE), OR ANY OTHER DAMAGES ARISING IN ANY WAY OUT OF THEAVAILABILITY, USE, RELIANCE ON, OR INABILITY TO USE THE INFORMATION, METHODS, HTML OR COMPUTER CODE, OR
"KNOWLEDGE" PROVIDED ON OR THROUGH THIS WEBSITE OR ANY OF ITS' ASSOCIATED DOCUMENTS, DIAGRAMS, IMAGES,REPRODUCTIONS, COMPUTER EXECUTED CODE, OR ELECTRONICALLY STORED OR TRANSMITTED FILES OR GENERATED
COMMUNICATIONS OR DATA EVEN IF KEITH PARKANSKY SHALL HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES, ANDREGARDLESS OF THE FORM OF ACTION, WHETHER IN CONTRACT, TORT, OR OTHERWISE; OR (ii) FOR ANY CLAIM ATTRIBUTABLE TOERRORS, OMISSIONS, OR OTHER INACCURACIES IN, OR DESTRUCTIVE PROPERTIES OF ANY INFORMATION, METHODS, HTML ORCOMPUTER CODE, OR "KNOWLEDGE" PROVIDED ON OR THROUGH THIS WEBSITE OR ANY OF ITS' ASSOCIATED DOCUMENTS,
DIAGRAMS, IMAGES, REPRODUCTIONS, COMPUTER EXECUTED CODE, OR ELECTRONICALLY STORED, TRANSMITTED, OR GENERATEDFILES, COMMUNICATIONS, OR DATA. USE OF THIS SITE CONSTITUTES ACCEPTANCE OF ALL STATED TERMS AND CONDITIONS.