ETel is constructed as illustrated in the diagram below.
ETel architectural overview
Telephony applications use the client side API to access the functionality of the ETel Server. The server translates client requests into the format used by TSY modules. The TSY modules then translates the requests into hardware-specific commands.
The ETel Server dynamically loads and unloads TSY modules at the request of clients. A basic TSY may support core telephony functionality, for example for making and terminating calls, on a wide range of hardware. A more advanced TSY may only support phone hardware from a specific manufacturer, or even just a single phone, for example a TSY supporting GSM functionality.
To access extended functionality supported by specific telephony hardware, the following are therefore required:
a standard extension of the client side API to make this functionality available to clients
support for the functionality in a TSY module
Where two manufacturers have implemented the same functions in different ways, different TSY modules are required. Both TSY modules respond to the same TSY API, but use different commands to control the telephony hardware.