1 //Create a class for Events
3 import groovy.json.JsonSlurper
6 private String deviceId
8 private String linkText
9 private String displayName
10 private boolean displayed
12 private String descriptionText
13 private boolean isStateChange
17 private int integerValue
18 private double doubleValue
19 private boolean physical
21 private boolean isManualTransaction
23 Event(String value, String name, String deviceId, String descriptionText, boolean displayed, String linkText, String displayName, boolean isStateChange, String unit, String data) {
24 this.deviceId = deviceId
25 this.linkText = linkText
27 this.displayName = displayName
29 this.descriptionText = descriptionText
30 this.isStateChange = isStateChange
33 this.jsonData = new groovy.json.JsonSlurper().parseText(data)
34 this.displayed = displayed
35 if (["battery", "hue", "saturation", "energy", "level", "temperature", "heatingSetpoint", "coolingSetpoint", "thermostatSetpoint", "illuminance"].contains(name)) {
36 int dot = value.indexOf('.')
38 value = value.substring(0, dot)
39 this.integerValue = value.toInteger()
40 this.doubleValue = Double.parseDouble(value);
43 this.date = new Date()
46 void setManualTransaction(boolean isTrue) {
47 isManualTransaction = isTrue;