Intel 05-1832-002 IP Phone User Manual


 
Voice API for Windows Operating Systems Library Reference — November 2003 455
make a full or half-duplex connection — nr_scroute( )
if (dt_getxmitslot(devh2, &sc_tsinfo) == -1) {
nr_scerror("nr_scroute: %s: dt_getxmitslot ERROR: %s\n",
ATDV_NAMEP(devh2),ATDV_ERRMSGP(devh2));
return -1;
}
break;
#endif
#ifdef FAXSC
case SC_FAX:
if (fx_listen(devh2, &sc_tsinfo) == -1) {
nr_scerror("nr_scroute: %s: fx_listen ERROR: %s\n",
ATDV_NAMEP(devh2),ATDV_ERRMSGP(devh2));
return -1;
}
if (mode == SC_HALFDUP) {
return 0;
}
if (fx_getxmitslot(devh2, &sc_tsinfo) == -1) {
nr_scerror("nr_scroute: %s: fx_getxmitslot ERROR: %s\n",
ATDV_NAMEP(devh2),ATDV_ERRMSGP(devh2));
return -1;
}
break;
#endif
default:
nr_scerror("nr_scroute: %s: ERROR: Invalid 2nd device type\n",
ATDV_NAMEP(devh2));
return -1;
}
/*
* Now make the first device listen to the transmit TDM bus time slot
* of the second device.
*/
switch (devtype1) {
case SC_VOX:
if (dx_listen(devh1, &sc_tsinfo) == -1) {
nr_scerror("nr_scroute: %s: dx_listen ERROR: %s\n",
ATDV_NAMEP(devh1),ATDV__ERRMSGP(devh1));
return -1;
}
break;
case SC_LSI:
if (ag_listen(devh1, &sc_tsinfo) == -1) {
nr_scerror("nr_scroute: %s: ag_listen ERROR: %s\n",
ATDV_NAMEP(devh1),ATDV_ERRMSGP(devh1));
return -1;
}
break;
#ifdef DTISC
case SC_DTI:
if (dt_listen(devh1, &sc_tsinfo) == -1) {
nr_scerror("nr_scroute: %s: dt_listen ERROR: %s\n",
ATDV_NAMEP(devh1),ATDV_ERRMSGP(devh1));
return -1;
}
break;
#endif