The API defines a core set of functions that are supported by almost all telephony devices and services. Applications can use it directly to access general telephony devices. The interfaces are also derived from by other APIs, for example the ETel GSM APIs, as the basis for more advanced functionality.
The API uses the EPOC client/server framework. The API provides
R
classes that send requests to the ETel server. The server in
turn passes requests to an appropriate plug-in module that handles the physical
device.
The root session provides access to system telephony information, in particular the available phones and TSYs.
The root session interface is provided by
RTelServer
.
The phone abstracts a particular telephony device. The interface allows the client to access the status and capabilities of the device, and to be notified if these change.
The phone interface is provided by
RPhone
.
A phone can have one or more lines. Similarly to the phone, clients can access the status and capabilities of a line, and can be notified if these change.
The line interface is provided by
RLine
.
Lines can have zero or more active calls. A call has the functionality to dial a number, to wait for an incoming call, and to hang up. As before, a client can get status and capabilities information, and can be notified of changes.
The call interface is provided by
RCall
.