1 //Create a class for contact sensor
3 import SmartThing.SmartThing
5 public class ContactSensor extends SmartThing {
6 // id, label, and display name of the device
7 StringBuilder id = new StringBuilder()
8 StringBuilder label = new StringBuilder()
9 StringBuilder displayName = new StringBuilder()
10 // Features with string values
11 StringBuilder currentContact = new StringBuilder()
12 // Maps from features to values
13 HashMap<String, StringBuilder> deviceValuesMap = new HashMap<String, StringBuilder>()
14 // Possible values for eventsSince method
15 List<StringBuilder> possibleValues = new ArrayList<StringBuilder>();
17 ContactSensor(Closure sendEvent, StringBuilder id, StringBuilder label, StringBuilder displayName, StringBuilder currentContact) {
18 deviceValuesMap = deviceValueSmartThing
20 labelSmartThing = label
21 displayNameSmartThing = displayName
22 sendEventSmartThings = sendEvent
23 possibleValuesSmartThings = possibleValues
28 this.displayName = displayName
29 this.currentContact = currentContact
30 possibleValues.add("closed")
31 possibleValues.add("open")
33 deviceValuesMap.put("contact", currentContact)
36 // Methods to return values
37 def getCurrentContact() {
38 return currentContact.toString()