diff --git a/Essentials Devices Common/Essentials Devices Common/Essentials Devices Common.csproj b/Essentials Devices Common/Essentials Devices Common/Essentials Devices Common.csproj
index 5cd2260f..991e2d08 100644
--- a/Essentials Devices Common/Essentials Devices Common/Essentials Devices Common.csproj
+++ b/Essentials Devices Common/Essentials Devices Common/Essentials Devices Common.csproj
@@ -137,6 +137,7 @@
+
diff --git a/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/CameraConverter.cs b/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/CameraConverter.cs
new file mode 100644
index 00000000..5e67c059
--- /dev/null
+++ b/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/CameraConverter.cs
@@ -0,0 +1,53 @@
+//using System;
+//using System.Collections.Generic;
+//using System.Linq;
+//using System.Text;
+//using Crestron.SimplSharp;
+
+//namespace PepperDash.Essentials.Devices.Common.VideoCodec.CiscoCodec
+//{
+// ///
+// /// This helps convert the camera section differences between Spark and Spark+
+// /// One of them returns an object. One returns an array.
+// ///
+// public class CameraConverter : JsonConverter
+// {
+
+// public override bool CanConvert(System.Type objectType)
+// {
+// return objectType == typeof(Camera) || objectType == typeof(List);
+// }
+
+// public override object ReadJson(JsonReader reader, System.Type objectType, object existingValue, JsonSerializer serializer)
+// {
+// if (reader.TokenType == JsonToken.StartArray)
+// {
+// var l = new List();
+// reader.Read();
+// while (reader.TokenType != JsonToken.EndArray)
+// {
+// l.Add(reader.Value as Camera);
+// reader.Read();
+// }
+// return l;
+// }
+// else
+// {
+// return new List { reader.Value as Camera };
+// }
+// }
+
+// public override bool CanWrite
+// {
+// get
+// {
+// return false;
+// }
+// }
+
+// public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
+// {
+// throw new NotImplementedException("SOD OFF HOSER");
+// }
+// }
+//}
\ No newline at end of file
diff --git a/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/xConfiguration.cs b/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/xConfiguration.cs
index d82dfc3f..6c5f59da 100644
--- a/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/xConfiguration.cs
+++ b/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/xConfiguration.cs
@@ -2,8 +2,12 @@
using System.Collections.Generic;
using System.Linq;
using System.Text;
+
using Crestron.SimplSharp;
+using Newtonsoft.Json;
+
+
namespace PepperDash.Essentials.Devices.Common.VideoCodec.Cisco
{
///
@@ -239,7 +243,8 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.Cisco
public class Cameras
{
- public List Camera { get; set; }
+ //[JsonConverter(typeof(CameraConverter))]
+ //public List Camera { get; set; }
public SpeakerTrack SpeakerTrack { get; set; }
}
diff --git a/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/xStatus.cs b/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/xStatus.cs
index 4209067d..fc3b4b73 100644
--- a/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/xStatus.cs
+++ b/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/xStatus.cs
@@ -4,6 +4,8 @@ using System.Linq;
using System.Text;
using Crestron.SimplSharp;
using Crestron.SimplSharp.CrestronXml.Serialization;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
using PepperDash.Core;
@@ -313,12 +315,13 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.Cisco
public class Cameras
{
- public List Camera { get; set; }
+ //[JsonConverter(typeof(CameraConverter))]
+ //public List Camera { get; set; }
public SpeakerTrack SpeakerTrack { get; set; }
public Cameras()
{
- Camera = new List();
+ //Camera = new List();
SpeakerTrack = new SpeakerTrack();
}
}
diff --git a/Essentials/PepperDashEssentials/Room/Types/EssentialsHuddleVtc1Room.cs b/Essentials/PepperDashEssentials/Room/Types/EssentialsHuddleVtc1Room.cs
index af77fd66..bed3143c 100644
--- a/Essentials/PepperDashEssentials/Room/Types/EssentialsHuddleVtc1Room.cs
+++ b/Essentials/PepperDashEssentials/Room/Types/EssentialsHuddleVtc1Room.cs
@@ -55,8 +55,8 @@ namespace PepperDash.Essentials
var disp = DefaultDisplay as DisplayBase;
var val = CurrentSourceInfo != null
&& CurrentSourceInfo.Type == eSourceListItemType.Route
- && disp != null
- && disp.PowerIsOnFeedback.BoolValue;
+ && disp != null;
+ //&& disp.PowerIsOnFeedback.BoolValue;
return val;
};
}
diff --git a/Essentials/PepperDashEssentials/UIDrivers/EssentialsHuddleVTC/EssentialsHuddleVtc1PanelAvFunctionsDriver.cs b/Essentials/PepperDashEssentials/UIDrivers/EssentialsHuddleVTC/EssentialsHuddleVtc1PanelAvFunctionsDriver.cs
index 6fe825d4..3213a8fb 100644
--- a/Essentials/PepperDashEssentials/UIDrivers/EssentialsHuddleVTC/EssentialsHuddleVtc1PanelAvFunctionsDriver.cs
+++ b/Essentials/PepperDashEssentials/UIDrivers/EssentialsHuddleVTC/EssentialsHuddleVtc1PanelAvFunctionsDriver.cs
@@ -443,6 +443,9 @@ namespace PepperDash.Essentials
// If the room is on, and the meeting is joinable
// and the LastMeetingDismissed != this meeting
+
+ Debug.Console(0, "*#* Room on: {0}, LastMeetingDismissed: {1} *#*", CurrentRoom.OnFeedback.BoolValue,
+ LastMeetingDismissed != null ? LastMeetingDismissed.StartTime.ToShortTimeString() : "null");
if (CurrentRoom.OnFeedback.BoolValue
&& LastMeetingDismissed == meeting)
{
@@ -450,7 +453,11 @@ namespace PepperDash.Essentials
}
LastMeetingDismissed = null;
- if (meeting != null)
+ if (meeting == null)
+ {
+ HideNextMeetingPopup();
+ }
+ else
{
TriList.SetString(UIStringJoin.MeetingsOrContactMethodListTitleText, "Upcoming meeting");
TriList.SetString(UIStringJoin.NextMeetingStartTimeText, meeting.StartTime.ToShortTimeString());
@@ -473,10 +480,11 @@ namespace PepperDash.Essentials
// indexOf = 3, 4 meetings :
if (indexOfNext < meetings.Count)
- {
TriList.SetString(UIStringJoin.NextMeetingFollowingMeetingText,
meetings[indexOfNext].StartTime.ToShortTimeString());
- }
+ else
+ TriList.SetString(UIStringJoin.NextMeetingFollowingMeetingText, "No more meetings today");
+
TriList.SetSigFalseAction(UIBoolJoin.NextMeetingModalClosePress, () =>
{
// Mark the meeting to not re-harass the user
diff --git a/Release Package/PepperDashEssentials.cpz b/Release Package/PepperDashEssentials.cpz
index 7034204d..872717dc 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 a102c4ab..cff85298 100644
Binary files a/Release Package/PepperDashEssentials.dll and b/Release Package/PepperDashEssentials.dll differ