mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-15 20:54:55 +00:00
Removed all references to "Cotija" and replaced with "MobileControl". Progress on multi display routing in room logic and Mobile Control bridging.
This commit is contained in:
@@ -6,11 +6,11 @@ using Crestron.SimplSharp;
|
|||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Cotija
|
namespace PepperDash.Essentials.Room.MobileControl
|
||||||
{
|
{
|
||||||
public static class IChannelExtensions
|
public static class IChannelExtensions
|
||||||
{
|
{
|
||||||
public static void LinkActions(this IChannel dev, CotijaSystemController controller)
|
public static void LinkActions(this IChannel dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
@@ -22,7 +22,7 @@ namespace PepperDash.Essentials.Room.Cotija
|
|||||||
controller.AddAction(prefix + "exit", new PressAndHoldAction(dev.Exit));
|
controller.AddAction(prefix + "exit", new PressAndHoldAction(dev.Exit));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void UnlinkActions(this IChannel dev, CotijaSystemController controller)
|
public static void UnlinkActions(this IChannel dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
|
|||||||
@@ -6,11 +6,11 @@ using Crestron.SimplSharp;
|
|||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Cotija
|
namespace PepperDash.Essentials.Room.MobileControl
|
||||||
{
|
{
|
||||||
public static class IColorExtensions
|
public static class IColorExtensions
|
||||||
{
|
{
|
||||||
public static void LinkActions(this IColor dev, CotijaSystemController controller)
|
public static void LinkActions(this IColor dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
@@ -20,7 +20,7 @@ namespace PepperDash.Essentials.Room.Cotija
|
|||||||
controller.AddAction(prefix + "blue", new PressAndHoldAction(dev.Blue));
|
controller.AddAction(prefix + "blue", new PressAndHoldAction(dev.Blue));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void UnlinkActions(this IColor dev, CotijaSystemController controller)
|
public static void UnlinkActions(this IColor dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
|
|||||||
@@ -6,11 +6,11 @@ using Crestron.SimplSharp;
|
|||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Cotija
|
namespace PepperDash.Essentials.Room.MobileControl
|
||||||
{
|
{
|
||||||
public static class IDPadExtensions
|
public static class IDPadExtensions
|
||||||
{
|
{
|
||||||
public static void LinkActions(this IDPad dev, CotijaSystemController controller)
|
public static void LinkActions(this IDPad dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
@@ -23,7 +23,7 @@ namespace PepperDash.Essentials.Room.Cotija
|
|||||||
controller.AddAction(prefix + "exit", new PressAndHoldAction(dev.Exit));
|
controller.AddAction(prefix + "exit", new PressAndHoldAction(dev.Exit));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void UnlinkActions(this IDPad dev, CotijaSystemController controller)
|
public static void UnlinkActions(this IDPad dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
|
|||||||
@@ -6,11 +6,11 @@ using Crestron.SimplSharp;
|
|||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Cotija
|
namespace PepperDash.Essentials.Room.MobileControl
|
||||||
{
|
{
|
||||||
public static class IDvrExtensions
|
public static class IDvrExtensions
|
||||||
{
|
{
|
||||||
public static void LinkActions(this IDvr dev, CotijaSystemController controller)
|
public static void LinkActions(this IDvr dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
@@ -18,7 +18,7 @@ namespace PepperDash.Essentials.Room.Cotija
|
|||||||
controller.AddAction(prefix + "record", new PressAndHoldAction(dev.Record));
|
controller.AddAction(prefix + "record", new PressAndHoldAction(dev.Record));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void UnlinkActions(this IDvr dev, CotijaSystemController controller)
|
public static void UnlinkActions(this IDvr dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
|
|||||||
@@ -6,11 +6,11 @@ using Crestron.SimplSharp;
|
|||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Cotija
|
namespace PepperDash.Essentials.Room.MobileControl
|
||||||
{
|
{
|
||||||
public static class INumericExtensions
|
public static class INumericExtensions
|
||||||
{
|
{
|
||||||
public static void LinkActions(this INumericKeypad dev, CotijaSystemController controller)
|
public static void LinkActions(this INumericKeypad dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
@@ -29,7 +29,7 @@ namespace PepperDash.Essentials.Room.Cotija
|
|||||||
// Deal with the Accessory functions on the numpad later
|
// Deal with the Accessory functions on the numpad later
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void UnlinkActions(this INumericKeypad dev, CotijaSystemController controller)
|
public static void UnlinkActions(this INumericKeypad dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
|
|||||||
@@ -6,11 +6,11 @@ using Crestron.SimplSharp;
|
|||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Cotija
|
namespace PepperDash.Essentials.Room.MobileControl
|
||||||
{
|
{
|
||||||
public static class IPowerExtensions
|
public static class IPowerExtensions
|
||||||
{
|
{
|
||||||
public static void LinkActions(this IPower dev, CotijaSystemController controller)
|
public static void LinkActions(this IPower dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
@@ -19,7 +19,7 @@ namespace PepperDash.Essentials.Room.Cotija
|
|||||||
controller.AddAction(prefix + "powerToggle", new Action(dev.PowerToggle));
|
controller.AddAction(prefix + "powerToggle", new Action(dev.PowerToggle));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void UnlinkActions(this IPower dev, CotijaSystemController controller)
|
public static void UnlinkActions(this IPower dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
|
|||||||
@@ -6,11 +6,11 @@ using Crestron.SimplSharp;
|
|||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Cotija
|
namespace PepperDash.Essentials.Room.MobileControl
|
||||||
{
|
{
|
||||||
public static class ISetTopBoxControlsExtensions
|
public static class ISetTopBoxControlsExtensions
|
||||||
{
|
{
|
||||||
public static void LinkActions(this ISetTopBoxControls dev, CotijaSystemController controller)
|
public static void LinkActions(this ISetTopBoxControls dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
@@ -18,7 +18,7 @@ namespace PepperDash.Essentials.Room.Cotija
|
|||||||
controller.AddAction(prefix + "replay", new PressAndHoldAction(dev.Replay));
|
controller.AddAction(prefix + "replay", new PressAndHoldAction(dev.Replay));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void UnlinkActions(this ISetTopBoxControls dev, CotijaSystemController controller)
|
public static void UnlinkActions(this ISetTopBoxControls dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
|
|||||||
@@ -6,11 +6,11 @@ using Crestron.SimplSharp;
|
|||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Cotija
|
namespace PepperDash.Essentials.Room.MobileControl
|
||||||
{
|
{
|
||||||
public static class ITransportExtensions
|
public static class ITransportExtensions
|
||||||
{
|
{
|
||||||
public static void LinkActions(this ITransport dev, CotijaSystemController controller)
|
public static void LinkActions(this ITransport dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
@@ -24,7 +24,7 @@ namespace PepperDash.Essentials.Room.Cotija
|
|||||||
controller.AddAction(prefix + "record", new PressAndHoldAction(dev.Record));
|
controller.AddAction(prefix + "record", new PressAndHoldAction(dev.Record));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void UnlinkActions(this ITransport dev, CotijaSystemController controller)
|
public static void UnlinkActions(this ITransport dev, MobileControlSystemController controller)
|
||||||
{
|
{
|
||||||
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
var prefix = string.Format(@"/device/{0}/", (dev as IKeyed).Key);
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ using Crestron.SimplSharp;
|
|||||||
|
|
||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Cotija
|
namespace PepperDash.Essentials.Room.MobileControl
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a room whose configuration is derived from runtime data,
|
/// Represents a room whose configuration is derived from runtime data,
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void CustomRegisterWithAppServer(CotijaSystemController appServerController)
|
protected override void CustomRegisterWithAppServer(MobileControlSystemController appServerController)
|
||||||
{
|
{
|
||||||
appServerController.AddAction(MessagePath + "/fullStatus", new Action(SendAtcFullMessageObject));
|
appServerController.AddAction(MessagePath + "/fullStatus", new Action(SendAtcFullMessageObject));
|
||||||
appServerController.AddAction(MessagePath + "/dial", new Action<string>(s => Codec.Dial(s)));
|
appServerController.AddAction(MessagePath + "/dial", new Action<string>(s => Codec.Dial(s)));
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
PostUpdateStatus(e.UpdateStatus.ToString());
|
PostUpdateStatus(e.UpdateStatus.ToString());
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void CustomRegisterWithAppServer(CotijaSystemController appServerController)
|
protected override void CustomRegisterWithAppServer(MobileControlSystemController appServerController)
|
||||||
{
|
{
|
||||||
appServerController.AddAction(MessagePath + "/updateConfig", new Action<string>(s => GetConfigFile(s)));
|
appServerController.AddAction(MessagePath + "/updateConfig", new Action<string>(s => GetConfigFile(s)));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -127,7 +127,7 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="appServerController"></param>
|
/// <param name="appServerController"></param>
|
||||||
protected override void CustomRegisterWithAppServer(CotijaSystemController appServerController)
|
protected override void CustomRegisterWithAppServer(MobileControlSystemController appServerController)
|
||||||
{
|
{
|
||||||
//EISC.SetStringSigAction(SCurrentDialString, s => PostStatusMessage(new { currentDialString = s }));
|
//EISC.SetStringSigAction(SCurrentDialString, s => PostStatusMessage(new { currentDialString = s }));
|
||||||
|
|
||||||
|
|||||||
@@ -253,7 +253,7 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="appServerController"></param>
|
/// <param name="appServerController"></param>
|
||||||
protected override void CustomRegisterWithAppServer(CotijaSystemController appServerController)
|
protected override void CustomRegisterWithAppServer(MobileControlSystemController appServerController)
|
||||||
{
|
{
|
||||||
var asc = appServerController;
|
var asc = appServerController;
|
||||||
EISC.SetStringSigAction(SHookState, s =>
|
EISC.SetStringSigAction(SHookState, s =>
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public CotijaSystemController AppServerController { get; private set; }
|
public MobileControlSystemController AppServerController { get; private set; }
|
||||||
|
|
||||||
public string MessagePath { get; private set; }
|
public string MessagePath { get; private set; }
|
||||||
|
|
||||||
@@ -47,7 +47,7 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
/// Registers this messenger with appserver controller
|
/// Registers this messenger with appserver controller
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="appServerController"></param>
|
/// <param name="appServerController"></param>
|
||||||
public void RegisterWithAppServer(CotijaSystemController appServerController)
|
public void RegisterWithAppServer(MobileControlSystemController appServerController)
|
||||||
{
|
{
|
||||||
if (appServerController == null)
|
if (appServerController == null)
|
||||||
throw new ArgumentNullException("appServerController");
|
throw new ArgumentNullException("appServerController");
|
||||||
@@ -60,7 +60,7 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
/// Implemented in extending classes. Wire up API calls and feedback here
|
/// Implemented in extending classes. Wire up API calls and feedback here
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="appServerController"></param>
|
/// <param name="appServerController"></param>
|
||||||
abstract protected void CustomRegisterWithAppServer(CotijaSystemController appServerController);
|
abstract protected void CustomRegisterWithAppServer(MobileControlSystemController appServerController);
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Helper for posting status message
|
/// Helper for posting status message
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override void CustomRegisterWithAppServer(CotijaSystemController appServerController)
|
protected override void CustomRegisterWithAppServer(MobileControlSystemController appServerController)
|
||||||
{
|
{
|
||||||
AppServerController.AddAction(MessagePath + "/fullStatus", new Action(SendFullStatusMessage));
|
AppServerController.AddAction(MessagePath + "/fullStatus", new Action(SendFullStatusMessage));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -160,7 +160,7 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
/// Called from base's RegisterWithAppServer method
|
/// Called from base's RegisterWithAppServer method
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="appServerController"></param>
|
/// <param name="appServerController"></param>
|
||||||
protected override void CustomRegisterWithAppServer(CotijaSystemController appServerController)
|
protected override void CustomRegisterWithAppServer(MobileControlSystemController appServerController)
|
||||||
{
|
{
|
||||||
appServerController.AddAction("/device/videoCodec/isReady", new Action(SendIsReady));
|
appServerController.AddAction("/device/videoCodec/isReady", new Action(SendIsReady));
|
||||||
appServerController.AddAction("/device/videoCodec/fullStatus", new Action(SendVtcFullMessageObject));
|
appServerController.AddAction("/device/videoCodec/fullStatus", new Action(SendVtcFullMessageObject));
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ namespace PepperDash.Essentials
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class CotijaConfig
|
public class MobileControlConfig
|
||||||
{
|
{
|
||||||
[JsonProperty("serverUrl")]
|
[JsonProperty("serverUrl")]
|
||||||
public string ServerUrl { get; set; }
|
public string ServerUrl { get; set; }
|
||||||
@@ -25,7 +25,7 @@ namespace PepperDash.Essentials
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class CotijaDdvc01RoomBridgePropertiesConfig
|
public class MobileControlDdvc01RoomBridgePropertiesConfig
|
||||||
{
|
{
|
||||||
[JsonProperty("eiscId")]
|
[JsonProperty("eiscId")]
|
||||||
public string EiscId { get; set; }
|
public string EiscId { get; set; }
|
||||||
@@ -8,19 +8,19 @@ using Crestron.SimplSharpPro.EthernetCommunication;
|
|||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Cotija
|
namespace PepperDash.Essentials.Room.MobileControl
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Represents a generic device connection through to and EISC for DDVC01
|
/// Represents a generic device connection through to and EISC for DDVC01
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class CotijaDdvc01DeviceBridge : Device, IChannel, INumericKeypad
|
public class MobileControlDdvc01DeviceBridge : Device, IChannel, INumericKeypad
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// EISC used to talk to Simpl
|
/// EISC used to talk to Simpl
|
||||||
/// </summary>
|
/// </summary>
|
||||||
ThreeSeriesTcpIpEthernetIntersystemCommunications EISC;
|
ThreeSeriesTcpIpEthernetIntersystemCommunications EISC;
|
||||||
|
|
||||||
public CotijaDdvc01DeviceBridge(string key, string name, ThreeSeriesTcpIpEthernetIntersystemCommunications eisc)
|
public MobileControlDdvc01DeviceBridge(string key, string name, ThreeSeriesTcpIpEthernetIntersystemCommunications eisc)
|
||||||
: base(key, name)
|
: base(key, name)
|
||||||
{
|
{
|
||||||
EISC = eisc;
|
EISC = eisc;
|
||||||
@@ -16,12 +16,12 @@ using Newtonsoft.Json.Linq;
|
|||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
using PepperDash.Essentials.Core.Config;
|
using PepperDash.Essentials.Core.Config;
|
||||||
using PepperDash.Essentials.Room.Cotija;
|
using PepperDash.Essentials.Room.MobileControl;
|
||||||
using PepperDash.Essentials.AppServer.Messengers;
|
using PepperDash.Essentials.AppServer.Messengers;
|
||||||
|
|
||||||
namespace PepperDash.Essentials
|
namespace PepperDash.Essentials
|
||||||
{
|
{
|
||||||
public class CotijaSystemController : Device
|
public class MobileControlSystemController : Device
|
||||||
{
|
{
|
||||||
WebSocketClient WSClient;
|
WebSocketClient WSClient;
|
||||||
|
|
||||||
@@ -34,7 +34,7 @@ namespace PepperDash.Essentials
|
|||||||
|
|
||||||
CEvent RegisterLockEvent = new CEvent(true, true);
|
CEvent RegisterLockEvent = new CEvent(true, true);
|
||||||
|
|
||||||
public CotijaConfig Config { get; private set; }
|
public MobileControlConfig Config { get; private set; }
|
||||||
|
|
||||||
Dictionary<string, Object> ActionDictionary = new Dictionary<string, Object>(StringComparer.InvariantCultureIgnoreCase);
|
Dictionary<string, Object> ActionDictionary = new Dictionary<string, Object>(StringComparer.InvariantCultureIgnoreCase);
|
||||||
|
|
||||||
@@ -54,7 +54,7 @@ namespace PepperDash.Essentials
|
|||||||
|
|
||||||
public string SystemUuid;
|
public string SystemUuid;
|
||||||
|
|
||||||
List<CotijaBridgeBase> RoomBridges = new List<CotijaBridgeBase>();
|
List<MobileControlBridgeBase> RoomBridges = new List<MobileControlBridgeBase>();
|
||||||
|
|
||||||
long ButtonHeartbeatInterval = 1000;
|
long ButtonHeartbeatInterval = 1000;
|
||||||
|
|
||||||
@@ -69,7 +69,7 @@ namespace PepperDash.Essentials
|
|||||||
/// <param name="key"></param>
|
/// <param name="key"></param>
|
||||||
/// <param name="name"></param>
|
/// <param name="name"></param>
|
||||||
/// <param name="config"></param>
|
/// <param name="config"></param>
|
||||||
public CotijaSystemController(string key, string name, CotijaConfig config) : base(key, name)
|
public MobileControlSystemController(string key, string name, MobileControlConfig config) : base(key, name)
|
||||||
{
|
{
|
||||||
Config = config;
|
Config = config;
|
||||||
|
|
||||||
@@ -78,7 +78,7 @@ namespace PepperDash.Essentials
|
|||||||
Debug.Console(0, this, "Mobile UI controller initializing for server:{0}", config.ServerUrl);
|
Debug.Console(0, this, "Mobile UI controller initializing for server:{0}", config.ServerUrl);
|
||||||
|
|
||||||
CrestronConsole.AddNewConsoleCommand(AuthorizeSystem,
|
CrestronConsole.AddNewConsoleCommand(AuthorizeSystem,
|
||||||
"mobileauth", "Authorizes system to talk to cotija server", ConsoleAccessLevelEnum.AccessOperator);
|
"mobileauth", "Authorizes system to talk to Mobile Control server", ConsoleAccessLevelEnum.AccessOperator);
|
||||||
CrestronConsole.AddNewConsoleCommand(s => ShowInfo(),
|
CrestronConsole.AddNewConsoleCommand(s => ShowInfo(),
|
||||||
"mobileinfo", "Shows information for current mobile control session", ConsoleAccessLevelEnum.AccessOperator);
|
"mobileinfo", "Shows information for current mobile control session", ConsoleAccessLevelEnum.AccessOperator);
|
||||||
CrestronConsole.AddNewConsoleCommand(s => {
|
CrestronConsole.AddNewConsoleCommand(s => {
|
||||||
@@ -196,7 +196,7 @@ namespace PepperDash.Essentials
|
|||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="bridge"></param>
|
/// <param name="bridge"></param>
|
||||||
public void AddBridge(CotijaBridgeBase bridge)
|
public void AddBridge(MobileControlBridgeBase bridge)
|
||||||
{
|
{
|
||||||
RoomBridges.Add(bridge);
|
RoomBridges.Add(bridge);
|
||||||
var b = bridge as IDelayedConfiguration;
|
var b = bridge as IDelayedConfiguration;
|
||||||
@@ -12,15 +12,15 @@ namespace PepperDash.Essentials
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
///
|
///
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract class CotijaBridgeBase: Device
|
public abstract class MobileControlBridgeBase: Device
|
||||||
{
|
{
|
||||||
public CotijaSystemController Parent { get; private set; }
|
public MobileControlSystemController Parent { get; private set; }
|
||||||
|
|
||||||
public string UserCode { get; private set; }
|
public string UserCode { get; private set; }
|
||||||
|
|
||||||
public abstract string RoomName { get; }
|
public abstract string RoomName { get; }
|
||||||
|
|
||||||
public CotijaBridgeBase(string key, string name)
|
public MobileControlBridgeBase(string key, string name)
|
||||||
: base(key, name)
|
: base(key, name)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@@ -30,7 +30,7 @@ namespace PepperDash.Essentials
|
|||||||
/// as adding actions to parent
|
/// as adding actions to parent
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="parent"></param>
|
/// <param name="parent"></param>
|
||||||
public virtual void AddParent(CotijaSystemController parent)
|
public virtual void AddParent(MobileControlSystemController parent)
|
||||||
{
|
{
|
||||||
Parent = parent;
|
Parent = parent;
|
||||||
}
|
}
|
||||||
@@ -16,9 +16,9 @@ using PepperDash.Essentials.Core.Config;
|
|||||||
using PepperDash.Essentials.Room.Config;
|
using PepperDash.Essentials.Room.Config;
|
||||||
|
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Cotija
|
namespace PepperDash.Essentials.Room.MobileControl
|
||||||
{
|
{
|
||||||
public class CotijaDdvc01RoomBridge : CotijaBridgeBase, IDelayedConfiguration
|
public class MobileControlDdvc01RoomBridge : MobileControlBridgeBase, IDelayedConfiguration
|
||||||
{
|
{
|
||||||
public class BoolJoin
|
public class BoolJoin
|
||||||
{
|
{
|
||||||
@@ -236,7 +236,7 @@ namespace PepperDash.Essentials.Room.Cotija
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
CotijaDdvc01DeviceBridge SourceBridge;
|
MobileControlDdvc01DeviceBridge SourceBridge;
|
||||||
|
|
||||||
Ddvc01AtcMessenger AtcMessenger;
|
Ddvc01AtcMessenger AtcMessenger;
|
||||||
Ddvc01VtcMessenger VtcMessenger;
|
Ddvc01VtcMessenger VtcMessenger;
|
||||||
@@ -248,7 +248,7 @@ namespace PepperDash.Essentials.Room.Cotija
|
|||||||
/// <param name="key"></param>
|
/// <param name="key"></param>
|
||||||
/// <param name="name"></param>
|
/// <param name="name"></param>
|
||||||
/// <param name="ipId"></param>
|
/// <param name="ipId"></param>
|
||||||
public CotijaDdvc01RoomBridge(string key, string name, uint ipId)
|
public MobileControlDdvc01RoomBridge(string key, string name, uint ipId)
|
||||||
: base(key, name)
|
: base(key, name)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
@@ -258,7 +258,7 @@ namespace PepperDash.Essentials.Room.Cotija
|
|||||||
if (reg != Crestron.SimplSharpPro.eDeviceRegistrationUnRegistrationResponse.Success)
|
if (reg != Crestron.SimplSharpPro.eDeviceRegistrationUnRegistrationResponse.Success)
|
||||||
Debug.Console(0, this, "Cannot connect EISC at IPID {0}: \r{1}", ipId, reg);
|
Debug.Console(0, this, "Cannot connect EISC at IPID {0}: \r{1}", ipId, reg);
|
||||||
|
|
||||||
SourceBridge = new CotijaDdvc01DeviceBridge(key + "-sourceBridge", "DDVC01 source bridge", EISC);
|
SourceBridge = new MobileControlDdvc01DeviceBridge(key + "-sourceBridge", "DDVC01 source bridge", EISC);
|
||||||
DeviceManager.AddDevice(SourceBridge);
|
DeviceManager.AddDevice(SourceBridge);
|
||||||
}
|
}
|
||||||
catch (Exception)
|
catch (Exception)
|
||||||
@@ -590,7 +590,7 @@ namespace PepperDash.Essentials.Room.Cotija
|
|||||||
// rmProps.VolumeSliderNames.Add(EISC.StringInput[i].StringValue);
|
// rmProps.VolumeSliderNames.Add(EISC.StringInput[i].StringValue);
|
||||||
//}
|
//}
|
||||||
|
|
||||||
// There should be cotija devices in here, I think...
|
// There should be Mobile Control devices in here, I think...
|
||||||
if(co.Devices == null)
|
if(co.Devices == null)
|
||||||
co.Devices = new List<DeviceConfig>();
|
co.Devices = new List<DeviceConfig>();
|
||||||
|
|
||||||
@@ -9,14 +9,14 @@ using Newtonsoft.Json.Linq;
|
|||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
using PepperDash.Essentials.AppServer.Messengers;
|
using PepperDash.Essentials.AppServer.Messengers;
|
||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
using PepperDash.Essentials.Room.Cotija;
|
using PepperDash.Essentials.Room.MobileControl;
|
||||||
using PepperDash.Essentials.Devices.Common.Codec;
|
using PepperDash.Essentials.Devices.Common.Codec;
|
||||||
using PepperDash.Essentials.Devices.Common.VideoCodec;
|
using PepperDash.Essentials.Devices.Common.VideoCodec;
|
||||||
using PepperDash.Essentials.Devices.Common.AudioCodec;
|
using PepperDash.Essentials.Devices.Common.AudioCodec;
|
||||||
|
|
||||||
namespace PepperDash.Essentials
|
namespace PepperDash.Essentials
|
||||||
{
|
{
|
||||||
public class CotijaEssentialsHuddleSpaceRoomBridge : CotijaBridgeBase
|
public class MobileConrolEssentialsHuddleSpaceRoomBridge : MobileControlBridgeBase
|
||||||
{
|
{
|
||||||
|
|
||||||
public EssentialsRoomBase Room { get; private set; }
|
public EssentialsRoomBase Room { get; private set; }
|
||||||
@@ -42,7 +42,7 @@ namespace PepperDash.Essentials
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="parent"></param>
|
/// <param name="parent"></param>
|
||||||
/// <param name="room"></param>
|
/// <param name="room"></param>
|
||||||
public CotijaEssentialsHuddleSpaceRoomBridge(EssentialsRoomBase room):
|
public MobileConrolEssentialsHuddleSpaceRoomBridge(EssentialsRoomBase room):
|
||||||
base("mobileControlBridge-essentialsHuddle", "Essentials Mobile Control Bridge-Huddle")
|
base("mobileControlBridge-essentialsHuddle", "Essentials Mobile Control Bridge-Huddle")
|
||||||
{
|
{
|
||||||
Room = room;
|
Room = room;
|
||||||
@@ -52,7 +52,7 @@ namespace PepperDash.Essentials
|
|||||||
/// Override of base: calls base to add parent and then registers actions and events.
|
/// Override of base: calls base to add parent and then registers actions and events.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="parent"></param>
|
/// <param name="parent"></param>
|
||||||
public override void AddParent(CotijaSystemController parent)
|
public override void AddParent(MobileControlSystemController parent)
|
||||||
{
|
{
|
||||||
base.AddParent(parent);
|
base.AddParent(parent);
|
||||||
|
|
||||||
@@ -169,19 +169,6 @@ namespace PepperDash.Essentials
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
///// <summary>
|
|
||||||
///// Handler for codec changes
|
|
||||||
///// </summary>
|
|
||||||
//void codec_CallStatusChange(object sender, CodecCallStatusItemChangeEventArgs e)
|
|
||||||
//{
|
|
||||||
// PostStatusMessage(new
|
|
||||||
// {
|
|
||||||
// calls = GetCallsMessageObject(),
|
|
||||||
// //vtc = GetVtcCallsMessageObject()
|
|
||||||
// });
|
|
||||||
|
|
||||||
//}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Helper for posting status message
|
/// Helper for posting status message
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -435,45 +422,6 @@ namespace PepperDash.Essentials
|
|||||||
volumes = volumes
|
volumes = volumes
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
///// <summary>
|
|
||||||
///// Helper to return a anonymous object with the call data for JSON message
|
|
||||||
///// </summary>
|
|
||||||
///// <returns></returns>
|
|
||||||
//object GetCallsMessageObject()
|
|
||||||
//{
|
|
||||||
// var callRm = Room as IHasVideoCodec;
|
|
||||||
// if (callRm == null)
|
|
||||||
// return null;
|
|
||||||
// return new
|
|
||||||
// {
|
|
||||||
// activeCalls = callRm.VideoCodec.ActiveCalls,
|
|
||||||
// callType = callRm.CallTypeFeedback.IntValue,
|
|
||||||
// inCall = callRm.InCallFeedback.BoolValue,
|
|
||||||
// isSharing = callRm.IsSharingFeedback.BoolValue,
|
|
||||||
// privacyModeIsOn = callRm.PrivacyModeIsOnFeedback.BoolValue
|
|
||||||
// };
|
|
||||||
//}
|
|
||||||
|
|
||||||
///// <summary>
|
|
||||||
///// Helper method to build call status for vtc
|
|
||||||
///// </summary>
|
|
||||||
///// <returns></returns>
|
|
||||||
//object GetVtcCallsMessageObject()
|
|
||||||
//{
|
|
||||||
// var callRm = Room as IHasVideoCodec;
|
|
||||||
// object vtc = null;
|
|
||||||
// if (callRm != null)
|
|
||||||
// {
|
|
||||||
// var codec = callRm.VideoCodec;
|
|
||||||
// vtc = new
|
|
||||||
// {
|
|
||||||
// isInCall = codec.IsInCall,
|
|
||||||
// calls = codec.ActiveCalls
|
|
||||||
// };
|
|
||||||
// }
|
|
||||||
// return vtc;
|
|
||||||
//}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -4,7 +4,7 @@ using System.Linq;
|
|||||||
using System.Text;
|
using System.Text;
|
||||||
using Crestron.SimplSharp;
|
using Crestron.SimplSharp;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Cotija
|
namespace PepperDash.Essentials.Room.MobileControl
|
||||||
{
|
{
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ using Crestron.SimplSharp;
|
|||||||
|
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Cotija
|
namespace PepperDash.Essentials.Room.MobileControl
|
||||||
{
|
{
|
||||||
public class Volumes
|
public class Volumes
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ using PepperDash.Essentials.Devices.Common;
|
|||||||
using PepperDash.Essentials.DM;
|
using PepperDash.Essentials.DM;
|
||||||
using PepperDash.Essentials.Fusion;
|
using PepperDash.Essentials.Fusion;
|
||||||
using PepperDash.Essentials.Room.Config;
|
using PepperDash.Essentials.Room.Config;
|
||||||
using PepperDash.Essentials.Room.Cotija;
|
using PepperDash.Essentials.Room.MobileControl;
|
||||||
|
|
||||||
namespace PepperDash.Essentials
|
namespace PepperDash.Essentials
|
||||||
{
|
{
|
||||||
@@ -40,8 +40,11 @@ namespace PepperDash.Essentials
|
|||||||
{
|
{
|
||||||
DeterminePlatform();
|
DeterminePlatform();
|
||||||
|
|
||||||
|
//if (Debug.DoNotLoadOnNextBoot)
|
||||||
|
//{
|
||||||
// CrestronConsole.AddNewConsoleCommand(s => GoWithLoad(), "go", "Loads configuration file",
|
// CrestronConsole.AddNewConsoleCommand(s => GoWithLoad(), "go", "Loads configuration file",
|
||||||
// ConsoleAccessLevelEnum.AccessOperator);
|
// ConsoleAccessLevelEnum.AccessOperator);
|
||||||
|
//}
|
||||||
|
|
||||||
// CrestronConsole.AddNewConsoleCommand(S => { ConfigWriter.WriteConfigFile(null); }, "writeconfig", "writes the current config to a file", ConsoleAccessLevelEnum.AccessOperator);
|
// CrestronConsole.AddNewConsoleCommand(S => { ConfigWriter.WriteConfigFile(null); }, "writeconfig", "writes the current config to a file", ConsoleAccessLevelEnum.AccessOperator);
|
||||||
CrestronConsole.AddNewConsoleCommand(s =>
|
CrestronConsole.AddNewConsoleCommand(s =>
|
||||||
@@ -71,6 +74,7 @@ namespace PepperDash.Essentials
|
|||||||
"Template URL: {1}", ConfigReader.ConfigObject.SystemUrl, ConfigReader.ConfigObject.TemplateUrl);
|
"Template URL: {1}", ConfigReader.ConfigObject.SystemUrl, ConfigReader.ConfigObject.TemplateUrl);
|
||||||
}, "portalinfo", "Shows portal URLS from configuration", ConsoleAccessLevelEnum.AccessOperator);
|
}, "portalinfo", "Shows portal URLS from configuration", ConsoleAccessLevelEnum.AccessOperator);
|
||||||
|
|
||||||
|
//if(!Debug.DoNotLoadOnNextBoot)
|
||||||
GoWithLoad();
|
GoWithLoad();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -80,6 +84,8 @@ namespace PepperDash.Essentials
|
|||||||
/// Sets Global.FilePathPrefix based on platform
|
/// Sets Global.FilePathPrefix based on platform
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public void DeterminePlatform()
|
public void DeterminePlatform()
|
||||||
|
{
|
||||||
|
try
|
||||||
{
|
{
|
||||||
Debug.Console(0, Debug.ErrorLogLevel.Notice, "Determining Platform....");
|
Debug.Console(0, Debug.ErrorLogLevel.Notice, "Determining Platform....");
|
||||||
|
|
||||||
@@ -133,6 +139,11 @@ namespace PepperDash.Essentials
|
|||||||
|
|
||||||
Global.SetFilePathPrefix(filePathPrefix);
|
Global.SetFilePathPrefix(filePathPrefix);
|
||||||
}
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
Debug.Console(0, "Unable to Determine Platform due to Exception: {0}", e.Message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Do it, yo
|
/// Do it, yo
|
||||||
@@ -141,6 +152,8 @@ namespace PepperDash.Essentials
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
//Debug.SetDoNotLoadOnNextBoot(false);
|
||||||
|
|
||||||
Debug.Console(0, Debug.ErrorLogLevel.Notice, "Starting Essentials load from configuration");
|
Debug.Console(0, Debug.ErrorLogLevel.Notice, "Starting Essentials load from configuration");
|
||||||
|
|
||||||
var filesReady = SetupFilesystem();
|
var filesReady = SetupFilesystem();
|
||||||
@@ -335,7 +348,7 @@ namespace PepperDash.Essentials
|
|||||||
{
|
{
|
||||||
var sysMon = DeviceManager.GetDeviceForKey("systemMonitor") as PepperDash.Essentials.Core.Monitoring.SystemMonitorController;
|
var sysMon = DeviceManager.GetDeviceForKey("systemMonitor") as PepperDash.Essentials.Core.Monitoring.SystemMonitorController;
|
||||||
|
|
||||||
var appServer = DeviceManager.GetDeviceForKey("appServer") as CotijaSystemController;
|
var appServer = DeviceManager.GetDeviceForKey("appServer") as MobileControlSystemController;
|
||||||
|
|
||||||
|
|
||||||
if (sysMon != null && appServer != null)
|
if (sysMon != null && appServer != null)
|
||||||
@@ -489,13 +502,13 @@ namespace PepperDash.Essentials
|
|||||||
DeviceManager.AddDevice(new Core.Fusion.EssentialsHuddleSpaceFusionSystemControllerBase((EssentialsHuddleSpaceRoom)room, 0xf1));
|
DeviceManager.AddDevice(new Core.Fusion.EssentialsHuddleSpaceFusionSystemControllerBase((EssentialsHuddleSpaceRoom)room, 0xf1));
|
||||||
|
|
||||||
|
|
||||||
Debug.Console(0, Debug.ErrorLogLevel.Notice, "Attempting to build Cotija Bridge...");
|
Debug.Console(0, Debug.ErrorLogLevel.Notice, "Attempting to build Mobile Control Bridge...");
|
||||||
// Cotija bridge
|
// Mobile Control bridge
|
||||||
var bridge = new CotijaEssentialsHuddleSpaceRoomBridge(room as EssentialsHuddleSpaceRoom);
|
var bridge = new MobileConrolEssentialsHuddleSpaceRoomBridge(room as EssentialsHuddleSpaceRoom);
|
||||||
AddBridgePostActivationHelper(bridge); // Lets things happen later when all devices are present
|
AddBridgePostActivationHelper(bridge); // Lets things happen later when all devices are present
|
||||||
DeviceManager.AddDevice(bridge);
|
DeviceManager.AddDevice(bridge);
|
||||||
|
|
||||||
Debug.Console(0, Debug.ErrorLogLevel.Notice, "Cotija Bridge Added...");
|
Debug.Console(0, Debug.ErrorLogLevel.Notice, "Mobile Control Bridge Added...");
|
||||||
}
|
}
|
||||||
else if (room is EssentialsHuddleVtc1Room)
|
else if (room is EssentialsHuddleVtc1Room)
|
||||||
{
|
{
|
||||||
@@ -504,9 +517,9 @@ namespace PepperDash.Essentials
|
|||||||
Debug.Console(0, Debug.ErrorLogLevel.Notice, "Room is EssentialsHuddleVtc1Room, attempting to add to DeviceManager with Fusion");
|
Debug.Console(0, Debug.ErrorLogLevel.Notice, "Room is EssentialsHuddleVtc1Room, attempting to add to DeviceManager with Fusion");
|
||||||
DeviceManager.AddDevice(new EssentialsHuddleVtc1FusionController((EssentialsHuddleVtc1Room)room, 0xf1));
|
DeviceManager.AddDevice(new EssentialsHuddleVtc1FusionController((EssentialsHuddleVtc1Room)room, 0xf1));
|
||||||
|
|
||||||
Debug.Console(0, Debug.ErrorLogLevel.Notice, "Attempting to build Cotija Bridge...");
|
Debug.Console(0, Debug.ErrorLogLevel.Notice, "Attempting to build Mobile Control Bridge...");
|
||||||
// Cotija bridge
|
// Mobile Control bridge
|
||||||
var bridge = new CotijaEssentialsHuddleSpaceRoomBridge(room);
|
var bridge = new MobileConrolEssentialsHuddleSpaceRoomBridge(room);
|
||||||
AddBridgePostActivationHelper(bridge); // Lets things happen later when all devices are present
|
AddBridgePostActivationHelper(bridge); // Lets things happen later when all devices are present
|
||||||
DeviceManager.AddDevice(bridge);
|
DeviceManager.AddDevice(bridge);
|
||||||
}
|
}
|
||||||
@@ -529,11 +542,11 @@ namespace PepperDash.Essentials
|
|||||||
/// Helps add the post activation steps that link bridges to main controller
|
/// Helps add the post activation steps that link bridges to main controller
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="bridge"></param>
|
/// <param name="bridge"></param>
|
||||||
void AddBridgePostActivationHelper(CotijaBridgeBase bridge)
|
void AddBridgePostActivationHelper(MobileControlBridgeBase bridge)
|
||||||
{
|
{
|
||||||
bridge.AddPostActivationAction(() =>
|
bridge.AddPostActivationAction(() =>
|
||||||
{
|
{
|
||||||
var parent = DeviceManager.AllDevices.FirstOrDefault(d => d.Key == "appServer") as CotijaSystemController;
|
var parent = DeviceManager.AllDevices.FirstOrDefault(d => d.Key == "appServer") as MobileControlSystemController;
|
||||||
if (parent == null)
|
if (parent == null)
|
||||||
{
|
{
|
||||||
Debug.Console(0, bridge, "ERROR: Cannot connect app server room bridge. System controller not present");
|
Debug.Console(0, bridge, "ERROR: Cannot connect app server room bridge. System controller not present");
|
||||||
|
|||||||
@@ -61,18 +61,18 @@ namespace PepperDash.Essentials
|
|||||||
|
|
||||||
else if (typeName == "appserver")
|
else if (typeName == "appserver")
|
||||||
{
|
{
|
||||||
var props = JsonConvert.DeserializeObject<CotijaConfig>(properties.ToString());
|
var props = JsonConvert.DeserializeObject<MobileControlConfig>(properties.ToString());
|
||||||
return new CotijaSystemController(key, name, props);
|
return new MobileControlSystemController(key, name, props);
|
||||||
}
|
}
|
||||||
|
|
||||||
else if (typeName == "mobilecontrolbridge-ddvc01")
|
else if (typeName == "mobilecontrolbridge-ddvc01")
|
||||||
{
|
{
|
||||||
var comm = CommFactory.GetControlPropertiesConfig(dc);
|
var comm = CommFactory.GetControlPropertiesConfig(dc);
|
||||||
|
|
||||||
var bridge = new PepperDash.Essentials.Room.Cotija.CotijaDdvc01RoomBridge(key, name, comm.IpIdInt);
|
var bridge = new PepperDash.Essentials.Room.MobileControl.MobileControlDdvc01RoomBridge(key, name, comm.IpIdInt);
|
||||||
bridge.AddPreActivationAction(() =>
|
bridge.AddPreActivationAction(() =>
|
||||||
{
|
{
|
||||||
var parent = DeviceManager.AllDevices.FirstOrDefault(d => d.Key == "appServer") as CotijaSystemController;
|
var parent = DeviceManager.AllDevices.FirstOrDefault(d => d.Key == "appServer") as MobileControlSystemController;
|
||||||
if (parent == null)
|
if (parent == null)
|
||||||
{
|
{
|
||||||
Debug.Console(0, bridge, "ERROR: Cannot connect bridge. System controller not present");
|
Debug.Console(0, bridge, "ERROR: Cannot connect bridge. System controller not present");
|
||||||
|
|||||||
@@ -184,12 +184,12 @@
|
|||||||
<Compile Include="Room\Config\EssentialsHuddleRoomPropertiesConfig.cs" />
|
<Compile Include="Room\Config\EssentialsHuddleRoomPropertiesConfig.cs" />
|
||||||
<Compile Include="Room\Config\EssentialsHuddleVtc1PropertiesConfig.cs" />
|
<Compile Include="Room\Config\EssentialsHuddleVtc1PropertiesConfig.cs" />
|
||||||
<Compile Include="Room\Config\EssentialsRoomEmergencyConfig.cs" />
|
<Compile Include="Room\Config\EssentialsRoomEmergencyConfig.cs" />
|
||||||
<Compile Include="AppServer\CotijaConfig.cs" />
|
<Compile Include="AppServer\MobileControlConfig.cs" />
|
||||||
<Compile Include="AppServer\CotijaDdvc01DeviceBridge.cs" />
|
<Compile Include="AppServer\MobileControlDdvc01DeviceBridge.cs" />
|
||||||
<Compile Include="AppServer\Interfaces.cs" />
|
<Compile Include="AppServer\Interfaces.cs" />
|
||||||
<Compile Include="AppServer\RoomBridges\CotijaBridgeBase.cs" />
|
<Compile Include="AppServer\RoomBridges\MobileControlBridgeBase.cs" />
|
||||||
<Compile Include="AppServer\RoomBridges\CotijaDdvc01RoomBridge.cs" />
|
<Compile Include="AppServer\RoomBridges\MobileControlDdvc01RoomBridge.cs" />
|
||||||
<Compile Include="AppServer\RoomBridges\CotijaEssentialsHuddleSpaceRoomBridge.cs" />
|
<Compile Include="AppServer\RoomBridges\MobileControlEssentialsHuddleSpaceRoomBridge.cs" />
|
||||||
<Compile Include="AppServer\DeviceTypeInterfaces\IChannelExtensions.cs" />
|
<Compile Include="AppServer\DeviceTypeInterfaces\IChannelExtensions.cs" />
|
||||||
<Compile Include="AppServer\DeviceTypeInterfaces\IColorExtensions.cs" />
|
<Compile Include="AppServer\DeviceTypeInterfaces\IColorExtensions.cs" />
|
||||||
<Compile Include="AppServer\DeviceTypeInterfaces\IDPadExtensions.cs" />
|
<Compile Include="AppServer\DeviceTypeInterfaces\IDPadExtensions.cs" />
|
||||||
@@ -238,7 +238,7 @@
|
|||||||
<Compile Include="UIDrivers\Page Drivers\SingleSubpageModalAndBackDriver.cs" />
|
<Compile Include="UIDrivers\Page Drivers\SingleSubpageModalAndBackDriver.cs" />
|
||||||
<Compile Include="UIDrivers\SmartObjectRoomsList.cs" />
|
<Compile Include="UIDrivers\SmartObjectRoomsList.cs" />
|
||||||
<Compile Include="UI\JoinConstants\UIBoolJoin.cs" />
|
<Compile Include="UI\JoinConstants\UIBoolJoin.cs" />
|
||||||
<Compile Include="AppServer\CotijaSystemController.cs" />
|
<Compile Include="AppServer\MobileControlSystemController.cs" />
|
||||||
<Compile Include="UI\DualDisplaySourceSRLController.cs" />
|
<Compile Include="UI\DualDisplaySourceSRLController.cs" />
|
||||||
<Compile Include="UI\SubpageReferenceListActivityItem.cs" />
|
<Compile Include="UI\SubpageReferenceListActivityItem.cs" />
|
||||||
<Compile Include="FOR REFERENCE UI\Panels\REMOVE UiCue.cs" />
|
<Compile Include="FOR REFERENCE UI\Panels\REMOVE UiCue.cs" />
|
||||||
|
|||||||
@@ -38,6 +38,12 @@ namespace PepperDash.Essentials.Room.Config
|
|||||||
{
|
{
|
||||||
return new Device(roomConfig.Key, roomConfig.Name); // placeholder device that does nothing.
|
return new Device(roomConfig.Key, roomConfig.Name); // placeholder device that does nothing.
|
||||||
}
|
}
|
||||||
|
else if (typeName == "dualdisplay")
|
||||||
|
{
|
||||||
|
var rm = new EssentialsDualDisplayRoom(roomConfig);
|
||||||
|
|
||||||
|
return rm;
|
||||||
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ using PepperDash.Essentials.Devices.Common.Codec;
|
|||||||
using PepperDash.Essentials.Devices.Common.VideoCodec;
|
using PepperDash.Essentials.Devices.Common.VideoCodec;
|
||||||
using PepperDash.Essentials.Devices.Common.AudioCodec;
|
using PepperDash.Essentials.Devices.Common.AudioCodec;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Types
|
namespace PepperDash.Essentials
|
||||||
{
|
{
|
||||||
public class EssentialsDualDisplayRoom : EssentialsNDisplayRoomBase, IHasCurrentVolumeControls,
|
public class EssentialsDualDisplayRoom : EssentialsNDisplayRoomBase, IHasCurrentVolumeControls,
|
||||||
IRunRouteAction, IPrivacy, IRunDefaultCallRoute, IHasVideoCodec, IHasAudioCodec, IHasInCallFeedback
|
IRunRouteAction, IPrivacy, IRunDefaultCallRoute, IHasVideoCodec, IHasAudioCodec, IHasInCallFeedback
|
||||||
@@ -174,9 +174,11 @@ namespace PepperDash.Essentials.Room.Types
|
|||||||
var leftDisp = PropertiesConfig.Displays[eSourceListItemDestinationTypes.leftDisplay];
|
var leftDisp = PropertiesConfig.Displays[eSourceListItemDestinationTypes.leftDisplay];
|
||||||
if (leftDisp != null)
|
if (leftDisp != null)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (!string.IsNullOrEmpty(leftDisp.Key))
|
if (!string.IsNullOrEmpty(leftDisp.Key))
|
||||||
|
{
|
||||||
LeftDisplay = DeviceManager.GetDeviceForKey(leftDisp.Key) as IRoutingSinkWithSwitching;
|
LeftDisplay = DeviceManager.GetDeviceForKey(leftDisp.Key) as IRoutingSinkWithSwitching;
|
||||||
|
Displays.Add(eSourceListItemDestinationTypes.leftDisplay, LeftDisplay);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
Debug.Console(0, this, "Unable to get LeftDisplay for Room");
|
Debug.Console(0, this, "Unable to get LeftDisplay for Room");
|
||||||
}
|
}
|
||||||
@@ -184,9 +186,11 @@ namespace PepperDash.Essentials.Room.Types
|
|||||||
var rightDisp = PropertiesConfig.Displays[eSourceListItemDestinationTypes.rightDisplay];
|
var rightDisp = PropertiesConfig.Displays[eSourceListItemDestinationTypes.rightDisplay];
|
||||||
if (rightDisp != null)
|
if (rightDisp != null)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (!string.IsNullOrEmpty(rightDisp.Key))
|
if (!string.IsNullOrEmpty(rightDisp.Key))
|
||||||
|
{
|
||||||
LeftDisplay = DeviceManager.GetDeviceForKey(rightDisp.Key) as IRoutingSinkWithSwitching;
|
LeftDisplay = DeviceManager.GetDeviceForKey(rightDisp.Key) as IRoutingSinkWithSwitching;
|
||||||
|
Displays.Add(eSourceListItemDestinationTypes.rightDisplay, RightDisplay);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
Debug.Console(0, this, "Unable to get LeftDisplay for Room");
|
Debug.Console(0, this, "Unable to get LeftDisplay for Room");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,21 +12,21 @@ using PepperDash.Essentials.Core.Devices;
|
|||||||
using PepperDash.Essentials.Core.Config;
|
using PepperDash.Essentials.Core.Config;
|
||||||
using PepperDash.Essentials.Room.Config;
|
using PepperDash.Essentials.Room.Config;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.Room.Types
|
namespace PepperDash.Essentials
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Base class for rooms with more than a single display
|
/// Base class for rooms with more than a single display
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public abstract class EssentialsNDisplayRoomBase : EssentialsRoomBase
|
public abstract class EssentialsNDisplayRoomBase : EssentialsRoomBase, IHasMultipleDisplays
|
||||||
{
|
{
|
||||||
//public event SourceInfoChangeHandler CurrentSingleSourceChange;
|
//public event SourceInfoChangeHandler CurrentSingleSourceChange;
|
||||||
|
|
||||||
|
public Dictionary<eSourceListItemDestinationTypes, IRoutingSinkWithSwitching> Displays { get; protected set;}
|
||||||
|
|
||||||
public EssentialsNDisplayRoomBase(DeviceConfig config)
|
public EssentialsNDisplayRoomBase(DeviceConfig config)
|
||||||
: base (config)
|
: base (config)
|
||||||
{
|
{
|
||||||
|
Displays = new Dictionary<eSourceListItemDestinationTypes, IRoutingSinkWithSwitching>();
|
||||||
var propertiesConfig = JsonConvert.DeserializeObject<EssentialsNDisplayRoomPropertiesConfig>(config.Properties.ToString());
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,8 +21,6 @@ namespace PepperDash.Essentials.Core.Config
|
|||||||
public string TemplateUrl { get; set; }
|
public string TemplateUrl { get; set; }
|
||||||
|
|
||||||
|
|
||||||
//public CotijaConfig Cotija { get; private set; }
|
|
||||||
|
|
||||||
[JsonProperty("systemUuid")]
|
[JsonProperty("systemUuid")]
|
||||||
public string SystemUuid
|
public string SystemUuid
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -22,6 +22,14 @@ namespace PepperDash.Essentials.Core
|
|||||||
IRoutingSinkWithSwitching DefaultDisplay { get; }
|
IRoutingSinkWithSwitching DefaultDisplay { get; }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// For rooms with multiple displays
|
||||||
|
/// </summary>
|
||||||
|
public interface IHasMultipleDisplays
|
||||||
|
{
|
||||||
|
Dictionary<eSourceListItemDestinationTypes, IRoutingSinkWithSwitching> Displays { get; }
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// For rooms with routing
|
/// For rooms with routing
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -30,8 +38,6 @@ namespace PepperDash.Essentials.Core
|
|||||||
void RunRouteAction(string routeKey);
|
void RunRouteAction(string routeKey);
|
||||||
|
|
||||||
void RunRouteAction(string routeKey, Action successCallback);
|
void RunRouteAction(string routeKey, Action successCallback);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|||||||
@@ -31,7 +31,6 @@ namespace PepperDash.Essentials.Core
|
|||||||
event SourceInfoChangeHandler CurrentSourceChange;
|
event SourceInfoChangeHandler CurrentSourceChange;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Defines a class that has a collection of RoutingInputPorts
|
/// Defines a class that has a collection of RoutingInputPorts
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
@@ -33,9 +33,9 @@ namespace PepperDash.Essentials.Core
|
|||||||
{
|
{
|
||||||
Audio = 1,
|
Audio = 1,
|
||||||
Video = 2,
|
Video = 2,
|
||||||
//AudioVideo = 4,
|
AudioVideo = 4,
|
||||||
UsbOutput = 4,
|
UsbOutput = 8,
|
||||||
UsbInput = 8
|
UsbInput = 16
|
||||||
}
|
}
|
||||||
|
|
||||||
public enum eRoutingPortConnectionType
|
public enum eRoutingPortConnectionType
|
||||||
|
|||||||
Reference in New Issue
Block a user