diff --git a/server/src/main.cpp b/server/src/main.cpp index 61ab9fa..f769a2c 100644 --- a/server/src/main.cpp +++ b/server/src/main.cpp @@ -271,7 +271,13 @@ void CMain::WatchdogMessage(int ClientNetID, double load_1, double load_5, doubl typedef exprtk::parser<double> parser_t; const std::string expression_string = Watchdog(ID)->m_aRule; + int ClientID = ClientNetToClient(ClientNetID); symbol_table_t symbol_table; + symbol_table.add_variable("username", Client(ClientID)->m_aUsername); + symbol_table.add_variable("name", Client(ClientID)->m_aName); + symbol_table.add_variable("type", Client(ClientID)->m_aType); + symbol_table.add_variable("host", Client(ClientID)->m_aHost); + symbol_table.add_variable("location", Client(ClientID)->m_aLocation); symbol_table.add_variable("load_1",load_1); symbol_table.add_variable("load_5",load_5); symbol_table.add_variable("load_15",load_15); @@ -310,7 +316,6 @@ void CMain::WatchdogMessage(int ClientNetID, double load_1, double load_5, doubl if (expression.value() > 0) { - int ClientID = ClientNetToClient(ClientNetID); time_t currentStamp = (long long)time(/*ago*/0); if ((currentStamp-Client(ClientID)->m_AlarmLastTime) > Watchdog(ID)->m_aInterval) {