diff --git a/eraser-base/src/main/jastadd/LastChanged.jrag b/eraser-base/src/main/jastadd/LastChanged.jrag index 9c52887c2349595a6d8546f632882ccfb9951cb9..64002905949c332fb5f15cc8478f6ae8248b2418 100644 --- a/eraser-base/src/main/jastadd/LastChanged.jrag +++ b/eraser-base/src/main/jastadd/LastChanged.jrag @@ -10,6 +10,7 @@ aspect LastChanged { double frequency = frequencySetting.getEventProcessingFrequency(); Instant lastStateChange = this.getValue(); if (lastStateChange == null) { + //First state change always allowed return true; } return Instant.now().toEpochMilli() - lastStateChange.toEpochMilli() > (1 / frequency) * 1000; diff --git a/eraser-base/src/main/jastadd/shem.jrag b/eraser-base/src/main/jastadd/shem.jrag index f163ebf4824dab8d3c3107a35fe4654b48e6c2ad..1eb0dfa753a45b36fe7047e662a6577b8b27eea5 100644 --- a/eraser-base/src/main/jastadd/shem.jrag +++ b/eraser-base/src/main/jastadd/shem.jrag @@ -44,6 +44,9 @@ aspect SmartHomeEntityModel { } result.enableSendState(); } + if (this.hasFrequencySetting()) { + result.setFrequencySetting(this.getFrequencySetting()); + } return result; } }