libeXosip2  5.3.0
Functions
eXosip2 INVITE and Call Management

Functions

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

Detailed Description

Function Documentation

◆ eXosip_call_set_reference()

int eXosip_call_set_reference ( struct eXosip_t *  excontext,
int  id,
void *  reference 
)

Set a new application context for an existing call

Parameters
excontexteXosip_t instance.
idcall-id or dialog-id of call
referenceNew application context.

◆ eXosip_call_get_reference()

void* eXosip_call_get_reference ( struct eXosip_t *  excontext,
int  cid 
)

Get the application context pointer for an existing call.

Parameters
excontexteXosip_t instance.
cidid of the call.
Returns
Application context reference

◆ eXosip_call_build_initial_invite()

int eXosip_call_build_initial_invite ( struct eXosip_t *  excontext,
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
excontexteXosip_t instance.
invitePointer for the SIP element to hold.
toSIP url for callee.
fromSIP url for caller.
routeRoute header for INVITE. (optional)
subjectSubject for the call.

◆ eXosip_call_send_initial_invite()

int eXosip_call_send_initial_invite ( struct eXosip_t *  excontext,
osip_message_t *  invite 
)

Initiate a call.

Parameters
excontexteXosip_t instance.
inviteSIP INVITE message to send.

◆ eXosip_call_build_request()

int eXosip_call_build_request ( struct eXosip_t *  excontext,
int  did,
const char *  method,
osip_message_t **  request 
)

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

Parameters
excontexteXosip_t instance.
diddialog id of call.
methodrequest type to build.
requestThe sip request to build.

◆ eXosip_call_build_ack()

int eXosip_call_build_ack ( struct eXosip_t *  excontext,
int  tid,
osip_message_t **  ack 
)

Build a default ACK for a 200ok received.

Parameters
excontexteXosip_t instance.
tidtransaction id of INVITE/2xx.
ackThe sip request to build.

◆ eXosip_call_send_ack()

int eXosip_call_send_ack ( struct eXosip_t *  excontext,
int  tid,
osip_message_t *  ack 
)

Send the ACK for the 200ok received..

Parameters
excontexteXosip_t instance.
tidtransaction id of INVITE/2xx.
ackSIP ACK message to send.

◆ eXosip_call_build_refer()

int eXosip_call_build_refer ( struct eXosip_t *  excontext,
int  did,
const char *  refer_to,
osip_message_t **  request 
)

Build a default REFER for a call transfer.

Parameters
excontexteXosip_t instance.
diddialog id of call.
refer_tourl for call transfer (Refer-To header).
requestThe sip request to build.

◆ eXosip_call_build_info()

int eXosip_call_build_info ( struct eXosip_t *  excontext,
int  did,
osip_message_t **  request 
)

Build a default INFO within a call.

Parameters
excontexteXosip_t instance.
diddialog id of call.
requestThe sip request to build.

◆ eXosip_call_build_options()

int eXosip_call_build_options ( struct eXosip_t *  excontext,
int  did,
osip_message_t **  request 
)

Build a default OPTIONS within a call.

Parameters
excontexteXosip_t instance.
diddialog id of call.
requestThe sip request to build.

◆ eXosip_call_build_update()

int eXosip_call_build_update ( struct eXosip_t *  excontext,
int  did,
osip_message_t **  request 
)

Build a default UPDATE within a call.

Parameters
excontexteXosip_t instance.
diddialog id of call.
requestThe sip request to build.

◆ eXosip_call_build_notify()

int eXosip_call_build_notify ( struct eXosip_t *  excontext,
int  did,
int  subscription_status,
osip_message_t **  request 
)

Build a default NOTIFY within a call.

Parameters
excontexteXosip_t instance.
diddialog id of call.
subscription_statusSubscription status of the request.
requestThe sip request to build.

◆ eXosip_call_send_request()

int eXosip_call_send_request ( struct eXosip_t *  excontext,
int  did,
osip_message_t *  request 
)

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

Parameters
excontexteXosip_t instance.
diddialog id of call.
requestThe sip request to send.

◆ eXosip_call_build_answer()

int eXosip_call_build_answer ( struct eXosip_t *  excontext,
int  tid,
int  status,
osip_message_t **  answer 
)

Build default Answer for request.

Parameters
excontexteXosip_t instance.
tidid of transaction to answer.
statusStatus code to use.
answerThe sip answer to build.

◆ eXosip_call_send_answer()

int eXosip_call_send_answer ( struct eXosip_t *  excontext,
int  tid,
int  status,
osip_message_t *  answer 
)

Send Answer for invite.

Parameters
excontexteXosip_t instance.
tidid of transaction to answer.
statusresponse status if answer is NULL. (not allowed for 2XX)
answerThe sip answer to send.

◆ eXosip_call_terminate()

int eXosip_call_terminate ( struct eXosip_t *  excontext,
int  cid,
int  did 
)

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

Parameters
excontexteXosip_t instance.
cidcall id of call.
diddialog id of call.

◆ eXosip_call_terminate_with_reason()

int eXosip_call_terminate_with_reason ( struct eXosip_t *  excontext,
int  cid,
int  did,
const char *  reason 
)

Terminate a call and add a Reason header. send CANCEL, BYE or 603 Decline.

Parameters
excontexteXosip_t instance.
cidcall id of call.
diddialog id of call.
reasonReason header.

◆ eXosip_call_terminate_with_header()

int eXosip_call_terminate_with_header ( struct eXosip_t *  excontext,
int  cid,
int  did,
const char *  header_name,
const char *  header_value 
)

Terminate a call and add a Reason header. send CANCEL, BYE or 603 Decline.

Parameters
excontexteXosip_t instance.
cidcall id of call.
diddialog id of call.
header_nameheader name.
header_valueheader value.

◆ eXosip_call_build_prack()

int eXosip_call_build_prack ( struct eXosip_t *  excontext,
int  tid,
osip_message_t *  response1xx,
osip_message_t **  prack 
)

Build a PRACK for invite.

Parameters
excontexteXosip_t instance.
tidid of the invite transaction.
response1xxThe sip response for which we build a PRACK.
prackThe sip prack to build.

◆ eXosip_call_send_prack()

int eXosip_call_send_prack ( struct eXosip_t *  excontext,
int  tid,
osip_message_t *  prack 
)

Send a PRACK for invite.

Parameters
excontexteXosip_t instance.
tidid of the invite transaction.
prackThe sip prack to send.

◆ eXosip_call_get_referto()

int eXosip_call_get_referto ( struct eXosip_t *  excontext,
int  did,
char *  refer_to,
size_t  refer_to_len 
)

Get Refer-To header with Replace parameter from dialog.

Parameters
excontexteXosip_t instance.
didid of the dialog.
refer_tobuffer to be filled with refer-to info.
refer_to_lensize of refer_to buffer.

◆ eXosip_call_find_by_replaces()

int eXosip_call_find_by_replaces ( struct eXosip_t *  excontext,
char *  replaces 
)

Return did (or cid) for the replace header.

Parameters
excontexteXosip_t instance.
replacesbuffer to be filled with refer-to info.