diff --git a/Essentials Core/PepperDashEssentialsBase/Devices/IUsageTracking.cs b/Essentials Core/PepperDashEssentialsBase/Devices/IUsageTracking.cs index a9909e7c..850f6ce4 100644 --- a/Essentials Core/PepperDashEssentialsBase/Devices/IUsageTracking.cs +++ b/Essentials Core/PepperDashEssentialsBase/Devices/IUsageTracking.cs @@ -27,6 +27,8 @@ namespace PepperDash.Essentials.Core public InUseTracking InUseTracker { get; protected set; } public bool UsageIsTracked { get; set; } + + public bool UsageTrackingStarted { get; protected set; } public DateTime UsageStartTime { get; protected set; } public DateTime UsageEndTime { get; protected set; } @@ -59,6 +61,7 @@ namespace PepperDash.Essentials.Core /// public void StartDeviceUsage() { + UsageTrackingStarted = true; UsageStartTime = DateTime.Now; } @@ -69,6 +72,8 @@ namespace PepperDash.Essentials.Core { try { + UsageTrackingStarted = false; + UsageEndTime = DateTime.Now; if (UsageStartTime != null) diff --git a/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/CiscoSparkCodec.cs b/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/CiscoSparkCodec.cs index cdc57f29..9503374f 100644 --- a/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/CiscoSparkCodec.cs +++ b/Essentials Devices Common/Essentials Devices Common/VideoCodec/CiscoCodec/CiscoSparkCodec.cs @@ -1026,7 +1026,8 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.Cisco else sendingMode = "LocalOnly"; - SendText(string.Format("xCommand Presentation Start PresentationSource: {0} SendingMode: {1}", PresentationSource, sendingMode)); + if(PresentationSource > 0) + SendText(string.Format("xCommand Presentation Start PresentationSource: {0} SendingMode: {1}", PresentationSource, sendingMode)); } /// diff --git a/Essentials Devices Common/Essentials Devices Common/VideoCodec/VideoCodecBase.cs b/Essentials Devices Common/Essentials Devices Common/VideoCodec/VideoCodecBase.cs index ea75691d..2d9b505a 100644 --- a/Essentials Devices Common/Essentials Devices Common/VideoCodec/VideoCodecBase.cs +++ b/Essentials Devices Common/Essentials Devices Common/VideoCodec/VideoCodecBase.cs @@ -43,10 +43,19 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec public RoutingPortCollection OutputPorts { get; private set; } + bool wasIsInCall; + /// /// Returns true when any call is not in state Unknown, Disconnecting, Disconnected /// - public bool IsInCall { get { return ActiveCalls.Any(c => c.IsActiveCall); } } + public bool IsInCall + { + get + { + var value = ActiveCalls.Any(c => c.IsActiveCall); + return value; + } + } public BoolFeedback StandbyIsOnFeedback { get; private set; } @@ -131,6 +140,11 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec if (AutoShareContentWhileInCall) StartSharing(); + + if(IsInCall && !UsageTracker.UsageTrackingStarted) + UsageTracker.StartDeviceUsage(); + else if(UsageTracker.UsageTrackingStarted && !IsInCall) + UsageTracker.EndDeviceUsage(); } ///