Stops the out-of-band signaling bit detector.
AG
CG
DWORD adiStopSignalDetector ( CTAHD ctahd)
|
Argument |
Description |
|
ctahd |
Context handle returned by ctaCreateContext or ctaAttachContext. |
|
Return value |
Description |
|
SUCCESS |
|
|
CTAERR_FUNCTION_NOT_ACTIVE |
Attempt made to stop a function that was not running. |
|
CTAERR_INVALID_CTAHD |
Context handle is invalid. |
|
CTAERR_INVALID_SEQUENCE |
Attempt was made to stop a function that is already being stopped. |
|
CTAERR_INVALID_STATE |
Function not available in the current port state. |
|
CTAERR_SVR_COMM |
Server communication error. |
|
Event |
Description |
|
ADIEVN_SIGNAL_DETECT_DONE |
After signal detection stops, the ADI service generates a DONE event with a value field of CTA_REASON_STOPPED. |
Use adiStopSignalDetector to disable detection of incoming out-of-band signaling bits. After calling this function, incoming out-of-band bit transitions are not reported.
This function is incompatible with standard call control. Contexts running a standard protocol other than NOCC are usually excluded from using this function. Protocols usually use out-of-band signaling bits for call setup (detection of incoming calls) and call teardown (detection of hang-up). For information about controlling calls under specific TCPs, refer to the Dialogic® NaturalAccess™ CAS API Developer's Manual.
For more information, refer to Performing low-level call control.
int myStopSignalDetector( CTAHD ctahd )
{
CTA_EVENT event;
if( adiStopSignalDetector( ctahd ) != SUCCESS )
return MYFAILURE;
while( 1 )
{
myGetEvent( &event ); /* see ctaWaitEvent example */
switch( event.id )
{
case ADIEVN_SIGNAL_DETECT_DONE:
if( event.value == CTA_REASON_RELEASED )
return MYDISCONNECT; /* call has been terminated */
else if( CTA_IS_ERROR( event.value ) )
return MYFAILURE; /* API error */
else
return SUCCESS; /* stopped normally */
break;
/* might include cases to handle disconnect, DTMFs, etc. */
}
}
}