1 // Create a class for acceleration sensor
2 package AccelerationSensor
3 import SmartThing.SmartThing
5 public class AccelerationSensor 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 currentAcceleration = 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 AccelerationSensor(Closure sendEvent, StringBuilder id, StringBuilder label, StringBuilder displayName, StringBuilder currentAcceleration) {
18 deviceValuesMap = deviceValueSmartThing
19 deviceIntValuesMap = deviceIntValueSmartThing
21 labelSmartThing = label
22 displayNameSmartThing = displayName
23 sendEventSmartThings = sendEvent
24 possibleValuesSmartThings = possibleValues
29 this.displayName = displayName
30 this.currentAcceleration = currentAcceleration
31 possibleValues.add("active")
32 possibleValues.add("inactive")
34 deviceValuesMap.put("acceleration", currentAcceleration)
37 // Methods to return values
38 def getCurrentAcceleration() {
39 return currentAcceleration.toString()