Device Inputs not enforcing "required: true"

I'm writing an app with various inputs set to required true, but the app doesn't seem to respect the inputs that are based on devices/capabilities. If I leave these blank and hit done the app saves without prompting for the device inputs. Text inputs seem to enforce correctly. I went back to a few of my other apps only realize they weren't being enforced either. Let me know if I making a simple syntax error or if this is something else. See code snippet below.

preferences {
    section("") {
        input "motionSensors", "capability.motionSensor", title: "Select Motion Sensors:", required: true, multiple:true
        input "mySwitches", "capability.switch", title: "Switches to Turn On:", multiple:true
        input "myDimmers", "capability.switchLevel", title: "Select Dimmers to Set:", multiple:true
        if(myDimmers){
            input "onLevel", "number", title: "Level when Turned on:", required: true
            input "dimLevel", "number", title: "Level when Dimmed:", required: true
        	input "dimTime", "number", title: "Inactivity Timeout before Lights Dim:", required: true
        }
        input "offTime", "number", title: "Timeout before All Light Turn Off:", required: true
    }
        //input ("isVS", "boolean", title: "Create Virtual Switch to Enable/Disable?")
}

Yep, we will look into it. It is enforced for many inputs, but evidently not for devices.

1 Like

Unrelenting enforcement of required: true coming your way in next release.

Obviously, we knew the difference as seen in the red vs blue bar on the selector. But enforcement? Never got around to it apparently.

2 Likes

Record turn around time as usual. Thanks Bruce!
You guys better be careful...you are setting expectations really high.
Just so you know, I expect the same resolution time frame when you have 100,000 customers in line...and I'm bookmarking this thread as proof of implied SLA.

5 Likes

You know, this topic is about required:true.

Just to be on record for this future claim of implied SLA, these response rates are required:false.

3 Likes

Too late my friend...too late.

Definition of unrelenting

  1. not softening or yielding in determination.

2 . not letting up or weakening in vigor or pace

1 Like

That simply means you won't ever again be able to close a page without selecting a required device. You may long for the good old days where you could be more lazy.... I know I'm going to miss them. :sunglasses:

3 Likes