Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

CallInterface Class Reference

Interface class for all signals specific to a certain call. More...

#include <callinterface.h>

Inheritance diagram for CallInterface:

CallModule AudioReceive AudioSend CallOutgoing ConnectModule DisconnectModule FaxReceive FaxSend ReadDTMF Switch2FaxG3 List of all members.

Public Methods

virtual void alerting (void)=0
 Called if the other party is alerted, i.e. it has started "ringing" there.

virtual void callConnected (void)=0
 Called if the connection is completely established (physical + logical).

virtual void callDisconnectedLogical (void)=0
 called if logical connection is finished

virtual void callDisconnectedPhysical (void)=0
 called if physical connection is finished.

virtual void transmissionComplete (void)=0
 called if the file requested for sending is sent completely

virtual void gotDTMF (void)=0
 called by Connection object if DMTF characters were received.

virtual void dataIn (unsigned char *data, unsigned length)=0
 called by Connection object for each received data packet.


Detailed Description

Interface class for all signals specific to a certain call.

While ApplicationInterface contains the methods to inform the application about general events, this interface has all the signals which describe events of a certain connection like DTMF signal received, call is disconnected logical, etc.

The application is supposed to create objects for each call which implement this interface and register them with Connection::registerCallInterface(). It's possible to use different modules for different tasks during one connection and to dynamically register/unregister them. If no object is registered, the callbacks are simply not called. However, there are certain events which need a registered CallInterface implementing object - otherwise Connection will throw exceptions.

Author:
Gernot Hillier


Member Function Documentation

virtual void CallInterface::alerting void    [pure virtual]
 

Called if the other party is alerted, i.e. it has started "ringing" there.

Implemented in CallModule, and CallOutgoing.

virtual void CallInterface::callConnected void    [pure virtual]
 

Called if the connection is completely established (physical + logical).

Implemented in CallModule, CallOutgoing, ConnectModule, and Switch2FaxG3.

virtual void CallInterface::callDisconnectedLogical void    [pure virtual]
 

called if logical connection is finished

Implemented in CallModule, DisconnectModule, ReadDTMF, and Switch2FaxG3.

virtual void CallInterface::callDisconnectedPhysical void    [pure virtual]
 

called if physical connection is finished.

This is called when the connection has been cleared down completely.

Attention: You must delete the Connection object yourself if you don't need it any more!

Implemented in CallModule, and ReadDTMF.

virtual void CallInterface::dataIn unsigned char *    data,
unsigned    length
[pure virtual]
 

called by Connection object for each received data packet.

You can either use this to save your data manually and/or tell connection to save it to a file (with start_file_reception)() )

But please not that this is a performance issue: calling an application function for each received function should only be done if really necessary.

Parameters:
data  pointer to data as received by CAPI
length  length of data in bytes

Implemented in AudioReceive, and CallModule.

virtual void CallInterface::gotDTMF void    [pure virtual]
 

called by Connection object if DMTF characters were received.

It is necessary to enable DTMF receiving with Connection::enableDTMF before any DTMFs are signalled. DTMF chars can be read with Connection::getDTMF().

Implemented in CallModule, and ReadDTMF.

virtual void CallInterface::transmissionComplete void    [pure virtual]
 

called if the file requested for sending is sent completely

Implemented in AudioSend, CallModule, FaxReceive, and FaxSend.


The documentation for this class was generated from the following file:
Generated on Mon Jan 5 12:20:00 2004 for CapiSuite by doxygen1.2.18