Architecture
 Introduction
ECTF View of CT
Our View of CT

Project
Project objetives
Architecture
Screenshots
Development Site

Other things
Credits
Last word


 

Server Architecture

This was the first design of the Open Telephony Server, this some how have eveolved and the Object Directory and the Distributed Messaging today is outdated, today we use CORBA for this.

The ECTF functionality for the Group and Resource manager is already implemented and also the SCR or System Call Router.

 

Project Components

  • OpenComm Foundation Classes Library ( Beta - Stable )
    This is YAFCL ( yet another foundation classes library ) that we use inside OpenComm and we decided to make it available on OpenSource as we have based the development of this project on it. It's used mainly to provide some platform independent implementations.
    We have honored stdc++ and started using STL for collections and dropped support for collection inside the library.
     
  • Open Telephony Framework ( Alpha - Stable )
    This is the API or framework that application programmers will use. This is an object oriented library that captures some telephony concepts and gives some interfaces to hardware and implementation independent resources and services.
     
  • Open Telephony Server ( OtServer ) ( Alpha - Needing work )
    This is the server that implements the resource management, driver management, resource sharing, intercommunication mechanism, and service instantiation.
     
  • System Call Router Service ( Alpha - Stable )
    This service is in charge of routing calls to the specified destinations. It makes it's decisions based on rules that could be defined. Some existing rules are for instance DNIS ( dialed number information service ) to application mapping, trunk to application, etc.
     
  • CallFlow Designer ( Alpha - Needs work )
    This is a graphical application that makes possible to develop computer telephony applications in a rush. It resembles a RAD tool.
    With this tool you can develop state machines that will interact with the people on the other side of the phone. With this tool will be easy to make an application for Home Banking, or a home answering machine, etc. This applications are composed by actions that are as simple as "Play", "Record", "Menu", "GetDigits", "Say", etc. There is a real need to port this to Java.
     
  • CallFlow Runtime ( Alpha - Needs work )
    This service is in charge of running the applications designed with the CallFlow Designer. This applications are based on otcomponents written in C++ or JavaScript that is now an ECMA and ISO standard scripting language, and make the basis for some simple application programming. 
     
  • Open Telephony Server administration tools ( prototype )
    The server need to be configured and monitored. This tools will help doind that, today there is a prototype, all the persistant classes are on place but there is really need to port this to Java.

Others components needing volunteers

  • An S.100 API lib & headers, there is something started but is real alpha
  • An S.200 adaptor compatible with ECTF specification
  • An S.300 adaptor to make possible to use drivers written to that spec.
  • Drivers to: Pika, Natural Microsystem Drivers, QuickNet, VoiceModems, H323, IML, a lot of other telephony hardware.
  • OpenPBX - The services that make up a pbx system based on opensource.
  • OpenACD - An addition to the services provided by OpenPBX will be good to have an automatic call distribution system.
  • CSTA II Link ( There is someone that implemented CSTA for linux maybe can join us. )
  • JTAPI 1.3 support and JTAPI port for C++ for using as call control API. 
    ( Initial work started, interface to Digitro BXS20 PBX )

This will keep up working for a couple of years or so!

Please if you would like to contribute with this project send an email to develop@opencomm.com.br