SIP API Developer's Guide

Dialog Layer Functions

int sip_get_dialog_state(sip_dialog_t dialog, int *error);

The sip_get_dialog_state() function returns the state of a dialog. A dialog be in the following states:

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.

const sip_str_t sip_get_dialog_callid(sip_dialog_t dialog, int *error);

The sip_get_dialog_callid() function returns the pointer to the callid value for the dialog that is specified by the value of the dialog parameter. This function returns a pointer to the value and the length of the value.

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.

const sip_str_t sip_get_dialog_local_tag(sip_dialog_t dialog, int *error);

The sip_get_dialog_local_tag() function returns a pointer to the local tag value for the dialog that is specified by the value of the dialog parameter. This function returns a pointer to the value and the length of the value.

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.

const sip_str_t sip_get_dialog_remote_tag(sip_dialog_t dialog, int *error);

The sip_get_dialog_remote_tag() function returns a pointer to the remote tag value for the dialog that is specified by the value of the dialog parameter. This function returns a pointer to the value and the length of the value.

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.

const struct uri_t sip_get_dialog_local_uri(sip_dialog_t dialog, int *error);

The sip_get_dialog_local_uri() function returns the local URI for the dialog that is specified by the value of the dialog parameter. This function returns a parsed URI.

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.

const struct uri_t sip_get_dialog_remote_uri(sip_dialog_t dialog, int *error);

The sip_get_dialog_remote_uri() function returns the remote URI for the dialog that is specified by the value of the dialog parameter. This function returns a parsed URI.

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.

const struct uri_t sip_get_dialog_remote_target_uri(sip_dialog_t dialog, int *error);

The sip_get_dialog_remote_target_uri() function returns the remote target URI for the dialog that is specified by the value of the dialog parameter. This function returns a URI in the sip_uri_t variable, which is a parsed URI.

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.

const sip_str_t sip_get_dialog_route_set(sip_dialog_t dialog, int *error);

The sip_get_dialog_route_set() function returns the route set for the dialog that is specified by the value of the dialog parameter. The return value is a pointer to the list of comma separated routes and the length of the list.

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.

uint32_t sip_get_dialog_local_cseq(sip_dialog_t dialog, int *error);

The sip_get_dialog_local_cseq() function returns the sequence number for the next request in the dialog.

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.

uint32_t sip_get_dialog_remote_cseq(sip_dialog_t dialog, int *error);

The sip_get_dialog_remote_cseq() function returns the remote CSeq number for the dialog.

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.

int sip_get_dialog_type(sip_dialog_t dialog, int *error);

The sip_get_dialog_type() function returns the type of the dialog. A dialog can have the following types:

SIP_UAC_DIALOG

UAC created dialog

SIP_UAS_DIALOG

UAS created dialog

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.

void sip_hold_dialog(sip_dialog_t dialog, int *error);

The sip_hold_dialog() function increments the reference number for the dialog that is specified by the value of the dialog parameter. The stack will not destroy a dialog with a reference count greater than zero. An application that holds a dialog must release the dialog after using it.

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.

void sip_release_dialog(sip_dialog_t dialog, int *error);

The sip_release_dialog() function decrements the reference number for the dialog that is specified by the value of the dialog parameter. The stack will not destroy a dialog with a reference count greater than zero. An application that holds a dialog must release the dialog after using it.

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.

void sip_delete_dialog(sip_dialog_t dialog, int *error);

The sip_delete_dialog() function terminates the dialog that is specified by the value of the dialog parameter. This function first decrements the reference count for the dialog, then destroys it if the count is zero. The stack will not destroy a dialog with a reference count greater than zero. An application that holds a dialog must release the dialog after using it.

The value of the error parameter is set to zero when this function completes successfully. When this function completes unsuccessfully, it sets the value of the error parameter to the appropriate error value.