NalMo - NAmeLess Monitor

NalMo is a generic monitor implementation. The core uses plugins to be able to handle different types of monitors which are identified by URIs. NalMo itself does only collect the information provided by the different plugins. To display these information a user interface like gNalMo is needed.

NalMo is based on an event oriented architecture, which means it has its own main loop. To make it possible to to use NalMo with other components bring their own main loop like GTK+ its interface is based on a thread save bi-directional channel. Additionally there are some more uni-directional information queues.

Because NalMo was primarily developed to check mail accounts, its current architecture may not be that generic as supposed. Especially the informtion structure provided by a monitor plugin is very tied bound to the information provided by a mailbox.

Features

  • pure python

  • simple event based interface

  • 4 built-in monitors: imap, imaps, maildir, mbox

  • own scheduler to check each monitor in a specified interval of time.

Why should I use NalMo?

At this stage of development there is not really a reason for using NalMo. The current interface is not meant to be forever. It is already the second generation of the interface. The first was cancelled before the first public release. The only thing what is stable about NalMo is the idea.

is meant to be the test user interface for NalMo, which uses the GTK+ widget. Support are GTK+ 1.2.x and GTK+ 2.x. The used version is chosen at runtime.

gNalMo

This GTK+ user interface is simple application displaying a number and one of four icons. Each monitor watched by NalMo can have priority between 0 and 2, which is represented by the icon. If one or more of the monitors returns a number greater than 0. If its priority is higher than the priority of another monitor with a return value greater than 0 the icon for this priority is display. The number is the sum of all counts counts returned by the watched monitors. The priorities, meaning the displayed icon, enables the user to identify the importants of this information in a snatch. to

Configuration

The configuration of NalMo is done through gNalMo. Normally a graphiocal user interface is used for that, but gNalMo does not have one. To configure gNalMo you need to edit a configuration file which looks like a window INI file. A sample is included within the distribution. Most important is the list of monitors.

[monitor-1]
priority=0
url=imaps://user@pop.yourdomain.com/INBOX
nickname=myINBOX
interval=60

This group represents one monitor which should be watched by NalMo. The group name enclosed in brackets MUST begin with monitor-. The priority can used by the user interface to display another icon or something else. url is the most important information. This is used by NalMo to determine the monitor backend. The nickname should be used by the user interface for display. The interval defines the time period in which the monitor should be checked.

Screenshots

gNalMo is here used as a plugin for the GEX panel.

Installation

NalMo and gNalMo are both python packages. That means, installation for these package works like described in the following description:

Unpack the tar archive.

tar xzvf NalMo-0.3,1.tar.gz

Change into the source directory.

cd NalMo-0.3.1/

Install the package.

python setup.py install