feat(gateway): enhance DALI host activity tracking and presence management

Signed-off-by: Tony <tonylu@tony-cloud.com>
This commit is contained in:
Tony
2026-05-26 22:21:36 +08:00
parent f922993d2f
commit 865bf8425a
9 changed files with 441 additions and 39 deletions
@@ -587,9 +587,39 @@ bool OperationRequiresDt1(BridgeOperation operation) {
case BridgeOperation::getEmergencyLevel:
case BridgeOperation::getEmergencyStatus:
case BridgeOperation::getEmergencyFailureStatus:
case BridgeOperation::getDt1Snapshot:
case BridgeOperation::startEmergencyFunctionTest:
case BridgeOperation::stopEmergencyTest:
case BridgeOperation::startEmergencyDurationTest:
case BridgeOperation::dt1Rest:
case BridgeOperation::dt1Inhibit:
case BridgeOperation::dt1RelightResetInhibit:
case BridgeOperation::dt1StartIdentification:
case BridgeOperation::dt1ResetFunctionTestDoneFlag:
case BridgeOperation::dt1ResetDurationTestDoneFlag:
case BridgeOperation::dt1ResetLampTime:
case BridgeOperation::dt1StoreEmergencyLevel:
case BridgeOperation::dt1StoreTestDelayTime:
case BridgeOperation::dt1StoreFunctionTestInterval:
case BridgeOperation::dt1StoreDurationTestInterval:
case BridgeOperation::dt1StoreTestExecutionTimeout:
case BridgeOperation::dt1StoreProlongTime:
case BridgeOperation::dt1PerformDtrSelectedFunction:
case BridgeOperation::dt1GetBatteryCharge:
case BridgeOperation::dt1GetFunctionTestDelayTime:
case BridgeOperation::dt1GetDurationTestDelayTime:
case BridgeOperation::dt1GetFunctionTestInterval:
case BridgeOperation::dt1GetDurationTestInterval:
case BridgeOperation::dt1GetTestExecutionTimeout:
case BridgeOperation::dt1GetProlongTime:
case BridgeOperation::dt1GetDurationTestResult:
case BridgeOperation::dt1GetLampEmergencyTime:
case BridgeOperation::dt1GetLampTotalOperationTime:
case BridgeOperation::dt1GetEmergencyMinLevel:
case BridgeOperation::dt1GetEmergencyMaxLevel:
case BridgeOperation::dt1GetRatedDuration:
case BridgeOperation::dt1GetExtendedVersion:
case BridgeOperation::dt1GetEmergencyDeviceType:
return true;
default:
return false;
@@ -617,6 +647,22 @@ bool BridgeOperationReadable(BridgeOperation operation) {
case BridgeOperation::getEmergencyLevel:
case BridgeOperation::getEmergencyStatus:
case BridgeOperation::getEmergencyFailureStatus:
case BridgeOperation::getDt1Snapshot:
case BridgeOperation::dt1GetBatteryCharge:
case BridgeOperation::dt1GetFunctionTestDelayTime:
case BridgeOperation::dt1GetDurationTestDelayTime:
case BridgeOperation::dt1GetFunctionTestInterval:
case BridgeOperation::dt1GetDurationTestInterval:
case BridgeOperation::dt1GetTestExecutionTimeout:
case BridgeOperation::dt1GetProlongTime:
case BridgeOperation::dt1GetDurationTestResult:
case BridgeOperation::dt1GetLampEmergencyTime:
case BridgeOperation::dt1GetLampTotalOperationTime:
case BridgeOperation::dt1GetEmergencyMinLevel:
case BridgeOperation::dt1GetEmergencyMaxLevel:
case BridgeOperation::dt1GetRatedDuration:
case BridgeOperation::dt1GetExtendedVersion:
case BridgeOperation::dt1GetEmergencyDeviceType:
return true;
default:
return false;