You are here

 

Search



 

 

Follow us

 

noakesengine

Powering advanced telephony applications

When Noakes set out to develop our new telephony offerings, we had the same design requirements for the underlying architecture that you do when you look to create new telephony services and platforms:

  • Ease of use
  • API language independence
  • Scalability
  • Resilience
  • Rich media processing capabilities
  • Deployment options
  • Virtual machines, appliances, cloud-based
  • Fully blended inbound and outbound calls
  • Not tied to a single hardware vendor
  • Excellent technical support
  • Rapid prototyping capabilities
  • Ability to work in TDM and VoIP environments simultaneously
  • SS7, ETS, T1RB, DPNSS, SIP, H.323 and many more

We couldn't find anything that ticked all the boxes, so we designed our own – the result is the noakesengine; for IVR, ACD, Conferencing, Queuing, Gatewaying, Faxing, Dialers and much, much more. We believe it is the most powerful core platform on the market.



Rich signalling, switching, media and messaging services

noakesengine offers a wide range of signalling and media services to telephony applications, whether TDM or VoIP based, and independent of any telephony vendor's proprietary interfaces.

Each call channel within the engine can be used to play audio, record audio, detect DTMF digits, and join or leave conferences, regardless of the type of call.

The noakesengine messaging interface allows multi-modal applications to combine voice, fax, email, SMS (text messages) and IM (instant message) modes of communication into a single platform – hugely increasing the ways that your customers can interact with your service offering.

For TDM connectivity, our use of Aculab cards gives the engine the ability to make, receive, transfer and manage calls on most CCS (Common Channel Signalling) and CAS (Channel Associated signalling) protocols presented on E1 or T1 interfaces, including SS7. Each interface is fully independent such that the noakesengine can be used to build protocol conversion capability into a media processing application.



Deployment choices

The noakesengine is fully mulit-tenant which means that multiple applications, written in whatever languages, can access noakesengine resources simultaneously.

The socket based API, by its nature, allows applications to run either remotely from the engine, or co-located in a single server. The noakesengine app-loader provides a framework for cross-platform applications (for instance written in JAVA or Python) to be loaded, run and managed by the engine itself; talk to us about creating C++ applications that can be run by app-loader.

The combination of app-loader and the noakesengine provides the ideal building block for a stand-alone telephony appliance or a virtual appliance run either in the 'cloud' or in a virtual machine running on a generic server.

When deploying in TDM environments, the noakesengine currently makes use of hardware provided by Aculab plc, although the engine architecture allows us to support alternative vendors as you require. The engine can provide TDM and VoIP services using Prosody or Prosody X in either PCI, PCIe, or cPCI chassis.

When deploying in pure-play VoIP environments, the noakesengine can interface to the telephone calls and media stream using either Aculab's Prosody S Host Media Processing product (or the alternative vendor of your choice).



Programming language independance

Our application programmers write in C++, C#, JAVA, and we often prototype in scripting languages such as Python.

To ensure that all languages could be used, we designed the core application programming interface to be text based; any language which can manipulate ASCII text and can send and receive from a TCP socket can be used to drive the noakesengine.

The API is fully published, and the client APIs for C++, C#, JAVA and Python are available as source code. The client API libraries are multi-threaded for great performance on multi-CPU platforms on both Windows and Linux.