//Create a class for motion sensor package MotionSensor import SmartThing.SmartThing public class MotionSensor extends SmartThing { // id, label, and display name of the device StringBuilder id = new StringBuilder() StringBuilder label = new StringBuilder() StringBuilder displayName = new StringBuilder() // Features with string values StringBuilder currentMotion = new StringBuilder() // Maps from features to values HashMap deviceValuesMap = new HashMap() // Possible values for eventsSince method List possibleValues = new ArrayList(); MotionSensor(Closure sendEvent, StringBuilder id, StringBuilder label, StringBuilder displayName, StringBuilder currentMotion) { deviceValuesMap = deviceValueSmartThing idSmartThing = id labelSmartThing = label displayNameSmartThing = displayName sendEventSmartThings = sendEvent possibleValuesSmartThings = possibleValues // Initialization this.id = id this.label = label this.displayName = displayName this.currentMotion = currentMotion possibleValues.add("active") possibleValues.add("inactive") deviceValuesMap.put("motion", currentMotion) } // Methods to return values def getCurrentMotion() { return currentMotion.toString() } }