Intel 05-1832-002 IP Phone User Manual


 
Voice API for Windows Operating Systems Library Reference — November 2003 79
return character for dial tone — ATDX_DTNFAIL( )
main()
{
DX_CAP cap_s;
int ddd, car;
char *chnam, *dialstrg;
chnam = "dxxxB1C1";
dialstrg = "L1234";
/*
* Open channel
*/
if ((ddd = dx_open( chnam, NULL )) == -1 ) {
/* handle error */
}
/*
* Delete any previous tones
*/
if ( dx_deltones(ddd) < 0 ) {
/* handle error */
}
/*
* Now enable call progress analysis with above changed settings.
*/
if (dx_initcallp( ddd )) {
/* handle error */
}
/*
* Set off Hook
*/
if ((dx_sethook( ddd, DX_OFFHOOK, EV_SYNC )) == -1) {
/* handle error */
}
/*
* Dial
*/
printf("Dialing %s\n", dialstrg );
car = dx_dial(ddd,dialstrg,(DX_CAP *)&cap_s,DX_CALLP|EV_SYNC);
if (car == -1) {
/* handle error */
}
switch( car ) {
case CR_NODIALTONE:
switch( ATDX_DTNFAIL(ddd) ) {
case 'L':
printf(" Unable to get Local dial tone\n");
break;
case 'I':
printf(" Unable to get International dial tone\n");
break;
case 'X':
printf(" Unable to get special eXtra dial tone\n");
break;
}
break;
case CR_BUSY:
printf(" %s engaged - %s detected\n", dialstrg,
ATDX_CRTNID(ddd) == TID_BUSY1 ? "Busy 1" : "Busy 2") );
break;