diff --git a/PepperDashEssentials/Room/Types/EssentialsHuddleVtc1Room.cs b/PepperDashEssentials/Room/Types/EssentialsHuddleVtc1Room.cs
index e622983f..0b7b2b28 100644
--- a/PepperDashEssentials/Room/Types/EssentialsHuddleVtc1Room.cs
+++ b/PepperDashEssentials/Room/Types/EssentialsHuddleVtc1Room.cs
@@ -745,6 +745,24 @@ namespace PepperDash.Essentials
{
//Implement this
}
+
+ protected override bool AllowVacancyTimerToStart()
+ {
+ bool allowVideo = true;
+ bool allowAudio = true;
+
+ if (VideoCodec != null)
+ {
+ allowVideo = !VideoCodec.IsInCall;
+ }
+
+ if (AudioCodec != null)
+ {
+ allowAudio = !AudioCodec.IsInCall;
+ }
+
+ return allowVideo && allowAudio;
+ }
///
/// Does what it says
diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/EssentialsRoomBase.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/EssentialsRoomBase.cs
index 352cbfcd..6cb06841 100644
--- a/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/EssentialsRoomBase.cs
+++ b/essentials-framework/Essentials Core/PepperDashEssentialsBase/Room/EssentialsRoomBase.cs
@@ -343,7 +343,7 @@ namespace PepperDash.Essentials.Core
void RoomIsOccupiedFeedback_OutputChange(object sender, EventArgs e)
{
- if (RoomOccupancy.RoomIsOccupiedFeedback.BoolValue == false)
+ if (RoomOccupancy.RoomIsOccupiedFeedback.BoolValue == false && AllowVacancyTimerToStart())
{
Debug.Console(1, this, Debug.ErrorLogLevel.Notice, "Notice: Vacancy Detected");
// Trigger the timer when the room is vacant
@@ -361,7 +361,19 @@ namespace PepperDash.Essentials.Core
/// Executes when RoomVacancyShutdownTimer expires. Used to trigger specific room actions as needed. Must nullify the timer object when executed
///
///
- public abstract void RoomVacatedForTimeoutPeriod(object o);
+ public abstract void RoomVacatedForTimeoutPeriod(object o)
+ {
+
+ }
+
+ ///
+ /// Allow the vacancy event from an occupancy sensor to turn the room off.
+ ///
+ /// If the timer should be allowed. Defaults to true
+ protected virtual bool AllowVacancyTimerToStart()
+ {
+ return true;
+ }
}
///