cc_RetrieveCall( ) retrieve a call from the Hold state
208
void main()
{
LINEDEV ldev;
CRN crn_buf = 0;
char *devname = "dtiB1T1";
if ( cc_Open( &ldev, devname,0)<0)
{
printf("Error opening device: errno = %d\n", errno);
exit(1);
}
printf("Waiting for call\n");
if ( cc_WaitCall(ldev, &crn_buf, NULL, -1, EV_SYNC)<0)
{
procdevfail(ldev);
.
}
if ( cc_AnswerCall(crn_buf, 0, EV_SYNC)<0)
{
procdevfail(ldev);
.
}
.
.
.
if ( cc_HoldCall(crn_buf, EV_SYNC)<0)
{
procdevfail(ldev);
.
}
.
.
if ( cc_RetrieveCall(crn_buf, EV_SYNC) <0)
{
procdevfail(ldev);
.
}
.
.
/* Drop the call */
if ( cc_DropCall(crn_buf, NORMAL_CLEARING, EV_SYNC)<0)
{
procdevfail(ldev);
.
}
.
if ( cc_ReleaseCall(crn_buf)<0)
{
procdevfail(ldev);
.
}
/* Close the device */
if ( cc_Close( ldev)<0)
printf("Error closing device, errno = %d\n", errno);
}