Hi,
Sorry, vacation time here so answering was delayed.
Setting number of samples to 24 means that all 24 samples should return "true". It would trigger only if 24 consecutive data collections will return different value. So not what we need here.
We don't have built-in thing for "no changes within given time", so we will use a bit of scripting. In the Transformation page of your DCI put the following:
oldValue = GetDCIRawValue($node, $dci.id);
if (oldValue != $1) {
$node.setCustomAttribute("lastChangeTime", time());
}
lastChangeTime = $node.getCustomAttribute("lastChangeTime");
if (lastChangeTime == null) lastChangeTime = 0;
return time() - lastChangeTime;
Set Data type after transformation to Integer (this is relatively new feature, if you don't have it, upgrade to 5.x).
On the General page set Units to Uptime.
This should be it. Now how it works - in the transformation script we compare new value to the previous raw walue. If they differ we save timestamp into custom attribute on the node. And we subtract value of this custom attribute from current time - so result of the DCI is time in seconds since last change of the value. You can just set a treshold > 86400 and it should work.