Commit 1423074485e2c94717f01dcbe98608da79c72a13

Authored by YevhenBondarenko
Committed by Andrew Shvayka
1 parent 03564318

fixed sending inactivity event after device creation.

@@ -15,6 +15,7 @@ @@ -15,6 +15,7 @@
15 */ 15 */
16 package org.thingsboard.server.service.state; 16 package org.thingsboard.server.service.state;
17 17
  18 +import com.datastax.driver.core.utils.UUIDs;
18 import com.fasterxml.jackson.databind.node.ObjectNode; 19 import com.fasterxml.jackson.databind.node.ObjectNode;
19 import com.google.common.base.Function; 20 import com.google.common.base.Function;
20 import com.google.common.util.concurrent.FutureCallback; 21 import com.google.common.util.concurrent.FutureCallback;
@@ -392,7 +393,7 @@ public class DefaultDeviceStateService implements DeviceStateService { @@ -392,7 +393,7 @@ public class DefaultDeviceStateService implements DeviceStateService {
392 if (stateData != null) { 393 if (stateData != null) {
393 DeviceState state = stateData.getState(); 394 DeviceState state = stateData.getState();
394 state.setActive(ts < state.getLastActivityTime() + state.getInactivityTimeout()); 395 state.setActive(ts < state.getLastActivityTime() + state.getInactivityTimeout());
395 - if (!state.isActive() && (state.getLastInactivityAlarmTime() == 0L || state.getLastInactivityAlarmTime() < state.getLastActivityTime())) { 396 + if (!state.isActive() && (state.getLastInactivityAlarmTime() == 0L || state.getLastInactivityAlarmTime() < state.getLastActivityTime()) && UUIDs.unixTimestamp(deviceId.getId()) + state.getInactivityTimeout() < ts) {
396 state.setLastInactivityAlarmTime(ts); 397 state.setLastInactivityAlarmTime(ts);
397 pushRuleEngineMessage(stateData, INACTIVITY_EVENT); 398 pushRuleEngineMessage(stateData, INACTIVITY_EVENT);
398 save(deviceId, INACTIVITY_ALARM_TIME, ts); 399 save(deviceId, INACTIVITY_ALARM_TIME, ts);