Automatic Read More in Joomla

February 7th, 2010

We've always wanted to be able to set up Joomla to automatically add a "Read More" link for articles in Category Blog or Section Blog Layouts so that the articles would all be the same length and they would line up just as pretty as you please. Google revealed a handful of other people attempting the same thing, but having no solution. So Mango wrote a plugin for it.

Read the rest of this article

Shaw Digital Phone Review

February 6th, 2010

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. Shaw's reps actively deny that their service is VoIP - we suspect they want to differentiate themselves from providers of broadband VoIP. 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.

Read the rest of this article

Convert to and from ulaw files

January 31st, 2010

In a previous article, we wrote about how to build a call recorder out of Asterisk. Simply conference in the call recorder's extension and Asterisk will record your conversation to a ulaw file. It is possible for Asterisk to record in wav format but that requires more system resources. Fortunately, there's a very easy way to convert ulaw files to wav format. That is by using a program called SoX. SoX is open source an open source command line utility for converting many types of audio formats.

Read the rest of this article

Configure Asterisk for a Home PBX

January 19th, 2010

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. Some of these features include termination failover, custom incoming Caller ID, and call recording. In this guide we will show you how to configure Asterisk for use as a home PBX. If you are building a PBX for a small or home office you will likely use many of the same techniques.

If you do not yet own an Asterisk PBX, there are several ways you may get one. 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 How to Install Asterisk on an Asus WL-520GU Router.

Once you have Asterisk installed on your hardware of choice, read on to find out how we configured ours.

Read the rest of this article

How to Install Asterisk on an Asus WL-520GU Router

January 19th, 2010

Yes, you read right. For this project, we're going to tell you how we built a fully functioning Asterisk PBX out of a $25 router. 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. The best part is, a lot of the heavy lifting such as compiling Asterisk has already been done for us. All we need to do is install it.

The first version of this article was published on the VoIP Tech Chat forum in August 2009. The article that you are reading right now is the latest version. The forum no longer allows us to edit the original post so we have moved it here.

A common question people ask is, "Why do you need a PBX for your home?" The answer is we wanted telephone features that we haven't been able to find for a price we're willing to pay. Now, we can have nearly any feature we want. Some of these include termination failover, custom incoming Caller ID, and call recording. The best part is that when we're done, the device will still function as a router. You won't even need to wedge another AC adapter into your power strip.

Read the rest of this article

Low Cost Internet Faxing for Canada

January 16th, 2010

With the growing popularity of VoIP, more and more homes and businesses do not have a POTS (plain old telephone service) line. 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. Most people we asked for advice told us, "Faxing is archaic technology. Forget that and use e-mail instead!" 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. Now, we've found one!

Read the rest of this article

Easily Check HTTP Headers with this tool

December 28th, 2009

We were trying to solve an annoying bug in our mod_rewrite code today and couldn't quite figure out why our server was acting the way it was. Fortunately we discovered Web-Sniffer.net. Web-Sniffer.net allows you to view the HTTP request and response headers for any URL you like. You can even choose between HTTP/1.1 and HTTP/1.0, with and without the Host header.

View HTTP Headers

The best part is that this is much easier than messing about with Telnet.exe!

VoIP Security - Could Someone be Listening In?

December 27th, 2009

The question of VoIP security often comes up on various VoIP forums, and it's a good one. Could someone be listening to your conversation? While it's theoretically possible, here are a few security tips that will help keep your network secure.

Read the rest of this article

Our Favourite Christmas Music (This Year)

December 25th, 2009

Christmas music is one of our weaknesses and every year we seem to find one or two songs that we just can't stop listening to. Most of these have actually been around for a while but we hadn't heard them until recently. Here they are, in no particular order:

S Club 8 - Sleigh Ride (YouTube)

Amy Grant - I Need a Silent Night (YouTube)

Josh Groban - Thankful (YouTube)

Wilson Philips - Hey Santa (YouTube)

Dana - It's Gonna Be A Cold Cold Christmas (YouTube)

Chris Rea - Driving Home for Christmas (YouTube)

Big Daddy Weave - Go Tell It On The Mountain (YouTube)

David Foster - The Christmas Season (YouTube)

Do-it-Yourself Photo Booth!

December 8th, 2009

DIY Photo BoothA friend and her husband recently returned from a wedding with one of the best favours we'd ever seen: a strip of photos that appeared to have come from a photo booth. But, they were unlike any photo booth photos we'd ever seen: the lighting was textbook, the images sharp and clear, and the colours as good as any professional photograph. The reason was...that they were professional photographs. The wedding photographer set up a booth and invited the guests to have their picture taken.

What a fantastic idea. We simply had to build one.

Read the rest of this article

Turn your $25 Asus WL-520GU router into a $250 router, for free!

September 29th, 2009

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. 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.

Read the rest of this article

Google Calculator Rocks!

September 20th, 2009

We always seem to want to convert various forms of measurements to some other various forms of measurements. We used to have bookmarks for every conversion necessary: one for distance, one for weight, one for currency, and so on. Then, Mango discovered Google Calculator. Google has outdone itself and created the easiest conversion tool we've ever seen. You simply write your conversion in plain English into the Google search box. And with Firefox, the Google search box is just a CTRL+K away.

Examples follow.

Read the rest of this article

ATAs vs. IP Phones: Which should you choose?

September 17th, 2009

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. There are advantages to both methods.

Read the rest of this article

VoIP ATAs Explained: Which VoIP Adapter should I buy?

September 17th, 2009

Need to purchase an ATA or other piece of VoIP hardware? There are plenty of retailers around. Canadians may wish to use Shopbot.ca to find the best price at a Canadian retailer. Americans may use Froogle or similar. Does a deal sound too good to be true? Maybe it is. Be sure to check the retailer out on a site such as ResellerRatings.com. If you don't feel like buying from a particular retailer, reputable retailers such as Netlink Computers/NCIX will often price match in stock items from other online retailers. If you don't require a new unit, you can often find VoIP hardware on Craigslist. Be sure to test these items before purchasing. Sometimes, hardware is locked to a specific provider. Unfortunately, there are a great deal of counterfeit VoIP devices on eBay. We suggest buying locally or buying new.

Read the rest of this article

Six Notify Sounds

September 10th, 2009

Here are six "notify" sound effects that Mango made for use in an application, free for the download.

How to Solve Two Four Encore CS3 Quirks

July 4th, 2009

Recently we were attempting to build a DVD with Adobe Encore CS3. Due to Encore's oddities, it took two days to figure out how to do it. We look forward to the day when Adobe's video editing software will reach the same caliber as its industry standard Photoshop. Perhaps at this point mentioning "I use Premiere" at a professionals' meeting won't be met with stifled giggling.

Until then, here's how we solved two most notable quirks. The first was an error message that occurred upon build that went along the lines of: PGC "xxxx" has an error at xx:xx:xx:xy internal software error : %0, line xxxx - PGCINFO: name= xxxx, ref=BPGC, time=xx:xx:xx:xy

This error referenced a point on the timeline approximately one second from the end of the clip. The last second wasn't significant so we simply trimmed the last second from the clip. The error then referenced a point on the timeline TWO seconds from the end of the clip. This was frustrating.

Read the rest of this article

12 Things Mango Wishes He'd Known When He Was a PHP N00b.

June 29th, 2009

  1. Never use Register Globals. Ever. And if you ever even THINK of using Register Globals, and we find out, Mango is going to send someone over to your house to kick your ass. Are we clear?

    As much as we love working with PHP, Register Globals is something that should be filed under "Monumentally Bad Ideas". And unfortunately, it's something that, at first glance, appears convenient. If a user submits a form to a PHP script with Register Globals enabled, the script will create a variable for each form element. However, keep in mind that this allows your end users to set any variable in your script that they like. Here is a common mistake that we see:
    if ($logged_in) { secret_functions_allow(); }
    In a situation like this, the author has first run some code to see if the user is logged in or not. If so, the script will have defined the $logged_in variable. When the above line of code fires, it will provide the user with some functions only availble to authenticated users. Innocent enough, yes? However, to "hack" this, all that a malicious user would need to do is form a URL like http://www.example.com/?logged_in=1. To turn off Register Globals, add php_flag register_globals off to .htaccess or register_globals = Off to php.ini. Many administrators ban use of Register Globals entirely, so by developing without it, your script will be more portable. This is a good thing.

Read the rest of this article

Mango's PHP PostScript Functions

June 17th, 2009

The latest techniques we've been playing with involve using a PHP script on our server in Michigan to print to a remote printer at our office in Vancouver. In the past we've done this by generating an XHTML document with high-resolution images and simply prompting the user to print it. This worked, but if any sort of precision was required, the user had to configure their browser's page setup just so, and to make things even more difficult, different browsers required different settings.

Enter PostScript, a language understood by many laser printers. With PostScript, we can go directly from our script to the printer, (pipe the finished PostScript document to the printer on port 9100) eliminating the stop off at the browser. And, we can position things on our page with as much precision as necessary.

Read the rest of this article

Converters for Webmasters

June 7th, 2009

When we're writing software, we always seem to use a few functions for quick conversions. We've got a series of converters bookmarked, but today we were thinking it would be even more handy to have everything all in one place. So we developed the Converters for Webmasters bookmarklet.

Read the rest of this article

Reliable Web Hosting

May 2nd, 2009

We're well aware that good, reliable web hosting is hard to come by so we wanted to introduce any visitors that are in the market for a new web host to WebOnce Technologies. We can't remember exactly how long we have hosted with WebOnce however we can say that at the time of this writing, it has been longer than both Mango's relationship with Mrs. Mango and WebOnce owner Jacob's relationship with his wife, combined. WebOnce runs Linux/Apache/cPanel servers and is one of the few hosts we know of that offers IRC chat for sales and support. The current shared hosting server has two dual core Xeon 3Ghz processors with Hyper-Threading and a typical load of <1.

Feel free to stop by WebOnce's IRC chat room (info at the link below) and swap programming ideas, or just say hi. If you use this link, Reliable Website Hosting, we'll get about $0.70 when you sign up. However, we endorse WebOnce with or without commissions :)

Quotes of the day from doctors

May 1st, 2009

"I just love miraculous recoveries, so I try to have as many of them as possible." -Brian Davies, ND

"There is a widespread belief [...] that genes are essentially destiny and if you're born with a particular set of genes, you're going to get a particular illness. That is nonsense. But it is also very convenient for people who don't want to take responsibility for their own health." -Harold D. Foster, PhD

Things We've Learned Watching COPS

April 25th, 2009

Lately we've been watching a TV series called COPS. The show follows law enforcement officers during police activities. While watching this show, we have learned a few things:

  1. If all of a sudden you see a cop, RUN!! As fast as you can! They won't get suspicious!
  2. If you have a large quantity of illegal substances or weapons in your car, don't bother with stop signs or red lights. It is best to get where you are going as fast as possible.
  3. If an officer asks if you have any drugs on you, and you have a joint behind your ear, say no anyway. They will never notice something like that.
Read the rest of this article

Linksys SPA921 IP Phone Review

March 22nd, 2009

We got so excited setting up the VoIP system at my office that we decided to set it up at my home, too. We didn't have a PBX to worry about so could choose pretty much any hardware we wanted. We decided on a Linksys SPA921 IP phone.

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. Thus, to keep prices low, quality is often low. For ages, we've wanted a really nice corded phone...but we haven't been able to find one, until now.

Read the rest of this article

Linksys/Cisco PAP2T VoIP Adapter Review

March 20th, 2009

A company that we deal with has been using VoIP for ages and loves it, so we decided it wouldn't do for us not to have the same shiny toys. The thought of saving $100 a month made things even better.

Looking for Mango's recommended PAP2T settings? Scroll down.

For those of you who are just joining us, the PAP2T is known as an Analog Telephone Adapter or ATA. It allows you to use any standard telephone or PBX and route your calls over the Internet using VoIP. VoIP is typically less expensive than a typical phone line because a VoIP provider does not have to deal with costs of infrastructure such as running phone lines to customers.

The provider that was recommended to us was DigitalVoice.ca. (Edit: Due to subsequent service quality issues, we do not recommend this provider any longer. We still recommend the PAP2T very highly.) We bought a PAP2T to test them out and were pleasantly surprised. We had a horrific experience with a different provider called Primus a few years ago, and we expected quality loss at the very least. Call quality with PAP2T using the G.711 codec was actually better than an analog phone line!

The reason we like this device is that it can be configured to do practically everything but card tricks. For example, the Linksys/Cisco dial plans are the best we've seen on any ATA.

Read the rest of this article

Cisco Dial Plan Tips and Tricks

March 6th, 2009

One of the most common questions we get asked about VoIP is, "Is it still okay if I dial a 1 before a long distance call?" Guess what: that's up to you! The dial plan on Cisco / Linksys / Sipura devices is one of their most powerful features, and with it, you can configure your dialing rules any way you want.

We were going to write an entire introduction to dial plans but discovered Cisco has rewritten lots of Linksys documentation and done a great job of it. So instead, here's a link to the Cisco ATA Administration Guide - dial plans start on page 63 of the PDF.

What we will post are some excellent dial plans along with some examples of various tips and tricks you may not have thought of. These should work with the PAP2T, SPA-2102, SPA-3000, SPA-921, and most similar devices.

Read the rest of this article