WARNING: The online documentation has moved to https://docs.pjsip.org.

Visit the new documentation at https://docs.pjsip.org:

BLOG | DOCUMENTATION | GITHUB

Home --> Documentations --> PJSIP Reference

#include <sip_dialog.h>

Public Member Functions

 PJ_DECL_LIST_MEMBER (pjsip_dialog)
 

Data Fields

char obj_name [PJ_MAX_OBJ_NAME]
 
pj_pool_tpool
 
pjsip_user_agentua
 
pjsip_endpointendpt
 
pj_grp_lock_tgrp_lock_
 
void * dlg_set
 
pjsip_dialog_state state
 
pjsip_uritarget
 
pjsip_target_set target_set
 
pjsip_hdr inv_hdr
 
pjsip_dlg_party local
 
pjsip_dlg_party remote
 
pjsip_hdr rem_cap_hdr
 
pjsip_role_e role
 
pj_bool_t uac_has_2xx
 
pj_bool_t secure
 
pj_bool_t add_allow
 
pjsip_cid_hdrcall_id
 
pjsip_route_hdr route_set
 
pj_bool_t route_set_frozen
 
pjsip_auth_clt_sess auth_sess
 
pj_str_t initial_dest
 
int sess_count
 
int tsx_count
 
pjsip_tpselector tp_sel
 
unsigned usage_cnt
 
pjsip_moduleusage [PJSIP_MAX_MODULE]
 
void * mod_data [PJSIP_MAX_MODULE]
 
pjsip_host_port via_addr
 
const void * via_tp
 

Detailed Description

This structure describes the dialog structure. Application MUST NOT try to SET the values here directly, but instead it MUST use the appropriate dialog API. The dialog declaration only needs to be made visible because other PJSIP modules need to see it (e.g. INVITE session, the event framework, etc.).

Application MAY READ the dialog contents directly after it acquires dialog lock.

To acquire dialog lock, use pjsip_dlg_inc_lock(), and to release it, use pjsip_dlg_dec_lock(). DO NOT USE pj_mutex_lock()/pj_mutex_unlock() on the dialog's mutex directly, because this will not protect against dialog being destroyed.

Forward declaration for dialog (sip_dialog.h).

Member Function Documentation

◆ PJ_DECL_LIST_MEMBER()

pjsip_dialog::PJ_DECL_LIST_MEMBER ( pjsip_dialog  )

The dialog set list.

Field Documentation

◆ obj_name

char pjsip_dialog::obj_name[PJ_MAX_OBJ_NAME]

Standard id.

◆ pool

pj_pool_t* pjsip_dialog::pool

Dialog's pool.

◆ ua

pjsip_user_agent* pjsip_dialog::ua

User agent instance.

◆ endpt

pjsip_endpoint* pjsip_dialog::endpt

Endpoint instance.

◆ grp_lock_

pj_grp_lock_t* pjsip_dialog::grp_lock_

Dialog's grp lock. Do not call!! Use pjsip_dlg_inc_lock() instead!

◆ dlg_set

void* pjsip_dialog::dlg_set

The dialog set which this dialog belongs (opaque type).

◆ state

pjsip_dialog_state pjsip_dialog::state

Dialog state.

◆ target

pjsip_uri* pjsip_dialog::target

Current target.

◆ target_set

pjsip_target_set pjsip_dialog::target_set

Target set, for UAC only.

◆ inv_hdr

pjsip_hdr pjsip_dialog::inv_hdr

Headers from hparam in dest URL

◆ local

pjsip_dlg_party pjsip_dialog::local

Local party info.

◆ remote

pjsip_dlg_party pjsip_dialog::remote

Remote party info.

◆ rem_cap_hdr

pjsip_hdr pjsip_dialog::rem_cap_hdr

List of remote capability header.

◆ role

pjsip_role_e pjsip_dialog::role

Initial role.

◆ uac_has_2xx

pj_bool_t pjsip_dialog::uac_has_2xx

UAC has received 2xx response?

◆ secure

pj_bool_t pjsip_dialog::secure

Use secure transport?

◆ add_allow

pj_bool_t pjsip_dialog::add_allow

Add Allow header in requests?

◆ call_id

pjsip_cid_hdr* pjsip_dialog::call_id

Call-ID header.

◆ route_set

pjsip_route_hdr pjsip_dialog::route_set

Route set.

◆ route_set_frozen

pj_bool_t pjsip_dialog::route_set_frozen

Route set has been set.

◆ auth_sess

pjsip_auth_clt_sess pjsip_dialog::auth_sess

Client authentication session.

◆ initial_dest

pj_str_t pjsip_dialog::initial_dest

Initial destination host.

◆ sess_count

int pjsip_dialog::sess_count

Session counter. Number of sessions.

◆ tsx_count

int pjsip_dialog::tsx_count

Transaction counter. Number of pending transactions.

◆ tp_sel

pjsip_tpselector pjsip_dialog::tp_sel

Transport selector.

◆ usage_cnt

unsigned pjsip_dialog::usage_cnt

Number of registered usages.

◆ usage

pjsip_module* pjsip_dialog::usage[PJSIP_MAX_MODULE]

Array of usages, priority sorted

◆ mod_data

void* pjsip_dialog::mod_data[PJSIP_MAX_MODULE]

Module specific data. Module data.

◆ via_addr

pjsip_host_port pjsip_dialog::via_addr

If via_addr is set, it will be used as the "sent-by" field of the Via header for outgoing requests as long as the request uses via_tp transport. Normally application should not use or access these fields. Via address.

◆ via_tp

const void* pjsip_dialog::via_tp

Via transport.


The documentation for this struct was generated from the following file:

 


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