# Hosts:
[%
    hostgroups = {};
    services   = {};

    FOR host IN hosts;

	SET host.fqdn = host.IP UNLESS host.fqdn.defined;

        n_services = 0;
        FOR flag IN host.flags;
            NEXT UNLESS flag.value;
	    service = flag.key.replace('^extmon_','');
	    NEXT IF service == flag.key;
	    n_services = n_services + 1;
            SET services.${host.kunde.name} = {}
              UNLESS services.exists(host.kunde.name);
            SET services.${host.kunde.name}.$service = []
              UNLESS services.${host.kunde.name}.exists(service);
            services.${host.kunde.name}.$service.push(host.fqdn);
        END;
	NEXT UNLESS n_services;

	SET hostgroups.${host.kunde.name} = [ host.kunde.id ]
          UNLESS hostgroups.exists(host.kunde.name);
	hostgroups.${host.kunde.name}.push(host.fqdn);
%]
define host {
	host_name	[% host.fqdn %]
	alias		[% host.fqdn %]
	address		[% host.ip %]
	use		generic-host
	contact_groups	[% host.kunde.name %]
}
[%  END %]

# Hostgroups:
[%
    FOR hostgroup IN hostgroups;
	kunde_id = hostgroup.value.shift;
%]
define hostgroup {
	hostgroup_name	[% hostgroup.key %]
	alias		[% kunde_id %]
	members		[% hostgroup.value.join(',') %]
}
[%  END %]

# Services:
[%
    FOR kunde IN services;
        FOR service IN kunde.value;
%]
define service {
	use		[% service.key %]
	host_name	[% service.value.join(',') %]
	contact_groups	[% kunde.key %]
}
[%
        END;
    END;
-%]
