<?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>The Fruits of my Labour &#187; VoIP</title>
	<atom:link href="http://www.toao.net/voip/feed" rel="self" type="application/rss+xml" />
	<link>http://www.toao.net</link>
	<description>by Mango</description>
	<lastBuildDate>Tue, 09 Mar 2010 12:36:28 +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>Shaw Digital Phone Review</title>
		<link>http://www.toao.net/428-shaw-digital-phone-review</link>
		<comments>http://www.toao.net/428-shaw-digital-phone-review#comments</comments>
		<pubDate>Sun, 07 Feb 2010 04:37:27 +0000</pubDate>
		<dc:creator>Mango</dc:creator>
				<category><![CDATA[VoIP]]></category>

		<guid isPermaLink="false">http://www.toao.net/?p=428</guid>
		<description><![CDATA[We like Shaw Digital Phone a lot. Shaw Digital Phone is an implementation of VoIP that is run over Shaw's private network, separate from the Internet.&#160; Shaw's reps actively deny that their service is VoIP - we suspect they want to differentiate themselves from providers of broadband VoIP.&#160; This is perhaps with good reason. Because [...]]]></description>
			<content:encoded><![CDATA[<br />We like Shaw Digital Phone a lot. Shaw Digital Phone is an implementation of VoIP that is run over Shaw's private network, separate from the Internet.&nbsp; Shaw's reps actively deny that their service is VoIP - we suspect they want to differentiate themselves from providers of broadband VoIP.&nbsp; This is perhaps with good reason. Because Shaw Digital Phone doesn't run over the Internet, typical VoIP issues caused by latency, bandwidth sharing, and internet outages are entirely eliminated.<br />
<span id="more-428"></span><br /><br />As far as calling features go, Shaw provides basic features, but have been taking their time on implementing the more exotic ones.&nbsp; In August 2009 we were finally able to order multi-line hunting.&nbsp; We were the first customers in British Columbia to use this. We were excited to discover (because they oddly don't advertise this) that we not only have multi-line hunting but call queuing!&nbsp; This is a clear advantage over Telus that we think they should publicize. Some of their techs still do not know about the new features.&nbsp; Mango has spoken with techs who firmly deny that we have multi-line hunting because "Shaw does not yet offer it".&nbsp; We can assure you that they do.<br /><br />Shaw installed an Arris modem at our premises.&nbsp; We read reviews saying that these modems perform fantastically well, and we agree.&nbsp; When Shaw first rolled out their phone service, they deployed Motorola modems.&nbsp; Unfortunately, the performance of these were apparently less than stellar and caused a rocky start and bad PR for Shaw.&nbsp; But the good news is that if you've been trying to decide whether or not to switch to Shaw Digital Phone, now's the time.<br />
<h2>If you have a PBX, lie about it.</h2><br />Much to our amusement (or perhaps amazement) installation required two techs - one to connect the phone line and one to connect the cable line.&nbsp; Mango states that he was not impressed with the phone tech.&nbsp; At first he insisted on disconnecting the Telus line in the basement. When Mango flatly refused to unlock the wiring closet, (at this point we had no idea how well we'd like SDP and wanted the Telus line available if we decided to switch back) he then said he was going to "cut the line in the suite back so far no one will ever be able to reattach it."&nbsp; The line was already disconnected, but he wanted to make it impossible for Telus to reconnect it.&nbsp; <strong>Not happening.</strong>  After installation, the line wouldn't ring, which the tech immediately blamed on our PBX.&nbsp; <strong>He actually tried to convince Mango that perhaps our PBX was not supposed to ring.</strong>  We told him he should plug in his line tester and see if it would ring.&nbsp; He apparently decided our PBX was not the problem after all because he didn't even try his line tester; he made a call to someone at Shaw who solved the problem.<br /><br />When we decided to order three more lines, the installation was even more eventful.&nbsp; Mango received three separate calls from three different people at Shaw asking 1) if Mango was a PBX tech, which they asked already, 2) if Mango was over 18, which they also asked already, and 3) if Mango remembered about our appointment, which he did, because we had been called two other times about it.<br />
<h2>Union rules apply.</h2><br />The installation of the additional three lines required <strong>five</strong> technicians which in our opinion was four technicians too many.&nbsp; We find this humorous because Mango actually offered to do it himself to save them rolling a truck.&nbsp; The first two arrived the day after we placed our order and dropped off the modem.&nbsp; We asked them what they were going to do, because the number port had not yet been completed.&nbsp; They said they didn't know and left the modem sitting on a nearby table.&nbsp; Two techs arrived two days later, on Mango's day off, and without making an appointment.&nbsp; They patiently waited while we located him.&nbsp; They installed the new 4-port modem that the previous techs had dropped off.&nbsp; Finally, a single (!!) tech arrived on the actual installation date to plug in the three necessary cables, and call in the number port.&nbsp; We sincerely hope after watching this display of convoluted miscoordination that Shaw is actually making money.<br />
<h2>Nothing is simple with Shaw.</h2><br />We decided to downgrade one of our lines to a cheaper package. This is easier said than done. For reasons known only to Shaw, the modem must be provisioned<strong> in order of the price of the line</strong>. Unfortunately, the line we wanted to downgrade was Line 1. So they had to reprovision our modem so that Line 2 was moved to Line 1, Line 3 to Line 2, Line 4 to Line 3, and Line 1 to Line 4. We are not making this up. They told us this would take two hours.&nbsp; We scheduled the appointment for 8AM because we open at 10.&nbsp; At 1PM, our phone lines stopped dropping more calls than a bad cell.&nbsp; For some reason this procedure made a strange number appear as our outgoing Caller ID.&nbsp; They stated that fixing this will involve another "two hours" of downtime and scheduled it for sometime within the next 48 hours.&nbsp; A kid in his parents' basement with an Asterisk box could properly configure outgoing Caller ID in about 45 seconds.&nbsp; Why not Shaw?<br />
<h2>On the topic of Caller ID...</h2><br />Incoming Caller ID does not display 7% of names.&nbsp; (We counted.)  We do not know the reason why.&nbsp; Shaw states that if it does not appear it's the fault of the originating carrier.&nbsp; We do not believe this to be the case because Telus, cell, or broadband VoIP phones display names for these same numbers.&nbsp; (We looked up these numbers with CNAM.info and Bulkcnam.com to be sure.)  Hopefully this is something that will be fixed.<br />
<h2>Just the Fax, sir.</h2><br />Faxing works with our Arris modem, and it works well.&nbsp; However, Shaw oddly gives bad advice regarding faxing.&nbsp; They state that one should lower their fax speed to 9600bps and disable Error Correction Mode/ECM.&nbsp; <strong>This is wrong.</strong>  Our fax works perfectly well at 14400 or faster.&nbsp; Disabling ECM is a bad idea because if there is an error while sending the fax, your fax machine may report success.&nbsp; The recipient may have no idea you attempted to send a fax, and you will have no idea that the fax failed.&nbsp; If you have problems sending faxes, disabling ECM is NOT a good solution though it can occasionally mask the issue.<br /><br />We also note that for some reason, faxes always fail on Line 3 of our 4-port Arris modem.&nbsp; Lines 1, 2, and 4 always work.&nbsp; We have absolutely no idea why and would be delighted to hear from anyone else who experiences this issue.<br /><br />For a less expensive, very reliable, Canadian, web-based faxing solution, consider <a href="/422-low-cost-internet-faxing-for-canada">MyFax</a>.<br />
<h2>Conclusion: Decent, with room for improvement.</h2><br />It is frustrating dealing with Shaw, no question about that.&nbsp; But, it's less frustrating than dealing with Telus.&nbsp; It's common knowledge that Shaw's techs and CSRs have a much better command of the English language, perhaps due to the fact that Telus outsources to Asia.&nbsp; At this time we consider Shaw to be the lesser of two evils.<br /><br />At the time of this writing, our primary telecom services are from the following vendors:<br /><br />Office voice: Shaw Digital Phone<br />Office outgoing fax: Shaw Digital Phone<br />Office incoming fax: MyFax<br />Home voice: VoIP.ms<br />Home outgoing fax: Callcentric<br /><br />For home use, we find better pricing and more features with VoIP.ms and Callcentric.&nbsp; But if someone doesn't want to take the time to learn how to install and manage a broadband VoIP system, Shaw Digital Phone is an excellent and very cost-effective alternative.&nbsp; Mango's parents have Shaw Internet and if they switch to Shaw Digital Phone (Ed: and I think they should) it will add exactly $12 to their monthly bill due to bundling. At these prices, Shaw is competing with broadband VoIP.<br /><br />Fortunately, other than the above-mentioned incoming Caller ID issue, Shaw Digital Phone has performed wonderfully.&nbsp; We've had no downtime at all, other than the Shaw-induced downtime that occurred when they were sorting problems or reprovisioning our modem.&nbsp; After a few calls, we found ourselves thinking that the audio quality was better.&nbsp; We made a recording comparing <a href="/64-shaw-vs-telus-sound-quality-samples">Shaw Digital Phone and Telus audio quality</a> and Shaw easily beat Telus.<br /><br />If you can deal with random acts of frustration when dealing with Shaw's staff in exchange for a cheap phone line, Shaw Digital Phone is a good choice for you. ]]></content:encoded>
			<wfw:commentRss>http://www.toao.net/428-shaw-digital-phone-review/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Convert to and from ulaw files</title>
		<link>http://www.toao.net/427-convert-to-and-from-ulaw-files</link>
		<comments>http://www.toao.net/427-convert-to-and-from-ulaw-files#comments</comments>
		<pubDate>Mon, 01 Feb 2010 06:20:40 +0000</pubDate>
		<dc:creator>Mango</dc:creator>
				<category><![CDATA[VoIP]]></category>

		<guid isPermaLink="false">http://www.toao.net/?p=427</guid>
		<description><![CDATA[In a previous article, we wrote about how to build a call recorder out of Asterisk.&#160; Simply conference in the call recorder's extension and Asterisk will record your conversation to a ulaw file.&#160; It is possible for Asterisk to record in wav format but that requires more system resources.&#160; Fortunately, there's a very easy way [...]]]></description>
			<content:encoded><![CDATA[<br />In a previous article, we wrote about <a href='http://www.toao.net/426-configure-asterisk-for-a-home-pbx'>how to build a call recorder out of Asterisk</a>.&nbsp; Simply conference in the call recorder's extension and Asterisk will record your conversation to a ulaw file.&nbsp; It is possible for Asterisk to record in wav format but that requires more system resources.&nbsp; Fortunately, there's a very easy way to convert ulaw files to wav format.&nbsp; That is by using a program called SoX.&nbsp; SoX is an <a href='http://sox.sourceforge.net/' target='_blank'>open source command line utility for converting many types of audio formats</a>.<br />
<span id="more-427"></span><br /><br />The way we set SoX up was by a Windows XP file type.&nbsp; (No doubt the techniques for other versions of Windows would be similar.)  Open Windows Explorer.&nbsp; From the <strong>Tools</strong> menu, select <strong>Folder Options</strong>.&nbsp; Navigate to the <strong>File Types</strong> tab.&nbsp; Create a <strong>new</strong> file type with the extension ulaw.&nbsp; Now select the extension you just created and press the <strong>Advanced</strong> button.&nbsp; Create a <strong>new action</strong> and label it <strong>Convert to WAV</strong>.&nbsp; The application used to perform the action is the following:<br /><br />
<b>"C:\path\to\sox.exe" --no-clobber -t ul "%1" "%1.wav"</b><br /><br />Wav files may be converted to ulaw using a similar technique.&nbsp; The command is as follows:<br /><br />
<b>"c:\path\to\sox.exe" --no-clobber "%1" -r 8000 -c 1 -t ul "%1.ulaw"</b><br /><br />Bonus tip: if it's legal in your region, you may wish to disable the "beep beep" tone that's played when you conference an extension in.&nbsp; To do this with a Linksys/Cisco VoIP device, set Conference Tone on the Regional tab to 0@-20.]]></content:encoded>
			<wfw:commentRss>http://www.toao.net/427-convert-to-and-from-ulaw-files/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Configure Asterisk for a Home PBX</title>
		<link>http://www.toao.net/426-configure-asterisk-for-a-home-pbx</link>
		<comments>http://www.toao.net/426-configure-asterisk-for-a-home-pbx#comments</comments>
		<pubDate>Wed, 20 Jan 2010 01:01:33 +0000</pubDate>
		<dc:creator>Mango</dc:creator>
				<category><![CDATA[VoIP]]></category>

		<guid isPermaLink="false">http://www.toao.net/?p=426</guid>
		<description><![CDATA[We have a PBX for home use because we want our telephones to have features that are not common or simply not available from any phone provider.&#160; Some of these features include termination failover, custom incoming Caller ID, and call recording.&#160; In this guide we will show you how to configure Asterisk for use as [...]]]></description>
			<content:encoded><![CDATA[<br />We have a PBX for home use because we want our telephones to have features that are not common or simply not available from any phone provider.&nbsp; Some of these features include termination failover, custom incoming Caller ID, and call recording.&nbsp; In this guide we will show you how to configure Asterisk for use as a home PBX.&nbsp; If you are building a PBX for a small or home office you will likely use many of the same techniques.<br /><br />If you do not yet own an Asterisk PBX, there are several ways you may get one.&nbsp; You can build one out of an old PC you have lying around, or if you'd prefer a low-cost, low-power Asterisk server that is also a 4-port router, read our other article about <a href="http://www.toao.net/425-asterisk-on-a-router ">How to Install Asterisk on an Asus WL-520GU Router.</a><br /><br />Once you have Asterisk installed on your hardware of choice, read on to find out how we configured ours.<br />
<span id="more-426"></span><br />
<h2>Configure peers</h2><br />The first thing you will likely want to do is configure peers - that is, IP phones, ATAs, and VoIP providers.&nbsp; We'll start with the [general] context of sip.conf:<br />

<div class="wp_syntax"><div class="code"><pre class="asterisk" style="font-family:monospace;"><span style="color: #00008f; font-weight: bold;"><span class="br0">&#91;</span>general<span class="br0">&#93;</span></span>
<span style="color: #ff6300; font-weight: bold;">context</span><span style="color: #8000ff;">=</span>incoming       <span style="color: #009926; font-weight: bold;">; Default context for incoming calls.</span>
<span style="color: #ff6300; font-weight: bold;">allowguest</span><span style="color: #8000ff;">=</span>no          <span style="color: #009926; font-weight: bold;">; Allow or reject guest calls (default is yes).</span>
<span style="color: #ff6300; font-weight: bold;">allowoverlap</span><span style="color: #8000ff;">=</span>no        <span style="color: #009926; font-weight: bold;">; Disable overlap dialing support (default is yes).</span>
<span style="color: #ff6300; font-weight: bold;">bindport</span><span style="color: #8000ff;">=</span><span style="">5060</span>          <span style="color: #009926; font-weight: bold;">; UDP Port to bind to (SIP standard port is 5060).  Bindport is the local UDP port that Asterisk will listen on.</span>
<span style="color: #ff6300; font-weight: bold;">bindaddr</span><span style="color: #8000ff;">=</span>0.0.0.0       <span style="color: #009926; font-weight: bold;">; IP address to bind to (0.0.0.0 binds to all).</span>
<span style="color: #ff6300; font-weight: bold;">srvlookup</span><span style="color: #8000ff;">=</span>yes          <span style="color: #009926; font-weight: bold;">; Enable DNS SRV lookups on outbound calls.</span>
<span style="color: #ff6300; font-weight: bold;">disallow</span><span style="color: #8000ff;">=</span>all           <span style="color: #009926; font-weight: bold;">; First disallow all codecs.</span>
<span style="color: #ff6300; font-weight: bold;">allow</span><span style="color: #8000ff;">=</span>ulaw             <span style="color: #009926; font-weight: bold;">; Allow codecs in order of preference.  We only use ulaw.</span>
<span style="color: #ff6300; font-weight: bold;">alwaysauthreject</span><span style="color: #8000ff;">=</span>yes   <span style="color: #009926; font-weight: bold;">; Reject calls with 401 instead of letting the caller know whether there was a matching user or peer for their request.</span>
<span style="color: #ff6300; font-weight: bold;">canreinvite</span><span style="color: #8000ff;">=</span>no         <span style="color: #009926; font-weight: bold;">; Whether or not peers may talk directly to each other without Asterisk in the middle.  Yes requres port forwarding.</span>
<span style="color: #ff6300; font-weight: bold;">nat</span><span style="color: #8000ff;">=</span>yes                <span style="color: #009926; font-weight: bold;">; Whether our devices are behind NAT or not.</span>
<span style="color: #ff6300; font-weight: bold;">session-timers</span><span style="color: #8000ff;">=</span>refuse</pre></div></div>
Let's take a short break from configuring Asterisk for a moment and we will describe how our devices are set up.&nbsp; This is largely personal preference and is what works quite well for us.<br /><br />Our VoIP devices register to our VoIP provider, not our Asterisk server.&nbsp; There are two reasons for this.&nbsp; The first is because we want to use our VoIP provider's voicemail so that it will work even if our internet is not working.&nbsp; So it is necessary for our VoIP devices to register to our VoIP provider in order for message waiting indicator to work.&nbsp; The other advantage to this technique is that our VoIP provider may be configured to route incoming calls first to our Asterisk server, and then directly to our device if Asterisk is not working for some reason.&nbsp; There is no need for our VoIP devices to register to our Asterisk server.&nbsp; Because we have full control of our LAN, they have a static IP.&nbsp; Outgoing calls are routed to the Asterisk server via the device's dial plan.&nbsp; When using a setup such as this it is useful to change the SIP Port of your devices to something unique.&nbsp; It is also useful for your RTP Port ranges to be unique.<br /><br />This is also a good time to mention 911.&nbsp; VoIP 911 services typically find your location by looking at a database of customers' Caller ID numbers.&nbsp; So, in order for this to work properly, your outgoing Caller ID must be correct.&nbsp; We do not route 911 through our Asterisk server because there is no reason to - our phone places calls to 911 directly through our VoIP provider.&nbsp; We have requested our VoIP provider to set the outgoing Caller ID number for all of our devices at the same address to the proper Caller ID number for 911.&nbsp; This way we do not need to pay 911 fees for every single DID.&nbsp; However, we have several DIDs, and some devices at the same address should have a special Caller ID for regular (non-911) calls.&nbsp; This may be done with Asterisk.&nbsp; Keep reading!<br /><br />One caveat to this technique is if the 911 operator needs to call you back, they will call you back at the Caller ID number.&nbsp; If that's not okay with you, you should pay 911 fees for each DID you own.<br /><br />Now, here is one way to configure a VoIP device with a static IP.&nbsp; You should have something like the following for each device.&nbsp; It may appear in sip.conf below the [general] context.<br />

<div class="wp_syntax"><div class="code"><pre class="asterisk" style="font-family:monospace;"><span style="color: #009926; font-weight: bold;">; The first line will be the name of this peer.  You may route calls to this device at SIP/pap2t</span>
<span style="color: #00008f; font-weight: bold;"><span class="br0">&#91;</span>pap2t<span class="br0">&#93;</span></span>
<span style="color: #ff6300; font-weight: bold;">defaultuser</span><span style="color: #8000ff;">=</span>mango    <span style="color: #009926; font-weight: bold;">; This is the user ID that is configured on the device.</span>
<span style="color: #ff6300; font-weight: bold;">type</span><span style="color: #8000ff;">=</span>friend          <span style="color: #009926; font-weight: bold;">; This device may both place and receive calls.</span>
<span style="color: #ff6300; font-weight: bold;">callerid</span><span style="color: #8000ff;">=</span><span style="">5555551234</span>  <span style="color: #009926; font-weight: bold;">; Outgoing Caller ID of the device.</span>
<span style="color: #ff6300; font-weight: bold;">context</span><span style="color: #8000ff;">=</span>devices      <span style="color: #009926; font-weight: bold;">; This is the context in extensions.conf that this device will use for outgoing calls.</span>
<span style="color: #ff6300; font-weight: bold;">host</span><span style="color: #8000ff;">=</span>192.168.1.8     <span style="color: #009926; font-weight: bold;">; This is the IP address of the device.</span>
<span style="color: #ff6300; font-weight: bold;">port</span><span style="color: #8000ff;">=</span><span style="">5068</span>            <span style="color: #009926; font-weight: bold;">; This is the SIP Port the device is listening on.</span></pre></div></div>
You will also need to define peers for your VoIP provider(s).&nbsp; Most VoIP providers will provide configuration samples that you may use.<br /><br />
<h2>Asterisk Dialplan</h2><br />The next thing that you must configure is the dialplan.&nbsp; The dialplan determines the behaviour of all incoming and outgoing calls.&nbsp; Because it is large, we shall link to it.&nbsp; Here's an <a href="http://www.toao.net/pub/VoIP/extensions.conf.php">Asterisk Dialplan for a Home PBX</a>.<br /><br />
<h2>You're done!</h2><br />At this point, you have a working Asterisk server, and if you've been following along, you've built it out of a $25 router that uses just a few watts of power.&nbsp; Congratulations and enjoy!]]></content:encoded>
			<wfw:commentRss>http://www.toao.net/426-configure-asterisk-for-a-home-pbx/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Install Asterisk on an Asus WL-520GU Router</title>
		<link>http://www.toao.net/425-asterisk-on-a-router</link>
		<comments>http://www.toao.net/425-asterisk-on-a-router#comments</comments>
		<pubDate>Wed, 20 Jan 2010 00:51:51 +0000</pubDate>
		<dc:creator>Mango</dc:creator>
				<category><![CDATA[VoIP]]></category>

		<guid isPermaLink="false">http://www.toao.net/?p=425</guid>
		<description><![CDATA[Yes, you read right.&#160; For this project, we're going to tell you how we built a fully functioning Asterisk PBX out of a $25 router.&#160; We designed this project because we wanted an Asterisk server for use as a home PBX that could be built relatively easily, used as little power as possible, and cost [...]]]></description>
			<content:encoded><![CDATA[<br />Yes, you read right.&nbsp; For this project, we're going to tell you how we built a fully functioning Asterisk PBX out of a $25 router.&nbsp; We designed this project because we wanted an Asterisk server for use as a home PBX that could be built relatively easily, used as little power as possible, and cost as little as possible.&nbsp; The best part is, a lot of the heavy lifting such as compiling Asterisk has already been done for us.&nbsp; All we need to do is install it.<br /><br />The first version of this article was published on the <a href='http://www.dslreports.com/forum/r22812809-How-to-Install-Asterisk-on-an-Asus-WL520GU-router' target='_blank'>VoIP Tech Chat forum</a> in August 2009.&nbsp; The article that you are reading right now is the latest version.&nbsp; The forum no longer allows us to edit the original post so we have moved it here.<br /><br />A common question people ask is, "Why do you need a PBX for your home?"&nbsp; The answer is we wanted telephone features that we haven't been able to find for a price we're willing to pay.&nbsp; Now, we can have nearly any feature we want.&nbsp; Some of these include termination failover, custom incoming Caller ID, and call recording.&nbsp; The best part is that when we're done, the device will still function as a router.&nbsp; You won't even need to wedge another AC adapter into your power strip.<br />
<span id="more-425"></span><br />Let's get started.&nbsp; The first thing you need to do is <a href='http://www.toao.net/410-install-tomato-asus-wl-520gu'>install Tomato firmware with USB support on your router</a>.&nbsp; Be sure to read the paragraph at the end about the UDP Timeout settings as they are important.&nbsp; True, it is possible to make Asterisk work using different firmware.&nbsp; If you have other firmware that you prefer, you may be able to extrapolate this guide to it.&nbsp; Our favourite firmware is Tomato.<br />
<h2>It's a big Tomato.</h2><br />The next thing you need to do is trim down some unneeded components of Tomato.&nbsp; The WL-520GU only has 16MB of RAM.&nbsp; This isn't a great deal, and we need as much RAM as possible available in order for Asterisk to run properly.&nbsp; Another option is to use the Asus WL-500G Premium router which has 32MB of RAM.&nbsp; It's quite a bit more expensive though, and for our purposes 16MB works like a charm.<br /><br />Open the Tomato's configuration.&nbsp; Navigate to the <strong>Administration</strong> module and then choose <strong>Scripts</strong>.&nbsp; Save the following as the Init script:<br />

<div class="wp_syntax"><div class="code"><pre class="gentext" style="font-family:monospace;">rmmod ext3
rmmod wl
killall -9 buttons</pre></div></div>
This will disable the wireless module and the ext3 module, and the buttons program upon rebooting the router.&nbsp; In all likelihood, you will not use ext3.&nbsp; If you use wireless, omit the second line.&nbsp; If you have configured the button on the back of the router for some important use, omit the last line.<br /><br />Next, choose <strong>Logging</strong> from Tomato's menu.&nbsp; Remove any checkmarks in <strong>Log Internally</strong> and <strong>Log To Remote System</strong>, if they exist.&nbsp; Save your changes.&nbsp; Then, navigate to <strong>Bandwidth Monitoring </strong>and <strong>remove the checkmark in Enable</strong>, if it exists.&nbsp; Save again.<br /><br />Next, choose <strong>Admin Access</strong>.&nbsp; <strong>Disable Telnet and enable SSH</strong>.&nbsp; If you currently use Telnet to access the router's command line, you will now need to use an SSH client such as <a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/" target='_blank'>PuTTY</a>.&nbsp; One added bonus here is that we find PuTTY more user friendly than the Windows Telnet client.<br /><br />Navigate to the <strong>USB and NAS </strong>menu and choose <strong>File Sharing</strong>.&nbsp; Set <strong>Enable File Sharing to No</strong>.&nbsp; <strong>Select FTP Server and disable this</strong> as well.<br /><br />
<h2>Prepare your USB drive.</h2><br />We're almost ready to install Asterisk.&nbsp; But first, we need something to install it on.&nbsp; If you've already formatted your USB drive as EXT2, you may skip the next few steps.&nbsp; If not, attach any spare USB drive that you have around and read on.<br /><br />Return to the Tomato setup page, navigate to <b>USB and NAS</b>, and then to <b>USB Support</b>.&nbsp; Enable <b>Core USB Support</b>, <b>USB 2.0 Support</b>, <b>USB Storage Support</b>, and <b>Ext2 / Ext3 File System Support</b>.&nbsp; Attach your USB drive.&nbsp; If the drive automatically mounted itself, unmount it before continuing.<br /><br />It is time to partition and format the drive.&nbsp; Note that anything on the drive will be erased during this process.&nbsp; SSH into the router and type <b>fdisk /dev/discs/disc0/disc</b>.&nbsp; To be sure you've selected the correct drive, use the command <b>p</b>.&nbsp; The first line will tell you the size of the drive.&nbsp; The system column will tell you the format.&nbsp; If the drive is currently formatted as FAT32, under the System column should be Win95 FAT32.<br /><br />Type <b>d</b> to delete the current partition, if one exists.&nbsp; Then, type <b>n </b>to create a new partition.&nbsp; Follow the prompts to create a primary partition.&nbsp; If it asks for a partition number, enter <b>1</b>.&nbsp; Use the defaults for cylinders.&nbsp; Next, enter <b>w</b> to write the partition table and exit fdisk.&nbsp; If you've made a mistake, instead exit by pressing CTRL+C and start over.<br /><br />Now you have created a partition.&nbsp; You need to format it.&nbsp; You should use the ext2 filesystem, unless you have a really really good reason to use ext3.&nbsp; Type <b>mkfs.ext2 /dev/discs/disc0/part1 -L USB</b><br />Note that "USB" may be anything you like.&nbsp; -L specifies a volume label and I decided "USB" would be easy to remember.<br /><br />Finally, run a check on the new partition by typing <b>fsck.ext2 -f -y /dev/discs/disc0/part1</b><br /><br />Next, you should configure the drive to automatically mount.&nbsp; Return to the Tomato setup page and turn Automount on.&nbsp; In the Run after mounting box, enter the following:<br />

<div class="wp_syntax"><div class="code"><pre class="gentext" style="font-family:monospace;">sleep 15
[ -d /mnt/USB ] &amp;&amp; mount /mnt/USB /opt</pre></div></div>
Why?&nbsp; You'll see <img src='http://www.toao.net/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />   Save your settings and mount your drive.<br /><br />
<h2>Install Asterisk</h2><br />Now we can install Asterisk.&nbsp; The way we installed Asterisk was with Optware.&nbsp; First, download the Optware install script...<br />

<div class="wp_syntax"><div class="code"><pre class="gentext" style="font-family:monospace;">wget http://www.toao.net/pub/VoIP/optware-install-ddwrt.sh -O - | tr -d '\r' &gt; /tmp/optware-install.sh</pre></div></div>
...and run it:<br />

<div class="wp_syntax"><div class="code"><pre class="gentext" style="font-family:monospace;">sh /tmp/optware-install.sh</pre></div></div>
Installing Asterisk is as simple as:<br />

<div class="wp_syntax"><div class="code"><pre class="gentext" style="font-family:monospace;">ipkg update  
ipkg upgrade  
ipkg install asterisk16</pre></div></div>
ipkg may recommend some other packages to install such as sound and music-on-hold files. Install them if you want - we find them useful.&nbsp; We only installed the uLaw versions because we only use the G.711 codec.<br /><br />
<h2>Asterisk Slimming</h2><br />Asterisk's configuration is located in /opt/etc/asterisk.&nbsp; We recommend using the following as your modules.conf.&nbsp; This will conserve even more memory.&nbsp; To edit Asterisk config files, we recommend <a href="http://winscp.net/" target='_blank'>WinSCP</a> with your favourite <a href='http://notepad-plus.sourceforge.net/' target='_blank'>text editor</a>.<br />

<div class="wp_syntax"><div class="code"><pre class="asterisk" style="font-family:monospace;"><span style="color: #00008f; font-weight: bold;"><span class="br0">&#91;</span>modules<span class="br0">&#93;</span></span>
<span style="color: #ff6300; font-weight: bold;">autoload</span><span style="color: #8000ff;">=</span>no                    <span style="color: #009926; font-weight: bold;">; Only load explicitely declared modules</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> format_pcm.so          <span style="color: #009926; font-weight: bold;">; Raw/Sun uLaw/ALaw 8KHz (PCM,PCMA,AU), G.711</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> codec_ulaw.so          <span style="color: #009926; font-weight: bold;">; mu-Law Coder/Decoder</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> app_dial.so            <span style="color: #009926; font-weight: bold;">; Dialing Application</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> app_macro.so           <span style="color: #009926; font-weight: bold;">; Extension Macros</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> app_playback.so        <span style="color: #009926; font-weight: bold;">; Sound File Playback Application</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> app_mixmonitor.so      <span style="color: #009926; font-weight: bold;">; Record calls</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> app_setcallerid.so     <span style="color: #009926; font-weight: bold;">; Set CallerID Presentation Application</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> app_disa.so            <span style="color: #009926; font-weight: bold;">; DISA - used for calling card-type projects</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> app_transfer.so        <span style="color: #009926; font-weight: bold;">; Transfer calls - good for use with DISA so that you don't proxy audio</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> func_timeout.so        <span style="color: #009926; font-weight: bold;">; Adjust timeout; handy for use with DISA.  But not essential if you can dial quickly.</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> func_callerid.so       <span style="color: #009926; font-weight: bold;">; Caller ID related dialplan functions</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> func_logic.so          <span style="color: #009926; font-weight: bold;">; GotoIf() and friends</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> func_strings.so        <span style="color: #009926; font-weight: bold;">; String handling functions</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> pbx_config.so          <span style="color: #009926; font-weight: bold;">; This loads your dialplan</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> pbx_spool.so           <span style="color: #009926; font-weight: bold;">; This is needed to make call files work</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> chan_sip.so            <span style="color: #009926; font-weight: bold;">; SIP</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> res_musiconhold.so     <span style="color: #009926; font-weight: bold;">; Music-on-Hold</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> func_shell.so          <span style="color: #009926; font-weight: bold;">; Execute shell commands and use the output in the dialplan.  (Useful for formatting things with gnu-sed.)</span>
<span style="color: #ff6300; font-weight: bold;">load</span> <span style="color: #8000ff;">=&gt;</span> func_channel.so        <span style="color: #009926; font-weight: bold;">; Find information about the channel.  (Used with our implementation of DISA.)</span>
&nbsp;
<span style="color: #009926; font-weight: bold;">; We do not use the following modules but mention them because they are common.</span>
<span style="color: #009926; font-weight: bold;">;load =&gt; format_wav.so          ; Microsoft WAV format</span>
<span style="color: #009926; font-weight: bold;">;load =&gt; app_echo.so            ; Simple Echo Application </span>
<span style="color: #009926; font-weight: bold;">;load =&gt; res_features.so        ; Call parking</span></pre></div></div>
You should also disable logging, unless you need it for diagnostic purposes.&nbsp; Our logger.conf is now a blank file.<br /><br />
<h2>Start Asterisk</h2><br />Most likely you will want Asterisk to load automatically.&nbsp; Return to the Tomato setup page, navigate to USB and NAS, and then to USB support.&nbsp; Add the following to the Run after mounting box:<br />

<div class="wp_syntax"><div class="code"><pre class="gentext" style="font-family:monospace;">cru &quot;a&quot; &quot;asterisk&quot; &quot;*&quot; &quot;*&quot; &quot;*&quot; &quot;*&quot; &quot;*&quot; &quot;asterisk&quot;</pre></div></div>
This will create a cron job that will check to make sure Asterisk is loaded every minute.&nbsp; If Asterisk is terminated for any reason - for example lack of memory - the cron job will restart it in one minute.&nbsp; This should not happen if you've followed all of our directions but it it is nice to have just in case.&nbsp; One side effect to this is that "Remote UNIX connection/Remote UNIX connection disconnected" will appear in the CLI every minute.&nbsp; At this point you may start asterisk by running the <strong>asterisk</strong> command, or by rebooting you router and waiting for the cron job to start it.<br /><br />
<h2>Accessing the Asterisk command line</h2><br />To access the Asterisk command line, type the following:<br />

<div class="wp_syntax"><div class="code"><pre class="gentext" style="font-family:monospace;">asterisk -vvvr</pre></div></div>
The r switch connects to the already-running Asterisk, and vvv tells Asterisk to set verbosity to 3.&nbsp; This is useful when troubleshooting your dial plan.<br /><br />
<h2>Make a backup</h2><br />At this point, it might be worthwhile to make a backup of your /opt directory.&nbsp; In case your USB drive fails or you make a mistake and mess up your configuration, you can restore everything to defaults.&nbsp; I do this every time I make major changes to my configuration.&nbsp; Mount a CIFS share to /cifs1 and type:<br />

<div class="wp_syntax"><div class="code"><pre class="gentext" style="font-family:monospace;">tar -cvvf /cifs1/opt-backup.tar /opt</pre></div></div>
&nbsp;<br />
<h2>Congratulations!</h2><br />If everything worked properly and you didn't see any errors, you're done.&nbsp; If you don't yet know how to configure Asterisk, take a look at our next article, <a href="http://www.toao.net/426-configure-asterisk-for-a-home-pbx">Configure Asterisk for a Home PBX</a>.&nbsp; But first, take a minute and congratulate yourself.&nbsp; You just built a PBX out of a <b>router</b>.&nbsp; Isn't that just the coolest thing ever!?]]></content:encoded>
			<wfw:commentRss>http://www.toao.net/425-asterisk-on-a-router/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Low Cost Internet Faxing for Canada</title>
		<link>http://www.toao.net/422-low-cost-internet-faxing-for-canada</link>
		<comments>http://www.toao.net/422-low-cost-internet-faxing-for-canada#comments</comments>
		<pubDate>Sat, 16 Jan 2010 21:26:15 +0000</pubDate>
		<dc:creator>Mango</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[VoIP]]></category>

		<guid isPermaLink="false">http://www.toao.net/?p=422</guid>
		<description><![CDATA[With the growing popularity of VoIP, more and more homes and businesses do not have a POTS (plain old telephone service) line.&#160; VoIP is excellent technology for voice calls (hence the letter "V" in "VoIP") but that's about all it's good for.Finding a reliable fax solution was interesting to say the least.&#160; Most people we [...]]]></description>
			<content:encoded><![CDATA[<br />With the growing popularity of VoIP, more and more homes and businesses do not have a POTS (plain old telephone service) line.&nbsp; VoIP is excellent technology for voice calls (hence the letter "V" in "VoIP") but that's about <b>all</b> it's good for.<br /><br />Finding a reliable fax solution was interesting to say the least.&nbsp; Most people we asked for advice told us, "Faxing is archaic technology.&nbsp; Forget that and use e-mail instead!"&nbsp; We certainly rarely send faxes, but as long as our customers wish to fax in orders, we are going to need a reliable way of receiving them.&nbsp; Now, we've found one!<br />
<span id="more-422"></span><br />
<h2>Just the Fax, ma'am.</h2><br />If you want to use a regular fax machine, you should select both an ATA and a T.38 provider.&nbsp; T.38 is a protocol that relays fax data over a network such as the Internet.&nbsp; Because the data is not converted into an audio signal and compressed, faxing has a much much higher chance of working.&nbsp; T.38 is also relatively capable of dealing with minor packet loss.<br /><br />It's true that it is possible to fax over VoIP at very low speed such as 9600 bps without using T.38 but this relies on a great deal of factors lining up perfectly.&nbsp; For example, this technique is <b>very</b> sensitive to packet loss and jitter.&nbsp; We would not rely on a VoIP fax setup for anything more than a couple of faxes per year. If you really want to try it, <a href='http://www.future-nine.com/faq/index.php?action=artikel&#038;cat=1&#038;id=5&#038;artlang=en' target='_blank'>Future-Nine</a> has a good set of tips.<br /><br />Some ATAs that support T.38 are the SPA-2102 and the SPA-3102. (The PAP2T does not support T.38.) Some VoIP providers are also T.38 providers.&nbsp; We can only recommend two: <a href='http://www.callcentric.com/' target='_blank'>Callcentric</a> and <a href='http://www.acrovoice.ca/'>Acrovoice</a>.&nbsp; One nice thing about Callcentric is that their monthly fees are very low.&nbsp; <a href='http://www.shaw.ca' target='_blank'>Shaw Cable</a>'s Digital Phone service also supports T.38.<br /><br />When shopping for a T.38 provider, ask if their calls are sent and received over TDM trunks.&nbsp; If they are, this is a good thing.&nbsp; Callcentric's local DIDs are not always delivered over TDM trunks.&nbsp; We had mixed success receiving faxes with a local DID.&nbsp; Their toll-free DIDs are delivered over TDM, and their termination (outgoing calls) is over TDM.&nbsp; So if you want to use Callcentric for incoming faxes, you should use a toll-free DID.<br />
<h2>Caveat emptor</h2><br />Shaw Cable recommends setting fax machines to 9600 bps and turning off ECM/error correction mode.&nbsp; <b>This is bad advice</b>.&nbsp; Perhaps this was necessary with the old Motorola modems, but with the new Arris modems, 9600 bps is not necessary.&nbsp; Our fax works perfectly fine at high speeds.&nbsp; ECM should not be turned off for the simple reason that if a fax fails, <b>the machine may report a successful send</b> if ECM is turned off.&nbsp; You will have no idea that the fax actually failed, and the receiver may have no idea that you attempted to send a fax.&nbsp; So if your fax doesn't work with ECM turned on, it's time to find another fax provider.&nbsp; Turning off ECM is not a solution!<br /><br />(Note that Future-Nine's tips that we linked to above suggest turning off ECM.&nbsp; This probably is necessary to make faxing over VoIP work, and is one of the reasons we do not recommend faxing over VoIP.)<br /><br />One other fact that is interesting to note is that we cannot fax on line 3 of our 4-line modem.&nbsp; We have no idea why, and unfortunately not surprisingly, neither does Shaw.<br /><br />Some users report faxing success without a POTS line only when they place the fax behind an ADSL filter.&nbsp; We have not found this necessary but include it in case it helps anyone.<br />
<h2>Faxing with a PC</h2><br />If you do not care to use a regular fax machine, you have other options. Callcentric has a fax-to-PDF feature for incoming faxes.&nbsp; Again, you should use a toll-free DID for this.<br /><br />For sending faxes without a fax machine, we have had good success with <a href='http://www.faxback.com/msfaxplugin/index.aspx?source=FaxBack%20homePage' target='_blank'>FaxBack's T.38 Plug-in</a> and Callcentric.&nbsp; We have tried other T.38 software such as T38Modem and Zoiper but try as we might we have not been able to make it work.&nbsp; We were not able to receive faxes with a Callcentric DID and this plug-in.<br /><br />In our situation, we needed to receive faxes without a fax machine, and we wanted to port an existing local number.&nbsp; It was very difficult to find a company that could port Canadian DIDs and was not VoIP based.&nbsp; We tested a company called UFAX.NET and we were hopeful because of their salesperson's impressive volume of knowledge.&nbsp; Unfortunately, as soon as we signed up, the salesperson inexplicably refused to respond to our emails and phone calls.&nbsp; Their technical support was very slow to respond to queries and was not helpful.&nbsp; <b>We do not recommend UFAX.NET.</b><br />
<h2>And about time, too.</h2><br />Fortunately, we found <a href='http://www.myfax.com/' target='_blank'>MyFax</a>.&nbsp; They are not SIP-based. Their packages start at $13 per month which includes 100 pages out and 200 pages in.&nbsp; It took plenty of encouragement to get their salesperson to answer questions, but eventually he did.&nbsp; They did successfully port our Vancouver DID.&nbsp; We have been using them since August 2009 and astonishingly have been problem-free.&nbsp; MyFax's technical support <b>is absolutely phenomenal</b>.&nbsp; They happily escalated an issue we were having up three levels of support, and then to their carrier.&nbsp; (The issue was that MyFax could not receive faxes from Shaw Cable; MyFax could receive faxes from anyone else and Shaw could send faxes to anyone else.)  We ended up solving the problem ourselves - it was largely due to an issue with Shaw's equipment.&nbsp; However we were very grateful for the help that they offered in spite of the fact that the issue was not their fault because it gave us valuable information with which to solve the problem.<br /><br />Currently, for business faxing, we use Shaw Cable for outgoing and MyFax for incoming.&nbsp; For personal faxing, we use Callcentric with FaxBack's plugin for outgoing.&nbsp; We are currently helping to beta test a new Canadian VoIP provider based in Victoria that supports T.38.&nbsp; If it works as well as we anticipate we will be thrilled.&nbsp; Stay tuned.]]></content:encoded>
			<wfw:commentRss>http://www.toao.net/422-low-cost-internet-faxing-for-canada/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>VoIP Security - Could Someone be Listening In?</title>
		<link>http://www.toao.net/418-voip-security-could-someone-be-listening-in</link>
		<comments>http://www.toao.net/418-voip-security-could-someone-be-listening-in#comments</comments>
		<pubDate>Mon, 28 Dec 2009 00:11:43 +0000</pubDate>
		<dc:creator>Mango</dc:creator>
				<category><![CDATA[VoIP]]></category>

		<guid isPermaLink="false">http://www.toao.net/?p=418</guid>
		<description><![CDATA[The question of VoIP security often comes up on various VoIP forums, and it's a good one.&#160; Could someone be listening to your conversation?&#160; While it's theoretically possible, here are a few security tips that will help keep your network secure.
The first thing we'd like to point out is that VoIP can actually be much [...]]]></description>
			<content:encoded><![CDATA[<br />The question of VoIP security often comes up on various VoIP forums, and it's a good one.&nbsp; Could someone be listening to your conversation?&nbsp; While it's theoretically possible, here are a few security tips that will help keep your network secure.<br />
<span id="more-418"></span><br /><br />The first thing we'd like to point out is that VoIP can actually be much easier to secure than POTS.&nbsp; Most people are unaware that POTS lines are often very easy to tap.&nbsp; The demarc (the point at which the telephone company's network ends and your home wiring begins) is often mounted on the outside wall of a house, at ground level.&nbsp; A small FM transmitter could be attached in a matter of seconds.&nbsp; Even if your demarc is mounted inside, the wires have to come from somewhere, and are often still attached to the home at ground level, or obscured by trees.<br /><br />The second thing we'd like to mention are a few security tips.&nbsp; Since VoIP runs over IP networks, simple network security rules apply.&nbsp; Let's start with one we were recently surprised to discover is overlooked by a great deal of VoIP users.&nbsp; Never, <b>ever</b> place your VoIP device in DMZ, except perhaps for brief periods for testing.&nbsp; This could expose your VoIP device's administration to anyone who knows your IP address.&nbsp; If your VoIP provider tells you to this, they are <b>wrong</b> and it is time to find a new VoIP provider.&nbsp; Even if you disable your VoIP device's web server, DMZ still shouldn't be necessary.&nbsp; Your VoIP provider should handle NAT properly.&nbsp; If you want to reinvite audio, forward only the specific SIP and RTP ports necessary.<br /><br />If you have a wireless router, use encryption such as WPA.&nbsp; The older WEP encryption is not as good as WPA and can be cracked relatively easily.&nbsp; Once someone is able to access your wireless network they can tap VoIP calls in a variety of ways, such as spoofing a configuration file, changing the SIP server to one they control, or configuring your router to send copies of VoIP data to them.&nbsp; We rarely advocate replacing working hardware, but if any of your equipment only supports WEP, you should replace it.&nbsp; Or, better still, don't use wireless.&nbsp; (Mango's personal opinion here.)<br /><br />If you do not use wireless or your wireless router is secure, it becomes harder to access your network.&nbsp; For most people, a hacker physically entering their home and accessing their network is relatively unlikely.&nbsp; The next weak point in the network are the computers connected to it.&nbsp; A user could be enticed to install software that would allow the hacker control of the user's computer, and thus access to the network.&nbsp; Be sure to keep your antivirus software up to date and use common sense when opening email attachments and installing software.<br /><br />Of course, if you distribute VoIP through your home via an outdoor-mounted demarc, you run into the same security issues that exist with POTS.<br /><br />While very few methods of communication are completely secure, basic network security practices will provide more than ample levels of security for the average residential or small business VoIP customer.]]></content:encoded>
			<wfw:commentRss>http://www.toao.net/418-voip-security-could-someone-be-listening-in/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Turn your $25 Asus WL-520GU router into a $250 router, for free!</title>
		<link>http://www.toao.net/410-install-tomato-asus-wl-520gu</link>
		<comments>http://www.toao.net/410-install-tomato-asus-wl-520gu#comments</comments>
		<pubDate>Tue, 29 Sep 2009 18:57:05 +0000</pubDate>
		<dc:creator>Mango</dc:creator>
				<category><![CDATA[VoIP]]></category>

		<guid isPermaLink="false">http://www.toao.net/?p=410</guid>
		<description><![CDATA[We are not just kidding.Thanks to some very fine folks who have worked very hard on replacement firmware for Linux-based routers, the above statement is a reality.&#160; We used to use a Cisco RV042 router which we purchased for over $200, and we haven't even had it powered up since we completed this project.
The project [...]]]></description>
			<content:encoded><![CDATA[<br />We are not just kidding.<br /><br />Thanks to some very fine folks who have worked very hard on replacement firmware for Linux-based routers, the above statement is a reality.&nbsp; We used to use a Cisco RV042 router which we purchased for over $200, and we haven't even had it powered up since we completed this project.<br />
<span id="more-410"></span><br /><br />The project is installing Tomato firmware on the Asus WL-520GU router.&nbsp; True, there are many routers that use Linux-based firmware, and there are several different firmware distributions to choose from.&nbsp; So why did we choose this combination?<br /><br />Tomato firmware arguably has the best reputation for QoS routing.&nbsp; We plan to use this router with VoIP and we want to give VoIP traffic a higher priority than regular internet traffic.&nbsp; With QoS routing, we can do this.&nbsp; The distribution of Tomato we selected for this project also supports USB storage devices.&nbsp; This brings us to our reason for using the Asus WL-520GU which is that it has a USB port.&nbsp; It's also a very inexpensive router which we've seen on sale for as low as $25.<br />
<h2>Level of difficulty: Moderate to Advanced</h2><br />In order to complete this project, you should be comfortable with basic networking concepts such as how to configure a router, DHCP vs. a static IP, public IPs vs. internal IPs, how to use Telnet/SSH, and so on.<br /><br />
<b>Before we start,</b> you may want to attach the WL-520GU to another router connected to the Internet.&nbsp; Some modems, such as our Motorola cable modem, don't particularly like issuing IP addresses and you will need to reboot the WL-520GU a few times during this process.&nbsp; In order to do this, you will need to be sure both routers use different IP ranges.&nbsp; This step is optional, but prevents interruption of internet for other computers in your household and may eliminate the need to reboot your cable/DSL modem multiple times.<br />
<h2>Install DD-WRT</h2><br />Now for the first step, which is obtaining DD-WRT.&nbsp; No, that's not a typo; you should install DD-WRT before installing Tomato.&nbsp; There is a good reason for this but we cannot remember what it is, and since this is a "How To" and not "Why", suffice to say "you need to install DD-WRT first."<br /><br />First, download the latest stable version of DD-WRT.&nbsp; Visit <a href='http://www.dd-wrt.com/' target='_blank'>http://www.dd-wrt.com/</a>, click the <b>Downloads </b>tab, navigate to the <b>stable </b>folder, navigate to the <b>latest version</b>, then the<b> Consumer </b>folder, then the <b>Asus </b>folder, then the <b>WL520GU </b>folder, and finally to the file <b>dd-wrt.vXX_mini_asus.trx</b>.&nbsp; <i>(Whew!)</i>  We have heard rumors that you should not save this file in any directory that has a space in it.&nbsp; We haven't tested this, but recommend you do this to be on the safe side.<br /><br />Now, you need to flash the DD-WRT firmware to the router.&nbsp; We would recommend setting your computer up with a static IP.&nbsp; We discovered that while flashing, the router did not always issue an IP address.&nbsp; As with flashing any firmware, be sure to do this over a wired connection and not a wireless one.&nbsp; You may also need to disable any software firewalls.&nbsp; After setting the static IP, test to be sure that you can access the router's setup page over a wired connection.<br /><br />To flash firmware, you should use Asus' Firmware Restoration Utility.&nbsp; Note: <b>do not use the latest version from Asus' website</b> as it probably won't work.&nbsp; The best version to use is the one on the CD that came with the router.&nbsp; If you have lost it, be sure download the <b>right version </b>of the Firmware Restoration Utility for your specific router.&nbsp; Load the Firmware Restoration Utility and browse to find the trx file you just downloaded.&nbsp; Don't upload it yet!<br /><br />Unplug the power from the router and consider the two buttons on the back.&nbsp; Using a small screwdriver or a ballpoint pen, press the reset button.&nbsp; Hold down the reset button and plug the router back in.&nbsp; When the Power LED begins to flash, release the reset button, and upload the firmware.<br /><br />If all goes well, DD-WRT will be installed.&nbsp; To be sure everything worked, navigate to the setup page and log in.&nbsp; One set of instructions we were following told us to log in with blank username and password admin.&nbsp; Another told us username admin and blank password.&nbsp; Actually, we had to log in with admin/admin.<br />
<h2>Install Tomato</h2><br />Next, take a look at <a href='http://www.linksysinfo.org/forums/showthread.php?t=60185' target='_blank'>this forum thread</a>.&nbsp; This is the thread that talks about a modification of <a href='http://www.linksysinfo.org/forums/showthread.php?t=60185' target='_blank'>Tomato with USB support</a>.&nbsp; Navigate to the download link.&nbsp; Note that there are a few flavours available.&nbsp; We chose the ext flavour because we needed tools to partition and format the USB drive.&nbsp; If you have a Linux box that you can use instead, you can download the smaller Standard build, or if you do not require Samba, you can download the even smaller Lite build.&nbsp; Download the file, <b>unrar it</b>, and <b>rename the resulting *.trx file to *.bin</b>.<br /><br />The password after we flash Tomato will be different and it is necessary to find out what it will be.&nbsp; In order to do this, telnet into the router.&nbsp; <b>Use the username root </b>and whatever password you used to access the setup page.&nbsp; Type <b>nvram get http_passwd</b> and copy the password that it returns.<br /><br />Now, return to the DD-WRT setup page.&nbsp; Navigate to Administration and then to Firmware Upgrade.&nbsp; Browse to the Tomato firmware you just downloaded and upgrade.&nbsp; Attempt to log in to the Tomato setup page.&nbsp; When we did it, the username was root, and the password was what we found in the previous step.<br /><br />Congratulations!&nbsp; You have just installed Tomato on your router!&nbsp; As with any new router install, before you continue, be sure to do the following:<br /><br />
<b>1)</b> Change the password on the router to something difficult to guess.<br /><br />
<b>2)</b> Secure the wireless connection, or disable it if you don't plan to use it.<br /><br />
<b>3)</b> You may want to disable wireless access to the Tomato setup page.<br /><br />
<b>4)</b> You may want to properly configure such settings as Time Zone.<br /><br />Next, if you plan to, or even may possibly one day use your router for VoIP, there are a few more settings you should consider.&nbsp; Some of the default Tomato settings conflict with the default settings of Sipura / Linksys / Cisco adapters.&nbsp; These are the UDP Timeout settings and if they are left at their defaults, VoIP devices will sometimes fail to register.&nbsp; These may be found on the Conntrack/Netfilter page in the Tomato config.&nbsp; Set "unreplied timeout" to 10 seconds and "assured timeout" to 325 seconds.&nbsp; On VoIP devices, the NAT Keep Alive Intvl should be greater than the unreplied timeout and less than the assured timeout.&nbsp; By default this is 15 which works well.]]></content:encoded>
			<wfw:commentRss>http://www.toao.net/410-install-tomato-asus-wl-520gu/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ATAs vs. IP Phones: Which should you choose?</title>
		<link>http://www.toao.net/405-atas-vs-ip-phones-which-should-you-choose</link>
		<comments>http://www.toao.net/405-atas-vs-ip-phones-which-should-you-choose#comments</comments>
		<pubDate>Thu, 17 Sep 2009 23:57:01 +0000</pubDate>
		<dc:creator>Mango</dc:creator>
				<category><![CDATA[VoIP]]></category>

		<guid isPermaLink="false">http://www.toao.net/?p=405</guid>
		<description><![CDATA[Instead of using a customary ATA to convert legacy telephones or PBX equipment, some users of VoIP prefer to use a "pure IP" system and use IP phones.&#160; There are advantages to both methods.
ATAs are the popular choice for the home user.&#160; Many home users want to mimic as closely as possible a typical POTS [...]]]></description>
			<content:encoded><![CDATA[<br />Instead of using a customary ATA to convert legacy telephones or PBX equipment, some users of VoIP prefer to use a "pure IP" system and use IP phones.&nbsp; There are advantages to both methods.<br />
<span id="more-405"></span><br /><br />ATAs are the popular choice for the home user.&nbsp; Many home users want to mimic as closely as possible a typical POTS line in which another member of the family who wishes to enter the conversation may simply pick up a second phone.&nbsp; Telephones connect to ATAs using the same type of cables as they would to connect to a POTS line.&nbsp; One can easily connect an ATA to household wiring so that all phones may use VoIP.&nbsp; (Be sure to disconnect the POTS provider first.)  ATAs are a very economical option and can be purchased for less than $50.&nbsp; With T.38, the second line of an ATA may be connected to a fax machine.&nbsp; Because of the popularity of ATAs, they are better known at the support departments of most VoIP providers.&nbsp; It's cheaper to put an ATA on redundant power; simply use a UPS.&nbsp; With IP Phones you'd need either one UPS per phone, or Power-over-Ethernet.<br /><br />IP phones are a popular choice for business users from home offices to large enterprises.&nbsp; With IP phones there need not be a restriction of a certain number of phone lines.&nbsp; The number of concurrent calls you may make are limited only by your available bandwidth.&nbsp; With providers that charge per minute, you may make and receive theoretically any number of concurrent calls during a busy time and not worry about expensive telephone lines during a quiet time.<br /><br />IP phones have several usability enhancements when compared to analog phones.&nbsp; Caller ID is delivered to IP phones instantly, not in between the first and second ring.&nbsp; IP phones typically provide higher audio quality.&nbsp; (The effects of this are most noticeable when making calls from IP phone to IP phone.)  You may tap the hook of an IP phone and have it disconnect the call immediately without accidentally activating 3-way calling.&nbsp; When you press the Redial button on an IP phone, the phone may start ringing instantly without having to "dial".&nbsp; Visual call waiting may be silent with an IP phone.&nbsp; The voicemail provider may turn the message waiting indicator on and off mid-call.&nbsp; We also hear reports that say conference calls and speaker phones perform much better with an IP phone.<br /><br />It is even possible to write software for some IP phones.&nbsp; If your phone system requires some uncommon feature, you may build it, or hire a programmer to build it for you.<br /><br />There are plenty of happy VoIP users using both ATAs and IP phones.&nbsp; Consider the advantages of both and select the one that is right for you.]]></content:encoded>
			<wfw:commentRss>http://www.toao.net/405-atas-vs-ip-phones-which-should-you-choose/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VoIP ATAs Explained: Which VoIP Adapter should I buy?</title>
		<link>http://www.toao.net/404-which-ata-should-i-buy</link>
		<comments>http://www.toao.net/404-which-ata-should-i-buy#comments</comments>
		<pubDate>Thu, 17 Sep 2009 23:52:17 +0000</pubDate>
		<dc:creator>Mango</dc:creator>
				<category><![CDATA[VoIP]]></category>

		<guid isPermaLink="false">http://www.toao.net/?p=404</guid>
		<description><![CDATA[Need to purchase an ATA or other piece of VoIP hardware?&#160; There are plenty of retailers around.&#160; Canadians may wish to use Shopbot.ca to find the best price at a Canadian retailer.&#160; Americans may use Froogle or similar.&#160; Does a deal sound too good to be true?&#160; Maybe it is.&#160; Be sure to check the [...]]]></description>
			<content:encoded><![CDATA[<br />Need to purchase an ATA or other piece of VoIP hardware?&nbsp; There are plenty of retailers around.&nbsp; Canadians may wish to use <a href="http://www.shopbot.ca/" target="_blank">Shopbot.ca</a> to find the best price at a Canadian retailer.&nbsp; Americans may use <a href="http://www.froogle.com/" target="_blank">Froogle</a> or similar.&nbsp; Does a deal sound too good to be true?&nbsp; Maybe it is.&nbsp; Be sure to check the retailer out on a site such as <a href="http://www.resellerratings.com/" target="_blank">ResellerRatings.com</a>.&nbsp; If you don't feel like buying from a particular retailer, reputable retailers such as <a href="http://www.ncix.com/" target="_blank">Netlink Computers/NCIX</a> will often price match in stock items from other online retailers.&nbsp; If you don't require a new unit, you can often find VoIP hardware on Craigslist.&nbsp; Be sure to test these items before purchasing.&nbsp; Sometimes, hardware is locked to a specific provider.&nbsp; Unfortunately, there are a great deal of counterfeit VoIP devices on eBay (many from Asia) and via 3rd-party sellers on Amazon.&nbsp; We suggest not buying from overseas and ensuring that your seller has a return policy.<br /><br />For some information about how to detect <a href="http://www.dslreports.com/forum/r21331513-Equipment-Counterfeit-Linksys-PAP2" target="_blank">counterfeit VoIP hardware</a>, check out <a href="http://www.dslreports.com/forum/r21331513-Equipment-Counterfeit-Linksys-PAP2" target="_blank">this post at DSLReports.com</a>.<br />
<span id="more-404"></span><br /><br />An Analog Telephone Adapter allows you to use your existing telephones or PBX system with a VoIP provider.&nbsp; It's often the least expensive way to convert to VoIP.&nbsp; Some VoIP providers require you to Bring Your Own Device (BYOD) while with others, the Device Is Supplied by the COmpany (DISCO).<br /><br />If the ATA is supplied to you by the provider, you typically need not worry about configuring it as that will be done for you.&nbsp; If the provider you choose requires you to BYOD, you will need to select and learn how to use an ATA.<br /><br />There are two common manufacturers of ATAs.&nbsp; The first we will mention is Grandstream.&nbsp; Grandstream is known for making very inexpensive VoIP hardware.&nbsp; We have heard reports of mixed success with Grandstream equipment.&nbsp; Some have not been happy while some have no trouble at all.&nbsp; <a href="http://www.dslreports.com/forum/voip" target="_blank">VoIP Tech Chat</a> Member PX Eliezer states that there is a significant issue regarding a feature of the Grandstream Handytone 286.&nbsp; There is an option called Dial Plan Prefix String that can be selected which causes the unit to place a "1" at the start of any number you dial. That of course allows you to skip dialing the "1" yourself.&nbsp; PX Eliezer urges you not to use this option because then <b>you will not be able to call 911.</b>  If you dialed 911, the adapter would send it out as 1911, and you'd be in trouble.&nbsp; So, if you have a 286, leave that box blank!<br /><br />The most popular manufacturer of ATAs is Cisco.&nbsp; Cisco makes ATAs formerly made by Sipura.&nbsp; A company called Linksys bought Sipura, and then Cisco bought Linksys.&nbsp; Cisco's adapters are the most popular due to their wide range of configuration options, their reputation for reliability, and their low price.&nbsp; The feature that arguably most sets Cisco ATAs apart from Grandstream is the dial plan.&nbsp; This very powerful feature allows you to customize dialing rules so that they properly match your region.&nbsp; You may also customize practically everything else about your adapter to your heart's content, from ringing, to the busy signal, and even the dial tone.&nbsp; Here, we outline the most popular Cisco ATAs currently in production and the differences between them:<br /><br />
<b>PAP2T</b><br /><br />This is the least expensive of Cisco's ATAs and by far the most popular.&nbsp; It is an excellent choice for someone wanting to save some money and invest a little time rolling their own phone system, or even a VoIP veteran.&nbsp; The PAP2T handles up to two providers on two separate lines.&nbsp; That is, in order to use a second provider, you must have a second phone, or a 2-line phone.&nbsp; The PAP2T does not support T.38 for faxing.&nbsp; This means that while it is theoretically possible to send or receive a fax with a PAP2T, it will be slow and will not be reliable.<br /><br />
<b>SPA2102</b><br /><br />The SPA2102 is a PAP2T with a few extra features.&nbsp; It supports T.38, so it will be much more reliable than a PAP2T for faxing.&nbsp; The SPA2102 has a built-in router, but not a particularly good one.&nbsp; Its QoS routing works for some users, however it's not particularly configurable and if it doesn't work for you there's very little you can do to fix it.&nbsp; If you don't have a router that supports Quality of Service to prioritize VoIP, the best, most popular, and often cheapest option is any router with Tomato firmware installed on it.&nbsp; A good QoS router is very important so that regular internet traffic does not degrade the quality of your VoIP calls.&nbsp; With QoS, you can make VoIP calls with audo quality indistinguishable from (or better than!) POTS.<br /><br />
<b>SPA3102</b><br /><br />The SPA3102 handles multiple providers in different ways from the PAP2T and the SPA2102.&nbsp; It only has one line so you can only make/receive one call at a time, but you can use the same phone and route the call through any provider you like using its gateway feature.&nbsp; It does have an FXO port for connecting a POTS line.&nbsp; The thought behind this feature was that you could call its POTS line from some other location and route your call inexpensively out over VoIP.&nbsp; Or, you could route local calls through the POTS line and long distance through VoIP.&nbsp; Unfortunately, the FXO port does not work nearly as well as many users hoped.&nbsp; Most report poor audio quality including echoing.&nbsp; The SPA3102 supports T.38 and contains a similar router to the SPA2102.<br /><br />You may also want to consider an <a href='/405-atas-vs-ip-phones-which-should-you-choose'>IP phone</a>.&nbsp; While IP phones typically involve a larger financial investment than an ATA, they often have more/better features.]]></content:encoded>
			<wfw:commentRss>http://www.toao.net/404-which-ata-should-i-buy/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Linksys SPA921 IP Phone Review</title>
		<link>http://www.toao.net/27-linksys-spa921-ip-phone-review</link>
		<comments>http://www.toao.net/27-linksys-spa921-ip-phone-review#comments</comments>
		<pubDate>Sun, 22 Mar 2009 17:46:02 +0000</pubDate>
		<dc:creator>Mango</dc:creator>
				<category><![CDATA[Toys]]></category>
		<category><![CDATA[VoIP]]></category>

		<guid isPermaLink="false">http://www.toao.net/27/linksys-spa921-ip-phone-review/</guid>
		<description><![CDATA[We got so excited setting up the VoIP system at my office that we decided to set it up at my home, too.&#160; We didn't have a PBX to worry about so could choose pretty much any hardware we wanted.&#160; We decided on a Linksys SPA921 IP phone.In the world of all things wireless, it [...]]]></description>
			<content:encoded><![CDATA[<br />We got so excited setting up the VoIP system at my office that we decided to set it up at my home, too.&nbsp; We didn't have a PBX to worry about so could choose pretty much any hardware we wanted.&nbsp; We decided on a Linksys SPA921 IP phone.<br /><br />In the world of all things wireless, it seems that corded phones are marketed at those who can't or don't wish to afford a cordless phone.&nbsp; Thus, to keep prices low, quality is often low.&nbsp; For ages, we've wanted a really nice corded phone...but we haven't been able to find one, until now.<br />
<span id="more-27"></span>
<h2>Firmware upgrade</h2><br />The first thing you need to know is that this is a HOT-looking phone.&nbsp; We got it out of the box and were sold right then and there.&nbsp; We were disappointed when we tested it out though.&nbsp; There was echo.&nbsp; Echo.&nbsp; Plenty of it.&nbsp; It.&nbsp; So much that it made the phone unusable.&nbsp; Unusable.<br /><br />Dammit.<br /><br />Dammit.<br /><br />We played with various settings including turning down the gain on the handset.&nbsp; This didn't help, and even one person on the other end complained about echo when we talked loudly.&nbsp; We decided to do a firmware upgrade, even though the notes mentioned nothing about echo cancellation.&nbsp; After the firmware upgrade, the echo left, completely.&nbsp; <em><strong>WOOHOO!</strong></em><br />
<h2>Nifty features</h2><br />Now that we had voice quality at an acceptable level, we could start playing with all the features the phone had to offer.&nbsp; Scrolling through the menus, we discovered we could set a ringtone.&nbsp; We tried them all, hoping everyone else in earshot wouldn't mind.&nbsp; Now, here's the best part about this phone.&nbsp; The very last ringtone was <em>the CTU ringtone from '24'!!!</em>  Now I can pretend to be Jack Bauer.&nbsp; Send that to my screen, would you please?<br /><br />The SPA921 has a voicemail button on the phone which is programmable with the access code of your voicemail provider.&nbsp; Unfortunately, as far as we know, there's no way for it to pause for a few seconds and then automatically enter your password.<br /><br />We tested out the speakerphone and found the sound quality to be above average.<br /><br />There were buttons for Call Forward, Do Not Disturb, Transfer, and Conference within easy reach.&nbsp; Additionally, a Missed Call shortcut appears if any calls have been made to the phone that I did not answer.&nbsp; The phone also has a Mute button, a Hold button, and a button for enabling the headset, which we have as yet not tried.<br />
<h2>Default settings</h2><br />Much of our <a href="http://www.toao.net/25-linksys-pap2t-voip-adapter-review">PAP2T Review</a> also applies to this phone as well.&nbsp; Unlike the PAP2T, we've had the most success leaving the Handset Input Gain on the SPA921 at its default of 0.&nbsp; Ring1 Cadence on the PAP2T is known as Cadence1 on the SPA921; the other ring settings do not apply.&nbsp; Other than that, the settings for Dial Plan, Daylight Saving Time Rules, NAT, Codecs, and RTP Packet Size are common to both units.<br />
<h2>Missing features</h2><br />In another review that we read, the author complained about the SPA921's LCD not having a backlight.&nbsp; This is true, but the contrast of the LCD is very easy to see as it is, if there is ambient light in the room.<br /><br />One other feature that exists in the <a href="http://www.toao.net/25-linksys-pap2t-voip-adapter-review">PAP2T</a> that we miss in the SPA921 is the ability to forward specific calls to specific locations.&nbsp; It would be great if this could be added in a firmware upgrade at some point.<br /><br />We had trouble with the DNS client on this phone.&nbsp; Occasionally, it fails to perform a DNS lookup and an outgoing call will fail.&nbsp; We haven't been able to solve this issue, so instead we use the IP of our SIP server instead of the hostname.<br />
<h2>And finally, in case you're all anxious to hear Mango's beautiful voice...</h2><br />Here's a <a target="_blank" href="http://www.toao.net/pub/VoIP/G.711.wav">recording of Mango himself talking on the SPA921</a>, if anyone's interested in hearing the audio quality.<br /><br />The missing features we have mentioned are really nothing to worry about.&nbsp; Call quality is of course most important and this phone couldn't perform better.&nbsp; At some point we hope to test some Aastra phones as we are very intrigued by their XML browser.&nbsp; Imagine - a VoIP phone that can be <em>programmed!</em>  We drool just thinking about it.]]></content:encoded>
			<wfw:commentRss>http://www.toao.net/27-linksys-spa921-ip-phone-review/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
<enclosure url="http://www.toao.net/pub/VoIP/G.711.wav" length="169004" type="audio/x-wav" />
		</item>
	</channel>
</rss>
