sipXtapi event declarations More...
#include "sipXtapi.h"
Go to the source code of this file.
Classes | |
struct | SIPX_KEEPALIVE_INFO |
Keepalive event information structure. More... | |
struct | SIPX_MEDIA_INFO |
Media event information structure. More... | |
struct | SIPX_CALLSTATE_INFO |
Callstate event information structure. More... | |
struct | SIPX_LINESTATE_INFO |
Linestate event information structure. More... | |
struct | SIPX_INFOSTATUS_INFO |
An INFOSTATUS event informs that application layer of the status of an outbound INFO requests. More... | |
struct | SIPX_INFO_INFO |
An INFO event signals the application layer that an INFO message was sent to this user agent. More... | |
struct | SIPX_SUBSTATUS_INFO |
An SUBSTATUS event informs that application layer of the status of an outbound SUBSCRIPTION requests;. More... | |
struct | SIPX_NOTIFY_INFO |
A NOTIFY_INFO event signifies that a NOTIFY message was received for an active subscription. More... | |
struct | SIPX_CONFIG_INFO |
SIPX_CONFIG_INFO events signifies that a change in configuration was observed. More... | |
struct | SIPX_SECURITY_INFO |
An SIPX_SECURITY_INFO event informs that application layer of the status of a security operation. More... | |
Macros | |
#define | VALID_SIPX_EVENT_CATEGORY(x) (((x) >= EVENT_CATEGORY_CALLSTATE) && ((x) <= EVENT_CATEGORY_KEEPALIVE)) |
VALID_SIPX_EVENT_CATEGORY utility macro to validate if an event category is valid (within expected range). More... | |
Typedefs | |
typedef enum SIPX_EVENT_CATEGORY | SIPX_EVENT_CATEGORY |
Enum with all of the possible event types. More... | |
typedef bool(SIPX_CALLING_CONVENTION * | SIPX_EVENT_CALLBACK_PROC) (SIPX_EVENT_CATEGORY category, void *pInfo, void *pUserData) |
Signature for event callback/observer. More... | |
typedef enum SIPX_CALLSTATE_EVENT | SIPX_CALLSTATE_EVENT |
Major call state events identify significant changes in the state of a call. More... | |
typedef enum SIPX_CALLSTATE_CAUSE | SIPX_CALLSTATE_CAUSE |
Callstate cause events identify the reason for a Callstate event or provide more detail. More... | |
typedef enum SIPX_LINESTATE_EVENT | SIPX_LINESTATE_EVENT |
Enumeration of possible linestate Events. More... | |
typedef enum SIPX_LINESTATE_CAUSE | SIPX_LINESTATE_CAUSE |
Enumeration of possible linestate Event causes. More... | |
typedef enum SIPX_SECURITY_EVENT | SIPX_SECURITY_EVENT |
Enumeration of possible security events. More... | |
typedef enum SIPX_SECURITY_CAUSE | SIPX_SECURITY_CAUSE |
Enumeration of possible security causes. More... | |
typedef enum SIPX_MEDIA_EVENT | SIPX_MEDIA_EVENT |
Enumeration of possible media events. More... | |
typedef enum SIPX_KEEPALIVE_EVENT | SIPX_KEEPALIVE_EVENT |
Enumeration of possible KEEPALIVE events (EVENT_CATEGORY_KEEPALIVE) More... | |
typedef enum SIPX_KEEPALIVE_CAUSE | SIPX_KEEPALIVE_CAUSE |
Enumeration of possible KEEPALIVE cause codes (EVENT_CATEGORY_KEEPALIVE) More... | |
typedef struct SIPX_KEEPALIVE_INFO | SIPX_KEEPALIVE_INFO |
Keepalive event information structure. More... | |
typedef enum SIPX_MEDIA_CAUSE | SIPX_MEDIA_CAUSE |
Enumeration of possible media event causes. More... | |
typedef enum SIPX_MEDIA_TYPE | SIPX_MEDIA_TYPE |
Enumeration of possible media event types. More... | |
typedef struct SIPX_MEDIA_INFO | SIPX_MEDIA_INFO |
Media event information structure. More... | |
typedef struct SIPX_CALLSTATE_INFO | SIPX_CALLSTATE_INFO |
Callstate event information structure. More... | |
typedef enum SIPX_MESSAGE_STATUS | SIPX_MESSAGE_STATUS |
Major classifications of response statuses for a SIP message. More... | |
typedef struct SIPX_INFOSTATUS_INFO | SIPX_INFOSTATUS_INFO |
An INFOSTATUS event informs that application layer of the status of an outbound INFO requests. More... | |
typedef struct SIPX_INFO_INFO | SIPX_INFO_INFO |
An INFO event signals the application layer that an INFO message was sent to this user agent. More... | |
typedef enum SIPX_SUBSCRIPTION_STATE | SIPX_SUBSCRIPTION_STATE |
Enumeration of the possible subscription states visible to the client. More... | |
typedef enum SIPX_SUBSCRIPTION_CAUSE | SIPX_SUBSCRIPTION_CAUSE |
Enumeration of cause codes for state subscription state changes. More... | |
typedef struct SIPX_SUBSTATUS_INFO | SIPX_SUBSTATUS_INFO |
An SUBSTATUS event informs that application layer of the status of an outbound SUBSCRIPTION requests;. More... | |
typedef struct SIPX_NOTIFY_INFO | SIPX_NOTIFY_INFO |
A NOTIFY_INFO event signifies that a NOTIFY message was received for an active subscription. More... | |
typedef struct SIPX_CONFIG_INFO | SIPX_CONFIG_INFO |
SIPX_CONFIG_INFO events signifies that a change in configuration was observed. More... | |
typedef struct SIPX_SECURITY_INFO | SIPX_SECURITY_INFO |
An SIPX_SECURITY_INFO event informs that application layer of the status of a security operation. More... | |
Functions | |
SIPXTAPI_API SIPX_RESULT | sipxDuplicateEvent (SIPX_EVENT_CATEGORY category, const void *pEventSource, void **pEventCopy) |
Duplicate the event information for a sipXtapi event. More... | |
SIPXTAPI_API SIPX_RESULT | sipxFreeDuplicatedEvent (SIPX_EVENT_CATEGORY category, void *pEventCopy) |
Frees up memory allocated as part of sipxDuplicateEvent. More... | |
SIPXTAPI_API SIPX_RESULT | sipxEventListenerAdd (const SIPX_INST hInst, SIPX_EVENT_CALLBACK_PROC pCallbackProc, void *pUserData) |
Add a callback/observer for the purpose of receiving sipXtapi events. More... | |
SIPXTAPI_API SIPX_RESULT | sipxEventListenerRemove (const SIPX_INST hInst, SIPX_EVENT_CALLBACK_PROC pCallbackProc, void *pUserData) |
Remove a sipXtapi event callback/observer. More... | |
SIPXTAPI_API char * | sipxCallEventToString (SIPX_CALLSTATE_EVENT event, SIPX_CALLSTATE_CAUSE cause, char *szBuffer, size_t nBuffer) |
Create a printable string version of the designated call state event ids. More... | |
SIPXTAPI_API char * | sipxEventToString (const SIPX_EVENT_CATEGORY category, const void *pEvent, char *szBuffer, size_t nBuffer) |
Create a printable string version of the designated event. More... | |
SIPXTAPI_API char * | sipxLineEventToString (SIPX_LINESTATE_EVENT event, SIPX_LINESTATE_CAUSE cause, char *szBuffer, size_t nBuffer) |
Create a printable string version of the designated line event ids. More... | |
SIPXTAPI_API char * | sipxConfigEventToString (SIPX_CONFIG_EVENT event, char *szBuffer, size_t nBuffer) |
Create a printable string version of the designated config event. More... | |
SIPXTAPI_API char * | sipxSubStatusStateToString (SIPX_SUBSCRIPTION_STATE state, char *szBuffer, size_t nBuffer) |
Create a printable string version of the designated subscription status state. More... | |
SIPXTAPI_API char * | sipxSubStatusCauseToString (SIPX_SUBSCRIPTION_CAUSE cause, char *szBuffer, size_t nBuffer) |
Create a printable string version of the designated subscription status cause. More... | |
SIPXTAPI_API char * | sipxSecurityEventToString (SIPX_SECURITY_EVENT event, char *szBuffer, size_t nBuffer) |
Create a printable string version of the designated security event. More... | |
SIPXTAPI_API char * | sipxSecurityCauseToString (SIPX_SECURITY_CAUSE cause, char *szBuffer, size_t nBuffer) |
Create a printable string version of the designated security cause. More... | |
SIPXTAPI_API char * | sipxMediaEventToString (SIPX_MEDIA_EVENT event, char *szBuffer, size_t nBuffer) |
Create a printable string version of the designated media event. More... | |
SIPXTAPI_API char * | sipxMediaCauseToString (SIPX_MEDIA_CAUSE cause, char *szBuffer, size_t nBuffer) |
Create a printable string version of the designated media cause. More... | |
SIPXTAPI_API char * | sipxKeepaliveEventToString (SIPX_KEEPALIVE_EVENT event, char *szBuffer, size_t nBuffer) |
Create a printable string version of the designated keepalive event. More... | |
SIPXTAPI_API char * | sipxKeepaliveCauseToString (SIPX_KEEPALIVE_CAUSE cause, char *szBuffer, size_t nBuffer) |
Create a printable string version of the designated keepalive cause. More... | |
sipXtapi event declarations
The sipXtapiEvents.h header file defines all of the events fired as part of sipXtapi. Event categories include call state events, line state events, SIP info events, SIP subscription events, configuration events, security events, media events, and keepalive events.
Each event notification is comprised of a event type and a cause code. The event type identifies a state transition (e.g. from call connected to call disconnected. The cause identifies the reason for the change (e.g. someone hung up).
#define VALID_SIPX_EVENT_CATEGORY | ( | x | ) | (((x) >= EVENT_CATEGORY_CALLSTATE) && ((x) <= EVENT_CATEGORY_KEEPALIVE)) |
VALID_SIPX_EVENT_CATEGORY utility macro to validate if an event category is valid (within expected range).
typedef enum SIPX_CALLSTATE_CAUSE SIPX_CALLSTATE_CAUSE |
Callstate cause events identify the reason for a Callstate event or provide more detail.
typedef enum SIPX_CALLSTATE_EVENT SIPX_CALLSTATE_EVENT |
Major call state events identify significant changes in the state of a call.
Below you will find state diagrams that show the typical event transitions for both outbound and inbound calls.
Figure 1: Event flows for an inbound call (received call)
Figure 2: Event flows for an outbound call (placed call)
typedef struct SIPX_CALLSTATE_INFO SIPX_CALLSTATE_INFO |
Callstate event information structure.
This information is passed as part of the sipXtapi callback mechanism. Based on the SIPX_EVENT_CATEGORY, the application developer should cast the pInfo member of your callback to the appropriate structure.
typedef struct SIPX_CONFIG_INFO SIPX_CONFIG_INFO |
SIPX_CONFIG_INFO events signifies that a change in configuration was observed.
NOTE: This structure is subject to change.
This information is passed as part of the sipXtapi callback mechanism. Based on the SIPX_EVENT_CATEGORY, the application developer should cast the pInfo member of your callback to the appropriate structure.
typedef bool(SIPX_CALLING_CONVENTION * SIPX_EVENT_CALLBACK_PROC) (SIPX_EVENT_CATEGORY category, void *pInfo, void *pUserData) |
Signature for event callback/observer.
Application developers should not block this event callback thread – You should re-post these events to your own thread context for handling if you require blocking and/or heavy prorcessing. The sipxDuplicateEvent and sipxFreeDuplicatedEvent methods are available to copy the event callback data (The data is only available for the duration of the callback). For example, upon receiving the callback, copy the data using sipxDuplicateEvent(...), post the copied data to your event callback, process it, and lastly free the event data using sipxFreeDuplicatedEvent(...).
The application developer must look at the SIPX_EVENT_CATEGORY and then cast the pInfo method to the appropriate structure:
EVENT_CATEGORY_CALLSTATE: pCallInfo = (SIPX_CALLSTATE_INFO*) pInfo ; EVENT_CATEGORY_LINESTATE: pLineInfo = (SIPX_LINESTATE_INFO*) pInfo ; EVENT_CATEGORY_INFO_STATUS: pInfoStatus = (SIPX_INFOSTATUS_INFO*) pInfo ; EVENT_CATEGORY_INFO: pInfoInfo = (SIPX_INFO_INFO*) pInfo ; EVENT_CATEGORY_SUB_STATUS: pSubInfo = (SIPX_SUBSTATUS_INFO*) pInfo ; EVENT_CATEGORY_NOTIFY: pNotifyInfo = (SIPX_NOTIFY_INFO*) pInfo ; EVENT_CATEGORY_CONFIG: pConfigInfo - (SIPX_CONFIG_INFO*) pInfo ; EVENT_CATEGORY_SECURITY: pSecInfo = (SIPX_SECURITY_INFO*) pInfo ; EVENT_CATEGORY_MEDIA: pMediaInfo = (SIPX_MEDIA_INFO*) pInfo ;
Please see the SIPX_EVENT_CATEGORY and structure definitions for details.
category | The category of the event (call, line, subscription, notify, etc.). |
pInfo | Pointer to the event info structure. Depending on the event type, the application layer needs to cast this parameter to the appropriate structure. |
pUserData | User data provided when listener was added |
typedef enum SIPX_EVENT_CATEGORY SIPX_EVENT_CATEGORY |
Enum with all of the possible event types.
typedef struct SIPX_INFO_INFO SIPX_INFO_INFO |
An INFO event signals the application layer that an INFO message was sent to this user agent.
If the INFO message was sent to a call context (session) hCall will desiginate the call session.
This information is passed as part of the sipXtapi callback mechanism. Based on the SIPX_EVENT_CATEGORY, the application developer should cast the pInfo member of your callback to the appropriate structure.
typedef struct SIPX_INFOSTATUS_INFO SIPX_INFOSTATUS_INFO |
An INFOSTATUS event informs that application layer of the status of an outbound INFO requests.
This information is passed as part of the sipXtapi callback mechanism. Based on the SIPX_EVENT_CATEGORY, the application developer should cast the pInfo member of your callback to the appropriate structure.
typedef enum SIPX_KEEPALIVE_CAUSE SIPX_KEEPALIVE_CAUSE |
Enumeration of possible KEEPALIVE cause codes (EVENT_CATEGORY_KEEPALIVE)
typedef enum SIPX_KEEPALIVE_EVENT SIPX_KEEPALIVE_EVENT |
Enumeration of possible KEEPALIVE events (EVENT_CATEGORY_KEEPALIVE)
typedef struct SIPX_KEEPALIVE_INFO SIPX_KEEPALIVE_INFO |
Keepalive event information structure.
This information is passed as part of the sipXtapi callback mechanism. Based on the SIPX_KEEPALIVE_CATEGORY, the application developer should cast the pInfo member of your callback to the appropriate structure.
typedef enum SIPX_LINESTATE_CAUSE SIPX_LINESTATE_CAUSE |
Enumeration of possible linestate Event causes.
typedef enum SIPX_LINESTATE_EVENT SIPX_LINESTATE_EVENT |
Enumeration of possible linestate Events.
typedef enum SIPX_MEDIA_CAUSE SIPX_MEDIA_CAUSE |
Enumeration of possible media event causes.
typedef enum SIPX_MEDIA_EVENT SIPX_MEDIA_EVENT |
Enumeration of possible media events.
typedef struct SIPX_MEDIA_INFO SIPX_MEDIA_INFO |
Media event information structure.
This information is passed as part of the sipXtapi callback mechanism. Based on the SIPX_EVENT_CATEGORY, the application developer should cast the pInfo member of your callback to the appropriate structure.
typedef enum SIPX_MEDIA_TYPE SIPX_MEDIA_TYPE |
Enumeration of possible media event types.
Today, MEDIA_TYPE_AUDIO and MEDIA_TYPE_VIDEO are supported.
typedef enum SIPX_MESSAGE_STATUS SIPX_MESSAGE_STATUS |
Major classifications of response statuses for a SIP message.
typedef struct SIPX_NOTIFY_INFO SIPX_NOTIFY_INFO |
A NOTIFY_INFO event signifies that a NOTIFY message was received for an active subscription.
This information is passed as part of the sipXtapi callback mechanism. Based on the SIPX_EVENT_CATEGORY, the application developer should cast the pInfo member of your callback to the appropriate structure.
typedef enum SIPX_SECURITY_CAUSE SIPX_SECURITY_CAUSE |
Enumeration of possible security causes.
typedef enum SIPX_SECURITY_EVENT SIPX_SECURITY_EVENT |
Enumeration of possible security events.
typedef struct SIPX_SECURITY_INFO SIPX_SECURITY_INFO |
An SIPX_SECURITY_INFO event informs that application layer of the status of a security operation.
This information is passed as part of the sipXtapi callback mechanism. Based on the SIPX_EVENT_CATEGORY, the application developer should cast the pInfo member of your callback to the appropriate structure.
typedef enum SIPX_SUBSCRIPTION_CAUSE SIPX_SUBSCRIPTION_CAUSE |
Enumeration of cause codes for state subscription state changes.
typedef enum SIPX_SUBSCRIPTION_STATE SIPX_SUBSCRIPTION_STATE |
Enumeration of the possible subscription states visible to the client.
typedef struct SIPX_SUBSTATUS_INFO SIPX_SUBSTATUS_INFO |
An SUBSTATUS event informs that application layer of the status of an outbound SUBSCRIPTION requests;.
This information is passed as part of the sipXtapi callback mechanism. Based on the SIPX_EVENT_CATEGORY, the application developer should cast the pInfo member of your callback to the appropriate structure.
enum SIPX_CALLSTATE_CAUSE |
Callstate cause events identify the reason for a Callstate event or provide more detail.
enum SIPX_CALLSTATE_EVENT |
Major call state events identify significant changes in the state of a call.
Below you will find state diagrams that show the typical event transitions for both outbound and inbound calls.
Figure 1: Event flows for an inbound call (received call)
Figure 2: Event flows for an outbound call (placed call)
Enumerator | |
---|---|
CALLSTATE_UNKNOWN |
An UNKNOWN event is generated when the state for a call is no longer known. This is generally an error condition; see the minor event for specific causes. |
CALLSTATE_NEWCALL |
The NEWCALL event indicates that a new call has been created automatically by the sipXtapi. This event is most frequently generated in response to an inbound call request. |
CALLSTATE_DIALTONE |
The DIALTONE event indicates that a new call has been created for the purpose of placing an outbound call. The application layer should determine if it needs to simulate dial tone for the end user. |
CALLSTATE_REMOTE_OFFERING |
The REMOTE_OFFERING event indicates that a call setup invitation has been sent to the remote party. The invitation may or may not every receive a response. If a response is not received in a timely manor, sipXtapi will move the call into a disconnected state. If calling another sipXtapi user agent, the reciprocal state is OFFER. |
CALLSTATE_REMOTE_ALERTING |
The REMOTE_ALERTING event indicates that a call setup invitation has been accepted and the end user is in the alerting state (ringing). Depending on the SIP configuration, end points, and proxy servers involved, this event should only last for 3 minutes. Afterwards, the state will automatically move to DISCONNECTED. If calling another sipXtapi user agent, the reciprocate state is ALERTING. Pay attention to the cause code for this event. If the cause code is "CALLSTATE_CAUSE_EARLY_MEDIA", the remote the party is sending early media (e.g. gateway is producing ringback or audio feedback). In this case, the user agent should not produce local ringback. |
CALLSTATE_CONNECTED |
The CONNECTED state indicates that call has been setup between the local and remote party. Network audio should be flowing provided and the microphone and speakers should be engaged. |
CALLSTATE_BRIDGED | |
CALLSTATE_HELD |
The BRIDGED state indicates that a call is active, however, the local microphone/speaker are not engaged. If this call is part of a conference, the party will be able to talk with other BRIDGED conference parties. Application developers can still play and record media. |
CALLSTATE_REMOTE_HELD |
The HELD state indicates that a call is both locally and remotely held. No network audio is flowing and the local microphone and speaker are not engaged. |
CALLSTATE_DISCONNECTED |
The REMOTE_HELD state indicates that the remote party is on hold. Locally, the microphone and speaker are still engaged, however, no network audio is flowing. The DISCONNECTED state indicates that a call was disconnected or failed to connect. A call may move into the DISCONNECTED states from almost every other state. Please review the DISCONNECTED minor events to understand the cause. |
CALLSTATE_OFFERING |
An OFFERING state indicates that a new call invitation has been extended this user agent. Application developers should invoke sipxCallAccept(), sipxCallReject() or sipxCallRedirect() in response. Not responding will result in an implicit call sipXcallReject(). |
CALLSTATE_ALERTING |
An ALERTING state indicates that an inbound call has been accepted and the application layer should alert the end user. The alerting state is limited to 3 minutes in most configurations; afterwards the call will be canceled. Applications will generally play some sort of ringing tone in response to this event. |
CALLSTATE_DESTROYED |
The DESTORYED event indicates the underlying resources have been removed for a call. This is the last event that the application will receive for any call. The call handle is invalid after this event is received. |
CALLSTATE_TRANSFER_EVENT |
The transfer state indicates a state change in a transfer attempt. Please see the CALLSTATE_TRANSFER_EVENT cause codes for details on each state transition |
enum SIPX_CONFIG_EVENT |
Enumeration of possible configuration events.
Enumerator | |
---|---|
CONFIG_UNKNOWN |
Unknown configuration event. |
CONFIG_STUN_SUCCESS |
A STUN binding has been obtained for signaling purposes. For a SIPX_CONFIG_EVENT type of CONFIG_STUN_SUCCESS, the pData pointer of the info structure will point to a SIPX_CONTACT_ADDRESS structure. |
CONFIG_STUN_FAILURE |
Unable to obtain a STUN binding for signaling purposes. |
enum SIPX_EVENT_CATEGORY |
Enum with all of the possible event types.
Enumerator | |
---|---|
EVENT_CATEGORY_CALLSTATE |
CALLSTATE events signify a change in state of a call. States range from the notification of a new call to ringing to connection established to changes in audio state (starting sending, stop sending) to termination of a call. |
EVENT_CATEGORY_LINESTATE |
LINESTATE events indicate changes in the status of a line appearance. Lines identify inbound and outbound identities and can be either provisioned (hardcoded) or configured to automatically register with a registrar. Lines also encapsulate the authentication criteria needed for dynamic registrations. |
EVENT_CATEGORY_INFO_STATUS |
INFO_STATUS events are sent when the application requests sipXtapi to send an INFO message to another user agent. The status event includes the response for the INFO method. Application developers should look at this event to determine the outcome of the INFO message. |
EVENT_CATEGORY_INFO |
INFO events are sent to the application whenever an INFO message is received by the sipXtapi user agent. INFO messages are sent to a specific call. sipXtapi will automatically acknowledges the INFO message at the protocol layer. |
EVENT_CATEGORY_SUB_STATUS |
SUB_STATUS events are sent to the application layer for information on the subscription state (e.g. OK, Expired). |
EVENT_CATEGORY_NOTIFY |
NOTIFY evens are send to the application layer after a remote publisher has sent data to the application. The application layer can retrieve the data from this event. |
EVENT_CATEGORY_CONFIG |
CONFIG events signify changes in configuration. For example, when requesting STUN support, a notification is sent with the STUN outcome (either SUCCESS or FAILURE) |
EVENT_CATEGORY_SECURITY |
SECURITY events signify occurences in call security processing. These events are only sent when using S/MIME or TLS. |
EVENT_CATEGORY_MEDIA |
MEDIA events signify changes in the audio state for sipXtapi or a particular call. |
EVENT_CATEGORY_KEEPALIVE |
KEEPALIVE events signal when a keepalive is started/stopped/fails. A feedback event will report back your NAT-mapped IP address in some cases.
|
Enumeration of possible INFO status events.
enum SIPX_KEEPALIVE_CAUSE |
enum SIPX_KEEPALIVE_EVENT |
Enumeration of possible KEEPALIVE events (EVENT_CATEGORY_KEEPALIVE)
enum SIPX_LINESTATE_CAUSE |
Enumeration of possible linestate Event causes.
enum SIPX_LINESTATE_EVENT |
Enumeration of possible linestate Events.
enum SIPX_MEDIA_CAUSE |
Enumeration of possible media event causes.
enum SIPX_MEDIA_EVENT |
Enumeration of possible media events.
Enumerator | |
---|---|
MEDIA_UNKNOWN |
Unknown or undefined media event, this is generally the sign of an internal error in sipXtapi. |
MEDIA_LOCAL_START |
Local media (audio or video) is being sent to the remote party. |
MEDIA_LOCAL_STOP |
Local media (audio or video) is no longer being sent to the remote party. This may be caused by a local/remote hold operation, call tear down, or error. See the SIPX_MEDIA_CAUSE enumeration for more information. |
MEDIA_REMOTE_START |
Remote media (audio or video) is ready to be received. If no audio/video is received for longer then the idle period, a MEDIA_REMOTE_SILENT event will be fired. See sipxConfigSetConnectionIdleTimeout. |
MEDIA_REMOTE_STOP |
Remote media (audio or video) has been stopped due to a hold or call tear down. |
MEDIA_REMOTE_SILENT |
Remote media has not been received for some configured period. This generally indicates a network problem and/or a problem with the remote party. See sipxConfigSetConnectionIdleTimeout for more information. |
MEDIA_PLAYFILE_START |
A file is being played to local and/or remote parties. This event will be followed by a MEDIA_PLAYFILE_STOP when the file is manually stopped or finished playing. |
MEDIA_PLAYFILE_FINISH |
A file has completed playing. You need to call sipxCallAudioPlayFileStop() or sipxConferencePlayAudioFileStop() to prepare for the next file playback. |
MEDIA_PLAYFILE_STOP |
A file playback has been stopped. |
MEDIA_PLAYBUFFER_START |
A buffer is being played to local and/or remote parties. This event will be followed by a MEDIA_PLAYBUFFER_STOP when the file is manually stopped or finished playing. |
MEDIA_PLAYBUFFER_FINISH |
A buffer has completed playing. You need to call sipxCallPlayBufferStop() to prepare for the next buffer playback. |
MEDIA_PLAYBUFFER_STOP |
A buffer playback has been stopped. |
MEDIA_RECORDFILE_START |
Recording to a file has started. This event will be followed by a MEDIA_RECORDFILE_STOP when the recording is manually stopped or or finished after specified amount of time. |
MEDIA_RECORD_PAUSE |
Recording to file or buffer paused after being in the MEDIA_RECORDFILE_START or MEDIA_RECORDBUFFER_START state. |
MEDIA_RECORD_RESUME |
Recording to file or buffer resumed after being in the MEDIA_RECORD_PAUSE state. |
MEDIA_RECORDFILE_STOP |
A recording has been manually stopped, automatically finished or aborted because of an error. |
MEDIA_RECORDBUFFER_START |
Recording to a buffer has started. This event will be followed by a MEDIA_RECORDBUFFER_STOP when the recording is manually stopped or or finished after specified amount of time. |
MEDIA_RECORDBUFFER_STOP |
A recording has been manually stopped, automatically finished or aborted because of an error. |
MEDIA_REMOTE_DTMF |
A dtmf tone was started/stopped, see the cause codes for exact status. |
MEDIA_DEVICE_FAILURE |
Fired if the media device is not present or already in use. |
MEDIA_REMOTE_ACTIVE |
Media has been received. |
MEDIA_MIC_ENERGY_LEVEL |
Mic energy level - value in idleTime. |
MEDIA_SPEAKER_ENERGY_LEVEL |
Speaker energy level - value in idleTime. |
MEDIA_RTP_ENERGY_LEVEL |
Incoming RTP stream energy level - value in idelTime. |
MEDIA_H264_SPS |
H.264 SPS parameter set recieved. |
MEDIA_H264_PPS |
H.264 PPS parameter set recieved. |
MEDIA_INPUT_DEVICE_NOT_PRESENT |
Fired when an input media device used is no longer present. This can accure when the device is unplugged or no longer to the OS. |
MEDIA_OUTPUT_DEVICE_NOT_PRESENT |
Fired when an output media device used is no longer present. This can accure when the device is unplugged or no longer to the OS. |
MEDIA_INPUT_DEVICE_NOW_PRESENT |
Fired when an input media device is now present/available. This can accure when the device is plugged or enabled by the OS. |
MEDIA_OUTPUT_DEVICE_NOW_PRESENT |
Fired when an output media device is now present/available. This can accure when the device is plugged or enabled by the OS. |
enum SIPX_MEDIA_TYPE |
enum SIPX_MESSAGE_STATUS |
Major classifications of response statuses for a SIP message.
enum SIPX_SECURITY_CAUSE |
Enumeration of possible security causes.
enum SIPX_SECURITY_EVENT |
Enumeration of possible security events.
Enumeration of the possible subscription states visible to the client.
SIPXTAPI_API char* sipxCallEventToString | ( | SIPX_CALLSTATE_EVENT | event, |
SIPX_CALLSTATE_CAUSE | cause, | ||
char * | szBuffer, | ||
size_t | nBuffer | ||
) |
Create a printable string version of the designated call state event ids.
This is generally used for debugging.
event | sipxtapi event code |
cause | sipxtapi cause event code |
szBuffer | buffer to store event string |
nBuffer | length of string buffer szBuffer |
SIPXTAPI_API char* sipxConfigEventToString | ( | SIPX_CONFIG_EVENT | event, |
char * | szBuffer, | ||
size_t | nBuffer | ||
) |
Create a printable string version of the designated config event.
This is generally used for debugging.
event | Configuration event id |
szBuffer | Buffer to store event string |
nBuffer | Length of string buffer szBuffer |
SIPXTAPI_API SIPX_RESULT sipxDuplicateEvent | ( | SIPX_EVENT_CATEGORY | category, |
const void * | pEventSource, | ||
void ** | pEventCopy | ||
) |
Duplicate the event information for a sipXtapi event.
This method is only needed if you wish to post the event information to another thread context. Once the event has been handled, you must call sipxFreeDuplicatedEvent on the copy to avoid memory leaks.
category | Category type supplied by the sipXtapi event callback. |
pEventSource | Source of event data supplied by the sipXtapi event callback. |
pEventCopy | New copy of the event data. This data must be freed by calling sipxFreeDuplicatedEvent. |
SIPXTAPI_API SIPX_RESULT sipxEventListenerAdd | ( | const SIPX_INST | hInst, |
SIPX_EVENT_CALLBACK_PROC | pCallbackProc, | ||
void * | pUserData | ||
) |
Add a callback/observer for the purpose of receiving sipXtapi events.
hInst | Instance pointer obtained by sipxInitialize. |
pCallbackProc | Function to receive sipx events |
pUserData | user data passed along with event data |
SIPXTAPI_API SIPX_RESULT sipxEventListenerRemove | ( | const SIPX_INST | hInst, |
SIPX_EVENT_CALLBACK_PROC | pCallbackProc, | ||
void * | pUserData | ||
) |
Remove a sipXtapi event callback/observer.
Supply the same pCallbackProc and pUserData values as sipxEventListenerAdd.
hInst | Instance pointer obtained by sipxInitialize. |
pCallbackProc | Function used to receive sipx events |
pUserData | user data specified as part of sipxListenerAdd |
SIPXTAPI_API char* sipxEventToString | ( | const SIPX_EVENT_CATEGORY | category, |
const void * | pEvent, | ||
char * | szBuffer, | ||
size_t | nBuffer | ||
) |
Create a printable string version of the designated event.
This is generally used for debugging.
category | Event category code |
pEvent | Pointer to the Event. |
szBuffer | buffer to store event string |
nBuffer | length of string buffer szBuffer |
SIPXTAPI_API SIPX_RESULT sipxFreeDuplicatedEvent | ( | SIPX_EVENT_CATEGORY | category, |
void * | pEventCopy | ||
) |
Frees up memory allocated as part of sipxDuplicateEvent.
Do not call this API on pointers received as part of the sipXtapi call back.
category | Category type supplied by the sipXtapi event callback. |
pEventCopy | Copy of event data supplied by sipxDuplicateEvent. |
SIPXTAPI_API char* sipxKeepaliveCauseToString | ( | SIPX_KEEPALIVE_CAUSE | cause, |
char * | szBuffer, | ||
size_t | nBuffer | ||
) |
Create a printable string version of the designated keepalive cause.
This is generally used for debugging.
cause | Keepalive cause id |
szBuffer | Buffer to store cause string |
nBuffer | Length of string buffer szBuffer |
SIPXTAPI_API char* sipxKeepaliveEventToString | ( | SIPX_KEEPALIVE_EVENT | event, |
char * | szBuffer, | ||
size_t | nBuffer | ||
) |
Create a printable string version of the designated keepalive event.
This is generally used for debugging.
event | Keepalive event id |
szBuffer | Buffer to store event string |
nBuffer | Length of string buffer szBuffer |
SIPXTAPI_API char* sipxLineEventToString | ( | SIPX_LINESTATE_EVENT | event, |
SIPX_LINESTATE_CAUSE | cause, | ||
char * | szBuffer, | ||
size_t | nBuffer | ||
) |
Create a printable string version of the designated line event ids.
This is generally used for debugging.
event | major event type id |
cause | event type id |
szBuffer | buffer to store event string |
nBuffer | length of string buffer szBuffer |
SIPXTAPI_API char* sipxMediaCauseToString | ( | SIPX_MEDIA_CAUSE | cause, |
char * | szBuffer, | ||
size_t | nBuffer | ||
) |
Create a printable string version of the designated media cause.
This is generally used for debugging.
cause | Media cause id |
szBuffer | Buffer to store cause string |
nBuffer | Length of string buffer szBuffer |
SIPXTAPI_API char* sipxMediaEventToString | ( | SIPX_MEDIA_EVENT | event, |
char * | szBuffer, | ||
size_t | nBuffer | ||
) |
Create a printable string version of the designated media event.
This is generally used for debugging.
event | Media event id |
szBuffer | Buffer to store event string |
nBuffer | Length of string buffer szBuffer |
SIPXTAPI_API char* sipxSecurityCauseToString | ( | SIPX_SECURITY_CAUSE | cause, |
char * | szBuffer, | ||
size_t | nBuffer | ||
) |
Create a printable string version of the designated security cause.
This is generally used for debugging.
cause | Security cause id |
szBuffer | Buffer to store cause string |
nBuffer | Length of string buffer szBuffer |
SIPXTAPI_API char* sipxSecurityEventToString | ( | SIPX_SECURITY_EVENT | event, |
char * | szBuffer, | ||
size_t | nBuffer | ||
) |
Create a printable string version of the designated security event.
This is generally used for debugging.
event | Security event id |
szBuffer | Buffer to store event string |
nBuffer | Length of string buffer szBuffer |
SIPXTAPI_API char* sipxSubStatusCauseToString | ( | SIPX_SUBSCRIPTION_CAUSE | cause, |
char * | szBuffer, | ||
size_t | nBuffer | ||
) |
Create a printable string version of the designated subscription status cause.
This is generally used for debugging.
cause | Subscription cause id |
szBuffer | Buffer to store event string |
nBuffer | Length of string buffer szBuffer |
SIPXTAPI_API char* sipxSubStatusStateToString | ( | SIPX_SUBSCRIPTION_STATE | state, |
char * | szBuffer, | ||
size_t | nBuffer | ||
) |
Create a printable string version of the designated subscription status state.
This is generally used for debugging.
state | Subscription state id |
szBuffer | Buffer to store event string |
nBuffer | Length of string buffer szBuffer |