mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-15 12:44:58 +00:00
Defined VcCodecBase, new Vc interfaces and started CiscoCodec class
This commit is contained in:
@@ -54,7 +54,6 @@ namespace PepperDash.Essentials.Core
|
|||||||
public static readonly Cue SmartApps = new Cue("SmartApps", 143, eCueType.Bool);
|
public static readonly Cue SmartApps = new Cue("SmartApps", 143, eCueType.Bool);
|
||||||
public static readonly Cue Dvr = new Cue("Dvr", 144, eCueType.Bool);
|
public static readonly Cue Dvr = new Cue("Dvr", 144, eCueType.Bool);
|
||||||
|
|
||||||
|
|
||||||
public static readonly Cue Play = new Cue("Play", 145, eCueType.Bool);
|
public static readonly Cue Play = new Cue("Play", 145, eCueType.Bool);
|
||||||
public static readonly Cue Pause = new Cue("Pause", 146, eCueType.Bool);
|
public static readonly Cue Pause = new Cue("Pause", 146, eCueType.Bool);
|
||||||
public static readonly Cue Stop = new Cue("Stop", 147, eCueType.Bool);
|
public static readonly Cue Stop = new Cue("Stop", 147, eCueType.Bool);
|
||||||
@@ -78,13 +77,13 @@ namespace PepperDash.Essentials.Core
|
|||||||
public static readonly Cue RStep = new Cue("RStep", 165, eCueType.Bool);
|
public static readonly Cue RStep = new Cue("RStep", 165, eCueType.Bool);
|
||||||
public static readonly Cue FStep = new Cue("FStep", 166, eCueType.Bool);
|
public static readonly Cue FStep = new Cue("FStep", 166, eCueType.Bool);
|
||||||
|
|
||||||
public static readonly Cue IsConnected = new Cue("IsConnected", 281, eCueType.Bool);
|
public static readonly Cue IsConnected = new Cue("IsConnected", 281, eCueType.Bool);
|
||||||
public static readonly Cue IsOk = new Cue("IsOk", 282, eCueType.Bool);
|
public static readonly Cue IsOk = new Cue("IsOk", 282, eCueType.Bool);
|
||||||
public static readonly Cue InWarning = new Cue("InWarning", 283, eCueType.Bool);
|
public static readonly Cue InWarning = new Cue("InWarning", 283, eCueType.Bool);
|
||||||
public static readonly Cue InError = new Cue("InError", 284, eCueType.Bool);
|
public static readonly Cue InError = new Cue("InError", 284, eCueType.Bool);
|
||||||
public static readonly Cue StatusUnknown = new Cue("StatusUnknown", 285, eCueType.Bool);
|
public static readonly Cue StatusUnknown = new Cue("StatusUnknown", 285, eCueType.Bool);
|
||||||
|
|
||||||
public static readonly Cue VolumeUp = new Cue("VolumeUp", 401, eCueType.Bool);
|
public static readonly Cue VolumeUp = new Cue("VolumeUp", 401, eCueType.Bool);
|
||||||
public static readonly Cue VolumeDown = new Cue("VolumeDown", 402, eCueType.Bool);
|
public static readonly Cue VolumeDown = new Cue("VolumeDown", 402, eCueType.Bool);
|
||||||
public static readonly Cue MuteOn = new Cue("MuteOn", 403, eCueType.Bool);
|
public static readonly Cue MuteOn = new Cue("MuteOn", 403, eCueType.Bool);
|
||||||
public static readonly Cue MuteOff = new Cue("MuteOff", 404, eCueType.Bool);
|
public static readonly Cue MuteOff = new Cue("MuteOff", 404, eCueType.Bool);
|
||||||
@@ -110,9 +109,9 @@ namespace PepperDash.Essentials.Core
|
|||||||
public static readonly Cue Vga2 = new Cue("Vga2", 466, eCueType.Bool);
|
public static readonly Cue Vga2 = new Cue("Vga2", 466, eCueType.Bool);
|
||||||
public static readonly Cue Rgb1 = new Cue("Rgb1", 467, eCueType.Bool);
|
public static readonly Cue Rgb1 = new Cue("Rgb1", 467, eCueType.Bool);
|
||||||
public static readonly Cue Rgb2 = new Cue("Rgb2", 468, eCueType.Bool);
|
public static readonly Cue Rgb2 = new Cue("Rgb2", 468, eCueType.Bool);
|
||||||
public static readonly Cue Antenna = new Cue("Antenna", 469, eCueType.Bool);
|
public static readonly Cue Antenna = new Cue("Antenna", 469, eCueType.Bool);
|
||||||
|
|
||||||
|
public static readonly Cue InCall = new Cue("InCall", 501, eCueType.Bool);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class CommonIntCue
|
public static class CommonIntCue
|
||||||
|
|||||||
@@ -45,24 +45,4 @@ namespace PepperDash.Essentials.Core
|
|||||||
dev.PowerIsOnFeedback.UnlinkInputSig(triList.BooleanInput[101]);
|
dev.PowerIsOnFeedback.UnlinkInputSig(triList.BooleanInput[101]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
public static class IFusionPowerExtensions
|
|
||||||
{
|
|
||||||
public static void LinkAttributes(this IPower dev, FusionRoom room)
|
|
||||||
{
|
|
||||||
dev.PowerIsOnFeedback.LinkInputSig(room.DisplayPowerOn.InputSig);
|
|
||||||
|
|
||||||
room.DisplayPowerOn.OutputSig.SetSigFalseAction(dev.PowerOn);
|
|
||||||
room.DisplayPowerOff.OutputSig.SetSigFalseAction(dev.PowerOff);
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void UnlinkAttributes(this IPower dev, FusionRoom room)
|
|
||||||
{
|
|
||||||
dev.PowerIsOnFeedback.UnlinkInputSig(room.DisplayPowerOn.InputSig);
|
|
||||||
|
|
||||||
room.DisplayPowerOn.OutputSig.SetSigFalseAction(null);
|
|
||||||
room.DisplayPowerOff.OutputSig.SetSigFalseAction(null);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using Crestron.SimplSharp;
|
||||||
|
|
||||||
|
namespace PepperDash.Essentials.Core
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Requirements for a device that has dialing capabilities
|
||||||
|
/// </summary>
|
||||||
|
public interface IHasDialer
|
||||||
|
{
|
||||||
|
// Add requirements for Dialer functionality
|
||||||
|
|
||||||
|
void Dial();
|
||||||
|
void EndCall();
|
||||||
|
|
||||||
|
BoolFeedback InCallFeedback { get; }
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -66,7 +66,32 @@ namespace PepperDash.Essentials.Core
|
|||||||
IntFeedback TrebleFeedback { get; }
|
IntFeedback TrebleFeedback { get; }
|
||||||
IntFeedback MaxVolumeFeedback { get; }
|
IntFeedback MaxVolumeFeedback { get; }
|
||||||
IntFeedback DefaultVolumeFeedback { get; }
|
IntFeedback DefaultVolumeFeedback { get; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Defines minimum volume controls for a codec device with dialing capabilities
|
||||||
|
/// </summary>
|
||||||
|
public interface ICodecAudio
|
||||||
|
{
|
||||||
|
void SetReceiveVolume(ushort level);
|
||||||
|
void ReceiveMuteOn();
|
||||||
|
void ReceiveMuteOff();
|
||||||
|
void ReceiveMuteToggle();
|
||||||
|
IntFeedback ReceiveLevelFeedback { get; }
|
||||||
|
BoolFeedback ReceiveMuteIsOnFeedback { get; }
|
||||||
|
|
||||||
|
void SetTransmitVolume(ushort level);
|
||||||
|
void TransmitMuteOn();
|
||||||
|
void TransmitMuteOff();
|
||||||
|
void TransmitMuteToggle();
|
||||||
|
IntFeedback TransmitLevelFeedback { get; }
|
||||||
|
BoolFeedback TransmitMuteIsOnFeedback { get; }
|
||||||
|
|
||||||
|
void PrivacyModeOn();
|
||||||
|
void PrivacyModeOff();
|
||||||
|
void PrivacyModeToggle();
|
||||||
|
BoolFeedback PrivacyModeIsOnFeedback { get; }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -103,6 +103,7 @@
|
|||||||
<Reference Include="System.Data" />
|
<Reference Include="System.Data" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Compile Include="Devices\IHasDialer.cs" />
|
||||||
<Compile Include="Ramps and Increments\ActionIncrementer.cs" />
|
<Compile Include="Ramps and Increments\ActionIncrementer.cs" />
|
||||||
<Compile Include="Comm and IR\CommFactory.cs" />
|
<Compile Include="Comm and IR\CommFactory.cs" />
|
||||||
<Compile Include="Comm and IR\CommunicationExtras.cs" />
|
<Compile Include="Comm and IR\CommunicationExtras.cs" />
|
||||||
|
|||||||
@@ -46,6 +46,14 @@
|
|||||||
<GenerateSerializationAssemblies>off</GenerateSerializationAssemblies>
|
<GenerateSerializationAssemblies>off</GenerateSerializationAssemblies>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="Cisco One Button To Push, Version=1.0.0.30876, Culture=neutral, processorArchitecture=MSIL">
|
||||||
|
<SpecificVersion>False</SpecificVersion>
|
||||||
|
<HintPath>..\..\..\CodeBlue\libraries\Cisco CODEC\Cisco One Button To Push\Cisco One Button To Push\bin\Cisco One Button To Push.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Cisco SX80 Corporate Phone Book, Version=1.0.0.15355, Culture=neutral, processorArchitecture=MSIL">
|
||||||
|
<SpecificVersion>False</SpecificVersion>
|
||||||
|
<HintPath>..\..\..\CodeBlue\libraries\Cisco CODEC\Cisco SX80 Corporate Phone Book\Cisco SX80 Corporate Phone Book\bin\Cisco SX80 Corporate Phone Book.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="Crestron.SimplSharpPro.DeviceSupport, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1099c178b3b54c3b, processorArchitecture=MSIL">
|
<Reference Include="Crestron.SimplSharpPro.DeviceSupport, Version=1.0.0.0, Culture=neutral, PublicKeyToken=1099c178b3b54c3b, processorArchitecture=MSIL">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\..\..\..\..\..\..\ProgramData\Crestron\SDK\SSPDevices\Crestron.SimplSharpPro.DeviceSupport.dll</HintPath>
|
<HintPath>..\..\..\..\..\..\..\ProgramData\Crestron\SDK\SSPDevices\Crestron.SimplSharpPro.DeviceSupport.dll</HintPath>
|
||||||
@@ -119,6 +127,8 @@
|
|||||||
<Compile Include="SetTopBox\IRSetTopBoxBase.cs" />
|
<Compile Include="SetTopBox\IRSetTopBoxBase.cs" />
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
<Compile Include="Streaming\Roku.cs" />
|
<Compile Include="Streaming\Roku.cs" />
|
||||||
|
<Compile Include="VC\CiscoCodec.cs" />
|
||||||
|
<Compile Include="VC\VcCodecBase.cs" />
|
||||||
<None Include="Properties\ControlSystem.cfg" />
|
<None Include="Properties\ControlSystem.cfg" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(MSBuildBinPath)\Microsoft.CompactFramework.CSharp.targets" />
|
<Import Project="$(MSBuildBinPath)\Microsoft.CompactFramework.CSharp.targets" />
|
||||||
|
|||||||
@@ -0,0 +1,123 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using Crestron.SimplSharp;
|
||||||
|
using Cisco_One_Button_To_Push;
|
||||||
|
using Cisco_SX80_Corporate_Phone_Book;
|
||||||
|
|
||||||
|
namespace PepperDash.Essentials.Devices.VC
|
||||||
|
{
|
||||||
|
public class CiscoCodec : VcCodecBase
|
||||||
|
{
|
||||||
|
private CiscoOneButtonToPush Codec;
|
||||||
|
|
||||||
|
private Corporate_Phone_Book PhoneBook;
|
||||||
|
|
||||||
|
public CiscoCodec(string key, string name)
|
||||||
|
: base(key, name)
|
||||||
|
{
|
||||||
|
Codec = new CiscoOneButtonToPush();
|
||||||
|
|
||||||
|
PhoneBook = new Corporate_Phone_Book();
|
||||||
|
|
||||||
|
Codec.Initialize();
|
||||||
|
|
||||||
|
Codec.GetMeetings();
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public override void ExecuteSwitch(object selector)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override Func<bool> InCallFeedbackFunc
|
||||||
|
{
|
||||||
|
get { throw new NotImplementedException(); }
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override Func<bool> TransmitMuteFeedbackFunc
|
||||||
|
{
|
||||||
|
get { throw new NotImplementedException(); }
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override Func<bool> ReceiveMuteFeedbackFunc
|
||||||
|
{
|
||||||
|
get { throw new NotImplementedException(); }
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override Func<bool> PrivacyModeFeedbackFunc
|
||||||
|
{
|
||||||
|
get { throw new NotImplementedException(); }
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void Dial()
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void EndCall()
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void ReceiveMuteOff()
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void ReceiveMuteOn()
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void ReceiveMuteToggle()
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void SetReceiveVolume(ushort level)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void TransmitMuteOff()
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void TransmitMuteOn()
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void TransmitMuteToggle()
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void SetTransmitVolume(ushort level)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void PrivacyModeOn()
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void PrivacyModeOff()
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void PrivacyModeToggle()
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,99 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using Crestron.SimplSharp;
|
||||||
|
|
||||||
|
using PepperDash.Core;
|
||||||
|
using PepperDash.Essentials.Core;
|
||||||
|
|
||||||
|
namespace PepperDash.Essentials.Devices.VC
|
||||||
|
{
|
||||||
|
public abstract class VcCodecBase : Device, IHasFeedback, IRoutingSinkWithSwitching, IUsageTracking, IHasDialer//, ICodecAudio
|
||||||
|
{
|
||||||
|
#region IUsageTracking Members
|
||||||
|
|
||||||
|
public UsageTracking UsageTracker { get; set; }
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region IRoutingInputs Members
|
||||||
|
|
||||||
|
public RoutingPortCollection<RoutingInputPort> InputPorts { get; private set; }
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
public BoolFeedback InCallFeedback { get; protected set; }
|
||||||
|
|
||||||
|
abstract protected Func<bool> InCallFeedbackFunc { get; }
|
||||||
|
abstract protected Func<bool> TransmitMuteFeedbackFunc { get; }
|
||||||
|
abstract protected Func<bool> ReceiveMuteFeedbackFunc { get; }
|
||||||
|
abstract protected Func<bool> PrivacyModeFeedbackFunc { get; }
|
||||||
|
|
||||||
|
public VcCodecBase(string key, string name)
|
||||||
|
: base(key, name)
|
||||||
|
{
|
||||||
|
InCallFeedback = new BoolFeedback(InCallFeedbackFunc);
|
||||||
|
ReceiveMuteIsOnFeedback = new BoolFeedback(ReceiveMuteFeedbackFunc);
|
||||||
|
TransmitMuteIsOnFeedback = new BoolFeedback(TransmitMuteFeedbackFunc);
|
||||||
|
PrivacyModeIsOnFeedback = new BoolFeedback(PrivacyModeFeedbackFunc);
|
||||||
|
|
||||||
|
InputPorts = new RoutingPortCollection<RoutingInputPort>();
|
||||||
|
|
||||||
|
InCallFeedback.OutputChange += new EventHandler<EventArgs>(InCallFeedback_OutputChange);
|
||||||
|
}
|
||||||
|
|
||||||
|
void InCallFeedback_OutputChange(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (UsageTracker != null)
|
||||||
|
{
|
||||||
|
if (InCallFeedback.BoolValue)
|
||||||
|
UsageTracker.StartDeviceUsage();
|
||||||
|
else
|
||||||
|
UsageTracker.EndDeviceUsage();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public abstract void Dial();
|
||||||
|
public abstract void EndCall();
|
||||||
|
|
||||||
|
public virtual List<Feedback> Feedbacks
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
return new List<Feedback>
|
||||||
|
{
|
||||||
|
InCallFeedback,
|
||||||
|
ReceiveMuteIsOnFeedback,
|
||||||
|
TransmitMuteIsOnFeedback,
|
||||||
|
PrivacyModeIsOnFeedback
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public abstract void ExecuteSwitch(object selector);
|
||||||
|
|
||||||
|
#region ICodecAudio Members
|
||||||
|
|
||||||
|
public IntFeedback ReceiveLevelFeedback { get; private set; }
|
||||||
|
public BoolFeedback ReceiveMuteIsOnFeedback { get; private set; }
|
||||||
|
public abstract void ReceiveMuteOff();
|
||||||
|
public abstract void ReceiveMuteOn();
|
||||||
|
public abstract void ReceiveMuteToggle();
|
||||||
|
public abstract void SetReceiveVolume(ushort level);
|
||||||
|
|
||||||
|
public IntFeedback TransmitLevelFeedback { get; private set; }
|
||||||
|
public BoolFeedback TransmitMuteIsOnFeedback { get; private set; }
|
||||||
|
public abstract void TransmitMuteOff();
|
||||||
|
public abstract void TransmitMuteOn();
|
||||||
|
public abstract void TransmitMuteToggle();
|
||||||
|
public abstract void SetTransmitVolume(ushort level);
|
||||||
|
|
||||||
|
public abstract void PrivacyModeOn();
|
||||||
|
public abstract void PrivacyModeOff();
|
||||||
|
public abstract void PrivacyModeToggle();
|
||||||
|
public BoolFeedback PrivacyModeIsOnFeedback { get; private set; }
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -8,7 +8,7 @@ namespace PepperDash.Essentials.Fusion
|
|||||||
{
|
{
|
||||||
public class ScheduleChangeEventArgs : EventArgs
|
public class ScheduleChangeEventArgs : EventArgs
|
||||||
{
|
{
|
||||||
public RoomSchedule MyProperty { get; set; }
|
public RoomSchedule Schedule { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public class MeetingChangeEventArgs : EventArgs
|
public class MeetingChangeEventArgs : EventArgs
|
||||||
|
|||||||
@@ -25,9 +25,9 @@ namespace PepperDash.Essentials.Fusion
|
|||||||
{
|
{
|
||||||
public class EssentialsHuddleSpaceFusionSystemController : Device
|
public class EssentialsHuddleSpaceFusionSystemController : Device
|
||||||
{
|
{
|
||||||
//public event EventHandler<ScheduleChangeEventArgs> ScheduleChange;
|
public event EventHandler<ScheduleChangeEventArgs> ScheduleChange;
|
||||||
//public event EventHandler<MeetingChangeEventArgs> MeetingEndWarning;
|
public event EventHandler<MeetingChangeEventArgs> MeetingEndWarning;
|
||||||
//public event EventHandler<MeetingChangeEventArgs> NextMeetingBeginWarning;
|
public event EventHandler<MeetingChangeEventArgs> NextMeetingBeginWarning;
|
||||||
|
|
||||||
FusionRoom FusionRoom;
|
FusionRoom FusionRoom;
|
||||||
EssentialsHuddleSpaceRoom Room;
|
EssentialsHuddleSpaceRoom Room;
|
||||||
@@ -788,6 +788,15 @@ namespace PepperDash.Essentials.Fusion
|
|||||||
|
|
||||||
if (!IsRegisteredForSchedulePushNotifications)
|
if (!IsRegisteredForSchedulePushNotifications)
|
||||||
PollTimer.Reset(SchedulePollInterval, SchedulePollInterval);
|
PollTimer.Reset(SchedulePollInterval, SchedulePollInterval);
|
||||||
|
|
||||||
|
// Fire Schedule Change Event
|
||||||
|
var handler = ScheduleChange;
|
||||||
|
|
||||||
|
if (handler != null)
|
||||||
|
{
|
||||||
|
handler(this, new ScheduleChangeEventArgs() { Schedule = CurrentSchedule });
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -806,20 +815,26 @@ namespace PepperDash.Essentials.Fusion
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Prints today's schedule to console for debugging
|
||||||
|
/// </summary>
|
||||||
void PrintTodaysSchedule()
|
void PrintTodaysSchedule()
|
||||||
{
|
{
|
||||||
if (CurrentSchedule.Meetings.Count > 0)
|
if (Debug.Level > 1)
|
||||||
{
|
{
|
||||||
Debug.Console(1, this, "Today's Schedule for '{0}'\n", Room.Name);
|
if (CurrentSchedule.Meetings.Count > 0)
|
||||||
|
|
||||||
foreach (Event e in CurrentSchedule.Meetings)
|
|
||||||
{
|
{
|
||||||
Debug.Console(1, this, "Subject: {0}", e.Subject);
|
Debug.Console(1, this, "Today's Schedule for '{0}'\n", Room.Name);
|
||||||
Debug.Console(1, this, "Organizer: {0}", e.Organizer);
|
|
||||||
Debug.Console(1, this, "MeetingID: {0}", e.MeetingID);
|
foreach (Event e in CurrentSchedule.Meetings)
|
||||||
Debug.Console(1, this, "Start Time: {0}", e.dtStart);
|
{
|
||||||
Debug.Console(1, this, "End Time: {0}", e.dtEnd);
|
Debug.Console(1, this, "Subject: {0}", e.Subject);
|
||||||
Debug.Console(1, this, "Duration: {0}\n", e.DurationInMinutes);
|
Debug.Console(1, this, "Organizer: {0}", e.Organizer);
|
||||||
|
Debug.Console(1, this, "MeetingID: {0}", e.MeetingID);
|
||||||
|
Debug.Console(1, this, "Start Time: {0}", e.dtStart);
|
||||||
|
Debug.Console(1, this, "End Time: {0}", e.dtEnd);
|
||||||
|
Debug.Console(1, this, "Duration: {0}\n", e.DurationInMinutes);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -964,7 +979,7 @@ namespace PepperDash.Essentials.Fusion
|
|||||||
attrName = "Online - Touch Panel " + attrNum;
|
attrName = "Online - Touch Panel " + attrNum;
|
||||||
attrNum += 150;
|
attrNum += 150;
|
||||||
}
|
}
|
||||||
else if (dev is Crestron.SimplSharpPro.UI.XpanelForSmartGraphics)
|
else if ((dev as EssentialsTouchpanelController).Panel is Crestron.SimplSharpPro.UI.XpanelForSmartGraphics)
|
||||||
{
|
{
|
||||||
if (attrNum > 10)
|
if (attrNum > 10)
|
||||||
continue;
|
continue;
|
||||||
|
|||||||
Reference in New Issue
Block a user