From: rtrimana Date: Sat, 10 Aug 2019 18:19:44 +0000 (-0700) Subject: Adding missing methods and condition. X-Git-Url: http://plrg.eecs.uci.edu/git/?p=smartthings-infrastructure.git;a=commitdiff_plain;h=e98662a7daa8b953396cc514738ec56a41172d42;hp=55f57d1619271ede7bbd5c83e6218df6772afc89 Adding missing methods and condition. --- diff --git a/ColorControl/ColorControl.groovy b/ColorControl/ColorControl.groovy index 4878c48..c3d652d 100644 --- a/ColorControl/ColorControl.groovy +++ b/ColorControl/ColorControl.groovy @@ -142,6 +142,16 @@ public class ColorControl { } } + def setLevel(long level) { + if (level != this.level) { + this.currentLevel = level + this.level = level + println("The level of the light is changed to $level!") + sendEvent([name: "level", value: "$level", deviceId: this.id, descriptionText: "", + displayed: true, linkText: "", isStateChange: false, unit: "", data: '{"info": "info"}']) + } + } + def setColorTemperature(int colorTemperature) { if (colorTemperature != this.colorTemperature) { this.colorTemperature = colorTemperature diff --git a/ColorControl/ColorControls.groovy b/ColorControl/ColorControls.groovy index 9b003f6..90223c5 100644 --- a/ColorControl/ColorControls.groovy +++ b/ColorControl/ColorControls.groovy @@ -205,6 +205,14 @@ public class ColorControls { } } + def setLevel(long level) { + if (level != this.level) { + this.currentLevel = level + this.level = level + colorControls[0].setLevel(level) + } + } + def setColorTemperature(int colorTemperature) { if (colorTemperature != this.colorTemperature) { this.colorTemperature = colorTemperature diff --git a/Extractor/ExtractorScript.py b/Extractor/ExtractorScript.py index a5d46c8..1643c43 100644 --- a/Extractor/ExtractorScript.py +++ b/Extractor/ExtractorScript.py @@ -261,6 +261,7 @@ def AnalyzeCapabilities(Temp, appName, F): Temp == "capability.switchLevel" or Temp == "capability.illuminanceMeasurement" or Temp == "capability.colorControl" or + Temp == "capability.colorTemperature" or #Motion related Temp == "capability.motionSensor" or Temp == "capability.accelerationSensor" or @@ -289,7 +290,7 @@ def AnalyzeCapabilities(Temp, appName, F): def AnalyzePhysicalInteraction(app1Capab, app2Capab): #Light if ("capability.illuminanceMeasurement" in app1Capab) and ("capability.switch" in app2Capab or - "capability.switchLevel" in app2Capab or "capability.colorControl" in app2Capab): + "capability.switchLevel" in app2Capab or "capability.colorControl" or "capability.colorTemperature" in app2Capab): print ("\nWARNING: Potential PHYSICAL CONFLICT (light) detected between App1 and App2!\n") #Motion # TODO: Technically this is not entirely precise since we need to be able to detect that the other app creates motion