mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-11 18:54:52 +00:00
merge branch 'development' into feature-2.0.0/move-dm-to-library
This commit is contained in:
@@ -40,7 +40,7 @@ namespace PepperDash.Essentials.Core
|
||||
|
||||
ScheduledEventGroup FeatureEventGroup;
|
||||
|
||||
public IEssentialsRoom Room { get; private set; }
|
||||
public IRoomOccupancy Room { get; private set; }
|
||||
|
||||
private Fusion.EssentialsHuddleSpaceFusionSystemControllerBase FusionRoom;
|
||||
|
||||
@@ -86,7 +86,7 @@ namespace PepperDash.Essentials.Core
|
||||
/// </summary>
|
||||
void SetUpDevice()
|
||||
{
|
||||
Room = DeviceManager.GetDeviceForKey(PropertiesConfig.RoomKey) as IEssentialsRoom;
|
||||
Room = DeviceManager.GetDeviceForKey(PropertiesConfig.RoomKey) as IRoomOccupancy;
|
||||
|
||||
if (Room != null)
|
||||
{
|
||||
@@ -237,12 +237,23 @@ namespace PepperDash.Essentials.Core
|
||||
|
||||
if (FeatureEnabled)
|
||||
{
|
||||
// Check room power state first
|
||||
if (!Room.OnFeedback.BoolValue)
|
||||
{
|
||||
Debug.Console(1, this, "Powering Room on to default source");
|
||||
Room.RunDefaultPresentRoute();
|
||||
var essentialsRoom = Room as IEssentialsRoom;
|
||||
|
||||
if (essentialsRoom != null) {
|
||||
if (!essentialsRoom.OnFeedback.BoolValue)
|
||||
{
|
||||
Debug.Console(1, this, "Powering Room on to default source");
|
||||
|
||||
var defaultRouteRoom = Room as IRunDefaultPresentRoute;
|
||||
|
||||
if (defaultRouteRoom != null)
|
||||
{
|
||||
defaultRouteRoom.RunDefaultPresentRoute();
|
||||
}
|
||||
}
|
||||
}
|
||||
// Check room power state first
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,7 +37,7 @@ namespace PepperDash.Essentials.Core
|
||||
public BoolFeedback IsWarmingUpFeedback { get; private set; }
|
||||
public BoolFeedback IsCoolingDownFeedback { get; private set; }
|
||||
|
||||
public IOccupancyStatusProvider RoomOccupancy { get; private set; }
|
||||
public IOccupancyStatusProvider RoomOccupancy { get; protected set; }
|
||||
|
||||
public bool OccupancyStatusProviderIsRemote { get; private set; }
|
||||
|
||||
|
||||
@@ -17,15 +17,10 @@ namespace PepperDash.Essentials.Core
|
||||
/// </summary>
|
||||
public interface IEssentialsRoom : IKeyName, IReconfigurableDevice, IRunDefaultPresentRoute, IEnvironmentalControls
|
||||
{
|
||||
BoolFeedback OnFeedback { get; }
|
||||
|
||||
event EventHandler<EventArgs> RoomOccupancyIsSet;
|
||||
BoolFeedback OnFeedback { get; }
|
||||
|
||||
BoolFeedback IsWarmingUpFeedback { get; }
|
||||
BoolFeedback IsCoolingDownFeedback { get; }
|
||||
|
||||
IOccupancyStatusProvider RoomOccupancy { get; }
|
||||
bool OccupancyStatusProviderIsRemote { get; }
|
||||
BoolFeedback IsCoolingDownFeedback { get; }
|
||||
|
||||
bool IsMobileControlEnabled { get; }
|
||||
IMobileControlRoomBridge MobileControlRoomBridge { get; }
|
||||
@@ -35,31 +30,16 @@ namespace PepperDash.Essentials.Core
|
||||
SecondsCountdownTimer ShutdownPromptTimer { get; }
|
||||
int ShutdownPromptSeconds { get; }
|
||||
int ShutdownVacancySeconds { get; }
|
||||
eShutdownType ShutdownType { get; }
|
||||
|
||||
EssentialsRoomEmergencyBase Emergency { get; }
|
||||
|
||||
Core.Privacy.MicrophonePrivacyController MicrophonePrivacy { get; }
|
||||
eShutdownType ShutdownType { get; }
|
||||
|
||||
string LogoUrlLightBkgnd { get; }
|
||||
string LogoUrlDarkBkgnd { get; }
|
||||
|
||||
eVacancyMode VacancyMode { get; }
|
||||
void StartShutdown(eShutdownType type);
|
||||
|
||||
bool ZeroVolumeWhenSwtichingVolumeDevices { get; }
|
||||
void Shutdown();
|
||||
|
||||
void StartShutdown(eShutdownType type);
|
||||
void StartRoomVacancyTimer(eVacancyMode mode);
|
||||
|
||||
void Shutdown();
|
||||
|
||||
void SetRoomOccupancy(IOccupancyStatusProvider statusProvider, int timeoutMinutes);
|
||||
|
||||
void PowerOnToDefaultOrLastSource();
|
||||
|
||||
void SetDefaultLevels();
|
||||
|
||||
void RoomVacatedForTimeoutPeriod(object o);
|
||||
void PowerOnToDefaultOrLastSource();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -41,7 +41,6 @@ namespace PepperDash.Essentials.Core
|
||||
void RunRouteAction(string routeKey, string sourceListKey);
|
||||
|
||||
void RunRouteAction(string routeKey, string sourceListKey, Action successCallback);
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -78,4 +77,30 @@ namespace PepperDash.Essentials.Core
|
||||
bool HasEnvironmentalControlDevices { get; }
|
||||
}
|
||||
|
||||
public interface IRoomOccupancy:IKeyed
|
||||
{
|
||||
IOccupancyStatusProvider RoomOccupancy { get; }
|
||||
bool OccupancyStatusProviderIsRemote { get; }
|
||||
|
||||
void SetRoomOccupancy(IOccupancyStatusProvider statusProvider, int timeoutMinutes);
|
||||
|
||||
void RoomVacatedForTimeoutPeriod(object o);
|
||||
|
||||
void StartRoomVacancyTimer(eVacancyMode mode);
|
||||
|
||||
eVacancyMode VacancyMode { get; }
|
||||
|
||||
event EventHandler<EventArgs> RoomOccupancyIsSet;
|
||||
}
|
||||
|
||||
public interface IEmergency
|
||||
{
|
||||
EssentialsRoomEmergencyBase Emergency { get; }
|
||||
}
|
||||
|
||||
public interface IMicrophonePrivacy
|
||||
{
|
||||
Core.Privacy.MicrophonePrivacyController MicrophonePrivacy { get; }
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user