Unfortunately, there is no suspension of triggers
with SmartThings.
(IE: a WAIT will not stop a new trigger
from coming in)
In a nutshell, if you subscribe to a device (IE: DoorA’s contact), then each time it opens or closes, the piston will run from top to bottom, and execute anything not blocked by conditions
.
For example, both of our pistons have these for triggers
:
ContactA opens = Piston runs top to bottom
ContactA closes = Piston runs top to bottom
ContactB opens = Piston runs top to bottom
ContactB closes = Piston runs top to bottom
ContactC opens = Piston runs top to bottom
ContactC closes = Piston runs top to bottom
ContactD opens = Piston runs top to bottom
ContactD closes = Piston runs top to bottom
Some advance coding using variables
may be able to circumvent around this a bit, but the code will be MUCH more complex, with greater chance of errors… and yet, all of the above triggers
will still be true.
Side Note:
Also keep in mind that your original goal will break if someone opens their door (to sweep, for example), and then shuts it. With your logic, the light could potentially stay on for hours… (since they did not open a second door)