Scroll to navigation

eXosip.h(3) libeXosip2 eXosip.h(3)

NAME

eXosip.h -
eXosip API
 

SYNOPSIS

#include <eXosip2/eX_setup.h>
 
#include <eXosip2/eX_register.h>
 
#include <eXosip2/eX_call.h>
 
#include <eXosip2/eX_options.h>
 
#include <eXosip2/eX_subscribe.h>
 
#include <eXosip2/eX_refer.h>
 
#include <eXosip2/eX_message.h>
 
#include <eXosip2/eX_publish.h>
 
#include <osipparser2/osip_parser.h>
 
#include <osipparser2/sdp_message.h>
 
#include <time.h>
 
 

Data Structures


struct eXosip_event
 
struct eXosip_tls_credentials_s
 
struct eXosip_tls_ctx_s
 

Typedefs


typedef struct eXosip_event eXosip_event_t
 

Enumerations


enum eXosip_event_type { EXOSIP_REGISTRATION_NEW, EXOSIP_REGISTRATION_SUCCESS, EXOSIP_REGISTRATION_FAILURE, EXOSIP_REGISTRATION_REFRESHED, EXOSIP_REGISTRATION_TERMINATED, EXOSIP_CALL_INVITE, EXOSIP_CALL_REINVITE, EXOSIP_CALL_NOANSWER, EXOSIP_CALL_PROCEEDING, EXOSIP_CALL_RINGING, EXOSIP_CALL_ANSWERED, EXOSIP_CALL_REDIRECTED, EXOSIP_CALL_REQUESTFAILURE, EXOSIP_CALL_SERVERFAILURE, EXOSIP_CALL_GLOBALFAILURE, EXOSIP_CALL_ACK, EXOSIP_CALL_CANCELLED, EXOSIP_CALL_TIMEOUT, EXOSIP_CALL_MESSAGE_NEW, EXOSIP_CALL_MESSAGE_PROCEEDING, EXOSIP_CALL_MESSAGE_ANSWERED, EXOSIP_CALL_MESSAGE_REDIRECTED, EXOSIP_CALL_MESSAGE_REQUESTFAILURE, EXOSIP_CALL_MESSAGE_SERVERFAILURE, EXOSIP_CALL_MESSAGE_GLOBALFAILURE, EXOSIP_CALL_CLOSED, EXOSIP_CALL_RELEASED, EXOSIP_MESSAGE_NEW, EXOSIP_MESSAGE_PROCEEDING, EXOSIP_MESSAGE_ANSWERED, EXOSIP_MESSAGE_REDIRECTED, EXOSIP_MESSAGE_REQUESTFAILURE, EXOSIP_MESSAGE_SERVERFAILURE, EXOSIP_MESSAGE_GLOBALFAILURE, EXOSIP_SUBSCRIPTION_UPDATE, EXOSIP_SUBSCRIPTION_CLOSED, EXOSIP_SUBSCRIPTION_NOANSWER, EXOSIP_SUBSCRIPTION_PROCEEDING, EXOSIP_SUBSCRIPTION_ANSWERED, EXOSIP_SUBSCRIPTION_REDIRECTED, EXOSIP_SUBSCRIPTION_REQUESTFAILURE, EXOSIP_SUBSCRIPTION_SERVERFAILURE, EXOSIP_SUBSCRIPTION_GLOBALFAILURE, EXOSIP_SUBSCRIPTION_NOTIFY, EXOSIP_SUBSCRIPTION_RELEASED, EXOSIP_IN_SUBSCRIPTION_NEW, EXOSIP_IN_SUBSCRIPTION_RELEASED, EXOSIP_NOTIFICATION_NOANSWER, EXOSIP_NOTIFICATION_PROCEEDING, EXOSIP_NOTIFICATION_ANSWERED, EXOSIP_NOTIFICATION_REDIRECTED, EXOSIP_NOTIFICATION_REQUESTFAILURE, EXOSIP_NOTIFICATION_SERVERFAILURE, EXOSIP_NOTIFICATION_GLOBALFAILURE, EXOSIP_EVENT_COUNT }
 
enum eXosip_tls_ctx_error { TLS_OK = 0, TLS_ERR_NO_RAND = -1, TLS_ERR_NO_DH_PARAM = -2, TLS_ERR_NO_PW = -3, TLS_ERR_NO_ROOT_CA = -4, TLS_ERR_MISSING_AUTH_PART = -5 }
 

Functions


int eXosip_add_authentication_info (const char *username, const char *userid, const char *passwd, const char *ha1, const char *realm)
 
int eXosip_clear_authentication_info (void)
 
int eXosip_default_action (eXosip_event_t *je)
 
void eXosip_automatic_refresh (void)
 
void eXosip_automatic_action (void)
 
int eXosip_insubscription_automatic (eXosip_event_t *evt)
 
int eXosip_generate_random (char *buf, int buf_size)
 
sdp_message_t * eXosip_get_remote_sdp (int did)
 
sdp_message_t * eXosip_get_local_sdp (int did)
 
sdp_message_t * eXosip_get_previous_local_sdp (int did)
 
sdp_message_t * eXosip_get_remote_sdp_from_tid (int tid)
 
sdp_message_t * eXosip_get_local_sdp_from_tid (int tid)
 
sdp_message_t * eXosip_get_sdp_info (osip_message_t *message)
 
sdp_connection_t * eXosip_get_audio_connection (sdp_message_t *sdp)
 
sdp_media_t * eXosip_get_audio_media (sdp_message_t *sdp)
 
sdp_connection_t * eXosip_get_video_connection (sdp_message_t *sdp)
 
sdp_media_t * eXosip_get_video_media (sdp_message_t *sdp)
 
sdp_connection_t * eXosip_get_connection (sdp_message_t *sdp, const char *media)
 
sdp_media_t * eXosip_get_media (sdp_message_t *sdp, const char *media)
 
void eXosip_event_free (eXosip_event_t *je)
 
eXosip_event_t * eXosip_event_wait (int tv_s, int tv_ms)
 
eXosip_event_t * eXosip_event_get (void)
 
int eXosip_event_geteventsocket (void)
 
eXosip_tls_ctx_error eXosip_set_tls_ctx (eXosip_tls_ctx_t *ctx)
 
eXosip_tls_ctx_error eXosip_tls_use_server_certificate (const char *local_certificate_cn)
 
eXosip_tls_ctx_error eXosip_tls_use_client_certificate (const char *local_certificate_cn)
 
eXosip_tls_ctx_error eXosip_tls_verify_certificate (int _tls_verify_client_certificate)
 

Detailed Description

eXosip API
 
eXosip is a high layer library for rfc3261: the SIP protocol. It offers a simple API to make it easy to use. eXosip2 offers great flexibility for implementing SIP endpoint like:
 
SIP User-Agents
SIP Voicemail or IVR
SIP B2BUA
any SIP server acting as an endpoint (music server...)
If you need to implement proxy or complex SIP applications, you should consider using osip instead.
Here are the eXosip capabilities:
REGISTER to handle registration. INVITE/BYE to start/stop VoIP sessions. INFO to send DTMF within a VoIP sessions. OPTIONS to simulate VoIP sessions. re-INVITE to modify VoIP sessions REFER/NOTIFY to transfer calls. MESSAGE to send Instant Message. SUBSCRIBE/NOTIFY to handle presence capabilities. any other request to handle what you want!
 

Typedef Documentation

eXosip_event_t

Structure for event description.

Author

Generated automatically by Doxygen for libeXosip2 from the source code.
Sun Jun 24 2012 Version 3.1.0