<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>MCB Systems &#187; sipx</title>
	<atom:link href="http://www.mcbsys.com/techblog/tag/sipx/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mcbsys.com/techblog</link>
	<description>Custom Software and I.T. Services</description>
	<lastBuildDate>Sat, 04 Feb 2012 17:53:10 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Getting Into VoIP</title>
		<link>http://www.mcbsys.com/techblog/2008/11/getting-into-voip/</link>
		<comments>http://www.mcbsys.com/techblog/2008/11/getting-into-voip/#comments</comments>
		<pubDate>Thu, 06 Nov 2008 10:32:40 +0000</pubDate>
		<dc:creator>Mark Berry</dc:creator>
				<category><![CDATA[IT Administration]]></category>
		<category><![CDATA[3cx]]></category>
		<category><![CDATA[freepbx]]></category>
		<category><![CDATA[pbx]]></category>
		<category><![CDATA[pbx in a flash]]></category>
		<category><![CDATA[piaf]]></category>
		<category><![CDATA[sipx]]></category>
		<category><![CDATA[sipxecs]]></category>
		<category><![CDATA[trixbox]]></category>
		<category><![CDATA[voip]]></category>

		<guid isPermaLink="false">/mark/post/Getting-Into-VoIP.aspx</guid>
		<description><![CDATA[It all started with my new Magicjack. Plug this little gizmo into your PC and you get unlimited domestic calling, $40 for the first year and $20/year thereafter. That&#8217;s hard to pass up. But it also means that I now have three phone lines coming into the home office. So I either needed to get [...]]]></description>
			<content:encoded><![CDATA[<p>It all started with my new <a href="http://www.magicjack.com" target="_blank">Magicjack</a>. Plug this little gizmo into your PC and you get unlimited domestic calling, $40 for the first year and $20/year thereafter. That&#8217;s hard to pass up. But it also means that I now have <em>three</em> phone lines coming into the home office. So I either needed to get a bigger analog phone, or get into a PBX.</p>
<p><span id="more-54"></span></p>
<h1>Requirements</h1>
<p>Here are the things I wanted my PBX system to do:</p>
<ul>
<li>Answer two incoming POTS lines, one business line and one personal line. </li>
<li>Answer the Magicjack line, also as a POTS line. (Unfortunately, Magicjack does not yet allow users to access them as a VoIP provider without the use of the Magicjack hardware.) </li>
<li>Route these three lines to two existing analog phone lines in the house, and eventually to a SIP phone for the home office. </li>
<li>Route outgoing calls based on least cost. In particular, local calls should go out on the personal line (which has unlimited local calling), and long-distance on the Magicjack. &#8220;Local&#8221; in this case is loosely defined as area codes 619 and 858. I only dial 7 digits for 619 phone numbers, but I have to dial 1 + the area code to reach 858 numbers. Ideally least cost could be differentiated more granularly, as some 858 prefixes are probably toll calls and should go out on the Magicjack. </li>
<li>If possible, run in a virtual machine. The host is an old 2 GHz Pentium 4 with 1 GB of memory, running XP Professional. </li>
<li>If possible, cost nothing for software. </li>
<li>Oh yeah:&#160; and deliver crisp, clear audio with no jitter, crackling, drop-outs, echo, or all those other annoying problems that have become so familiar with VoIP. </li>
</ul>
<p>A quick aside for those who want to try this at home:&#160; before doing anything else, I had to modify my existing phone wiring. I basically installed a multi-port phone jack at the point where the phone lines come into the house. The top ports of the jack are the incoming phone lines. The bottom ports feed back out to the existing analog phones. My PBX goes in between.</p>
<h1>Choosing a VoIP PBX</h1>
<p>A couple years ago, I needed to replace a small traditional PBX for a client. It quickly became apparent that a computer-based VoIP PBX would be significantly cheaper than buying a new traditional PBX. I eventually went with <a href="http://www.trixbox.org" target="_blank">Trixbox</a>, and it&#8217;s still working pretty good. </p>
<p>Trixbox is basically a pre-built ISO that installs the CentOS flavor of Linux, then sets up <a href="http://www.freepbx.org" target="_blank">FreePBX</a>, which is based on <a href="http://www.asterisk.org/" target="_blank">Asterisk</a>. Trixbox has since gone commercial. While they still offer a free version, I decided this time to look at <a href="http://www.pbxinaflash.com/" target="_blank">PBX in a Flash</a> (PiaF). PiaF also uses CentOS, FreePBX, and Asterisk.</p>
<p>I&#8217;d seen mention of <a href="http://www.3cx.com" target="_blank">3CX</a> in some forums. Since I mostly use Windows boxes, the idea of a Windows-based PBX is appealing. I decided to look at 3CX.</p>
<p>Somewhere along the way I stumbled across <a href="http://sipx-wiki.calivia.com/index.php/Main_Page" target="_blank">sipXecs</a> and spent some time looking at that as well. I&#8217;ve already <a href="http://blogs.mcbsys.com/mark/post/Testing-sipXecs.aspx" target="_blank">blogged</a> on that so I won&#8217;t spend any more time on that here.</p>
<h1>Trying Out 3CX</h1>
<p>It was pretty easy to get 3CX set up and running in a Windows virtual machine under Microsoft Virtual PC/Server. (That&#8217;s saying a lot compared to the hoops you have to jump through to run a Linux-based PBX in a virtual machine!) And once set up, there&#8217;s a lot to like:</p>
<ul>
<li>Consistent user interface. </li>
<li>Decent documentation on how to set up Analog Terminal Adapters (ATAs) and phones. </li>
<li>Pretty easy to configure. </li>
<li>Caller ID was captured correctly (number only, no name) </li>
<li>Good voice quality, except with the Magicjack, which turned out to be a pretty universal problem. </li>
</ul>
<p>However it didn&#8217;t take long before I started encountering some limitations:</p>
<ul>
<li>Web access to voicemail, and fax service, are only available in the commercial edition. </li>
<li>Voicemails can be sent as email attachments, but the .wav files occupy about 1MB per minute. </li>
<li>Outbound call rules can only be set up based on number length, number starting with, or which extension is making the call. I did not see an obvious way to set up my least-cost dialing rules (although it might be possible to set up area codes with the &#8220;number starting with&#8221; option). My <a href="http://www.3cx.com/forums/how-to-set-up-smart-outbound-rules-7439.html" target="_blank">forum post</a> on the topic yielded no solution. </li>
</ul>
<p>I initially had some other issues, but they were mostly related to the Grandstream HT-503 ATAs that I started testing with. I wound up returning those ATAs when I was unable to get them to reliably deliver Caller ID.</p>
<h1></h1>
<h1>Trying Out PBX in a Flash</h1>
<p>PBX in a Flash (PiaF) has a great <a href="http://www.pbxinaflash.com" target="_blank">web site</a> with loads of documentation and an active forum. PiaF uses <a href="http://www.freepbx.org" target="_blank">FreePBX</a> , which has its own site and forum. FreePBX is built around <a href="http://www.asterisk.org" target="_blank">Asterisk</a>, also with its own site and forum. This multi-level product can be a bit confusing at first, but ultimately it is one of its strengths. It wasn&#8217;t until I looked at sipXecs that I was reminded what it&#8217;s like to deal with &#8220;raw&#8221; open-source software. The great thing about PiaF and FreePBX is that these guys have tested a bunch of different versions of the software plus dozens of add-ons, have found combinations that work, and have created packages that install everything for you automagically (more or less).</p>
<p>Some of the other PiaF/FreePBX pluses:</p>
<ul>
<li>Outbound calling rules are infinitely configurable through a kind of regular expression syntax. FreePBX can even pull in a pre-built list of local phone number prefixes. </li>
<li>The free version includes web access to email and fax service. </li>
<li>Voicemails sent as email attachments are compact&#8211;under 100K per minute. </li>
<li>Voice quality is good except with the Magicjack. </li>
<li>Lots and lots of add-ons are available. I may not need or use most of these, but it is nice to use a platform (Asterisk) that is so widely implemented and enhanced. </li>
</ul>
<p>Of course, PiaF is not without its difficulties:</p>
<ul>
<li>By far the biggest hassle is getting PiaF running well in a virtual machine. More on that in a <a href="http://blogs.mcbsys.com/mark/post/Setting-Up-PBX-in-a-Flash2c-Part-1-Configuring-a-Virtual-Machine.aspx" target="_blank">separate blog post</a>. </li>
<li>The PiaF/FreePBX user interface has improved greatly in the last couple years, but it&#8217;s still clear that PiaF incorporates programs by several different authors:&#160; the &#8220;look and feel&#8221; is not consistent throughout. </li>
<li>You can&#8217;t entirely avoid knowing something about Linux. This could also be listed as a &#8220;plus&#8221; since learning Linux is probably a good thing. But it does make the install more difficult when you need to search Google every time you want to run some simple command (check the IP address of the computer, list files with their sizes, etc.). </li>
</ul>
<h1>General Findings and Moving Forward</h1>
<p>After much testing, I&#8217;ve had to accept that the Magicjack may not work reliably with a VoIP PBX system. It seems that going from a VoIP device to analog and back to VoIP, with all those analog-to-digital transitions, may be too much too ask. I&#8217;ve moved Magicjack compatibility down the priority list. Hopefully Magicjack will eventually support a &#8220;BYOD&#8221; (Bring Your Own Device) solution so I can directly register the Asterisk server with Magicjack as a VoIP provider.</p>
<p>Running a PBX in a virtual machine is indeed a questionable endeavor. 3CX, the Windows-based PBX, seemed to run pretty well in virtual Windows client. But for some reason, getting a Linux-based PBX to run well in a virtual machine is more difficult. I&#8217;ll try running it virtually for a while, but I may wind up installing directly on a physical machine.</p>
<p>Both 3CX and PBX in a Flash have much to recommend them. I&#8217;ve decided to go with PiaF for now. For my own records, I need to document the steps that I took to get it all working. Hopefully by putting the information in a series of posts, it will help some of you out there as well. Here they are:</p>
<p><a href="http://blogs.mcbsys.com/mark/post/Setting-Up-PBX-in-a-Flash2c-Part-1-Configuring-a-Virtual-Machine.aspx">Setting Up PBX in a Flash, Part 1:&#160; Configuring a Virtual Machine</a></p>
<p><a href="http://blogs.mcbsys.com/mark/post/Setting-Up-PBX-in-a-Flash2c-Part-2-Before-Running-FreePBX.aspx">Setting Up PBX in a Flash, Part 2:&#160; Before Running FreePBX</a></p>
</p>
<p> <a href="http://blogs.mcbsys.com/mark/post/Setting-Up-PBX-in-a-Flash2c-Part-3-Configuring-FreePBX.aspx">Setting Up PBX in a Flash, Part 3:&#160; Configuring FreePBX</a>
<p><a href="http://blogs.mcbsys.com/mark/post/Setting-Up-PBX-in-a-Flash2c-Part-4--Configuring-a-Linksys-SPA-3102-ATA.aspx">Setting Up PBX in a Flash, Part 4:&#160; Configuring a Linksys SPA-3102</a></p>
<p><font color="#0000ff">Update 11/24/2008:&#160; I ultimately converted to a physical machine, though the virtual machine was a great test bed and is probably a good alternative for production with the right host. See more </font><a href="http://blogs.mcbsys.com/mark/post/Moving-PBX-in-a-Flash-from-a-Virtual-to-a-Physical-Machine.aspx"><font color="#0000ff">here</font></a><font color="#0000ff">.</font></p>
]]></content:encoded>
			<wfw:commentRss>http://www.mcbsys.com/techblog/2008/11/getting-into-voip/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Testing sipXecs</title>
		<link>http://www.mcbsys.com/techblog/2008/10/testing-sipxecs/</link>
		<comments>http://www.mcbsys.com/techblog/2008/10/testing-sipxecs/#comments</comments>
		<pubDate>Tue, 28 Oct 2008 21:14:00 +0000</pubDate>
		<dc:creator>Mark Berry</dc:creator>
				<category><![CDATA[IT Administration]]></category>
		<category><![CDATA[sipx]]></category>
		<category><![CDATA[voip]]></category>

		<guid isPermaLink="false">/mark/post/Testing-sipXecs.aspx</guid>
		<description><![CDATA[I&#8217;ve been playing with a few software-based VoIP PBXs lately. I accidentally came across SIPFoundry&#8217;s sipXecs (commonly abbreviated SipX). Their Wiki home page gives some compelling reasons to try them out, so I did.

Environment
At least for test purposes, I want to run SipX in a virtual machine. I&#8217;m most familiar with Microsoft Virtual PC and [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been playing with a few software-based VoIP PBXs lately. I accidentally came across <a href="http://www.sipfoundry.org">SIPFoundry</a>&#8217;s sipXecs (commonly abbreviated SipX). Their <a href="http://sipx-wiki.calivia.com/index.php/Main_Page" target="_blank">Wiki home page</a> gives some compelling reasons to try them out, so I did.</p>
<p><span id="more-55"></span></p>
<h1>Environment</h1>
<p>At least for test purposes, I want to run SipX in a virtual machine. I&#8217;m most familiar with Microsoft Virtual PC and Server, so I used those. </p>
<h1>Installing SipX   <br /></h1>
<p>Here are some random things I encountered trying to get SipX running in a Microsoft virtual machine. I used the <a href="http://www.sipfoundry.org/download.html">Single CD Installation CD</a> because, &#8220;It cannot be much easier than this.&#8221; Some of the issues that I encountered were due to the virtual environment. Some are due to SipX itself. </p>
<ul>
<li>Virtual PC and Server cannot display the 24-bit graphics used by the CentOS 5 installation program. By examining some of the installation files on the CD, I determined that typing <font face="courier new,courier">sipx text</font> at the first prompt would get the CentOS installation started in text mode, which worked fine. </li>
<li>The SipX installation CD is hard-coded to look for SATA or SCSI disks. Unless you want to rewrite the SipX CentOS kickstart file, that rules out Virtual PC&#8217;s IDE disks. I got around this by installing under Virtual Server R2 SP1 and adding a SCSI controller. After installation, I re-attached the disk as an IDE disk because I didn&#8217;t want to fuss with the SCSI drivers under Linux. </li>
<li>At one point during the installation, it presented me with a SIPDomain name parsed out from a previous hostname entry, and told me that my SIPDomain was wrong and it could not continue. I eventually found the source code using Google and discovered that it was hard-coded to only allow a lowercase domain name. I didn&#8217;t remember giving it uppercase in the first place, but by overtyping its default with lowercase, I was able to continue. </li>
<li>The SipX installation requires you to use a fixed IP address. I prefer to use the router to assign the IP address based on the MAC address. After the installation, I had to use <font face="courier new,courier">system-config-network</font> to go back to DHCP client mode. </li>
<li>The installation apparently does not start the network card automatically. I had to edit <font face="courier new,courier">/etc/sysconfig/network-scripts/ifcfg-eth0</font> and set <font face="courier new,courier">ONBOOT=yes</font>. Only then would <font face="courier new,courier">service network restart</font> actually start the eth0 card. </li>
<li>The SSL certs failed due to clock issues. This is a Virtual Server issue. Once I got the Microsoft <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=bf12642f-77dc-4d45-ae4e-e1b05e0a2674&#038;DisplayLang=en" target="_blank">Virtual Machine Additions for Linux</a> installed (a challenge in itself), this problem went away. </li>
<li>After installation, SipX does not work. You have to run <font face="courier new,courier">yum update</font> in order to get the call resolver to start. Since <font face="Courier New">yum update</font> installs 148 packages, it takes forever. </li>
<li>After getting the call resolver to start, I had some trouble getting SipXConfig to run. You&#8217;re supposed to be able to go to http://host.domain.name. That redirects to you to https://host.domain.name:8443/sipxconfig, which tells me Page Not Found. I tried some of the stuff on the <a href="http://sipx-wiki.calivia.com/index.php/SipX_ConfigServer_Troubleshooting" target="_blank">SipX ConfigServer Troubleshooting Page</a> but got nowhere. Finally I found a <a href="http://forum.voxilla.com/sipx-support-forum/problem-configuring-sipxpbx-17647.html" target="_blank">random post on Voxilla</a> that mentions that the URL should be https://host.domain.name:8443/sipxconfig/app. Sure enough, adding &#8220;/app&#8221; got me to the setup page for the application. Later, I found that http://host.domain.name <em>did</em> redirect correctly; I&#8217;m not sure what changed&#8211;possibly that I had manually accepted the SSL certificate that the browser considered invalid. </li>
</ul>
<p>Wow! That was a lot of work. Perhaps the most frustrating part was the lack of accurate documentation. The SipX Wiki has potential, but its articles are frequently out of date, and since they carry no dates or version information, there is no way to know what level of accuracy to expect from any given article. SipFoundry hosts no user forum, just an old-style <a href="http://list.sipfoundry.org/archive/sipx-users/" target="_blank">mailing list</a> with no search function other than Google. Voxilla hosts a sipX forum, but since May 2005 it has garnered a total of 76 threads, most with zero replies. </p>
<p>Somewhere in the middle of all this, I got tired of trying to do it myself and decided to try SipX&#8217;s much-touted <a href="http://sipx-wiki.calivia.com/index.php/Fedora_Live_CD_for_sipX" target="_blank">Live CD</a> to see if SipX was worth pursuing. That page links to the ISO directory where you are supposed to be able to download the Live CD. Unfortunately, as of this writing, there is no Live CD there. </p>
<h1>Running SipX</h1>
<p>Once I was able to start the program, I must say that I was impressed with the UI and functionality. The UI has a nice, integrated feel with all functions available from a series of menus. With that said, I missed being able to monitor basic system performance (CPU and memory usage) from within the UI, and their CentOS build does not install webmin by default. </p>
<p>SipX has done a lot of work on creating the ability to remotely provision some gateways and phones. This requires a DHCP server that has Option 66 to route to the SipX tftp server. Without that kind of DHCP support, the SipX configuration tests fail. I was able to work around this in my test by manually configuring my Linksys SPA-3102 gateway (which isn&#8217;t on their auto-configure list anyway). </p>
<p>Unfortunately, audio quality was not great when used together with the SPA-3102. Calls to voicemail from both the FXS and FXO side of the gateway sounded choppy. I attribute this entirely to running in the Virtual Server environment&#8211;I&#8217;m having similar issues getting FreePBX to run well under Virtual PC. Interestingly, SipX audio quality under Virtual Server is a little better than FreePBX audio quality under Virtual PC. However, SipX&#8217;s CPU usage is higher than FreePBX&#8217;s. </p>
<h1>Closing Thoughts</h1>
<p>If SipX wants to encourage broad testing and use of their system, they need to streamline the installation and documentation, and add better user-to-user support (a forum). However, luring thousands of &#8220;newbies&#8221; to the project probably isn&#8217;t their goal. Maybe one day, communities will grow up around SipX as they have around Asterisk (Trixbox, FreePBX, PBXInAFlash, etc.). In the meantime, my impression is that SipX is a serious project that would take significant effort to learn and implement, but that would scale well and probably be worth the effort in a large installation. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.mcbsys.com/techblog/2008/10/testing-sipxecs/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

