Contact: Name of your contact

DutyTime: format is:

start_hour: 0-24
end_hour: 0-24 
days: all or any of "Sun","Mon","Tue","Wed","Thu","Fri","Sat"


Full day names can be used if you like, the perl code for days looks like this:
$today = ("Sun","Mon","Tue","Wed","Thu","Fri","Sat")[$ltime[6]];
if ( $days =~ /$today/i ) {

To give an example that isn't 24x7, here is Monday to Friday, 9 to 5:


Email: email address of the contact, used to send escalations, etc, if configured.  Multiple email addresses may be used if separated by a comma. 

Location: location of your contact.  Not sure if this lines up with System -> System Configuration -> Locations at all or if it has any functional uses.  Line this up with the locations table in System configuration and this can be used with escalations and the location for a given device (either set on the device coming through SNMP or in NMIS).

Mobile: For human lookup.  As far as I can tell this is isn't used for anything functional at this time. This is from what I gathered using sub sendMSG in bin/ 

Pager: At this time SNPP / Pagers are supported. The variable snpp_server can be set in Config.nmis, by default it holds the value set in server_name

Phone: For human lookup.

TimeZone: this value is added to the time returned by the server before checking the start and end dates.  Either have your server in the same timezone as your users and use 0 here or set it up properly, have your server in GMT and set the TZ offset from GMT.


The file that contains the Contacts configuration may be found in /usr/local/nmis8/conf/Contacts.nmis.  An example of the format follows:

%hash = (
  'contact1' => {
    'Contact' => 'Contact1',
    'Phone' => '',
    'DutyTime' => '00:24:MonTueWedThuFriSatSun',
    'Level' => '(Fatal|Critical|Major|Minor|Warning|Normal)',
    'TimeZone' => '0',
    'Pager' => '',
    'Mobile' => '5555551234',
    'Location' => 'default',
    'Email' => 'nobody@localhost'
  • No labels