CMC library

From TBwiki
(Difference between revisions)
Jump to: navigation, search
Line 35: Line 35:
 
<li>Automatic takeover of the service in the event an application goes down
 
<li>Automatic takeover of the service in the event an application goes down
 
</ul>
 
</ul>
 
  
 
----
 
----
  
Return to the [[User Guide]]
+
Return to the Toolpack [[User Guide]]

Revision as of 14:29, 7 May 2009

The CMC library is a C message-driven API that removes the complexity of media resource management and eases the bridging of call legs of different protocols. Through the use of signaling-agnostic message API, this creates a simpler customer’s application to control signaling along with the associated media. Although it is still possible to ’tweak’ parameters (i.e. information elements, SDPs, etc), it is optional to do so. Therefore, applications requiring special control over the signaling will still be able to do their things as long as it is not state affecting. A typical example is for an application to send proprietary information into a SS7 primitive using the user-to-user information elements or fill a specific IE with network-specific information. This API also removes the responsibility of the customer’s application of creating and managing resources (e.g. resources allocation for IVR functions, resources allocation for Voip functions, Stream server access). The high-level functions provided allow the user to focus on value-added features and services instead of creating adaptation layer software. (E.g. an API ’CMD_PLAY’ that automatically allocated the IVR resources and control the stream server to play an audio or video file onto a call leg). Although the protocols and resources handling are simplified, event driven handling of call legs is required. This users guide will later show in details the different wrapper C++ classes available to create an easy to read code while retaining all the versatility of a complex API.

Key features of the CMC library include:

  • Automatic CMC Server detection
  • Automatic resynchronization of already created call legs and associated media.
  • Providing automatic High Availability (HA) resynchronization capabilities in case of application failure/restart
  • Automatic load sharing among running instances of CMC Server
    • Thread pooling and call context serialization
      Allowing a more efficient use of CPU resources (thread, semaphores, etc).
      Synchronous operations on one call leg without affecting other legs.


HA applications

  • Application can register as a backup application
  • Automatic takeover of the service in the event an application goes down

Return to the Toolpack User Guide

Personal tools