BladeWare™ Fax to Email Media Server (Fax to Email) is a BladeWare application that directly receives incoming SIP-based calls. It extracts the called number for the inbound call and uses it to query a database to retrieve fax and e-mail options. If the database lookup succeeds, the fax operation is completed and the result e-mailed to the specified e-mail address using a built-in SMTP server. Fax to Email also maintains call detail, SNMP, and Web-based management interfaces.

BladeWare is Commetrex’ host-media-processing telephony middleware, a value-adding platform licensed to telecom-equipment OEMs and system developers to enable IP-based network and enterprise voice and fax services. Fax to Email is a client application that uses BladeWare‘s Open Telecommunications Framework® (OTF) Kernel API to accept SIP calls and to receive faxes using Multi-Modal Terminating Fax (MMTF). MMTF terminates both T.38 Fax Relay and G.711 pass-through fax, the latter being required to interoperate with gateways that do not support T.38.

Unlike store-and-forward fax, using, for example, T.37, BladeWare terminates real-time IP fax transactions. This means that fax servers and services based on BladeWare need not sacrifice functionality when compared with PSTN-based fax servers. Instead, fax services based on BladeWare can extend coverage well beyond those offered by legacy systems.

BladeWare FMS source code is supplied as an optional fax media server application with the BladeWare Fax to Email SDK. If required by the application, the licensee can modify FMS to add voice or other functionality based on Commetrex’ media technologies or non-Commetrex media-processing technologies by taking advantage of the open architecture of BladeWare‘s OpenMedia streams framework.



Network Architecture

Early in its history, IP telephony service architectures evolved towards a decomposed modular plug-and-play design. This creates the need for open protocols that allow the various network components to work in concert. The first significant protocol was the Media Gateway Control Protocol (MGCP), which is now widely deployed. MGCP supports the decomposition of traditional network switching functionality into the PSTN-IP media gateway, which processes the call’s media stream, and the media-gateway controller, which handles call control and commands the gateway to perform media operations. In 1999/2000 the ITU evolved MGCP to MEGACO/H.248, which can be thought of as an upgrade or refinement of MGCP.

To provide additional services such as unified messaging, audio conferencing, voice-based information services, and fax services, new network entities were required. The service platform can be decomposed into the application server and the media server, or it can be an integrated system that performs both functions. Fax to Email is an example of an integrated system; BladeWare FMS is an example of a decomposed system.

A media server’s role is to terminate (source or sink) a media stream, providing, for example, the functions needed for voice play/record, fax send/receive, and audio conferencing.

Typically, media servers use proprietary DSP-resource boards to process the media stream. But, led by Commetrex’ BladeWare media-server platform, a new generation of host-based media servers is entering the market.

BladeWare Fax-to-Email System

System Overview

BladeWare is an open value-adding platform that allows the licensee to cost-effectively develop IP-media-server-based network-service applications. As with other platform-level products, BladeWare can be used without modification, but unlike other products, it can be extensively modified. Resource service managers and resource controllers can be modified or added, and system services can be added.

BladeWare is a distributed client-server system. Its distributed architecture makes it extensible; its client-server architecture makes it scalable simply by adding server blades.

Call Control

BladeWare‘s call control isolates the application from any specific call-control or signaling protocol by a system service called the System Call Router (SCR). The SCR exposes a single call-control API to applications which is used for PSTN analog and digital interfaces and also for IP-based signaling, such as SIP. This means applications may be developed without regard to the signaling that will be used.

The SCR will route call-control commands to the BladeWare SIP Resource Service Manager (SIP RSM), where they are decomposed to commands that drive the SIP protocol stack.

Terminating IP Faxes

Many TDM-IP gateways transport fax transactions by encoding the signal of the analog modems used by the endpoint fax terminals with G.711, and then processing the packets as if they were speech. This will often create errors due to the lack of end-to-end PCM clock synchronization and lost packets that cannot be recovered in time to maintain modem synchronization. T.38 is an ITU protocol recommendation that an increasing number of TDM-IP gateways use to transport Group 3 faxes. T.38 removes these impairments while it lowers bandwidth requirements by a factor of 10-to-one.

FMS ApplicationBladeWare is capable of sending and receiving faxes for correspondent gateways that support either G.711 pass-through or T.38. The arrangement of the major functional entities is shown in the diagram below.

BladeWare: An Open Architecture

BladeWare is the telecom industry’s only open-architecture media server. The Fax to Email application source code is provided with the SDK. No runtime fees are required to use the Fax to Email application. Fax to Email runs on BladeWare, an open value-adding platform comprised of open value-adding components. The user may license BladeWare‘s PowerVox feature, adding voice play-record and DTMF processing. Audio conferencing will be added in 4Q10.

This means that the Fax to Email application is what makes the system a fax-to-e-mail server. But as an open platform, BladeWare can be the foundation for any additional media-server or gateway function.

The Fax-to-Email Application

The Fax to Email application is centered on a finite state machine (FSM) that implements the desired call flow. The FSM is a table-driven interpreter. It uses a fully populated table of event-by-state dimensions, with the table indexed by current state and event code. The table entries are a new state and state routine to execute. The state machine is recursive, so a state routine can issue calls to the state machine. Typically, this happens if a routine encounters an error condition and must abort the call. In such a case, the new state is the value from the last level of recursion.

The database look-up package interfaces with the subscriber database via a SOAP library, but the developer can easily substitute another access method. At initialization time, a thread is started for each configured channel. When a call is received, the database lookup request is passed to the thread associated with the channel for processing. When the lookup completes, the results are posted to the channel context and the result passed as an event to the FSM.

The E-Mail package forms e-mails and sends them to the specified SMTP server. The package includes a template-processing facility for formatting the e-mails. A single thread is used to send e-mails. A queue is maintained within the package of pending operations. If the e-mail is successfully sent, the fax file is deleted. If the e-mail fails, the fax file and a text version of the e-mail are written to a specified directory. In either case, a call-detail record (CDR) is written. The queue is maintained in memory, however a copy of each entry is saved in a specified directory. At startup, the e-mail package will reload all queue entries from the queue file and process them. This scheme allows recovery after system failure. The queue is checkpointed to disk after each modification.

The CDR package writes the call detail record for each completed call. It handles swapping and deleting out-of-date CDR files.

The SNMP Agent runs a thread that answers SNMP requests with the use of an SNMP library. It implements the Management Information Base (MIB) defined by Commetrex for the Fax to Email system. A separate thread runs a trap package that provides an API for sending alerts.

Email Diagram

FoIP Interoperability

T.38 Interop LabCommetrex has led the industry effort for T.38 interoperability since January 2002, when it launched the T.38 Interoperability Test Lab. Recently, Commetrex has done extensive interoperability testing with the BladeWare HMP telephony platform, with international carriers, service providers, and enterprises.

License Options

Commetrex offers software licenses designed to meet different needs. Typically, a user will license the BladeWare SDKs, which include an initial system, and then use per-system/per-port licenses for recurring systems. However, for those OEMs that intend to add significant value to the underlying BladeWare platform, Commetrex offers paid-up and royalty-based source-code licenses.

Related Publications