mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-15 12:44:58 +00:00
Finished converting MobileControlSIMPLRoomBridge to use new MobileControlSIMPLRoomJoinMap
This commit is contained in:
@@ -8,6 +8,7 @@ using Crestron.SimplSharpPro.EthernetCommunication;
|
|||||||
|
|
||||||
using PepperDash.Core;
|
using PepperDash.Core;
|
||||||
using PepperDash.Essentials.Core;
|
using PepperDash.Essentials.Core;
|
||||||
|
using PepperDash.Essentials.Bridges;
|
||||||
using PepperDash.Essentials.Devices.Common.Cameras;
|
using PepperDash.Essentials.Devices.Common.Cameras;
|
||||||
|
|
||||||
namespace PepperDash.Essentials.AppServer.Messengers
|
namespace PepperDash.Essentials.AppServer.Messengers
|
||||||
@@ -16,92 +17,96 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
{
|
{
|
||||||
BasicTriList EISC;
|
BasicTriList EISC;
|
||||||
|
|
||||||
uint JoinStart;
|
CameraControllerJoinMap JoinMap;
|
||||||
|
|
||||||
public class BoolJoin
|
//public class BoolJoin
|
||||||
{
|
//{
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 1
|
// /// 1
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraControlUp = 1;
|
// public const uint CameraControlUp = 1;
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 2
|
// /// 2
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraControlDown = 2;
|
// public const uint CameraControlDown = 2;
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 3
|
// /// 3
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraControlLeft = 3;
|
// public const uint CameraControlLeft = 3;
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 4
|
// /// 4
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraControlRight = 4;
|
// public const uint CameraControlRight = 4;
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 5
|
// /// 5
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraControlZoomIn = 5;
|
// public const uint CameraControlZoomIn = 5;
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 6
|
// /// 6
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraControlZoomOut = 6;
|
// public const uint CameraControlZoomOut = 6;
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 10
|
// /// 10
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraHasPresets = 10;
|
// public const uint CameraHasPresets = 10;
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 11 - 20
|
// /// 11 - 20
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraPresetStart = 10;
|
// public const uint CameraPresetStart = 10;
|
||||||
|
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 21
|
// /// 21
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraModeAuto = 21;
|
// public const uint CameraModeAuto = 21;
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 22
|
// /// 22
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraModeManual = 22;
|
// public const uint CameraModeManual = 22;
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 23
|
// /// 23
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraModeOff = 23;
|
// public const uint CameraModeOff = 23;
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 24
|
// /// 24
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraSupportsModeAuto = 24;
|
// public const uint CameraSupportsModeAuto = 24;
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 25
|
// /// 25
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraSupportsModeOff = 25;
|
// public const uint CameraSupportsModeOff = 25;
|
||||||
}
|
//}
|
||||||
|
|
||||||
public class UshortJoin
|
//public class UshortJoin
|
||||||
{
|
//{
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 10
|
// /// 10
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraPresetCount = 10;
|
// public const uint CameraPresetCount = 10;
|
||||||
}
|
//}
|
||||||
|
|
||||||
public class StringJoin
|
//public class StringJoin
|
||||||
{
|
//{
|
||||||
/// <summary>
|
// /// <summary>
|
||||||
/// 11-20
|
// /// 11-20
|
||||||
/// </summary>
|
// /// </summary>
|
||||||
public const uint CameraPresetNameStart = 10;
|
// public const uint CameraPresetNameStart = 10;
|
||||||
}
|
//}
|
||||||
|
|
||||||
public SIMPLCameraMessenger(string key, BasicTriList eisc, string messagePath, uint joinStart)
|
public SIMPLCameraMessenger(string key, BasicTriList eisc, string messagePath, uint joinStart)
|
||||||
: base(key, messagePath)
|
: base(key, messagePath)
|
||||||
{
|
{
|
||||||
EISC = eisc;
|
EISC = eisc;
|
||||||
JoinStart = joinStart - 1;
|
//JoinStart = joinStart - 1;
|
||||||
|
JoinMap = new CameraControllerJoinMap();
|
||||||
|
|
||||||
EISC.SetUShortSigAction(UshortJoin.CameraPresetCount + JoinStart, (u) => SendCameraFullMessageObject());
|
JoinMap.OffsetJoinNumbers(joinStart);
|
||||||
|
|
||||||
EISC.SetBoolSigAction(BoolJoin.CameraModeAuto, (b) => PostCameraMode());
|
|
||||||
EISC.SetBoolSigAction(BoolJoin.CameraModeManual, (b) => PostCameraMode());
|
EISC.SetUShortSigAction(JoinMap.GetJoinForKey(CameraControllerJoinMap.NumberOfPresets), (u) => SendCameraFullMessageObject());
|
||||||
EISC.SetBoolSigAction(BoolJoin.CameraModeOff, (b) => PostCameraMode());
|
|
||||||
|
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(CameraControllerJoinMap.CameraModeAuto), (b) => PostCameraMode());
|
||||||
|
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(CameraControllerJoinMap.CameraModeManual), (b) => PostCameraMode());
|
||||||
|
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(CameraControllerJoinMap.CameraModeOff), (b) => PostCameraMode());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -114,24 +119,29 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
// Add press and holds using helper action
|
// Add press and holds using helper action
|
||||||
Action<string, uint> addPHAction = (s, u) =>
|
Action<string, uint> addPHAction = (s, u) =>
|
||||||
asc.AddAction(MessagePath + s, new PressAndHoldAction(b => EISC.SetBool(u, b)));
|
asc.AddAction(MessagePath + s, new PressAndHoldAction(b => EISC.SetBool(u, b)));
|
||||||
addPHAction("/cameraUp", BoolJoin.CameraControlUp + JoinStart);
|
addPHAction("/cameraUp", JoinMap.GetJoinForKey(CameraControllerJoinMap.TiltUp));
|
||||||
addPHAction("/cameraDown", BoolJoin.CameraControlDown + JoinStart);
|
addPHAction("/cameraDown", JoinMap.GetJoinForKey(CameraControllerJoinMap.TiltDown));
|
||||||
addPHAction("/cameraLeft", BoolJoin.CameraControlLeft + JoinStart);
|
addPHAction("/cameraLeft", JoinMap.GetJoinForKey(CameraControllerJoinMap.PanLeft));
|
||||||
addPHAction("/cameraRight", BoolJoin.CameraControlRight + JoinStart);
|
addPHAction("/cameraRight", JoinMap.GetJoinForKey(CameraControllerJoinMap.PanRight));
|
||||||
addPHAction("/cameraZoomIn", BoolJoin.CameraControlZoomIn + JoinStart);
|
addPHAction("/cameraZoomIn", JoinMap.GetJoinForKey(CameraControllerJoinMap.ZoomIn));
|
||||||
addPHAction("/cameraZoomOut", BoolJoin.CameraControlZoomOut + JoinStart);
|
addPHAction("/cameraZoomOut", JoinMap.GetJoinForKey(CameraControllerJoinMap.ZoomOut));
|
||||||
|
|
||||||
Action<string, uint> addAction = (s, u) =>
|
Action<string, uint> addAction = (s, u) =>
|
||||||
asc.AddAction(MessagePath + s, new Action(() => EISC.PulseBool(u, 100)));
|
asc.AddAction(MessagePath + s, new Action(() => EISC.PulseBool(u, 100)));
|
||||||
|
|
||||||
addAction("/cameraModeAuto", BoolJoin.CameraModeAuto);
|
addAction("/cameraModeAuto", JoinMap.GetJoinForKey(CameraControllerJoinMap.CameraModeAuto));
|
||||||
addAction("/cameraModeManual", BoolJoin.CameraModeManual);
|
addAction("/cameraModeManual", JoinMap.GetJoinForKey(CameraControllerJoinMap.CameraModeManual));
|
||||||
addAction("/cameraModeOff", BoolJoin.CameraModeOff);
|
addAction("/cameraModeOff", JoinMap.GetJoinForKey(CameraControllerJoinMap.CameraModeOff));
|
||||||
|
|
||||||
|
var presetStart = JoinMap.GetJoinForKey(CameraControllerJoinMap.PresetRecallStart);
|
||||||
|
var presetEnd = JoinMap.GetJoinForKey(CameraControllerJoinMap.PresetRecallStart) + JoinMap.GetJoinSpanForKey(CameraControllerJoinMap.PresetRecallStart);
|
||||||
|
|
||||||
|
int presetId = 1;
|
||||||
// camera presets
|
// camera presets
|
||||||
for (uint i = 1; i <= 6; i++)
|
for (uint i = presetStart; i <= presetEnd; i++)
|
||||||
{
|
{
|
||||||
addAction("/cameraPreset" + (i), BoolJoin.CameraPresetStart + i + JoinStart);
|
addAction("/cameraPreset" + (presetId), i);
|
||||||
|
presetId++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -149,11 +159,11 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
appServerController.RemoveAction(MessagePath + "/cameraModeManual");
|
appServerController.RemoveAction(MessagePath + "/cameraModeManual");
|
||||||
appServerController.RemoveAction(MessagePath + "/cameraModeOff");
|
appServerController.RemoveAction(MessagePath + "/cameraModeOff");
|
||||||
|
|
||||||
EISC.SetUShortSigAction(UshortJoin.CameraPresetCount + JoinStart, null);
|
EISC.SetUShortSigAction(JoinMap.GetJoinForKey(CameraControllerJoinMap.NumberOfPresets), null);
|
||||||
|
|
||||||
EISC.SetBoolSigAction(BoolJoin.CameraModeAuto, null);
|
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(CameraControllerJoinMap.CameraModeAuto), null);
|
||||||
EISC.SetBoolSigAction(BoolJoin.CameraModeManual, null);
|
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(CameraControllerJoinMap.CameraModeManual), null);
|
||||||
EISC.SetBoolSigAction(BoolJoin.CameraModeOff, null);
|
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(CameraControllerJoinMap.CameraModeOff), null);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -164,20 +174,25 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
var presetList = new List<CameraPreset>();
|
var presetList = new List<CameraPreset>();
|
||||||
|
|
||||||
// Build a list of camera presets based on the names and count
|
// Build a list of camera presets based on the names and count
|
||||||
if (EISC.GetBool(JoinStart + BoolJoin.CameraHasPresets))
|
if (EISC.GetBool(JoinMap.GetJoinForKey(CameraControllerJoinMap.SupportsPresets)))
|
||||||
{
|
{
|
||||||
for (uint i = 1; i <= EISC.GetUshort(UshortJoin.CameraPresetCount); i++)
|
var presetStart = JoinMap.GetJoinForKey(CameraControllerJoinMap.PresetLabelStart);
|
||||||
|
var presetEnd = JoinMap.GetJoinForKey(CameraControllerJoinMap.PresetLabelStart) + JoinMap.GetJoinForKey(CameraControllerJoinMap.NumberOfPresets);
|
||||||
|
|
||||||
|
var presetId = 1;
|
||||||
|
for (uint i = presetStart; i < presetEnd; i++)
|
||||||
{
|
{
|
||||||
var presetName = EISC.GetString(StringJoin.CameraPresetNameStart + i + JoinStart);
|
var presetName = EISC.GetString(i);
|
||||||
var preset = new CameraPreset((int)i, presetName, string.IsNullOrEmpty(presetName), true);
|
var preset = new CameraPreset(presetId, presetName, string.IsNullOrEmpty(presetName), true);
|
||||||
presetList.Add(preset);
|
presetList.Add(preset);
|
||||||
|
presetId++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
PostStatusMessage(new
|
PostStatusMessage(new
|
||||||
{
|
{
|
||||||
cameraMode = GetCameraMode(),
|
cameraMode = GetCameraMode(),
|
||||||
hasPresets = EISC.GetBool(BoolJoin.CameraHasPresets),
|
hasPresets = EISC.GetBool(JoinMap.GetJoinForKey(CameraControllerJoinMap.SupportsPresets)),
|
||||||
presets = presetList
|
presets = presetList
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -200,8 +215,8 @@ namespace PepperDash.Essentials.AppServer.Messengers
|
|||||||
string GetCameraMode()
|
string GetCameraMode()
|
||||||
{
|
{
|
||||||
string m;
|
string m;
|
||||||
if (EISC.GetBool(BoolJoin.CameraModeAuto)) m = eCameraControlMode.Auto.ToString().ToLower();
|
if (EISC.GetBool(JoinMap.GetJoinForKey(CameraControllerJoinMap.CameraModeAuto))) m = eCameraControlMode.Auto.ToString().ToLower();
|
||||||
else if (EISC.GetBool(BoolJoin.CameraModeManual)) m = eCameraControlMode.Manual.ToString().ToLower();
|
else if (EISC.GetBool(JoinMap.GetJoinForKey(CameraControllerJoinMap.CameraModeManual))) m = eCameraControlMode.Manual.ToString().ToLower();
|
||||||
else m = eCameraControlMode.Off.ToString().ToLower();
|
else m = eCameraControlMode.Off.ToString().ToLower();
|
||||||
return m;
|
return m;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,199 +21,6 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
{
|
{
|
||||||
public class MobileControlSIMPLRoomBridge : MobileControlBridgeBase, IDelayedConfiguration
|
public class MobileControlSIMPLRoomBridge : MobileControlBridgeBase, IDelayedConfiguration
|
||||||
{
|
{
|
||||||
public class BoolJoin
|
|
||||||
{
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 1
|
|
||||||
/// </summary>
|
|
||||||
public const uint ConfigIsInEssentials = 100;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 301
|
|
||||||
/// </summary>
|
|
||||||
public const uint RoomIsOn = 301;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 12
|
|
||||||
/// </summary>
|
|
||||||
public const uint PrivacyMute = 12;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 41
|
|
||||||
/// </summary>
|
|
||||||
public const uint PromptForCode = 41;
|
|
||||||
/// <summary>
|
|
||||||
/// 42
|
|
||||||
/// </summary>
|
|
||||||
public const uint ClientJoined = 42;
|
|
||||||
/// <summary>
|
|
||||||
/// 51
|
|
||||||
/// </summary>
|
|
||||||
public const uint ActivityShare = 51;
|
|
||||||
/// <summary>
|
|
||||||
/// 52
|
|
||||||
/// </summary>
|
|
||||||
public const uint ActivityPhoneCall = 52;
|
|
||||||
/// <summary>
|
|
||||||
/// 53
|
|
||||||
/// </summary>
|
|
||||||
public const uint ActivityVideoCall = 53;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 1
|
|
||||||
/// </summary>
|
|
||||||
public const uint MasterVolumeIsMuted = 1;
|
|
||||||
/// <summary>
|
|
||||||
/// 1
|
|
||||||
/// </summary>
|
|
||||||
public const uint MasterVolumeMuteToggle = 1;
|
|
||||||
/// <summary>
|
|
||||||
/// 1
|
|
||||||
/// </summary>
|
|
||||||
public const uint VolumeMutesJoinStart = 1;
|
|
||||||
/// <summary>
|
|
||||||
/// 61
|
|
||||||
/// </summary>
|
|
||||||
public const uint ShutdownCancel = 61;
|
|
||||||
/// <summary>
|
|
||||||
/// 62
|
|
||||||
/// </summary>
|
|
||||||
public const uint ShutdownEnd = 62;
|
|
||||||
/// <summary>
|
|
||||||
/// 63
|
|
||||||
/// </summary>
|
|
||||||
public const uint ShutdownStart = 63;
|
|
||||||
/// <summary>
|
|
||||||
/// 72
|
|
||||||
/// </summary>
|
|
||||||
public const uint SourceHasChanged = 71;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 261 - The start of the range of speed dial visibles
|
|
||||||
/// </summary>
|
|
||||||
public const uint SpeedDialVisibleStartJoin = 261;
|
|
||||||
/// <summary>
|
|
||||||
/// 501
|
|
||||||
/// </summary>
|
|
||||||
public const uint ConfigIsReady = 501;
|
|
||||||
/// <summary>
|
|
||||||
/// 502
|
|
||||||
/// </summary>
|
|
||||||
public const uint HideVideoConfRecents = 502;
|
|
||||||
/// <summary>
|
|
||||||
/// 503
|
|
||||||
/// </summary>
|
|
||||||
public const uint ShowCameraWhenNotInCall = 503;
|
|
||||||
/// <summary>
|
|
||||||
/// 504
|
|
||||||
/// </summary>
|
|
||||||
public const uint UseSourceEnabled = 504;
|
|
||||||
/// <summary>
|
|
||||||
/// 601
|
|
||||||
/// </summary>
|
|
||||||
public const uint SourceShareDisableJoinStart = 601;
|
|
||||||
/// <summary>
|
|
||||||
/// 621
|
|
||||||
/// </summary>
|
|
||||||
public const uint SourceIsEnabledJoinStart = 621;
|
|
||||||
}
|
|
||||||
|
|
||||||
public class UshortJoin
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 1
|
|
||||||
/// </summary>
|
|
||||||
public const uint MasterVolumeLevel = 1;
|
|
||||||
/// <summary>
|
|
||||||
/// 1
|
|
||||||
/// </summary>
|
|
||||||
public const uint VolumeSlidersJoinStart = 1;
|
|
||||||
/// <summary>
|
|
||||||
/// 61
|
|
||||||
/// </summary>
|
|
||||||
public const uint ShutdownPromptDuration = 61;
|
|
||||||
/// <summary>
|
|
||||||
/// 101
|
|
||||||
/// </summary>
|
|
||||||
public const uint NumberOfAuxFaders = 101;
|
|
||||||
}
|
|
||||||
|
|
||||||
public class StringJoin
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// 1
|
|
||||||
/// </summary>
|
|
||||||
public const uint VolumeSliderNamesJoinStart = 1;
|
|
||||||
/// <summary>
|
|
||||||
/// 71
|
|
||||||
/// </summary>
|
|
||||||
public const uint SelectedSourceKey = 71;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 241
|
|
||||||
/// </summary>
|
|
||||||
public const uint SpeedDialNameStartJoin = 241;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 251
|
|
||||||
/// </summary>
|
|
||||||
public const uint SpeedDialNumberStartJoin = 251;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 501
|
|
||||||
/// </summary>
|
|
||||||
public const uint ConfigRoomName = 501;
|
|
||||||
/// <summary>
|
|
||||||
/// 502
|
|
||||||
/// </summary>
|
|
||||||
public const uint ConfigHelpMessage = 502;
|
|
||||||
/// <summary>
|
|
||||||
/// 503
|
|
||||||
/// </summary>
|
|
||||||
public const uint ConfigHelpNumber = 503;
|
|
||||||
/// <summary>
|
|
||||||
/// 504
|
|
||||||
/// </summary>
|
|
||||||
public const uint ConfigRoomPhoneNumber = 504;
|
|
||||||
/// <summary>
|
|
||||||
/// 505
|
|
||||||
/// </summary>
|
|
||||||
public const uint ConfigRoomURI = 505;
|
|
||||||
/// <summary>
|
|
||||||
/// 401
|
|
||||||
/// </summary>
|
|
||||||
public const uint UserCodeToSystem = 401;
|
|
||||||
/// <summary>
|
|
||||||
/// 402
|
|
||||||
/// </summary>
|
|
||||||
public const uint ServerUrl = 402;
|
|
||||||
/// <summary>
|
|
||||||
/// 601
|
|
||||||
/// </summary>
|
|
||||||
public const uint SourceNameJoinStart = 601;
|
|
||||||
/// <summary>
|
|
||||||
/// 621
|
|
||||||
/// </summary>
|
|
||||||
public const uint SourceIconJoinStart = 621;
|
|
||||||
/// <summary>
|
|
||||||
/// 641
|
|
||||||
/// </summary>
|
|
||||||
public const uint SourceKeyJoinStart = 641;
|
|
||||||
/// <summary>
|
|
||||||
/// 661
|
|
||||||
/// </summary>
|
|
||||||
public const uint SourceTypeJoinStart = 661;
|
|
||||||
/// <summary>
|
|
||||||
/// 761
|
|
||||||
/// </summary>
|
|
||||||
public const uint CameraNearNameStart = 761;
|
|
||||||
/// <summary>
|
|
||||||
/// 770 - presence of this name on the input will cause the camera to be added
|
|
||||||
/// </summary>
|
|
||||||
public const uint CameraFarName = 770;
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Fires when config is ready to go
|
/// Fires when config is ready to go
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -231,7 +38,7 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
public override string RoomName
|
public override string RoomName
|
||||||
{
|
{
|
||||||
get {
|
get {
|
||||||
var name = EISC.StringOutput[StringJoin.ConfigRoomName].StringValue;
|
var name = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigRoomName)].StringValue;
|
||||||
return string.IsNullOrEmpty(name) ? "Not Loaded" : name;
|
return string.IsNullOrEmpty(name) ? "Not Loaded" : name;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -260,9 +67,7 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
|
|
||||||
JoinMap = new MobileControlSIMPLRoomJoinMap();
|
JoinMap = new MobileControlSIMPLRoomJoinMap();
|
||||||
|
|
||||||
// TODO: Possibly set up alternate constructor or take in joinMapKey and joinStart properties in constructor
|
// TODO: Possibly set up alternate constructor or take in joinMapKey and joinStart properties in constructor
|
||||||
|
|
||||||
|
|
||||||
JoinMap.OffsetJoinNumbers(1);
|
JoinMap.OffsetJoinNumbers(1);
|
||||||
|
|
||||||
SourceBridge = new MobileControlDdvc01DeviceBridge(key + "-sourceBridge", "DDVC01 source bridge", EISC);
|
SourceBridge = new MobileControlDdvc01DeviceBridge(key + "-sourceBridge", "DDVC01 source bridge", EISC);
|
||||||
@@ -300,19 +105,19 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
EISC.OnlineStatusChange += (o, a) =>
|
EISC.OnlineStatusChange += (o, a) =>
|
||||||
{
|
{
|
||||||
Debug.Console(1, this, "DDVC EISC online={0}. Config is ready={1}. Use Essentials Config={2}",
|
Debug.Console(1, this, "DDVC EISC online={0}. Config is ready={1}. Use Essentials Config={2}",
|
||||||
a.DeviceOnLine, EISC.BooleanOutput[BoolJoin.ConfigIsReady].BoolValue, EISC.BooleanOutput[BoolJoin.ConfigIsInEssentials].BoolValue);
|
a.DeviceOnLine, EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsReady)].BoolValue, EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsLocal)].BoolValue);
|
||||||
|
|
||||||
if (a.DeviceOnLine && EISC.BooleanOutput[BoolJoin.ConfigIsReady].BoolValue)
|
if (a.DeviceOnLine && EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsReady)].BoolValue)
|
||||||
LoadConfigValues();
|
LoadConfigValues();
|
||||||
|
|
||||||
if (a.DeviceOnLine && EISC.BooleanOutput[BoolJoin.ConfigIsInEssentials].BoolValue)
|
if (a.DeviceOnLine && EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsLocal)].BoolValue)
|
||||||
UseEssentialsConfig();
|
UseEssentialsConfig();
|
||||||
};
|
};
|
||||||
// load config if it's already there
|
// load config if it's already there
|
||||||
if (EISC.IsOnline && EISC.BooleanOutput[BoolJoin.ConfigIsReady].BoolValue) // || EISC.BooleanInput[BoolJoin.ConfigIsReady].BoolValue)
|
if (EISC.IsOnline && EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsReady)].BoolValue) // || EISC.BooleanInput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsReady].BoolValue)
|
||||||
LoadConfigValues();
|
LoadConfigValues();
|
||||||
|
|
||||||
if (EISC.IsOnline && EISC.BooleanOutput[BoolJoin.ConfigIsInEssentials].BoolValue)
|
if (EISC.IsOnline && EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsLocal)].BoolValue)
|
||||||
{
|
{
|
||||||
UseEssentialsConfig();
|
UseEssentialsConfig();
|
||||||
}
|
}
|
||||||
@@ -364,35 +169,38 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
void SetupFunctions()
|
void SetupFunctions()
|
||||||
{
|
{
|
||||||
Parent.AddAction(@"/room/room1/promptForCode", new Action(() => EISC.PulseBool(BoolJoin.PromptForCode)));
|
Parent.AddAction(@"/room/room1/promptForCode", new Action(() => EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.PromptForCode))));
|
||||||
Parent.AddAction(@"/room/room1/clientJoined", new Action(() => EISC.PulseBool(BoolJoin.ClientJoined)));
|
Parent.AddAction(@"/room/room1/clientJoined", new Action(() => EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ClientJoined))));
|
||||||
|
|
||||||
Parent.AddAction(@"/room/room1/status", new Action(SendFullStatus));
|
Parent.AddAction(@"/room/room1/status", new Action(SendFullStatus));
|
||||||
|
|
||||||
Parent.AddAction(@"/room/room1/source", new Action<SourceSelectMessageContent>(c =>
|
Parent.AddAction(@"/room/room1/source", new Action<SourceSelectMessageContent>(c =>
|
||||||
{
|
{
|
||||||
EISC.SetString(StringJoin.SelectedSourceKey, c.SourceListItem);
|
EISC.SetString(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SelectedSourceKey), c.SourceListItem);
|
||||||
EISC.PulseBool(BoolJoin.SourceHasChanged);
|
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceHasChanged));
|
||||||
}));
|
}));
|
||||||
|
|
||||||
Parent.AddAction(@"/room/room1/defaultsource", new Action(() =>
|
Parent.AddAction(@"/room/room1/defaultsource", new Action(() =>
|
||||||
EISC.PulseBool(BoolJoin.ActivityShare)));
|
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityShare))));
|
||||||
Parent.AddAction(@"/room/room1/activityPhone", new Action(() =>
|
Parent.AddAction(@"/room/room1/activityPhone", new Action(() =>
|
||||||
EISC.PulseBool(BoolJoin.ActivityPhoneCall)));
|
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityPhoneCall))));
|
||||||
Parent.AddAction(@"/room/room1/activityVideo", new Action(() =>
|
Parent.AddAction(@"/room/room1/activityVideo", new Action(() =>
|
||||||
EISC.PulseBool(BoolJoin.ActivityVideoCall)));
|
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityVideoCall))));
|
||||||
|
|
||||||
Parent.AddAction(@"/room/room1/volumes/master/level", new Action<ushort>(u =>
|
Parent.AddAction(@"/room/room1/volumes/master/level", new Action<ushort>(u =>
|
||||||
EISC.SetUshort(UshortJoin.MasterVolumeLevel, u)));
|
EISC.SetUshort(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume), u)));
|
||||||
Parent.AddAction(@"/room/room1/volumes/master/muteToggle", new Action(() =>
|
Parent.AddAction(@"/room/room1/volumes/master/muteToggle", new Action(() =>
|
||||||
EISC.PulseBool(BoolJoin.MasterVolumeIsMuted)));
|
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume))));
|
||||||
Parent.AddAction(@"/room/room1/volumes/master/privacyMuteToggle", new Action(() =>
|
Parent.AddAction(@"/room/room1/volumes/master/privacyMuteToggle", new Action(() =>
|
||||||
EISC.PulseBool(BoolJoin.PrivacyMute)));
|
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.PrivacyMute))));
|
||||||
|
|
||||||
|
|
||||||
// /xyzxyz/volumes/master/muteToggle ---> BoolInput[1]
|
// /xyzxyz/volumes/master/muteToggle ---> BoolInput[1]
|
||||||
|
|
||||||
for (uint i = 2; i <= 7; i++)
|
var volumeStart = JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart);
|
||||||
|
var volumeEnd = JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart) + JoinMap.GetJoinSpanForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart);
|
||||||
|
|
||||||
|
for (uint i = volumeStart; i <= volumeEnd; i++)
|
||||||
{
|
{
|
||||||
var index = i;
|
var index = i;
|
||||||
Parent.AddAction(string.Format(@"/room/room1/volumes/level-{0}/level", index), new Action<ushort>(u =>
|
Parent.AddAction(string.Format(@"/room/room1/volumes/level-{0}/level", index), new Action<ushort>(u =>
|
||||||
@@ -402,11 +210,11 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
}
|
}
|
||||||
|
|
||||||
Parent.AddAction(@"/room/room1/shutdownStart", new Action(() =>
|
Parent.AddAction(@"/room/room1/shutdownStart", new Action(() =>
|
||||||
EISC.PulseBool(BoolJoin.ShutdownStart)));
|
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownStart))));
|
||||||
Parent.AddAction(@"/room/room1/shutdownEnd", new Action(() =>
|
Parent.AddAction(@"/room/room1/shutdownEnd", new Action(() =>
|
||||||
EISC.PulseBool(BoolJoin.ShutdownEnd)));
|
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownEnd))));
|
||||||
Parent.AddAction(@"/room/room1/shutdownCancel", new Action(() =>
|
Parent.AddAction(@"/room/room1/shutdownCancel", new Action(() =>
|
||||||
EISC.PulseBool(BoolJoin.ShutdownCancel)));
|
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownCancel))));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -436,21 +244,21 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
void SetupFeedbacks()
|
void SetupFeedbacks()
|
||||||
{
|
{
|
||||||
// Power
|
// Power
|
||||||
EISC.SetBoolSigAction(BoolJoin.RoomIsOn, b =>
|
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.RoomIsOn), b =>
|
||||||
PostStatusMessage(new
|
PostStatusMessage(new
|
||||||
{
|
{
|
||||||
isOn = b
|
isOn = b
|
||||||
}));
|
}));
|
||||||
|
|
||||||
// Source change things
|
// Source change things
|
||||||
EISC.SetSigTrueAction(BoolJoin.SourceHasChanged, () =>
|
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceHasChanged), () =>
|
||||||
PostStatusMessage(new
|
PostStatusMessage(new
|
||||||
{
|
{
|
||||||
selectedSourceKey = EISC.StringOutput[StringJoin.SelectedSourceKey].StringValue
|
selectedSourceKey = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SelectedSourceKey)].StringValue
|
||||||
}));
|
}));
|
||||||
|
|
||||||
// Volume things
|
// Volume things
|
||||||
EISC.SetUShortSigAction(UshortJoin.MasterVolumeLevel, u =>
|
EISC.SetUShortSigAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume), u =>
|
||||||
PostStatusMessage(new
|
PostStatusMessage(new
|
||||||
{
|
{
|
||||||
volumes = new
|
volumes = new
|
||||||
@@ -465,7 +273,7 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
// map MasterVolumeIsMuted join -> status/volumes/master/muted
|
// map MasterVolumeIsMuted join -> status/volumes/master/muted
|
||||||
//
|
//
|
||||||
|
|
||||||
EISC.SetBoolSigAction(BoolJoin.MasterVolumeIsMuted, b =>
|
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume), b =>
|
||||||
PostStatusMessage(new
|
PostStatusMessage(new
|
||||||
{
|
{
|
||||||
volumes = new
|
volumes = new
|
||||||
@@ -476,7 +284,7 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}));
|
}));
|
||||||
EISC.SetBoolSigAction(BoolJoin.PrivacyMute, b =>
|
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.PrivacyMute), b =>
|
||||||
PostStatusMessage(new
|
PostStatusMessage(new
|
||||||
{
|
{
|
||||||
volumes = new
|
volumes = new
|
||||||
@@ -488,7 +296,10 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
}
|
}
|
||||||
}));
|
}));
|
||||||
|
|
||||||
for (uint i = 2; i <= 7; i++)
|
var volumeStart = JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart);
|
||||||
|
var volumeEnd = JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart) + JoinMap.GetJoinSpanForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart);
|
||||||
|
|
||||||
|
for (uint i = volumeStart; i <= volumeEnd; i++)
|
||||||
{
|
{
|
||||||
var index = i; // local scope for lambdas
|
var index = i; // local scope for lambdas
|
||||||
EISC.SetUShortSigAction(index, u => // start at join 2
|
EISC.SetUShortSigAction(index, u => // start at join 2
|
||||||
@@ -519,7 +330,7 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
EISC.SetUShortSigAction(UshortJoin.NumberOfAuxFaders, u =>
|
EISC.SetUShortSigAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.NumberOfAuxFaders), u =>
|
||||||
PostStatusMessage(new {
|
PostStatusMessage(new {
|
||||||
volumes = new {
|
volumes = new {
|
||||||
numberOfAuxFaders = u,
|
numberOfAuxFaders = u,
|
||||||
@@ -527,30 +338,30 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
}));
|
}));
|
||||||
|
|
||||||
// shutdown things
|
// shutdown things
|
||||||
EISC.SetSigTrueAction(BoolJoin.ShutdownCancel, new Action(() =>
|
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownCancel), new Action(() =>
|
||||||
PostMessage("/room/shutdown/", new
|
PostMessage("/room/shutdown/", new
|
||||||
{
|
{
|
||||||
state = "wasCancelled"
|
state = "wasCancelled"
|
||||||
})));
|
})));
|
||||||
EISC.SetSigTrueAction(BoolJoin.ShutdownEnd, new Action(() =>
|
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownEnd), new Action(() =>
|
||||||
PostMessage("/room/shutdown/", new
|
PostMessage("/room/shutdown/", new
|
||||||
{
|
{
|
||||||
state = "hasFinished"
|
state = "hasFinished"
|
||||||
})));
|
})));
|
||||||
EISC.SetSigTrueAction(BoolJoin.ShutdownStart, new Action(() =>
|
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownStart), new Action(() =>
|
||||||
PostMessage("/room/shutdown/", new
|
PostMessage("/room/shutdown/", new
|
||||||
{
|
{
|
||||||
state = "hasStarted",
|
state = "hasStarted",
|
||||||
duration = EISC.UShortOutput[UshortJoin.ShutdownPromptDuration].UShortValue
|
duration = EISC.UShortOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownPromptDuration)].UShortValue
|
||||||
})));
|
})));
|
||||||
|
|
||||||
// Config things
|
// Config things
|
||||||
EISC.SetSigTrueAction(BoolJoin.ConfigIsReady, LoadConfigValues);
|
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsReady), LoadConfigValues);
|
||||||
|
|
||||||
// Activity modes
|
// Activity modes
|
||||||
EISC.SetSigTrueAction(BoolJoin.ActivityShare, () => UpdateActivity(1));
|
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityShare), () => UpdateActivity(1));
|
||||||
EISC.SetSigTrueAction(BoolJoin.ActivityPhoneCall, () => UpdateActivity(2));
|
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityPhoneCall), () => UpdateActivity(2));
|
||||||
EISC.SetSigTrueAction(BoolJoin.ActivityVideoCall, () => UpdateActivity(3));
|
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityVideoCall), () => UpdateActivity(3));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -594,7 +405,7 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
Debug.Console(0, this, "Replacing Room[0] in config");
|
Debug.Console(0, this, "Replacing Room[0] in config");
|
||||||
co.Rooms[0] = rm;
|
co.Rooms[0] = rm;
|
||||||
}
|
}
|
||||||
rm.Name = EISC.StringOutput[StringJoin.ConfigRoomName].StringValue;
|
rm.Name = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigRoomName)].StringValue;
|
||||||
rm.Key = "room1";
|
rm.Key = "room1";
|
||||||
rm.Type = "ddvc01";
|
rm.Type = "ddvc01";
|
||||||
|
|
||||||
@@ -605,13 +416,13 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
rmProps = JsonConvert.DeserializeObject<DDVC01RoomPropertiesConfig>(rm.Properties.ToString());
|
rmProps = JsonConvert.DeserializeObject<DDVC01RoomPropertiesConfig>(rm.Properties.ToString());
|
||||||
|
|
||||||
rmProps.Help = new EssentialsHelpPropertiesConfig();
|
rmProps.Help = new EssentialsHelpPropertiesConfig();
|
||||||
rmProps.Help.CallButtonText = EISC.StringOutput[StringJoin.ConfigHelpNumber].StringValue;
|
rmProps.Help.CallButtonText = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigHelpNumber)].StringValue;
|
||||||
rmProps.Help.Message = EISC.StringOutput[StringJoin.ConfigHelpMessage].StringValue;
|
rmProps.Help.Message = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigHelpMessage)].StringValue;
|
||||||
|
|
||||||
rmProps.Environment = new EssentialsEnvironmentPropertiesConfig(); // enabled defaults to false
|
rmProps.Environment = new EssentialsEnvironmentPropertiesConfig(); // enabled defaults to false
|
||||||
|
|
||||||
rmProps.RoomPhoneNumber = EISC.StringOutput[StringJoin.ConfigRoomPhoneNumber].StringValue;
|
rmProps.RoomPhoneNumber = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigRoomPhoneNumber)].StringValue;
|
||||||
rmProps.RoomURI = EISC.StringOutput[StringJoin.ConfigRoomURI].StringValue;
|
rmProps.RoomURI = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigRoomURI)].StringValue;
|
||||||
rmProps.SpeedDials = new List<DDVC01SpeedDial>();
|
rmProps.SpeedDials = new List<DDVC01SpeedDial>();
|
||||||
|
|
||||||
// This MAY need a check
|
// This MAY need a check
|
||||||
@@ -619,7 +430,7 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
rmProps.VideoCodecKey = "videoCodec";
|
rmProps.VideoCodecKey = "videoCodec";
|
||||||
|
|
||||||
// volume control names
|
// volume control names
|
||||||
var volCount = EISC.UShortOutput[UshortJoin.NumberOfAuxFaders].UShortValue;
|
var volCount = EISC.UShortOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.NumberOfAuxFaders)].UShortValue;
|
||||||
|
|
||||||
//// use Volumes object or?
|
//// use Volumes object or?
|
||||||
//rmProps.VolumeSliderNames = new List<string>();
|
//rmProps.VolumeSliderNames = new List<string>();
|
||||||
@@ -664,18 +475,18 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
// add sources...
|
// add sources...
|
||||||
for (uint i = 0; i <= 19; i++)
|
for (uint i = 0; i <= 19; i++)
|
||||||
{
|
{
|
||||||
var name = EISC.StringOutput[StringJoin.SourceNameJoinStart + i].StringValue;
|
var name = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceNameJoinStart) + i].StringValue;
|
||||||
if (EISC.BooleanOutput[BoolJoin.UseSourceEnabled].BoolValue
|
if (EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.UseSourceEnabled)].BoolValue
|
||||||
&& !EISC.BooleanOutput[BoolJoin.SourceIsEnabledJoinStart + i].BoolValue)
|
&& !EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceIsEnabledJoinStart) + i].BoolValue)
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
else if(!EISC.BooleanOutput[BoolJoin.UseSourceEnabled].BoolValue && string.IsNullOrEmpty(name))
|
else if(!EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.UseSourceEnabled)].BoolValue && string.IsNullOrEmpty(name))
|
||||||
break;
|
break;
|
||||||
var icon = EISC.StringOutput[StringJoin.SourceIconJoinStart + i].StringValue;
|
var icon = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceIconJoinStart) + i].StringValue;
|
||||||
var key = EISC.StringOutput[StringJoin.SourceKeyJoinStart + i].StringValue;
|
var key = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceKeyJoinStart) + i].StringValue;
|
||||||
var type = EISC.StringOutput[StringJoin.SourceTypeJoinStart + i].StringValue;
|
var type = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceTypeJoinStart) + i].StringValue;
|
||||||
var disableShare = EISC.BooleanOutput[BoolJoin.SourceShareDisableJoinStart + i].BoolValue;
|
var disableShare = EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceShareDisableJoinStart) + i].BoolValue;
|
||||||
|
|
||||||
Debug.Console(0, this, "Adding source {0} '{1}'", key, name);
|
Debug.Console(0, this, "Adding source {0} '{1}'", key, name);
|
||||||
var newSLI = new SourceListItem{
|
var newSLI = new SourceListItem{
|
||||||
@@ -717,14 +528,14 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
var acFavs = new List<PepperDash.Essentials.Devices.Common.Codec.CodecActiveCallItem>();
|
var acFavs = new List<PepperDash.Essentials.Devices.Common.Codec.CodecActiveCallItem>();
|
||||||
for (uint i = 0; i < 4; i++)
|
for (uint i = 0; i < 4; i++)
|
||||||
{
|
{
|
||||||
if (!EISC.GetBool(BoolJoin.SpeedDialVisibleStartJoin + i))
|
if (!EISC.GetBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SpeedDialVisibleStartJoin) + i))
|
||||||
{
|
{
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
acFavs.Add(new PepperDash.Essentials.Devices.Common.Codec.CodecActiveCallItem()
|
acFavs.Add(new PepperDash.Essentials.Devices.Common.Codec.CodecActiveCallItem()
|
||||||
{
|
{
|
||||||
Name = EISC.GetString(StringJoin.SpeedDialNameStartJoin + i),
|
Name = EISC.GetString(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SpeedDialNameStartJoin) + i),
|
||||||
Number = EISC.GetString(StringJoin.SpeedDialNumberStartJoin + i),
|
Number = EISC.GetString(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SpeedDialNumberStartJoin) + i),
|
||||||
Type = PepperDash.Essentials.Devices.Common.Codec.eCodecCallType.Audio
|
Type = PepperDash.Essentials.Devices.Common.Codec.eCodecCallType.Audio
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -756,7 +567,7 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
var camsProps = new List<object>();
|
var camsProps = new List<object>();
|
||||||
for (uint i = 0; i < 9; i++)
|
for (uint i = 0; i < 9; i++)
|
||||||
{
|
{
|
||||||
var name = EISC.GetString(i + StringJoin.CameraNearNameStart);
|
var name = EISC.GetString(i + JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.CameraNearNameStart));
|
||||||
if (!string.IsNullOrEmpty(name))
|
if (!string.IsNullOrEmpty(name))
|
||||||
{
|
{
|
||||||
camsProps.Add(new
|
camsProps.Add(new
|
||||||
@@ -766,7 +577,7 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
var farName = EISC.GetString(StringJoin.CameraFarName);
|
var farName = EISC.GetString(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.CameraFarName));
|
||||||
if (!string.IsNullOrEmpty(farName))
|
if (!string.IsNullOrEmpty(farName))
|
||||||
{
|
{
|
||||||
camsProps.Add(new
|
camsProps.Add(new
|
||||||
@@ -874,7 +685,7 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
{
|
{
|
||||||
if (ConfigIsLoaded)
|
if (ConfigIsLoaded)
|
||||||
{
|
{
|
||||||
var count = EISC.UShortOutput[UshortJoin.NumberOfAuxFaders].UShortValue;
|
var count = EISC.UShortOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.NumberOfAuxFaders)].UShortValue;
|
||||||
|
|
||||||
Debug.Console(1, this, "The Fader Count is : {0}", count);
|
Debug.Console(1, this, "The Fader Count is : {0}", count);
|
||||||
|
|
||||||
@@ -882,7 +693,11 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
|
|
||||||
// Create auxFaders
|
// Create auxFaders
|
||||||
var auxFaderDict = new Dictionary<string, Volume>();
|
var auxFaderDict = new Dictionary<string, Volume>();
|
||||||
for (uint i = 2; i <= count; i++)
|
|
||||||
|
var volumeStart = JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart);
|
||||||
|
var volumeEnd = JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart) + JoinMap.GetJoinSpanForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart);
|
||||||
|
|
||||||
|
for (uint i = volumeStart; i <= count; i++)
|
||||||
{
|
{
|
||||||
auxFaderDict.Add("level-" + i,
|
auxFaderDict.Add("level-" + i,
|
||||||
new Volume("level-" + i,
|
new Volume("level-" + i,
|
||||||
@@ -896,22 +711,22 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
var volumes = new Volumes();
|
var volumes = new Volumes();
|
||||||
|
|
||||||
volumes.Master = new Volume("master",
|
volumes.Master = new Volume("master",
|
||||||
EISC.UShortOutput[UshortJoin.MasterVolumeLevel].UShortValue,
|
EISC.UShortOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume)].UShortValue,
|
||||||
EISC.BooleanOutput[BoolJoin.MasterVolumeIsMuted].BoolValue,
|
EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume)].BoolValue,
|
||||||
EISC.StringOutput[1].StringValue,
|
EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume)].StringValue,
|
||||||
true,
|
true,
|
||||||
"something.png");
|
"something.png");
|
||||||
volumes.Master.HasPrivacyMute = true;
|
volumes.Master.HasPrivacyMute = true;
|
||||||
volumes.Master.PrivacyMuted = EISC.BooleanOutput[BoolJoin.PrivacyMute].BoolValue;
|
volumes.Master.PrivacyMuted = EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.PrivacyMute)].BoolValue;
|
||||||
|
|
||||||
volumes.AuxFaders = auxFaderDict;
|
volumes.AuxFaders = auxFaderDict;
|
||||||
volumes.NumberOfAuxFaders = EISC.UShortInput[UshortJoin.NumberOfAuxFaders].UShortValue;
|
volumes.NumberOfAuxFaders = EISC.UShortInput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.NumberOfAuxFaders)].UShortValue;
|
||||||
|
|
||||||
PostStatusMessage(new
|
PostStatusMessage(new
|
||||||
{
|
{
|
||||||
activityMode = GetActivityMode(),
|
activityMode = GetActivityMode(),
|
||||||
isOn = EISC.BooleanOutput[BoolJoin.RoomIsOn].BoolValue,
|
isOn = EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.RoomIsOn)].BoolValue,
|
||||||
selectedSourceKey = EISC.StringOutput[StringJoin.SelectedSourceKey].StringValue,
|
selectedSourceKey = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SelectedSourceKey)].StringValue,
|
||||||
volumes = volumes
|
volumes = volumes
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -930,9 +745,9 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
int GetActivityMode()
|
int GetActivityMode()
|
||||||
{
|
{
|
||||||
if (EISC.BooleanOutput[BoolJoin.ActivityPhoneCall].BoolValue) return 2;
|
if (EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityPhoneCall)].BoolValue) return 2;
|
||||||
else if (EISC.BooleanOutput[BoolJoin.ActivityShare].BoolValue) return 1;
|
else if (EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityShare)].BoolValue) return 1;
|
||||||
else if (EISC.BooleanOutput[BoolJoin.ActivityVideoCall].BoolValue) return 3;
|
else if (EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityVideoCall)].BoolValue) return 3;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1009,8 +824,8 @@ namespace PepperDash.Essentials.Room.MobileControl
|
|||||||
protected override void UserCodeChange()
|
protected override void UserCodeChange()
|
||||||
{
|
{
|
||||||
Debug.Console(1, this, "Server user code changed: {0}", UserCode);
|
Debug.Console(1, this, "Server user code changed: {0}", UserCode);
|
||||||
EISC.StringInput[StringJoin.UserCodeToSystem].StringValue = UserCode;
|
EISC.StringInput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.UserCodeToSystem)].StringValue = UserCode;
|
||||||
EISC.StringInput[StringJoin.ServerUrl].StringValue = Parent.Config.ClientAppUrl;
|
EISC.StringInput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ServerUrl)].StringValue = Parent.Config.ClientAppUrl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -18,7 +18,7 @@ namespace PepperDash.Essentials.AppServer
|
|||||||
public const string ClientJoined = "ClientJoined";
|
public const string ClientJoined = "ClientJoined";
|
||||||
public const string ActivityShare = "ActivityShare";
|
public const string ActivityShare = "ActivityShare";
|
||||||
public const string ActivityPhoneCall = "ActivityPhoneCall";
|
public const string ActivityPhoneCall = "ActivityPhoneCall";
|
||||||
public const string ActivtyVideoCall = "ActivityVideoCall";
|
public const string ActivityVideoCall = "ActivityVideoCall";
|
||||||
public const string MasterVolume = "MasterVolumeMute";
|
public const string MasterVolume = "MasterVolumeMute";
|
||||||
public const string VolumeJoinStart = "VolumeMutesJoinStart";
|
public const string VolumeJoinStart = "VolumeMutesJoinStart";
|
||||||
public const string ShutdownCancel = "ShutdownCancel";
|
public const string ShutdownCancel = "ShutdownCancel";
|
||||||
@@ -67,15 +67,16 @@ namespace PepperDash.Essentials.AppServer
|
|||||||
Joins.Add(ClientJoined, new JoinMetadata() { JoinNumber = 42, Label = "Client Joined", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
Joins.Add(ClientJoined, new JoinMetadata() { JoinNumber = 42, Label = "Client Joined", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
Joins.Add(ActivityShare, new JoinMetadata() { JoinNumber = 51, Label = "Activity Share", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
Joins.Add(ActivityShare, new JoinMetadata() { JoinNumber = 51, Label = "Activity Share", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
Joins.Add(ActivityPhoneCall, new JoinMetadata() { JoinNumber = 52, Label = "Activity Phone Call", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
Joins.Add(ActivityPhoneCall, new JoinMetadata() { JoinNumber = 52, Label = "Activity Phone Call", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
Joins.Add(ActivtyVideoCall, new JoinMetadata() { JoinNumber = 53, Label = "Activity Video Call", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
Joins.Add(ActivityVideoCall, new JoinMetadata() { JoinNumber = 53, Label = "Activity Video Call", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
Joins.Add(MasterVolume, new JoinMetadata() { JoinNumber = 1, Label = "Master Volume Mute Toggle/FB/Level/Label", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.DigitalAnalogSerial });
|
Joins.Add(MasterVolume, new JoinMetadata() { JoinNumber = 1, Label = "Master Volume Mute Toggle/FB/Level/Label", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.DigitalAnalogSerial });
|
||||||
Joins.Add(VolumeJoinStart, new JoinMetadata() { JoinNumber = 2, Label = "Volume Mute Toggle/FB/Level/Label", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 9, JoinType = eJoinType.DigitalAnalogSerial });
|
Joins.Add(VolumeJoinStart, new JoinMetadata() { JoinNumber = 2, Label = "Volume Mute Toggle/FB/Level/Label", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 8, JoinType = eJoinType.DigitalAnalogSerial });
|
||||||
Joins.Add(ShutdownCancel, new JoinMetadata() { JoinNumber = 61, Label = "Shutdown Cancel", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
Joins.Add(ShutdownCancel, new JoinMetadata() { JoinNumber = 61, Label = "Shutdown Cancel", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
Joins.Add(ShutdownEnd, new JoinMetadata() { JoinNumber = 62, Label = "Shutdown End", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
Joins.Add(ShutdownEnd, new JoinMetadata() { JoinNumber = 62, Label = "Shutdown End", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
Joins.Add(ShutdownStart, new JoinMetadata() { JoinNumber = 63, Label = "ShutdownStart", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
Joins.Add(ShutdownStart, new JoinMetadata() { JoinNumber = 63, Label = "ShutdownStart", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
Joins.Add(SourceHasChanged, new JoinMetadata() { JoinNumber = 71, Label = "Source Changed", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
Joins.Add(SourceHasChanged, new JoinMetadata() { JoinNumber = 71, Label = "Source Changed", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
// Possibly move these to Audio Codec Messenger
|
// Possibly move these to Audio Codec Messenger
|
||||||
Joins.Add(SpeedDialVisibleStartJoin, new JoinMetadata() { JoinNumber = 261, Label = "Speed Dial Visible", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 10, JoinType = eJoinType.Digital });
|
Joins.Add(SpeedDialVisibleStartJoin, new JoinMetadata() { JoinNumber = 261, Label = "Speed Dial Visible", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 10, JoinType = eJoinType.Digital });
|
||||||
|
//
|
||||||
Joins.Add(ConfigIsReady, new JoinMetadata() { JoinNumber = 501, Label = "Config info from SIMPL is ready", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
Joins.Add(ConfigIsReady, new JoinMetadata() { JoinNumber = 501, Label = "Config info from SIMPL is ready", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
Joins.Add(HideVideoConfRecents, new JoinMetadata() { JoinNumber = 502, Label = "Hide Video Conference Recents", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
Joins.Add(HideVideoConfRecents, new JoinMetadata() { JoinNumber = 502, Label = "Hide Video Conference Recents", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
Joins.Add(ShowCameraWhenNotInCall, new JoinMetadata() { JoinNumber = 503, Label = "Show camera when not in call", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
Joins.Add(ShowCameraWhenNotInCall, new JoinMetadata() { JoinNumber = 503, Label = "Show camera when not in call", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
@@ -93,6 +94,7 @@ namespace PepperDash.Essentials.AppServer
|
|||||||
// Possibly move these to Audio Codec Messenger
|
// Possibly move these to Audio Codec Messenger
|
||||||
Joins.Add(SpeedDialNameStartJoin, new JoinMetadata() { JoinNumber = 241, Label = "Speed Dial names", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 10, JoinType = eJoinType.Serial });
|
Joins.Add(SpeedDialNameStartJoin, new JoinMetadata() { JoinNumber = 241, Label = "Speed Dial names", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 10, JoinType = eJoinType.Serial });
|
||||||
Joins.Add(SpeedDialNumberStartJoin, new JoinMetadata() { JoinNumber = 251, Label = "Speed Dial numbers", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 10, JoinType = eJoinType.Serial });
|
Joins.Add(SpeedDialNumberStartJoin, new JoinMetadata() { JoinNumber = 251, Label = "Speed Dial numbers", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 10, JoinType = eJoinType.Serial });
|
||||||
|
//
|
||||||
Joins.Add(UserCodeToSystem, new JoinMetadata() { JoinNumber = 401, Label = "User Ccde", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
|
Joins.Add(UserCodeToSystem, new JoinMetadata() { JoinNumber = 401, Label = "User Ccde", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
|
||||||
Joins.Add(ServerUrl, new JoinMetadata() { JoinNumber = 402, Label = "Server URL", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
|
Joins.Add(ServerUrl, new JoinMetadata() { JoinNumber = 402, Label = "Server URL", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
|
||||||
Joins.Add(ConfigRoomName, new JoinMetadata() { JoinNumber = 501, Label = "Room Nnme", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
|
Joins.Add(ConfigRoomName, new JoinMetadata() { JoinNumber = 501, Label = "Room Nnme", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
|
||||||
@@ -105,8 +107,10 @@ namespace PepperDash.Essentials.AppServer
|
|||||||
Joins.Add(SourceKeyJoinStart, new JoinMetadata() { JoinNumber = 641, Label = "Source Keys", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 20, JoinType = eJoinType.Serial });
|
Joins.Add(SourceKeyJoinStart, new JoinMetadata() { JoinNumber = 641, Label = "Source Keys", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 20, JoinType = eJoinType.Serial });
|
||||||
Joins.Add(SourceTypeJoinStart, new JoinMetadata() { JoinNumber = 661, Label = "Source Types", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 20, JoinType = eJoinType.Serial });
|
Joins.Add(SourceTypeJoinStart, new JoinMetadata() { JoinNumber = 661, Label = "Source Types", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 20, JoinType = eJoinType.Serial });
|
||||||
|
|
||||||
|
// Possibly move these to Audio Codec Messenger
|
||||||
Joins.Add(CameraNearNameStart, new JoinMetadata() { JoinNumber = 761, Label = "Near End Camera Names", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 10, JoinType = eJoinType.Serial });
|
Joins.Add(CameraNearNameStart, new JoinMetadata() { JoinNumber = 761, Label = "Near End Camera Names", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 10, JoinType = eJoinType.Serial });
|
||||||
Joins.Add(CameraNearNameStart, new JoinMetadata() { JoinNumber = 770, Label = "Far End Camera Name", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
|
Joins.Add(CameraFarName, new JoinMetadata() { JoinNumber = 770, Label = "Far End Camera Name", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
|
||||||
|
//
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void OffsetJoinNumbers(uint joinStart)
|
public override void OffsetJoinNumbers(uint joinStart)
|
||||||
|
|||||||
@@ -26,13 +26,19 @@ namespace PepperDash.Essentials.Bridges
|
|||||||
public const string PresetSaveStart = "PresetSaveStart";
|
public const string PresetSaveStart = "PresetSaveStart";
|
||||||
public const string PresetLabelStart = "PresetReacllStgart";
|
public const string PresetLabelStart = "PresetReacllStgart";
|
||||||
public const string NumberOfPresets = "NumberOfPresets";
|
public const string NumberOfPresets = "NumberOfPresets";
|
||||||
|
public const string CameraModeAuto = "CameraModeAuto";
|
||||||
|
public const string CameraModeManual = "CameraModeManual";
|
||||||
|
public const string CameraModeOff = "CameraModeOff";
|
||||||
|
public const string SupportsCameraModeAuto = "SupportsCameraModeAuto";
|
||||||
|
public const string SupportsCameraModeOff = "SupportsCameraModeOff";
|
||||||
|
public const string SupportsPresets = "SupportsPresets";
|
||||||
|
|
||||||
public CameraControllerJoinMap()
|
public CameraControllerJoinMap()
|
||||||
{
|
{
|
||||||
Joins.Add(TiltUp, new JoinMetadata()
|
|
||||||
{ JoinNumber = 1, Label = "Tilt Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
|
||||||
Joins.Add(TiltDown, new JoinMetadata()
|
Joins.Add(TiltDown, new JoinMetadata()
|
||||||
{ JoinNumber = 2, Label = "TiltDown", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
{ JoinNumber = 1, Label = "Tilt Up", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
|
Joins.Add(TiltDown, new JoinMetadata()
|
||||||
|
{ JoinNumber = 2, Label = "Tilt Down", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
Joins.Add(PanLeft, new JoinMetadata()
|
Joins.Add(PanLeft, new JoinMetadata()
|
||||||
{ JoinNumber = 3, Label = "Pan Left", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
{ JoinNumber = 3, Label = "Pan Left", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
Joins.Add(PanRight, new JoinMetadata()
|
Joins.Add(PanRight, new JoinMetadata()
|
||||||
@@ -60,6 +66,19 @@ namespace PepperDash.Essentials.Bridges
|
|||||||
Joins.Add(NumberOfPresets, new JoinMetadata()
|
Joins.Add(NumberOfPresets, new JoinMetadata()
|
||||||
{ JoinNumber = 11, Label = "Number of Presets", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Analog });
|
{ JoinNumber = 11, Label = "Number of Presets", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Analog });
|
||||||
|
|
||||||
|
Joins.Add(CameraModeAuto, new JoinMetadata()
|
||||||
|
{ JoinNumber = 51, Label = "Camera Mode Auto", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
|
Joins.Add(CameraModeManual, new JoinMetadata()
|
||||||
|
{ JoinNumber = 52, Label = "Camera Mode Manual", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
|
Joins.Add(CameraModeOff, new JoinMetadata()
|
||||||
|
{ JoinNumber = 53, Label = "Camera Mode Off", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
|
|
||||||
|
Joins.Add(SupportsCameraModeAuto, new JoinMetadata()
|
||||||
|
{ JoinNumber = 55, Label = "Supports Camera Mode Auto", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
|
Joins.Add(SupportsCameraModeOff, new JoinMetadata()
|
||||||
|
{ JoinNumber = 56, Label = "Supports Camera Mode Off", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
|
Joins.Add(SupportsPresets, new JoinMetadata()
|
||||||
|
{ JoinNumber = 57, Label = "Supports Presets", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void OffsetJoinNumbers(uint joinStart)
|
public override void OffsetJoinNumbers(uint joinStart)
|
||||||
|
|||||||
@@ -111,6 +111,18 @@ namespace PepperDash.Essentials.Core
|
|||||||
else return 0;
|
else return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns the join span for the join with the specified key
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="key"></param>
|
||||||
|
/// <returns></returns>
|
||||||
|
public uint GetJoinSpanForKey(string key)
|
||||||
|
{
|
||||||
|
if (Joins.ContainsKey(key))
|
||||||
|
return Joins[key].JoinSpan;
|
||||||
|
|
||||||
|
else return 0;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user