2.19. gc_ReleaseCallEx( )
The gc_ReleaseCallEx( ) function must be called after a gc_DropCall( ) function terminates.
If a previous gc_WaitCall( ) function was issued synchronously, then once the gc_ReleaseCallEx( ) function is issued, an inbound call is either:
- routed to a different line device if channel selection is preferred
- rejected until the gc_WaitCall( ) function is issued again
If the gc_WaitCall( ) function is used in asynchronous mode, the inbound call notification can be received immediately after the gc_ReleaseCallEx( ) function.
When using Springware boards, under PRI, the firmware sends the RELEASE message to the network automatically, by default. However, the host can be configured to control when to send the RELEASE message to the network by using a parameter configuration file set prior to download time. Unlike PRI, the BRI board passes this control to the host application by default. The host application then sends the RELEASE message through the gc_ReleaseCall( ) function. See Figure 6, Network Initiated Inbound Call (Synchronous Mode), for more information on how to use this function.
When using DM3 boards, under PRI, the RELEASE message is controlled by the application, via the gc_DropCall( ) function for calls disconnected by the remote side or by the gc_ReleaseCall( ) function for calls dropped by the application.
Cautions
When using Springware boards using BRI protocols, under load conditions, or if the remote end delays transmitting the RELEASE COMPLETE message, an application could experience a significant delay while the gc_ReleaseCall( ) function unblocks and returns control to the application. This delay can be up to 8 seconds long if the RELEASE COMPLETE message is never returned. The gc_ReleaseCall( ) function is supported only in synchronous mode; therefore, this problem occurs only in applications that use the asynchronous single-threaded programming model. In this case, when this blocking function is called within a handler processing the GCEV_DROPCALL event, it could create a bottleneck for processing any other event and, thereby, could affect call-handling performance.
Click here to contact Telecom Support Resources
Copyright 2003, Intel Corporation