Esta é uma tradução da página de documentação original em inglês. Ajude-nos a torná-la melhor.

script.execute

Descrição

script de objeto.execute(parâmetros de objeto)

Este método permite executar um script em um host ou evento.

Este método está disponível para usuários de qualquer tipo. As permissões para chamar o método podem ser revogadas nas configurações de função do usuário. Consulte Funções de usuário para obter mais informações.

Parâmetros

(object) Parâmetros contendo o ID do script a ser executado e o ID do host ou o ID do evento.

Parâmetro Tipo Descrição
scriptid
(requerido)
string ID do script a ser executado.
hostid string ID do host para executar o script.
eventid string ID do evento para executar o script.

Valores de retorno

(object) Retorna o resultado da execução do script.

Propriedade Tipo Descrição
response string Se o script foi executado com sucesso.

Valores possíveis: success ou failed.
value string Saída do script.
debug object Contém um objeto de depuração se um script de webhook for executado. Para outros tipos de script, contém um objeto vazio.

Exemplos

Executar um script de webhook

Execute um script de webhook que envia solicitação HTTP para serviço externo.

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
       }

Execute um script personalizado

Execute um script "ping" em um 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
       }

Fonte

CScript::execute() in ui/include/classes/api/services/CScript.php.