CANHEIT 2008: York Involvement

York University will be well represented at CANHEIT 2008
Although you’ll find the details in CANHEIT’s online programme, allow me to whet your appetite regarding our contributions:

Book Review: Building Telephony Systems with Asterisk

Asterisk is a Open Source framework for building feature/functionality-rich telephony solutions. And although it’s able to compete solidly with offerings from commercial providers, the establishment of an Asterisk deployment is involved. Thus D. Gomillion and B. Dempster’s book Building Telephony Systems with Asterisk will be useful to anyone intending to delve into Asterisk. The book is comprised of nine chapters whose content can be summarized as follows:
  • In providing an introduction, Chapter 1 enumerates what Asterisk is and isn’t. Asterisk is a PBX plus IVR, voicemail and VoIP system. Asterisk is not an off-the-shelf phone system, SIP proxy or multi-platform solution. This enumeration leads to a welcome discussion on Asterisk’s fit for your needs. The authors quantify this fit in terms of flexibility vs. ease-of use, configuration-management UI, TCO and ROI. Although the latter to topics are covered briefly, the authors’ coverage will certainly serve to stimulate the right kinds of discussions.
  • Chapter 2 begins by enumerating the ways in which the Asterisk solution might connect to the PSTN. Next, in discussing the four types of terminal equipment (hard phones, soft phone, communications devices and PBXs), the major protocols supported by Asterisk are revealed – namely H.323, SIP and IAX. Whereas H.323 is well known to many of those who’ve delved in videoconferencing, and SIP to anyone who’s done any reading on VoIP, IAX is an interesting addition specific to Asterisk. The Inter-Asterisk eXchange (IAX) protocol attempts to address limitations inherent in H.323 and SIP relating to, e.g., NAT support, configurability, call trunking, sharing information amongst Asterisk servers plus codec support. IAX is not a standard and device support is somewhat limited but on the rise. As of this book’s writing, September 2005, IAX2 had deprecated IAX – and that still appears to be the case. Guidelines for device choice, compatibility with Asterisk, sound quality analysis and usability all receive attention in this chapter. The chapter closes with a useful discussion on the choice of extension length. Highly noteworthy, and already provided as a link above, is the voip-info.org wiki.
  • The installation of Asterisk is the focus of Chapter 3. After reviewing the required prerequisites, none of which are especially obscure, attention shifts to the Asterisk-specific components. In turn Zaptel (device drivers), libpri (PRI libraries) and Asterisk are installed from source. (I expect packaged versions of these components are now available for various Linux distributions.) Asterisk includes a plethora of configuration files, and these are given an overview in this chapter. And although it’s not mentioned, disciplined use of a revision control system like RCS is strongly advised. The chapter concludes with sections on running Asterisk interacting with its CLI to ensure correct operation, start/stop the service and so on.
  • With Asterisk installed, attention shifts to interface configuration in Chapter 4. In working through line and terminal configurations for Zaptel interfaces, one is humbled by the edifice that is the pre-IP world of voice. Our introduction to the intersection between the pre-IP and VoIP universes is completed by consideration of SIP and IAX configuration. Again humbling, the authors’ treatment affords us an appreciation of the application of acknowledged standards like SIP (which is itself based on RTP) through implementation. The final few sections of the chapter further emphasize the convergence capabilities of VoIP platforms by exposing us to voicemail, music-on-hold, message queues and conference rooms.
  • Through the creation of a dialplan, Asterisk’s functionalities and features can be customized for use. Dialplans are illustrated in Chapter 5 by establishing contexts, incoming/outgoing-call extensions, call queues, call parking, direct inward dialing, voicemail, automated phone directory and conference rooms. Customization is involved, and it is in chapters such as this one that the authors deliver significant value in their ability to move us swiftly towards a dialplan solution. Also evident from this chapter, and to paraphrase the authors, is Asterisk’s power and flexibility as a feature/functionality-rich telephony solution.
  • Under Asterisk, calls are tracked with Call Detail Records (CDRs). Data pertaining to each call can be logged locally to a flat file or to a database running on (preferably) a remote server. The database-oriented approach for managing CDR data is more flexible and powerful, even though it takes more effort to set up, as this solution is based on databases such as PostgreSQL or MySQL. CDR comprises the least-invasive approach for quality assurance. The remainder of the content in Chapter 6 focuses on more-invasive approaches such as monitoring and recording calls.
  • Based only on the context provided by this review, it is likely apparent that an Asterisk deployment requires considerable effort. Thus in Chapter 7, the authors introduce us to the turnkey solution known as Asterisk@Home. Asterisk@Home favors convenience at the expense of flexibility – e.g., the flavor of Linux (CentOS) as well as support components such as the database (MySQL) are predetermined. The Asterisk Management Portal (AMP), a key addition in Asterisk@Home, Webifies access to a number of user and administrator features/functionalities – voicemail, CRM, Flash Operator Panel (FOP, a real-time activity monitor), MeetMe control plus AMP (portal and server Asterisk@Home management) itself. Before completing the chapter with an introduction to the powerful SugarCRM component bundled with Asterisk@Home, the authors detail required steps to complete the deployment of Asterisk@Home for a simple use case. It’s chapters like this, that allow us to all-at-once appreciate the potential for the Asterisk platform. (Packt has recently released a book on AsteriskNOW. AsteriskNOW is the new name for Asterisk@Home.)
  • The SOHO, small business and hosted PBX are the three case studies that collectively comprise Chapter 8. Sequentially, the authors present the case-study scenario, some discussion, Asterisk configuration specifics, and conclusions. In taking this approach, the authors make clear the application of Asterisk to real-world scenarios of increasing complexity. In the SOHO case, the SIP shared object (chan_sip.so) is not loaded as this functionality is not required. This is but one example of how the authors attempt to convey best practices in the deployment of a production solution based on Asterisk.
  • Maintenance and security are considered in the final chapter of the book (Chapter 9). The chapter begins with a useful discussion on automating backups and system maintenance plus time synchronization. Those familiar with systems administration can focus on the Asterisk-specific pieces that will require their attention. This focus naturally leads to a discussion of recovering the Asterisk deployment in the event of a disaster. Security gets well-deserved consideration in this chapter from both the server and network perspective. For example, there is very useful and interesting content on securing the protocols used by Asterisk with a firewall. Before closing the chapter by identifying both the Open Source and commercial support offerings for Asterisk, the scalability of Asterisk is given attention.

This book was first published in September 2005 and is based on version 1.2.1 of Asterisk. As of this writing, Asterisk’s production version is 1.4.x, and the version 1.6 beta release is also available (see http://www.asterisk.org/ for more). Even though the book is somewhat dated, it remains useful in acquainting readers with Asterisk, and I have no reservations in strongly recommending it.
Disclaimer: The author was kindly provided with a copy of this book for review by the publisher.

QoS On My Mind …

QoS has been on my mind lately.
Why?
I suppose there are a number of reasons.
We’re in the process of re-architecting our data network at York. We’re starting off by adding redundancy in various ways, and anticipate the need to address QoS in preparing for our future deployment of a VoIP service.
Of course, that doesn’t mean we don’t already have VoIP or VoIP-like protocols already present on our existing undifferentiated network. In addition to Skype, there are groups that have already embraced videoconferencing solutions that make use of protocols like RTP. And given that there’s already a Top 50 list of Open Source VoIP applications to choose from, I’m sure these aren’t the only examples of VoIP-like applications on our network. 
At the moment, I have more questions about QoS than answers. 
For example:
  • If we introduce protocol-based QoS, won’t this provide any application using the protocol access to a differentiated QoS? I sense that QoS can be applied in a very granular fashion, but do I really want to turn my entire team of network specialists into QoS specialists? (From an operational perspective, I know I can’t afford to!)
  • When is the right time to introduce QoS? Users are clamoring for QoS ASAP, as it’s often perceived as a panacea – a panacea that often masks the root cause of what really ails them … From a routing and switching perspective, do we wait for tangible signs of congestion, before implementing QoS? I certainly have the impression that others managing Campus as well as regional networks plan to do this. 
  • And what about standards? QoS isn’t baked into IPv4, but there are some implementations that promote interoperability between vendors. Should MPLS, used frequently in service providers’ networks, be employed as a vehicle for QoS in the Campus network context? 
  • QoS presupposes that use is to be made of an existing network. Completely segmenting networks, i.e., dedicating a network to a VoIP deployment, is also an option. An option that has the potential to bypass the need for QoS. 
I know that as I dig deeper into the collective brain trust answers, and more questions, will emerge. 
And even though there are a number of successful deployments of VoIP that can be pointed to, there still seems to be a need to have a deeper discussion on QoS – starting from a strategic level. 
As I reflect more and more on QoS I’m thinking that a suitably targeted BoF, at CANHEIT 2008 for example, might provide a fertile setting for an honest discussion.     

Google & Jott: A Natural Fit

The first time I wrote about Jott, I stated:

I expect Jott to be an excellent acquisition target for the likes of Google …

And for those who like to have everything integrated, Jott would have much more value if it was a part of some existing solution like Google Office (GMail + Google Docs & Spreadsheets).

Just over four months later, it’s clear that Google’s interested in voice:

  • Google Voice Local Search (GVLS) is available from Google Labs
  • Google Phone is getting attention and it doesn’t even exist – or does it?
  • GoogleTalk is a natural target for voice-enablement along the lines of Skype and a host of others …

Given this interest, and the current state of GVLS, there are clearly some synergies for Google with a voice-processing solution such as Jott’s.

Even if Google isn’t sold on Jott’s existing value proposition, Jott’s voice-to-text capabilities are of significant value on their own to make acquisition attractive.

DICtabrain: “Voice Powered Ideas”

In a recent post, I blogged:

… Jott goes a lot farther than my low-tech solution:

  • You call their toll-free number
  • You leave a message – your reminder, to-do, idea, etc.
  • Jott transcribes your message, and delivers the corresponding text to your phone and email

“Obscenely simple … incredibly clever” (Christopher Null, Yahoo! Tech). I couldn’t agree more!

Unfortunately, I cannot attest to how well this actually works.

I live in Canada, and the public beta only supports US-based cell phones -(

Fortunately, there’s great news for us Canucks as DICtabrain is developing a similar solution 🙂

Although I expect to have more to blog about soon, it’s worth noting that DICtabrain:

  • Makes an explicit connection to blogging
  • Is looking for alpha-trial participants
  • Has their own blog

Some may be nonplussed by services like DICtabrain’s or Jott’s.

As DICtabrain’s James Woods blogs:

Some people will never understand the benefits of voice powered writing while others seem to be waiting for it with baited breath.

I think the reason for this disconnect is the creative process itself.

Some people need to internalize their creative process by working things through inside their heads.

Others need to externalize it. And its for the externalizers that frameworks like GTD and solutions like DICtabrain’s make complete and total sense. In DICtabrain’s words: “Good ideas are only valuable if they can be remember[ed] and then actioned.

With Jott and DICtabrain appearing on the scene with similar solutions within the past 3-4 months, it’s clear that there’s something interesting happening.

Perhaps Jott and DICtabrain have glommed onto a disruptive innovation.

What are they disrupting?

How about the dictaphone + analog/digital voice recorders + voicemail + technology for action management methods.

Collectively!

That’s an impressive disruption, and one of the reasons why companies like DICtabrain and Jott are likely to draw attention from the likes of:

  • Traditional dictaphone companies – ??
  • Consumer electronics companies – Apple, Sony, etc.
  • Telcos/Networking companies – Cisco, Nortel, Skype, etc.
  • Software companies – Google, Microsoft, Nuance, etc.
  • And others

With unified messaging a key deliverable of enterprise-class traditional PBX and VoIP solutions, injecting the DICtabrain or Jott solution into the mix could be quite interesting. For example when you have robust IP connectivity, you have the networked equivalent of Nuance’s Dragon NaturallySpeaking in Skype + (DICtabrain or Jott) … and potentially more!

To re-quote Christopher Null, Yahoo! Tech: “Obscenely simple … incredibly clever”.

Let me close (again) with a small dose of realism:

I haven’t been particularly impressed by speech-to-text conversion in the past. This will be the gating factor for me.