Adds proper xml string to send to RemoteOccupancyInfo

Resovles #226
This commit is contained in:
Trevor Payne
2020-06-04 15:23:20 -05:00
parent eab0d2b1d7
commit 9517eaa0b0

View File

@@ -115,7 +115,10 @@ namespace PepperDash.Essentials.Core.Fusion
// For use with occ sensor attached to a scheduling panel in Fusion
protected FusionOccupancySensorAsset FusionOccSensor;
public BoolFeedback RoomIsOccupiedFeedback { get; private set; }
public BoolFeedback RoomIsOccupiedFeedback { get; private set; }
private string _roomOccupancyRemoteString;
public StringFeedback RoomOccupancyRemoteStringFeedback { get; private set; }
protected Func<bool> RoomIsOccupiedFeedbackFunc
{
@@ -1365,14 +1368,25 @@ namespace PepperDash.Essentials.Core.Fusion
var occSensorShutdownMinutes = FusionRoom.CreateOffsetUshortSig(70, "Occ Shutdown - Minutes", eSigIoMask.InputOutputSig);
// Tie to method on occupancy object
//occSensorShutdownMinutes.OutputSig.UserObject(new Action(ushort)(b => Room.OccupancyObj.SetShutdownMinutes(b));
//occSensorShutdownMinutes.OutputSig.UserObject(new Action(ushort)(b => Room.OccupancyObj.SetShutdownMinutes(b));
RoomOccupancyRemoteStringFeedback = new StringFeedback(() => _roomOccupancyRemoteString);
Room.RoomOccupancy.RoomIsOccupiedFeedback.LinkInputSig(occSensorAsset.RoomOccupied.InputSig);
Room.RoomOccupancy.RoomIsOccupiedFeedback.OutputChange += RoomIsOccupiedFeedback_OutputChange;
RoomOccupancyRemoteStringFeedback.LinkInputSig(occSensorAsset.RoomOccupancyInfo.InputSig);
Room.RoomOccupancy.RoomIsOccupiedFeedback.LinkInputSig(occSensorAsset.RoomOccupied.InputSig);
//}
}
/// <summary>
}
void RoomIsOccupiedFeedback_OutputChange(object sender, FeedbackEventArgs e)
{
_roomOccupancyRemoteString = e.BoolValue ? @"<Occupancy><Type>Local</Type><State>Occupied</State></Occupancy>"
: @"<Occupancy><Type>Local</Type><State>Unoccupied</State></Occupancy>";
RoomOccupancyRemoteStringFeedback.FireUpdate();
}
/// <summary>
/// Helper to get the number from the end of a device's key string
/// </summary>
/// <returns>-1 if no number matched</returns>