object hostprototype.update(object/array hostPrototypes)
Ta metoda umożliwia aktualizację istniejących prototypów hostów.
Ta metoda jest dostępna tylko dla użytkowników typu Admin i Super admin. Uprawnienia do wywołania metody można odebrać w ustawieniach ról użytkownika. Zobacz Role użytkownika po więcej informacji.
(object/array)
Właściwości prototypów hostów do aktualizacji.
Właściwość hostid
musi być zdefiniowana dla każdego prototypu hosta, wszystkie inne właściwości są opcjonalne. Tylko przekazane właściwości zostaną zaktualizowane, wszystkie inne pozostaną niezmienione.
Dodatkowo do standardowych właściwości prototypu hosta, metoda akceptuje następujące parametry.
Parametr | Typ | Opis |
---|---|---|
groupLinks | array | Powiązania grupy do zastąpienia bieżących powiązań grupy na prototypie hosta. |
groupPrototypes | array | Prototypy grup do zastąpienia istniejących prototypów grup na prototypie hosta. |
macros | object/array | Makra użytkownika do zastąpienia bieżących makr użytkownika. Wszystkie makra, które nie są wymienione w żądaniu, zostaną usunięte. |
tags | object/array | Znaczniki prototypu hosta do zastąpienia bieżących znaczników. Wszystkie tagi, które nie są wymienione w żądaniu, zostaną usunięte. |
interfaces | object/array | Indywidualne interfejsy prototypu hosta do zastąpienia bieżących interfejsów. Obiekt indywidualnego interfejsu powinien zawierać wszystkie swoje parametry. Wszystkie interfejsy, które nie są wymienione w żądaniu, zostaną usunięte. |
templates | object/array | Szablony do zastąpienia aktualnie połączonych szablonów. Szablony muszą mieć zdefiniowaną właściwość templateid . |
(object)
Zwraca obiekt zawierający identyfikatory zaktualizowanych prototypów hostów we właściwości hostids
.
Wyłącz prototyp hosta, czyli ustaw jego status na 1.
Zapytanie:
{
"jsonrpc": "2.0",
"method": "hostprototype.update",
"params": {
"hostid": "10092",
"status": 1
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Odpowiedź:
Zastąp tagi prototypu hosta nowymi.
Zapytanie:
{
"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
}
Odpowiedź:
Zastąp odziedziczone interfejsy indywidualnymi interfejsami prototypu hosta.
Zapytanie:
{
"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
}
Odpowiedź:
CHostPrototype::update() w ui/include/classes/api/services/CHostPrototype.php.