template Host "generic-host" {
    max_check_attempts = 3
    check_interval = 5m
    retry_interval = 1m
    check_command = "hostalive"
    enable_notifications = true
    enable_event_handler = true
    enable_flapping = false
    enable_perfdata = false
}

template Host "host-active" {
    import "generic-host"
    enable_active_checks = true
    enable_passive_checks = false
}

template Host "host-active-nohostcheck" {
    import "generic-host"
    enable_active_checks = true
    enable_passive_checks = false
    check_command = "dummy_ok"
}

template Host "host-passive" {
    import "generic-host"
    enable_active_checks = false
    enable_passive_checks = true
}


template Service "generic-service" {
    max_check_attempts = 4
    check_interval = 5m
    retry_interval = 2m
    enable_notifications = true
    enable_event_handler = true
    enable_flapping = false
    enable_perfdata = false
    volatile = false
}

template Service "service-active" {
    import "generic-service"
    enable_active_checks = true
    enable_passive_checks = false
}

template Service "service-passive" {
    import "generic-service"
    enable_active_checks = false
    enable_passive_checks = true
}


template Notification "host-notification" {
    command = "send-host-notification"
    states = [ Up, Down ]
    types = [ Problem, Recovery, Custom ]
    user_groups = [ "on-call_sms" ]
    period = host.vars.period
}

template Notification "service-notification" {
    command = "send-service-notification"
    states = [ OK, Critical ]
    types = [ Problem, Recovery, Custom ]
    user_groups = [ "on-call_sms" ]

    if(service.vars.period) {
        period = service.vars.period
    } else {
        period = host.vars.period
    }
}
