оъект action.create(объект/массив действия)
Этот метод позволяет создавать новые действия.
(объект/массив)
Создаваемые действия.
В дополнение к стандартным свойствам действия, этот метод принимает следующие параметры.
Параметр | Тип | Описание |
---|---|---|
filter | объект | Объект фильтра действия для действия. |
operations (требуется) |
массив | Создаваемые операции действия для действия. |
recovery_operations | массив | Создаваемые операции о восстановлении для действия. |
acknowledge_operations | массив | Создаваемые операции о подтверждении для действия. |
(объект)
Возвращает объект, который содержит ID созданных действий под свойством actionids
. Порядок возвращаемых ID совпадает с порядком переданных действий.
Создание действия, которое будет запущено, когда триггер с узла сети "10084", который имеет слово "memory" в своём имени, перейдёт в состояние проблемы. Действие сначала должно отправить сообщение всем пользователям из группы пользователей "7". Если событие не решено за 4 минуты, действие выполнит скрипт "3" на всех узлах сети из группы "2". На восстановление триггера действие отправит оповещение всем пользователям, кто получал любые сообщения о проблеме ранее. На подтверждение триггера будет отправлено сообщение с пользовательской темой и сообщением всем, кто оставлял подтверждения и комментарии, при помощи всех типов способов оповещения.
Запрос:
<code java>
{
"jsonrpc": "2.0",
"method": "action.create",
"params": {
"name": "Trigger action",
"eventsource": 0,
"status": 0,
"esc_period": "2m",
"def_shortdata": "{TRIGGER.NAME}: {TRIGGER.STATUS}",
"def_longdata": "{TRIGGER.NAME}: {TRIGGER.STATUS}\r\nLast value: {ITEM.LASTVALUE}\r\n\r\n{TRIGGER.URL}",
"filter": {
"evaltype": 0,
"conditions": [
{
"conditiontype": 1,
"operator": 0,
"value": "10084"
},
{
"conditiontype": 3,
"operator": 2,
"value": "memory"
}
]
},
"operations": [
{
"operationtype": 0,
"esc_period": "0s",
"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"
}
}
],
"recovery_operations": [
{
"operationtype": "11",
"opmessage": {
"default_msg": 1
}
}
],
"acknowledge_operations": [
{
"operationtype": "12",
"opmessage": {
"message": "Custom acknowledge operation message body",
"subject": "Custom acknowledge operation message subject"
}
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Ответ:
Создание действия, которое присоединит обнаруженные узлы сети к шаблону "10091".
Запрос:
{
"jsonrpc": "2.0",
"method": "action.create",
"params": {
"name": "Discovery action",
"eventsource": 1,
"status": 0,
"esc_period": "0s",
"filter": {
"evaltype": 0,
"conditions": [
{
"conditiontype": 21,
"value": "1"
},
{
"conditiontype": 10,
"value": "2"
}
]
},
"operations": [
{
"esc_step_from": 1,
"esc_period": "0s",
"optemplate": [
{
"templateid": "10091"
}
],
"operationtype": 6,
"esc_step_to": 1
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Ответ:
Создание действия на триггеры, которое будет использовать пользовательское условие фильтрации. Действие должно отправлять сообщение по каждому триггеру с выжностью выше или идентичной "Предупреждению" по узлам сети "10084" и "10106". ID "A", "B" и "C" в формуле были выбраны случайно.
Запрос:
{
"jsonrpc": "2.0",
"method": "action.create",
"params": {
"name": "Trigger action",
"eventsource": 0,
"status": 0,
"esc_period": "2m",
"def_shortdata": "{TRIGGER.NAME}: {TRIGGER.STATUS}",
"def_longdata": "{TRIGGER.NAME}: {TRIGGER.STATUS}\r\nLast value: {ITEM.LASTVALUE}\r\n\r\n{TRIGGER.URL}",
"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_period": "0s",
"esc_step_from": 1,
"esc_step_to": 2,
"evaltype": 0,
"opmessage_grp": [
{
"usrgrpid": "7"
}
],
"opmessage": {
"default_msg": 1,
"mediatypeid": "1"
}
}
]
},
"auth": "038e1d7b1735c6a5436ee9eae095879e",
"id": 1
}
Ответ:
CAction::create() в frontends/php/include/classes/api/services/CAction.php.
CAction::create() in ui/include/classes/api/services/CAction.php.