//Create a class for contact sensor package ContactSensor import SmartThing.SmartThing public class ContactSensor 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 currentContact = new StringBuilder() // Maps from features to values HashMap deviceValuesMap = new HashMap() // Possible values for eventsSince method List possibleValues = new ArrayList(); ContactSensor(Closure sendEvent, StringBuilder id, StringBuilder label, StringBuilder displayName, StringBuilder currentContact) { deviceValuesMap = deviceValueSmartThing idSmartThing = id labelSmartThing = label displayNameSmartThing = displayName sendEventSmartThings = sendEvent possibleValuesSmartThings = possibleValues // Initialization this.id = id this.label = label this.displayName = displayName this.currentContact = currentContact possibleValues.add("closed") possibleValues.add("open") deviceValuesMap.put("contact", currentContact) } // Methods to return values def getCurrentContact() { return currentContact.toString() } }