object hostprototype.update(object/array hostPrototypes)
Este método permite actualizar los prototipos de host existentes.
Este método solo está disponible para los tipos de usuariosAdministrador y Superadministrador. Los permisos para activar el método se pueden revocar en los ajustes de rol de usuario. Ver Roles de usuario para más información.
(objeto/matriz)
Propiedades del prototipo del equipo que se actualizarán.
La propiedad hostid
debe definirse para cada prototipo de equipo, todas las demás propiedades son opcionales. Sólo se actualizarán las propiedades pasadas, todas las otras permanecerán sin cambios.
Además de las propiedades estándar del prototipo de equipo, el método acepta los siguientes parámetros.
Parámetro | Tipo | Descripción |
---|---|---|
groupLinks | array | Grupo de enlaces para reemplazar los enlaces de grupo actuales en el prototipo de equipo. |
groupPrototypes | array | Grupo de prototipos para reemplazar los prototipos de grupo existentes en el prototipo del equipo. |
macros | object/array | Macros de usuario para reemplazar las macros de usuario actuales. Se eliminarán todas las macros que no figuran en la solicitud. |
tags | object/array | Etiquetas del prototipo de equipo para reemplazar las etiquetas actuales. Se eliminarán todas las etiquetas que no figuran en la solicitud . |
interfaces | object/array | interfaces personalizadas del prototipo de equipo para reemplazar las interfaces actuales. El objeto de interfaz personalizado debe contener todos sus parámetros.<br >Se eliminarán todas las interfaces que no aparezcan en la solicitud. |
templates | object/array | Plantillas para reemplazar las plantillas actualmente vinculadas. Las plantillas deben tener definida la propiedad templateid . |
(objeto)
Devuelve un objeto que contiene los ID de los prototipos de equipos actualizados bajo la propiedad hostids
.
Deshabilite un prototipo de equipo, es decir, establezca su estado en 1.
Solicitud:
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"status": 1
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Respuesta:
Reemplace las etiquetas del prototipo de equipo por otras nuevas.
Solicitud:
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"tags": [
{
"tag": "Datacenter",
"value": "{#DATACENTER.NAME}"
},
{
"tag": "Instance type",
"value": "{#INSTANCE_TYPE}"
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Respuesta:
Reemplace las interfaces heredadas con las interfaces personalizadas del prototipo de equipo.
Solicitud:
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"custom_interfaces": "1",
"interfaces": [
{
"main": "1",
"type": "2",
"useip": "1",
"ip": "127.0.0.1",
"dns": "",
"port": "161",
"details": {
"version": "2",
"bulk": "1",
"community": "{$SNMP_COMMUNITY}"
}
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Respuesta:
CHostPrototype::update() en ui/include/classes/api/services/CHostPrototype.php.