Charmed Quark Systems, Ltd. - Support Forums and Community
Request for Event Filter - Printable Version

+- Charmed Quark Systems, Ltd. - Support Forums and Community (
+-- Forum: General Discussion (
+--- Forum: Installation/Configuration (
+--- Thread: Request for Event Filter (/showthread.php?tid=8081)

Request for Event Filter - George M - 01-17-2013

Is it possible to add an event logic? Not sure if that is the correct nomenclature or not.

Right now there is:
All True
One or More True
Only One True

To me is seems like the second and third are the same. Can we include

Two Or More True

Lets say I need to turn on a light depending on motion and time of day. The day is divided up into Morning, Day, Evening and Nite. Morning, Day and Evening turn on the light to 100%. Nite turns on the lite to 20%. Now I have to write three or four different events. However if I could use one event to include Motion Trip, Day variable as Morning, Day variable as Day, Day Variable as Evening. Since the Day variable can only be one of those then any combination of Motion and the Day variable would turn on the light.

Request for Event Filter - Dean Roddey - 01-17-2013

The second and third aren't the same. The third means only one of them can be true. If more than one is true the filter will return false. The second means that at least one must be true, but more than one can be true.

We can't do the thing you are talking about, not at least using the scheme it currently uses, which are boolean logic type operations, not counters. It's not actually counting how many are true or false, it's using boolean AND, OR, and XOR operations to create a bitmask where one bit represents each of the four filters. It then just sees if the resulting value is zero or non-zero.

So it would take a fairly significant change to do that.

Keep in mind that you can put the common logic of these actions into a global action and invoke that, passing it parameters to tell it what to do. So you could probably minimize the redundancy pretty significantly.