1.) How is the hyper notification driver used for Notification List (NL) functions? What is the processing sequence of hyper notification driver for Durable and Momentary alarms between SAMs? How does the hyper notification driver decide to make notify or clear or changed operation on the alarm, when hook script is called etc.
The HyperNotif driver will propagate Notify, Change, Clear and Delete from source as is.
If present, a hookscript will be executed to update some of the attributes before finally notifying to the user (NL_CLEAR, NL_NOTIFY and etc.).
The calls of notify, change and clear are purely called based on the message type of the notification and not based on the hookscript.
NOTIFY means there is an event at the underlying domain and that comes to SAM as a new event (whether it is earlier present or not) and that will be converted into new notification with NOTIFY message type and propagated to its clients from that SAM. If it is DURABLE notification it is expected that these notifications follows some life cycle of the notification being active and cleared at later point of time.
Some notifications are caused by durable events. A durable event has a measurable duration; it is active for a period of time (for example, a link failure). Durable events are sent from underlying Smarts Managers.
Other notifications are caused by momentary events. A momentary event occurs and is significant for only a specific point in time (for example, an authentication failure event for a device).
Generally momentary notifications gets keep notified in case of persistent issues. During that time SAM will process this notification and keeps updating the LastNotifiedAt based on the receive time.
2.) What kind of update (ex: difference in LastChangedAt, LastNotifiedAt OccuranceCount) on lower domain will trigger notify, change, clear operations on the upper domain? How this is decided for Durable and Momentary alarms?
Any changes in the notification object which is considered as change event in SAM itself(Once the notification notified and post that any change to the notification attributes during its active duration always considered as CHANGE event). These CHANGE events always not necessary to come from underlying domain. Generally it happens to originate from the first level SAM based on the user action or scripts to change the notification attributes.
Any change in attributes irrespective of Momentary or Durable will be notified as CHANGE to the subscriber. Specifically attributes like Active is decided for Notify or Clear based on the even received from underlying domain.
In case of HyperNotif, all notify and change comes with the same message type as NL_Notify_V2. SAM internal logic will detect whether notify or change and take appropriate calls at the subscribed SAM. If you would like to understand how these notification types are processed, refer ics-nl-processing.asl.
3.) Is there a way to subscribe with the domain the way how hyper notif driver does? (like we do sm_adapter --subscribe=<NL>/n)?
There is no provision to subscribe for hypernotif. If users want to it, then they need to write a C++/Java client to the server, poll, get the notification and process from there.