Index: trunk/FACT++/src/smartfact.cc
===================================================================
--- trunk/FACT++/src/smartfact.cc	(revision 14497)
+++ trunk/FACT++/src/smartfact.cc	(revision 14498)
@@ -438,4 +438,5 @@
 
     EventHist fControlMessageHist;
+    EventHist fControlAlarmHist;
     int32_t   fControlScriptDepth;
 
@@ -705,5 +706,14 @@
             return GetCurrentState();
 
-        if (d.GetQoS()==90)
+        if (d.GetQoS()==MessageImp::kAlarm)
+        {
+            if (d.GetSize()==1)
+                for (auto it=fControlAlarmHist.begin(); it!=fControlAlarmHist.end(); it++)
+                    it->time = Time(Time::none);
+            else
+                fControlAlarmHist.add(d.GetText(), d.GetTime());
+        }
+
+        if (d.GetQoS()==MessageImp::kComment)
             HandleControlMessageImp(d);
 
@@ -2293,4 +2303,11 @@
         newerr |= SetError(fFreeSpace<50000000000,
                            "Less than 50GB disk space left.");
+
+        for (auto it=fControlAlarmHist.begin(); it!=fControlAlarmHist.end(); it++)
+        {
+            newerr |= SetError(it->time.IsValid(), it->msg);
+            if (!it->time)
+                fControlAlarmHist.erase(it);
+        }
 
         fLastRunFinishedWithZeroEvents = false;
