Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class 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 Member Functions

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, 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 DisconnectModule.

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 Sun Nov 28 14:37:44 2004 for CapiSuite by doxygen 1.3.8