Telephony/VoIP
It should become immediately clear to you that this material is
rather old. The number of visits this area gets is
astronomical.
I have caught the VoIP bug and have been building VoIP systems
lately. A recent opportunity presented itself which involves Voice
Over IP (VoIP) technologies using open-source software. This section
collects my notes on the subject.
Background
Several years ago I pulled Category-5 cable around the house (along
with other media) and installed a BBS Telecom IPS Hybrid-Key telephone
system with three display phones and four regular analog phone
extensions that served the entire house. This system worked well for
a couple of years but had several problems that could not be easily
overcome:
- Caller-ID only works on the $100 display phones, not the regular
phones or even the fancy cordless phone system.
- No phones ring until after the second incoming ring if the
Caller-ID support is turned on. (This was to support Caller-ID
decoding for the Display Phones; I have no idea why they don't ring
while waiting for the CID data--probably an oversight).
- Incoming calls ring forever. (This is apparently a hardware
failure. I attribute this to the dust from recent basement renovation
work. There were no settings changed and no further changes have
fixed this problem.)
I have made the decision to rip out the IPS and replace it with a
SIP-based phone system.
VoIP for the Home
Outside Lines
Vonage subscribers have a problem when they want to keep their
existing phone service--how to support more than one outside line
without having two phones or a special phone system? Currently these
are the only answer, but in the future there may be a new alternative,
already implemented by the GrandStream HandyTone 486, which supports
incoming and outgoing calls on a backup phone port which works in
concert with Vonage. This does not support simultaneous use of lines
inside the house but at least you can use both your Vonage and your
Verizon lines. I like to build systems, and building phone systems is
particularly satisfying to me, so I will be replacing my existing
analog IPS phone system with a SIP-based phone system that also
supports the analog phones in the house.
For outside lines we have one Verizon and two Vonage lines. I have
been a Vonage subscriber for a couple of years and have been impressed
with the service except for the fact that the cable modem doesn't
always stay online. A recent day-long dig in the yard has resolved
the cable modem issues to our satisfaction and we finally feel happy
with the whole broadband situation.
Inside Lines
As I said earlier, I originally installed the IPS telephone system to
support three outside lines. One is Verizon and the other two are
Vonage. It works beautifully except for the chief complaint of the
lack of caller-ID on the regular house phones, including the fancy
cordless phone system that always say "NO DATA" for caller-ID. With
the new VoIP system and the current generation of SIP-based analog
phone adapters we will have caller-ID on all phones in the house and
will have access to all three outside lines. I also purchased a
couple of SIP-based desk phones to replace the IPS display phones.
Hardware
I have not built the PBX server yet, but I have over 15 working
servers in varying capacities at my beck and call. For my setup with
three outside lines I need:
- Three FXO interfaces to outside lines
These are called "FXO ports" and refer to outside lines. FXO stands
for "Foreign eXchange Office" and merely refers to a gateway that
connects to your analog outside line on one side and your phone system
via SIP on the other. These are the ports that allow you to place and
take calls via Verizon and Vonage. Notice that I am connecting with
Vonage via FXO ports so I will be double-transcoding. Vonage does
provide direct SIP from your phone system but it is sold in blocks of
minutes that keep the cost out of our reach. Digium sells
cost-effective PCI cards but they are strictly Asterisk-only and I
have problems with their marketing philosophy (see below). I want
SIP-based commodity hardware ONLY.
- Two FXS interfaces to inside lines
FXS stands for "Foriegn eXchange Subscriber" and refers to inside
lines. This allows the regular analog phones (the fancy cordless
phone system) to connect to my SIP phone system. One side is SIP and
the other side is a regular analog phone jack. These units generate
ring current, caller-ID, voice mail stutter-tone and FSK signal, and
also have the ability to transcode analog to digital and back. You
may simply hook all your inside analog phones to one FXS port but be
sure you don't exceed more than 5 non-powered phones or they don't
ring. (You can use an unlimited number of phones that don't use AC
power, like cordless phones and fax machines because they don't draw
power from the phone jack). I will install two FXS only because I
don't want to overload the dual-purpose FXO/FXS Grandstream 488 unit
with both FXO and FXS traffic. I will reserve that for a seldom-used
analog phone like the garage phone.
- Three SIP phones for inside lines
If you're going to go through the trouble of building any phone system
you are cheating yourself if you don't have at least one display phone
per floor in the house. I have one Sipura SPA-841 with an excellent
dot-matrix display. I also have a cheap Grandstream Budgetone 100
with a single-line CID display. I am contemplating which vendor to
use for the third but it will probably be a software phone like X-lite
or a higher-end phone.
Software
I intend to start with Asterisk because, like Linux, it gets the most
users, and because it has the most users Asterisk has the most
documentation and support options. After Asterisk I intend to move to
another solution such as sipX. Asterisk has a small
limitation where it transcodes all data to a private protocol instead
of keeping it as SIP. My intention is to use SIP-based commodity
hardware so Asterisk and the Asterisk-only hardware are not going to
be used. In addition, while Asterisk is free, it is no secret that
the Asterisk software is used as a vehicle to sell the Digium line of
phone hardware. As a result of this marketing ploy the SIP support is
inevitably a second-class citizen. In addition the politics behind
Asterisk is troublesome--the original Asterisk FXO card cost $135 and
was a re-branded Intel Winmodem with the chip part numbers scratched
off. Worse, that Intel Winmodem costs only $15 at retail. Digium has
discontinued this unit and replaced it with a fully proprietary PCI
card. I think this situation says more about Digium and Asterisk than
anything else and is why I intend to use another system.
Activities
- Get FXS adapters [done]
- Get FXO adapters [waiting for Grandstream 488]
- Get SIP phones [done]
- Test phones with FreeWorldDialup [done]
- Test FXS adapters with FreeWorldDialup [done]
- Build the Asterisk server with its SIP proxy thinger and register
SIP FXO and SIP FXS with it [lost interest]
- Register SIP phones with Asterisk via SIP [...]
- Register FXO adapter(s) with Asterisk via SIP [...]
- Register FXS adapters with Asterisk via SIP [...]
- Replace, supplant, or peer Asterisk with flavor-of-the-month
open-source VoIP system [...]
- Replace those snooty-sounding Asterisk voice prompts with someone
better (the Cheyenne Bitstream voice prompts or even the synthesized
AT&T Natural Voice would be better... even Microsoft Sam would be more
tolerable). [I did get several voice synthesizer demos from several
vendors; Cepstral and Loquendo are excellent, Nuance is frighteningly
bad, and AT&T is disappointing.]
Random Notes
Adapters
The Grandstream HandyTone 488 is on back-order. It is a new unit that
just went into production and provides a true FXO and a true FXS port.
I originally purchased a Handytone 486 but its FXO port is not a true
FXO port--it does not gateway to SIP but merely provides emergency
backup when the SIP service is out. Hopefully the Vonages of the
world will provide this excellent solution for those who need to have
a hard line for the alarm system and 911 service but still want to use
VoIP for regular calling. For me this box does not provide outside
line support for the phone system so I'm waiting for the 488 which
should be arrive before the end of March 2005. [I got it after losing interest]
SIP Desk Phones
The Sipura SPA-841 is a very high-quality unit with superb sound and
two lines (four if you pay for a $30 software upgrade). The
Grandstream Bugetone 100 uses embarassingly cheap-looking plastic but
the sound quality is excellent. I will probably get a Cisco or the
higher-end Grandstream but this Sipura looks better than any of them
and at $80 you can't really argue with the price. [Cisco/Linksys
has since acquired Sipura]
Voice Prompts
I have it on good authority that the makers of Asterisk paid a
locally-known radio voice talent to produce the voice prompts used in
Asterisk. They should get their money back. Even Lernout & Hauspie
voice synthesis is more polite to callers! Asterisk sounds like a
female used car salesman with a stuffy nose and lisp. [This comment
was unfair to the radio announcer, as Nuance/L&H voices are terrible]
Voice Recognition
In days past I was to work on a research project that, in part, was
supposed to merge voice recognition, voice synthesis, telephony, and
smart conversation agents in order to provide automated data-retrieval
services for users who only have access to telephones. Since I was
already working on phones at home it was a natural choice. I am
continuing to work on the VoIP system to replace the worn-out phone
system in my house. I will be exploring the voice parts and
data-retrieval system as time and motivation allow, but they're not as
fun as building cutting-edge phone systems. [No, I won't, I'm
totally turned off by Voice Recognition]
Free VoIP Services
FreeWorldDialup provides
free VoIP services. Just register your SIP phone with FWD and you're
ready to go. It has gateways to many providers, including Vonage, but
I can't get the Vonage gateway to work. I suspect it's no longer
available. This is a great way to test your SIP phones and SIP FXS
devices so you know if the problem is in your Asterisk server or if
it's in your SIP device. The echo and tone generator functions are
good ways to understand how VoIP and how each codec works. It appears
to consist of a group of Asterisk servers (that snooty voice prompt is
everywhere) with some custom services on the extensions. Phone
numbers are six digits. Calling FWD numbers is usually an
international toll call from other services (at least it is from
Vonage) but calling to other FWD numbers are always free. More info
at FreeWorldDialup.com.
VoIP Centrex
This is the natural evolution of Centrex, the phone company's virtual
PBX for PBX-less offices. This is where you have a dedicated
telephone line for each extension in your office and the actual PBX is
located at the phone company. In Centrex, all you do is pay for each
line. It costs more but you don't have to set up a PBX in your office
and the phone company is responsible for the upkeep. Traditional
Centrex means that you usually just get a trunk line (bundle of lines
like T1, ISDN PRI, or similar) that is broken out into individual
lines for each extension. The more expensive Centrex systems use ISDN
for each extension (I have personally used such systems where the desk
phones start at $400 per unit). ISDN Centrex gives you multiple line
appearances (which are multiple lines with the same phone number).
Your voice travels digitally from the phone to the PBX, much like
VoIP, but it's ISDN (again, this is known as several brand names like
"5ESS" or whatever). The ISDN version is intended to provide you
modem-less 56kbps connections, but with pervasive high-speed ethernet
in every office it never lived up to its promise or made any sense.
The natural evolution of Centrex and ISDN Centrex is VoIP Centrex.
The VoIP version of this solution is based on the same principle but
it sends data over an internet connection. The better providers will
sell you a dedicated internet connection that connects directly to
their "soft switch". You can always use your own internet connection
to connect to the "soft switch" but you risk problems like jitter and
delay and dropped calls due to network congestion. I have called
several places that use this solution and the delay is annoying--in
conversations it seems like the person on the other end is pointing at
their phone thinking "what an idiot." Many companies are starting to
sell VoIP Centrex under lots of different names (I think Centrex is a
trademark). You can buy phone packages with VoIP Centrex at places
like Hellodirect.com and VoIPSupply.com. Some of these
bundles can come with a pallet full of those cheap Budgetone phones (I
have seen at least one office with these phones). The more well-known
brands are using Cisco or Nortel phones. If you're going to use VoIP
Centrex, use a dedicated internet connection and also keep your phone
network on its own private ethernet network or you risk jitter, delay,
and (heaven forbid!) dropped calls. I can spot budget-foolish VoIP
office phone systems a mile away. [And I still can.]
Wi-Fi VoIP
Some publications are talking up WiMAX and Wi-Fi VoIP phones. I'm not
sure this fits into the scope of my discussion but it sounds
interesting except for the pathetic cell size and the cell hand-off
issue. If the CDMA, TDMA, and GSM networks can replace the application
layer with some form of IP, then it makes perfect sense--one protocol
(IP) for everything. It's too bad they spent all their money and
effort on 3G which never actually paid out. The problems here are
obvious--CDMA, TDMA, and GSM are optimized for voice, spectrum
sharing, spectrum hopping, and cell hand-off. Does any of this exist
in 802.11? I don't remember seeing anything about that in 802.11, so
I'm not sure if WiMAX and Wi-Fi VoIP phones can possibly work the same
way we expect cell phones to work--seamless hand-off while driving on
the highway or walking several blocks downtown. [Filed under
"didn't happen, won't happen." There is not enough bandwidth unless
the entire phone system is IP, which
LTE
would be, but that is not WiFi or WiMax.]
|
|