Asterisk - The Open Source Telephony Project GIT-master-f36a736
Data Fields
sip_subscription_tree Struct Reference

A tree of SIP subscriptions. More...

Collaboration diagram for sip_subscription_tree:
Collaboration graph
[legend]

Data Fields

pjsip_dialog * dlg
 
struct ast_sip_endpointendpoint
 
pjsip_evsub * evsub
 
struct ast_sip_sched_taskexpiration_task
 
unsigned int generate_initial_notify
 
int is_list
 
struct {
   struct sip_subscription_tree *   next
 
next
 
unsigned int notification_batch_interval
 
int notify_sched_id
 
struct subscription_persistencepersistence
 
enum ast_sip_subscription_role role
 
struct ast_sip_subscriptionroot
 
unsigned int send_scheduled_notify
 
struct ast_taskprocessorserializer
 
enum sip_subscription_tree_state state
 
char transport_key [IP6ADDR_COLON_PORT_BUFLEN]
 

Detailed Description

A tree of SIP subscriptions.

Because of the ability to subscribe to resource lists, a SIP subscription can result in a tree of subscriptions being created. This structure represents the information relevant to the subscription as a whole, to include the underlying PJSIP structure for the subscription.

Definition at line 442 of file res_pjsip_pubsub.c.

Field Documentation

◆ dlg

pjsip_dialog* dlg

◆ endpoint

struct ast_sip_endpoint* endpoint

◆ evsub

pjsip_evsub* evsub

◆ expiration_task

struct ast_sip_sched_task* expiration_task

On asterisk restart, this is the task data used to restart the expiration timer if pjproject isn't capable of restarting the timer.

Definition at line 473 of file res_pjsip_pubsub.c.

Referenced by clean_sub_tree(), initial_notify_task(), and pubsub_on_rx_refresh().

◆ generate_initial_notify

unsigned int generate_initial_notify

Indicator if initial notify should be generated. Used to refresh modified RLS.

Definition at line 481 of file res_pjsip_pubsub.c.

Referenced by pubsub_on_refresh_timeout(), and pubsub_on_rx_refresh().

◆ is_list

int is_list

Is this subscription to a list?

Definition at line 464 of file res_pjsip_pubsub.c.

Referenced by create_subscription_tree(), SwaggerType::load(), pubsub_on_rx_refresh(), send_notify(), and sip_subscription_accept().

◆ next [1/2]

struct sip_subscription_tree* next

Definition at line 466 of file res_pjsip_pubsub.c.

Referenced by for_each_subscription(), and remove_subscription().

◆  [2/2]

struct { ... } next

Next item in the list

◆ notification_batch_interval

unsigned int notification_batch_interval

Interval to use for batching notifications

Definition at line 456 of file res_pjsip_pubsub.c.

Referenced by create_subscription_tree(), and schedule_notification().

◆ notify_sched_id

int notify_sched_id

Scheduler ID for batched notification

Definition at line 458 of file res_pjsip_pubsub.c.

Referenced by allocate_subscription_tree(), pubsub_on_rx_refresh(), schedule_notification(), and serialized_send_notify().

◆ persistence

struct subscription_persistence* persistence

◆ role

◆ root

struct ast_sip_subscription* root

◆ send_scheduled_notify

unsigned int send_scheduled_notify

Indicator if scheduled batched notification should be sent

Definition at line 460 of file res_pjsip_pubsub.c.

Referenced by pubsub_on_rx_refresh(), schedule_notification(), send_notify(), and serialized_send_notify().

◆ serializer

◆ state

◆ transport_key

char transport_key[IP6ADDR_COLON_PORT_BUFLEN]

The transport the subscription was received on. Only used for reliable transports.

Definition at line 477 of file res_pjsip_pubsub.c.

Referenced by subscription_persistence_remove(), and subscription_persistence_update().


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