##### Here are some rules for generating classic services for network
define discoveryrule {
       discoveryrule_name	HostGeneric
       isup			1
       use			generic-host
       creation_type		host
}



##### Here are some rules for generating classic services for network
define discoveryrule {
       discoveryrule_name	Http
       openports		^80$
       check_command		check_http
       service_description	Http
       use			generic-service
}

define discoveryrule {
       discoveryrule_name       Https
       openports                ^443$
       check_command            check_https
       service_description      Https
       use                      generic-service
}

define discoveryrule {
       discoveryrule_name       Https-Certificate
       openports                ^443$
       check_command            check_https_certificate
       service_description      Https-Certificate
       use                      generic-service
}

define discoveryrule {
       discoveryrule_name       Ftp
       openports                ^21$
       check_command            check_ftp
       service_description      Ftp
       use                      generic-service
}

define discoveryrule {
       discoveryrule_name       Ssh
       openports                ^22$
       check_command            check_ssh
       service_description      Ssh
       use                      generic-service
}

define discoveryrule {
       discoveryrule_name       DNS
       openports                ^53$
       check_command            check_dig
       service_description      DNS
       use                      generic-service
}

define discoveryrule {
       discoveryrule_name       SMTP
       openports                ^25$
       check_command            check_smtp
       service_description      SMTP
       use                      generic-service
}

define discoveryrule {
       discoveryrule_name       SMTPS
       openports                ^465$
       check_command            check_smtps
       service_description      SMTPS
       use                      generic-service
}


define discoveryrule {
       discoveryrule_name       LDAP
       openports                ^389$
       check_command            check_ldap
       service_description      389
       use                      generic-service
}

define discoveryrule {
       discoveryrule_name       LDAPS
       openports                ^636$
       check_command            check_ldaps
       service_description      LDAPS
       use                      generic-service
}

## Printers
# Nmap do nto find them good, so look at ports
define discoveryrule {
       discoveryrule_name       HPPrinterState
       openports                631,9100
       check_command            check_hpjd
       service_description      HPPrinterState
       use                      generic-service
}



###Then some classic RDBMS connection
define discoveryrule {
       discoveryrule_name       Mysql-Connexion
       openports                ^3306$
       check_command            check_mysql_connection
       service_description      Mysql-Connexion
       use                      generic-service
}

define discoveryrule {
       discoveryrule_name       Oracle-Listener
       openports                ^1521$
       check_command            check_oracle_listener
       service_description      Oracle-Listener
       use                      generic-service
}

define discoveryrule {
       discoveryrule_name       MSSQL-Connexion
       openports                ^1433$
       check_command            check_mssql_connection
       service_description      MSSQL-Connexion
       use                      generic-service
}


### Look for a VMWare Host
# Here for CPU
define discoveryrule {
       discoveryrule_name       ESX-Host-Cpu
       isesxhost		1
       check_command            check_esx_host!cpu
       service_description      ESX-host-Cpu
       use                      generic-service
}

# Now Memory
define discoveryrule {
       discoveryrule_name       ESX-Host-Mem
       isesxhost                1
       check_command            check_esx_host!mem
       service_description      ESX-host-Mem
       use                      generic-service
}

# Now I/O
define discoveryrule {
       discoveryrule_name       ESX-Host-IO
       isesxhost                1
       check_command            check_esx_host!io
       service_description      ESX-host-IO
       use                      generic-service
}

# Now Network
define discoveryrule {
       discoveryrule_name       ESX-Host-Net
       isesxhost                1
       check_command            check_esx_host!net
       service_description      ESX-host-Net
       use                      generic-service
}

#### And now look for VMware machines
# Now CPU
define discoveryrule {
       discoveryrule_name       ESX-VM-Cpu
       isesxvm                  1
       check_command            check_esx_vm!cpu
       service_description      ESX-VM-Cpu
       use                      generic-service
}

# Now Memory
define discoveryrule {
       discoveryrule_name       ESX-VM-Mem
       isesxvm                  1
       check_command            check_esx_vm!mem
       service_description      ESX-VM-Mem
       use                      generic-service
}

# Now IO
define discoveryrule {
       discoveryrule_name       ESX-VM-IO
       isesxvm                  1
       check_command            check_esx_vm!io
       service_description      ESX-VM-IO
       use                      generic-service
}

# Now Network
define discoveryrule {
       discoveryrule_name       ESX-VM-Net
       isesxvm                  1
       check_command            check_esx_vm!net
       service_description      ESX-VM-Net
       use                      generic-service
}