libeXosip2 3.6.0
Functions

eXosip2 INVITE and Call Management

SIP messages and call control API

Functions

int eXosip_call_set_reference (int id, void *reference)
void * eXosip_call_get_reference (int cid)
int eXosip_call_build_initial_invite (osip_message_t **invite, const char *to, const char *from, const char *route, const char *subject)
int eXosip_call_send_initial_invite (osip_message_t *invite)
int eXosip_call_build_request (int did, const char *method, osip_message_t **request)
int eXosip_call_build_ack (int did, osip_message_t **ack)
int eXosip_call_send_ack (int did, osip_message_t *ack)
int eXosip_call_build_refer (int did, const char *refer_to, osip_message_t **request)
int eXosip_call_build_info (int did, osip_message_t **request)
int eXosip_call_build_options (int did, osip_message_t **request)
int eXosip_call_build_update (int did, osip_message_t **request)
int eXosip_call_build_notify (int did, int subscription_status, osip_message_t **request)
int eXosip_call_send_request (int did, osip_message_t *request)
int eXosip_call_build_answer (int tid, int status, osip_message_t **answer)
int eXosip_call_send_answer (int tid, int status, osip_message_t *answer)
int eXosip_call_terminate (int cid, int did)
int eXosip_call_build_prack (int tid, osip_message_t **prack)
int eXosip_call_send_prack (int tid, osip_message_t *prack)
int eXosip_transfer_send_notify (int did, int subscription_status, char *body)
int eXosip_call_get_referto (int did, char *refer_to, size_t refer_to_len)
int eXosip_call_find_by_replaces (char *replaces)

Function Documentation

int eXosip_call_set_reference ( int  id,
void *  reference 
)

Set a new application context for an existing call

Parameters:
idcall-id or dialog-id of call
referenceNew application context.
void* eXosip_call_get_reference ( int  cid)

Get the application context pointer for an existing call.

Parameters:
cidid of the call.
Returns:
Application context reference
int eXosip_call_build_initial_invite ( osip_message_t **  invite,
const char *  to,
const char *  from,
const char *  route,
const char *  subject 
)

Build a default INVITE message for a new call.

Parameters:
invitePointer for the SIP element to hold.
toSIP url for callee.
fromSIP url for caller.
routeRoute header for INVITE. (optional)
subjectSubject for the call.
int eXosip_call_send_initial_invite ( osip_message_t *  invite)

Initiate a call.

Parameters:
inviteSIP INVITE message to send.
int eXosip_call_build_request ( int  did,
const char *  method,
osip_message_t **  request 
)

Build a default request within a call. (INVITE, OPTIONS, INFO, REFER)

Parameters:
diddialog id of call.
methodrequest type to build.
requestThe sip request to build.
int eXosip_call_build_ack ( int  did,
osip_message_t **  ack 
)

Build a default ACK for a 200ok received.

Parameters:
diddialog id of call.
ackThe sip request to build.
int eXosip_call_send_ack ( int  did,
osip_message_t *  ack 
)

Send the ACK for the 200ok received..

Parameters:
diddialog id of call.
ackSIP ACK message to send.
int eXosip_call_build_refer ( int  did,
const char *  refer_to,
osip_message_t **  request 
)

Build a default REFER for a call transfer.

Parameters:
diddialog id of call.
refer_tourl for call transfer (Refer-To header).
requestThe sip request to build.
int eXosip_call_build_info ( int  did,
osip_message_t **  request 
)

Build a default INFO within a call.

Parameters:
diddialog id of call.
requestThe sip request to build.
int eXosip_call_build_options ( int  did,
osip_message_t **  request 
)

Build a default OPTIONS within a call.

Parameters:
diddialog id of call.
requestThe sip request to build.
int eXosip_call_build_update ( int  did,
osip_message_t **  request 
)

Build a default UPDATE within a call.

Parameters:
diddialog id of call.
requestThe sip request to build.
int eXosip_call_build_notify ( int  did,
int  subscription_status,
osip_message_t **  request 
)

Build a default NOTIFY within a call.

Parameters:
diddialog id of call.
subscription_statusSubscription status of the request.
requestThe sip request to build.
int eXosip_call_send_request ( int  did,
osip_message_t *  request 
)

send the request within call. (INVITE, OPTIONS, INFO, REFER, UPDATE)

Parameters:
diddialog id of call.
requestThe sip request to send.
int eXosip_call_build_answer ( int  tid,
int  status,
osip_message_t **  answer 
)

Build default Answer for request.

Parameters:
tidid of transaction to answer.
statusStatus code to use.
answerThe sip answer to build.
int eXosip_call_send_answer ( int  tid,
int  status,
osip_message_t *  answer 
)

Send Answer for invite.

Parameters:
tidid of transaction to answer.
statusresponse status if answer is NULL. (not allowed for 2XX)
answerThe sip answer to send.
int eXosip_call_terminate ( int  cid,
int  did 
)

Terminate a call. send CANCEL, BYE or 603 Decline.

Parameters:
cidcall id of call.
diddialog id of call.
int eXosip_call_build_prack ( int  tid,
osip_message_t **  prack 
)

Build a PRACK for invite.

Parameters:
tidid of the invite transaction.
prackThe sip prack to build.
int eXosip_call_send_prack ( int  tid,
osip_message_t *  prack 
)

Send a PRACK for invite.

Parameters:
tidid of the invite transaction.
prackThe sip prack to send.
int eXosip_transfer_send_notify ( int  did,
int  subscription_status,
char *  body 
)

Send a NOTIFY containing the information about a call transfer.

THIS METHOD WILL BE REPLACED or REMOVED, please use the new API to build NOTIFY.

Parameters:
diddialog id of call.
subscription_statusthe subscription status.
bodythe body to attach to NOTIFY.
int eXosip_call_get_referto ( int  did,
char *  refer_to,
size_t  refer_to_len 
)

Get Refer-To header with Replace parameter from dialog.

Parameters:
didid of the dialog.
refer_tobuffer to be filled with refer-to info.
refer_to_lensize of refer_to buffer.
int eXosip_call_find_by_replaces ( char *  replaces)

Return did (or cid) for the replace header.

Parameters:
replacesbuffer to be filled with refer-to info.