Chapter 16. H.323 Translator
At the outset of the VOCAL project, when we committed ourselves to building a SIP-based network, most of the VoIP world was using H.323. We suspected that SIP was going to catch on and become an important basis for VoIP development, but we had to deal with the world the way it was, not with the way we wanted it to be. In 1999, the only softphone with a significant user base was the H.323-based Microsoft NetMeeting , and there was also a huge install base of H.323/PSTN gateways operating within enterprise phone systems. Rather than waiting (hoping) for VoIP users to come around to SIP quickly, we realized that it would be better for us to provide support for H.323 terminals through a SIP/H.323 translator.
Before we could build an open source translator, we required an open source stack. Fortunately, a group in Australia, known as the OpenH323 Project (http://www.openh323.org), had made such a stack available, which relieved us from having to build our own. Our original plan was to use the OpenH323 library for the H.323 side of the translator and the VOCAL SIP proxy for the SIP side. After evaluating the OpenH323 code, which was mostly geared toward endpoints and much different from the code that we required to build our server, we realized that only the OpenH323 message parsers and builders suited our needs. For example, we used their Q.931 (ISDN) classes to parse and build the Q.931 messages.
H.323 is an umbrella protocol that includes ...