NAME
IrEVENTS - IRAPI events
SYNOPSIS
#include <irapi.h>
DESCRIPTION
The event structure is used to pass information describing
an event from IRAPI to the calling process. It is defined
as:
typedef struct ir_event {
channel_id cid;
int event_id;
int tag;
int event_mod1;
int event_mod2;
int event_mod3;
int event_mod4;
int event_text_len;
void *event_text;
} ir_event_t
The ir_event modifiers are:
cid Specifies the channel identifier associated
with the event. This member is always
included. Set this value to IRD_NULL if not
applicable.
event_id Indicates which event (IRE_*) occurred.
These are symbolically defined and are listed
below. This member is always included.
tag Specifies an identifier passed by the appli-
cation with the asynchronous routines. Its
value is defined only when an event affects a
previous request that includes the value tag.
If no tag is associated with the event, tag
is set to -1.
event_modN Specifies up to four codes (event_mod1
through event_mod4) that provide more
detailed information on the event. These
members are not defined for all events. Any
event modifiers not used are set to
IREM_NULL.
event_text_len Specifies the length of event_text. Set this
value to 0 if it is not used.
event_text Specifies a pointer to an area of arbitrary
data whose interpretation is event dependent.
IRAPI will set this value to IRD_NULL if it
is not used. The contents of event_text will
change after every call to irWCheck() or
irWait() An IRAPI application should copy the
contents event_text before calling these
functions again. An IRAPI application must
not otherwise manipulate this memory, i.e.,
it should not call free() or realloc() with
this pointer.
Note: The internal IRAPI event queue adds a null byte to the
end of event_text data to ensure that strings stored in this
buffer are null terminated. The actual size of the data
pointed to by event_text is always event_text_len + 1.
Events are used to inform the application about completion
of activities, failures to complete an activity, intermedi-
ate activity progress, network conditions, or caller input.
An application can disable an event by masking it. To mask
an event, an application would call irSetEvent() with the
event action set to IRF_IGNORE. Events can be used to
interrupt activities by setting the event action to an OR'd
list of action flags [see irEvents(3IRAPI)]. By default,
most event actions are set to IRF_NOTIFY.
Following is a list of IRAPI events and their associated
modifiers. Each event includes whether it can masked or
not. Event actions are set to IRF_NOTIFY by default. Excep-
tions are noted where appropriate.
IRE_ANSWER_DONE
This event is non-maskable. This event indi-
cates the completion of a request to answer a
call via irAnswer(3IRAPI).
IREM_COMPLETE This event modifier indicates
that the answer completed suc-
cessfully and the cid was put
into a IRD_ACTIVE channel ser-
vice state. In most cases
event_mod2 will have the value
of IREM_NULL, but event_mod2
might have the value of
IRER_REDUNTANT indicating that
the call had already been
answered and this call to
irAnswer was redundant. This
could occur in the case of
glare or other special cir-
cumstances. It might also be
a sign of a minor application
error.
For PRI, the event_text field will usually
contain the message that reported the answer
detection. Advanced PRI applications may
wish to parse the message for additional
information, but most applications will not
need to.
IREM_ERROR This event modifier indicates
the request terminated due to
error. event_mod2 (and possi-
bly event_mod3) contain error
code values that may help
resolve the problem. See
IrERRORS(4IRAPI) for possible
values. No change in channel
service state occurred.
IRE_BACKGROUND This event is maskable. This event indicates
the results of a request to start background
play on a particular channel.
IREM_COMPLETE This event modifier indicates
that the background play was
initiated successfully.
IREM_INTERRUPT This event modifier indicates
that the background play was
interrupted. This is likely
due to a hardware failure or
resource removal.
IREM_ERROR This event modifier indicates
the request terminated due to
error. event_mod2 (and possi-
bly event_mod3) contain error
code values that may help
resolve the problem. See
IrERRORS(4IRAPI) for possible
values. No change in channel
service state occurred.
IRE_BOARD_DENY This event is non-maskable. A request to
remove a board from service has been denied.
This event is only expected by MTC and
related processes that take boards out of
service. The board that has been denied is
identified by event_mod1.
IRE_BOARD_GRANT
This event is non-maskable. A request to
remove a board from service has been granted.
This event is only expected by MTC and
related processes that take boards out of
service. The board that has been granted is
identified by event_mod1.
IRE_CALL_DONE This event is non-maskable. This event indi-
cates the request to make an outbound call
via irCall(3IRAPI) completed. The tag for
this event is the tag provided as an argument
to irCall. Event modifiers are identical to
those used for IRE_CALL_PROG. The distinc-
tion between IRE_CALL_PROG and IRE_CALL_DONE
is that IRE_CALL_DONE indicates that the
irCall request has completed. IRE_CALL_PROG
indicates intermediate events occur during
the call whether a irCall is active or not.
For PRI, the event_text field will usually contain the mes-
sage that reported the call completion. Advanced PRI appli-
cations may wish to parse the message for additional infor-
mation, but most applications will not need to.
IRE_CALL_PROG This event is maskable. This event occurs
when a call progress tone or message has been
detected. The tag for this event is unde-
fined (most likely set to 0) since it is
ambiguous as to what tag would apply to the
event. For PRI, the event_text field may
contain the message that reported the call
progress. Advanced PRI applications may wish
to parse the event_text field for additional
information, but most applications will not
need to. Event_mod1 for this event contains
the specific tone or message received:
IREM_RINGBACK This modifier to the
IRE_CALL_PROG event occurs for
each detected ring returned by
the network. An IREM_RINGBACK
is currently only expected
with analog (tip/ring) chan-
nels. When provided as a
modifier to the IRE_CALL_DONE
event, this means that the
first audible ring was
detected while
IRP_OUTCALL_MAXRINGS was set
to 0.
WARNING: The audible ring
heard by the called party may
occur at a different time than
the ringback provided via the
network. If the called party
answers the call on or before
the first audible ring, it is
possible that the VIS never
receives a ringback from the
network. Therefore, applica-
tions that depend upon receiv-
ing one or more IRE_CALL_PROG
or IRE_CALL_DONE events with
the IREM_RINGBACK modifier may
fail to detect that the called
party has answered the phone.
IREM_ERROR This event modifier occurs if
there is an error. event_mod2
(and possibly event_mod3) con-
tain error code values that
may help resolve the problem.
See IrERRORS(4IRAPI) for pos-
sible values. If the event_id
is IRE_CALL_DONE, the irCall
request has been aborted and
the service state may have
been modified. If the
event_id is IRE_CALL_PROG, an
error has been detected and
call completion analysis (if
enabled) most likely has been
stopped. The application
should take appropriate
recovery steps.
IREM_DENY This event modifier indicates
that the requested action
failed as the necessary
resources could not be
obtained within the interval
specified. This modifier is
expected on an IRE_CALL_DONE
when a pending request for CCA
resources is denied after a
timeout.
event_mod2 may contain addi-
tional information about the
reason for the denial.
IRER_RTU_BUSY indicates that
the necessary Feature License
did not become available
within the specified timeout
period. IRER_RESOURCE_BUSY
indicates that the necessary
resource did not become avail-
able in the specified timeout
period (but the Feature
License was available).
IREM_NULL indicates no further
information about why the
resource was not available.
IREM_CCA_BUSY This event modifier indicates
that CCA resources were
depleted. This is slightly
different than IREM_DENY in
that it indicates the Resource
Manager (RM) thought the CCA
resources were available, but
the CCA packfile thought that
the SP circuit card was
already fully used.
IREM_CHAN_REMOVED
This event modifier only
applies to irInitCall or irIn-
itCallGroup. It indicates
that the channel used for an
outbound call attempt has been
removed for use by another
process. When the event_id is
IRE_CALL_DONE, the outbound
call attempt has failed. When
the event_id is IRE_CALL_PROG,
the IRAPI library is automati-
cally trying another channel
in the group specified as an
argument to irInitCallGroup.
IREM_COT This event modifier indicats
that an outbound call has
failed since SS7 continuity
checking needs to continue on
the channel used for the out-
bound call. When the IREM_COT
modifier is received for an
IRE_CALL_DONE event, the
application should release the
channel by calling irDeinit.
In general, the application
should attempt to place the
outbound call on another
channel. When the IREM_COT
modifier is received for an
IRE_CALL_PROG event, it means
that irInitCallGroup encoun-
tered interference from con-
tinuity testing on one chan-
nel, has automatically called
irDeinit to release the chan-
nel, and has gone ahead to
attempt using another channel
in the group. This event
modifier is only expected on
SS7 channels and does not by
itself imply a problem in the
voice system or connections to
the switch.
IREM_GLARE This event modifier indicates
that an outbound call has
failed since there is an
incoming call on that channel.
When the IREM_GLARE modifier
is received for an
IRE_CALL_DONE event, the
recommended action is to call
irExecDefOwn with a svc_type
argument of IRD_AD_STARTUP to
release the channel and then
allow the Application Dispatch
(AD) process to pass the call
to an application to answer
the incoming call. In gen-
eral, the application should
attempt to place the outbound
call on another channel.
When the IREM_GLARE modifier
is received for an
IRE_CALL_PROG event, it means
that irInitCallGroup encoun-
tered glare on one channel,
has automatically called irEx-
ecDefOwn to release the chan-
nel back to AD, and has gone
ahead to attempt using another
channel in the group.
For Tip/Ring channels, the
event_mod2 value can be used
to determine the type of glare
condition that was encoun-
tered. IREM_NO_DIALTONE
indicates that no dialtone was
detected within
IRP_TR_GLARE_TIMEOUT seconds
of going off-hook. IREM_TT
indicates that a touch tone
was received after going off-
hook and before hearing dial-
tone or dialing digits (the
digit received is in
event_mod3). When IREM_TT is
reported, the digit will be
placed on the input queue and
an IRE_INPUT event will be
queued up to follow this
IRE_CALL_DONE event. If an
irExecDefOwn is done, the new
channel owner will unfor-
tunately not get the IRE_INPUT
event, but the input queue
will contain the touch tone
digit that was received. An
event_mod2 of
IREM_CALLINFO_ARRIVED indi-
cates that call information
arrived for the cid. The call
information id is in
event_mod3 and the irLBolt
time the call information was
received is in event_mod4.
For T1, E1, and PRI channels,
the event_mod2 value will be
IREM_NULL since there is only
one type of glare detection
for those telephony types.
IREM_GRANT This event modifier only
applies to IRE_CALL_PROG and
indicates that a pending
request for CCA resources
required for the call has been
satisfied. The state is
changing from IRS_CALL_PENDING
to IRS_CALLING.
IREM_REORDER This event modifier occurs if
there is a reorder tone (fast
busy).
IREM_HIDRY This event modifier occurs
when there is no line activity
for 25 seconds after a call
has been dialed.
IREM_DIALTONE This event modifier indicates
dial tone is detected. For
ISDN PRI, the ISDN cause value
is contained in event_mod2,
otherwise event_mod2 is
IREM_NULL.
IREM_STUTTER_DIALTONE
This event modifier indicates
stutter dial tone is detected.
IREM_MODEM This event modifier occurs if
a modem tone is detected.
IREM_DIALDONE This event modifier occurs
when dial is complete during
the irCall(3IRAPI).
IREM_BUSY This event modifier occurs if
a busy tone is detected. For
ISDN PRI, the ISDN cause value
is contained in event_mod2,
otherwise event_mod2 is
IREM_NULL.
IREM_FAST_BUSY This event modifier occurs if
"fast" busy tone is detected.
For ISDN PRI, the ISDN cause
value is contained in
event_mod2, otherwise
event_mod2 is IREM_NULL.
IREM_ANSWER This event modifier occurs on
answer detection (for example,
voice energy or cessation of
ringing detected).
IREM_ANSWER_SUP
This event modifier occurs on
answer supervision from the
switch.
IREM_TT This event modifier applies
only to IRE_CALL_DONE and
indicates that a touch tone
was detected (presumably indi-
cating that the call was
answered).
IREM_NOANSWER This event modifier occurs
when there is ringing, but no
answer after
IRP_OUTCALL_MAXRINGS. If
IRP_OUTCALL_MAXRINGS is set to
0, IREM_RINGBACK occurs rather
than IREM_NOANSWER.
IREM_RING_STOPPED
This event modifier occurs
when cessation of ringing has
been detected. This can gen-
erally be considered a form of
successful answer detection,
but does not indicate that
speech energy has been
detected. This modifier
currently only applies to LST1
or LSE1 (cessation of ringing
on T/R channels is reported as
an IRE_ENERGY event).
IREM_HUNGUP This event modifier occurs if
the orignal caller disconnects
(hangs up) while the applica-
tion is doing a transfer (via
irFlash and irDial).
IREM_TIMEOUT This event modifier occurs if
there is no call classifica-
tion after the timeout implied
by IRP_OUTCALL_MAXRINGS.
IREM_BLIND This event modifier indicates
the completion of a blind
call.
IREM_USER1 This event modifier is
reserved for customized appli-
cations and currently is not
implemented.
IREM_USER2 This event modifier is
reserved for customized appli-
cations and currently is not
implemented.
IREM_PROT_PROV This event modifier indicates
that there was an ISDN proto-
col or provisioning error.
The ISDN cause value is con-
tained in event_mod2.
IREM_INVALID_DIALSTRING
This event modifier indicates
that an outbound irCall or
irDial failed due to an
invalid dial string.
IREM_ISDN_VACANT
This event modifier indicates
that there was an ISDN vacant
code error. The ISDN cause
value is contained in
event_mod2.
IREM_SIT This event modifier indicates
special information tones and
primarily applies to using
Full CCA (that is, when
IRP_OUTCALL_CCALEVEL parameter
is set to IRD_FULL_CCA). It
can occur occasionally without
the use of Full CCA as
described below. Event_mod2
can be:
IREM_RO_INTRALATA
Intralata
reorder
IREM_RO_INTERLATA
Interlata
reorder
IREM_NC_INTRALATA
Intralata no
circuit
IREM_NC_INTERLATA
Interlata no
circuit
IREM_NC_INTL International
no circuit
IREM_VC Vacant code
IREM_IC Intercept
This event
modifier can
also be
reported on
Tip/Ring
channels
without use of
Full CCA. In
that case, it
represents a
non-SIT inter-
cept tone (such
as the one used
by most AT&T
PBX's to indi-
cate that an
invalid exten-
sion was
dialed).
IREM_FUTURE Future,
reserved
IREM_FF Foreign failure
(international)
IREM_OTHINTL International
other
IREM_OTHDOM Domestic other
IREM_OTHINEF Ineffective
other
IREM_UNKNOWN Unknown SIT
type
IRE_CHAN_DENY This event is non-maskable. This event indi-
cates the failed allocation of a channel to a
process as a result of a call to
irInit(3IRAPI3), irForceInit(3IRAPI) or
irInitGroup(3IRAPI) which returned
IRR_PENDING. After receiving the event,
processes should stop using the channel_id
returned from one of these functions as it is
invalid.
The event element cid is set to IRD_NULL. If
the event is the result of either
irInit(3IRAPI) or irForceInit(3IRAPI),
event_mod1 is set to the channel number
requested and event_mod2 is set to
IRD_INVALID. If the event is the result of
irInitGroup(3IRAPI), event_mod1 is set to
IRD_INVALID and event_mod2 is set to the
group number requested.
IRE_CHAN_GRANT This event is non-maskable. This event indi-
cates a channel has been allocated success-
fully to a process as a result of a call to
irInit(3IRAPI3), irForceInit(3IRAPI) or
irInitGroup(3IRAPI) which returned
IRR_PENDING.
IRE_CHAN_IS_DONE
This event is non-maskable. This event indi-
cates a request to place a channel in-service
via irChanIS(3IRAPI) completed.
IREM_COMPLETE This event modifier indicates
that the request completed
successfully and the cid was
put into a IRD_INACTIVE chan-
nel service state.
IREM_ERROR This event modifier indicates
the request terminated due to
error. event_mod2 (and possi-
bly event_mod3) contain error
code values that may help
resolve the problem. See
IrERRORS(4IRAPI) for possible
values.
IRE_CHAN_OOS_DONE
This event is non-maskable. This event indi-
cates a request to place a channel out-of-
service via irChanOOS(3IRAPI) completed.
IREM_COMPLETE This event modifier indicates
that the request completed
successfully and the cid was
put into a IRD_CHAN_OOS chan-
nel service state.
IREM_ERROR This event modifier indicates
the request terminated due to
error. event_mod2 (and possi-
bly event_mod3) contain error
code values that may help
resolve the problem. See
IrERRORS(4IRAPI) for possible
values. No change in channel
service state occurred.
For PRI, the event_text field
will usually contain the mes-
sage that reported the failure
to remove the channel from
service. Advanced PRI appli-
cations may wish to parse the
message for additional infor-
mation, but most applications
will not need to.
IRE_CHAN_REMOVED
This event is not maskable. This event
occurs when a channel is taken away from a
process. This can happen if the maintenance
process (MTC) removes a channel due to a user
request or a system hardware error, or when
another process requests a channel. When and
how channels are removed from a process may
be controlled to some extent by setting the
IRP_CHAN_NEGOTIATION parameter. See
irInit(3IRAPI) and IrPARAMETERS(4IRAPI). The
channel number is returned as event_mod1. An
application receiving this event should dis-
continue all use of the cid that was associ-
ated with the channel. The channel is deini-
tialized automatically, therefore irDeinit()
should not be called by the application.
IRE_CHAN_REQUESTED
This event is maskable. This event occurs
when a process requests a channel from an
application with the IRP_CHAN_NEGOTIATION set
to IRD_CONDITIONAL. The process receiving
the event may choose to release the channel
immediately via irDeinit(3IRAPI), complete
the call and/or do any post call processing
and release the channel, or completely ignore
the event, thereby denying ownership to the
requesting process.
IRE_CLOCK This event is maskable for cid based timers
only. This event occurs every time a
predesignated number of clock time units have
elapsed (timeout interval). The
irStartTimer(3IRAPI) function is used to
specify the time interval between successive
clock events on a given cid. The
irStartPTimer(3irPAI) function is used to
specify the time interval between successive
clock events on a process wide basis. The
subsequent IRE_CLOCK event has a valid cid
element only for timers started with
irStartTimer(3IRAPI) but not
irStartPTimer(3IRAPI). See irTimer(3IRAPI).
IRE_CONVERT_DONE
This event is non-maskable. This event indi-
cates that a irConvertAlgorithm(3IRAPI) func-
tion completed.
IREM_COMPLETE This event modifier indicates
the request completed success-
fully. event_mod2 is the size,
in bytes, of the converted
object.
IREM_ERROR This event modifier indicates
the request terminated due to
error. event_mod2 (and possi-
bly event_mod3) contain error
code values that may help
resolve the problem. See
IrERRORS(4IRAPI) for possible
values.
IRE_DEFOWNER This event is non-maskable. This event indi-
cates that a channel has just been returned
to its default owner. event_mod1 indicates
the channel number.
IRE_DEINIT_DONE
This event is maskable. This event, by
default, is set to IRF_IGNORE. This event
indicates that a channel has been idled and
released to the default owner or parent pro-
cess after execution of irDeinit(3IRAPI).
Transient applications should wait for this
event before exit(2)ing to give the library
an opportunity to idle the channel. Note
that the cid element in the event structure
is set to IRD_NULL since there is no longer a
cid associated with the channel. event_mod1
contains the channel number released. tag
contains the tag passed to irDeinit or irRe-
turn.
This event is not generated if the calling
process never had ownership of the channel.
This would be the case if a process attempted
to gain ownership of a channel via
irInit(3IRAPI) and received an IRR_PENDING
return code, thereby placing the channel in
the IRS_INIT_PENDING state. If the channel
is released via irDeinit(3IRAPI) prior to
receiving an IRE_CHAN_GRANT, the release is
immediate and no IRE_DEINIT_DONE event is
generated.
IRE_DENY This event is non-maskable. This event indi-
cates a request for some resource was denied
after a resource request timeout.
event_mod1 may contain additional information
about the reason for the denial.
IRER_RTU_BUSY indicates that the necessary
Feature License did not become available
within the specified timeout period.
IRER_RESOURCE_BUSY indicates that the neces-
sary resource did not become available in the
specified timeout period (but the Feature
License was available). IREM_NULL indicates
no further information about why the resource
was not available.
This event applies to some but not all func-
tions returning IRR_PENDING where the pending
resource was not granted after the timeout
interval specified in
IRP_RESOURCE_RETURNMODE. The mutually
exclusive functions result in a DONE event
(for example, IRE_CALL_DONE) with an event
modifier of IREM_DENY rather than this
separate IRE_DENY event.
IRE_DIAL_DONE This event is non-maskable. This event indi-
cates a request to dial a string via irDial
completed.
IREM_COMPLETE This event modifier indicates
a dial request completed suc-
cessfully.
IREM_ERROR This event modifier indicates
the request terminated due to
error. event_mod2 (and possi-
bly event_mod3) contain error
code values that may help
resolve the problem. See
IrERRORS(4IRAPI) for possible
values.
IRE_DISCONNECT This event is non-maskable. This event
occurs when disconnect is detected on a chan-
nel, but is not guaranteed to be generated
for all telephony interface types. The event
modifiers are a subset of those used for
IRE_CALL_PROG or IREM_NULL.
By default, the event mask is set to inter-
rupt outbound calls, and all play, say, and
record activity when this event occurs [event
mask set to (IRF_NOTIFY | IRF_CALLINTR |
IRF_PLAYINTR | IRF_RECINTR | IRF_SAYINTR).
Since this event is not generated for all
telephony interface types, an application
using those telephony interface types should
not depend on receiving an IRE_DISCONNECT for
all cases of the remote end terminating a
call. In particular, a T/R interface does not
have a reliable means of detecting a discon-
nect that is independent of the application.
Depending on the application, a disconnect on
a T/R interface may be indicated by an
IRE_WINK event or an IRE_CALL_PROG event with
an event modifier of IREM_DIALTONE,
IREM_STUTTER_DIALTONE, IREM_REORDER,
IREM_BUSY, or IREM_RINGBACK. The application
must determine whether such events represent
a disconnect or normal activity as part of an
irCall, irDial, or irFlash.
For PRI, the event_text field will usually
contain the message that reported the call
disconnect. Advanced PRI applications may
wish to parse the message for additional
information, but most applications will not
need to.
IRE_DISCONNECT_DONE
This event is non-maskable. This event indi-
cates a request to disconnect a call via
irDisconnect(3IRAPI) completed.
IREM_COMPLETE This event modifier indicates
the request to disconnect the
call completed successfully.
The channel service state has
changed to IRD_INACTIVE.
IREM_ERROR This event modifier indicates
the request terminated due to
error. event_mod2 (and possi-
bly event_mod3) contain error
code values that may help
resolve the problem. See
IrERRORS(4IRAPI) for possible
values.
For PRI, the event_text field
may contain the message that
reported the failure to
disconnect properly. Advanced
PRI applications may wish to
parse the message for addi-
tional information, but most
applications will not need to.
IRE_DISCONNECT_TONE
This event is maskable. This event, by
default, is set to IRF_IGNORE. If the
IRE_DISCONNECT_TONE event is set to
IRF_NOTIFY (see irSetEvent(3IRAPI)), then an
application may receive this event (based on
the values specified in the irAPI.rc(4IRAPI)
file) instead of receiving the corresponding
IRE_CALL_PROG event when a ringing, busy,
reorder, dialtone, or stutter dialtone call
progress tone has been detected. Applica-
tions which have enabled this event should,
in general, treat it as an IRE_DISCONNECT
event. This event currently only occurs on
analog (tip/ring) channels. If an applica-
tion is performing outcalling by using
irAnswer(3IRAPI) instead of irCall(3IRAPI) or
is doing blind outbound calls with
irCall(3IRAPI), then it may receive an
IRE_DISCONNECT_TONE event that should not be
considered a disconnect event. Such applica-
tions should either set the IRF_IGNORE flag
or treat the IRE_DISCONNECT_TONE appropri-
ately based on the current state of the call.
The tag for this event is undefined (most
likely set to 0) since it is ambiguous as to
what tag would apply to the event.
Event_mod1 for this event contains the
specific tone received:
IREM_RINGBACK This modifier to the
IRE_DISCONNECT_TONE event
occurs for each detected ring
returned by the network.
IREM_REORDER This event modifier occurs if
there is a reorder tone (fast
busy).
IREM_DIALTONE This event modifier indicates
dial tone is detected.
IREM_STUTTER_DIALTONE
This event modifier indicates
stutter dial tone is detected.
IREM_BUSY This event modifier occurs if
a busy tone is detected.
IRE_ECHO_START This event is non-maskable. This event indi-
cates the results of an attempt to start echo
cancellation via irStartEcho(3IRAPI).
IREM_COMPLETE This event modifier indicates
the request to start the echo
canceler completed success-
fully. The channel is ready
to do speech recognition while
prompting.
IREM_ERROR This event modifier indicates
the request to start the echo
canceler failed. event_mod2
contains the error code and
event_mod3 may contain supple-
mental error code information.
IREM_DENY This event modifier indicates
the request to start echo can-
cellation failed due to echo
cancellation resources not
being available in the number
of milliseconds specified in
IRP_RESOURCE_RETURNMODE when
irStartEcho(3IRAPI) was exe-
cuted. event_mod2 may contain
additional information about
the reason for the denial.
IRER_RTU_BUSY indicates that
the necessary Feature License
did not become available
within the specified timeout
period. IRER_RESOURCE_BUSY
indicates that the necessary
resource did not become avail-
able in the specified timeout
period (but the Feature
License was available).
IREM_NULL indicates no further
information about why the
resource was not available.
IRE_ECHO_STOP This event is non-maskable. This event indi-
cates that echo cancellation has been
stopped.
IREM_COMPLETE This event modifier indicates
echo cancellation has been
successfully stopped. This is
the normal result of stopping
echo cancellation via
irStopEcho(3IRAPI).
IREM_ERROR This event modifier indicates
echo cancellation has been
stopped due to an error.
event_mod2 (and possibly
event_mod3) contain error code
values that may help resolve
the problem. See
IrERRORS(4IRAPI) for possible
values. When event_mod2 is
IRER_RESOURCE_REMOVED, it
indicates that echo cancella-
tion resources were forcibly
removed by a maintenance pro-
cess.
IRE_ENERGY This event is maskable. This event occurs
when speech energy is detected on the channel
while irStartSpeechED is active. event_mod1
contains the original event channel number.
event_mod2 contains the original event
recipient's qkey value.
For historical reasons, it may also occur
when cessation of ringing is detected by a
T/R card while irStartSpeechID is inactive.
In the future, a different event may
represent cessation of ringing (eg.
IRE_CALL_DONE or IRE_CALL_PROG with
IREM_RING_STOPPED modifier).
IRE_EVENT_MONITOR
This event is non-channel based and is there-
fore non-maskable. This event indicates that
an event specified for monitoring via
irEventMonitor(3IRAPI) has occurred.
event_text contains a pointer to the event
being monitored. Beware that any pointer
values in the monitored event are only valid
within the context of the process receiving
the original event at the time the event is
reported.
IRE_EXCEPTION This event is not maskable. This event
occurs when an asynchronous failure happens
and must be reported to the application so
the application may take appropriate action,
i.e., terminate the call. Event_mod1 indi-
cates the class of error as follows:
IREM_BRIDGE This event modifier indicates
a card does not have enough
resources to complete a bridge
request made to it.
Event_mod2 indicates the chan-
nel number that could not be
bridged. Event_mod3 indicates
the reason for the failure.
Event_mod4 indicates the
number of IRE_EXCEPTION events
the application has been sent
so far.
IREM_RESOURCE This event modifier indicates
a card does not have enough
resources to complete a
timeslot connect request made
to it. Event_mod2 indicates
the channel number of the
timeslot connect request.
Event_mod3 indicates the rea-
son for the failure.
Event_mod4 indicates the
number of IRE_EXCEPTION events
the application has been sent
so far.
IRE_EXEC This event is not maskable. This event
occurs when an application has been
irExec(3IRAPI)'ed or irSubProg(3IRAPI)'ed on
a channel. event_mod1 is the channel number.
event_mod2 is IREM_SUBPROG if the event is
the result of an irSubProg(3IRAPI) call, or
IREM_EXEC if the event is the result of an
irExec(3IRAPI) call. Applications are
expected to irInit(3IRAPI) the channel after
receiving this event. After successful ini-
tialization of the channel, the exec buffer
may be accessed though the IRP_EXEC_BUF
parameter.
IRE_EXTERNAL This event is maskable. This event occurs
when another process sends an event to the
IRAPI with irPostEvent(3IRAPI).
event_text_len contains the length of
event_text. event_text points to the message
header ( struct mbhdr ) and data passed by
irPostEvent(3IRAPI). See irPostEvent(3IRAPI)
for details.
IRE_THREAD_EVENT
This event is not maskable. This event is
generated only when a process uses
irThreadEvent(3IRAPI) This event has no mean-
ing to IRAPI, it serves only as a way for
threads in multi-threaded IRAPI programs to
communicate to the irWait(3IRAPI) thread.
IRE_FAXPRINT_DONE
This event is non-maskable. This event indi-
cates that a FAX print has completed.
Event_mod1 indicates the reason for the FAX
print completion as follows:
IREM_COMPLETE The FAX print request com-
pleted successfully.
IREM_ERROR The FAX print request ter-
minated due to error.
event_mod2 contains error code
values that may help resolve
the problem. See
IrERRORS(4IRAPI) for possible
values.
IREM_STOPPED The request was terminated due
to irStop(3IRAPI) or an event
interrupt.
IREM_DENY The request was terminated due
to a timeout on waiting for
FAX print resources.
event_mod2 may contain addi-
tional information about the
reason for the denial.
IRER_RTU_BUSY indicates that
the necessary Feature License
did not become available
within the specified timeout
period. IRER_RESOURCE_BUSY
indicates that the necessary
resource did not become avail-
able in the specified timeout
period (but the Feature
License was available).
IREM_NULL indicates no further
information about why the
resource was not available.
For IREM_COMPLETE, IREM_ERROR, and
IREM_STOPPED, event_mod3 contains the number
of pages printed, event_mod4 contains the
number of bytes printed, event_text contains
the job_id for this job as a character string
and event_text_len, is its length.
IRE_FAXPRINT_PROG
This event is maskable. This event indicates
that a FAX job ID is now available. The job
ID is a character string of length
event_text_len pointed to by event_text. The
size of the job ID will be at most
IRD_FAX_JOB_ID_LENGTH characters. Event_mod1
indicates the validity of the job ID as fol-
lows:
IREM_NULL Job ID is valid.
IREM_ERROR Job ID is not valid. Expect a
subsequent failure mode
IRE_FAXPRINT_DONE.
IREM_STOPPED Job ID is not valid. This
event will result if
irStop(3IRAPI)
was called or an event inter-
rupting FAX print was
received. Expect a subsequent
IRE_FAXPRINT_DONE with the
IREM_STOPPED modifier.
IRE_FAXRECORD_DONE
This event is non-maskable. This event indi-
cates that a FAX record has completed. The
number of bytes recorded is available from
irGetVCount(3IRAPI). Event_mod1 indicates
the reason for the FAX record completion as
follows:
IREM_COMPLETE The FAX record request com-
pleted successfully.
IREM_ERROR The FAX record request ter-
minated due to error.
event_mod2 contain error code
values that may help resolve
the problem. See
IrERRORS(4IRAPI) for possible
values.
IREM_PARTIAL The FAX record request com-
pleted prematurely due the
reason indicated in
event_mod2.
IREM_STOPPED The request was terminated via
user request ( irStop(3IRAPI))
or event interrupt.
IREM_DENY The request was terminated due
to a timeout on waiting for
FAX record resources.
For IREM_COMPLETE, IREM_ERROR, IREM_PARTIAL,
and IREM_STOPPED, event_mod3 contains the
number of pages recorded, event_mod4 contains
the number of bytes recorded, event_text con-
tains the remote tsi as a character string
and event_text_len, is its length.
IRE_FAX_TONE This event is maskable. This event indicates
that FAX tone has been detected. event_mod1
contains either IRF_CNG or IRF_CED for the
type of tone detected. FAX tone detection is
turned on via a call to irFAXTone(3IRAPI).
event_mod3 contains the duration of the CNG
tone in milliseconds. CNG tone duration may
be used to truncate a voice file recorded at
the time CNG tone is detected. The duration
indicated in event_mod3 should be truncated
from the end of the file (see fcntl(2),
F_FREESP and irTime2Byte(3IRAPI)). Note that
event_mod2 is unused, event_mod3 is used
instead for backward compatibility reasons.
IRE_FLASH_DONE This event is non-maskable. This event indi-
cates a request to perform a hook flash via
irFlash(3IRAPI) completed.
IREM_COMPLETE This event modifier indicates
the request completed success-
fully.
IREM_ERROR This event modifier indicates
the request terminated due to
an error. event_mod2 (and
possibly event_mod3) contain
error code values that may
help resolve the problem. See
IrERRORS(4IRAPI) for possible
values.
IRE_GRANT This event is maskable. This event indicates
a request to reserve one or more resources
has been granted. This is a possible subse-
quent event for any function returning
IRR_PENDING. See irReserveResource(3IRAPI).
IRE_INPUT This event is maskable. This event occurs
when any input is detected. Event_mod1 can
be:
IREM_TT For touch-tone input:
event_mod2 contains the
touch-tone digit [see
IrDIALSTRINGS(4IRAPI)],
event_mod3 contains the
sequence number [see
irEndSeq(3IRAPI)], event_mod4
contains the lbolt time when
the touch-tone was received.
The tag event structure field
is not valid for IRE_INPUT
with the IREM_TT modifier.
NOTE: In the unlikely case of
glare being detected on
Tip/Ring channels by touch-
tones being received before
dialing an outbound call, it
is possible for an application
to miss the first IRE_INPUT
event when an IRE_CALL_DONE
event with IREM_GLARE and
IREM_TT modifiers causes the
prior channel owner to call
irExecDefOwn. The digit
received will however be on
the input queue.
IRE_INPUT_DONE This event is maskable. This event occurs
when the specified input parameters are
satisfied. That is, input exists on the
input queue such that a delimiter character
has been received, a specified number of
characters have been received, or an input
timeout has occurred. Note that
IRE_INPUT_DONE may or may not be associated
with a IRE_INPUT event. If parameters are
modified such that the current state of the
input queue meets the conditions specified in
the parameters, a IRE_INPUT_DONE event is
generated by the next call to irWait(3IRAPI).
The tag field of the event structure has no
meaning for this event. Possible values for
event_mod1 include:
IREM_INPUT_LENGTH
This event modifier occurs
when the number of input char-
acters as specified in
IRP_INPUT_LEN has been
reached.
IREM_INPUT_DELIM
This event modifier occurs
when the input string delimit-
ing character string as speci-
fied in IRP_INPUT_DELIM1 and
IRP_INPUT_DELIM2 is received.
event_mod2 marks the position
in the input queue where the
delimiter matches the input.
IREM_TT_PRE This event modifier occurs
when the IRP_TT_PRETIME inter-
val elapses after issuing
irStartTTTimer(3IRAPI) and no
input is detected.
IREM_TT_INTER This event modifier occurs
when the IRP_TT_INTERTIME
interval elapses after the
most recent input is received.
IREM_RECOG For speech or dial pulse
recognition input: event_mod2
indicates the disposition of
the recognition, either
IREM_COMPLETE or IREM_ERROR.
If IREM_COMPLETE, event_mod3
contains the number of charac-
ters placed on the input queue
as a result of this event, and
event_mod4 indicates the
recognizer. If IREM_ERROR,
event_mod3 (and possibly
event_mod4) contains the error
codes for failure. [NOTE: The
error codes are shifted down
by one modifier from the loca-
tions described in
IrERRORS(4IRAPI).] When
recognition input is received,
the tag field of the event
structure contains the value
of the tag used with
irStartRecog(3IRAPI). Note
that receiving this event
automatically turns off the
recognizer.
IREM_RECOG_PRE This event modifier occurs
when the IRP_RECOG_PRETIME
interval elapses after issuing
irStartRecogTimer(3IRAPI) and
no input is detected.
IREM_RECOG_INT This event modifier occurs
when the IRP_RECOG_INTTIMER
interval elapses since the
most recent utterance or dial-
pulse has been detected.
Similar to IREM_RECOG,
event_mod2 indicates the
disposition of the recogni-
tion, either IREM_COMPLETE or
IREM_ERROR. If IREM_COMPLETE,
event_mod3 contains the number
of characters placed on the
input queue as a result of
this event, and event_mod4
indicates the recognizer. If
IREM_ERROR, event_mod3 (and
possibly event_mod4) contains
the error codes for failure.
IRE_INTERRUPT This event is non-maskable. This event indi-
cates that while a process was waiting in
irWait(3IRAPI), it was interrupted by a UNIX
signal or some other interrupt. This event
may be used by a process to alert the process
of an interrupt. For example, by setting
signals, a process may force an exit from
irWait(3IRAPI) at appropriate times. See
signal(2).
IRE_LOOP This event is maskable. This event occurs
when there is a change in loop current such
that the presence of loop current is
detected. This event, by default, is set to
IRF_IGNORE.
IRE_NETWORK_ERROR
This event is non-maskable. This event indi-
cates an error has been detected by the tele-
phone network or network interface card. In
most cases, the application should call
irDeinit to attempt to recover from the prob-
lem. Additional information about the error
can be found in event_mod2. When this error
occurs for a PRI channel, event_mod2 contains
the ISDN cause value or the SP PRI error
code. When this error occurs for an E1, T1,
LSE1, or LST1 channel, event_mod2 generally
contains the T1 driver error number. When
this error occurs for an ASAI channel,
event_mod2 contains IREM_HUNGUP when the ANI
or DNIS value has changed between the first
NEWCALL event and the attempt to answer the
call with irAnswer (this generally indicates
the first of two callers hung up before the
call was answered).
This event might be preceded by an
IRE_ANSWER_DONE, IRE_CALL_DONE,
IRE_CHAN_OOS_DONE, or IRE_DISCONNECT_DONE
with an event modifier of IREM_ERROR. If so,
the application may have already called
irDeinit(3IRAPI) by the time that this event
is received by the application. No harm is
expected if the application makes a redundant
call to irDeinit. This likely results in a
return of IRR_FAIL with irSysError set to
IRER_BADSTATE.
For PRI, the event_text field may contain the
message that reported the network error.
Advanced PRI applications may wish to parse
the message for additional information, but
most applications will not need to.
IRE_NEWCALL This event is non-maskable. This event indi-
cates a new call has come in on a channel.
An application that is exec-ed by the AD pro-
cess as a result of a new call sees this
event as the first message after doing
irInit. Most applications can safely ignore
this IRE_NEWCALL since the application is
probably written to answer the incoming call.
If the IRE_NEWCALL is received after discon-
necting from a call, the event indicates that
a second incoming call has arrived. Most
applications can deal with the second
IRE_NEWCALL by doing a irDeinit on the chan-
nel to allow AD to assign the call to the
proper application. If the irDeinit happens
automatically by other means, the second
IRE_NEWCALL can also be ignored.
For PRI, the event_text field will usually
contain the message that reported the incom-
ing call. Advanced PRI applications may wish
to parse the message for additional informa-
tion, but most applications will not need to.
IRE_NOLOOP This event is maskable. This event occurs
when there is a change in loop current such
that no loop current is detected.
IRE_NULL This event is non-maskable. No event has
occurred. The IRE_NULL event is generated
when irCheck(3IRAPI) is called with no event
queued.
IRE_PLAY_DONE This event is non-maskable. This event indi-
cates that play has completed. The amount of
time played is available from
irGetVCount(3IRAPI). Event_mod1 indicates
the reason for the play completion as fol-
lows:
IREM_COMPLETE The play request completed
successfully.
IREM_TALKOFF The play request was talked
off by caller input. If the
talkoff was due to an invalid
sequence number (see
irEndSeq(3IRAPI)), then
event_mod2 will be set to
IREM_SEQNO. Otherwise,
event_mod2 will be set to
IREM_NULL.
IREM_STOPPED The play request was stopped
via a software message such as
irStop.
IREM_NODATA The play request specified
contained no data. This event
modifier indicates that voice
file descriptor(s) were repo-
sitioned via irLSeek(3IRAPI)
to the end of the file(s).
IREM_ERROR The play request terminated
due to error. event_mod2 (and
possibly event_mod3) contain
error code values that may
help resolve the problem. See
IrERRORS(4IRAPI) for possible
values.
IREM_DENY The request was terminated due
to a timeout on waiting for
play resources. event_mod2
may contain additional infor-
mation about the reason for
the denial. IRER_RTU_BUSY
indicates that the necessary
Feature License did not become
available within the specified
timeout period.
IRER_RESOURCE_BUSY indicates
that the necessary resource
did not become available in
the specified timeout period
(but the Feature License was
available). IREM_NULL indi-
cates no further information
about why the resource was not
available.
IRE_PLAY_PROG This event is maskable. By default, this
event is set to IRF_IGNORE. When repeated
play functions [irPlay(3IRAPI),
irFPlay(3IRAPI), irBPlay(3IRAPI)] are queued,
a single IRE_PLAY_PROG event occurs when each
intermediate play is finished, except for the
last one. The last event generates an
IRE_PLAY_DONE. Access irGetVCount(3IRAPI) to
determine the time played after each inter-
mediate play completes.
IRE_PRI_MSG This event is maskable. This event reports
PRI messages that were not internally pro-
cessed by the IRAPI library (messages that
were internally processed are reported via
event_text for IRE_ANSWER_DONE, etc). Typi-
cally this event will be seen for PRI mes-
sages such as FACILITY, FAC_ACK, FAC_REJ,
REGISTER, etc. Most applications can safely
ignore this event. Advanced PRI applications
may need to deal with this event to handle
special signaling messages provided by the
switch.
IRE_RECOGNIZING
This event is maskable. This event informs
the application that a recognizer has deter-
mined it has valid input, but before the
recognition has completed. event_mod1 indi-
cates the recognizer. An application can,
for example, turn off all other recognizers
that may be running on the same input, and
allowing the recognizing recognizer to con-
tinue.
IRE_RECORD_BUF This event is non-maskable. This event
informs the application that a buffer of
recorded speech has been placed in the area
pointed to by buf, buf is provided from an
earlier call to irBRecord [see
irRecord(3IRAPI)]. event_mod1 contains the
number of bytes copied to the area pointed to
by buf. The event tag is set to the tag used
in the call to irBRecord.
IRE_RECORD_DONE
This event is non-maskable. This event indi-
cates that the requested voice record com-
pleted. The amount of time recorded is
available from irGetVCount(3IRAPI). The
event_mod1 modifiers are as follows:
IREM_COMPLETE The record request completed
due to recording count mil-
liseconds of speech where
count was specified via the
irRecord function.
IREM_TALKOFF The record request terminated
due to caller input.
IREM_STOPPED The record request stopped via
a software message resulting
from irStop.
IREM_SILENCE The record request terminated
due to silence detection.
IREM_ERROR The record request terminated
due to error. event_mod2 (and
possibly event_mod3) contain
error code values that may
help resolve the problem. See
IrERRORS(4IRAPI) for possible
values.
IREM_DENY The record request timed out
while waiting for record
resources. event_mod2 may
contain additional information
about the reason for the
denial. IRER_RTU_BUSY indi-
cates that the necessary
Feature License did not become
available within the specified
timeout period.
IRER_RESOURCE_BUSY indicates
that the necessary resource
did not become available in
the specified timeout period
(but the Feature License was
available). IREM_NULL indi-
cates no further information
about why the resource was not
available.
IRE_REPORT_DISK
This event is non-maskable. This event is
generated in response a call to
irSPDReportDisk(3IRAPI). For this event, cid
is not defined. Event_mod1 contains the
number of purchased logical blocks available,
event_mod2 contains the total number of pur-
chased logical blocks in the speech file-
system(s), and event_mod3 contains the number
of bytes in each block.
IRE_RESERVE_DISK
This event is non-maskable. This event is
generated in response to a call to
irSPDReserveDisk(3IRAPI). For this event,
cid is not defined. Event_mod1 indicates the
disposition of the request as follows:
IREM_COMPLETE The specified number of bytes
was successfully reserved.
The path-name of the file-
system where the specified
number of bytes was reserved
is indicated in event_text.
IREM_ERROR The request could not be
satisfied due to insufficient
space.
IRE_RESERVE_DONE
This event is non-maskable. This event indi-
cates that a irPhReserve has completed.
IREM_COMPLETE The request has been completed
successfully.
IREM_ERROR The request terminated due to
error. event_mod2 (and possi-
bly event_mod3) contain error
code values that may help
resolve the problem. See
IrERRORS(4IRAPI) for possible
values.
IRE_RETURN This event is non-maskable. This event
indicates that a irSubProg has completed.
IREM_COMPLETE The request has been completed
successfully. event_mod2 con-
tains a return code passed by
the called application through
the value argument of
irReturn(3IRAPI) . tag con-
tains the tag passed to irSub-
Prog.
IREM_ERROR The request terminated due to
error. event_mod2 (and possi-
bly event_mod3) contain error
code values that may help
resolve the problem. See
IrERRORS(4IRAPI) for possible
values.
IRE_RESOURCE_REMOVED
This event is maskable. This event occurs
when a explicitly reserved dynamic resource
is removed from a channel due to a mainte-
nance process. If the resource was currently
being used, the activity making use of it is
stopped automatically. event_mod1 contains
the resource capability and event_mod2 con-
tains the implementation. See
IrRESOURCES(4IRAPI).
This event does not occur when implicitly
allocated resources are removed by a mainte-
nance process. Instead, the application
should expect to receive the associated done
or stop event with event modifiers of
IREM_ERROR and IRER_RESOURCE_REMOVED. (for
example, see IRE_PLAY_DONE and
IRE_ECHO_STOP).
IRE_REVERSE This event is maskable. This event is
reserved for future use to indicate that
current reversal has been detected on a chan-
nel.
IRE_SAY_DONE This event is non-maskable. This event indi-
cates that the request for TTS was completed.
The same event_mod1 modifiers apply for
IRE_SAY_DONE as were used for IRE_PLAY_DONE.
The number of bytes played is available
irGetVCount(3IRAPI) ( for the IRD_SWTTS
implementation of the IRC_TTS resource only).
The vcount value is also available in
event_mod4.
IRE_SAY_PROG This event is maskable. By default, this
event is set to IRF_IGNORE. When repeated
text to speech functions [irSay(3IRAPI),
irFSay(3IRAPI), irBSay(3IRAPI)] are queued, a
single IRE_SAY_PROG event occurs when each
intermediate say is finished, except for the
last one. The last event generates an
IRE_SAY_DONE. Access irGetVCount(3IRAPI) to
determine the number of bytes played after
each intermediate say completes. The vcount
value is also available in event_mod4.
NOTE: This event is only applicable when using the IRD_SWTTS
implementation of the IRC_TTS resource (see
IrRESOURCES(4IRAPI)).
IRE_LANGID_DONE
This event is maskable. By default, this
event is set to IRF_NOTIFY. This event indi-
cates the request to identify a language via
irBGetLanguage(3IRAPI) or
irFGetLanguage(3IRAPI) completed. The
event_mod1 modifiers are as follows:
IREM_COMPLETE The language identification
request completed success-
fully. Event_mod2 is the
recognized language and sub-
language of the text contained
in the buffer or file. The
values will be valid Microsoft
Speech API 4.0 language iden-
tifiers. Currently, the Ler-
nout & Hauspie language recog-
nizer will only detect sub-
languages in written text for
German (Standard or Swiss) and
Portuguese (Standard and Bra-
zilian). The language and
sub-language are encoded as
follows:
Bits 0 to 9 - language as identified in the
SAPI 4.0 specification and as supported by
the Lernout & Hauspie Language Recognition
engine.
unknown 0x00
Afrikaans 0x36
Albanian 0x1c
Arabic 0x01
Basque 0x2d
Bulgarian 0x02
Catalan 0x03
Chinese 0x04
Croatian 0x1a
Czech 0x05
Danish 0x06
Dutch 0x13
English 0x09
Estonian 0x25
Finnish 0x0b
French 0x0c
German 0x07
Greek 0x08
Hebrew 0x0d
Hungarian 0x0e
Illegal name 0x1a
Italian 0x10
Japanese 0x11
Korean 0x12
Lithuanian 0x27
Malaysian 0x3e
Polish 0x15
Portuguese 0x16
Rumanian 0x18
Russian 0x19
Spanish 0x0a
Swedish 0x1d
Thai 0x1e
Turkish 0x1f
Vietnamese 0x2a
Bits 10 to 15 - sub-language
For German:
standard 0x0400
Swiss 0x0800
For Portuguese:
European 0x0800
Brazilian 0x0400
Event_mod3 indicates the character code for
the given file or buffer of text. Character
code is a platform-specific encoding of a
character set, such as a certain
platform/code page. For example, MS-DOS code
page 437, MS-DOS code page 850, and MS Win-
dows code page 1252 have their own unique
character codes for many ISO Latin-1 charac-
ters.
Value Character Code
0 - 9 Illegal
10 Macintosh
11 MS-DOS, primary
code page
12 MS-DOS, secon-
dary code page
13 3MS-Windows
14 ISO
15 Illegal
16 KOI-8-r (??)
Event_mod4 indicates the character set for
the given file or buffer of text. Character
set is a platform-independent encoding
scheme; for example, ISO Latin-1, Unicode, or
Shift-JIS.
Value Character Set
0-1 Illegal
2 Shift JIS
3 Unicode
4 EUCF
5 EUCP
6 JIS
7 Big Five (Trad-
itional
Chinese)
8 GB-2312-80
(Simplified
Chinese)
9 KS C 5601-1992
(Korean)
10-15 Illegal
16 ISO 8859 - 1
17 ISO 8859 - 2
18 ISO 8859 - 3
19 ISO 8859 - 4
20 ISO 8859 - 5
21 ISO 8859 - 6
22 ISO 8859 - 7
23 ISO 8859 - 8
24 ISO 8859 - 9
25 Vietnamese IR
180
26-30 Illegal
31 Thai IR 166
32 Vietnamese VIQR
IREM_ERROR The language identification
request failed. event_mod2
and event_mod3 may contain
additional information about
the reason for the failure.
NOTE: This event is applicable only when using the IRD_SWTTS
implementation of the IRC_TTS resource (see
IrRESOURCES(4IRAPI)).
IRE_SOFTDISC The default event mask for this event is
IRF_DEINIT. The channel cid will automati-
cally be released (irDeinit(3IRAPI)) when
this event is received unless the default
event mask is changed. This event is gen-
erated by another process using the
irInterrupt(3IRAPI) function and generally
indicates that the application should ter-
minate and irDeinit(3IRAPI) the channel.
event_mod1 through event_mod3 are set to the
arg1 through arg3 arguments to
irInterrupt(3IRAPI), respectively.
Note: When this event is sent to TSM, it gen-
erates a ESOFTDISC event (see event()
instruction) for the script application.
IRE_SOFTINT The default event mask for this event is
IRF_IGNORE. The event will be ignored unless
the default mask is reset. This event is
generated by another process using the
irInterrupt(3IRAPI) function. event_mod1
through event_mod3 are set to the arg1
through arg3 arguments to
irInterrupt(3IRAPI), respectively.
Note: When this event is sent to TSM, it gen-
erates a EDIPINT event (see event() instruc-
tion) for the script application.
IRE_TS_DONE This event is non-maskable. This event indi-
cates an activity on a time slot initiated
via irTSEnd(3IRAPI)completed. event_mod1
contains the time slot for which the activity
was started. event_text points to an event
structure (ir_event_t) containing the
IRE_<activity>_DONE event. For example, if
voice play was started via irTSEnd,
event_text points to an ir_event_t structure
containing a IRE_PLAY_DONE event and all of
its associated modifiers.
IRE_WINK This event is maskable. Occurs when a wink
is detected on a channel. This generally
indicates that the network has disconnected
an active call on a T/R channel.
IRE_USER[1-5] These events are maskable. These events are,
by default, set to IRF_IGNORE and may be used
for future extensibility.
CAVEATS
The IREM_USER1 and IREM_USER2 event modifiers to
IRE_CALL_PROG are used for customized tones, and may not be
supported by both Intuity and Intuity Conversant. The
mechanism for recognizing these customized tones is beyond
the scope of IRAPI. These event modifiers provide a hook
for IRAPI to be able to report the detection of them, once
recognized.
IREM_USER3, IREM_USER4 or IREM_USER5 may be used for future
extensibility.
SEE ALSO
IrERRORS(4IRAPI)
VERSION
This is version 3/14/01 of this man page.