NAME IrERRORS - error definitions SYNOPSIS #include <irapi.h> DESCRIPTION When IRAPI functions return a failure indication (typically with a return value of IRR_FAIL), they also set the global variable irError to indicate the cause of the error. The irError variable is set to one of the values in the list below. In addition to failures detected when an activity is first started, the IRAPI library may detect errors that occur while attempting to complete a requested activity that was successfully initiated by a function that returned IRR_OK (or some other success value). In these cases, a DONE event (IRE_ANSWER_DONE, IRE_PLAY_DONE, etc.) is generated with an event_mod1 value of IREM_ERROR and the event_mod2 is set to one of the values in the list below. If the following explanation of errors is not sufficient for resolving the problem, it may be useful to try reproducing the problem with tracing enabled. The following errors are possible: IRER_APIERROR Indicates a library call to a third party API resulted in an error that has an asso- ciated API specific error value. Applica- tions receiving this error as the result of a function failure should check irSysError for the API specific error value that was reported by the third party API call. Applications receiving this error as the result of a DONE event with event_mod1 set to IREM_ERROR and event_mod2 set to IRER_APIERROR, should check event_mod3 for the API specific error that was reported by the API call. IRER_BADRANGE Indicates an invalid range of numbers was provided (starting value was greater than ending value) IRER_BADSTATE Indicates a function was called for a channel with an inappropriate library state IRER_CONNECTFAIL Indicates that an attempt to print or record a FAX failed due to a failure to connect with the far end FAX device. IRER_DIERROR Indicates that the FAX Device Interface process reported an error. IRER_DRIVER_ERROR Indicates a network interface driver call or SP driver call resulted in an error. The error may have been detected by the network, pack file, driver, input process, or library helper functions for the driver. Applications receiving this error as the result of a function failure should check irSysError for the error number that was reported by the driver call. Applica- tions receiving this error as the result of a DONE event with event_mod1 set to IREM_ERROR and event_mod2 set to IRER_DRIVER_ERROR, should check event_mod3 for the error number that was reported by the driver call. Unlike IRER_SYSERROR described below, the error numbers are specific to the type of driver that is being used. The irSysError value should not be interpreted as being a UNIX errno value. Tracing or associated log messages may be helpful to establish the context in which the error is being reported. IRER_ENDOFTABLE Indicates a function call resulted in a query beyond the end of a table IRER_FTT Indicates FAX failure to train with the far end FAX device. IRER_IDLE Indicates that FAX transmission terminated due to unexpected line idling. IRER_INCOMINGFAILED Indicates that FAX record failed. IRER_INTERNAL Indicates a function call resulted in an internal library error IRER_INVALID Indicates that a IRAPI function was passed invalid or bad arguments IRER_LINEDISABLE Indicates that the FAX line was disabled during FAX transmission. IRER_LINEHALT Indicates that the FAX line was halted during FAX transmission. IRER_LINEMALFUNCTION Indicates that FAX transmission terminated due to a line malfunction. IRER_LOADERROR Indicates the irRegister function could not load the required extension library routines or encountered an error in trying to execute them. The most common cause for this error is when -lirEXT appears after -lirAPI in a compile statement. The -lirEXT must appear before the -lirAPI. Extension library routines are contained in either /usr/lib/libirEXT.so or in a shared object library listed in /vs/data/irSPI.libs. IRER_MAXCHAN_TIMESLOTS Indicates a function failed since it would have required talking on more than the maximum number of timeslots for that chan- nel IRER_MAXLEN Indicates that FAX record terminated due to receipt of the maximum number of bytes specified via irFAXRecord(3IRAPI). IRER_NO_TIMESLOT Indicates that a play, say, code, or other request failed since there was no allo- cated "talk" and/or "listen" timeslot for the channel. The "talk" timeslot may have been released while a bridge was active, or the timeslot may have been released prematurely. IRER_NODATA Indicates that a play or say request con- tained no data IRER_NOPROTOCOL Indicates that FAX transmission failed due to no line protocol. IRER_NORESOURCES Indicates that the Resources for the requested service are non-existent or out of service IRER_NOREGISTER Indicates an IRAPI function call was made prior to IRAPI process registration via irRegister(3IRAPI) IRER_NOTCOLLOCATED Indicates functions could not be allocated on a common resource. IRER_NOTFOUND Indicates an object required to complete a function call could not be found IRER_OPERATORINT Indicates that FAX transmission failed due to operator intervention. IRER_OVERFLOW Indicates a function call resulted in some overflow condition for an IRAPI data ele- ment IRER_OVERLAP Indicates an invalid overlap has been detected in two ranges of numbers that should have included one range of numbers as a proper subset of the other IRER_PERMISSION Indicates a function was called by a pro- cess that has no permission to execute the function IRER_PREVIOUS_INIT Indicates the forcible initialization of a channel has failed because this process already has a cid for this channel. This error type is only expected to apply to MTC and related programs since irInit nor- mally creates a pending request for a channel that is already owned by the same process. IRER_PROTOCOLERR Indicates that FAX transmission failed due to a line protocol error. IRER_PROTOCOLTIMEOUT Indicates that FAX transmission failed due to a line protocol timeout. IRER_REDUNDANT Indicates a function was called for which the service was already enabled. For example, calling irStartEcho(3IRAPI) when echo cancellation has already been started. When this error is returned, the service remains active. IRER_REMOTEDCN Indicates that FAX transmission failed due to a remote disconnect. IRER_RESOURCEBUSY Indicates a function was called but resources were not immediately available to serve the needs of the function. When provided as a modifier to an IRE_CALL_DONE event with an IREM_ERROR modifier, this indicates that a pending request for in- use CCA resources has timed-out. IRER_RESOURCE_REMOVED Indicates a service or activity was inter- rupted by a maintenance process that for- cibly removed the resources required to perform the service or activity. This error code is provided as a modifier to a IRE_<activity>_DONE event following the IREM_ERROR modifier. IRER_RESTRICTED Indicates resources required for the called function have been explicitly res- tricted from the cid. IRER_RTN Indicates that FAX transmission terminated due to a failure to retransmit a page of unacceptable quality. IRER_SERVICESTATE Indicates a function was called for a channel with an inappropriate service state IRER_SHM_CORRUPTED Indicates the DEVTBL shared memory is cor- rupted. Stop and start the voice system. IRER_SHUTDOWN Indicates that FAX transmission failed due server process shutdown. IRER_SYSERROR Indicates a UNIX system call, driver call, or library call resulted in an error that has an associated UNIX errno. Applica- tions receiving this error as the result of a function failure should check irSysError for the errno that was reported by the UNIX system call. Applications receiving this error as the result of a DONE event with event_mod1 set to IREM_ERROR and event_mod2 set to IRER_SYSERROR, should check event_mod3 for the errno that was reported by the UNIX system call. IRER_SYSERROR differs from IRER_DRIVER_ERROR in that irSysError should be a valid UNIX errno when IRER_SYSERROR is reported. IRER_TIMESLOTS_BUSY Indicates a function failed since all dynamically allocated timeslots were in use and the necessary timeslot could not be allocated. The problem will go away when timeslots are freed, but may indicate that the system is configured for too many channels for the activity requested. IRER_TSBUS Indicates a function failed since one or more channels were not on a TDM bus, or the time-slots could not be connected for the type of communication requested IRER_UNSUPPORTED Indicates a function call requested an operation that could not be supported on the channel telephony IRER_OBSOLETE Indicates an obsolete function call or parameter. SEE ALSO IrEVENTS(4IRAPI), IrRETURNS(4IRAPI) VERSION This is version 8/31/00 of this man page.