summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorsasha <sasha@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2008-05-27 08:24:17 +0000
committersasha <sasha@97f52cf1-0a1b-0410-bd0e-c28be96e8082>2008-05-27 08:24:17 +0000
commitc0bfb062b8ac422278fbd5b299ecbef51203011b (patch)
tree0d21b48a18b42a9fafeb19236cff97f50436bc3a /include
parent1528814bf6b442cc01211b9f0b3f2adaadf970f4 (diff)
downloadzabbix-c0bfb062b8ac422278fbd5b299ecbef51203011b.tar.gz
zabbix-c0bfb062b8ac422278fbd5b299ecbef51203011b.tar.xz
zabbix-c0bfb062b8ac422278fbd5b299ecbef51203011b.zip
- [DEV-173] added support of notification escalations on server side
git-svn-id: svn://svn.zabbix.com/trunk@5725 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'include')
-rw-r--r--include/common.h30
-rw-r--r--include/db.h22
2 files changed, 44 insertions, 8 deletions
diff --git a/include/common.h b/include/common.h
index 56056a11..ba822dfc 100644
--- a/include/common.h
+++ b/include/common.h
@@ -284,7 +284,8 @@ typedef enum
CONDITION_TYPE_DSTATUS,
CONDITION_TYPE_DUPTIME,
CONDITION_TYPE_DVALUE,
- CONDITION_TYPE_HOST_TEMPLATE
+ CONDITION_TYPE_HOST_TEMPLATE,
+ CONDITION_TYPE_EVENT_ACKNOWLEDGED
} zbx_condition_type_t;
/* Condition operators */
@@ -317,14 +318,14 @@ typedef enum
/* Special item key used for internal ZABBIX log */
#define SERVER_ZABBIXLOG_KEY "zabbix[log]"
-/* Alert types */
+/* Media types */
typedef enum
{
- ALERT_TYPE_EMAIL = 0,
- ALERT_TYPE_EXEC,
- ALERT_TYPE_SMS,
- ALERT_TYPE_JABBER
-} zbx_alert_type_t;
+ MEDIA_TYPE_EMAIL = 0,
+ MEDIA_TYPE_EXEC,
+ MEDIA_TYPE_SMS,
+ MEDIA_TYPE_JABBER
+} zbx_media_type_t;
/* Alert statuses */
typedef enum
@@ -334,6 +335,21 @@ typedef enum
ALERT_STATUS_FAILED
} zbx_alert_status_t;
+/* Escalation stauses */
+typedef enum
+{
+ ESCALATION_STATUS_ACTIVE = 0,
+ ESCALATION_STATUS_RECOVERY,
+ ESCALATION_STATUS_COMPLETED /* only in server code */
+} zbx_escalation_status_t;
+
+/* Alert types */
+typedef enum
+{
+ ALERT_TYPE_MESSAGE = 0,
+ ALERT_TYPE_COMMAND
+} zbx_alert_type_t;
+
/* Item statuses */
typedef enum
{
diff --git a/include/db.h b/include/db.h
index 79940f03..fbbe6fd0 100644
--- a/include/db.h
+++ b/include/db.h
@@ -102,6 +102,7 @@ typedef enum {
#define DB_HTTPSTEP struct zbx_httpstep_type
#define DB_HTTPSTEPITEM struct zbx_httpstepitem_type
#define DB_HTTPTESTITEM struct zbx_httptestitem_type
+#define DB_ESCALATION struct zbx_escalation_type
#define MAX_HISTORY_STR_LEN 255
@@ -340,7 +341,7 @@ DB_MEDIA
DB_MEDIATYPE
{
zbx_uint64_t mediatypeid;
- zbx_alert_type_t type;
+ zbx_media_type_t type;
char *description;
char *smtp_server;
char *smtp_helo;
@@ -372,6 +373,10 @@ DB_ACTION
int evaltype;
int status;
int eventsource;
+ int esc_period;
+ char *shortdata;
+ char *longdata;
+ int recovery_msg;
};
DB_OPERATION
@@ -383,6 +388,9 @@ DB_OPERATION
zbx_uint64_t objectid;
char *shortdata;
char *longdata;
+ int esc_period;
+ int default_msg;
+ int evaltype;
};
DB_CONDITION
@@ -460,6 +468,15 @@ DB_HTTPTESTITEM
zbx_httpitem_type_t type;
};
+DB_ESCALATION
+{
+ zbx_uint64_t escalationid;
+ zbx_uint64_t actionid;
+ int esc_step;
+ zbx_escalation_status_t status;
+ int nextcheck;
+};
+
#define DB_NODE "%s"
#define DBnode_local(fieldid) DBnode(fieldid, CONFIG_NODEID)
const char *DBnode(const char *fieldid, const int nodeid);
@@ -505,6 +522,9 @@ int DBupdate_item_status_to_notsupported(zbx_uint64_t itemid, const char *error)
int DBproxy_update_item_status_to_notsupported(zbx_uint64_t itemid);
int DBadd_service_alarm(zbx_uint64_t serviceid,int status,int clock);
int DBadd_alert(zbx_uint64_t actionid, zbx_uint64_t eventid, zbx_uint64_t userid, zbx_uint64_t mediatypeid, char *sendto, char *subject, char *message);
+int DBstart_escalation(zbx_uint64_t actionid, zbx_uint64_t triggerid, zbx_uint64_t eventid);
+int DBstop_escalation(zbx_uint64_t actionid, zbx_uint64_t triggerid);
+int DBremove_escalation(zbx_uint64_t escalationid);
void DBupdate_triggers_status_after_restart(void);
int DBget_prev_trigger_value(zbx_uint64_t triggerid);
/*int DBupdate_trigger_value(int triggerid,int value,int clock);*/