action.create

Описание

оъект action.create(объект/массив действия)

Этот метод позволяет создавать новые действия.

Параметры

(объект/массив) Создаваемые действия.

В дополнение к стандартным свойствам действия, этот метод принимает следующие параметры.

Параметр Тип Описание
operations
(требуется)
массив Создаваемые операции действия для действия.
conditions массив Создаваемые условия действия для действия.

Возвращаемые значения

(объект) Возвращает объект, который содержит ID созданных действий под свойством actionids. Порядок возвращаемых ID совпадает с порядком переданных действий.

Примеры

Создание действия для триггеров

Создание действия, которое будет запущено, когда триггер с узла сети "30045", который имеет слово "memory" в своём имени, перейдёт в состояние проблемы. Действие сначала должно отправить сообщение всем пользователям из группы пользователей "7". Если событие не решено за 4 минуты, действие выполнит скрипт "3" на всех узлах сети из группы "2".

Запрос:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Trigger action",
               "eventsource": 0,
               "evaltype": 0,
               "status": 0,
               "esc_period": 120,
               "def_shortdata": "{TRIGGER.NAME}: {TRIGGER.STATUS}",
               "def_longdata": "{TRIGGER.NAME}: {TRIGGER.STATUS}\r\nLast value: {ITEM.LASTVALUE}\r\n\r\n{TRIGGER.URL}",
               "conditions": [
                   {
                       "conditiontype": 1,
                       "operator": 0,
                       "value": "30045"
                   },
                   {
                       "conditiontype": 3,
                       "operator": 2,
                       "value": "memory"
                   }
               ],
               "operations": [
                   {
                       "operationtype": 0,
                       "esc_period": 0,
                       "esc_step_from": 1,
                       "esc_step_to": 2,
                       "evaltype": 0,
                       "opmessage_grp": [
                           {
                               "usrgrpid": "7"
                           }
                       ],
                       "opmessage": {
                           "default_msg": 1,
                           "mediatypeid": "1"
                       }
                   },
                   {
                       "operationtype": 1,
                       "esc_step_from": 3,
                       "esc_step_to": 4,
                       "evaltype": 0,
                       "opconditions": [
                           {
                               "conditiontype": 14,
                               "operator": 0,
                               "value": "0"
                           }
                       ],
                       "opcommand_grp": [
                           {
                               "groupid": "2"
                           }
                       ],
                       "opcommand": {
                           "type": 4,
                           "scriptid": "3"
                       }
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Ответ:

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

Создание действия на обнаружение

Создание действия, которое присоединит обнаруженные узлы сети к шаблону "30085".

Запрос:

{
           "jsonrpc": "2.0",
           "method": "action.create",
           "params": {
               "name": "Discovery action",
               "eventsource": 1,
               "status": 0,
               "esc_period": 0,
               "evaltype": 0,
               "conditions": [
                   {
                       "conditiontype": 21,
                       "value": "1"
                   },
                   {
                       "conditiontype": 10,
                       "value": "2"
                   }
               ],
               "operations": [
                   {
                       "esc_step_from": 1,
                       "esc_period": 0,
                       "optemplate": [
                           {
                               "templateid": "30085"
                           }
                       ],
                       "operationtype": 6,
                       "esc_step_to": 1
                   }
               ]
           },
           "auth": "038e1d7b1735c6a5436ee9eae095879e",
           "id": 1
       }

Ответ:

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

Смотрите также

Исходный код

CAction::create() в frontends/php/api/classes/CAction.php.