On this page
script.execute
Opis
object script.execute(object parameters)
Ta metoda umożliwia uruchomienie skryptu na hoście lub zdarzeniu.
Ta metoda jest dostępna dla użytkowników dowolnego typu. Uprawnienia do jej wywołania mogą zostać cofnięte w ustawieniach ról użytkownika. Zobacz Role użytkowników , aby uzyskać więcej informacji.
Parametry
(object) Parametry zawierające ID skryptu do uruchomienia oraz
ID hosta lub ID zdarzenia.
| Parametr | Typ | Opis |
|---|---|---|
| scriptid (wymagane) |
string | ID skryptu do uruchomienia. |
| hostid | string | ID hosta, na którym ma być uruchomiony skrypt. |
| eventid | string | ID zdarzenia, na którym ma być uruchomiony skrypt. |
Zwracane wartości
(object) Zwraca wynik wykonania skryptu.
| Właściwość | Typ | Opis |
|---|---|---|
| response | string | Informacja o powodzeniu wykonania skryptu. Możliwa wartość - success. |
| value | string | Wyjście skryptu. |
| debug | object | Zawiera obiekt debug, jeśli wykonywany jest skrypt webhook. Dla innych typów skryptów zawiera pusty obiekt. |
Przykłady
Uruchom skrypt webhook
Uruchamia skrypt typu webhook który wysyła zapytanie HTTP do zewnętrznej usługi.
Zapytanie:
{
"jsonrpc": "2.0",
"method": "script.execute",
"params": {
"scriptid": "4",
"hostid": "30079"
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"response": "success",
"value": "{\"status\":\"sent\",\"timestamp\":\"1611235391\"}",
"debug": {
"logs": [
{
"level": 3,
"ms": 480,
"message": "[Webhook Script] HTTP status: 200."
}
],
"ms": 495
}
},
"id": 1
}
Uruchom niestandardowy skrypt
Uruchamia skrypt „ping” na hoście.
Zapytanie:
{
"jsonrpc": "2.0",
"method": "script.execute",
"params": {
"scriptid": "1",
"hostid": "30079"
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Odpowiedź:
{
"jsonrpc": "2.0",
"result": {
"response": "success",
"value": "PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.\n64 bytes from 127.0.0.1: icmp_req=1 ttl=64 time=0.074 ms\n64 bytes from 127.0.0.1: icmp_req=2 ttl=64 time=0.030 ms\n64 bytes from 127.0.0.1: icmp_req=3 ttl=64 time=0.030 ms\n\n--- 127.0.0.1 ping statistics ---\n3 packets transmitted, 3 received, 0% packet loss, time 1998ms\nrtt min/avg/max/mdev = 0.030/0.044/0.074/0.022 ms\n",
"debug": []
},
"id": 1
}
Źródło
CScript::execute() w ui/include/classes/api/services/CScript.php.