Asterisk - The Open Source Telephony Project  21.4.1
Data Fields
ast_sip_session Struct Reference

A structure describing a SIP session. More...

#include <res_pjsip_session.h>

Data Fields

struct ast_sip_session_media_stateactive_media_state
 
int ani2
 
struct ast_sip_aoraor
 
unsigned int authentication_challenge_count:4
 
enum ast_sip_session_call_direction call_direction
 
struct ast_channelchannel
 
struct ast_sip_contactcontact
 
struct ao2_containerdatastores
 
unsigned int defer_end:1
 
unsigned int defer_terminate:1
 
pjsip_rx_data * deferred_reinvite
 
struct {
   struct ast_sip_session_delayed_request *   first
 
   struct ast_sip_session_delayed_request *   last
 
delayed_requests
 
struct ast_format_capdirect_media_cap
 
struct ast_dspdsp
 
enum ast_sip_dtmf_mode dtmf
 
unsigned int early_confirmed:1
 
unsigned int ended_while_deferred:1
 
struct ast_sip_endpointendpoint
 
char exten [AST_MAX_EXTENSION]
 
struct ast_party_id id
 
struct pjsip_inv_session * inv_session
 
struct {
   size_t   current
 
   struct ast_rtp_instance_stats **   elems
 
   size_t   max
 
media_stats
 
unsigned int moh_passthrough:1
 
struct ast_sip_session_media_statepending_media_state
 
pjsip_uri * request_uri
 
pj_timer_entry rescheduled_reinvite
 
pjsip_fromto_hdr * saved_from_hdr
 
pj_timer_entry scheduled_termination
 
struct ast_taskprocessorserializer
 
struct {
   struct ast_sip_session_supplement *   first
 
   struct ast_sip_session_supplement *   last
 
   ast_mutex_t   lock
 
supplements
 
struct ast_sip_session_suspendersuspended
 
enum ast_sip_session_t38state t38state
 
unsigned int terminate_while_deferred:1
 

Detailed Description

A structure describing a SIP session.

For the sake of brevity, a "SIP session" in Asterisk is referring to a dialog initiated by an INVITE. While "session" is typically interpreted to refer to the negotiated media within a SIP dialog, we have opted to use the term "SIP session" to refer to the INVITE dialog itself.

Definition at line 181 of file res_pjsip_session.h.

Field Documentation

struct ast_sip_session_media_state* active_media_state
int ani2

Originating Line Info (ANI II digits)

Definition at line 247 of file res_pjsip_session.h.

Referenced by chan_pjsip_new().

struct ast_sip_aor* aor

The AOR associated with this session

Definition at line 225 of file res_pjsip_session.h.

unsigned int authentication_challenge_count

Number of challenges received during outgoing requests to determine if we are in a loop

Definition at line 243 of file res_pjsip_session.h.

enum ast_sip_session_call_direction call_direction

The direction of the call respective to Asterisk

Definition at line 245 of file res_pjsip_session.h.

struct ast_channel* channel
struct ast_sip_contact* contact

The contact associated with this session

Definition at line 187 of file res_pjsip_session.h.

struct ao2_container* datastores

Datastores added to the session by supplements to the session

Definition at line 195 of file res_pjsip_session.h.

unsigned int defer_end

Whether the end of the session should be deferred

Definition at line 229 of file res_pjsip_session.h.

unsigned int defer_terminate

Whether the termination of the session should be deferred

Definition at line 217 of file res_pjsip_session.h.

Referenced by chan_pjsip_incoming_request().

pjsip_rx_data* deferred_reinvite

Deferred incoming re-invite

Definition at line 221 of file res_pjsip_session.h.

struct { ... } delayed_requests

Requests that could not be sent due to current inv_session state

struct ast_format_cap* direct_media_cap

Format capabilities pertaining to direct media

Definition at line 205 of file res_pjsip_session.h.

Referenced by create_outgoing_sdp_stream().

struct ast_dsp* dsp

Optional DSP, used only for inband DTMF/Fax-CNG detection if configured

Definition at line 215 of file res_pjsip_session.h.

Referenced by chan_pjsip_cng_tone_detected(), chan_pjsip_read_stream(), and pjsip_acf_dtmf_mode_write().

enum ast_sip_dtmf_mode dtmf

DTMF mode to use with this session, from endpoint but can change

Definition at line 237 of file res_pjsip_session.h.

Referenced by chan_pjsip_digit_begin(), chan_pjsip_digit_end(), create_outgoing_sdp_stream(), create_rtp(), pjsip_acf_dtmf_mode_read(), and pjsip_acf_dtmf_mode_write().

unsigned int early_confirmed

Whether early media state has been confirmed through PRACK

Definition at line 235 of file res_pjsip_session.h.

Referenced by chan_pjsip_incoming_response().

unsigned int ended_while_deferred

Session end (remote hangup) requested while termination deferred

Definition at line 231 of file res_pjsip_session.h.

struct ast_sip_endpoint* endpoint
char exten[AST_MAX_EXTENSION]

Dialplan extension where incoming call is destined

Definition at line 183 of file res_pjsip_session.h.

Referenced by chan_pjsip_incoming_request().

struct ast_party_id id

Identity of endpoint this session deals with

Definition at line 209 of file res_pjsip_session.h.

Referenced by chan_pjsip_new().

struct pjsip_inv_session* inv_session
struct { ... } media_stats

Media statistics for negotiated RTP streams

unsigned int moh_passthrough

Whether to pass through hold and unhold using re-invites with recvonly and sendrecv

Definition at line 233 of file res_pjsip_session.h.

Referenced by chan_pjsip_indicate(), pjsip_acf_moh_passthrough_read(), and pjsip_acf_moh_passthrough_write().

struct ast_sip_session_media_state* pending_media_state

Pending media state (sessions + streams)

Definition at line 213 of file res_pjsip_session.h.

Referenced by chan_pjsip_call(), chan_pjsip_new(), create_outgoing_sdp_stream(), enable_rtp_extension(), and t38_reinvite_response_cb().

pjsip_uri* request_uri

Initial incoming INVITE Request-URI. NULL otherwise.

Definition at line 239 of file res_pjsip_session.h.

pj_timer_entry rescheduled_reinvite

When we need to reschedule a reinvite, we use this structure to do it

Definition at line 203 of file res_pjsip_session.h.

pjsip_fromto_hdr* saved_from_hdr

From header saved at invite creation

Definition at line 227 of file res_pjsip_session.h.

pj_timer_entry scheduled_termination

When we need to forcefully end the session

Definition at line 207 of file res_pjsip_session.h.

struct { ... } supplements

Registered session supplements

struct ast_sip_session_suspender* suspended

Non-null if the session serializer is suspended or being suspended.

Definition at line 199 of file res_pjsip_session.h.

enum ast_sip_session_t38state t38state
unsigned int terminate_while_deferred

Termination requested while termination deferred

Definition at line 219 of file res_pjsip_session.h.


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