action.create

Опис

object action.create(object/array actions)

Овај метод дозвољава креирање нових акција.

Овај метод је дозвољен само за типове Администратор и Супер администратор. Дозволе за позивање методе могу се опозвати у подешавању улоге корисника. Погледајте Userroles за више информација.

Параметри

(object/array) Акције за креирање.

Поред standard action properties, метод прихвата следеће параметре.

Parameter Type Description
filter object Action filter објекат за акцију.
operations array Action operations, које треба креирати за акцију.
recovery_operations array Action recovery operations, које треба креирати за акцију.
update_operations array Action update operations, које треба креирати за акцију.

Повратне вредности

(object) Враћа објекат који садржи ID-ијеве креираних акција под својством actionids. Редослед враћених ID-ијева се подудара са редоследом прослеђених акција.

Примери

Креирање акције окидача

Креирање акције окидача, која ће почети, када окидач (са речју "меморија" у имену) са домаћина "10084" пређе у стање ПРОБЛЕМА. Акција ће имати 4 конфигурисане операције. Прва и непосредна операција ће послати поруку свим корисницима корисничке групе "7" путем типа медија "1". Ако се догађај не реши у року од 30 минута, друга операција ће се покренути script "5" (скрипта са опсегом "Акциона операција") на свим домаћинима у групи "2". Ако је догађај решен, операција опоравка ће обавестити све кориснике, који су примили било какву поруку у вези са проблемом. Ако је догађај ажуриран, операција потврде/ажурирања ће обавестити (са прилагођеном темом и поруком) све кориснике, који су примили било какву поруку у вези са проблемом.

Request:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Trigger action",
               "eventsource": 0,
               "esc_period": "30m",
               "filter": {
                   "evaltype": 0,
                   "conditions": [
                       {
                           "conditiontype": 1,
                           "operator": 0,
                           "value": "10084"
                       },
                       {
                           "conditiontype": 3,
                           "operator": 2,
                           "value": "memory"
                       }
                   ]
               },
               "operations": [
                   {
                       "operationtype": 0,
                       "esc_step_from": 1,
                       "esc_step_to": 1,
                       "opmessage_grp": [
                           {
                               "usrgrpid": "7"
                           }
                       ],
                       "opmessage": {
                           "default_msg": 1,
                           "mediatypeid": "1"
                       }
                   },
                   {
                       "operationtype": 1,
                       "esc_step_from": 2,
                       "esc_step_to": 2,
                       "opconditions": [
                           {
                               "conditiontype": 14,
                               "operator": 0,
                               "value": "0"
                           }
                       ],
                       "opcommand_grp": [
                           {
                               "groupid": "2"
                           }
                       ],
                       "opcommand": {
                           "scriptid": "5"
                       }
                   }
               ],
               "recovery_operations": [
                   {
                       "operationtype": "11",
                       "opmessage": {
                           "default_msg": 1
                       }
                   }
               ],
               "update_operations": [
                   {
                       "operationtype": "12",
                       "opmessage": {
                           "default_msg": 0,
                           "message": "Custom update operation message body",
                           "subject": "Custom update operation message subject"
                       }
                   }
               ]
           },
           "id": 1
       }

Одговор:

{
           "jsonrpc": "2.0",
           "result": {
               "actionids": [
                   "17"
               ]
           },
           "id": 1
       }

Креирање акције откривања

Креирајте акцију откривања, која ће повезати шаблон "10001" са откривеним домаћинима.

Request:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Discovery action",
               "eventsource": 1,
               "filter": {
                   "evaltype": 0,
                   "conditions": [
                       {
                           "conditiontype": 21,
                           "operator": 0,
                           "value": "1"
                       },
                       {
                           "conditiontype": 10,
                           "operator": 0,
                           "value": "2"
                       }
                   ]
               },
               "operations": [
                   {
                       "operationtype": 6,
                       "optemplate": [
                           {
                               "templateid": "10001"
                           }
                       ]
                   }
               ]
           },
           "id": 1
       }

Одговор:

{
           "jsonrpc": "2.0",
           "result": {
               "actionids": [
                   "18"
               ]
           },
           "id": 1
       }

Коришћење филтера са прилагођеним изразом

Креирајте акцију окидача, која користи прилагођени израз "A и (B или C)" за процену услова акције. Једном када окидач са озбиљношћу већом или једнаком "Упозорењу" са домаћина "10084" или домаћина "10106" прелази у стање ПРОБЛЕМ, акција ће послати поруку свим корисницима у корисничкој групи "7" преко типа медија "1". ID-ијеви формула "A", "B" и "C" су произвољно изабране формуле.

Request:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Trigger action",
               "eventsource": 0,
               "esc_period": "15m",
               "filter": {
                   "evaltype": 3,
                   "formula": "A and (B or C)",
                   "conditions": [
                       {
                           "conditiontype": 4,
                           "operator": 5,
                           "value": "2",
                           "formulaid": "A"
                       },
                       {
                           "conditiontype": 1,
                           "operator": 0,
                           "value": "10084",
                           "formulaid": "B"
                       },
                       {
                           "conditiontype": 1,
                           "operator": 0,
                           "value": "10106",
                           "formulaid": "C"
                       }
                   ]
               },
               "operations": [
                   {
                       "operationtype": 0,
                       "esc_step_from": 1,
                       "esc_step_to": 1,
                       "opmessage_grp": [
                           {
                               "usrgrpid": "7"
                           }
                       ],
                       "opmessage": {
                           "default_msg": 1,
                           "mediatypeid": "1"
                       }
                   }
               ]
           },
           "id": 1
       }

Одговор:

{
           "jsonrpc": "2.0",
           "result": {
               "actionids": [
                   "18"
               ]
           },
           "id": 1
       }

Креирање правила аутоматске регистрације агента

Креирање акције ауто регистрације, која додаје домаћина у групу домаћина "2", када име домаћина садржи "SRV" или метаподаци садрже "AlmaLinux".

Request:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Register Linux servers",
               "eventsource": "2",
               "filter": {
                   "evaltype": "2",
                   "conditions": [
                       {
                           "conditiontype": "22",
                           "operator": "2",
                           "value": "SRV"
                       },
                       {
                           "conditiontype": "24",
                           "operator": "2",
                           "value": "AlmaLinux"
                       }
                   ]
               },
               "operations": [
                   {
                       "operationtype": "4",
                       "opgroup": [
                           {
                               "groupid": "2"
                           }
                       ]
                   }
               ]
           },
           "id": 1
       }

Одговор:

{
           "jsonrpc": "2.0",
           "result": {
               "actionids": [
                   19
               ]
           },
           "id": 1
       }

Креирање правила аутоматске регистрације агента са ознакама домаћина

Креирање акције за аутоматску регистрацију, која додаје домаћина у групу домаћина "2" и додавање две ознаке домаћина.

Request:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Register Linux servers with tags",
               "eventsource": "2",
               "operations": [
                   {
                       "operationtype": "4",
                       "opgroup": [
                           {
                               "groupid": "2"
                           }
                       ]
                   },
                   {
                       "operationtype": "13",
                       "optag": [
                           {
                               "tag": "Location",
                               "value": "Office"
                           },
                           {
                               "tag": "City",
                               "value": "Riga"
                           }
                       ]
                   }
               ]
           },
           "id": 1
       }

Одговор:

{
           "jsonrpc": "2.0",
           "result": {
               "actionids": [
                   20
               ]
           },
           "id": 1
       }

Погледајте такође

Извор

CAction::create() у ui/include/classes/api/services/CAction.php.