1 module nbi-notifications {
3 namespace "nbi-notifications";
4 prefix nbinotifications;
6 import org-openroadm-service {
9 import org-openroadm-common-service-types {
10 prefix org-openroadm-common-service-types;
12 import org-openroadm-common-state-types {
13 prefix org-openroadm-common-state-types;
17 revision-date 2018-12-10;
19 import tapi-notification {
20 prefix tapi-notification;
21 revision-date 2018-12-10;
27 "transportPCE committers - ODL";
29 "YANG definitions for using REST API in NBI notifications module. Copyright
30 (c) 2020 ORANGE and others. All rights reserved.";
34 "Implement new models, RPC for TAPI service notification";
39 "Rename the groupings, containers and RPCs";
44 "Implement new models, RPC for service alarms";
49 "Initial revision of NBI notifications";
52 grouping notification-process-service {
57 "Message for the specified service";
63 "Identifier for the service to be created in the ROADM network, e.g., CLFI, CLCI, etc.
64 This is reported against the service, but may not get reflected in the service in the network.";
69 "To be used by the ROADM controller to identify the routing constraints
70 received from planning application (PED).";
72 leaf connection-type {
73 type org-openroadm-common-service-types:connection-type;
76 container service-a-end {
77 uses org-openroadm-common-service-types:service-endpoint;
79 container service-z-end {
80 uses org-openroadm-common-service-types:service-endpoint;
82 leaf response-failed {
85 "Response of the error if the service request encountered an anomaly";
87 leaf operational-state {
88 type org-openroadm-common-state-types:state;
91 "Operational State: Actual state of service";
95 grouping notification-alarm-service {
100 "Message for the specified service";
106 "Identifier for the service to be created in the ROADM network, e.g., CLFI, CLCI, etc.
107 This is reported against the service, but may not get reflected in the service in the network.";
109 leaf connection-type {
110 type org-openroadm-common-service-types:connection-type;
113 leaf operational-state {
114 type org-openroadm-common-state-types:state;
117 "Operational State: Actual state of service";
121 grouping notification-tapi-service {
122 leaf notification-type {
123 type tapi-notification:notification-type;
126 leaf target-object-type {
127 type tapi-notification:object-type;
130 leaf target-object-identifier {
131 type tapi-common:uuid;
134 list target-object-name {
137 uses tapi-common:name-and-value;
140 leaf event-time-stamp {
141 type tapi-common:date-and-time;
144 leaf sequence-number {
147 description "A monotonous increasing sequence number associated with the notification.
148 The exact semantics of how this sequence number is assigned (per channel or subscription or source or system) is left undefined.";
150 leaf source-indicator {
151 type tapi-notification:source-indicator;
154 leaf layer-protocol-name {
155 type tapi-common:layer-protocol-name;
158 list changed-attributes {
160 uses tapi-notification:name-and-value-change;
163 list additional-info {
165 uses tapi-common:name-and-value;
168 leaf additional-text {
173 uses tapi-notification:tca-info;
176 container alarm-info {
177 uses tapi-notification:alarm-info;
180 uses tapi-common:resource-spec;
184 container notification-process-service {
186 "Model used to send a notification from a service request";
187 uses notification-process-service;
190 container notification-alarm-service {
192 "Model used to send a notification from the service listener";
193 uses notification-alarm-service;
196 container notification-tapi-service {
198 "Model used to send a tapi notification";
199 uses notification-tapi-service;
202 rpc get-notifications-process-service {
203 description "Get the notifications service sent by ServiceHandler through filtering connection type";
205 leaf connection-type {
206 type org-openroadm-common-service-types:connection-type;
209 "Type connection of the service ";
215 "Unique ID for the consumer";
221 "ID Group for the consumer";
225 list notifications-process-service {
226 uses notification-process-service;
231 rpc get-notifications-alarm-service {
232 description "Get the notifications alarm service sent by ServiceListener through filtering connection type";
234 leaf connection-type {
235 type org-openroadm-common-service-types:connection-type;
238 "Type connection of the service";
244 "Unique ID for the consumer";
250 "ID Group for the consumer";
254 list notifications-alarm-service {
255 uses notification-alarm-service;
260 notification publish-notification-process-service {
261 description "Publish the notifications service through a publisher";
262 leaf publisher-name {
266 "Name of the publisher";
268 uses notification-process-service;
271 notification publish-notification-alarm-service {
272 description "Publish the notifications service alarm through a publisher";
273 leaf publisher-name {
277 "Name of the publisher";
279 uses notification-alarm-service;
282 notification publish-tapi-notification-service {
283 description "Publish the TAPI notifications service for topic";
288 "Topic where to send the notification service";
290 uses tapi-notification:notification;