aboutsummaryrefslogtreecommitdiffstats
path: root/sdnr/wt/devicemanager-openroadm/provider/src/main/yang/org-openroadm-device.yang
diff options
context:
space:
mode:
Diffstat (limited to 'sdnr/wt/devicemanager-openroadm/provider/src/main/yang/org-openroadm-device.yang')
-rw-r--r--sdnr/wt/devicemanager-openroadm/provider/src/main/yang/org-openroadm-device.yang2179
1 files changed, 0 insertions, 2179 deletions
diff --git a/sdnr/wt/devicemanager-openroadm/provider/src/main/yang/org-openroadm-device.yang b/sdnr/wt/devicemanager-openroadm/provider/src/main/yang/org-openroadm-device.yang
deleted file mode 100644
index 0180be8f5..000000000
--- a/sdnr/wt/devicemanager-openroadm/provider/src/main/yang/org-openroadm-device.yang
+++ /dev/null
@@ -1,2179 +0,0 @@
-module org-openroadm-device {
- namespace "http://org/openroadm/device";
- prefix org-openroadm-device;
-
- import ietf-yang-types {
- prefix ietf-yang-types;
- revision-date 2013-07-15;
- }
- import ietf-inet-types {
- prefix ietf-inet-types;
- revision-date 2013-07-15;
- }
- import ietf-netconf {
- prefix ietf-nc;
- revision-date 2011-06-01;
- }
- import org-openroadm-common-types {
- prefix org-openroadm-common-types;
- revision-date 2019-11-29;
- }
- import org-openroadm-common-alarm-pm-types {
- prefix org-openroadm-common-alarm-pm-types;
- revision-date 2019-11-29;
- }
- import org-openroadm-common-equipment-types {
- prefix org-openroadm-common-equipment-types;
- revision-date 2019-11-29;
- }
- import org-openroadm-common-state-types {
- prefix org-openroadm-common-state-types;
- revision-date 2019-11-29;
- }
- import org-openroadm-common-amplifier-types {
- prefix org-openroadm-common-amplifier-types;
- revision-date 2019-11-29;
- }
- import org-openroadm-common-link-types {
- prefix org-openroadm-common-link-types;
- revision-date 2019-11-29;
- }
- import org-openroadm-common-node-types {
- prefix org-openroadm-common-node-types;
- revision-date 2019-11-29;
- }
- import org-openroadm-common-optical-channel-types {
- prefix org-openroadm-common-optical-channel-types;
- revision-date 2019-11-29;
- }
- import org-openroadm-device-types {
- prefix org-openroadm-device-types;
- revision-date 2019-11-29;
- }
- import org-openroadm-resource-types {
- prefix org-openroadm-resource-types;
- revision-date 2019-11-29;
- }
- import org-openroadm-physical-types {
- prefix org-openroadm-physical-types;
- revision-date 2019-11-29;
- }
- import org-openroadm-user-mgmt {
- prefix org-openroadm-user-mgmt;
- revision-date 2019-11-29;
- }
- import org-openroadm-port-types {
- prefix org-openroadm-port-types;
- revision-date 2019-11-29;
- }
- import org-openroadm-interfaces {
- prefix org-openroadm-interfaces;
- revision-date 2019-11-29;
- }
- import org-openroadm-swdl {
- prefix org-openroadm-swdl;
- revision-date 2019-11-29;
- }
- import org-openroadm-equipment-states-types {
- prefix org-openroadm-equipment-states-types;
- revision-date 2019-11-29;
- }
- import org-openroadm-switching-pool-types {
- prefix org-openroadm-switching-pool-types;
- revision-date 2019-11-29;
- }
-
- organization
- "Open ROADM MSA";
- contact
- "OpenROADM.org";
- description
- "YANG definitions of ROADM device
- Copyright of the Members of the Open ROADM MSA Agreement dated (c) 2016,
- All other rights reserved.
- Redistribution and use in source and binary forms, with or without modification,
- are permitted provided that the following conditions are met:
- * Redistributions of source code must retain the above copyright notice, this
- list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation and/or
- other materials provided with the distribution.
- * Neither the Members of the Open ROADM MSA Agreement nor the names of its
- contributors may be used to endorse or promote products derived from this software
- without specific prior written permission.
- THIS SOFTWARE IS PROVIDED BY THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT ''AS IS''
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
- IN NO EVENT THE MEMBERS OF THE OPEN ROADM MSA AGREEMENT BE LIABLE FOR ANY DIRECT,
- INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
- NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
- OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- POSSIBILITY OF SUCH DAMAGE.
- Also contains code components extracted from IETF netconf. These code components
- are copyrighted and licensed as follows:
- Copyright (c) 2016 IETF Trust and the persons identified as the document authors.
- All rights reserved.
- This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating
- to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of
- publication of this document. Please review these documents carefully, as they
- describe your rights and restrictions with respect to this document. Code Components
- extracted from this document must include Simplified BSD License text as described in
- Section 4.e of the Trust Legal Provisions and are provided without warranty as
- described in the Simplified BSD License.";
-
- revision 2019-11-29 {
- description
- "Version 6.1.0";
- }
- revision 2019-09-27 {
- description
- "Version 6.0.0";
- }
- revision 2019-05-31 {
- description
- "Version 5.1.0";
- }
- revision 2019-03-29 {
- description
- "Version 5.0.0";
- }
- revision 2018-11-30 {
- description
- "Version 4.1.0";
- }
- revision 2018-09-28 {
- description
- "Version 4.0.0";
- }
- revision 2018-05-30 {
- description
- "Version 3.1.0";
- }
- revision 2018-03-30 {
- description
- "Version 3.0.0";
- }
- revision 2017-12-15 {
- description
- "Version 2.2";
- }
- revision 2017-09-29 {
- description
- "Version 2.1";
- }
- revision 2017-07-28 {
- description
- "Version 2.0.1 - added revision-date to imports";
- }
- revision 2017-06-26 {
- description
- "Version 2.0";
- }
- revision 2017-02-06 {
- description
- "Version 1.2.1 - removed pattern for current-datetime in info tree and rpc";
- }
- revision 2016-10-14 {
- description
- "Version 1.2";
- }
-
- identity connection-direction-identity {
- description
- "Bidrectional capable, or Bi and Unidirectional capable";
- }
-
- identity connection-direction_bi {
- base connection-direction-identity;
- description
- "Bidrectional capable";
- }
-
- identity connection-direction_bi_and_uni {
- base connection-direction-identity;
- description
- "Bi and Unidirectional capable";
- }
-
- typedef interface-ref {
- type leafref {
- path "/org-openroadm-device:org-openroadm-device/org-openroadm-device:interface/org-openroadm-device:name";
- }
- description
- "This type is used by data models that need to reference
- configured interfaces.";
- }
-
- grouping create-tech-info-group {
- leaf shelf-id {
- type leafref {
- path "/org-openroadm-device/shelves/shelf-name";
- }
- description
- "shelf ID";
- }
- leaf log-file-name {
- type string;
- description
- "The log file name a vendor can specify for a given log collection operation";
- }
- }
-
- grouping device-common {
- leaf node-id {
- type org-openroadm-common-node-types:node-id-type;
- default "openroadm";
- description
- "Globally unique identifier for a device.";
- }
- leaf node-number {
- type uint32;
- description
- "Number assigned to a ROADM node at a
- given office";
- }
- leaf node-type {
- type org-openroadm-device-types:node-types;
- config true;
- mandatory true;
- description
- "Identifier for node-type e.g Roadm, xponder.
- Once the node-type is configured, it should not be modified.";
- }
- leaf clli {
- type string;
- description
- "Common Language Location Identifier.";
- }
- uses org-openroadm-physical-types:node-info;
- leaf ipAddress {
- type ietf-inet-types:ip-address;
- description
- "IP Address of device";
- }
- leaf prefix-length {
- type uint8 {
- range "0..128";
- }
- description
- "The length of the subnet prefix";
- }
- leaf defaultGateway {
- type ietf-inet-types:ip-address;
- description
- "Default Gateway";
- }
- leaf source {
- type enumeration {
- enum static {
- value 1;
- }
- enum dhcp {
- value 2;
- }
- }
- config false;
- }
- leaf current-ipAddress {
- type ietf-inet-types:ip-address;
- config false;
- description
- "Current IP Address of device";
- }
- leaf current-prefix-length {
- type uint8 {
- range "0..128";
- }
- config false;
- description
- "The current length of the subnet prefix";
- }
- leaf current-defaultGateway {
- type ietf-inet-types:ip-address;
- config false;
- description
- "Current Default Gateway";
- }
- leaf macAddress {
- type ietf-yang-types:mac-address;
- config false;
- description
- "MAC Address of device";
- }
- leaf softwareVersion {
- type string;
- config false;
- description
- "Software version";
- }
- leaf software-build {
- type string;
- config false;
- description
- "Software build version";
- }
- leaf openroadm-version {
- type org-openroadm-common-types:openroadm-version-type;
- config false;
- description
- "openroadm version used on the device";
- }
- leaf template {
- type string;
- description
- "Template information used in the deployment.";
- }
- leaf current-datetime {
- type ietf-yang-types:date-and-time;
- config false;
- description
- "The current system date and time in UTC. Format: YYYY-MM-DDTHH:MM:SS.mm+ ";
- }
- leaf lifecycle-state {
- type org-openroadm-common-state-types:lifecycle-state;
- description
- "Lifecycle State of the device node. Whether it is planned, deployed, in maintenance, etc.";
- }
- container geoLocation {
- description
- "GPS location";
- leaf latitude {
- type decimal64 {
- fraction-digits 16;
- range "-90 .. 90";
- }
- description
- "[From wikipedia] Latitude is an angle (defined below)
- which ranges from 0 at the Equator to 90 (North or
- South) at the poles";
- }
- leaf longitude {
- type decimal64 {
- fraction-digits 16;
- range "-180 .. 180";
- }
- description
- "[From wikipedia] The longitude is measured as the
- angle east or west from the Prime Meridian, ranging
- from 0 at the Prime Meridian to +180 eastward and
- -180 westward.";
- }
- }
- }
-
- grouping slot-info {
- description
- "slots information. To be populated by NE during retrieval.";
- leaf slot-name {
- type string;
- description
- "The name of this slot.";
- }
- leaf label {
- type string;
- description
- "Faceplate label";
- }
- leaf provisioned-circuit-pack {
- type leafref {
- path "/org-openroadm-device/circuit-packs/circuit-pack-name";
- }
- description
- "The supported circuit-pack. It will be empty if holder status is empty-not-prov, or installed-not-prov";
- }
- leaf slot-status {
- type enumeration {
- enum empty-not-prov {
- value 1;
- description
- "Slot is empty and not provisioned";
- }
- enum empty-prov-match {
- value 2;
- status deprecated;
- description
- "(Deprecated) Slot is empty and expected type is provisioned";
- }
- enum empty-prov-mismatch {
- value 3;
- status deprecated;
- description
- "(Deprecated) Slot is empty and an unsupported type is provisioned";
- }
- enum installed-not-prov {
- value 4;
- description
- "Slot is occupied but not provisioned";
- }
- enum installed-prov-match {
- value 5;
- description
- "Slot is occupied with matching provisioned type";
- }
- enum installed-prov-mismatch {
- value 6;
- description
- "Slot is occupied with mismatched provisioned type";
- }
- enum empty-prov {
- value 7;
- description
- "Slot is empty and provisioned";
- }
- }
- }
- }
-
- grouping shelves {
- list shelves {
- key "shelf-name";
- uses shelf;
- }
- }
-
- grouping user-description-grp {
- description
- "user description group";
- leaf user-description {
- type string;
- description
- "user provided description";
- }
- }
-
- grouping shelf {
- leaf shelf-name {
- type string;
- description
- "Unique identifier for this shelf within a device";
- }
- leaf shelf-type {
- type string;
- mandatory true;
- description
- "The shelf type: describe the shelf with a unique string.";
- }
- leaf rack {
- type string;
- description
- "Reflect the shelf physical location data including floor, aisle, bay values.";
- }
- leaf shelf-position {
- type string;
- description
- "Reflect the shelf vertical position within an equipment bay.";
- }
- leaf lifecycle-state {
- type org-openroadm-common-state-types:lifecycle-state;
- description
- "Lifecycle State of shelf. Whether it is planned, deployed, in maintenance, etc.";
- }
- leaf administrative-state {
- type org-openroadm-equipment-states-types:admin-states;
- mandatory true;
- description
- "Admin State of the shelf";
- }
- uses org-openroadm-physical-types:common-info;
- leaf equipment-state {
- type org-openroadm-equipment-states-types:states;
- description
- "equipment state for the shelf, used to track the lifecycle state.";
- }
- leaf is-physical {
- type boolean;
- config false;
- mandatory true;
- description
- "is the entity physical or logical";
- }
- leaf is-passive {
- type boolean;
- config false;
- mandatory true;
- description
- "is the entity passive and not actively managed by the device;
- e.g., no physical inventory or plug-in notification supported";
- }
- leaf faceplate-label {
- type string;
- config false;
- mandatory true;
- description
- "label on the faceplace silk screening";
- }
- uses user-description-grp;
- leaf due-date {
- type ietf-yang-types:date-and-time;
- description
- "due date for the shelf.";
- }
- list slots {
- key "slot-name";
- config false;
- description
- "List of slots on this shelf. To be populated by NE during retrieval.";
- uses slot-info;
- }
- }
-
- grouping circuit-packs {
- list circuit-packs {
- key "circuit-pack-name";
- description
- "List of circuit packs. This includes common equipment, like fans, power supplies, etc.";
- leaf circuit-pack-type {
- type string;
- mandatory true;
- description
- "Type of circuit-pack";
- }
- leaf circuit-pack-product-code {
- type string;
- description
- "Product Code for the circuit-pack";
- }
- uses circuit-pack;
- }
- }
-
- grouping circuit-pack-features {
- leaf software-load-version {
- type string;
- config false;
- description
- "Software version running on the circuit pack.";
- }
- list circuit-pack-features {
- key "to-be-deleted";
- config false;
- leaf to-be-deleted {
- type string;
- description
- "Key to be deleted.";
- }
- container feature {
- description
- "List of features supported by the installed load and indications on whether the features have been applied or not.";
- leaf description {
- type string;
- description
- "Feature description.";
- }
- leaf boot {
- type boolean;
- description
- "Flag to indicate boot loader or unprotected firmware update required";
- }
- leaf activated {
- type boolean;
- description
- "Indicator if the feature has been activated.";
- }
- }
- }
- list circuit-pack-components {
- key "to-be-deleted";
- config false;
- leaf to-be-deleted {
- type string;
- description
- "Key to be deleted.";
- }
- container component {
- description
- "Optional list of components on the circuit-pack and the load information applicable to those components. If a load is not up to date and will upgrade when a cold restart occurs, the version that will be applied should also be listed. If there is no misalignment, this does not need to be reported.";
- leaf name {
- type string;
- description
- "Name of a component on the circuit-pack that can have a load applied to it.";
- }
- leaf boot {
- type boolean;
- description
- "Flag to indicate boot loader or unprotected firmware update required";
- }
- leaf current-version {
- type string;
- description
- "Name of the load version currently running on the component.";
- }
- leaf version-to-apply {
- type string;
- description
- "Name of the load version for the component that will be applied when cold restart occurs on the circuit-pack.";
- }
- }
- }
- }
-
- grouping circuit-pack {
- leaf circuit-pack-name {
- type string;
- description
- "Unique identifier for this circuit-pack within a device";
- }
- leaf lifecycle-state {
- type org-openroadm-common-state-types:lifecycle-state;
- description
- "Lifecycle State of circuit-pack. Whether it is planned, deployed, in maintenance, etc.";
- }
- leaf administrative-state {
- type org-openroadm-equipment-states-types:admin-states;
- mandatory true;
- description
- "Administrative state of circuit-pack";
- }
- uses org-openroadm-physical-types:common-info;
- container circuit-pack-category {
- config false;
- description
- "General type of circuit-pack";
- uses org-openroadm-common-equipment-types:equipment-type;
- }
- leaf equipment-state {
- type org-openroadm-equipment-states-types:states;
- description
- "Equipment state, which complements operational state.";
- }
- leaf circuit-pack-mode {
- type string;
- default "NORMAL";
- description
- "Circuit-pack mode allowed. e.g. NORMAL or REGEN";
- }
- leaf shelf {
- type leafref {
- path "/org-openroadm-device/shelves/shelf-name";
- }
- mandatory true;
- }
- leaf slot {
- type string;
- mandatory true;
- }
- leaf subSlot {
- type string;
- mandatory false;
- }
- leaf is-pluggable-optics {
- type boolean;
- config false;
- mandatory true;
- description
- "True if circuitpack is pluggable optics";
- }
- leaf is-physical {
- type boolean;
- config false;
- mandatory true;
- description
- "is the entity physical or logical";
- }
- leaf is-passive {
- type boolean;
- config false;
- mandatory true;
- description
- "is the entity passive and not actively managed by the device;
- e.g., no physical inventory or plug-in notification supported";
- }
- leaf faceplate-label {
- type string;
- config false;
- mandatory true;
- description
- "label on the faceplace silk screening";
- }
- uses user-description-grp;
- leaf due-date {
- type ietf-yang-types:date-and-time;
- description
- "due date for this circuit-pack.";
- }
- container parent-circuit-pack {
- description
- "In the case of circuit packs that contain other equipment (modules or pluggables), this captures the hierarchy of that equipment. It is a vendor specific design decision if the ports for single-port pluggables are modeled as children of the parent circuit-pack, or as children of the pluggable circuit-pack contained in the parent circuit-pack. For modules with multiple ports, it is recommended that ports be children of the module and not the carrier, to help in fault correlation and isolation in the case of a module failure.";
- uses circuit-pack-name-g;
- leaf cp-slot-name {
- type string;
- description
- "Slot name on parent-circuit-pack.";
- }
- }
- list cp-slots {
- key "slot-name";
- config false;
- description
- "List of circuit-pack slots on this circuit-pack. To be populated by NE during retrieval.";
- uses slot-info;
- leaf slot-type {
- type enumeration {
- enum pluggable-optics-holder {
- value 1;
- description
- "slot accepts dedicated pluggable port circuit-pack";
- }
- enum other {
- value 2;
- description
- "slot accepts parent circuit-pack";
- }
- }
- }
- }
- uses circuit-pack-features;
- list ports {
- key "port-name";
- description
- "List of ports on this circuit-pack. Note that pluggables are considered independent circuit-packs. All ports that are physically present on a pluggable, need to be modeled as a port against that pluggable circuit-pack, and not against the parent circuit-pack.";
- uses port;
- container roadm-port {
- when "../port-qual='roadm-external'";
- uses org-openroadm-port-types:roadm-port;
- }
- container transponder-port {
- when "../port-qual='xpdr-network' or ../port-qual='xpdr-client' or ../port-qual='switch-network' or ../port-qual='switch-client'";
- uses org-openroadm-port-types:common-port;
- }
- container otdr-port {
- when "../port-qual='otdr'";
- description
- "Settings for otdr port.";
- leaf launch-cable-length {
- type uint32;
- units "m";
- default "30";
- }
- leaf port-direction {
- type org-openroadm-common-alarm-pm-types:direction;
- }
- }
- container ila-port {
- when "../port-qual='ila-external'";
- uses org-openroadm-port-types:common-port;
- }
- }
- }
-
- grouping odu-connection {
- description
- "Grouping used to define odu-connections.";
- leaf connection-name {
- type string;
- description
- "roadm-connection and odu-connection share the same resource-type and resource definition (e.g. connection)";
- }
- leaf direction {
- type enumeration {
- enum unidirectional {
- value 1;
- }
- enum bidirectional {
- value 2;
- }
- }
- default "bidirectional";
- description
- "Directionality of connection. If bidirectional, both directions are created.";
- }
- container source {
- leaf src-if {
- type leafref {
- path "/org-openroadm-device/interface/name";
- }
- mandatory true;
- }
- }
- container destination {
- leaf dst-if {
- type leafref {
- path "/org-openroadm-device/interface/name";
- }
- mandatory true;
- }
- }
- }
-
- grouping connection {
- description
- "Grouping used to define connections.";
- leaf connection-name {
- type string;
- }
- leaf opticalControlMode {
- type org-openroadm-common-link-types:optical-control-mode;
- default "off";
- description
- "Whether connection is currently in power or gain/loss mode";
- reference "openroadm.org: Open ROADM MSA Specification.";
- }
- leaf target-output-power {
- type org-openroadm-common-link-types:power-dBm;
- description
- "The output target power for this connection. When set, the ROADM will work to ensure that current-output-power reaches this level.";
- }
- container source {
- leaf src-if {
- type leafref {
- path "/org-openroadm-device/interface/name";
- }
- mandatory true;
- }
- }
- container destination {
- leaf dst-if {
- type leafref {
- path "/org-openroadm-device/interface/name";
- }
- mandatory true;
- }
- }
- }
-
- grouping mc-capabilities-grp {
- description
- "Media channel capabilities grouping";
- leaf-list mc-capabilities {
- type leafref {
- path "/org-openroadm-device/mc-capability-profile/profile-name";
- }
- config false;
- description
- "Media channel capabilities";
- }
- }
-
- grouping degree {
- leaf degree-number {
- type uint16;
- must 'not( current() > /org-openroadm-device/info/max-degrees) and current() > 0' {
- error-message "Degree not supported by device ";
- description
- "Validating if the degree is supported by device";
- }
- }
- leaf lifecycle-state {
- type org-openroadm-common-state-types:lifecycle-state;
- description
- "Lifecycle State of degree. Whether it is planned, deployed, in maintenance, etc.";
- }
- leaf max-wavelengths {
- type uint16;
- config false;
- mandatory true;
- description
- "maximum number of wavelengths";
- }
- list circuit-packs {
- key "index";
- description
- "list for Cards associated with a degree";
- leaf index {
- type uint32;
- }
- uses circuit-pack-name-g {
- refine "circuit-pack-name" {
- mandatory true;
- }
- }
- }
- list connection-ports {
- key "index";
- description
- "Port associated with degree: One if bi-directional; two if uni-directional";
- leaf index {
- type uint32;
- }
- uses port-name {
- refine "circuit-pack-name" {
- mandatory true;
- }
- refine "port-name" {
- mandatory true;
- }
- }
- }
- container otdr-port {
- description
- "otdr port associated with degree.";
- uses port-name;
- }
- uses mc-capabilities-grp;
- }
-
- grouping amplifier {
- leaf amp-number {
- type uint8 {
- range "1..128";
- }
- description
- "Unique identifier/number for the amplifier entry which corresponds to a logical amplifier";
- }
- leaf amp-type {
- type org-openroadm-common-amplifier-types:amplifier-types;
- config false;
- mandatory true;
- description
- "Amplifier type";
- }
- leaf control-mode {
- type org-openroadm-common-amplifier-types:line-amplifier-control-mode;
- default "off";
- description
- "Whether the line amplifier is currently in off or gainLoss mode. control-mode can only be set to gainLoss when target-gain, target-tilt and egress-average-channel-power are set and the OMS interfaces are provisioned. The amplifier will be turned off when the control-mode is set to off";
- }
- leaf amp-gain-range {
- type org-openroadm-common-amplifier-types:amplifier-gain-range;
- default "gain-range-1";
- config false;
- description
- "Amplifier gain-range (gain-range 1 to 4 for switched gain amplifiers)
- gain-range-1 (default value) for standard amplifiers";
- }
- leaf target-gain {
- type org-openroadm-common-link-types:ratio-dB;
- config true;
- description
- "Target overall Amplifier Signal gain, excluding ASE, including VOA attenuation.
- Defined as optional for ODL support, but shall be considered as mandatory and provided
- by the controller when the control-mode is set to gainLoss for amplifier setting";
- }
- leaf target-tilt {
- type org-openroadm-common-link-types:ratio-dB;
- config true;
- description
- "Target tilt configured in case of smart EDFA.
- Tilt value provided as specified in Open-ROADM-MSA-specifications spreadsheet
- Defined as optional for ODL support, but shall be considered as mandatory and provided
- by the controller when the control-mode is set to gainLoss for amplifier setting";
- }
- leaf egress-average-channel-power {
- type org-openroadm-common-link-types:power-dBm;
- config true;
- description
- "Based upon the total max power across the 4.8 THz passband.
- Defined as optional for ODL support, but shall be considered as mandatory and provided
- by the controller when the control-mode is set to gainLoss for amplifier setting";
- }
- leaf out-voa-att {
- type org-openroadm-common-link-types:ratio-dB;
- config false;
- description
- "Used to provide the value output VOA attenuation, optional";
- }
- leaf partner-amp {
- type leafref {
- path "/org-openroadm-device/line-amplifier/amp-number";
- }
- config false;
- description
- "amp-number of amp module that is functionally associated to the amplifier
- in the opposite direction";
- }
- leaf ila-direction-label {
- type string;
- description
- "Amplifier direction. Each operators may have its own naming convention.
- Shall be consistent with tx-instance-port-direction-label and rx-instance-port-direction-label.";
- }
- leaf lifecycle-state {
- type org-openroadm-common-state-types:lifecycle-state;
- description
- "Lifecycle State of the amplifier. Whether it is planned, deployed, in maintenance, etc.";
- }
- }
-
- grouping external-links {
- description
- "YANG definitions for external links..
- - physical links between ROADMs and between the ROADMs and XPonders, which can be added and removed manually.";
- list external-link {
- key "external-link-name";
- uses external-link;
- }
- }
-
- grouping external-link {
- leaf external-link-name {
- type string;
- }
- container source {
- uses org-openroadm-resource-types:device-id {
- refine "node-id" {
- mandatory true;
- }
- }
- uses org-openroadm-resource-types:port-name {
- refine "circuit-pack-name" {
- mandatory true;
- }
- refine "port-name" {
- mandatory true;
- }
- }
- }
- container destination {
- uses org-openroadm-resource-types:device-id {
- refine "node-id" {
- mandatory true;
- }
- }
- uses org-openroadm-resource-types:port-name {
- refine "circuit-pack-name" {
- mandatory true;
- }
- refine "port-name" {
- mandatory true;
- }
- }
- }
- }
-
- grouping internal-links {
- list internal-link {
- key "internal-link-name";
- config false;
- uses internal-link;
- }
- }
-
- grouping internal-link {
- leaf internal-link-name {
- type string;
- }
- container source {
- uses port-name {
- refine "circuit-pack-name" {
- mandatory true;
- }
- refine "port-name" {
- mandatory true;
- }
- }
- }
- container destination {
- uses port-name {
- refine "circuit-pack-name" {
- mandatory true;
- }
- refine "port-name" {
- mandatory true;
- }
- }
- }
- }
-
- grouping physical-links {
- description
- "YANG definitions for physical links.
- - physical links (fiber, cables,etc.) between ports within a node. ";
- list physical-link {
- key "physical-link-name";
- uses physical-link;
- }
- }
-
- grouping physical-link {
- leaf physical-link-name {
- type string;
- }
- leaf is-physical {
- type boolean;
- description
- "is the entity physical or logical";
- }
- uses user-description-grp;
- container source {
- uses port-name {
- refine "circuit-pack-name" {
- mandatory true;
- }
- refine "port-name" {
- mandatory true;
- }
- }
- }
- container destination {
- uses port-name {
- refine "circuit-pack-name" {
- mandatory true;
- }
- refine "port-name" {
- mandatory true;
- }
- }
- }
- leaf lifecycle-state {
- type org-openroadm-common-state-types:lifecycle-state;
- description
- "Lifecycle State of the physical link. Whether it is planned, deployed, in maintenance, etc.";
- }
- }
-
- grouping srg {
- leaf max-add-drop-ports {
- type uint16;
- config false;
- mandatory true;
- description
- "The max number of ports available for a given srg";
- }
- leaf current-provisioned-add-drop-ports {
- type uint16;
- config false;
- mandatory true;
- description
- "The number of ports currently provisioned for a given srg.";
- }
- leaf srg-number {
- type uint16;
- must 'not(current()>/org-openroadm-device/info/max-srgs) and current()>0' {
- error-message "invalid SRG";
- description
- "Validating if the srg is supported by add/drop group";
- }
- }
- leaf lifecycle-state {
- type org-openroadm-common-state-types:lifecycle-state;
- description
- "Lifecycle State of shared-risk-group. Whether it is planned, deployed, in maintenance, etc.";
- }
- leaf wavelength-duplication {
- type org-openroadm-common-optical-channel-types:wavelength-duplication-type;
- config false;
- mandatory true;
- description
- "Whether the SRG can handle duplicate wavelengths and if so to what extent.";
- }
- list circuit-packs {
- key "index";
- description
- "list for Cards associated with an add/drop group and srg";
- leaf index {
- type uint32;
- }
- uses circuit-pack-name-g {
- refine "circuit-pack-name" {
- mandatory true;
- }
- }
- }
- uses mc-capabilities-grp;
- }
-
- grouping xponder {
- leaf xpdr-number {
- type uint16;
- must 'current() > 0' {
- error-message "Xponder not supported by device ";
- description
- "Validating if the Xponder is supported by device";
- }
- }
- leaf xpdr-type {
- type org-openroadm-device-types:xpdr-node-types;
- mandatory true;
- description
- "Identifier for xponder-type e.g Transponder, Muxponder";
- }
- leaf lifecycle-state {
- type org-openroadm-common-state-types:lifecycle-state;
- description
- "Lifecycle State of xponder. Whether it is planned, deployed, in maintenance, etc.";
- }
- leaf recolor {
- type boolean;
- config false;
- description
- "Indication if recolor is supported";
- }
- list xpdr-port {
- key "index";
- description
- "Network Ports with in a Xponder";
- leaf index {
- type uint32;
- }
- uses port-name {
- refine "circuit-pack-name" {
- mandatory true;
- }
- refine "port-name" {
- mandatory true;
- }
- }
- leaf eqpt-srg-id {
- type uint32;
- description
- "Shared Risk Group identifier. All ports in a circuit-pack will have same srg-id";
- }
- }
- }
-
- grouping degree-number {
- leaf degree-number {
- type leafref {
- path "/org-openroadm-device/degree/degree-number";
- }
- description
- "Degree identifier. Unique within the context of a device.";
- }
- }
-
- grouping circuit-pack-name-g {
- leaf circuit-pack-name {
- type leafref {
- path "/org-openroadm-device/circuit-packs/circuit-pack-name";
- }
- description
- "Circuit-Pack identifier. Unique within the context of a device.";
- }
- }
-
- grouping port-name {
- uses circuit-pack-name-g;
- leaf port-name {
- type leafref {
- path "/org-openroadm-device/circuit-packs[circuit-pack-name=current()/../circuit-pack-name]/ports/port-name";
- }
- description
- "Port identifier. Unique within the context of a circuit-pack.";
- }
- }
-
- grouping srg-number {
- leaf srg-number {
- type leafref {
- path "/org-openroadm-device/shared-risk-group/srg-number";
- }
- description
- "Shared Risk Group identifier. Unique within the context of a device.";
- }
- }
-
- grouping supporting-port-name {
- leaf supporting-circuit-pack-name {
- type leafref {
- path "/org-openroadm-device/circuit-packs/circuit-pack-name";
- }
- description
- "Identifier of the supporting circuit-pack.";
- }
- leaf supporting-port {
- type leafref {
- path "/org-openroadm-device/circuit-packs[circuit-pack-name=current()/../supporting-circuit-pack-name]/ports/port-name";
- }
- description
- "Identifier of the supporting port.";
- }
- }
-
- grouping supporting-circuit-pack-list-grp {
- description
- "supporting circuit pack list grouping";
- list supporting-port-list {
- key "index";
- description
- "supporting port list";
- leaf index {
- type uint8;
- description
- "supporting circuit pack index";
- }
- leaf circuit-pack-name {
- type leafref {
- path "/org-openroadm-device/circuit-packs/circuit-pack-name";
- }
- mandatory true;
- description
- "The supported circuit-pack. It will be empty if holder status is empty-not-prov, or installed-not-prov";
- }
- leaf-list port-list {
- type leafref {
- path "/org-openroadm-device/circuit-packs[circuit-pack-name=current()/../circuit-pack-name]/ports/port-name";
- }
- description
- "port list";
- }
- }
- }
-
- grouping interface-name {
- description
- "interface name grouping";
- leaf interface-name {
- type leafref {
- path "/org-openroadm-device/interface/name";
- }
- config false;
- description
- "Name of an interface. Unique within the context of a device.";
- }
- }
-
- grouping interfaces-grp {
- description
- "OpenROADM Interface configuration parameters.";
- list interface {
- key "name";
- description
- "The list of configured interfaces on the device.";
- leaf name {
- type string;
- description
- "The name of the interface.";
- }
- leaf description {
- type string;
- description
- "A textual description of the interface.";
- }
- leaf type {
- type identityref {
- base org-openroadm-interfaces:interface-type;
- }
- mandatory true;
- description
- "The type of the interface.";
- }
- leaf lifecycle-state {
- type org-openroadm-common-state-types:lifecycle-state;
- description
- "Lifecycle State of interface. Whether it is planned, deployed, in maintenance, etc.";
- }
- leaf administrative-state {
- type org-openroadm-equipment-states-types:admin-states;
- mandatory true;
- }
- leaf operational-state {
- type org-openroadm-common-state-types:state;
- config false;
- mandatory true;
- }
- leaf circuit-id {
- type string {
- length "0..45";
- }
- description
- "circuit identifier/user label,
- can be used in alarm correlation and/or connection management ";
- }
- leaf supporting-interface {
- type leafref {
- path "/org-openroadm-device/interface/name";
- }
- description
- "supporting interface";
- }
- uses supporting-port-name;
- leaf-list supporting-interface-list {
- type leafref {
- path "/org-openroadm-device/interface/name";
- }
- description
- "supporting interface list";
- }
- uses supporting-circuit-pack-list-grp;
- }
- }
-
- grouping protection-groups {
- description
- "OpenROADM facility protection configuration parameters.";
- container protection-grps {
- description
- "The list of configured protection groups on the device.";
- }
- }
-
- grouping port {
- description
- "Grouping of attributes related to a port object.";
- leaf port-name {
- type string;
- mandatory true;
- description
- "Identifier for a port, unique within a circuit pack";
- }
- uses supporting-circuit-pack-list-grp;
- leaf port-type {
- type string;
- description
- "Type of the pluggable or fixed port.";
- }
- leaf port-qual {
- type org-openroadm-device-types:port-qual;
- }
- leaf port-wavelength-type {
- type org-openroadm-port-types:port-wavelength-types;
- config false;
- description
- "Type of port - single, multiple-wavelength, etc.";
- }
- leaf port-direction {
- type org-openroadm-common-alarm-pm-types:direction;
- config false;
- mandatory true;
- description
- "Whether port is uni (tx/rx) or bi-directional and";
- }
- leaf label {
- type string;
- config false;
- status deprecated;
- description
- "Faceplate label";
- }
- leaf is-physical {
- type boolean;
- config false;
- mandatory true;
- description
- "is the entity physical or logical";
- }
- leaf faceplate-label {
- type string;
- config false;
- mandatory true;
- description
- "label on the faceplace silk screening";
- }
- uses user-description-grp;
- leaf circuit-id {
- type string {
- length "0..45";
- }
- description
- "circuit identifier/user label,
- can be used in alarm correlation and/or connection management ";
- }
- leaf lifecycle-state {
- type org-openroadm-common-state-types:lifecycle-state;
- description
- "Lifecycle State of port. Whether it is planned, deployed, in maintenance, etc.";
- }
- leaf administrative-state {
- type org-openroadm-equipment-states-types:admin-states;
- default "outOfService";
- description
- "Administrative state of port. The value of this field independent of the state of its contained and containing resources. Setting this a port to administratively down will impact both its operational state, as well the operational state of its contained resources. If this port is an endpoint to a connection, internal-link, physical-link, etc, then administratively disabling this port will impact the operational state of those items unless they are using some form of port-protection schema.";
- }
- leaf operational-state {
- type org-openroadm-common-state-types:state;
- config false;
- mandatory true;
- description
- "Operational state of a port";
- }
- leaf-list supported-interface-capability {
- type identityref {
- base org-openroadm-port-types:supported-if-capability;
- }
- config false;
- description
- "Interface types supported on this port";
- }
- leaf logical-connection-point {
- type string;
- description
- "delete or replace with list logical-ports or connections?";
- }
- container partner-port {
- config false;
- description
- "For ports which are not identified as having a direction of bidirectional, this field is used to identify the port which corresponds to the reverse direction. A port pair should include a port for each direction (tx, rx) and report their mate as partner-port.";
- uses port-name;
- }
- container parent-port {
- config false;
- description
- "In the case of port hierarchy, this is the parent port, which is also modeled as port within this circuit-pack. This is used in the case of a port that supports a parallel connector that contains subports. The parent-port of the subport will be the port that contains this subport. This can be used to help isolate faults when a single fault on a parallel connector introduces symptomatic failures on the contained subports.";
- uses port-name;
- }
- list interfaces {
- key "interface-name";
- config false;
- description
- "List of the interfaces this port supports. This is a list of names of instances in the flat instance list. Implementations must provide the list of interfaces for port that has interfaces provisioned on that port.";
- uses interface-name;
- }
- uses mc-capabilities-grp;
- }
-
- // grouping org-openroadm-device-container-g {
- container org-openroadm-device {
- container info {
- uses device-common;
- leaf max-degrees {
- type uint16;
- config false;
- description
- "Max. number of degrees supported by device";
- }
- leaf max-srgs {
- type uint16;
- config false;
- description
- "Max. number of SRGs in an add/drop group";
- }
- leaf max-num-bin-15min-historical-pm {
- type uint16;
- config false;
- description
- "Max. number of bin the NE support for 15min historical PM";
- }
- leaf max-num-bin-24hour-historical-pm {
- type uint16;
- config false;
- description
- "Max. number of bin the NE support for 24hour historical PM";
- }
- }
- container users {
- description
- "Stores a list of users";
- uses org-openroadm-user-mgmt:user-profile;
- }
- container pending-sw {
- config false;
- description
- "pending software information";
- uses org-openroadm-swdl:sw-bank;
- }
- container database-info {
- config false;
- description
- "database restore information";
- uses org-openroadm-swdl:database-info-group;
- }
- uses shelves;
- uses circuit-packs;
- uses interfaces-grp;
- uses protection-groups;
- container protocols {
- description
- "Contains the supported protocols";
- leaf lifecycle-state {
- type org-openroadm-common-state-types:lifecycle-state;
- description
- "Lifecycle State of the protocols. Whether it is planned or deployed, etc.";
- }
- }
- uses internal-links;
- uses physical-links;
- uses external-links;
- list degree {
- when "/org-openroadm-device/info/node-type='rdm'";
- key "degree-number";
- uses degree;
- }
- list shared-risk-group {
- when "/org-openroadm-device/info/node-type='rdm'";
- key "srg-number";
- uses srg;
- }
- list line-amplifier {
- when "/org-openroadm-device/info/node-type='ila'";
- key "amp-number";
- description
- "lists amplifiers in different directions";
- uses amplifier;
- list circuit-pack {
- key "index";
- description
- "list for Cards associated with an amplifier";
- leaf index {
- type uint32;
- }
- uses circuit-pack-name-g {
- refine "circuit-pack-name" {
- mandatory true;
- }
- }
- }
- list line-port {
- key "port-direction";
- description
- "Port associated with an amplifier which face the line (ila-external): traffic port.";
- leaf port-direction {
- type org-openroadm-common-alarm-pm-types:direction;
- config true;
- mandatory true;
- description
- "partly allows identifying ports associated with logical amp :TX for egress, RX for ingress
- TXRX in case of bidirectional port";
- }
- leaf tx-instance-port-direction-label {
- type string;
- config true;
- description
- "Complements ports identification. Used notably in case of bidirectional ports,
- and/or in multi-degree amplifier nodes. Allows associating one of the directions
- specified in ila-direction-label. Shall be consistent with ila-direction-label";
- }
- leaf rx-instance-port-direction-label {
- type string;
- config true;
- description
- "Complements ports identification. Used notably in case of bidirectional ports,
- and/or in multi-degree amplifier nodes. Allows associating one of the directions
- specified in ila-direction-label. Shall be consistent with ila-direction-label";
- }
- uses port-name {
- refine "circuit-pack-name" {
- mandatory true;
- }
- refine "port-name" {
- mandatory true;
- }
- }
- }
- list osc-port {
- key "port-direction";
- description
- "Ports associated with OSC";
- leaf port-direction {
- type org-openroadm-common-alarm-pm-types:direction;
- config true;
- mandatory true;
- description
- "allows identifying ports associated with logical amp :
- TX for OSC circuit-pack IN RX for OSC circuit-pack OUT";
- }
- uses port-name {
- refine "circuit-pack-name" {
- mandatory true;
- }
- refine "port-name" {
- mandatory true;
- }
- }
- }
- list otdr-port {
- key "otdr-direction";
- description
- "otdr ports associated with an ILA";
- leaf otdr-direction {
- type string;
- config true;
- description
- "allows identifying associated logical amp port in which OTDR is launched:
- corresponds to rx-instance-port-direction-label of corresponding amplifier line-port";
- }
- uses port-name {
- refine "circuit-pack-name" {
- mandatory true;
- }
- refine "port-name" {
- mandatory true;
- }
- }
- }
- }
- list xponder {
- when "/org-openroadm-device/info/node-type='xpdr'";
- key "xpdr-number";
- uses xponder;
- }
- list roadm-connections {
- when "/org-openroadm-device/info/node-type='rdm'";
- key "connection-name";
- uses connection;
- }
- list odu-connection {
- when "/org-openroadm-device/info/node-type='xpdr'";
- key "connection-name";
- uses odu-connection;
- }
- list connection-map {
- key "connection-map-number";
- config false;
- leaf connection-map-number {
- type uint32;
- description
- "Unique identifier for this connection-map entry";
- }
- container source {
- leaf circuit-pack-name {
- type leafref {
- path "/org-openroadm-device/circuit-packs/circuit-pack-name";
- }
- mandatory true;
- }
- leaf port-name {
- type leafref {
- path "/org-openroadm-device/circuit-packs[circuit-pack-name=current()/../circuit-pack-name]/ports/port-name";
- }
- mandatory true;
- description
- "Port identifier. Unique within the context of a circuit-pack.";
- }
- }
- list destination {
- key "circuit-pack-name port-name";
- min-elements 1;
- leaf circuit-pack-name {
- type leafref {
- path "/org-openroadm-device/circuit-packs/circuit-pack-name";
- }
- mandatory true;
- }
- leaf port-name {
- type leafref {
- path "/org-openroadm-device/circuit-packs[circuit-pack-name=current()/../circuit-pack-name]/ports/port-name";
- }
- mandatory true;
- description
- "Port identifier. Unique within the context of a circuit-pack.";
- }
- }
- }
- list odu-switching-pools {
- when "/org-openroadm-device/info/node-type='xpdr'";
- key "switching-pool-number";
- config false;
- leaf switching-pool-number {
- type uint16;
- description
- "Unique identifier for this odu-switching-pool";
- }
- leaf switching-pool-type {
- type org-openroadm-switching-pool-types:switching-pool-types;
- description
- "Blocking/Non-Blocking";
- }
- leaf odu-connection-direction-capabilities {
- type identityref {
- base connection-direction-identity;
- }
- description
- "Bidrectional capable, or Bi and Unidirectional capable";
- }
- list non-blocking-list {
- key "nbl-number";
- config false;
- description
- "List of ports in a non-blocking switch element";
- leaf nbl-number {
- type uint16;
- description
- "Identifier for this non-blocking-list. Unique within odu-switching-pool";
- }
- leaf interconnect-bandwidth-unit {
- type uint32;
- config false;
- description
- "Switch fabric interconnect bandwidth unit rate in bits per second.
- Represents granularity of switch fabric";
- }
- leaf interconnect-bandwidth {
- type uint32;
- config false;
- description
- "Total interconnect bandwidth for a non-blocking element expressed as
- number of inter-connect-bandwidth units";
- }
- list port-list {
- key "circuit-pack-name port-name";
- leaf circuit-pack-name {
- type leafref {
- path "/org-openroadm-device/circuit-packs/circuit-pack-name";
- }
- config false;
- }
- leaf port-name {
- type leafref {
- path "/org-openroadm-device/circuit-packs/ports/port-name";
- }
- config false;
- description
- "Port name. Unique within device";
- }
- }
- list pluggable-optics-holder-list {
- key "circuit-pack-name slot-name";
- leaf circuit-pack-name {
- type leafref {
- path "/org-openroadm-device/circuit-packs/circuit-pack-name";
- }
- config false;
- description
- "Name of parent circuit-pack";
- }
- leaf slot-name {
- type leafref {
- path "/org-openroadm-device/circuit-packs/cp-slots/slot-name";
- }
- config false;
- description
- "Name of pluggable-optics-holder";
- }
- }
- }
- }
- list mc-capability-profile {
- key "profile-name";
- config false;
- description
- "Media channel capability profile list";
- leaf profile-name {
- type string;
- description
- "Media channel profile name";
- }
- leaf center-freq-granularity {
- type org-openroadm-common-optical-channel-types:frequency-GHz;
- default "50";
- config false;
- description
- "Granularity of allowed center frequencies. The base frequency for this computation is 193.1 THz (G.694.1)";
- }
- leaf min-edge-freq {
- type org-openroadm-common-optical-channel-types:frequency-THz;
- config false;
- description
- "Minimum edge frequency";
- }
- leaf max-edge-freq {
- type org-openroadm-common-optical-channel-types:frequency-THz;
- config false;
- description
- "Maximum edge frequency";
- }
- leaf slot-width-granularity {
- type org-openroadm-common-optical-channel-types:frequency-GHz;
- default "50";
- config false;
- description
- "Width of a slot measured in GHz.";
- }
- leaf min-slots {
- type uint32;
- default "1";
- config false;
- description
- "Minimum number of slots permitted to be joined together to form a media channel. Must be less than or equal to the max-slots";
- }
- leaf max-slots {
- type uint32;
- default "1";
- config false;
- description
- "Maximum number of slots permitted to be joined together to form a media channel. Must be greater than or equal to the min-slots";
- }
- }
- }
- // }
-
- grouping common-session-parms {
- description
- "Common session parameters to identify a
- management session.";
- leaf username {
- type org-openroadm-user-mgmt:username-type;
- mandatory true;
- description
- "Name of the user for the session.";
- }
- leaf session-id {
- type ietf-nc:session-id-or-zero-type;
- mandatory true;
- description
- "Identifier of the session.
- A NETCONF session MUST be identified by a non-zero value.
- A non-NETCONF session MAY be identified by the value zero.";
- }
- leaf source-host {
- type ietf-inet-types:ip-address;
- description
- "Address of the remote host for the session.";
- }
- }
-
- grouping changed-by-parms {
- description
- "Common parameters to identify the source
- of a change event, such as a configuration
- or capability change.";
- container changed-by {
- description
- "Indicates the source of the change.
- If caused by internal action, then the
- empty leaf 'server' will be present.
- If caused by a management session, then
- the name, remote host address, and session ID
- of the session that made the change will be reported.";
- choice server-or-user {
- leaf server {
- type empty;
- description
- "If present, the change was caused
- by the server.";
- }
- case by-user {
- uses common-session-parms;
- }
- }
- }
- }
-
- rpc led-control {
- description
- "This command is used to allow user to find an entity on the NE,
- The specified entity will have LED blinking.
- The equipmentLedOn alarm will be raised and cleared for the indication";
- input {
- choice equipment-entity {
- mandatory true;
- case shelf {
- leaf shelf-name {
- type leafref {
- path "/org-openroadm-device/shelves/shelf-name";
- }
- mandatory true;
- description
- "shelf-name for the operation";
- }
- }
- case circuit-pack {
- leaf circuit-pack-name {
- type leafref {
- path "/org-openroadm-device/circuit-packs/circuit-pack-name";
- }
- mandatory true;
- description
- "circuit-pack-name for the operation";
- }
- }
- }
- leaf enabled {
- type boolean;
- mandatory true;
- description
- "led-control enabled flag.
- when enabled=true, equipmentLedOn alarm will be raised
- when enabled=false, equipmentLedOn alarm will be cleared";
- }
- }
- output {
- uses org-openroadm-common-types:rpc-response-status;
- }
- }
- rpc create-tech-info {
- description
- "Collects all log data for debugging and place it in a location accessible via ftp/sftp.
- This model assumes ASYNC operation, i.e. the command will return after the device accepts the command,
- A create-tech-info-notification will be send out later for the result of the operation.
- The log-file is cleared at the start of every create-tech-info operation in order to ensure
- the up-to-date logs are collected. If a vendor does not support concurrent log collection, the second
- create-tech-info command will be rejected.";
- input {
- leaf shelf-id {
- type leafref {
- path "/org-openroadm-device/shelves/shelf-name";
- }
- description
- "This optional field is used to specify the shelf for log collection.
- When this filed is not provided, it is expected to collect logs for the whole node.
- Vendor should reject the command if the whole node log collection is not supported.";
- }
- leaf log-option {
- type string;
- description
- "The log type a vendor can specify. Maybe used in future";
- }
- }
- output {
- uses create-tech-info-group;
- uses org-openroadm-common-types:rpc-response-status;
- }
- }
- rpc get-connection-port-trail {
- input {
- leaf connection-name {
- type string;
- mandatory true;
- }
- }
- output {
- uses org-openroadm-common-types:rpc-response-status;
- list ports {
- uses org-openroadm-device-types:physical-location;
- uses port-name {
- refine "circuit-pack-name" {
- mandatory true;
- }
- refine "port-name" {
- mandatory true;
- }
- }
- }
- }
- }
- rpc disable-automatic-shutoff {
- input {
- choice degree-or-amp {
- mandatory true;
- description
- "The choice describes the option to specify the entity for the disable-automatic-shutoff RPC. It can be degree-number for rdm and amp-number for ila";
- case degree {
- leaf degree-number {
- type leafref {
- path "/org-openroadm-device/degree/degree-number";
- }
- mandatory true;
- description
- "The degree-number defined in degree";
- }
- }
- case amp {
- leaf amp-number {
- type leafref {
- path "/org-openroadm-device/line-amplifier/amp-number";
- }
- mandatory true;
- description
- "The amp-number defined in line-amplifier";
- }
- }
- }
- leaf support-timer {
- type uint16 {
- range "1..600";
- }
- default "20";
- }
- }
- output {
- uses org-openroadm-common-types:rpc-response-status;
- }
- }
- rpc start-scan {
- input {
- choice degree-or-amp {
- mandatory true;
- description
- "The choice describes the option to specify the entity for the start-scan RPC. It can be degree-number for rdm and amp-number for ila";
- case degree {
- leaf degree-number {
- type leafref {
- path "/org-openroadm-device/degree/degree-number";
- }
- mandatory true;
- description
- "The degree-number defined in degree";
- }
- }
- case amp {
- leaf amp-number {
- type leafref {
- path "/org-openroadm-device/line-amplifier/amp-number";
- }
- mandatory true;
- description
- "The amp-number defined in line-amplifier";
- }
- }
- }
- leaf port-direction {
- type org-openroadm-common-alarm-pm-types:direction;
- }
- leaf distance {
- type uint32;
- }
- leaf resolution {
- type uint32;
- }
- }
- output {
- uses org-openroadm-common-types:rpc-response-status;
- }
- }
- rpc set-current-datetime {
- description
- "Set the info/current-datetime leaf to the specified value.";
- input {
- leaf current-datetime {
- type ietf-yang-types:date-and-time;
- mandatory true;
- description
- "The current system date and time in UTC. Format: YYYY-MM-DDTHH:MM:SS";
- }
- }
- output {
- uses org-openroadm-common-types:rpc-response-status;
- }
- }
- notification create-tech-info-notification {
- description
- "This Notification is sent when the create-tech-info is complete or failed.";
- uses create-tech-info-group;
- uses org-openroadm-common-types:rpc-response-status;
- }
- notification otdr-scan-result {
- description
- "This Notification is sent when the otdr-scan-result is complete or failed.";
- uses org-openroadm-common-types:rpc-response-status;
- leaf result-file {
- type string;
- }
- }
- notification change-notification {
- description
- "The Notification that a resource has been added, modified or removed.
- This notification can be triggered by changes in configuration and operational data.
- It shall contain the changed field pointed by the xpath.
- Typically it is not intended for frequently changing volatile data e.g. PM, power levels";
- leaf change-time {
- type ietf-yang-types:date-and-time;
- description
- "The time the change occurs.";
- }
- uses changed-by-parms;
- leaf datastore {
- type enumeration {
- enum running {
- description
- "The <running> datastore has changed.";
- }
- enum startup {
- description
- "The <startup> datastore has changed";
- }
- }
- default "running";
- description
- "Indicates which configuration datastore has changed.";
- }
- list edit {
- description
- "An edit (change) record SHOULD be present for each distinct
- edit operation that the server has detected on
- the target datastore. This list MAY be omitted
- if the detailed edit operations are not known.
- The server MAY report entries in this list for
- changes not made by a NETCONF session.";
- leaf target {
- type instance-identifier;
- description
- "Top most node associated with the configuration or operational change.
- A server SHOULD set this object to the node within
- the datastore that is being altered. A server MAY
- set this object to one of the ancestors of the actual
- node that was changed, or omit this object, if the
- exact node is not known.";
- }
- leaf operation {
- type ietf-nc:edit-operation-type;
- description
- "Type of edit operation performed.
- A server MUST set this object to the NETCONF edit
- operation performed on the target datastore.";
- }
- }
- }
- // uses org-openroadm-device-container-g;
-} \ No newline at end of file