Dialogic Dialogic Global Call IP IP Phone User Manual


 
IP_SIP_REQUEST_FAILED
Connection failed due to general or unclassified error.
IP_SIP_REQUEST_NETWORK_ERROR
Connection failed due to network error or local failure.
IP_SIP_REQUEST_RETRY_FAILED
Failure in request retry logic; retry not attempted.
IP_SIP_REQUEST_TIMEOUT
Connection failed due to connection timeout.
The following code illustrates how an application can extract the failure cause information from the
Extension events associated with SIP transport failures. The example assumes that the event has
already been received.
switch(pextensionBlk->ext_id)
{
.
.
.
case IPSET_SIP_REQUEST_ERROR:
ProcessRequestError(l_pParmData);
break;
.
.
.
void ProcessRequestError(GC_PARM_DATA *parmp)
{
REQUEST_ERROR RE;
memcpy(&RE,parmp->value_buf,parmp->value_size);
switch (parmp->parm_ID)
{
case IPPARM_SIP_DNS_CONTINUE:
printf(" Received IPPARM_SIP_DNS_CONTINUE on %s ", RE.Method);
break;
case IPPARM_SIP_SVC_UNAVAIL:
printf(" Received IPPARM_SIP_SVC_UNAVAIL on %s ",RE.Method);
break;
default:
printf(" Received Unknown Request error");
break;
}
switch(RE.Error)
{
case IP_SIP_REQUEST_NETWORK_ERROR:
printf("IP_SIP_REQUEST_NETWORK_ERROR\n");
break;
case IP_SIP_REQUEST_TIMEOUT:
printf("IP_SIP_REQUEST_TIMEOUT\n");
break;
case IP_SIP_REQUEST_503_RCVD:
printf("IP_SIP_REQUEST_503_RCVD\n");
break;
case IP_SIP_REQUEST_FAILED:
printf("IP_SIP_REQUEST_FAILED\n");
break;