diff --git a/Essentials/PepperDashEssentials/UI/JoinConstants/UIBoolJoin.cs b/Essentials/PepperDashEssentials/UI/JoinConstants/UIBoolJoin.cs
index 1e5c5f46..ab33eebe 100644
--- a/Essentials/PepperDashEssentials/UI/JoinConstants/UIBoolJoin.cs
+++ b/Essentials/PepperDashEssentials/UI/JoinConstants/UIBoolJoin.cs
@@ -366,7 +366,26 @@ namespace PepperDash.Essentials
///
public const uint VolumeDefaultPress = 3891;
-
+ ///
+ /// 3991
+ ///
+ public const uint HeaderIcon1Press = 3991;
+ ///
+ /// 3992
+ ///
+ public const uint HeaderIcon2Press = 3992;
+ ///
+ /// 3993
+ ///
+ public const uint HeaderIcon3Press = 3993;
+ ///
+ /// 3994
+ ///
+ public const uint HeaderIcon4Press = 3994;
+ ///
+ /// 3995
+ ///
+ public const uint HeaderIcon5Press = 3995;
///
/// 3999
///
@@ -451,10 +470,6 @@ namespace PepperDash.Essentials
///
public const uint ActivityFooterVisible = 15022;
///
- /// 15023
- ///
- public const uint HeaderLightsButtonVisible = 15023;
- ///
/// 15024
///
public const uint HeaderCallStatusLeftPositionVisible = 15024;
@@ -463,17 +478,9 @@ namespace PepperDash.Essentials
///
public const uint HeaderCallStatusRightPositionVisible = 15025;
///
- /// 15026
- ///
- public const uint HeaderLightsButtonPress = 15026;
- /// [-
- /// 15027
- ///
- public const uint HeaderCallStatusButtonPress = 15027;
- ///
/// 15028 The gear button in header
///
- public const uint HeaderGearButtonPress = 15028;
+ public const uint FIXFIX_HeaderGearButtonPress_FIXFIX = 15028;
///
/// 15029 the room button in header
///
diff --git a/Essentials/PepperDashEssentials/UI/JoinConstants/UIStringlJoin.cs b/Essentials/PepperDashEssentials/UI/JoinConstants/UIStringlJoin.cs
index 885868aa..ddbc67cf 100644
--- a/Essentials/PepperDashEssentials/UI/JoinConstants/UIStringlJoin.cs
+++ b/Essentials/PepperDashEssentials/UI/JoinConstants/UIStringlJoin.cs
@@ -228,6 +228,27 @@ namespace PepperDash.Essentials
///
public const uint NextMeetingFollowingMeetingText = 3972;
+ ///
+ /// 3991
+ ///
+ public const uint HeaderButtonIcon1 = 3991;
+ ///
+ /// 3992
+ ///
+ public const uint HeaderButtonIcon2 = 3992;
+ ///
+ /// 3993
+ ///
+ public const uint HeaderButtonIcon3 = 3993;
+ ///
+ /// 3994
+ ///
+ public const uint HeaderButtonIcon4 = 3994;
+ ///
+ /// 3995
+ ///
+ public const uint HeaderButtonIcon5 = 3995;
+
///
/// 3996
///
diff --git a/Essentials/PepperDashEssentials/UI/SmartObjectHeaderButtonList.cs b/Essentials/PepperDashEssentials/UI/SmartObjectHeaderButtonList.cs
index f3f67535..f35bc88c 100644
--- a/Essentials/PepperDashEssentials/UI/SmartObjectHeaderButtonList.cs
+++ b/Essentials/PepperDashEssentials/UI/SmartObjectHeaderButtonList.cs
@@ -1,58 +1,58 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using Crestron.SimplSharp;
-using Crestron.SimplSharpPro;
-using Crestron.SimplSharpPro.DeviceSupport;
+//using System;
+//using System.Collections.Generic;
+//using System.Linq;
+//using System.Text;
+//using Crestron.SimplSharp;
+//using Crestron.SimplSharpPro;
+//using Crestron.SimplSharpPro.DeviceSupport;
-using PepperDash.Essentials.Core;
-using PepperDash.Essentials.Core.SmartObjects;
+//using PepperDash.Essentials.Core;
+//using PepperDash.Essentials.Core.SmartObjects;
-namespace PepperDash.Essentials
-{
- public class SmartObjectHeaderButtonList : SmartObjectHelperBase
- {
+//namespace PepperDash.Essentials
+//{
+// public class SmartObjectHeaderButtonList : SmartObjectHelperBase
+// {
- public SmartObjectHeaderButtonList(SmartObject so)
- : base(so, true)
- {
+// public SmartObjectHeaderButtonList(SmartObject so)
+// : base(so, true)
+// {
- }
- }
+// }
+// }
- public class HeaderListButton
- {
- public BoolInputSig SelectedSig { get; private set; }
- public BoolInputSig VisibleSig { get; private set; }
- public BoolOutputSig OutputSig { get; private set; }
- StringInputSig IconSig;
+// public class HeaderListButton
+// {
+// public BoolInputSig SelectedSig { get; private set; }
+// public BoolInputSig VisibleSig { get; private set; }
+// public BoolOutputSig OutputSig { get; private set; }
+// StringInputSig IconSig;
- public HeaderListButton(SmartObjectHeaderButtonList list, uint index)
- {
- var so = list.SmartObject;
- OutputSig = so.BooleanOutput["Item " + index + " Pressed"];
- SelectedSig = so.BooleanInput["Item " + index + " Selected"];
- VisibleSig = so.BooleanInput["Item " + index + " Visible"];
- IconSig = so.StringInput["Set Item " + index + " Icon Serial"];
- }
+// public HeaderListButton(SmartObjectHeaderButtonList list, uint index)
+// {
+// var so = list.SmartObject;
+// OutputSig = so.BooleanOutput["Item " + index + " Pressed"];
+// SelectedSig = so.BooleanInput["Item " + index + " Selected"];
+// VisibleSig = so.BooleanInput["Item " + index + " Visible"];
+// IconSig = so.StringInput["Set Item " + index + " Icon Serial"];
+// }
- public void SetIcon(string i)
- {
- IconSig.StringValue = i;
- }
+// public void SetIcon(string i)
+// {
+// IconSig.StringValue = i;
+// }
- public void ClearIcon()
- {
- IconSig.StringValue = "Blank";
- }
+// public void ClearIcon()
+// {
+// IconSig.StringValue = "Blank";
+// }
- public static string Calendar = "Calendar";
- public static string Camera = "Camera";
- public static string Gear = "Gear";
- public static string Lights = "Lights";
- public static string Help = "Help";
- public static string OnHook = "DND";
- public static string Phone = "Phone";
- }
-}
\ No newline at end of file
+// public static string Calendar = "Calendar";
+// public static string Camera = "Camera";
+// public static string Gear = "Gear";
+// public static string Lights = "Lights";
+// public static string Help = "Help";
+// public static string OnHook = "DND";
+// public static string Phone = "Phone";
+// }
+//}
\ No newline at end of file
diff --git a/Essentials/PepperDashEssentials/UIDrivers/Essentials/EssentialsHuddlePanelAvFunctionsDriver.cs b/Essentials/PepperDashEssentials/UIDrivers/Essentials/EssentialsHuddlePanelAvFunctionsDriver.cs
index 350c0d58..0a59adca 100644
--- a/Essentials/PepperDashEssentials/UIDrivers/Essentials/EssentialsHuddlePanelAvFunctionsDriver.cs
+++ b/Essentials/PepperDashEssentials/UIDrivers/Essentials/EssentialsHuddlePanelAvFunctionsDriver.cs
@@ -218,7 +218,7 @@ namespace PepperDash.Essentials
// ShowInterlockedModal(UIBoolJoin.RoomHeaderPageVisible));
// Setup button
- TriList.SetSigHeldAction(UIBoolJoin.HeaderGearButtonPress, 2000,
+ TriList.SetSigHeldAction(UIBoolJoin.FIXFIX_HeaderGearButtonPress_FIXFIX, 2000,
() => PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.TechPanelSetupVisible));// ShowInterlockedModal(UIBoolJoin.TechPanelSetupVisible));
TriList.SetSigFalseAction(UIBoolJoin.TechExitButton, () =>
PopupInterlock.HideAndClear()); // HideCurrentInterlockedModal());
diff --git a/Essentials/PepperDashEssentials/UIDrivers/Essentials/EssentialsPresentationPanelAvFunctionsDriver.cs b/Essentials/PepperDashEssentials/UIDrivers/Essentials/EssentialsPresentationPanelAvFunctionsDriver.cs
index 341a2458..e7e13020 100644
--- a/Essentials/PepperDashEssentials/UIDrivers/Essentials/EssentialsPresentationPanelAvFunctionsDriver.cs
+++ b/Essentials/PepperDashEssentials/UIDrivers/Essentials/EssentialsPresentationPanelAvFunctionsDriver.cs
@@ -232,7 +232,7 @@ namespace PepperDash.Essentials
TriList.SetSigFalseAction(UIBoolJoin.HeaderRoomButtonPress, () =>
ShowInterlockedModal(UIBoolJoin.RoomHeaderPageVisible));
- TriList.SetSigFalseAction(UIBoolJoin.HeaderGearButtonPress, () =>
+ TriList.SetSigFalseAction(UIBoolJoin.FIXFIX_HeaderGearButtonPress_FIXFIX, () =>
ShowInterlockedModal(UIBoolJoin.VolumesPageVisible));
// power-related functions
diff --git a/Essentials/PepperDashEssentials/UIDrivers/EssentialsHuddleVTC/EssentialsHuddleVtc1PanelAvFunctionsDriver.cs b/Essentials/PepperDashEssentials/UIDrivers/EssentialsHuddleVTC/EssentialsHuddleVtc1PanelAvFunctionsDriver.cs
index 5964a774..b37d306a 100644
--- a/Essentials/PepperDashEssentials/UIDrivers/EssentialsHuddleVTC/EssentialsHuddleVtc1PanelAvFunctionsDriver.cs
+++ b/Essentials/PepperDashEssentials/UIDrivers/EssentialsHuddleVTC/EssentialsHuddleVtc1PanelAvFunctionsDriver.cs
@@ -63,8 +63,10 @@ namespace PepperDash.Essentials
BoolInputSig ShareButtonSig;
BoolInputSig EndMeetingButtonSig;
- HeaderListButton HeaderCallButton;
- HeaderListButton HeaderGearButton;
+ //HeaderListButton HeaderCallButton;
+ //HeaderListButton HeaderGearButton;
+
+ StringInputSig HeaderCallButtonIconSig;
///
@@ -99,7 +101,7 @@ namespace PepperDash.Essentials
///
/// The list of buttons on the header. Managed with visibility only
///
- SmartObjectHeaderButtonList HeaderButtonsList;
+ //SmartObjectHeaderButtonList HeaderButtonsList;
///
/// The AV page mangagers that have been used, to keep them alive for later
@@ -178,6 +180,12 @@ namespace PepperDash.Essentials
CTimer NextMeetingTimer;
+ ///
+ /// Tracks whether the user dismissed the meeting popup, while the system was on. Always false when
+ /// system is off.
+ ///
+ DateTime NextMeetingWarningDismissedTime;
+
///
@@ -204,7 +212,7 @@ namespace PepperDash.Essentials
// buttons are added in SetCurrentRoom
- HeaderButtonsList = new SmartObjectHeaderButtonList(TriList.SmartObjects[UISmartObjectJoin.HeaderButtonList]);
+ //HeaderButtonsList = new SmartObjectHeaderButtonList(TriList.SmartObjects[UISmartObjectJoin.HeaderButtonList]);
SetupActivityFooterWhenRoomOff();
@@ -306,7 +314,7 @@ namespace PepperDash.Essentials
(CurrentRoom.DefaultDisplay as IPower).PowerToggle();
});
- TriList.SetSigFalseAction(UIBoolJoin.HeaderCallStatusButtonPress, ShowActiveCallsList );
+ //TriList.SetSigFalseAction(UIBoolJoin.HeaderCallStatusButtonPress, ShowActiveCallsList );
SetupNextMeetingTimer();
@@ -417,8 +425,14 @@ namespace PepperDash.Essentials
var meetings = ss.CodecSchedule.Meetings;
if (meetings.Count > 0)
{
- var meeting = meetings.Aggregate((m1, m2) => m1.StartTime < m2.StartTime ? m1 : m2);
- if (meeting != null && meeting.Joinable)
+ var meeting = meetings.FirstOrDefault(m => m.Joinable);
+
+ //var meeting = meetings.Aggregate((m1, m2) => m1.StartTime < m2.StartTime ? m1 : m2);
+
+
+#warning PICK UP CALENDAR TIME HERE
+ if (meeting != null)// && NextMeetingWarningDismissedTime != null
+ //&& (DateTime.Now - NextMeetingWarningDismissedTime).Minutes > 5) // && meeting.Joinable)
{
TriList.SetString(UIStringJoin.NextMeetingRibbonStartText, meeting.StartTime.ToShortTimeString());
TriList.SetString(UIStringJoin.NextMeetingRibbonEndText, meeting.EndTime.ToShortTimeString());
@@ -443,7 +457,6 @@ namespace PepperDash.Essentials
}
ShowNextMeetingPopup();
-
}
}
}, null, 0, 60000);
@@ -919,10 +932,10 @@ namespace PepperDash.Essentials
TriList.SetBool(UIBoolJoin.TopBarHabaneroDynamicVisible, true);
var roomConf = CurrentRoom.Config;
- //
- HeaderGearButton = new HeaderListButton(HeaderButtonsList, 5);
- HeaderGearButton.SetIcon(HeaderListButton.Gear);
- HeaderGearButton.OutputSig.SetSigHeldAction(2000,
+
+ // Gear
+ TriList.SetString(UIStringJoin.HeaderButtonIcon5, "Gear");
+ TriList.SetSigHeldAction(UIBoolJoin.HeaderIcon5Press, 2000,
ShowTech,
null,
() =>
@@ -932,10 +945,23 @@ namespace PepperDash.Essentials
else
PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.VolumesPagePowerOffVisible);
});
-
TriList.SetSigFalseAction(UIBoolJoin.TechExitButton, () =>
PopupInterlock.HideAndClear());
+ //HeaderGearButton = new HeaderListButton(HeaderButtonsList, 5);
+ //HeaderGearButton.SetIcon(HeaderListButton.Gear);
+ //HeaderGearButton.OutputSig.SetSigHeldAction(2000,
+ // ShowTech,
+ // null,
+ // () =>
+ // {
+ // if (CurrentRoom.OnFeedback.BoolValue)
+ // PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.VolumesPageVisible);
+ // else
+ // PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.VolumesPagePowerOffVisible);
+ // });
+
+
// Help button and popup
if (CurrentRoom.Config.Help != null)
{
@@ -954,9 +980,8 @@ namespace PepperDash.Essentials
TriList.SetString(UIStringJoin.HelpPageCallButtonText, null);
TriList.ClearBoolSigAction(UIBoolJoin.HelpPageShowCallButtonPress);
}
- var helpButton = new HeaderListButton(HeaderButtonsList, 4);
- helpButton.SetIcon(HeaderListButton.Help);
- helpButton.OutputSig.SetSigFalseAction(() =>
+ TriList.SetString(UIStringJoin.HeaderButtonIcon4, "Help");
+ TriList.SetSigFalseAction(UIBoolJoin.HeaderIcon4Press, () =>
{
string message = null;
var room = DeviceManager.GetDeviceForKey(Config.DefaultRoomKey)
@@ -968,7 +993,21 @@ namespace PepperDash.Essentials
//TriList.StringInput[UIStringJoin.HelpMessage].StringValue = message;
PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.HelpPageVisible);
});
- uint nextIndex = 3;
+ //var helpButton = new HeaderListButton(HeaderButtonsList, 4);
+ //helpButton.SetIcon(HeaderListButton.Help);
+ //helpButton.OutputSig.SetSigFalseAction(() =>
+ //{
+ // string message = null;
+ // var room = DeviceManager.GetDeviceForKey(Config.DefaultRoomKey)
+ // as EssentialsHuddleSpaceRoom;
+ // if (room != null)
+ // message = room.Config.HelpMessage;
+ // else
+ // message = "Sorry, no help message available. No room connected.";
+ // //TriList.StringInput[UIStringJoin.HelpMessage].StringValue = message;
+ // PopupInterlock.ShowInterlockedWithToggle(UIBoolJoin.HelpPageVisible);
+ //});
+ uint nextJoin = 3993;
// Lights button
//if (WHATEVER MAKES LIGHTS WORK)
@@ -980,36 +1019,47 @@ namespace PepperDash.Essentials
// Calendar button
if (_CurrentRoom.ScheduleSource != null) // ******************* Do we need a config option here as well?
{
- var calBut = new HeaderListButton(HeaderButtonsList, nextIndex);
- calBut.SetIcon(HeaderListButton.Calendar);
- calBut.OutputSig.SetSigFalseAction(CalendarPress);
- nextIndex--;
+ //var calBut = new HeaderListButton(HeaderButtonsList, nextIndex);
+ //calBut.SetIcon(HeaderListButton.Calendar);
+ //calBut.OutputSig.SetSigFalseAction(CalendarPress);
+
+ TriList.SetString(nextJoin, "Calendar");
+ TriList.SetSigFalseAction(nextJoin, CalendarPress);
+
+ nextJoin--;
}
// Call button
- HeaderCallButton = new HeaderListButton(HeaderButtonsList, nextIndex);
- HeaderCallButton.SetIcon(HeaderListButton.OnHook);
- HeaderCallButton.OutputSig.SetSigFalseAction(ShowActiveCallsList);
-
- nextIndex--;
+ //HeaderCallButton = new HeaderListButton(HeaderButtonsList, nextJoin);
+ //HeaderCallButton.SetIcon(HeaderListButton.OnHook);
+ //HeaderCallButton.OutputSig.SetSigFalseAction(ShowActiveCallsList);
+
+ TriList.SetString(nextJoin, "DND");
+ TriList.SetSigFalseAction(nextJoin, ShowActiveCallsList);
+ HeaderCallButtonIconSig = TriList.StringInput[nextJoin];
+
+ nextJoin--;
// blank any that remain
- for (var i = nextIndex; i > 0; i--)
+ for (var i = nextJoin; i > 3990; i--)
{
- var blankBut = new HeaderListButton(HeaderButtonsList, i);
- blankBut.ClearIcon();
- blankBut.OutputSig.SetSigFalseAction(() => { });
+ //var blankBut = new HeaderListButton(HeaderButtonsList, i);
+ //blankBut.ClearIcon();
+ //blankBut.OutputSig.SetSigFalseAction(() => { });
+
+ TriList.SetString(i, "Blank");
+ TriList.SetSigFalseAction(i, () => { });
}
// Set Call Status Subpage Position
- if (nextIndex == 1)
+ if (nextJoin == 1)
{
// Set to right position
TriList.SetBool(UIBoolJoin.HeaderCallStatusLeftPositionVisible, false);
TriList.SetBool(UIBoolJoin.HeaderCallStatusRightPositionVisible, true);
}
- else if (nextIndex == 0)
+ else if (nextJoin == 0)
{
// Set to left position
TriList.SetBool(UIBoolJoin.HeaderCallStatusLeftPositionVisible, true);
@@ -1026,13 +1076,16 @@ namespace PepperDash.Essentials
// Set mode of header button
if (!codec.IsInCall)
{
- HeaderCallButton.SetIcon(HeaderListButton.OnHook);
+ HeaderCallButtonIconSig.StringValue = "DND";
+ //HeaderCallButton.SetIcon(HeaderListButton.OnHook);
}
else if (codec.ActiveCalls.Any(c => c.Type == eCodecCallType.Video))
- HeaderCallButton.SetIcon(HeaderListButton.Camera);
+ HeaderCallButtonIconSig.StringValue = "Camera";
+ //HeaderCallButton.SetIcon(HeaderListButton.Camera);
//TriList.SetUshort(UIUshortJoin.CallHeaderButtonMode, 2);
else
- HeaderCallButton.SetIcon(HeaderListButton.Phone);
+ HeaderCallButtonIconSig.StringValue = "Phone";
+ //HeaderCallButton.SetIcon(HeaderListButton.Phone);
//TriList.SetUshort(UIUshortJoin.CallHeaderButtonMode, 1);
// Set the call status text
diff --git a/Essentials/PepperDashEssentials/UIDrivers/VC/EssentialsVideoCodecUiDriver.cs b/Essentials/PepperDashEssentials/UIDrivers/VC/EssentialsVideoCodecUiDriver.cs
index 1e110711..ce822ec1 100644
--- a/Essentials/PepperDashEssentials/UIDrivers/VC/EssentialsVideoCodecUiDriver.cs
+++ b/Essentials/PepperDashEssentials/UIDrivers/VC/EssentialsVideoCodecUiDriver.cs
@@ -160,7 +160,7 @@ namespace PepperDash.Essentials.UIDrivers.VC
else
{
Parent.Keyboard.DisableGoButton();
- return "Tap For Search Keyboard";
+ return "Tap for keyboard";
}
});
SearchStringFeedback.LinkInputSig(triList.StringInput[UIStringJoin.CodecDirectorySearchEntryText]);
@@ -1112,7 +1112,7 @@ namespace PepperDash.Essentials.UIDrivers.VC
{
if (DialStringBuilder.Length == 0 && !Codec.IsInCall)
{
- return "Dial or Tap to Show Keyboard";
+ return "Tap for keyboard";
}
if(Regex.Match(ds, @"^\d{4,7}$").Success) // 456-7890
return string.Format("{0}-{1}", ds.Substring(0, 3), ds.Substring(3));
diff --git a/Release Package/PepperDashEssentials.cpz b/Release Package/PepperDashEssentials.cpz
index 23ac5e66..394f956d 100644
Binary files a/Release Package/PepperDashEssentials.cpz and b/Release Package/PepperDashEssentials.cpz differ
diff --git a/Release Package/PepperDashEssentials.dll b/Release Package/PepperDashEssentials.dll
index 5ddaf967..e35db778 100644
Binary files a/Release Package/PepperDashEssentials.dll and b/Release Package/PepperDashEssentials.dll differ