object CheckCommand "sshmon" {
    import "plugin-check-command"
    import "ipv4-or-ipv6"

    command = [ "/usr/local/share/icinga/plugins/check_by_sshmon" ]

    arguments = {
        "-c" = {
            value = "$sshmon_command$"
        }
        "-h" = {
            value = "$address$"
        }
        "-t" = {
            set_if = bool("$sshmon_timeout$")
            value = "$sshmon_timeout$"
        }
    }
}

object CheckCommand "dummy_hostalive" {
    import "plugin-check-command"
    import "ipv4-or-ipv6"

    command = [ "true" ]
}

object CheckCommand "check_freifunk_node" {
    import "plugin-check-command"
    import "ipv4-or-ipv6"

    command = [ "/usr/local/share/icinga/plugins/check_freifunk_node", "$url$", "$id$" ]
}

object CheckCommand "check_http_wget" {
    import "plugin-check-command"
    import "ipv4-or-ipv6"

    command = [ "/usr/local/share/icinga/plugins/check_http_wget" ]

    arguments = {
        "--check-string" = {
            set_if = bool("$http_wget_contains$")
            value = "$http_wget_contains$"
        }
        "--no-follow-redirects" = {
            set_if = "$http_wget_nofollow$"
        }
        "--no-verify-ssl" = {
            set_if = "$http_wget_noverify$"
        }
        "--useragent" = {
            set_if = bool("$http_wget_useragent$")
            value = "$http_wget_useragent$"
        }
        "--url" = {
            value = "$http_wget_url$"
        }
    }
}

object CheckCommand "check_https_cert_at_url" {
    import "plugin-check-command"
    import "ipv4-or-ipv6"

    command = [ "/usr/local/share/icinga/plugins/check_https_certificate_at_url", "$domain$", "$port$" ]
    vars.port = "443"
}

object CheckCommand "check_imap" {
    import "plugin-check-command"
    import "ipv4-or-ipv6"

    command = [ "/usr/lib/nagios/plugins/check_imap" ]

    arguments = {
        "-S" = {
            set_if = "$imap_ssl$"
        }
        "-p" = {
            value = "$imap_port$"
        }
        "-H" = {
            value = "$address$"
        }
    }
}

object CheckCommand "check_imap_for_mail_from" {
    import "plugin-check-command"
    import "ipv4-or-ipv6"

    command = [ "/usr/local/share/icinga/plugins/check_imap_for_mail_from", "$imap_host$", "$imap_user$", "$imap_pass$", "$imap_from$" ]
}

object CheckCommand "check_sipgate_account_balance" {
    import "plugin-check-command"
    import "ipv4-or-ipv6"

    command = [ "/usr/local/share/icinga/plugins/check_sipgate_account_balance" ]
}

object CheckCommand "check_smtp" {
    import "plugin-check-command"
    import "ipv4-or-ipv6"

    command = [ "/usr/lib/nagios/plugins/check_smtp" ]

    arguments = {
        "-H" = {
            value = "$address$"
        }
    }
}

object CheckCommand "spam_blocklist" {
    import "plugin-check-command"
    import "ipv4-or-ipv6"

    command = [ "/usr/local/share/icinga/plugins/check_spam_blocklist", "$ip$" ]
}

object CheckCommand "check_usv" {
    import "plugin-check-command"
    import "ipv4-or-ipv6"

    command = [ "/usr/local/share/icinga/plugins/check_usv_snmp", "$address$", "$snmp_community$" ]
    vars.snmp_community = "public"
}
