XLine classes

class CDialogicEvents

? ^ 
    extends CDialogicMethods as public
    extends { CThread, CThread } as public

Event Functions for Intel/Dialogic Telephony line cards.

This class transmits line events to the controlling application for decision processing.

Source:
DialogicEvents.h:13
Author:
Green Lizard Staff
Version:
1.01

Contents

^ 
EntityInherited FromTypeScopeShort Description
~CDialogicEventsdestructor publicautomatically generated
CDialogicEventsconstructor publicautomatically generated
CDialogicEventsconstructor publicautomatically generated
AgentTransferConnectedmethod public An agent has been connected with a client.
Blockedmethod public The Line Blocked event has been received.
CallCompletemethod public This function signals that a call has completed.
CallConnectedmethod public This function is used to signal that the call is connected.
CallDisconnectedmethod public This function is used to signal that the call is connected.
CallProgressmethod public This function is used to signal that a call progress result is available.
DialCDialogicMethodsmethod publicMake a phone call
DisableToneCDialogicBoardsmethod publicDisable custon tone detection tables
DoDxDialmethod publicA Null dial used to set off Call Progress Analysis with Global Call
DropCallCDialogicMethodsmethod publicSame as Hanging up
EnableToneCDialogicBoardsmethod publicEnable custom tone detection tables
FaxCompletemethod public This function signals that a fax has been transmitted with or without error.
GetAllDigitsmethod publicHelper function for sperating tone digits from dx event
GetDigitsmethod publicHelper function for sperating tone digits from dx event
GetPlayMessagemethod publicHelper function for getting message text for log
HangUpCDialogicMethodsmethod publicHang up a call
InitCallCDialogicMethodsmethod publicParameterize the call before it is made.
InitInstancemethod public This is the Dialogic Event Thread Entry Point.
InitPlayCDialogicMethodsmethod publicSet up the play structures and termination string
InitRecordCDialogicMethodsmethod publicSet up record structures
LogCDialogicBoardsmethod publicSend a Log Message.
NowStringmethod publicPrint the time and date for the log
OpenDeviceCDialogicBoardsmethod publicA Helper Function for Setup.
OpenDeviceISDNCDialogicBoardsmethod publicA Helper Function for Setup.
OpenDeviceT1CDialogicBoardsmethod publicA Helper Function for Setup.
OpenDeviceT1FaxCDialogicBoardsmethod publicOpen a Fax Resource
OpenDeviceT1FaxChannelCDialogicBoardsmethod publicOpen a Fax Channel
operator =operator publicautomatically generated
PlayCDialogicMethodsmethod publicPlay a file over a phone call
PlayCompletemethod public A Play is complete

When a play is started, it completes asynchronously.

print_GC_errorCDialogicBoardsmethod publicPrint a Global Call Error.
ProcessAgentConnectedEventmethod publicConnect a live agent to a line
ProcessCallStateTransitionmethod publicHelper function for tones received during a dx event
ProcessConnectedEventmethod publicHelper for Connection, Called only by "ProcessOutbound Event"
ProcessDisconnectedEventmethod publicHandle a call being disconnected
ProcessDSPEventmethod publicA target for DSP generated signals
ProcessDxEventmethod publicRelay point for Dialogic Standard Runtime Library ("SRL", or "dx_") Call events.
ProcessEventmethod publicEntry point for Dialogic/Intel events.
ProcessGcEventmethod publicRelay point for Global Call events.
ProcessMediaDetectedEventmethod publicRetrieve structures and call helper function
ProcessOutboundEventmethod publicHandle Dialogic driver supplied events which happen after a call is made; When a call is connected, for example.
RecordCDialogicMethodsmethod publicHald-Duplex Record to a File
RecordCDialogicMethodsmethod publicHalf Duplex Record to Memory
RecordCompletemethod public A Record is complete

See play for more detail.

ReleaseLineCDialogicBoardsmethod publicRelease a specific Line.
ReserveAnyLineCDialogicBoardsmethod publicReserve a line, without caring which one is received.
ReserveLineCDialogicBoardsmethod publicReserve a specific line for use.
ResetCDialogicMethodsmethod publicReset control structures of a line
Route_N1_F1CDialogicBoardsmethod publicNetwork/Fax Routing Function
SendFaxCDialogicMethodsmethod publicSend a Fax
SetupCDialogicBoardsmethod publicSetup the Dialogic Board.
StartRecordBGCDialogicMethodsmethod publicRecord in the background
StopRecordBGCDialogicMethodsmethod publicStop Recording in the background
TearDownCDialogicBoardsmethod publicTear Down the Dialogic Setup.
TransferToAgentCDialogicMethodsmethod publicTransfer a call to another line
Unblockedmethod public The Line Unblocked event has been received.
Unroute_N1_F1CDialogicBoardsmethod publicNetwork/Fax Unrouting Function
VoxCallCDialogicMethodsmethod publicDeprecated - Make a phone call

destructor ~CDialogicEvents

? ^  > 
automatically generated
Source:
DialogicEvents.h
Code:
public ~ CDialogicEvents ( )

constructor CDialogicEvents

? ^  < > 
automatically generated
Source:
DialogicEvents.h
Code:
public CDialogicEvents ( )

constructor CDialogicEvents

? ^  < > 
automatically generated
Source:
DialogicEvents.h
Code:
public CDialogicEvents ( const CDialogicEvents & )

method AgentTransferConnected

? ^  < > 
An agent has been connected with a client.

This occurs when a call is made with the intent of a future automatic transfer. When and if the transfer actually occurs, this event is fired.

Source:
DialogicEvents.h:92
Code:
public void AgentTransferConnected ( int AgentLineNumber ,
int ClientLineNumber ,
LPCSTR TextInfo )

method Blocked

? ^  < > 
The Line Blocked event has been received.

When a board is successfully opened, the Dialogic driver then test all of the lines. During this period, the lines are "blocked", that is, not available. Also, if a line fails during the run, the drive will send this message. The most obvious case of this occurs when the lines are unplugged from the card.

Source:
DialogicEvents.h:39
Code:
public void Blocked ( int LineNumber )

method CallComplete

? ^  < > 
This function signals that a call has completed.

An event that a call is complete is dispatched using this function.

Source:
DialogicEvents.h:77
Code:
public void CallComplete ( int LineNumber ,
int CallResult ,
LPCSTR TextInfo )

method CallConnected

? ^  < > 
This function is used to signal that the call is connected.

This function is called when the call connection has been made, in order to signal to the application that a line is connected.

Source:
DialogicEvents.h:54
Code:
public void CallConnected ( int LineNumber ,
int ConnectResult ,
LPCSTR TextInfo )

method CallDisconnected

? ^  < > 
This function is used to signal that the call is connected.

This function is called when the call connection has been made, in order to signal to the application that a line is connected.

Source:
DialogicEvents.h:62
Code:
public void CallDisconnected ( int LineNumber ,
int DisconnectCause ,
LPCSTR TextInfo )

method CallProgress

? ^  < > 
This function is used to signal that a call progress result is available.

After a call is connected, at a later time, the Dialogic board reports on its analysis. This event is passed along to the application by this signal.

Source:
DialogicEvents.h:70
Code:
public void CallProgress ( int LineNumber ,
int ProgressResult ,
LPCSTR TextInfo )

method Dial

? ^  < > 
Make a phone call
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:32
Code:
public long Dial ( LPCSTR PhoneNumber ,
int LineNumber ,
LPCSTR rcrd_filename ,
LPCSTR play_filename ,
LPCSTR live_filename ,
LPCSTR fax_filename ,
LPCSTR digitstring ,
LPCSTR AgentPhoneNumber ,
int AgentLineNumber )

method DisableTone

? ^  < > 
Disable custon tone detection tables
Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:180
Code:
public void DisableTone ( Channel * pline )

method DoDxDial

? ^  < > 
A Null dial used to set off Call Progress Analysis with Global Call
Source:
DialogicEvents.h:132
Code:
public void DoDxDial ( Channel * pline ,
BOOL EnableCallProgress = TRUE )

method DropCall

? ^  < > 
Same as Hanging up
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:50
Code:
public BOOL DropCall ( int LineNumber ,
CString Caller )

method EnableTone

? ^  < > 
Enable custom tone detection tables
Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:177
Code:
public void EnableTone ( Channel * pline )

method FaxComplete

? ^  < > 
This function signals that a fax has been transmitted with or without error.

An event that a fax is complete is dispatched using this function.

Source:
DialogicEvents.h:84
Code:
public void FaxComplete ( int LineNumber ,
int FaxResult ,
LPCSTR TextInfo )

method GetAllDigits

? ^  < > 
Helper function for sperating tone digits from dx event
Source:
DialogicEvents.h:147
Code:
public void GetAllDigits ( Channel * pline )

method GetDigits

? ^  < > 
Helper function for sperating tone digits from dx event
Source:
DialogicEvents.h:144
Code:
public long GetDigits ( Channel * pline ,
int numdigs )

method GetPlayMessage

? ^  < > 
Helper function for getting message text for log
Source:
DialogicEvents.h:153
Code:
public void GetPlayMessage ( long termmsk ,
char * Messaage )

method HangUp

? ^  < > 
Hang up a call
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:47
Code:
public BOOL HangUp ( int LineNumber )

method InitCall

? ^  < > 
Parameterize the call before it is made.
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:20
Code:
public void InitCall ( Channel * pline )

method InitInstance

? ^  < > 
This is the Dialogic Event Thread Entry Point.

The Dialogic Event thread begins execution at this point. The boards are all set up, and then a loop polling for events is begun. The termination of the loop occurs when another thread sets the kill event, and then this thread falls out of this function, and terminates. The terminating thread then closes the boards.

Source:
DialogicEvents.h:29
Version:
1.0
Returns:
Always false, which directs the scheduler to terminate the thread on exit.
Code:
public BOOL InitInstance ( void )

method InitPlay

? ^  < > 
Set up the play structures and termination string
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:23
Code:
public void InitPlay ( Channel * pline ,
LPCSTR TermStr )

method InitRecord

? ^  < > 
Set up record structures
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:26
Code:
public void InitRecord ( Channel * pline )

method Log

? ^  < > 
Send a Log Message.

A Helper function to centralize the peculiar code we use to jump between Micro$oft thread apartments.

Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:141
Code:
public void Log ( int Level ,
int LineNumber ,
LPCSTR Message )

method NowString

? ^  < > 
Print the time and date for the log
Source:
DialogicEvents.h:141
Code:
public void NowString ( char * target )

method OpenDevice

? ^  < > 
A Helper Function for Setup.

This function handles the initialization which must be done for each channel on the board before any one channel can be used.

Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:101
Code:
public void OpenDevice ( int index ,
char * protocol )

method OpenDeviceISDN

? ^  < > 
A Helper Function for Setup.

This function handles the initialization which must be done for each channel on an ISDN board before any one channel can be used.

Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:117
Code:
public bool OpenDeviceISDN ( int index )

method OpenDeviceT1

? ^  < > 
A Helper Function for Setup.

This function handles the initialization which must be done for each channel on a T1 board before any one channel can be used.

Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:109
Code:
public bool OpenDeviceT1 ( int index )

method OpenDeviceT1Fax

? ^  < > 
Open a Fax Resource
Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:189
Code:
public void OpenDeviceT1Fax ( int faxchannels )

method OpenDeviceT1FaxChannel

? ^  < > 
Open a Fax Channel
Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:192
Code:
public void OpenDeviceT1FaxChannel ( int faxchannel )

operator =

? ^  < > 
automatically generated
Source:
DialogicEvents.h
Code:
public CDialogicEvents & operator = ( const CDialogicEvents & )

method Play

? ^  < > 
Play a file over a phone call
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:56
Code:
public int Play ( int LineNumber ,
LPCSTR FileName ,
LPCSTR TermStr )

method PlayComplete

? ^  < > 
A Play is complete

When a play is started, it completes asynchronously.

An event is received when it is complete. This function is called upon the recipt of the play complete event, which signals the application.

Source:
DialogicEvents.h:101
Code:
public void PlayComplete ( int LineNumber ,
int PlayResult ,
LPCSTR TextInfo )

method print_GC_error

? ^  < > 
Print a Global Call Error.

A Helper Function to get the textual information available from the Dialogic driver if a problem arises, for logging.

Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:133
Code:
public void print_GC_error ( int index ,
char * msg )

method ProcessAgentConnectedEvent

? ^  < > 
Connect a live agent to a line
Source:
DialogicEvents.h:135
Code:
public void ProcessAgentConnectedEvent ( Channel * pline ,
METAEVENT * metaeventp )

method ProcessCallStateTransition

? ^  < > 
Helper function for tones received during a dx event
Source:
DialogicEvents.h:150
Code:
public void ProcessCallStateTransition ( Channel * pline ,
DX_CST * cstp )

method ProcessConnectedEvent

? ^  < > 
Helper for Connection, Called only by "ProcessOutbound Event"
Source:
DialogicEvents.h:126
Code:
public void ProcessConnectedEvent ( Channel * pline ,
METAEVENT * metaeventp )

method ProcessDisconnectedEvent

? ^  < > 
Handle a call being disconnected
Source:
DialogicEvents.h:120
Code:
public void ProcessDisconnectedEvent ( Channel * pline ,
METAEVENT * metaeventp )

method ProcessDSPEvent

? ^  < > 
A target for DSP generated signals
Source:
DialogicEvents.h:138
Code:
public void ProcessDSPEvent ( int index )

method ProcessDxEvent

? ^  < > 
Relay point for Dialogic Standard Runtime Library ("SRL", or "dx_") Call events.
Source:
DialogicEvents.h:117
Code:
public void ProcessDxEvent ( METAEVENT metaevent )

method ProcessEvent

? ^  < > 
Entry point for Dialogic/Intel events.

Global Call and Standard Runtime Library are dispatched separately from here on a polling thread.

Source:
DialogicEvents.h:111
Code:
public void ProcessEvent ( void )

method ProcessGcEvent

? ^  < > 
Relay point for Global Call events.
Source:
DialogicEvents.h:114
Code:
public void ProcessGcEvent ( METAEVENT metaevent )

method ProcessMediaDetectedEvent

? ^  < > 
Retrieve structures and call helper function
Source:
DialogicEvents.h:129
Code:
public void ProcessMediaDetectedEvent ( Channel * pline )

method ProcessOutboundEvent

? ^  < > 
Handle Dialogic driver supplied events which happen after a call is made; When a call is connected, for example.
Source:
DialogicEvents.h:123
Code:
public void ProcessOutboundEvent ( Channel * pline ,
METAEVENT * metaeventp )

method Record

? ^  < > 
Hald-Duplex Record to a File
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:59
Code:
public int Record ( int LineNumber ,
LPCSTR FileName )

method Record

? ^  < > 
Half Duplex Record to Memory
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:62
Code:
public int Record ( int LineNumber ,
char * AudioBuffer )

method RecordComplete

? ^  < > 
A Record is complete

See play for more detail.

Source:
DialogicEvents.h:108
Code:
public void RecordComplete ( int LineNumber ,
int StopCause ,
LPCSTR TextInfo )

method ReleaseLine

? ^  < > 
Release a specific Line.

We call this when we know a line is clear, or when a call has definitely terminated.

Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:174
Code:
public BOOL ReleaseLine ( int LineNumber )

method ReserveAnyLine

? ^  < > 
Reserve a line, without caring which one is received.

This function is usefull when a workload is to be accomplished, but there is no need to choose which lines the work is done. The return is the actual line used. Using this approach, the application does not need to maintain information about which lines are available.

Please note, there are not presently any exposed methods which can take advantage of this design!

Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:154
Code:
public int ReserveAnyLine ( void )

method ReserveLine

? ^  < > 
Reserve a specific line for use.

This is called by VoxCall to reserve a Line for a call. All lines start out blocked for a few seconds while the Dialogic board tests to be sure the T1 connections are good. Then unblocked events are sent to the application for each line that is good, and we call "ReleaseLine" for each of these events. This implies that there is a period between when "Start" is called and when "ReserveLine" will succeed: this period ends when the UNBLOCKED message is sent to the application.

Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:167
Code:
public BOOL ReserveLine ( int LineNumber )

method Reset

? ^  < > 
Reset control structures of a line
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:53
Code:
public BOOL Reset ( int LineNumber )

method Route_N1_F1

? ^  < > 
Network/Fax Routing Function
Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:183
Code:
public void Route_N1_F1 ( int netindex ,
int faxchannel )

method SendFax

? ^  < > 
Send a Fax
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:41
Code:
public int SendFax ( int LineNumber ,
int FaxChannel ,
LPCSTR FileName )

method Setup

? ^  < > 
Setup the Dialogic Board.

This is done manually so that the application may get a channel count, and then initialize any structure it may require, before Dialogic events start arriving. As soon as the board(s) are set up, at the very least, "UNBLOCKED" messages mayh begin to arrive before any functions are called.

The number of lines is probed for and set in this function.

Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:93
Code:
public bool Setup ( void )

method StartRecordBG

? ^  < > 
Record in the background
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:65
Code:
public int StartRecordBG ( int recording_channel ,
int recorded_channel ,
LPCSTR FileName )

method StopRecordBG

? ^  < > 
Stop Recording in the background
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:68
Code:
public int StopRecordBG ( int recording_channel )

method TearDown

? ^  < > 
Tear Down the Dialogic Setup.

The complement to "Setup", this is also done manually. Calling it more than once has no harmful effect.

Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:125
Code:
public bool TearDown ( void )

method TransferToAgent

? ^  < > 
Transfer a call to another line
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:44
Code:
public int TransferToAgent ( int LineNumber ,
int AgentLineNumber ,
LPCSTR PhoneNumber )

method Unblocked

? ^  < > 
The Line Unblocked event has been received.

This is the signal that the line is ready for a call.

Source:
DialogicEvents.h:46
Code:
public void Unblocked ( int LineNumber )

method Unroute_N1_F1

? ^  < > 
Network/Fax Unrouting Function
Inherited From:
CDialogicBoards
Source:
DialogicBoards.h:186
Code:
public void Unroute_N1_F1 ( int netindex ,
int faxchannel )

method VoxCall

? ^  < > 
Deprecated - Make a phone call
Inherited From:
CDialogicMethods
Source:
DialogicMethods.h:38
Code:
public long VoxCall ( int LineNumber ,
LPCSTR PhoneNumber ,
LPCSTR rcrd_filename ,
LPCSTR play_filename ,
LPCSTR live_filename ,
LPCSTR fax_filename ,
LPCSTR digitstring ,
LPCSTR AgentPhoneNumber ,
int AgentLineNumber )

Created Sun May 14 08:06:43 2006.
This documentation was generated automatically by
ccdoc v08r40 2003/05/15 bin_opt_msvc_MSWin32-x86-multi-thread-4.0.
Click here to submit a bug report or feature request for ccdoc.
Click here to return to the top of the page.