« Back to Cisco TAPI Questions

Tapi lines stopped working after lineBlindTransfer() and lineRedirect()

Combination View Flat View Tree View
Threads [ Previous | Next ]
I'm using tapi lineRedirect() on ROUTE-POINTS to redirect calls to extensions. Usually, if we lineRedirect() to a busy-in-a-call extension it fails with LINEERR_INVALCALLSTATE and then we can do a second (or third) lineRedirect() to other extensions.
 
But I found that if the original call was already offered to the ROUTE_POINT in virtue of a previous lineRedirect() then the first LINEERR_INVALCALLSTATE will produce the tapi line to stop working and all tapi call operations on this line fail with LINEERR_INVALLINESTATE.
 
The following scenario reproduces the problem:
1- a call on an extension is lineRedirect() to the route-point
2- then the route-point lineRedirect() it to a busy-in-a-call extension and a LINEERR_INVALCALLSTATE is received
3- after this point in time the route-point tapi line is unavailable to issue any more lineRedirect(), failing with LINEERR_INVALLINESTATE.
 
As far as I'm aware of, we get the same results if we use lineBlindTransfer() instead of lineRedirect().
 
The issue does not show if the route-point call was directed there by other mean, such as a direct call.
 
Any feedback is appretiated,