BLOG | DOCUMENTATION | GITHUB

Home --> Documentations --> PJSIP Reference

sip_dialog.h File Reference

SIP Dialog abstraction. More...

#include <pjsip/sip_msg.h>
#include <pjsip/sip_auth.h>
#include <pjsip/sip_errno.h>
#include <pjsip/sip_transport.h>
#include <pjsip/sip_util.h>
#include <pj/sock.h>
#include <pj/assert.h>

Data Structures

struct  pjsip_dlg_party
 
struct  pjsip_dialog
 
struct  pjsip_dlg_create_uac_param
 

Macros

#define DEPRECATED_FOR_TICKET_1902   1
 

Enumerations

enum  pjsip_dialog_state { PJSIP_DIALOG_STATE_NULL , PJSIP_DIALOG_STATE_ESTABLISHED }
 
enum  pjsip_dialog_cap_status { PJSIP_DIALOG_CAP_UNSUPPORTED = 0 , PJSIP_DIALOG_CAP_SUPPORTED = 1 , PJSIP_DIALOG_CAP_UNKNOWN = 2 }
 

Functions

pj_bool_t pjsip_method_creates_dialog (const pjsip_method *m)
 
pj_status_t pjsip_dlg_create_uac (pjsip_user_agent *ua, const pj_str_t *local_uri, const pj_str_t *local_contact, const pj_str_t *remote_uri, const pj_str_t *target, pjsip_dialog **p_dlg)
 
pj_status_t pjsip_dlg_create_uac2 (const pjsip_dlg_create_uac_param *create_param, pjsip_dialog **p_dlg)
 
pj_status_t pjsip_dlg_create_uas_and_inc_lock (pjsip_user_agent *ua, pjsip_rx_data *rdata, const pj_str_t *contact, pjsip_dialog **p_dlg)
 
pj_status_t pjsip_dlg_set_transport (pjsip_dialog *dlg, const pjsip_tpselector *sel)
 
pj_status_t pjsip_dlg_set_via_sent_by (pjsip_dialog *dlg, pjsip_host_port *via_addr, pjsip_transport *via_tp)
 
pj_status_t pjsip_dlg_fork (const pjsip_dialog *original_dlg, const pjsip_rx_data *rdata, pjsip_dialog **new_dlg)
 
pj_status_t pjsip_dlg_terminate (pjsip_dialog *dlg)
 
pj_status_t pjsip_dlg_set_route_set (pjsip_dialog *dlg, const pjsip_route_hdr *route_set)
 
pj_status_t pjsip_dlg_inc_session (pjsip_dialog *dlg, pjsip_module *mod)
 
pj_status_t pjsip_dlg_dec_session (pjsip_dialog *dlg, pjsip_module *mod)
 
pj_status_t pjsip_dlg_add_usage (pjsip_dialog *dlg, pjsip_module *module, void *mod_data)
 
pj_bool_t pjsip_dlg_has_usage (pjsip_dialog *dlg, pjsip_module *module)
 
pj_status_t pjsip_dlg_set_mod_data (pjsip_dialog *dlg, int mod_id, void *data)
 
void * pjsip_dlg_get_mod_data (pjsip_dialog *dlg, int mod_id)
 
void pjsip_dlg_inc_lock (pjsip_dialog *dlg)
 
pj_status_t pjsip_dlg_try_inc_lock (pjsip_dialog *dlg)
 
void pjsip_dlg_dec_lock (pjsip_dialog *dlg)
 
pj_grp_lock_tpjsip_dlg_get_lock (pjsip_dialog *dlg)
 
pjsip_dialogpjsip_rdata_get_dlg (pjsip_rx_data *rdata)
 
pjsip_dialogpjsip_tdata_get_dlg (pjsip_tx_data *tdata)
 
pjsip_dialogpjsip_tsx_get_dlg (pjsip_transaction *tsx)
 
pj_status_t pjsip_dlg_create_request (pjsip_dialog *dlg, const pjsip_method *method, int cseq, pjsip_tx_data **tdata)
 
pj_status_t pjsip_dlg_send_request (pjsip_dialog *dlg, pjsip_tx_data *tdata, int mod_data_id, void *mod_data)
 
pj_status_t pjsip_dlg_create_response (pjsip_dialog *dlg, pjsip_rx_data *rdata, int st_code, const pj_str_t *st_text, pjsip_tx_data **tdata)
 
pj_status_t pjsip_dlg_modify_response (pjsip_dialog *dlg, pjsip_tx_data *tdata, int st_code, const pj_str_t *st_text)
 
pj_status_t pjsip_dlg_send_response (pjsip_dialog *dlg, pjsip_transaction *tsx, pjsip_tx_data *tdata)
 
pj_status_t pjsip_dlg_respond (pjsip_dialog *dlg, pjsip_rx_data *rdata, int st_code, const pj_str_t *st_text, const pjsip_hdr *hdr_list, const pjsip_msg_body *body)
 
pjsip_dialog_cap_status pjsip_dlg_remote_has_cap (pjsip_dialog *dlg, int htype, const pj_str_t *hname, const pj_str_t *token)
 
const pjsip_hdrpjsip_dlg_get_remote_cap_hdr (pjsip_dialog *dlg, int htype, const pj_str_t *hname)
 
pj_status_t pjsip_dlg_set_remote_cap_hdr (pjsip_dialog *dlg, const pjsip_generic_array_hdr *cap_hdr)
 
pj_status_t pjsip_dlg_remove_remote_cap_hdr (pjsip_dialog *dlg, int htype, const pj_str_t *hname)
 
pj_status_t pjsip_dlg_update_remote_cap (pjsip_dialog *dlg, const pjsip_msg *msg, pj_bool_t strict)
 
void pjsip_dlg_on_tsx_state (pjsip_dialog *dlg, pjsip_transaction *tsx, pjsip_event *e)
 
void pjsip_dlg_on_rx_request (pjsip_dialog *dlg, pjsip_rx_data *rdata)
 
void pjsip_dlg_on_rx_response (pjsip_dialog *dlg, pjsip_rx_data *rdata)
 

Function Documentation

◆ pjsip_dlg_on_tsx_state()

void pjsip_dlg_on_tsx_state ( pjsip_dialog dlg,
pjsip_transaction tsx,
pjsip_event e 
)

Internal: receives transaction event (called by user_agent module)

◆ pjsip_dlg_on_rx_request()

void pjsip_dlg_on_rx_request ( pjsip_dialog dlg,
pjsip_rx_data rdata 
)

Internal

◆ pjsip_dlg_on_rx_response()

void pjsip_dlg_on_rx_response ( pjsip_dialog dlg,
pjsip_rx_data rdata 
)

Internal

 


PJSIP Open Source, high performance, small footprint, and very very portable SIP stack
Copyright (C) 2006-2008 Teluu Inc.