4f9e4a9d5a28b42a6b6595d7519577b65a09145b
[smartthings-infrastructure.git] / MobilePresence / MobilePresence.groovy
1 //Create a class for mobile presence
2 package MobilePresence
3 import SmartThing.SmartThing
4
5 public class MobilePresence 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 deviceNetworkId = new StringBuilder()
12         // Maps from features to values
13         HashMap<String, StringBuilder> deviceValuesMap = new HashMap<String, StringBuilder>()
14         
15
16         MobilePresence(Closure sendEvent, StringBuilder id, StringBuilder label, StringBuilder displayName, StringBuilder deviceNetworkId) {
17                 deviceValuesMap = deviceValueSmartThing
18                 deviceIntValuesMap = deviceIntValueSmartThing
19                 idSmartThing = id
20                 labelSmartThing = label
21                 displayNameSmartThing = displayName
22                 sendEventSmartThings = sendEvent
23                 
24                 // Initialization
25                 this.id = id
26                 this.label = label
27                 this.displayName = displayName
28                 this.deviceNetworkId = deviceNetworkId
29
30                 deviceValuesMap.put("deviceNetworkId", deviceNetworkId)
31         }
32
33         // Methods to return values
34         def getDeviceNetworkId() {
35                 return deviceNetworkId.toString()
36         }
37 }