The Unified API (Application Programming Interface) enables the development of applications across a variety of manufacturers switches (both Key and PBX systems) through a single interface. The Unified API provides a single set of basic functions (refer to Chapter 3) that can be used for any supported switch and are sent directly to the switch through the PBX Integration board, without additional hardware. Functioning as an extension to The Dialogic standard voice API, the Unified API offers a single design model that allows developers to take advantage of advanced PBX features (such as called/calling number ID and ASCII display information).
Using the Unified API shortens development time by eliminating the need to learn separate APIs for each switch. It enables you to create applications with a common set of functions, which operate with switches produced by different manufacturers, thereby widening your product's support beyond the traditional single-switch focus.
Utility functions included in the Unified API allow programmers to control the PBX Integration board. The application can retrieve the channel type, obtain and set channel parameters, retrieve firmware/driver/library version numbers, and retrieve error information.
The D/42 runtime library works in conjunction with the standard voice runtime library to enable applications to set up calls and perform PBX call functions using PBX Integration boards. In addition, the D/42 runtime library supports the Unified API.
The functions called by the Unified API are synchronous. This means that when a function is called in a thread, it is performed immediately and blocks until the operation is complete. Functions can be called at any time to execute on a channel that is idle or busy, and do not affect the idle or busy state of the channel.
The D/42 runtime library treats boards and channels as separate devices, even though channels are physically part of a board. A channel device is an individual PBX line connection, and a board device is a PBX Integration board that contains channels. Most functions are performed at the channel level, such as getting called/calling number ID. Certain functions, such as setting board parameters, can occur at the board level and effect all channels on that board.
Click here to contact Dialogic Customer Engineering
Copyright 2001, Dialogic Corporation