script.execute

Leírás

object script.execute(object parameters)

Ez a módszer lehetővé teszi egy szkript futtatását egy gazdagépen vagy eseményen.

Ez a módszer bármilyen típusú felhasználó számára elérhető. Engedélyek A metódus meghívása a felhasználói szerepkör beállításaiban visszavonható. Lásd: User roles további információért.

Paraméterek

(object) A futtatandó szkript azonosítóját és bármelyiket tartalmazó paraméterek a házigazda azonosítója vagy az esemény azonosítója.

Paraméter Típus Leírás
scriptid
(kötelező)
string A futtatandó szkript azonosítója.
hostid string A szkript futtatásához használt gazdagép azonosítója.
eventid string Az esemény azonosítója, amelyen a szkript fut.

Visszatérési értékek

(object) A szkript végrehajtásának eredményét adja vissza.

Tulajdonság Típus Leírás
response string A szkript sikeresen lefutott-e.

Lehetséges érték - success.
érték karakterlánc Szkript kimenet.
debug object Tartalmaz egy debug objektumot, ha egy webhook-szkript fut. Más szkripttípusok esetén üres objektumot tartalmaz.

Példák

Run a webhook script

Run a webhook script that sends HTTP request to external service.

Request:

{
           "jsonrpc": "2.0",
           "method": "script.execute",
           "params": {
               "scriptid": "4",
               "hostid": "30079"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Response:

{
           "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
       }

Run a custom script

Run a "ping" script on a host.

Request:

{
           "jsonrpc": "2.0",
           "method": "script.execute",
           "params": {
               "scriptid": "1",
               "hostid": "30079"
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Response:

{
           "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
       }

Forrás

CScript::execute() az ui/include/classes/api/services/CScript.php-ban.