//Create a class for Events
package Event
+import groovy.json.JsonSlurper
public class Event {
private String deviceId
private boolean isStateChange
private String unit
private String data
+ private jsonData
private int integerValue
private double doubleValue
private List integerValues = ["battery", "hue", "saturation", "energy", "level", "temperature",
"heatingSetpoint", "coolingSetpoint", "thermostatSetpoint", "illuminance"]
+ private boolean physical
+ private def date
Event(String value, String name, String deviceId, String descriptionText, boolean displayed, String linkText, String displayName, boolean isStateChange, String unit, String data) {
this.deviceId = deviceId
this.isStateChange = isStateChange
this.unit = unit
this.data = data
+ this.jsonData = new groovy.json.JsonSlurper().parseText(data)
this.displayed = displayed
if (integerValues.contains(name)) {
+ int dot = value.indexOf('.')
+ if (dot != -1)
+ value = value.substring(0, dot)
this.integerValue = value.toInteger()
this.doubleValue = Double.parseDouble(value);
}
+ this.physical = true
+ this.date = new Date()
}
}