Ignore some data samples for Alert
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Ignore some data samples for Alert
Hello All,
I am creating an application where I monitor a Current data stream and in my case in the begging of the process the property has an overshoot that should not be considered (in Red):
I thought about doing a condition with the orange line ( if >7 then Alert). I know I could create a flag and set it but I'm curious to know if there is something that could be done using the Alerts capability.
Any thoughts?
Cheers
Ewerton
Solved! Go to Solution.
- Labels:
-
Design
-
Troubleshooting
- Tags:
- alerts
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
I just tested it and it works!
I subscribed to the property and added this code:
var params = {
persistent: undefined /* BOOLEAN */
};
(eventData.newValue.value <15.0 || eventData.newValue.value > 490.0)? me.DisableAllAlerts(params):me.EnableAllAlerts(params)
Any other feedback is appreciated!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Sorry, I am confused. You want an alert to fire when what happens exactly?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
I want the alert to fire when the reading exceeds the limits but not in the begging in the process because it is known that this overshoot makes the property to go over the limit and it is not a problem.
Cheers
Ewerton
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
You should be able to just add an alert to an integer or number property. Alerts do allow you to set a threshold, if that is what you need. Just go to the property in question, edit it, click "Manage Alerts" and then select "Above" as the type of the alert and enter the threshold in the "Limit" box.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
To account for the overshoot, I'd test for conditions that indicated the device was in "startup" mode in the subscription for the "out of range" alert. IOW, in either the subscription, or the service the subscription runs, the first test would be"
if (conditions that indicate I'm in startup) {
no op, log entry, etc.
} else {
raise a notification
}
You may have to be clever to make that determination - I don't know which properties are available to you.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
Thanks Stephen.
This was my initial approach (use subscription instead of using the Alerts capability).
One thing that just occurred when me I was replying your message is that I can create a subscription that monitors one of the variables and add in the condition:
- if (conditions that indicate I'm in startup) {
- me.DisableAllAlerts
- } else {
- me.EnableAllAlerts
- }
In this way I can use the OOTB alerts feature.
Cheers
Ewerton
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Notify Moderator
I just tested it and it works!
I subscribed to the property and added this code:
var params = {
persistent: undefined /* BOOLEAN */
};
(eventData.newValue.value <15.0 || eventData.newValue.value > 490.0)? me.DisableAllAlerts(params):me.EnableAllAlerts(params)
Any other feedback is appreciated!
