From 47d1eb9105230d857917164396635411ff8c7628 Mon Sep 17 00:00:00 2001 From: Andrew Welker Date: Wed, 8 Apr 2020 11:25:17 -0600 Subject: [PATCH] Adds IMobileControl interface adds CreateMobileControlRoomBridge Method --- PepperDashEssentials/ControlSystem.cs | 16 +++++++++++++++- .../DeviceTypeInterfaces/IMobileControl.cs | 10 ++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 essentials-framework/Essentials Core/PepperDashEssentialsBase/DeviceTypeInterfaces/IMobileControl.cs diff --git a/PepperDashEssentials/ControlSystem.cs b/PepperDashEssentials/ControlSystem.cs index 2e3c1093..02a8c079 100644 --- a/PepperDashEssentials/ControlSystem.cs +++ b/PepperDashEssentials/ControlSystem.cs @@ -18,6 +18,7 @@ using PepperDash.Essentials.Room.Config; //using PepperDash.Essentials.Room.MobileControl; using Newtonsoft.Json; +using PepperDash_Essentials_Core.DeviceTypeInterfaces; namespace PepperDash.Essentials { @@ -455,7 +456,7 @@ namespace PepperDash.Essentials //AddBridgePostActivationHelper(bridge); // Lets things happen later when all devices are present //DeviceManager.AddDevice(bridge); - Debug.Console(0, Debug.ErrorLogLevel.Notice, "Mobile Control Bridge Added..."); + CreateMobileControlBridge(room); } else if (room is EssentialsHuddleVtc1Room) { @@ -469,6 +470,8 @@ namespace PepperDash.Essentials //var bridge = new MobileConrolEssentialsHuddleSpaceRoomBridge(room); //AddBridgePostActivationHelper(bridge); // Lets things happen later when all devices are present //DeviceManager.AddDevice(bridge); + + CreateMobileControlBridge(room); } else { @@ -485,6 +488,17 @@ namespace PepperDash.Essentials } + private static void CreateMobileControlBridge(EssentialsRoomBase room) + { + var mobileControl = DeviceManager.GetDeviceForKey("appServer") as IMobileControl; + + if (mobileControl == null) return; + + mobileControl.CreateMobileControlRoomBridge(room); + + Debug.Console(0, Debug.ErrorLogLevel.Notice, "Mobile Control Bridge Added..."); + } + /// /// Helps add the post activation steps that link bridges to main controller /// diff --git a/essentials-framework/Essentials Core/PepperDashEssentialsBase/DeviceTypeInterfaces/IMobileControl.cs b/essentials-framework/Essentials Core/PepperDashEssentialsBase/DeviceTypeInterfaces/IMobileControl.cs new file mode 100644 index 00000000..4e1a34c5 --- /dev/null +++ b/essentials-framework/Essentials Core/PepperDashEssentialsBase/DeviceTypeInterfaces/IMobileControl.cs @@ -0,0 +1,10 @@ +using PepperDash.Core; +using PepperDash.Essentials.Core; + +namespace PepperDash_Essentials_Core.DeviceTypeInterfaces +{ + public interface IMobileControl:IKeyed + { + void CreateMobileControlRoomBridge(EssentialsRoomBase room); + } +} \ No newline at end of file