Continued work on bridge

This commit is contained in:
Neil Dorin
2019-09-16 16:36:24 -06:00
parent af7d97efef
commit 1257dde4ce
2 changed files with 23 additions and 4 deletions

View File

@@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using Crestron.SimplSharp;
using Crestron.SimplSharpPro.DeviceSupport;
using PepperDash.Essentials.Devices.Common.Occupancy;
@@ -29,6 +30,24 @@ namespace PepperDash.Essentials.Bridges
Debug.Console(1, occController, "Linking to Trilist '{0}'", trilist.ID.ToString("X"));
occController.IsOnline.LinkInputSig(trilist.BooleanInput[joinMap.IsOnline]);
trilist.SetSigTrueAction(joinMap.ForceOccupied, () => occController.ForceOccupied());
trilist.SetSigTrueAction(joinMap.ForceVacant, () => occController.ForceVacant());
occController.RoomIsOccupiedFeedback.LinkInputSig(trilist.BooleanInput[joinMap.RoomOccupiedFeedback]);
occController.RoomIsOccupiedFeedback.LinkComplementInputSig(trilist.BooleanInput[joinMap.RoomVacantFeedback]);
occController.RawOccupancyFeedback.LinkInputSig(trilist.BooleanInput[joinMap.RawOccupancyFeedback]);
trilist.SetUShortSigAction(joinMap.Timeout, (u) => occController.SetRemoteTimeout(u));
occController.CurrentTimeoutFeedback.LinkInputSig(trilist.UShortInput[joinMap.Timeout]);
occController.LocalTimoutFeedback.LinkInputSig(trilist.UShortInput[joinMap.TimeoutLocalFeedback]);
trilist.SetSigTrueAction(joinMap.EnableLedFlash, () => occController.SetLedFlashEnable(true));
trilist.SetSigTrueAction(joinMap.DisableLedFlash, () => occController.SetLedFlashEnable(false));
occController.LedFlashEnabledFeedback.LinkComplementInputSig(trilist.BooleanInput[joinMap.EnableLedFlash]);
trilist.SetSigTrueAction(joinMap.EnableShortTimeout, () => occController.SetShortTimeoutState(true));
trilist.SetSigTrueAction(joinMap.DisableShortTimeout, () => occController.SetShortTimeoutState(false));
occController.ShortTimeoutEnabledFeedback.LinkInputSig(trilist.BooleanInput[joinMap.EnableShortTimeout]);
}
}

View File

@@ -222,14 +222,14 @@ namespace PepperDash.Essentials.Devices.Common.Occupancy
OccSensor.DecrementPirSensitivityInVacantState.BoolValue = pressRelease;
}
public void ForceOccupied(bool state)
public void ForceOccupied()
{
OccSensor.ForceOccupied.BoolValue = state;
OccSensor.ForceOccupied.BoolValue = true;
}
public void ForceVacant(bool state)
public void ForceVacant()
{
OccSensor.ForceVacant.BoolValue = state;
OccSensor.ForceVacant.BoolValue = true;
}
public void EnableRawStates(bool state)