diff --git a/PepperDashEssentials/Room/Config/EssentialsRoomConfig.cs b/PepperDashEssentials/Room/Config/EssentialsRoomConfig.cs
index 4991350c..dfaa333d 100644
--- a/PepperDashEssentials/Room/Config/EssentialsRoomConfig.cs
+++ b/PepperDashEssentials/Room/Config/EssentialsRoomConfig.cs
@@ -184,6 +184,12 @@ namespace PepperDash.Essentials.Room.Config
[JsonProperty("zeroVolumeWhenSwtichingVolumeDevices")]
public bool ZeroVolumeWhenSwtichingVolumeDevices { get; set; }
+
+ public EssentialsRoomPropertiesConfig()
+ {
+ LogoLight = new EssentialsLogoPropertiesConfig();
+ LogoDark = new EssentialsLogoPropertiesConfig();
+ }
}
public class EssentialsAvRoomPropertiesConfig : EssentialsRoomPropertiesConfig
diff --git a/PepperDashEssentials/UI/EssentialsTouchpanelController.cs b/PepperDashEssentials/UI/EssentialsTouchpanelController.cs
index eade64bd..65039872 100644
--- a/PepperDashEssentials/UI/EssentialsTouchpanelController.cs
+++ b/PepperDashEssentials/UI/EssentialsTouchpanelController.cs
@@ -224,6 +224,8 @@ namespace PepperDash.Essentials
var room = DeviceManager.GetDeviceForKey(props.DefaultRoomKey);
if (room is EssentialsHuddleSpaceRoom)
{
+ // Screen Saver Driver
+ mainDriver.ScreenSaverController = new ScreenSaverController(mainDriver, props);
// Header Driver
Debug.Console(0, panelController, "Adding header driver");
@@ -272,6 +274,9 @@ namespace PepperDash.Essentials
{
Debug.Console(0, panelController, "Adding huddle space VTC AV driver");
+ // Screen Saver Driver
+ mainDriver.ScreenSaverController = new ScreenSaverController(mainDriver, props);
+
// Header Driver
mainDriver.HeaderDriver = new EssentialsHeaderDriver(mainDriver, props);
diff --git a/PepperDashEssentials/UI/JoinConstants/UIBoolJoin.cs b/PepperDashEssentials/UI/JoinConstants/UIBoolJoin.cs
index a347fd90..d307d088 100644
--- a/PepperDashEssentials/UI/JoinConstants/UIBoolJoin.cs
+++ b/PepperDashEssentials/UI/JoinConstants/UIBoolJoin.cs
@@ -621,7 +621,7 @@ namespace PepperDash.Essentials
///
/// 15030 Visibility for room data popup
///
- public const uint RoomHeaderPageVisible = 15030;
+ public const uint RoomHeaderInfoPageVisible = 15030;
///
/// 15031
///
@@ -812,7 +812,7 @@ namespace PepperDash.Essentials
///
/// 15093
///
- public const uint RoomHeaderMCPageVisible = 15093;
+ public const uint RoomHeaderInfoMCPageVisible = 15093;
///
/// 15094
diff --git a/PepperDashEssentials/UIDrivers/Essentials/EssentialsPanelMainInterfaceDriver.cs b/PepperDashEssentials/UIDrivers/Essentials/EssentialsPanelMainInterfaceDriver.cs
index 59994712..651a072a 100644
--- a/PepperDashEssentials/UIDrivers/Essentials/EssentialsPanelMainInterfaceDriver.cs
+++ b/PepperDashEssentials/UIDrivers/Essentials/EssentialsPanelMainInterfaceDriver.cs
@@ -26,7 +26,7 @@ namespace PepperDash.Essentials
public PanelDriverBase CurrentChildDriver { get; private set; }
- public ScreenSaverController ScreenSaverController { get; private set; }
+ public ScreenSaverController ScreenSaverController { get; set; }
CrestronTouchpanelPropertiesConfig Config;
@@ -85,7 +85,7 @@ namespace PepperDash.Essentials
{
CurrentChildDriver = null;
ShowSubDriver(AvDriver as PanelDriverBase);
- base.Show();
+ base.Show();
}
public override void Hide()
diff --git a/PepperDashEssentials/UIDrivers/EssentialsHuddle/EssentialsHuddlePanelAvFunctionsDriver.cs b/PepperDashEssentials/UIDrivers/EssentialsHuddle/EssentialsHuddlePanelAvFunctionsDriver.cs
index 635982d2..42b2cf5c 100644
--- a/PepperDashEssentials/UIDrivers/EssentialsHuddle/EssentialsHuddlePanelAvFunctionsDriver.cs
+++ b/PepperDashEssentials/UIDrivers/EssentialsHuddle/EssentialsHuddlePanelAvFunctionsDriver.cs
@@ -232,26 +232,31 @@ namespace PepperDash.Essentials
{
if (CurrentRoom.IsMobileControlEnabled)
{
- PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.RoomHeaderMCPageVisible);
+ Debug.Console(1, "Showing Mobile Control Header Info");
+ PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.RoomHeaderInfoMCPageVisible);
}
else
{
- PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.RoomHeaderPageVisible);
+ Debug.Console(1, "Showing Non Mobile Control Header Info");
+ PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.RoomHeaderInfoPageVisible);
}
});
}
else if (Config.HeaderStyle.ToLower() == CrestronTouchpanelPropertiesConfig.Verbose)
{
- // room name on join 1, concat phone and sip on join 2, no button method
- //var addr = roomConf.Addresses;
- //if (addr == null) // protect from missing values by using default empties
- // addr = new EssentialsRoomAddressPropertiesConfig();
- //// empty string when either missing, pipe when both showing
- //TriList.SetString(UIStringJoin.RoomAddressPipeText,
- // (string.IsNullOrEmpty(addr.PhoneNumber.Trim())
- // || string.IsNullOrEmpty(addr.SipAddress.Trim())) ? "" : " | ");
- //TriList.SetString(UIStringJoin.RoomPhoneText, addr.PhoneNumber);
- //TriList.SetString(UIStringJoin.RoomSipText, addr.SipAddress);
+ TriList.SetSigFalseAction(UIBoolJoin.HeaderRoomButtonPress, () =>
+ {
+ if (CurrentRoom.IsMobileControlEnabled)
+ {
+ Debug.Console(1, "Showing Mobile Control Header Info");
+ PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.RoomHeaderInfoMCPageVisible);
+ }
+ else
+ {
+ Debug.Console(1, "Showing Non Mobile Control Header Info");
+ PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.RoomHeaderInfoPageVisible);
+ }
+ });
}
TriList.SetBool(UIBoolJoin.DateAndTimeVisible, Config.ShowDate && Config.ShowTime);
diff --git a/PepperDashEssentials/UIDrivers/EssentialsHuddleVTC/EssentialsHuddleVtc1PanelAvFunctionsDriver.cs b/PepperDashEssentials/UIDrivers/EssentialsHuddleVTC/EssentialsHuddleVtc1PanelAvFunctionsDriver.cs
index 581d7e22..c74fd8e0 100644
--- a/PepperDashEssentials/UIDrivers/EssentialsHuddleVTC/EssentialsHuddleVtc1PanelAvFunctionsDriver.cs
+++ b/PepperDashEssentials/UIDrivers/EssentialsHuddleVTC/EssentialsHuddleVtc1PanelAvFunctionsDriver.cs
@@ -245,26 +245,31 @@ namespace PepperDash.Essentials
{
if (CurrentRoom.IsMobileControlEnabled)
{
- PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.RoomHeaderMCPageVisible);
+ Debug.Console(1, "Showing Mobile Control Header Info");
+ PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.RoomHeaderInfoMCPageVisible);
}
else
{
- PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.RoomHeaderPageVisible);
+ Debug.Console(1, "Showing Non Mobile Control Header Info");
+ PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.RoomHeaderInfoPageVisible);
}
});
}
else if (Config.HeaderStyle.ToLower() == CrestronTouchpanelPropertiesConfig.Verbose)
{
- // room name on join 1, concat phone and sip on join 2, no button method
- //var addr = roomConf.Addresses;
- //if (addr == null) // protect from missing values by using default empties
- // addr = new EssentialsRoomAddressPropertiesConfig();
- //// empty string when either missing, pipe when both showing
- //TriList.SetString(UIStringJoin.RoomAddressPipeText,
- // (string.IsNullOrEmpty(addr.PhoneNumber.Trim())
- // || string.IsNullOrEmpty(addr.SipAddress.Trim())) ? "" : " | ");
- //TriList.SetString(UIStringJoin.RoomPhoneText, addr.PhoneNumber);
- //TriList.SetString(UIStringJoin.RoomSipText, addr.SipAddress);
+ TriList.SetSigFalseAction(UIBoolJoin.HeaderRoomButtonPress, () =>
+ {
+ if (CurrentRoom.IsMobileControlEnabled)
+ {
+ Debug.Console(1, "Showing Mobile Control Header Info");
+ PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.RoomHeaderInfoMCPageVisible);
+ }
+ else
+ {
+ Debug.Console(1, "Showing Non Mobile Control Header Info");
+ PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.RoomHeaderInfoPageVisible);
+ }
+ });
}
TriList.SetBool(UIBoolJoin.DateAndTimeVisible, Config.ShowDate && Config.ShowTime);
@@ -353,7 +358,7 @@ namespace PepperDash.Essentials
TriList.SetBool(UIBoolJoin.LogoDefaultVisible, false);
TriList.SetBool(UIBoolJoin.LogoUrlVisible, true);
TriList.SetString(UIStringJoin.LogoUrlLightBkgnd, _CurrentRoom.LogoUrlLightBkgnd);
- TriList.SetString(UIStringJoin.LogoUrlLightBkgnd, _CurrentRoom.LogoUrlDarkBkgnd);
+ TriList.SetString(UIStringJoin.LogoUrlDarkBkgnd, _CurrentRoom.LogoUrlDarkBkgnd);
}
}
diff --git a/PepperDashEssentials/UIDrivers/ScreenSaverController.cs b/PepperDashEssentials/UIDrivers/ScreenSaverController.cs
index a082987e..ab903173 100644
--- a/PepperDashEssentials/UIDrivers/ScreenSaverController.cs
+++ b/PepperDashEssentials/UIDrivers/ScreenSaverController.cs
@@ -31,6 +31,8 @@ namespace PepperDash.Essentials
PositionJoins = new List()
{ UIBoolJoin.MCScreenSaverPosition1Visible, UIBoolJoin.MCScreenSaverPosition2Visible, UIBoolJoin.MCScreenSaverPosition3Visible, UIBoolJoin.MCScreenSaverPosition4Visible };
+
+ CrestronConsole.AddNewConsoleCommand((o) => Show(), "showscreensaver", "Shows Panel Screensaver", ConsoleAccessLevelEnum.AccessOperator);
}
public override void Show()
diff --git a/PepperDashEssentials/UIDrivers/VC/EssentialsVideoCodecUiDriver.cs b/PepperDashEssentials/UIDrivers/VC/EssentialsVideoCodecUiDriver.cs
index f966c4cb..16551067 100644
--- a/PepperDashEssentials/UIDrivers/VC/EssentialsVideoCodecUiDriver.cs
+++ b/PepperDashEssentials/UIDrivers/VC/EssentialsVideoCodecUiDriver.cs
@@ -192,17 +192,30 @@ namespace PepperDash.Essentials.UIDrivers.VC
///
void Codec_IsReady()
{
- string roomNumberSipUri = "";
+ string roomContactNumbers = "";
+ string roomPhoneNumber = "";
if (!string.IsNullOrEmpty(Codec.CodecInfo.SipUri)) // If both values are present, format the string with a pipe divider
- roomNumberSipUri = string.Format("{0} | {1}", GetFormattedPhoneNumber(Codec.CodecInfo.SipPhoneNumber), Codec.CodecInfo.SipUri);
+ {
+ roomContactNumbers = string.Format("{0} | {1}", GetFormattedPhoneNumber(Codec.CodecInfo.SipPhoneNumber), Codec.CodecInfo.SipUri);
+ roomPhoneNumber = GetFormattedPhoneNumber(Codec.CodecInfo.SipPhoneNumber);
+ }
else // If only one value present, just show the phone number
- roomNumberSipUri = Codec.CodecInfo.SipPhoneNumber;
+ {
+ roomPhoneNumber = GetFormattedPhoneNumber(Codec.CodecInfo.SipPhoneNumber);
+ roomContactNumbers = Codec.CodecInfo.SipPhoneNumber;
+ }
- if(string.IsNullOrEmpty(roomNumberSipUri))
- roomNumberSipUri = string.Format("{0} | {1}", Codec.CodecInfo.E164Alias, Codec.CodecInfo.H323Id);
-
- TriList.SetString(UIStringJoin.RoomPhoneText, roomNumberSipUri);
+ if (string.IsNullOrEmpty(roomContactNumbers))
+ {
+ if(!string.IsNullOrEmpty(Codec.CodecInfo.E164Alias))
+ roomContactNumbers = string.Format("{0} | {1}", Codec.CodecInfo.E164Alias, Codec.CodecInfo.H323Id);
+ else
+ roomContactNumbers = Codec.CodecInfo.H323Id;
+ }
+ TriList.SetString(UIStringJoin.RoomAddressPipeText, roomContactNumbers);
+ TriList.SetString(UIStringJoin.RoomPhoneText, roomPhoneNumber);
+ TriList.SetString(UIStringJoin.RoomVideoAddressText, Codec.CodecInfo.H323Id);
if(HeaderDriver.HeaderButtonsAreSetUp)
HeaderDriver.ComputeHeaderCallStatus(Codec);