I bumped into a professional acquaintance last week. After describing briefly a presentation I was about to give, he offered to broker introductions to others who might have an interest in the work I’ve been doing. To initiate the introductions, I crafted a brief description of what I’ve been up to for the past 5 years in this area. I’ve also decided to share it here as follows:
As always, [name deleted], I enjoyed our conversation at the recent AGU meeting in Toronto. Below, I’ve tried to provide some context for the work I’ve been doing in the area of knowledge representations over the past few years. I’m deeply interested in any introductions you might be able to broker with others at York who might have an interest in applications of the same.
Since 2004, I’ve been interested in expressive representations of data. My investigations started with a representation of geophysical data in the eXtensible Markup Language (XML). Although this was successful, use of the approach underlined the importance of metadata (data about data) as an oversight. To address this oversight, a subsequent effort introduced a relationship-centric representation via the Resource Description Format (RDF). RDF, by the way, forms the underpinnings of the next-generation Web – variously known as the Semantic Web, Web 3.0, etc. In addition to taking care of issues around metadata, use of RDF paved the way for increasingly expressive representations of the same geophysical data. For example, to represent features in and of the geophysical data, an RDF-based scheme for annotation was introduced using XML Pointer Language (XPointer). Somewhere around this point in my research, I placed all of this into a framework.
In addition to applying my Semantic Framework to use cases in Internet Protocol (IP) networking, I’ve continued to tease out increasingly expressive representations of data. Most recently, these representations have been articulated in RDFS – i.e., RDF Schema. And although I have not reached the final objective of an ontological representation in the Web Ontology Language (OWL), I am indeed progressing in this direction. (Whereas schemas capture the vocabulary of an application domain in geophysics or IT, for example, ontologies allow for knowledge-centric conceptualizations of the same.)
From niche areas of geophysics to IP networking, the Semantic Framework is broadly applicable. As a workflow for systematically enhancing the expressivity of data, the Framework is based on open standards emerging largely from the World Wide Web Consortium (W3C). Because there is significant interest in this next-generation Web from numerous parties and angles, implementation platforms allow for increasingly expressive representations of data today. In making data actionable, the ultimate value of the Semantic Framework is in providing a means for integrating data from seemingly incongruous disciplines. For example, such representations are actually responsible for providing new results – derived by querying the representation through a ‘semantified’ version of the Structured Query Language (SQL) known as SPARQL.
I’ve spoken formally and informally about this research to audiences in the sciences, IT, and elsewhere. With York co-authors spanning academic and non-academic staff, I’ve also published four refereed journal papers on aspects of the Framework, and have an invited book chapter currently under review – interestingly, this chapter has been contributed to a book focusing on data management in the Semantic Web. Of course, I’d be pleased to share any of my publications and discuss aspects of this work with those finding it of interest.
With thanks in advance for any connections you’re able to facilitate, Ian.
If anything comes of this, I’m sure I’ll write about it here – eventually!
In the meantime, feedback is welcome.
- 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.
I suppose my story isn’t unlike many of my generation.
- Lifting a heavy prop awkwardly at our annual Mardi Gras event. I felt a twinge of pain, and suspect that this predisposed my back towards injury.
- Attempting to leave a leg-press machine before completely releasing the 220 lbs of weight that I, back included, was still supporting.
- Finished reading Seymour Schulich’s Get Smarter
- Devoured a few Greg Iles novels
- Devoured Rules for Renegades – The free resources at the book’s Web site are terrific, but you’ll definitely want to read the book as well
- Reviewed a book on BES installation and administration
- Am reviewing a book on the GWT
- Started and gave up on (after 50 or so pages) Jack Welch’s Straight From The Gut – I’m a little embarrassed to admit this, but I suppose it just didn’t resonate with me in my delicate state …
- Started reading Thomas Friedman’s The World Is Flat – I’m only on page 77, but I’m seriously hooked. More on this soon (I hope).
- Provided feedback on a scientific research manuscript on which I’m a co-author
- Thumbed various magazines
I fretted. About work – not being there, work piling up, etc. And about my exercise routine – that picked me up, and then knocked me down! I communed with my family – when they weren’t making up for my shortfalls – and with our pets (three cats and an obnoxiously vocal husky).
… unique business model allows [them] to bring [us] more focused information, giving [us] more of what [we] need to know, and less of what [we] don’t.
- Chapter 1 places the BlackBerry Enterprise Server (BES) in the broader context of Research In Motion’s (RIM) BlackBerry universe. In addition to itemizing relevant components, an introduction to the BlackBerry’s push model, security and Internet connectivity is provided.
- Though brief, Chapter 2 runs deep in addressing BES architecture and implementation planning. For example, we learn that the BES employs a modular architecture comprising over a dozen components. After succinctly enumerating the components and their function, BES requirements and prerequisites are identified. In addition to hardware and software requirements, recommendations are made with respect to networking your BES (e.g., firewall and/or proxy considerations) and providing it with a database. Easy to gloss over on first read are thoughtful recommendations on sizing the BES (including pointers to resources from RIM) and the database for the anticipated user load.
- Before BES components can be installed and enabled, the messaging environment and database server need to be configured. This is the subject of Chapter 3. Both local and remote database instances receive attention. Because each step is well illustrated, the book delivers on its intended purpose of serving as a solution guide.
- The installation of the BES is a multistep process enabled via a wizard. As in the previous chapter, in Chapter 4 the authors guide the reader through this process making appropriate use of illustrations. They interject appropriate commentary, and are clear on out-of-scope topics. The early emphasis on delineating BES architecture (Chapter 1) is realized as the authors transition the reader through the BES installation.
- Of course, installing the BES is just the beginning, and therefore the next few chapters focus on the additional tasks required to operationally deliver this service to its users. After introducing the six permissible levels of administrative role on the BES, attention shifts in Chapter 5 to the matter of provisioning users, groups and devices. And with respect to devices, wireline and wireless options for provisioning are given consideration.
- The BES ships with over 200 policies that can be applied variously to users, groups and devices. Also covered in Chapter 6 is the topic of provisioning software from RIM and third parties. Of particular value is the authors’ example of a software bundle targeted to a particular BlackBerry model. The ability to administer users, groups and devices with respect to policies (including software), from a single point of control (i.e., the BES server), speaks volumes to the appeal and value that this offering can deliver to corporate enterprise environments. This Chapter’s treatment of policies and software provisioning serves as an excellent introduction to topics BES administrators will return to repeatedly, and likely with increasing degrees of sophistication.
- Unlike many of the other chapters, Chapter 7 provides only an overview of multitiered administration – i.e., properties and tasks relating to users, groups, (BlackBerry) domains and servers. This enumeration of possibilities, presented in context, works effectively.
- A deeper discussion on security is the focus of the first part of the final chapter (Chapter 8). Encryption and authorization, both of which receive detailed consideration, amplify the value of the BES and its context in the overall BlackBerry universe for corporate enterprises. An unanticipated treatment of disaster recovery closes Chapter 8. In sufficient detail to enable a solution, the authors discuss in turn the measures needed to ensure that both the server (the BES) and its data (housed by the BES’s local or remote database) are readied for a disaster situation.