From a870418f961cf50495f23d9f251d40bc7de9985a Mon Sep 17 00:00:00 2001 From: Heath Volmer Date: Tue, 22 Jan 2019 12:00:50 -0700 Subject: [PATCH] Added Ddvc01VtcMessenger; added to bridge; basic functions and feedbacks --- ...vc01Messenger.cs => Ddvc01AtcMessenger.cs} | 29 +- .../Messengers/Ddvc01VtcMessenger.cs | 320 +++++++++++++++++ .../RoomBridges/CotijaDdvc01RoomBridge.cs | 21 +- PepperDashEssentials/Bridges/BridgeBase.cs | 42 +-- .../Bridges/CameraControllerBridge.cs | 330 +++++++++--------- .../Bridges/DigitalLoggerBridge.cs | 134 +++---- .../Bridges/DisplayControllerBridge.cs | 284 +++++++-------- .../Bridges/GenericLightingBridge.cs | 164 ++++----- PepperDashEssentials/ControlSystem.cs | 3 +- .../PepperDashEssentials.csproj | 3 +- essentials-framework | 2 +- 11 files changed, 844 insertions(+), 488 deletions(-) rename PepperDashEssentials/AppServer/Messengers/{AtcDdvc01Messenger.cs => Ddvc01AtcMessenger.cs} (92%) create mode 100644 PepperDashEssentials/AppServer/Messengers/Ddvc01VtcMessenger.cs diff --git a/PepperDashEssentials/AppServer/Messengers/AtcDdvc01Messenger.cs b/PepperDashEssentials/AppServer/Messengers/Ddvc01AtcMessenger.cs similarity index 92% rename from PepperDashEssentials/AppServer/Messengers/AtcDdvc01Messenger.cs rename to PepperDashEssentials/AppServer/Messengers/Ddvc01AtcMessenger.cs index 8e28d995..b578018b 100644 --- a/PepperDashEssentials/AppServer/Messengers/AtcDdvc01Messenger.cs +++ b/PepperDashEssentials/AppServer/Messengers/Ddvc01AtcMessenger.cs @@ -16,12 +16,33 @@ namespace PepperDash.Essentials.AppServer.Messengers { BasicTriList EISC; + /// + /// 221 + /// const uint BDialHangup = 221; + /// + /// 251 + /// const uint BIncomingAnswer = 251; + /// + /// 252 + /// const uint BIncomingReject = 252; + /// + /// 241 + /// const uint BSpeedDial1 = 241; + /// + /// 242 + /// const uint BSpeedDial2 = 242; + /// + /// 243 + /// const uint BSpeedDial3 = 243; + /// + /// 244 + /// const uint BSpeedDial4 = 244; /// @@ -46,7 +67,7 @@ namespace PepperDash.Essentials.AppServer.Messengers const uint SCallDirection = 222; /// - /// + /// 201-212 0-9*# /// Dictionary DTMFMap = new Dictionary { @@ -64,6 +85,9 @@ namespace PepperDash.Essentials.AppServer.Messengers { "#", 212 }, }; + /// + /// + /// CodecActiveCallItem CurrentCallItem; @@ -160,6 +184,9 @@ namespace PepperDash.Essentials.AppServer.Messengers })); } + /// + /// + /// void SendCallsList() { PostStatusMessage(new diff --git a/PepperDashEssentials/AppServer/Messengers/Ddvc01VtcMessenger.cs b/PepperDashEssentials/AppServer/Messengers/Ddvc01VtcMessenger.cs new file mode 100644 index 00000000..f79efab5 --- /dev/null +++ b/PepperDashEssentials/AppServer/Messengers/Ddvc01VtcMessenger.cs @@ -0,0 +1,320 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using Crestron.SimplSharp; +using Crestron.SimplSharpPro.DeviceSupport; +using Crestron.SimplSharpPro.EthernetCommunication; + +using PepperDash.Core; +using PepperDash.Essentials.Core; +using PepperDash.Essentials.Devices.Common.Codec; + +namespace PepperDash.Essentials.AppServer.Messengers +{ + public class Ddvc01VtcMessenger : MessengerBase + { + BasicTriList EISC; + + /********* Bools *********/ + + /// + /// 724 + /// + const uint BDialHangup = 724; + /// + /// 750 + /// + const uint BCallIncoming = 750; + /// + /// 751 + /// + const uint BIncomingAnswer = 751; + /// + /// 752 + /// + const uint BIncomingReject = 752; + /// + /// 741 + /// + const uint BSpeedDial1 = 741; + /// + /// 742 + /// + const uint BSpeedDial2 = 742; + /// + /// 743 + /// + const uint BSpeedDial3 = 743; + /// + /// 744 + /// + const uint BSpeedDial4 = 744; + /// + /// 800 + /// + const uint BDirectorySearchBusy = 800; + /// + /// 801 when selected entry is a contact + /// + const uint BDirectoryEntryIsContact = 801; + /// + /// 802 To show/hide back button + /// + const uint BDirectoryIsAtTop = 802; + /// + /// 811 + /// + const uint BCameraControlUp = 811; + /// + /// 812 + /// + const uint BCameraControlDown = 812; + /// + /// 813 + /// + const uint BCameraControlLeft = 813; + /// + /// 814 + /// + const uint BCameraControlRight = 814; + /// + /// 815 + /// + const uint BCameraControlZoomIn = 815; + /// + /// 816 + /// + const uint BCameraControlZoomOut = 816; + /// + /// 821 - 826 + /// + const uint BCameraPresetStart = 821; + + /********* Ushorts *********/ + /// + /// 801 + /// + const uint UDirectorySelectRow = 801; + /// + /// 801 + /// + const uint UDirectoryRowCount = 801; + + /********* Strings *********/ + /// + /// 701 + /// + const uint SCurrentDialString = 701; + /// + /// 711 + /// + const uint SCurrentCallNumber = 711; + /// + /// 712 + /// + const uint SCurrentCallName = 712; + /// + /// 731 + /// + const uint SHookState = 731; + /// + /// 722 + /// + const uint SCallDirection = 722; + /// + /// 751 + /// + const uint SIncomingCallName = 751; + /// + /// 752 + /// + const uint SIncomingCallNumber = 752; + /// + /// 800 + /// + const uint SDirectorySearchString = 800; + /// + /// 801-1055 + /// + const uint SDirectoryEntriesStart = 801; + /// + /// 1056 + /// + const uint SDirectoryEntrySelectedName = 1056; + /// + /// 1057 + /// + const uint SDirectoryEntrySelectedNumber = 1057; + + + /// + /// 701-712 0-9*# + /// + Dictionary DTMFMap = new Dictionary + { + { "1", 701 }, + { "2", 702 }, + { "3", 703 }, + { "4", 704 }, + { "5", 705 }, + { "6", 706 }, + { "7", 707 }, + { "8", 708 }, + { "9", 709 }, + { "0", 710 }, + { "*", 711 }, + { "#", 712 }, + }; + + CodecActiveCallItem CurrentCallItem; + CodecActiveCallItem IncomingCallItem; + + + /// + /// + /// + /// + /// + public Ddvc01VtcMessenger(string key, BasicTriList eisc, string messagePath) + : base(key, messagePath) + { + EISC = eisc; + + CurrentCallItem = new CodecActiveCallItem(); + CurrentCallItem.Type = eCodecCallType.Video; + CurrentCallItem.Id = "-video-"; + } + + /// + /// + /// + void SendFullStatus() + { + this.PostStatusMessage(new + { + calls = GetCurrentCallList(), + currentCallString = EISC.GetString(SCurrentCallNumber), + currentDialString = EISC.GetString(SCurrentDialString), + isInCall = EISC.GetString(SHookState) == "Connected", + + }); + } + + /// + /// + /// + /// + protected override void CustomRegisterWithAppServer(CotijaSystemController appServerController) + { + EISC.SetStringSigAction(SHookState, s => + { + CurrentCallItem.Status = (eCodecCallStatus)Enum.Parse(typeof(eCodecCallStatus), s, true); + SendCallsList(); + }); + + EISC.SetStringSigAction(SCurrentCallNumber, s => + { + CurrentCallItem.Number = s; + SendCallsList(); + }); + + EISC.SetStringSigAction(SCurrentCallName, s => + { + CurrentCallItem.Name = s; + SendCallsList(); + }); + + EISC.SetStringSigAction(SCallDirection, s => + { + CurrentCallItem.Direction = (eCodecCallDirection)Enum.Parse(typeof(eCodecCallDirection), s, true); + SendCallsList(); + }); + + EISC.SetBoolSigAction(BCallIncoming, b => + { + if (b) + { + var ica = new CodecActiveCallItem() + { + Direction = eCodecCallDirection.Incoming, + Id = "-video-incoming", + Name = EISC.GetString(SIncomingCallName), + Number = EISC.GetString(SIncomingCallNumber), + Status = eCodecCallStatus.Ringing, + Type = eCodecCallType.Video + }; + IncomingCallItem = ica; + } + else + { + IncomingCallItem = null; + } + SendCallsList(); + }); + + // Add press and holds using helper action + Action addPHAction = (s, u) => + AppServerController.AddAction(MessagePath + s, new PressAndHoldAction(b => EISC.SetBool(u, b))); + addPHAction("/cameraUp", BCameraControlUp); + addPHAction("/cameraDown", BCameraControlDown); + addPHAction("/cameraLeft", BCameraControlLeft); + addPHAction("/cameraRight", BCameraControlRight); + addPHAction("/cameraZoomIn", BCameraControlZoomIn); + addPHAction("/cameraZoonOut", BCameraControlZoomOut); + + // Add straight pulse calls using helper action + Action addAction = (s, u) => + AppServerController.AddAction(MessagePath + s, new Action(() => EISC.PulseBool(u, 100))); + addAction("/endCallById", BDialHangup); + addAction("/acceptById", BIncomingAnswer); + addAction("/rejectById", BIncomingReject); + addAction("/speedDial1", BSpeedDial1); + addAction("/speedDial2", BSpeedDial2); + addAction("/speedDial3", BSpeedDial3); + addAction("/speedDial4", BSpeedDial4); + for(uint i = 0; i < 6; i++) + { + addAction("/cameraPreset" + (i + 1), BCameraPresetStart + i); + } + + // Get status + AppServerController.AddAction(MessagePath + "/fullStatus", new Action(SendFullStatus)); + // Dial on string + AppServerController.AddAction(MessagePath + "/dial", new Action(s => EISC.SetString(SCurrentDialString, s))); + // Pulse DTMF + AppServerController.AddAction(MessagePath + "/dtmf", new Action(s => + { + if (DTMFMap.ContainsKey(s)) + { + EISC.PulseBool(DTMFMap[s], 100); + } + })); + } + + void SendCallsList() + { + PostStatusMessage(new + { + calls = GetCurrentCallList(), + }); + } + + /// + /// Turns the + /// + /// + List GetCurrentCallList() + { + var list = new List(); + if (CurrentCallItem.Status != eCodecCallStatus.Disconnected) + { + list.Add(CurrentCallItem); + } + if (EISC.GetBool(BCallIncoming)) { + + } + return list; + } + } +} \ No newline at end of file diff --git a/PepperDashEssentials/AppServer/RoomBridges/CotijaDdvc01RoomBridge.cs b/PepperDashEssentials/AppServer/RoomBridges/CotijaDdvc01RoomBridge.cs index 55c1f61b..0c1262ad 100644 --- a/PepperDashEssentials/AppServer/RoomBridges/CotijaDdvc01RoomBridge.cs +++ b/PepperDashEssentials/AppServer/RoomBridges/CotijaDdvc01RoomBridge.cs @@ -81,6 +81,10 @@ namespace PepperDash.Essentials.Room.Cotija /// 501 /// public const uint ConfigIsReady = 501; + /// + /// 601 + /// + public const uint SourceShareDisableStartJoin = 601; } public class UshortJoin @@ -166,6 +170,7 @@ namespace PepperDash.Essentials.Room.Cotija CotijaDdvc01DeviceBridge SourceBridge; Ddvc01AtcMessenger AtcMessenger; + Ddvc01VtcMessenger VtcMessenger; /// @@ -204,10 +209,14 @@ namespace PepperDash.Essentials.Room.Cotija SetupFunctions(); SetupFeedbacks(); - var key = this.Key + "-" + Parent.Key; - AtcMessenger = new Ddvc01AtcMessenger(key, EISC, "/device/audioCodec"); + var atcKey = string.Format("atc-{0}-{1}", this.Key, Parent.Key); + AtcMessenger = new Ddvc01AtcMessenger(atcKey, EISC, "/device/audioCodec"); AtcMessenger.RegisterWithAppServer(Parent); + var vtcKey = string.Format("atc-{0}-{1}", this.Key, Parent.Key); + VtcMessenger = new Ddvc01VtcMessenger(vtcKey, EISC, "/device/videoCodec"); + VtcMessenger.RegisterWithAppServer(Parent); + EISC.SigChange += EISC_SigChange; EISC.OnlineStatusChange += (o, a) => { @@ -251,7 +260,6 @@ namespace PepperDash.Essentials.Room.Cotija /// void SetupFunctions() { -#warning need join numbers for these Parent.AddAction(@"/room/room1/promptForCode", new Action(() => EISC.PulseBool(BoolJoin.PromptForCode))); Parent.AddAction(@"/room/room1/clientJoined", new Action(() => EISC.PulseBool(BoolJoin.ClientJoined))); @@ -467,8 +475,8 @@ namespace PepperDash.Essentials.Room.Cotija break; var icon = EISC.StringOutput[651 + i].StringValue; var key = EISC.StringOutput[671 + i].StringValue; - - var type = EISC.StringOutput[701 + i].StringValue; + var type = EISC.StringOutput[BoolJoin.SourceShareDisableStartJoin + i].StringValue; + var disableShare = EISC.BooleanOutput[601 + i].BoolValue; Debug.Console(0, this, "Adding source {0} '{1}'", key, name); var newSLI = new SourceListItem{ @@ -476,7 +484,8 @@ namespace PepperDash.Essentials.Room.Cotija Name = name, Order = (int)i + 1, SourceKey = key, - Type = eSourceListItemType.Route + Type = eSourceListItemType.Route, + DisableCodecSharing = disableShare, }; newSl.Add(key, newSLI); diff --git a/PepperDashEssentials/Bridges/BridgeBase.cs b/PepperDashEssentials/Bridges/BridgeBase.cs index 537b5d59..79f96c71 100644 --- a/PepperDashEssentials/Bridges/BridgeBase.cs +++ b/PepperDashEssentials/Bridges/BridgeBase.cs @@ -15,7 +15,7 @@ using PepperDash.Essentials.Devices.Common; using PepperDash.Essentials.Core.Config; using PepperDash.Essentials.Core.CrestronIO; using PepperDash.Essentials.DM; -using PepperDash.Essentials.Devices.Common.Cameras; +//using PepperDash.Essentials.Devices.Common.Cameras; namespace PepperDash.Essentials.Bridges { @@ -88,16 +88,16 @@ namespace PepperDash.Essentials.Bridges (device as GenericComm).LinkToApi(Eisc, d.JoinStart, d.JoinMapKey); continue; } - else if (device is CameraBase) - { - (device as CameraBase).LinkToApi(Eisc, d.JoinStart, d.JoinMapKey); - continue; - } - else if (device is PepperDash.Essentials.Core.TwoWayDisplayBase) - { - (device as TwoWayDisplayBase).LinkToApi(Eisc, d.JoinStart, d.JoinMapKey); - continue; - } + //else if (device is CameraBase) + //{ + // (device as CameraBase).LinkToApi(Eisc, d.JoinStart, d.JoinMapKey); + // continue; + //} + //else if (device is PepperDash.Essentials.Core.TwoWayDisplayBase) + //{ + // (device as TwoWayDisplayBase).LinkToApi(Eisc, d.JoinStart, d.JoinMapKey); + // continue; + //} else if (device is DmChassisController) { (device as DmChassisController).LinkToApi(Eisc, d.JoinStart, d.JoinMapKey); @@ -124,16 +124,16 @@ namespace PepperDash.Essentials.Bridges (device as IDigitalInput).LinkToApi(Eisc, d.JoinStart, d.JoinMapKey); continue; } - else if (device is LightingBase) - { - (device as LightingBase).LinkToApi(Eisc, d.JoinStart, d.JoinMapKey); - continue; - } - else if (device is DigitalLogger) - { - (device as DigitalLogger).LinkToApi(Eisc, d.JoinStart, d.JoinMapKey); - continue; - } + //else if (device is LightingBase) + //{ + // (device as LightingBase).LinkToApi(Eisc, d.JoinStart, d.JoinMapKey); + // continue; + //} + //else if (device is DigitalLogger) + //{ + // (device as DigitalLogger).LinkToApi(Eisc, d.JoinStart, d.JoinMapKey); + // continue; + //} } } diff --git a/PepperDashEssentials/Bridges/CameraControllerBridge.cs b/PepperDashEssentials/Bridges/CameraControllerBridge.cs index 05b67287..a0bdfdd2 100644 --- a/PepperDashEssentials/Bridges/CameraControllerBridge.cs +++ b/PepperDashEssentials/Bridges/CameraControllerBridge.cs @@ -1,187 +1,187 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using Crestron.SimplSharp; -using Crestron.SimplSharpPro.DeviceSupport; -using PepperDash.Core; -using PepperDash.Essentials.Core; -using PepperDash.Essentials.Devices.Common; +//using System; +//using System.Collections.Generic; +//using System.Linq; +//using System.Text; +//using Crestron.SimplSharp; +//using Crestron.SimplSharpPro.DeviceSupport; +//using PepperDash.Core; +//using PepperDash.Essentials.Core; +//using PepperDash.Essentials.Devices.Common; -namespace PepperDash.Essentials.Bridges -{ - public static class CameraControllerApiExtensions - { +//namespace PepperDash.Essentials.Bridges +//{ +// public static class CameraControllerApiExtensions +// { - public static BasicTriList _TriList; - public static CameraControllerJoinMap JoinMap; - public static void LinkToApi(this PepperDash.Essentials.Devices.Common.Cameras.CameraBase cameraDevice, BasicTriList trilist, uint joinStart, string joinMapKey) - { - JoinMap = JoinMapHelper.GetJoinMapForDevice(joinMapKey) as CameraControllerJoinMap; +// public static BasicTriList _TriList; +// public static CameraControllerJoinMap JoinMap; +// public static void LinkToApi(this PepperDash.Essentials.Devices.Common.Cameras.CameraBase cameraDevice, BasicTriList trilist, uint joinStart, string joinMapKey) +// { +// JoinMap = JoinMapHelper.GetJoinMapForDevice(joinMapKey) as CameraControllerJoinMap; - _TriList = trilist; - if (JoinMap == null) - { - JoinMap = new CameraControllerJoinMap(); - } +// _TriList = trilist; +// if (JoinMap == null) +// { +// JoinMap = new CameraControllerJoinMap(); +// } - JoinMap.OffsetJoinNumbers(joinStart); - Debug.Console(1, "Linking to Trilist '{0}'", trilist.ID.ToString("X")); - Debug.Console(0, "Linking to Bridge Type {0}", cameraDevice.GetType().Name.ToString()); +// JoinMap.OffsetJoinNumbers(joinStart); +// Debug.Console(1, "Linking to Trilist '{0}'", trilist.ID.ToString("X")); +// Debug.Console(0, "Linking to Bridge Type {0}", cameraDevice.GetType().Name.ToString()); - var commMonitor = cameraDevice as ICommunicationMonitor; - commMonitor.CommunicationMonitor.IsOnlineFeedback.LinkInputSig(trilist.BooleanInput[JoinMap.IsOnline]); +// var commMonitor = cameraDevice as ICommunicationMonitor; +// commMonitor.CommunicationMonitor.IsOnlineFeedback.LinkInputSig(trilist.BooleanInput[JoinMap.IsOnline]); - trilist.SetBoolSigAction(JoinMap.Left, (b) => - { - if (b) - { - cameraDevice.PanLeft(); - } - else - { - cameraDevice.Stop(); - } - }); - trilist.SetBoolSigAction(JoinMap.Right, (b) => - { - if (b) - { - cameraDevice.PanRight(); - } - else - { - cameraDevice.Stop(); - } - }); +// trilist.SetBoolSigAction(JoinMap.Left, (b) => +// { +// if (b) +// { +// cameraDevice.PanLeft(); +// } +// else +// { +// cameraDevice.Stop(); +// } +// }); +// trilist.SetBoolSigAction(JoinMap.Right, (b) => +// { +// if (b) +// { +// cameraDevice.PanRight(); +// } +// else +// { +// cameraDevice.Stop(); +// } +// }); - trilist.SetBoolSigAction(JoinMap.Up, (b) => - { - if (b) - { - cameraDevice.TiltUp(); - } - else - { - cameraDevice.Stop(); - } - }); - trilist.SetBoolSigAction(JoinMap.Down, (b) => - { - if (b) - { - cameraDevice.TiltDown(); - } - else - { - cameraDevice.Stop(); - } - }); +// trilist.SetBoolSigAction(JoinMap.Up, (b) => +// { +// if (b) +// { +// cameraDevice.TiltUp(); +// } +// else +// { +// cameraDevice.Stop(); +// } +// }); +// trilist.SetBoolSigAction(JoinMap.Down, (b) => +// { +// if (b) +// { +// cameraDevice.TiltDown(); +// } +// else +// { +// cameraDevice.Stop(); +// } +// }); - trilist.SetBoolSigAction(JoinMap.ZoomIn, (b) => - { - if (b) - { - cameraDevice.ZoomIn(); - } - else - { - cameraDevice.Stop(); - } - }); +// trilist.SetBoolSigAction(JoinMap.ZoomIn, (b) => +// { +// if (b) +// { +// cameraDevice.ZoomIn(); +// } +// else +// { +// cameraDevice.Stop(); +// } +// }); - trilist.SetBoolSigAction(JoinMap.ZoomOut, (b) => - { - if (b) - { - cameraDevice.ZoomOut(); - } - else - { - cameraDevice.Stop(); - } - }); +// trilist.SetBoolSigAction(JoinMap.ZoomOut, (b) => +// { +// if (b) +// { +// cameraDevice.ZoomOut(); +// } +// else +// { +// cameraDevice.Stop(); +// } +// }); - if (cameraDevice.GetType().Name.ToString().ToLower() == "cameravisca") - { - var viscaCamera = cameraDevice as PepperDash.Essentials.Devices.Common.Cameras.CameraVisca; - trilist.SetSigTrueAction(JoinMap.PowerOn, () => viscaCamera.PowerOn()); - trilist.SetSigTrueAction(JoinMap.PowerOff, () => viscaCamera.PowerOff()); +// if (cameraDevice.GetType().Name.ToString().ToLower() == "cameravisca") +// { +// var viscaCamera = cameraDevice as PepperDash.Essentials.Devices.Common.Cameras.CameraVisca; +// trilist.SetSigTrueAction(JoinMap.PowerOn, () => viscaCamera.PowerOn()); +// trilist.SetSigTrueAction(JoinMap.PowerOff, () => viscaCamera.PowerOff()); - viscaCamera.PowerIsOnFeedback.LinkInputSig(trilist.BooleanInput[JoinMap.PowerOn]); - viscaCamera.PowerIsOnFeedback.LinkComplementInputSig(trilist.BooleanInput[JoinMap.PowerOff]); +// viscaCamera.PowerIsOnFeedback.LinkInputSig(trilist.BooleanInput[JoinMap.PowerOn]); +// viscaCamera.PowerIsOnFeedback.LinkComplementInputSig(trilist.BooleanInput[JoinMap.PowerOff]); - viscaCamera.CommunicationMonitor.IsOnlineFeedback.LinkInputSig(trilist.BooleanInput[JoinMap.IsOnline]); - for (int i = 0; i < JoinMap.NumberOfPresets; i++) - { - int tempNum = i; - trilist.SetSigTrueAction((ushort)(JoinMap.PresetRecallOffset + tempNum), () => - { - viscaCamera.RecallPreset(tempNum); - }); - trilist.SetSigTrueAction((ushort)(JoinMap.PresetSaveOffset + tempNum), () => - { - viscaCamera.SavePreset(tempNum); - }); - } - } +// viscaCamera.CommunicationMonitor.IsOnlineFeedback.LinkInputSig(trilist.BooleanInput[JoinMap.IsOnline]); +// for (int i = 0; i < JoinMap.NumberOfPresets; i++) +// { +// int tempNum = i; +// trilist.SetSigTrueAction((ushort)(JoinMap.PresetRecallOffset + tempNum), () => +// { +// viscaCamera.RecallPreset(tempNum); +// }); +// trilist.SetSigTrueAction((ushort)(JoinMap.PresetSaveOffset + tempNum), () => +// { +// viscaCamera.SavePreset(tempNum); +// }); +// } +// } - } +// } - } - public class CameraControllerJoinMap : JoinMapBase - { - public uint IsOnline { get; set; } - public uint PowerOff { get; set; } - public uint PowerOn { get; set; } - public uint Up { get; set; } - public uint Down { get; set; } - public uint Left { get; set; } - public uint Right { get; set; } - public uint ZoomIn { get; set; } - public uint ZoomOut { get; set; } - public uint PresetRecallOffset { get; set; } - public uint PresetSaveOffset { get; set; } - public uint NumberOfPresets { get; set; } +// } +// public class CameraControllerJoinMap : JoinMapBase +// { +// public uint IsOnline { get; set; } +// public uint PowerOff { get; set; } +// public uint PowerOn { get; set; } +// public uint Up { get; set; } +// public uint Down { get; set; } +// public uint Left { get; set; } +// public uint Right { get; set; } +// public uint ZoomIn { get; set; } +// public uint ZoomOut { get; set; } +// public uint PresetRecallOffset { get; set; } +// public uint PresetSaveOffset { get; set; } +// public uint NumberOfPresets { get; set; } - public CameraControllerJoinMap() - { - // Digital - IsOnline = 9; - PowerOff = 8; - PowerOn = 7; - Up = 1; - Down = 2; - Left = 3; - Right = 4; - ZoomIn = 5; - ZoomOut = 6; - PresetRecallOffset = 10; - PresetSaveOffset = 30; - NumberOfPresets = 5; - // Analog - } +// public CameraControllerJoinMap() +// { +// // Digital +// IsOnline = 9; +// PowerOff = 8; +// PowerOn = 7; +// Up = 1; +// Down = 2; +// Left = 3; +// Right = 4; +// ZoomIn = 5; +// ZoomOut = 6; +// PresetRecallOffset = 10; +// PresetSaveOffset = 30; +// NumberOfPresets = 5; +// // Analog +// } - public override void OffsetJoinNumbers(uint joinStart) - { - var joinOffset = joinStart - 1; +// public override void OffsetJoinNumbers(uint joinStart) +// { +// var joinOffset = joinStart - 1; - IsOnline = IsOnline + joinOffset; - PowerOff = PowerOff + joinOffset; - PowerOn = PowerOn + joinOffset; - Up = Up + joinOffset; - Down = Down + joinOffset; - Left = Left + joinOffset; - Right = Right + joinOffset; - ZoomIn = ZoomIn + joinOffset; - ZoomOut = ZoomOut + joinOffset; - PresetRecallOffset = PresetRecallOffset + joinOffset; - PresetSaveOffset = PresetSaveOffset + joinOffset; - } - } -} \ No newline at end of file +// IsOnline = IsOnline + joinOffset; +// PowerOff = PowerOff + joinOffset; +// PowerOn = PowerOn + joinOffset; +// Up = Up + joinOffset; +// Down = Down + joinOffset; +// Left = Left + joinOffset; +// Right = Right + joinOffset; +// ZoomIn = ZoomIn + joinOffset; +// ZoomOut = ZoomOut + joinOffset; +// PresetRecallOffset = PresetRecallOffset + joinOffset; +// PresetSaveOffset = PresetSaveOffset + joinOffset; +// } +// } +//} \ No newline at end of file diff --git a/PepperDashEssentials/Bridges/DigitalLoggerBridge.cs b/PepperDashEssentials/Bridges/DigitalLoggerBridge.cs index 1c78b5a0..ef529165 100644 --- a/PepperDashEssentials/Bridges/DigitalLoggerBridge.cs +++ b/PepperDashEssentials/Bridges/DigitalLoggerBridge.cs @@ -1,77 +1,77 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using Crestron.SimplSharp; -using Crestron.SimplSharpPro.DeviceSupport; -using PepperDash.Core; -using PepperDash.Essentials.Core; -using PepperDash.Essentials.Devices.Common; +//using System; +//using System.Collections.Generic; +//using System.Linq; +//using System.Text; +//using Crestron.SimplSharp; +//using Crestron.SimplSharpPro.DeviceSupport; +//using PepperDash.Core; +//using PepperDash.Essentials.Core; +//using PepperDash.Essentials.Devices.Common; -namespace PepperDash.Essentials.Bridges -{ - public static class DigitalLoggerApiExtensions - { - public static void LinkToApi(this DigitalLogger DigitalLogger, BasicTriList trilist, uint joinStart, string joinMapKey) - { - var joinMap = JoinMapHelper.GetJoinMapForDevice(joinMapKey) as DigitalLoggerJoinMap; +//namespace PepperDash.Essentials.Bridges +//{ +// public static class DigitalLoggerApiExtensions +// { +// public static void LinkToApi(this DigitalLogger DigitalLogger, BasicTriList trilist, uint joinStart, string joinMapKey) +// { +// var joinMap = JoinMapHelper.GetJoinMapForDevice(joinMapKey) as DigitalLoggerJoinMap; - if (joinMap == null) - joinMap = new DigitalLoggerJoinMap(); +// if (joinMap == null) +// joinMap = new DigitalLoggerJoinMap(); - joinMap.OffsetJoinNumbers(joinStart); - Debug.Console(1, DigitalLogger, "Linking to Trilist '{0}'", trilist.ID.ToString("X")); - for (uint i = 1; i <= DigitalLogger.CircuitCount; i++) - { - var circuit = i; - DigitalLogger.CircuitNameFeedbacks[circuit - 1].LinkInputSig(trilist.StringInput[joinMap.CircuitNames + circuit]); - DigitalLogger.CircuitIsCritical[circuit - 1].LinkInputSig(trilist.BooleanInput[joinMap.CircuitIsCritical + circuit]); - DigitalLogger.CircuitState[circuit - 1].LinkInputSig(trilist.BooleanInput[joinMap.CircuitState + circuit]); - trilist.SetSigTrueAction(joinMap.CircuitCycle + circuit, () => DigitalLogger.CycleCircuit(circuit - 1)); - trilist.SetSigTrueAction(joinMap.CircuitOnCmd + circuit, () => DigitalLogger.TurnOnCircuit(circuit - 1)); - trilist.SetSigTrueAction(joinMap.CircuitOffCmd + circuit, () => DigitalLogger.TurnOffCircuit(circuit - 1)); +// joinMap.OffsetJoinNumbers(joinStart); +// Debug.Console(1, DigitalLogger, "Linking to Trilist '{0}'", trilist.ID.ToString("X")); +// for (uint i = 1; i <= DigitalLogger.CircuitCount; i++) +// { +// var circuit = i; +// DigitalLogger.CircuitNameFeedbacks[circuit - 1].LinkInputSig(trilist.StringInput[joinMap.CircuitNames + circuit]); +// DigitalLogger.CircuitIsCritical[circuit - 1].LinkInputSig(trilist.BooleanInput[joinMap.CircuitIsCritical + circuit]); +// DigitalLogger.CircuitState[circuit - 1].LinkInputSig(trilist.BooleanInput[joinMap.CircuitState + circuit]); +// trilist.SetSigTrueAction(joinMap.CircuitCycle + circuit, () => DigitalLogger.CycleCircuit(circuit - 1)); +// trilist.SetSigTrueAction(joinMap.CircuitOnCmd + circuit, () => DigitalLogger.TurnOnCircuit(circuit - 1)); +// trilist.SetSigTrueAction(joinMap.CircuitOffCmd + circuit, () => DigitalLogger.TurnOffCircuit(circuit - 1)); - } - } - } - public class DigitalLoggerJoinMap : JoinMapBase - { - public uint IsOnline { get; set; } - public uint CircuitNames { get; set; } - public uint CircuitState { get; set; } - public uint CircuitCycle { get; set; } - public uint CircuitIsCritical { get; set; } - public uint CircuitOnCmd { get; set; } - public uint CircuitOffCmd { get; set; } - public DigitalLoggerJoinMap() - { - // Digital - IsOnline = 9; - CircuitState = 0; - CircuitCycle = 0; - CircuitIsCritical = 10; - CircuitOnCmd = 10; - CircuitOffCmd = 20; - // Serial - CircuitNames = 0; - // Analog - } +// } +// } +// } +// public class DigitalLoggerJoinMap : JoinMapBase +// { +// public uint IsOnline { get; set; } +// public uint CircuitNames { get; set; } +// public uint CircuitState { get; set; } +// public uint CircuitCycle { get; set; } +// public uint CircuitIsCritical { get; set; } +// public uint CircuitOnCmd { get; set; } +// public uint CircuitOffCmd { get; set; } +// public DigitalLoggerJoinMap() +// { +// // Digital +// IsOnline = 9; +// CircuitState = 0; +// CircuitCycle = 0; +// CircuitIsCritical = 10; +// CircuitOnCmd = 10; +// CircuitOffCmd = 20; +// // Serial +// CircuitNames = 0; +// // Analog +// } - public override void OffsetJoinNumbers(uint joinStart) - { - var joinOffset = joinStart - 1; +// public override void OffsetJoinNumbers(uint joinStart) +// { +// var joinOffset = joinStart - 1; - IsOnline = IsOnline + joinOffset; - CircuitNames = CircuitNames + joinOffset; - CircuitState = CircuitState + joinOffset; - CircuitCycle = CircuitCycle + joinOffset; - CircuitIsCritical = CircuitIsCritical + joinOffset; - CircuitOnCmd = CircuitOnCmd + joinOffset; - CircuitOffCmd = CircuitOffCmd + joinOffset; +// IsOnline = IsOnline + joinOffset; +// CircuitNames = CircuitNames + joinOffset; +// CircuitState = CircuitState + joinOffset; +// CircuitCycle = CircuitCycle + joinOffset; +// CircuitIsCritical = CircuitIsCritical + joinOffset; +// CircuitOnCmd = CircuitOnCmd + joinOffset; +// CircuitOffCmd = CircuitOffCmd + joinOffset; - } - } +// } +// } -} \ No newline at end of file +//} \ No newline at end of file diff --git a/PepperDashEssentials/Bridges/DisplayControllerBridge.cs b/PepperDashEssentials/Bridges/DisplayControllerBridge.cs index 8c266589..da91ee87 100644 --- a/PepperDashEssentials/Bridges/DisplayControllerBridge.cs +++ b/PepperDashEssentials/Bridges/DisplayControllerBridge.cs @@ -1,171 +1,171 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using Crestron.SimplSharp; -using Crestron.SimplSharpPro.DeviceSupport; -using PepperDash.Core; -using PepperDash.Essentials.Core; -using PepperDash.Essentials.Devices.Common; +//using System; +//using System.Collections.Generic; +//using System.Linq; +//using System.Text; +//using Crestron.SimplSharp; +//using Crestron.SimplSharpPro.DeviceSupport; +//using PepperDash.Core; +//using PepperDash.Essentials.Core; +//using PepperDash.Essentials.Devices.Common; -namespace PepperDash.Essentials.Bridges -{ - public static class DisplayControllerApiExtensions - { +//namespace PepperDash.Essentials.Bridges +//{ +// public static class DisplayControllerApiExtensions +// { - public static BasicTriList _TriList; - public static DisplayControllerJoinMap JoinMap; - public static int InputNumber; - public static IntFeedback InputNumberFeedback; - public static List InputKeys = new List(); - public static void LinkToApi(this PepperDash.Essentials.Core.TwoWayDisplayBase displayDevice, BasicTriList trilist, uint joinStart, string joinMapKey) - { - JoinMap = JoinMapHelper.GetJoinMapForDevice(joinMapKey) as DisplayControllerJoinMap; - _TriList = trilist; +// public static BasicTriList _TriList; +// public static DisplayControllerJoinMap JoinMap; +// public static int InputNumber; +// public static IntFeedback InputNumberFeedback; +// public static List InputKeys = new List(); +// public static void LinkToApi(this PepperDash.Essentials.Core.TwoWayDisplayBase displayDevice, BasicTriList trilist, uint joinStart, string joinMapKey) +// { +// JoinMap = JoinMapHelper.GetJoinMapForDevice(joinMapKey) as DisplayControllerJoinMap; +// _TriList = trilist; - if (JoinMap == null) - { - JoinMap = new DisplayControllerJoinMap(); - } +// if (JoinMap == null) +// { +// JoinMap = new DisplayControllerJoinMap(); +// } - JoinMap.OffsetJoinNumbers(joinStart); - Debug.Console(1, "Linking to Trilist '{0}'", trilist.ID.ToString("X")); - Debug.Console(0, "Linking to Bridge Type {0}", displayDevice.GetType().Name.ToString()); +// JoinMap.OffsetJoinNumbers(joinStart); +// Debug.Console(1, "Linking to Trilist '{0}'", trilist.ID.ToString("X")); +// Debug.Console(0, "Linking to Bridge Type {0}", displayDevice.GetType().Name.ToString()); - trilist.StringInput[JoinMap.Name].StringValue = displayDevice.GetType().Name.ToString(); +// trilist.StringInput[JoinMap.Name].StringValue = displayDevice.GetType().Name.ToString(); - InputNumberFeedback = new IntFeedback(() => { return InputNumber;}); - InputNumberFeedback.LinkInputSig(trilist.UShortInput[JoinMap.InputSelect]); - var commMonitor = displayDevice as ICommunicationMonitor; - commMonitor.CommunicationMonitor.IsOnlineFeedback.LinkInputSig(trilist.BooleanInput[JoinMap.IsOnline]); +// InputNumberFeedback = new IntFeedback(() => { return InputNumber;}); +// InputNumberFeedback.LinkInputSig(trilist.UShortInput[JoinMap.InputSelect]); +// var commMonitor = displayDevice as ICommunicationMonitor; +// commMonitor.CommunicationMonitor.IsOnlineFeedback.LinkInputSig(trilist.BooleanInput[JoinMap.IsOnline]); - // Poewer Off - trilist.SetSigTrueAction(JoinMap.PowerOff, () => - { - InputNumber = 102; - InputNumberFeedback.FireUpdate(); - displayDevice.PowerOff(); - }); +// // Poewer Off +// trilist.SetSigTrueAction(JoinMap.PowerOff, () => +// { +// InputNumber = 102; +// InputNumberFeedback.FireUpdate(); +// displayDevice.PowerOff(); +// }); - displayDevice.PowerIsOnFeedback.OutputChange += new EventHandler(PowerIsOnFeedback_OutputChange); - displayDevice.PowerIsOnFeedback.LinkComplementInputSig(trilist.BooleanInput[JoinMap.PowerOff]); +// displayDevice.PowerIsOnFeedback.OutputChange += new EventHandler(PowerIsOnFeedback_OutputChange); +// displayDevice.PowerIsOnFeedback.LinkComplementInputSig(trilist.BooleanInput[JoinMap.PowerOff]); - // Poewer On - trilist.SetSigTrueAction(JoinMap.PowerOn, () => - { - InputNumber = 0; - InputNumberFeedback.FireUpdate(); - displayDevice.PowerOn(); - }); +// // Poewer On +// trilist.SetSigTrueAction(JoinMap.PowerOn, () => +// { +// InputNumber = 0; +// InputNumberFeedback.FireUpdate(); +// displayDevice.PowerOn(); +// }); - displayDevice.PowerIsOnFeedback.LinkInputSig(trilist.BooleanInput[JoinMap.PowerOn]); +// displayDevice.PowerIsOnFeedback.LinkInputSig(trilist.BooleanInput[JoinMap.PowerOn]); - int count = 1; - foreach (var input in displayDevice.InputPorts) - { - InputKeys.Add(input.Key.ToString()); - var tempKey = InputKeys.ElementAt(count - 1); - trilist.SetSigTrueAction((ushort)(JoinMap.InputSelectOffset + count), () => { displayDevice.ExecuteSwitch(displayDevice.InputPorts[tempKey].Selector); }); - trilist.StringInput[(ushort)(JoinMap.InputNamesOffset + count)].StringValue = input.Key.ToString(); - count++; - } +// int count = 1; +// foreach (var input in displayDevice.InputPorts) +// { +// InputKeys.Add(input.Key.ToString()); +// var tempKey = InputKeys.ElementAt(count - 1); +// trilist.SetSigTrueAction((ushort)(JoinMap.InputSelectOffset + count), () => { displayDevice.ExecuteSwitch(displayDevice.InputPorts[tempKey].Selector); }); +// trilist.StringInput[(ushort)(JoinMap.InputNamesOffset + count)].StringValue = input.Key.ToString(); +// count++; +// } - displayDevice.CurrentInputFeedback.OutputChange += new EventHandler(CurrentInputFeedback_OutputChange); - trilist.SetUShortSigAction(JoinMap.InputSelect, (a) => - { - if (a == 0) - { - displayDevice.PowerOff(); - InputNumber = 0; - } - else if (a > 0 && a < displayDevice.InputPorts.Count && a != InputNumber) - { - displayDevice.ExecuteSwitch(displayDevice.InputPorts.ElementAt(a - 1).Selector); - InputNumber = a; - } - else if (a == 102) - { - displayDevice.PowerToggle(); +// displayDevice.CurrentInputFeedback.OutputChange += new EventHandler(CurrentInputFeedback_OutputChange); +// trilist.SetUShortSigAction(JoinMap.InputSelect, (a) => +// { +// if (a == 0) +// { +// displayDevice.PowerOff(); +// InputNumber = 0; +// } +// else if (a > 0 && a < displayDevice.InputPorts.Count && a != InputNumber) +// { +// displayDevice.ExecuteSwitch(displayDevice.InputPorts.ElementAt(a - 1).Selector); +// InputNumber = a; +// } +// else if (a == 102) +// { +// displayDevice.PowerToggle(); - } - InputNumberFeedback.FireUpdate(); - }); +// } +// InputNumberFeedback.FireUpdate(); +// }); - } +// } - static void CurrentInputFeedback_OutputChange(object sender, FeedbackEventArgs e) - { +// static void CurrentInputFeedback_OutputChange(object sender, FeedbackEventArgs e) +// { - Debug.Console(0, "CurrentInputFeedback_OutputChange {0}", e.StringValue); +// Debug.Console(0, "CurrentInputFeedback_OutputChange {0}", e.StringValue); - } +// } - static void PowerIsOnFeedback_OutputChange(object sender, FeedbackEventArgs e) - { +// static void PowerIsOnFeedback_OutputChange(object sender, FeedbackEventArgs e) +// { - // Debug.Console(0, "PowerIsOnFeedback_OutputChange {0}", e.BoolValue); - if (!e.BoolValue) - { - InputNumber = 102; - InputNumberFeedback.FireUpdate(); +// // Debug.Console(0, "PowerIsOnFeedback_OutputChange {0}", e.BoolValue); +// if (!e.BoolValue) +// { +// InputNumber = 102; +// InputNumberFeedback.FireUpdate(); - } - else - { - InputNumber = 0; - InputNumberFeedback.FireUpdate(); - } - } +// } +// else +// { +// InputNumber = 0; +// InputNumberFeedback.FireUpdate(); +// } +// } - } - public class DisplayControllerJoinMap : JoinMapBase - { - public uint Name { get; set; } - public uint InputNamesOffset { get; set; } - public uint InputSelectOffset { get; set; } - public uint IsOnline { get; set; } - public uint PowerOff { get; set; } - public uint InputSelect { get; set; } - public uint PowerOn { get; set; } - public uint SelectScene { get; set; } - public uint LightingSceneOffset { get; set; } - public uint ButtonVisibilityOffset { get; set; } - public uint IntegrationIdSet { get; set; } +// } +// public class DisplayControllerJoinMap : JoinMapBase +// { +// public uint Name { get; set; } +// public uint InputNamesOffset { get; set; } +// public uint InputSelectOffset { get; set; } +// public uint IsOnline { get; set; } +// public uint PowerOff { get; set; } +// public uint InputSelect { get; set; } +// public uint PowerOn { get; set; } +// public uint SelectScene { get; set; } +// public uint LightingSceneOffset { get; set; } +// public uint ButtonVisibilityOffset { get; set; } +// public uint IntegrationIdSet { get; set; } - public DisplayControllerJoinMap() - { - // Digital - IsOnline = 50; - PowerOff = 1; - PowerOn = 2; - InputSelect = 4; - IntegrationIdSet = 1; - LightingSceneOffset = 10; - ButtonVisibilityOffset = 40; - Name = 1; - InputNamesOffset = 10; - InputSelectOffset = 4; - // Analog - } +// public DisplayControllerJoinMap() +// { +// // Digital +// IsOnline = 50; +// PowerOff = 1; +// PowerOn = 2; +// InputSelect = 4; +// IntegrationIdSet = 1; +// LightingSceneOffset = 10; +// ButtonVisibilityOffset = 40; +// Name = 1; +// InputNamesOffset = 10; +// InputSelectOffset = 4; +// // Analog +// } - public override void OffsetJoinNumbers(uint joinStart) - { - var joinOffset = joinStart - 1; +// public override void OffsetJoinNumbers(uint joinStart) +// { +// var joinOffset = joinStart - 1; - IsOnline = IsOnline + joinOffset; - PowerOff = PowerOff + joinOffset; - PowerOn = PowerOn + joinOffset; - SelectScene = SelectScene + joinOffset; - LightingSceneOffset = LightingSceneOffset + joinOffset; - ButtonVisibilityOffset = ButtonVisibilityOffset + joinOffset; - Name = Name + joinOffset; - InputNamesOffset = InputNamesOffset + joinOffset; - InputSelectOffset = InputSelectOffset + joinOffset; +// IsOnline = IsOnline + joinOffset; +// PowerOff = PowerOff + joinOffset; +// PowerOn = PowerOn + joinOffset; +// SelectScene = SelectScene + joinOffset; +// LightingSceneOffset = LightingSceneOffset + joinOffset; +// ButtonVisibilityOffset = ButtonVisibilityOffset + joinOffset; +// Name = Name + joinOffset; +// InputNamesOffset = InputNamesOffset + joinOffset; +// InputSelectOffset = InputSelectOffset + joinOffset; - } - } -} \ No newline at end of file +// } +// } +//} \ No newline at end of file diff --git a/PepperDashEssentials/Bridges/GenericLightingBridge.cs b/PepperDashEssentials/Bridges/GenericLightingBridge.cs index c93a14fd..be7d88b3 100644 --- a/PepperDashEssentials/Bridges/GenericLightingBridge.cs +++ b/PepperDashEssentials/Bridges/GenericLightingBridge.cs @@ -1,103 +1,103 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using Crestron.SimplSharp; -using Crestron.SimplSharpPro.DeviceSupport; -using PepperDash.Core; -using PepperDash.Essentials.Core; -using PepperDash.Essentials.Devices.Common; +//using System; +//using System.Collections.Generic; +//using System.Linq; +//using System.Text; +//using Crestron.SimplSharp; +//using Crestron.SimplSharpPro.DeviceSupport; +//using PepperDash.Core; +//using PepperDash.Essentials.Core; +//using PepperDash.Essentials.Devices.Common; -namespace PepperDash.Essentials.Bridges -{ - public static class GenericLightingApiExtensions - { - public static void LinkToApi(this PepperDash.Essentials.Core.Lighting.LightingBase lightingDevice, BasicTriList trilist, uint joinStart, string joinMapKey) - { - var joinMap = JoinMapHelper.GetJoinMapForDevice(joinMapKey) as GenericLightingJoinMap; +//namespace PepperDash.Essentials.Bridges +//{ +// public static class GenericLightingApiExtensions +// { +// public static void LinkToApi(this PepperDash.Essentials.Core.Lighting.LightingBase lightingDevice, BasicTriList trilist, uint joinStart, string joinMapKey) +// { +// var joinMap = JoinMapHelper.GetJoinMapForDevice(joinMapKey) as GenericLightingJoinMap; - if (joinMap == null) - joinMap = new GenericLightingJoinMap(); +// if (joinMap == null) +// joinMap = new GenericLightingJoinMap(); - joinMap.OffsetJoinNumbers(joinStart); - Debug.Console(1, "Linking to Trilist '{0}'", trilist.ID.ToString("X")); +// joinMap.OffsetJoinNumbers(joinStart); +// Debug.Console(1, "Linking to Trilist '{0}'", trilist.ID.ToString("X")); - Debug.Console(0, "Linking to lighting Type {0}", lightingDevice.GetType().Name.ToString()); +// Debug.Console(0, "Linking to lighting Type {0}", lightingDevice.GetType().Name.ToString()); - // GenericLighitng Actions & FeedBack - trilist.SetUShortSigAction(joinMap.SelectScene, u => lightingDevice.SelectScene(lightingDevice.LightingScenes[u])); +// // GenericLighitng Actions & FeedBack +// trilist.SetUShortSigAction(joinMap.SelectScene, u => lightingDevice.SelectScene(lightingDevice.LightingScenes[u])); - int sceneIndex = 1; - foreach (var scene in lightingDevice.LightingScenes) - { - var tempIndex = sceneIndex - 1; - trilist.SetSigTrueAction((uint)(joinMap.LightingSceneOffset + sceneIndex), () => lightingDevice.SelectScene(lightingDevice.LightingScenes[tempIndex])); - scene.IsActiveFeedback.LinkInputSig(trilist.BooleanInput[(uint)(joinMap.LightingSceneOffset + sceneIndex)]); - trilist.StringInput[(uint)(joinMap.LightingSceneOffset + sceneIndex)].StringValue = scene.Name; - trilist.BooleanInput[(uint)(joinMap.ButtonVisibilityOffset + sceneIndex)].BoolValue = true; - sceneIndex++; - } +// int sceneIndex = 1; +// foreach (var scene in lightingDevice.LightingScenes) +// { +// var tempIndex = sceneIndex - 1; +// trilist.SetSigTrueAction((uint)(joinMap.LightingSceneOffset + sceneIndex), () => lightingDevice.SelectScene(lightingDevice.LightingScenes[tempIndex])); +// scene.IsActiveFeedback.LinkInputSig(trilist.BooleanInput[(uint)(joinMap.LightingSceneOffset + sceneIndex)]); +// trilist.StringInput[(uint)(joinMap.LightingSceneOffset + sceneIndex)].StringValue = scene.Name; +// trilist.BooleanInput[(uint)(joinMap.ButtonVisibilityOffset + sceneIndex)].BoolValue = true; +// sceneIndex++; +// } - if (lightingDevice.GetType().Name.ToString() == "LutronQuantumArea") - { - var lutronDevice = lightingDevice as PepperDash.Essentials.Devices.Common.Environment.Lutron.LutronQuantumArea; - lutronDevice.CommunicationMonitor.IsOnlineFeedback.LinkInputSig(trilist.BooleanInput[joinMap.IsOnline]); - trilist.SetStringSigAction(joinMap.IntegrationIdSet, s => lutronDevice.IntegrationId = s); - } +// if (lightingDevice.GetType().Name.ToString() == "LutronQuantumArea") +// { +// var lutronDevice = lightingDevice as PepperDash.Essentials.Devices.Common.Environment.Lutron.LutronQuantumArea; +// lutronDevice.CommunicationMonitor.IsOnlineFeedback.LinkInputSig(trilist.BooleanInput[joinMap.IsOnline]); +// trilist.SetStringSigAction(joinMap.IntegrationIdSet, s => lutronDevice.IntegrationId = s); +// } - //ApiEisc.Eisc.SetStringSigAction(ApiMap.integrationID, (s) => { lutronLights.IntegrationId = s; }); +// //ApiEisc.Eisc.SetStringSigAction(ApiMap.integrationID, (s) => { lutronLights.IntegrationId = s; }); - /* - var lutronLights = lightingDevice as PepperDash.Essentials.Devices.Common.Environment.Lutron.LutronQuantumArea; +// /* +// var lutronLights = lightingDevice as PepperDash.Essentials.Devices.Common.Environment.Lutron.LutronQuantumArea; - for (uint i = 1; i <= lightingBase.CircuitCount; i++) - { - var circuit = i; - lightingBase.CircuitNameFeedbacks[circuit - 1].LinkInputSig(trilist.StringInput[joinMap.CircuitNames + circuit]); - lightingBase.CircuitIsCritical[circuit - 1].LinkInputSig(trilist.BooleanInput[joinMap.CircuitIsCritical + circuit]); - lightingBase.CircuitState[circuit - 1].LinkInputSig(trilist.BooleanInput[joinMap.CircuitState + circuit]); - trilist.SetSigTrueAction(joinMap.CircuitCycle + circuit, () => lightingBase.CycleCircuit(circuit - 1)); - trilist.SetSigTrueAction(joinMap.CircuitOnCmd + circuit, () => lightingBase.TurnOnCircuit(circuit - 1)); - trilist.SetSigTrueAction(joinMap.CircuitOffCmd + circuit, () => lightingBase.TurnOffCircuit(circuit - 1)); +// for (uint i = 1; i <= lightingBase.CircuitCount; i++) +// { +// var circuit = i; +// lightingBase.CircuitNameFeedbacks[circuit - 1].LinkInputSig(trilist.StringInput[joinMap.CircuitNames + circuit]); +// lightingBase.CircuitIsCritical[circuit - 1].LinkInputSig(trilist.BooleanInput[joinMap.CircuitIsCritical + circuit]); +// lightingBase.CircuitState[circuit - 1].LinkInputSig(trilist.BooleanInput[joinMap.CircuitState + circuit]); +// trilist.SetSigTrueAction(joinMap.CircuitCycle + circuit, () => lightingBase.CycleCircuit(circuit - 1)); +// trilist.SetSigTrueAction(joinMap.CircuitOnCmd + circuit, () => lightingBase.TurnOnCircuit(circuit - 1)); +// trilist.SetSigTrueAction(joinMap.CircuitOffCmd + circuit, () => lightingBase.TurnOffCircuit(circuit - 1)); - } - */ - } - } - public class GenericLightingJoinMap : JoinMapBase - { - public uint IsOnline { get; set; } - public uint SelectScene { get; set; } - public uint LightingSceneOffset { get; set; } - public uint ButtonVisibilityOffset { get; set; } - public uint IntegrationIdSet { get; set; } +// } +// */ +// } +// } +// public class GenericLightingJoinMap : JoinMapBase +// { +// public uint IsOnline { get; set; } +// public uint SelectScene { get; set; } +// public uint LightingSceneOffset { get; set; } +// public uint ButtonVisibilityOffset { get; set; } +// public uint IntegrationIdSet { get; set; } - public GenericLightingJoinMap() - { - // Digital - IsOnline = 1; - SelectScene = 1; - IntegrationIdSet = 1; - LightingSceneOffset = 10; - ButtonVisibilityOffset = 40; - // Analog - } +// public GenericLightingJoinMap() +// { +// // Digital +// IsOnline = 1; +// SelectScene = 1; +// IntegrationIdSet = 1; +// LightingSceneOffset = 10; +// ButtonVisibilityOffset = 40; +// // Analog +// } - public override void OffsetJoinNumbers(uint joinStart) - { - var joinOffset = joinStart - 1; +// public override void OffsetJoinNumbers(uint joinStart) +// { +// var joinOffset = joinStart - 1; - IsOnline = IsOnline + joinOffset; - SelectScene = SelectScene + joinOffset; - LightingSceneOffset = LightingSceneOffset + joinOffset; - ButtonVisibilityOffset = ButtonVisibilityOffset + joinOffset; +// IsOnline = IsOnline + joinOffset; +// SelectScene = SelectScene + joinOffset; +// LightingSceneOffset = LightingSceneOffset + joinOffset; +// ButtonVisibilityOffset = ButtonVisibilityOffset + joinOffset; - } - } -} \ No newline at end of file +// } +// } +//} \ No newline at end of file diff --git a/PepperDashEssentials/ControlSystem.cs b/PepperDashEssentials/ControlSystem.cs index bd33a276..d943c6a0 100644 --- a/PepperDashEssentials/ControlSystem.cs +++ b/PepperDashEssentials/ControlSystem.cs @@ -245,9 +245,8 @@ namespace PepperDash.Essentials /// public void LoadDevices() { -# warning Missing PepperDash.Essentials.Core.Devices.CrestronProcessor("processor")); // Build the processor wrapper class - // DeviceManager.AddDevice(new PepperDash.Essentials.Core.Devices.CrestronProcessor("processor")); + DeviceManager.AddDevice(new PepperDash.Essentials.Core.Devices.CrestronProcessor("processor")); // Add global System Monitor device DeviceManager.AddDevice(new PepperDash.Essentials.Core.Monitoring.SystemMonitorController("systemMonitor")); diff --git a/PepperDashEssentials/PepperDashEssentials.csproj b/PepperDashEssentials/PepperDashEssentials.csproj index ac74c6c0..10fad395 100644 --- a/PepperDashEssentials/PepperDashEssentials.csproj +++ b/PepperDashEssentials/PepperDashEssentials.csproj @@ -108,8 +108,9 @@ - + + diff --git a/essentials-framework b/essentials-framework index 4cfd0abf..f375395b 160000 --- a/essentials-framework +++ b/essentials-framework @@ -1 +1 @@ -Subproject commit 4cfd0abff1e43577366ad9546eed1600c5303a68 +Subproject commit f375395be26f08348f30472ce9767b1c8a3296aa