Setup - more
The system allows for the setup of up to eight "Identities," each of which is a login to a SIP registrar. For my initial testing, I entered login details to an account with Junction Networks' OnSIP hosted IP-PBX service. The phone registered in just a few seconds and was immediately able to make and receive calls. No other setup was required, even though the snom was behind a NAT router with a private IP address.
The Telephony Settings page on the web interface (Figure 3) lets you decide which identity each handset will use when making calls. It also lets you define which handsets will ring in response to incoming calls for each identity.
Figure 3: Telephony Settings on the web interface
This ability to map accounts to handsets makes the system very flexible. You can send outgoing calls to your preferred service provider while continuing to accept calls from a number of accounts. In my case, I registered with two separate hosted PBX accounts (home and office lines), then also registered with my local Asterisk server.
It’s easy to see how a large household or office might assign each member of the family or office their own private line that rings to their own extension. Yet when placing a call, the caller ID would reflect the master number, regardless of from which extension the call was placed.
One of the more common difficulties with SIP-based VoIP is getting everything to work while passing through routers and firewalls that perform Network Address Translation (NAT.) The VoIP community has developed a number of techniques to overcome this problem in the hope of making SIP setup easier. One such technique is known as Simple Traversal of UDP through NATs, or STUN.
The m3 includes STUN capability, although I didn’t need to use this to register with most of the providers I use. However, by enabling the STUN feature, I was able to get the m3 to work with Free World Dialup, one of the earliest and largest online SIP user communities.
In fact, I was able to get the m3 to work with a number of SIP service providers, including: Asterisk (Astlinux 0.48), Junction Networks/OnSIP, VoicePulse Connect, Free World Dialup, and SIPphone/Gizmo Project.
Based on this experience, it would be reasonable to expect that it could be used with any SIP provider.
snom has a history of providing SIP phones that fit well into small and mid-sized businesses. That includes that ability to mass-provision and configure devices from a central server. The m3 has this capability as well, relying upon either HTTP or TFTP servers for loading firmware and configuration files.
That said, most SOHO users will never need a provisioning server. When a new release of firmware is available, they can provision the phone via HTTP from one of snom’s servers.
The m3 supports the most common VoIP codecs, including G.711a, G.711u, G.729a, and ILBC. Codec availability and preference is set up on a per-identity basis (Figure 4).
Figure 4: Codec settings can be configured for each identity
G.711 is the standard voice codec used by most of the telecom industry. It’s the basis of all traditional phone systems and the baseline by which call quality is measured. G.729a and ILBC are low bit-rate codecs that will help you get the most out of the upstream side of an ADSL service, although with a slight loss in call quality.
A G.729a-encoded call requires 32 kbps per call leg, versus 80 kbps for G.711a/u-encoded calls. G.729a is very common in the telecom industry and accepted by many commercial VoIP providers. As a rule, I use this codec with my hosted IP-PBX.
It would have been nice to have support for the newer G.722 wideband audio codec. Sometimes called "HD Voice," this new codec offers outstanding call clarity through the use of a 16 KHz sampling rate. Such call quality is only possible when both ends of the call support the G.722 coding scheme. This limits the possibility of its use to a handful of newer IP phones. Of course, the call would need to pass between the phones as IP traffic end-to-end, without touching the PSTN.