HNM Components

Overview

The HMI Notification Manager (HNM) is responsible for managing asynchronous, multimodal events based on predefined priorities. Like a window manager, the HNM decides when and how events get processed, based on their priority, and determines whether or not to notify the user via the HMI. But unlike a window manager, the HNM also responds to low-level system services using various input modalities and can manage various outputs in addition to a video display (e.g., you could use the HNM to manage audio streams).

Structure of the HNM

The HNM consists of three components:
hmi-notification-mgr
A daemon that implements the notification service.
hmi-notification-core.so
A core library that provides all the common functionality used by the HNM and its associated event-source plugins.
policy.cfg
A configuration file that specifies the event sources that the HNM should deal with and how it should manage events.

Command-line options for the hmi-notification-mgr daemon

-c filename
Specify the policy configuration file (default location is /etc/system/hmi-notification/policy.cfg). If no policy file is found, the daemon will run without loading any event-source plugins.
-f
Run in the foreground, rather than in daemon mode (useful for debugging).
-p pps_base
Specify the base URI of the PPS objects managed by the HNM (default is /pps/services/hmi-notification). Once the service is running, it creates Status and Messaging PPS objects that provide the external interface to the service.
-v
Set the verbosity level of the log output.