diff --git a/smartapps/thehomeremote-homeremote/home-remote.src/home-remote.groovy b/smartapps/thehomeremote-homeremote/home-remote.src/home-remote.groovy index b41d3d5..c6dcae3 100644 --- a/smartapps/thehomeremote-homeremote/home-remote.src/home-remote.groovy +++ b/smartapps/thehomeremote-homeremote/home-remote.src/home-remote.groovy @@ -27,53 +27,53 @@ definition( preferences { section() { - input "accelerationSensors", "capability.accelerationSensor", multiple: true, required: false - input "actuators", "capability.actuator", multiple: true, required: false - input "alarms", "capability.alarm", multiple: true, required: false - input "batteries", "capability.battery", multiple: true, required: false - input "beacons", "capability.beacon", multiple: true, required: false - input "buttonGroup", "capability.button", multiple: true, required: false - input "carbonMonoxideDetectors", "capability.carbonMonoxideDetector", multiple: true, required: false - input "colorControls", "capability.colorControl", multiple: true, required: false - input "configurations", "capability.configuration", multiple: true, required: false - input "contactSensors", "capability.contactSensor", multiple: true, required: false - input "doorControls", "capability.doorControl", multiple: true, required: false - input "energyMeters", "capability.energyMeter", multiple: true, required: false - input "illuminanceMeasurements", "capability.illuminanceMeasurement", multiple: true, required: false - input "imageCaptures", "capability.imageCapture", multiple: true, required: false - input "locks", "capability.lock", multiple: true, required: false - input "mediaControllers", "capability.mediaController", multiple: true, required: false - input "momentaries", "capability.momentary", multiple: true, required: false - input "motionSensors", "capability.motionSensor", multiple: true, required: false - input "musicPlayers", "capability.musicPlayer", multiple: true, required: false - input "notifications", "capability.notification", multiple: true, required: false - input "pollings", "capability.polling", multiple: true, required: false - input "powerMeters", "capability.powerMeter", multiple: true, required: false - input "presenceSensors", "capability.presenceSensor", multiple: true, required: false - input "refreshes", "capability.refresh", multiple: true, required: false - input "relativeHumidityMeasurements", "capability.relativeHumidityMeasurement", multiple: true, required: false - input "relaySwitches", "capability.relaySwitch", multiple: true, required: false - input "sensors", "capability.sensor", multiple: true, required: false - input "signalStrengths", "capability.signalStrength", multiple: true, required: false - input "sleepSensors", "capability.sleepSensor", multiple: true, required: false - input "smokeDetectors", "capability.smokeDetector", multiple: true, required: false - input "speechSyntheses", "capability.speechSynthesis", multiple: true, required: false - input "stepSensors", "capability.stepSensor", multiple: true, required: false - input "switches", "capability.switch", multiple: true, required: false - input "switchLevels", "capability.switchLevel", multiple: true, required: false - input "temperatureMeasurements", "capability.temperatureMeasurement", multiple: true, required: false - input "thermostats", "capability.thermostat", multiple: true, required: false - input "thermostatCoolingSetpoints", "capability.thermostatCoolingSetpoint", multiple: true, required: false - input "thermostatFanModes", "capability.thermostatFanMode", multiple: true, required: false - input "thermostatHeatingSetpoints", "capability.thermostatHeatingSetpoint", multiple: true, required: false - input "thermostatModes", "capability.thermostatMode", multiple: true, required: false - input "thermostatOperatingStates", "capability.thermostatOperatingState", multiple: true, required: false - input "thermostatSetpoints", "capability.thermostatSetpoint", multiple: true, required: false - input "threeAxes", "capability.threeAxis", multiple: true, required: false - input "tones", "capability.tone", multiple: true, required: false - input "touchSensors", "capability.touchSensor", multiple: true, required: false - input "valves", "capability.valve", multiple: true, required: false - input "waterSensors", "capability.waterSensor", multiple: true, required: false + input "accelerationSensors", "capability.accelerationSensor", title: "Acceleration Sensors", multiple: true, required: false + //input "actuators", "capability.actuator", title: "Actuators", multiple: true, required: false + input "alarms", "capability.alarm", title: "Alarms", multiple: true, required: false + input "batteries", "capability.battery", title: "Batteries", multiple: true, required: false + input "beacons", "capability.beacon", title: "Beacons", multiple: true, required: false + input "buttonGroup", "capability.button", title: "Buttons", multiple: true, required: false + input "carbonMonoxideDetectors", "capability.carbonMonoxideDetector", title: "Carbon Monoxide Detectors", multiple: true, required: false + input "colorControls", "capability.colorControl", title: "Color Controls", multiple: true, required: false + //input "configurations", "capability.configuration", title: "Configurations", multiple: true, required: false + input "contactSensors", "capability.contactSensor", title: "Contact Sensors", multiple: true, required: false + input "doorControls", "capability.doorControl", title: "Door Controls", multiple: true, required: false + input "energyMeters", "capability.energyMeter", title: "Energy Meters", multiple: true, required: false + input "illuminanceMeasurements", "capability.illuminanceMeasurement", title: "Illuminance Measurements", multiple: true, required: false + input "imageCaptures", "capability.imageCapture", title: "Image Captures", multiple: true, required: false + input "locks", "capability.lock", title: "Locks", multiple: true, required: false + input "mediaControllers", "capability.mediaController", title: "Media Controllers", multiple: true, required: false + input "momentaries", "capability.momentary", title: "Momentaries", multiple: true, required: false + input "motionSensors", "capability.motionSensor", title: "Motion Sensors", multiple: true, required: false + input "musicPlayers", "capability.musicPlayer", title: "Music Players", multiple: true, required: false + input "notifications", "capability.notification", title: "Notifications", multiple: true, required: false + //input "pollings", "capability.polling", title: "Pollings", multiple: true, required: false + input "powerMeters", "capability.powerMeter", title: "Power Meters", multiple: true, required: false + input "presenceSensors", "capability.presenceSensor", title: "Presence Sensors", multiple: true, required: false + //input "refreshes", "capability.refresh", title: "Refreshes", multiple: true, required: false + input "relativeHumidityMeasurements", "capability.relativeHumidityMeasurement", title: "Relative Humidity Measurements", multiple: true, required: false + input "relaySwitches", "capability.relaySwitch", title: "Relay Switches", multiple: true, required: false + //input "sensors", "capability.sensor", title: "Sensors", multiple: true, required: false + input "signalStrengths", "capability.signalStrength", title: "Signal Strengths", multiple: true, required: false + input "sleepSensors", "capability.sleepSensor", title: "Sleep Sensors", multiple: true, required: false + input "smokeDetectors", "capability.smokeDetector", title: "Smoke Detectors", multiple: true, required: false + input "speechSyntheses", "capability.speechSynthesis", title: "Speech Syntheses", multiple: true, required: false + input "stepSensors", "capability.stepSensor", title: "Step Sensors", multiple: true, required: false + input "switches", "capability.switch", title: "Switches", multiple: true, required: false + input "switchLevels", "capability.switchLevel", title: "Switch Levels", multiple: true, required: false + input "temperatureMeasurements", "capability.temperatureMeasurement", title: "Temperature Measurements", multiple: true, required: false + input "thermostats", "capability.thermostat", title: "Thermostats", multiple: true, required: false + input "thermostatCoolingSetpoints", "capability.thermostatCoolingSetpoint", title: "Thermostat Cooling Setpoints", multiple: true, required: false + input "thermostatFanModes", "capability.thermostatFanMode", title: "Thermostat Fan Modes", multiple: true, required: false + input "thermostatHeatingSetpoints", "capability.thermostatHeatingSetpoint", title: "Thermostat Heating Setpoints", multiple: true, required: false + input "thermostatModes", "capability.thermostatMode", title: "Thermostat Modes", multiple: true, required: false + input "thermostatOperatingStates", "capability.thermostatOperatingState", title: "Thermostat Operating States", multiple: true, required: false + input "thermostatSetpoints", "capability.thermostatSetpoint", title: "Thermostat Setpoints", multiple: true, required: false + input "threeAxes", "capability.threeAxis", title: "Three Axes", multiple: true, required: false + input "tones", "capability.tone", title: "Tones", multiple: true, required: false + input "touchSensors", "capability.touchSensor", title: "Touch Sensors", multiple: true, required: false + input "valves", "capability.valve", title: "Valves", multiple: true, required: false + input "waterSensors", "capability.waterSensor", title: "Water Sensors", multiple: true, required: false } } @@ -542,9 +542,9 @@ def getDevices(capability){ case "ColorControl": result = colorControls break - case "Configuration": - result = configurations - break + //case "Configuration": + // result = configurations + // break case "DoorControl": result = doorControls break @@ -566,12 +566,12 @@ def getDevices(capability){ case "Notification": result = notifications break - case "Polling": - result = pollings - break - case "Refresh": - result = refreshes - break + //case "Polling": + // result = pollings + // break + //case "Refresh": + // result = refreshes + // break case "RelaySwitch": result = relaySwitches break @@ -587,7 +587,7 @@ def getDevices(capability){ case "Thermostat": result = thermostats break - case "ThermostatCoolingSetpoint": + case "ThermostatCoolingSetpoint": result = thermostatCoolingSetpoints break case "ThermostatFanMode": @@ -690,7 +690,6 @@ def getThermostatFanModeCommand(value){ } void executeCommand() { - // use the built-in request object to get the command parameter def deviceId = request.JSON?.deviceId def capability = request.JSON?.capability def attribute = request.JSON?.attribute @@ -712,7 +711,7 @@ void executeCommand() { command = "setColor" valueIsParameter = true break - case "level": + case "level": command = "setLevel" valueIsParameter = true break @@ -728,7 +727,7 @@ void executeCommand() { command = "startActivity" valueIsParameter = true break - case "door": + case "door": command = getDoorControlCommand(value) break case "lock": @@ -751,10 +750,10 @@ void executeCommand() { default: command = value } - // check that the switch supports the specified command - // If not, return an error using httpError, providing a HTTP status code. devices.each { if (it.id == deviceId) { + // check that the device supports the specified command + // If not, return an error using httpError, providing a HTTP status code. if (!it.hasCommand(command)) { httpError(501, "$command is not a valid command for all devices specified") }