Subscription

Keys

Leafs

Children

class Subscriptions.Subscription

Bases: Entity

Class Hierarchy: Subscriptions Subscription

This class represents state data.

Content of a subscription.

Subscriptions can be created using a control channel

or RPC, or be established through configuration.

subscription_id(key)

Identifier of this subscription

type: int

range: 0..4294967295

config: False

configured_subscription

The presence of this leaf indicates that the subscription originated from configuration, not through a control channel or RPC

type: Empty

config: False

subscription_status

The status of the subscription

type: one of the below values: Active

config: False

stream

Indicates which stream of events is of interest. If not present, events in the default NETCONF stream will be sent

type: one of the below values: NETCONF

config: False

encoding

The type of encoding for the subscribed data. Default is XML

type: one of the below values: EncodeXml

config: False

default value: encode-xml

filter

Filter per RFC 5277. Notification filter. If a filter element is specified to look for data of a particular value, and the data item is not present within a particular event notification for its value to be checked against, the notification will be filtered out. For example, if one were to check for ‘severity=critical’ in a configuration event notification where this field was not supported, then the notification would be filtered out. For subtree filtering, a non-empty node set means that the filter matches. For XPath filtering, the mechanisms defined in [XPATH] should be used to convert the returned value to boolean

type: anyxml

config: False

filter_ref

References filter which is associated with the subscription

type: int

range: 0..4294967295

refers to: filter_id

config: False

subtree_filter

Subtree-filter used to specify the data nodes targeted for subscription within a subtree, or subtrees, of a conceptual YANG datastore. Objects matching the filter criteria will traverse the filter. The syntax follows the subtree filter syntax specified in RFC 6241, section 6

type: anyxml

config: False

xpath_filter

Xpath defining the data items of interest

type: str

config: False

starttime

Used to trigger the replay feature and indicate that the replay should start at the time specified. If <startTime> is not present, this is not a replay subscription. It is not valid to specify start times that are later than the current time. If the <startTime> specified is earlier than the log can support, the replay will begin with the earliest available notification. This parameter is of type dateTime and compliant to [RFC3339]. Implementations must support time zones

type: str

pattern: \d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[\+\-]\d{2}:\d{2})

config: False

stoptime

Used with the optional replay feature to indicate the newest notifications of interest. If <stopTime> is not present, the notifications will continue until the subscription is terminated. Must be used with and be later than <startTime>. Values of <stopTime> in the future are valid. This parameter is of type dateTime and compliant to [RFC3339]. Implementations must support time zones

type: str

pattern: \d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[\+\-]\d{2}:\d{2})

config: False

receivers

Set of receivers in a subscription

type: Receivers

config: False

source_interface

References the interface for notifications

type: str

refers to: name

config: False

source_vrf

Label of the vrf

type: int

range: 16..1048574

config: False

source_address

The source address for the notifications

type: union of the below types:

type: str

pattern: (([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])(%[\p{N}\p{L}]+)?

type: str

pattern: ((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))(%[\p{N}\p{L}]+)?

mandatory: True

config: False

period

Duration of time which should occur between periodic push updates. Where the anchor of a start-time is available, the push will include the objects and their values which exist at an exact multiple of timeticks aligning to this start-time anchor

type: int

range: 0..4294967295

mandatory: True

config: False

anchor_time

Designates a timestamp from which the series of periodic push updates are computed. The next update will take place at the next period interval from the anchor time. For example, for an anchor time at the top of a minute and a period interval of a minute, the next update will be sent at the top of the next minute

type: str

pattern: \d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|[\+\-]\d{2}:\d{2})

config: False

no_synch_on_start

This leaf acts as a flag that determines behavior at the start of the subscription. When present, synchronization of state at the beginning of the subscription is outside the scope of the subscription. Only updates about changes that are observed from the start time, i.e. only push-change-update notifications are sent. When absent (default behavior), in order to facilitate a receiver’s synchronization, a full update is sent when the subscription starts using a push-update notification, just like in the case of a periodic subscription. After that, push-change-update notifications only are sent unless the Publisher chooses to resynch the subscription again

type: Empty

config: False

dampening_period

Minimum amount of time that needs to have passed since the last time an update was provided

type: int

range: 0..4294967295

mandatory: True

config: False

excluded_change

Use to restrict which changes trigger an update. For example, if modify is excluded, only creation and deletion of objects is reported

type: list of ChangeType

config: False

dscp

The push update’s IP packet transport priority. This is made visible across network hops to receiver. The transport priority is shared for all receivers of a given subscription

type: int

range: 0..63

config: False

default value: 0

subscription_priority

Relative priority for a subscription. Allows an underlying transport layer perform informed load balance allocations between various subscriptions

type: int

range: 0..255

config: False

subscription_dependency

Provides the Subscription ID of a parent subscription without which this subscription should not exist. In other words, there is no reason to stream these objects if another subscription is missing

type: str

config: False