Updates remaining SIMPL Bridges for MC to JoinMapBaseAdvanced. Updates affected bridges

This commit is contained in:
Neil Dorin
2020-04-01 11:16:27 -06:00
parent 1d00261b1f
commit ed627875a0
6 changed files with 245 additions and 251 deletions

View File

@@ -189,7 +189,7 @@ namespace PepperDash.Essentials.AppServer.Messengers
// Pulse DTMF // Pulse DTMF
AppServerController.AddAction(MessagePath + "/dtmf", new Action<string>(s => AppServerController.AddAction(MessagePath + "/dtmf", new Action<string>(s =>
{ {
var join = JoinMap.Joins[s]; var join = JoinMap.Joins[s];
if (join != null) if (join != null)
{ {
if (join.JoinNumber > 0) if (join.JoinNumber > 0)

View File

@@ -247,11 +247,7 @@ namespace PepperDash.Essentials.AppServer.Messengers
{ {
EISC = eisc; EISC = eisc;
JoinMap = new SIMPLVtcJoinMap(); JoinMap = new SIMPLVtcJoinMap(701);
// TODO: Take in JoinStart value from config
JoinMap.OffsetJoinNumbers(701);
CurrentCallItem = new CodecActiveCallItem(); CurrentCallItem = new CodecActiveCallItem();
CurrentCallItem.Type = eCodecCallType.Video; CurrentCallItem.Type = eCodecCallType.Video;
@@ -265,31 +261,31 @@ namespace PepperDash.Essentials.AppServer.Messengers
protected override void CustomRegisterWithAppServer(MobileControlSystemController appServerController) protected override void CustomRegisterWithAppServer(MobileControlSystemController appServerController)
{ {
var asc = appServerController; var asc = appServerController;
EISC.SetStringSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.HookState), s => EISC.SetStringSigAction(JoinMap.HookState.JoinNumber, s =>
{ {
CurrentCallItem.Status = (eCodecCallStatus)Enum.Parse(typeof(eCodecCallStatus), s, true); CurrentCallItem.Status = (eCodecCallStatus)Enum.Parse(typeof(eCodecCallStatus), s, true);
PostFullStatus(); // SendCallsList(); PostFullStatus(); // SendCallsList();
}); });
EISC.SetStringSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CurrentCallNumber), s => EISC.SetStringSigAction(JoinMap.CurrentCallNumber.JoinNumber, s =>
{ {
CurrentCallItem.Number = s; CurrentCallItem.Number = s;
PostCallsList(); PostCallsList();
}); });
EISC.SetStringSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CurrentCallName), s => EISC.SetStringSigAction(JoinMap.CurrentCallName.JoinNumber, s =>
{ {
CurrentCallItem.Name = s; CurrentCallItem.Name = s;
PostCallsList(); PostCallsList();
}); });
EISC.SetStringSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CallDirection), s => EISC.SetStringSigAction(JoinMap.CallDirection.JoinNumber, s =>
{ {
CurrentCallItem.Direction = (eCodecCallDirection)Enum.Parse(typeof(eCodecCallDirection), s, true); CurrentCallItem.Direction = (eCodecCallDirection)Enum.Parse(typeof(eCodecCallDirection), s, true);
PostCallsList(); PostCallsList();
}); });
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.IncomingCall), b => EISC.SetBoolSigAction(JoinMap.IncomingCall.JoinNumber, b =>
{ {
if (b) if (b)
{ {
@@ -297,8 +293,8 @@ namespace PepperDash.Essentials.AppServer.Messengers
{ {
Direction = eCodecCallDirection.Incoming, Direction = eCodecCallDirection.Incoming,
Id = "-video-incoming", Id = "-video-incoming",
Name = EISC.GetString(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.IncomingCallName)), Name = EISC.GetString(JoinMap.IncomingCallName.JoinNumber),
Number = EISC.GetString(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.IncomingCallNumber)), Number = EISC.GetString(JoinMap.IncomingCallNumber.JoinNumber),
Status = eCodecCallStatus.Ringing, Status = eCodecCallStatus.Ringing,
Type = eCodecCallType.Video Type = eCodecCallType.Video
}; };
@@ -311,14 +307,14 @@ namespace PepperDash.Essentials.AppServer.Messengers
PostCallsList(); PostCallsList();
}); });
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraSupportsAutoMode), b => EISC.SetBoolSigAction(JoinMap.CameraSupportsAutoMode.JoinNumber, b =>
{ {
PostStatusMessage(new PostStatusMessage(new
{ {
cameraSupportsAutoMode = b cameraSupportsAutoMode = b
}); });
}); });
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraSupportsOffMode), b => EISC.SetBoolSigAction(JoinMap.CameraSupportsOffMode.JoinNumber, b =>
{ {
PostStatusMessage(new PostStatusMessage(new
{ {
@@ -327,78 +323,78 @@ namespace PepperDash.Essentials.AppServer.Messengers
}); });
// Directory insanity // Directory insanity
EISC.SetUShortSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryRowCount), u => EISC.SetUShortSigAction(JoinMap.DirectoryRowCount.JoinNumber, u =>
{ {
// The length of the list comes in before the list does. // The length of the list comes in before the list does.
// Splice the sig change operation onto the last string sig that will be changing // Splice the sig change operation onto the last string sig that will be changing
// when the directory entries make it through. // when the directory entries make it through.
if (PreviousDirectoryLength > 0) if (PreviousDirectoryLength > 0)
{ {
EISC.ClearStringSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryEntriesStart) + PreviousDirectoryLength - 1); EISC.ClearStringSigAction(JoinMap.DirectoryEntriesStart.JoinNumber + PreviousDirectoryLength - 1);
} }
EISC.SetStringSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryEntriesStart) + u - 1, s => PostDirectory()); EISC.SetStringSigAction(JoinMap.DirectoryEntriesStart.JoinNumber + u - 1, s => PostDirectory());
PreviousDirectoryLength = u; PreviousDirectoryLength = u;
}); });
EISC.SetStringSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryEntrySelectedName), s => EISC.SetStringSigAction(JoinMap.DirectoryEntrySelectedName.JoinNumber, s =>
{ {
PostStatusMessage(new PostStatusMessage(new
{ {
directoryContactSelected = new directoryContactSelected = new
{ {
name = EISC.GetString(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryEntrySelectedName)), name = EISC.GetString(JoinMap.DirectoryEntrySelectedName.JoinNumber),
} }
}); });
}); });
EISC.SetStringSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryEntrySelectedNumber), s => EISC.SetStringSigAction(JoinMap.DirectoryEntrySelectedNumber.JoinNumber, s =>
{ {
PostStatusMessage(new PostStatusMessage(new
{ {
directoryContactSelected = new directoryContactSelected = new
{ {
number = EISC.GetString(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryEntrySelectedNumber)), number = EISC.GetString(JoinMap.DirectoryEntrySelectedNumber.JoinNumber),
} }
}); });
}); });
EISC.SetStringSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectorySelectedFolderName), s => PostStatusMessage(new EISC.SetStringSigAction(JoinMap.DirectorySelectedFolderName.JoinNumber, s => PostStatusMessage(new
{ {
directorySelectedFolderName = EISC.GetString(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectorySelectedFolderName)) directorySelectedFolderName = EISC.GetString(JoinMap.DirectorySelectedFolderName.JoinNumber)
})); }));
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraModeAuto), () => PostCameraMode()); EISC.SetSigTrueAction(JoinMap.CameraModeAuto.JoinNumber, () => PostCameraMode());
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraModeManual), () => PostCameraMode()); EISC.SetSigTrueAction(JoinMap.CameraModeManual.JoinNumber, () => PostCameraMode());
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraModeOff), () => PostCameraMode()); EISC.SetSigTrueAction(JoinMap.CameraModeOff.JoinNumber, () => PostCameraMode());
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraSelfView), b => PostStatusMessage(new EISC.SetBoolSigAction(JoinMap.CameraSelfView.JoinNumber, b => PostStatusMessage(new
{ {
cameraSelfView = b cameraSelfView = b
})); }));
EISC.SetUShortSigAction(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraNumberSelect), (u) => PostSelectedCamera()); EISC.SetUShortSigAction(JoinMap.CameraNumberSelect.JoinNumber, (u) => PostSelectedCamera());
// 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) =>
AppServerController.AddAction(MessagePath + s, new PressAndHoldAction(b => EISC.SetBool(u, b))); AppServerController.AddAction(MessagePath + s, new PressAndHoldAction(b => EISC.SetBool(u, b)));
addPHAction("/cameraUp", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraTiltUp)); addPHAction("/cameraUp", JoinMap.CameraTiltUp.JoinNumber);
addPHAction("/cameraDown", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraTiltDown)); addPHAction("/cameraDown", JoinMap.CameraTiltDown.JoinNumber);
addPHAction("/cameraLeft", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraPanLeft)); addPHAction("/cameraLeft", JoinMap.CameraPanLeft.JoinNumber);
addPHAction("/cameraRight", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraPanRight)); addPHAction("/cameraRight", JoinMap.CameraPanRight.JoinNumber);
addPHAction("/cameraZoomIn", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraZoomIn)); addPHAction("/cameraZoomIn", JoinMap.CameraZoomIn.JoinNumber);
addPHAction("/cameraZoomOut", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraZoomOut)); addPHAction("/cameraZoomOut", JoinMap.CameraZoomOut.JoinNumber);
// Add straight pulse calls using helper action // Add straight pulse calls using helper action
Action<string, uint> addAction = (s, u) => Action<string, uint> addAction = (s, u) =>
AppServerController.AddAction(MessagePath + s, new Action(() => EISC.PulseBool(u, 100))); AppServerController.AddAction(MessagePath + s, new Action(() => EISC.PulseBool(u, 100)));
addAction("/endCallById", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.EndCall)); addAction("/endCallById", JoinMap.EndCall.JoinNumber);
addAction("/endAllCalls", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.EndCall)); addAction("/endAllCalls", JoinMap.EndCall.JoinNumber);
addAction("/acceptById", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.IncomingAnswer)); addAction("/acceptById", JoinMap.IncomingAnswer.JoinNumber);
addAction("/rejectById", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.IncomingReject)); addAction("/rejectById", JoinMap.IncomingReject.JoinNumber);
var speeddialStart = JoinMap.GetJoinForKey(SIMPLVtcJoinMap.SpeedDialStart); var speeddialStart = JoinMap.SpeedDialStart.JoinNumber;
var speeddialEnd = JoinMap.GetJoinForKey(SIMPLVtcJoinMap.SpeedDialStart) + JoinMap.GetJoinSpanForKey(SIMPLVtcJoinMap.SpeedDialStart); var speeddialEnd = JoinMap.SpeedDialStart.JoinNumber + JoinMap.SpeedDialStart.JoinSpan;
var speedDialIndex = 1; var speedDialIndex = 1;
for (uint i = speeddialStart; i < speeddialEnd; i++) for (uint i = speeddialStart; i < speeddialEnd; i++)
@@ -407,18 +403,18 @@ namespace PepperDash.Essentials.AppServer.Messengers
speedDialIndex++; speedDialIndex++;
} }
addAction("/cameraModeAuto", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraModeAuto)); addAction("/cameraModeAuto", JoinMap.CameraModeAuto.JoinNumber);
addAction("/cameraModeManual", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraModeManual)); addAction("/cameraModeManual", JoinMap.CameraModeManual.JoinNumber);
addAction("/cameraModeOff", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraModeOff)); addAction("/cameraModeOff", JoinMap.CameraModeOff.JoinNumber);
addAction("/cameraSelfView", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraSelfView)); addAction("/cameraSelfView", JoinMap.CameraSelfView.JoinNumber);
addAction("/cameraLayout", JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraLayout)); addAction("/cameraLayout", JoinMap.CameraLayout.JoinNumber);
asc.AddAction("/cameraSelect", new Action<string>(SelectCamera)); asc.AddAction("/cameraSelect", new Action<string>(SelectCamera));
// camera presets // camera presets
for(uint i = 0; i < 6; i++) for(uint i = 0; i < 6; i++)
{ {
addAction("/cameraPreset" + (i + 1), JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraPresetStart) + i); addAction("/cameraPreset" + (i + 1), JoinMap.CameraPresetStart.JoinNumber + i);
} }
asc.AddAction(MessagePath + "/isReady", new Action(PostIsReady)); asc.AddAction(MessagePath + "/isReady", new Action(PostIsReady));
@@ -426,28 +422,31 @@ namespace PepperDash.Essentials.AppServer.Messengers
asc.AddAction(MessagePath + "/fullStatus", new Action(PostFullStatus)); asc.AddAction(MessagePath + "/fullStatus", new Action(PostFullStatus));
// Dial on string // Dial on string
asc.AddAction(MessagePath + "/dial", new Action<string>(s => asc.AddAction(MessagePath + "/dial", new Action<string>(s =>
EISC.SetString(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CurrentDialString), s))); EISC.SetString(JoinMap.CurrentDialString.JoinNumber, s)));
// Pulse DTMF // Pulse DTMF
AppServerController.AddAction(MessagePath + "/dtmf", new Action<string>(s => AppServerController.AddAction(MessagePath + "/dtmf", new Action<string>(s =>
{ {
var join = JoinMap.GetJoinForKey(s); var join = JoinMap.Joins[s];
if (join > 0) if (join != null)
{ {
EISC.PulseBool(join, 100); if (join.JoinNumber > 0)
{
EISC.PulseBool(join.JoinNumber, 100);
}
} }
})); }));
// Directory madness // Directory madness
asc.AddAction(MessagePath + "/directoryRoot", new Action(() => EISC.PulseBool(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryRoot)))); asc.AddAction(MessagePath + "/directoryRoot", new Action(() => EISC.PulseBool(JoinMap.DirectoryRoot.JoinNumber)));
asc.AddAction(MessagePath + "/directoryBack", new Action(() => EISC.PulseBool(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryFolderBack)))); asc.AddAction(MessagePath + "/directoryBack", new Action(() => EISC.PulseBool(JoinMap.DirectoryFolderBack.JoinNumber)));
asc.AddAction(MessagePath + "/directoryById", new Action<string>(s => asc.AddAction(MessagePath + "/directoryById", new Action<string>(s =>
{ {
// the id should contain the line number to forward to simpl // the id should contain the line number to forward to simpl
try try
{ {
var u = ushort.Parse(s); var u = ushort.Parse(s);
EISC.SetUshort(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectorySelectRow), u); EISC.SetUshort(JoinMap.DirectorySelectRow.JoinNumber, u);
EISC.PulseBool(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryLineSelected)); EISC.PulseBool(JoinMap.DirectoryLineSelected.JoinNumber);
} }
catch (Exception) catch (Exception)
{ {
@@ -461,8 +460,8 @@ namespace PepperDash.Essentials.AppServer.Messengers
try try
{ {
var u = ushort.Parse(s); var u = ushort.Parse(s);
EISC.SetUshort(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectorySelectRow), u); EISC.SetUshort(JoinMap.DirectorySelectRow.JoinNumber, u);
EISC.PulseBool(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryLineSelected)); EISC.PulseBool(JoinMap.DirectoryLineSelected.JoinNumber);
} }
catch catch
{ {
@@ -470,17 +469,17 @@ namespace PepperDash.Essentials.AppServer.Messengers
} }
})); }));
asc.AddAction(MessagePath + "/directoryDialContact", new Action(() => { asc.AddAction(MessagePath + "/directoryDialContact", new Action(() => {
EISC.PulseBool(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryDialSelectedLine)); EISC.PulseBool(JoinMap.DirectoryDialSelectedLine.JoinNumber);
})); }));
asc.AddAction(MessagePath + "/getDirectory", new Action(() => asc.AddAction(MessagePath + "/getDirectory", new Action(() =>
{ {
if (EISC.GetUshort(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryRowCount)) > 0) if (EISC.GetUshort(JoinMap.DirectoryRowCount.JoinNumber) > 0)
{ {
PostDirectory(); PostDirectory();
} }
else else
{ {
EISC.PulseBool(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryRoot)); EISC.PulseBool(JoinMap.DirectoryRoot.JoinNumber);
} }
})); }));
} }
@@ -494,18 +493,18 @@ namespace PepperDash.Essentials.AppServer.Messengers
{ {
calls = GetCurrentCallList(), calls = GetCurrentCallList(),
cameraMode = GetCameraMode(), cameraMode = GetCameraMode(),
cameraSelfView = EISC.GetBool(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraSelfView)), cameraSelfView = EISC.GetBool(JoinMap.CameraSelfView.JoinNumber),
cameraSupportsAutoMode = EISC.GetBool(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraSupportsAutoMode)), cameraSupportsAutoMode = EISC.GetBool(JoinMap.CameraSupportsAutoMode.JoinNumber),
cameraSupportsOffMode = EISC.GetBool(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraSupportsOffMode)), cameraSupportsOffMode = EISC.GetBool(JoinMap.CameraSupportsOffMode.JoinNumber),
currentCallString = EISC.GetString(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CurrentCallNumber)), currentCallString = EISC.GetString(JoinMap.CurrentCallNumber.JoinNumber),
currentDialString = EISC.GetString(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CurrentDialString)), currentDialString = EISC.GetString(JoinMap.CurrentDialString.JoinNumber),
directoryContactSelected = new directoryContactSelected = new
{ {
name = EISC.GetString(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryEntrySelectedName)), name = EISC.GetString(JoinMap.DirectoryEntrySelectedName.JoinNumber),
number = EISC.GetString(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryEntrySelectedNumber)) number = EISC.GetString(JoinMap.DirectoryEntrySelectedNumber.JoinNumber)
}, },
directorySelectedFolderName = EISC.GetString(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectorySelectedFolderName)), directorySelectedFolderName = EISC.GetString(JoinMap.DirectorySelectedFolderName.JoinNumber),
isInCall = EISC.GetString(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.HookState)) == "Connected", isInCall = EISC.GetString(JoinMap.HookState.JoinNumber) == "Connected",
hasDirectory = true, hasDirectory = true,
hasDirectorySearch = false, hasDirectorySearch = false,
hasRecents = !EISC.BooleanOutput[502].BoolValue, hasRecents = !EISC.BooleanOutput[502].BoolValue,
@@ -520,11 +519,11 @@ namespace PepperDash.Essentials.AppServer.Messengers
/// </summary> /// </summary>
void PostDirectory() void PostDirectory()
{ {
var u = EISC.GetUshort(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryRowCount)); var u = EISC.GetUshort(JoinMap.DirectoryRowCount.JoinNumber);
var items = new List<object>(); var items = new List<object>();
for (uint i = 0; i < u; i++) for (uint i = 0; i < u; i++)
{ {
var name = EISC.GetString(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryEntriesStart) + i); var name = EISC.GetString(JoinMap.DirectoryEntriesStart.JoinNumber + i);
var id = (i + 1).ToString(); var id = (i + 1).ToString();
// is folder or contact? // is folder or contact?
if (name.StartsWith("[+]")) if (name.StartsWith("[+]"))
@@ -549,7 +548,7 @@ namespace PepperDash.Essentials.AppServer.Messengers
{ {
currentDirectory = new currentDirectory = new
{ {
isRootDirectory = EISC.GetBool(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.DirectoryIsRoot)), isRootDirectory = EISC.GetBool(JoinMap.DirectoryIsRoot.JoinNumber),
directoryResults = items directoryResults = items
} }
}; };
@@ -574,8 +573,8 @@ namespace PepperDash.Essentials.AppServer.Messengers
string GetCameraMode() string GetCameraMode()
{ {
string m; string m;
if (EISC.GetBool(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraModeAuto))) m = eCameraControlMode.Auto.ToString().ToLower(); if (EISC.GetBool(JoinMap.CameraModeAuto.JoinNumber)) m = eCameraControlMode.Auto.ToString().ToLower();
else if (EISC.GetBool(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraModeManual))) m = eCameraControlMode.Manual.ToString().ToLower(); else if (EISC.GetBool(JoinMap.CameraModeManual.JoinNumber)) m = eCameraControlMode.Manual.ToString().ToLower();
else m = eCameraControlMode.Off.ToString().ToLower(); else m = eCameraControlMode.Off.ToString().ToLower();
return m; return m;
} }
@@ -593,7 +592,7 @@ namespace PepperDash.Essentials.AppServer.Messengers
/// </summary> /// </summary>
string GetSelectedCamera() string GetSelectedCamera()
{ {
var num = EISC.GetUshort(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraNumberSelect)); var num = EISC.GetUshort(JoinMap.CameraNumberSelect.JoinNumber);
string m; string m;
if (num == 100) if (num == 100)
{ {
@@ -637,11 +636,11 @@ namespace PepperDash.Essentials.AppServer.Messengers
var cam = s.Substring(6); var cam = s.Substring(6);
if (cam.ToLower() == "far") if (cam.ToLower() == "far")
{ {
EISC.SetUshort(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraNumberSelect), 100); EISC.SetUshort(JoinMap.CameraNumberSelect.JoinNumber, 100);
} }
else else
{ {
EISC.SetUshort(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.CameraNumberSelect), UInt16.Parse(cam)); EISC.SetUshort(JoinMap.CameraNumberSelect.JoinNumber, UInt16.Parse(cam));
} }
} }
@@ -656,7 +655,8 @@ namespace PepperDash.Essentials.AppServer.Messengers
{ {
list.Add(CurrentCallItem); list.Add(CurrentCallItem);
} }
if (EISC.GetBool(JoinMap.GetJoinForKey(SIMPLVtcJoinMap.IncomingCall))) { if (EISC.GetBool(JoinMap.IncomingCall.JoinNumber))
{
} }
return list; return list;

View File

@@ -38,7 +38,7 @@ namespace PepperDash.Essentials.Room.MobileControl
public override string RoomName public override string RoomName
{ {
get { get {
var name = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigRoomName)].StringValue; var name = EISC.StringOutput[JoinMap.ConfigRoomName.JoinNumber].StringValue;
return string.IsNullOrEmpty(name) ? "Not Loaded" : name; return string.IsNullOrEmpty(name) ? "Not Loaded" : name;
} }
} }
@@ -65,10 +65,7 @@ namespace PepperDash.Essentials.Room.MobileControl
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);
JoinMap = new MobileControlSIMPLRoomJoinMap(); JoinMap = new MobileControlSIMPLRoomJoinMap(1);
// TODO: Possibly set up alternate constructor or take in joinMapKey and joinStart properties in constructor
JoinMap.OffsetJoinNumbers(1);
SourceBridge = new MobileControlDdvc01DeviceBridge(key + "-sourceBridge", "DDVC01 source bridge", EISC); SourceBridge = new MobileControlDdvc01DeviceBridge(key + "-sourceBridge", "DDVC01 source bridge", EISC);
DeviceManager.AddDevice(SourceBridge); DeviceManager.AddDevice(SourceBridge);
@@ -105,19 +102,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[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsReady)].BoolValue, EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsLocal)].BoolValue); a.DeviceOnLine, EISC.BooleanOutput[JoinMap.ConfigIsReady.JoinNumber].BoolValue, EISC.BooleanOutput[JoinMap.ConfigIsLocal.JoinNumber].BoolValue);
if (a.DeviceOnLine && EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsReady)].BoolValue) if (a.DeviceOnLine && EISC.BooleanOutput[JoinMap.ConfigIsReady.JoinNumber].BoolValue)
LoadConfigValues(); LoadConfigValues();
if (a.DeviceOnLine && EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsLocal)].BoolValue) if (a.DeviceOnLine && EISC.BooleanOutput[JoinMap.ConfigIsLocal.JoinNumber].BoolValue)
UseEssentialsConfig(); UseEssentialsConfig();
}; };
// load config if it's already there // load config if it's already there
if (EISC.IsOnline && EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsReady)].BoolValue) // || EISC.BooleanInput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsReady].BoolValue) if (EISC.IsOnline && EISC.BooleanOutput[JoinMap.ConfigIsReady.JoinNumber].BoolValue) // || EISC.BooleanInput[JoinMap.ConfigIsReady].BoolValue)
LoadConfigValues(); LoadConfigValues();
if (EISC.IsOnline && EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsLocal)].BoolValue) if (EISC.IsOnline && EISC.BooleanOutput[JoinMap.ConfigIsLocal.JoinNumber].BoolValue)
{ {
UseEssentialsConfig(); UseEssentialsConfig();
} }
@@ -169,36 +166,36 @@ namespace PepperDash.Essentials.Room.MobileControl
/// </summary> /// </summary>
void SetupFunctions() void SetupFunctions()
{ {
Parent.AddAction(@"/room/room1/promptForCode", new Action(() => EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.PromptForCode)))); Parent.AddAction(@"/room/room1/promptForCode", new Action(() => EISC.PulseBool(JoinMap.PromptForCode.JoinNumber)));
Parent.AddAction(@"/room/room1/clientJoined", new Action(() => EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ClientJoined)))); Parent.AddAction(@"/room/room1/clientJoined", new Action(() => EISC.PulseBool(JoinMap.ClientJoined.JoinNumber)));
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(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SelectedSourceKey), c.SourceListItem); EISC.SetString(JoinMap.CurrentSourceKey.JoinNumber, c.SourceListItem);
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceHasChanged)); EISC.PulseBool(JoinMap.SourceHasChanged.JoinNumber);
})); }));
Parent.AddAction(@"/room/room1/defaultsource", new Action(() => Parent.AddAction(@"/room/room1/defaultsource", new Action(() =>
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityShare)))); EISC.PulseBool(JoinMap.ActivityShare.JoinNumber)));
Parent.AddAction(@"/room/room1/activityPhone", new Action(() => Parent.AddAction(@"/room/room1/activityPhone", new Action(() =>
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityPhoneCall)))); EISC.PulseBool(JoinMap.ActivityPhoneCall.JoinNumber)));
Parent.AddAction(@"/room/room1/activityVideo", new Action(() => Parent.AddAction(@"/room/room1/activityVideo", new Action(() =>
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityVideoCall)))); EISC.PulseBool(JoinMap.ActivityVideoCall.JoinNumber)));
Parent.AddAction(@"/room/room1/volumes/master/level", new Action<ushort>(u => Parent.AddAction(@"/room/room1/volumes/master/level", new Action<ushort>(u =>
EISC.SetUshort(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume), u))); EISC.SetUshort(JoinMap.MasterVolume.JoinNumber, u)));
Parent.AddAction(@"/room/room1/volumes/master/muteToggle", new Action(() => Parent.AddAction(@"/room/room1/volumes/master/muteToggle", new Action(() =>
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume)))); EISC.PulseBool(JoinMap.MasterVolume.JoinNumber)));
Parent.AddAction(@"/room/room1/volumes/master/privacyMuteToggle", new Action(() => Parent.AddAction(@"/room/room1/volumes/master/privacyMuteToggle", new Action(() =>
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.PrivacyMute)))); EISC.PulseBool(JoinMap.PrivacyMute.JoinNumber)));
// /xyzxyz/volumes/master/muteToggle ---> BoolInput[1] // /xyzxyz/volumes/master/muteToggle ---> BoolInput[1]
var volumeStart = JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart); var volumeStart = JoinMap.VolumeJoinStart.JoinNumber;
var volumeEnd = JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart) + JoinMap.GetJoinSpanForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart); var volumeEnd = JoinMap.VolumeJoinStart.JoinNumber + JoinMap.VolumeJoinStart.JoinSpan;
for (uint i = volumeStart; i <= volumeEnd; i++) for (uint i = volumeStart; i <= volumeEnd; i++)
{ {
@@ -210,11 +207,11 @@ namespace PepperDash.Essentials.Room.MobileControl
} }
Parent.AddAction(@"/room/room1/shutdownStart", new Action(() => Parent.AddAction(@"/room/room1/shutdownStart", new Action(() =>
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownStart)))); EISC.PulseBool(JoinMap.ShutdownStart.JoinNumber)));
Parent.AddAction(@"/room/room1/shutdownEnd", new Action(() => Parent.AddAction(@"/room/room1/shutdownEnd", new Action(() =>
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownEnd)))); EISC.PulseBool(JoinMap.ShutdownEnd.JoinNumber)));
Parent.AddAction(@"/room/room1/shutdownCancel", new Action(() => Parent.AddAction(@"/room/room1/shutdownCancel", new Action(() =>
EISC.PulseBool(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownCancel)))); EISC.PulseBool(JoinMap.ShutdownCancel.JoinNumber)));
} }
@@ -244,21 +241,21 @@ namespace PepperDash.Essentials.Room.MobileControl
void SetupFeedbacks() void SetupFeedbacks()
{ {
// Power // Power
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.RoomIsOn), b => EISC.SetBoolSigAction(JoinMap.RoomIsOn.JoinNumber, b =>
PostStatusMessage(new PostStatusMessage(new
{ {
isOn = b isOn = b
})); }));
// Source change things // Source change things
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceHasChanged), () => EISC.SetSigTrueAction(JoinMap.SourceHasChanged.JoinNumber, () =>
PostStatusMessage(new PostStatusMessage(new
{ {
selectedSourceKey = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SelectedSourceKey)].StringValue selectedSourceKey = EISC.StringOutput[JoinMap.CurrentSourceKey.JoinNumber].StringValue
})); }));
// Volume things // Volume things
EISC.SetUShortSigAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume), u => EISC.SetUShortSigAction(JoinMap.MasterVolume.JoinNumber, u =>
PostStatusMessage(new PostStatusMessage(new
{ {
volumes = new volumes = new
@@ -273,7 +270,7 @@ namespace PepperDash.Essentials.Room.MobileControl
// map MasterVolumeIsMuted join -> status/volumes/master/muted // map MasterVolumeIsMuted join -> status/volumes/master/muted
// //
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume), b => EISC.SetBoolSigAction(JoinMap.MasterVolume.JoinNumber, b =>
PostStatusMessage(new PostStatusMessage(new
{ {
volumes = new volumes = new
@@ -284,7 +281,7 @@ namespace PepperDash.Essentials.Room.MobileControl
} }
} }
})); }));
EISC.SetBoolSigAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.PrivacyMute), b => EISC.SetBoolSigAction(JoinMap.PrivacyMute.JoinNumber, b =>
PostStatusMessage(new PostStatusMessage(new
{ {
volumes = new volumes = new
@@ -296,8 +293,8 @@ namespace PepperDash.Essentials.Room.MobileControl
} }
})); }));
var volumeStart = JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart); var volumeStart = JoinMap.VolumeJoinStart.JoinNumber;
var volumeEnd = JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart) + JoinMap.GetJoinSpanForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart); var volumeEnd = JoinMap.VolumeJoinStart.JoinNumber + JoinMap.VolumeJoinStart.JoinSpan;
for (uint i = volumeStart; i <= volumeEnd; i++) for (uint i = volumeStart; i <= volumeEnd; i++)
{ {
@@ -330,7 +327,7 @@ namespace PepperDash.Essentials.Room.MobileControl
}); });
} }
EISC.SetUShortSigAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.NumberOfAuxFaders), u => EISC.SetUShortSigAction(JoinMap.NumberOfAuxFaders.JoinNumber, u =>
PostStatusMessage(new { PostStatusMessage(new {
volumes = new { volumes = new {
numberOfAuxFaders = u, numberOfAuxFaders = u,
@@ -338,30 +335,30 @@ namespace PepperDash.Essentials.Room.MobileControl
})); }));
// shutdown things // shutdown things
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownCancel), new Action(() => EISC.SetSigTrueAction(JoinMap.ShutdownCancel.JoinNumber, new Action(() =>
PostMessage("/room/shutdown/", new PostMessage("/room/shutdown/", new
{ {
state = "wasCancelled" state = "wasCancelled"
}))); })));
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownEnd), new Action(() => EISC.SetSigTrueAction(JoinMap.ShutdownEnd.JoinNumber, new Action(() =>
PostMessage("/room/shutdown/", new PostMessage("/room/shutdown/", new
{ {
state = "hasFinished" state = "hasFinished"
}))); })));
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownStart), new Action(() => EISC.SetSigTrueAction(JoinMap.ShutdownStart.JoinNumber, new Action(() =>
PostMessage("/room/shutdown/", new PostMessage("/room/shutdown/", new
{ {
state = "hasStarted", state = "hasStarted",
duration = EISC.UShortOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ShutdownPromptDuration)].UShortValue duration = EISC.UShortOutput[JoinMap.ShutdownPromptDuration.JoinNumber].UShortValue
}))); })));
// Config things // Config things
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigIsReady), LoadConfigValues); EISC.SetSigTrueAction(JoinMap.ConfigIsReady.JoinNumber, LoadConfigValues);
// Activity modes // Activity modes
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityShare), () => UpdateActivity(1)); EISC.SetSigTrueAction(JoinMap.ActivityShare.JoinNumber, () => UpdateActivity(1));
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityPhoneCall), () => UpdateActivity(2)); EISC.SetSigTrueAction(JoinMap.ActivityPhoneCall.JoinNumber, () => UpdateActivity(2));
EISC.SetSigTrueAction(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityVideoCall), () => UpdateActivity(3)); EISC.SetSigTrueAction(JoinMap.ActivityVideoCall.JoinNumber, () => UpdateActivity(3));
} }
@@ -405,7 +402,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[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigRoomName)].StringValue; rm.Name = EISC.StringOutput[JoinMap.ConfigRoomName.JoinNumber].StringValue;
rm.Key = "room1"; rm.Key = "room1";
rm.Type = "ddvc01"; rm.Type = "ddvc01";
@@ -416,13 +413,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[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigHelpNumber)].StringValue; rmProps.Help.CallButtonText = EISC.StringOutput[JoinMap.ConfigHelpNumber.JoinNumber].StringValue;
rmProps.Help.Message = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigHelpMessage)].StringValue; rmProps.Help.Message = EISC.StringOutput[JoinMap.ConfigHelpMessage.JoinNumber].StringValue;
rmProps.Environment = new EssentialsEnvironmentPropertiesConfig(); // enabled defaults to false rmProps.Environment = new EssentialsEnvironmentPropertiesConfig(); // enabled defaults to false
rmProps.RoomPhoneNumber = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigRoomPhoneNumber)].StringValue; rmProps.RoomPhoneNumber = EISC.StringOutput[JoinMap.ConfigRoomPhoneNumber.JoinNumber].StringValue;
rmProps.RoomURI = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ConfigRoomURI)].StringValue; rmProps.RoomURI = EISC.StringOutput[JoinMap.ConfigRoomURI.JoinNumber].StringValue;
rmProps.SpeedDials = new List<DDVC01SpeedDial>(); rmProps.SpeedDials = new List<DDVC01SpeedDial>();
// This MAY need a check // This MAY need a check
@@ -430,7 +427,7 @@ namespace PepperDash.Essentials.Room.MobileControl
rmProps.VideoCodecKey = "videoCodec"; rmProps.VideoCodecKey = "videoCodec";
// volume control names // volume control names
var volCount = EISC.UShortOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.NumberOfAuxFaders)].UShortValue; var volCount = EISC.UShortOutput[JoinMap.NumberOfAuxFaders.JoinNumber].UShortValue;
//// use Volumes object or? //// use Volumes object or?
//rmProps.VolumeSliderNames = new List<string>(); //rmProps.VolumeSliderNames = new List<string>();
@@ -475,18 +472,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[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceNameJoinStart) + i].StringValue; var name = EISC.StringOutput[JoinMap.SourceNameJoinStart.JoinNumber + i].StringValue;
if (EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.UseSourceEnabled)].BoolValue if (EISC.BooleanOutput[JoinMap.UseSourceEnabled.JoinNumber].BoolValue
&& !EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceIsEnabledJoinStart) + i].BoolValue) && !EISC.BooleanOutput[JoinMap.SourceIsEnabledJoinStart.JoinNumber + i].BoolValue)
{ {
continue; continue;
} }
else if(!EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.UseSourceEnabled)].BoolValue && string.IsNullOrEmpty(name)) else if(!EISC.BooleanOutput[JoinMap.UseSourceEnabled.JoinNumber].BoolValue && string.IsNullOrEmpty(name))
break; break;
var icon = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceIconJoinStart) + i].StringValue; var icon = EISC.StringOutput[JoinMap.SourceIconJoinStart.JoinNumber + i].StringValue;
var key = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceKeyJoinStart) + i].StringValue; var key = EISC.StringOutput[JoinMap.SourceKeyJoinStart.JoinNumber + i].StringValue;
var type = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceTypeJoinStart) + i].StringValue; var type = EISC.StringOutput[JoinMap.SourceTypeJoinStart.JoinNumber + i].StringValue;
var disableShare = EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SourceShareDisableJoinStart) + i].BoolValue; var disableShare = EISC.BooleanOutput[JoinMap.SourceShareDisableJoinStart.JoinNumber + 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{
@@ -528,14 +525,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(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SpeedDialVisibleStartJoin) + i)) if (!EISC.GetBool(JoinMap.SpeedDialVisibleStartJoin.JoinNumber + i))
{ {
break; break;
} }
acFavs.Add(new PepperDash.Essentials.Devices.Common.Codec.CodecActiveCallItem() acFavs.Add(new PepperDash.Essentials.Devices.Common.Codec.CodecActiveCallItem()
{ {
Name = EISC.GetString(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SpeedDialNameStartJoin) + i), Name = EISC.GetString(JoinMap.SpeedDialNameStartJoin.JoinNumber + i),
Number = EISC.GetString(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SpeedDialNumberStartJoin) + i), Number = EISC.GetString(JoinMap.SpeedDialNumberStartJoin.JoinNumber + i),
Type = PepperDash.Essentials.Devices.Common.Codec.eCodecCallType.Audio Type = PepperDash.Essentials.Devices.Common.Codec.eCodecCallType.Audio
}); });
} }
@@ -567,7 +564,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 + JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.CameraNearNameStart)); var name = EISC.GetString(i + JoinMap.CameraNearNameStart.JoinNumber);
if (!string.IsNullOrEmpty(name)) if (!string.IsNullOrEmpty(name))
{ {
camsProps.Add(new camsProps.Add(new
@@ -577,7 +574,7 @@ namespace PepperDash.Essentials.Room.MobileControl
}); });
} }
} }
var farName = EISC.GetString(JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.CameraFarName)); var farName = EISC.GetString(JoinMap.CameraFarName.JoinNumber);
if (!string.IsNullOrEmpty(farName)) if (!string.IsNullOrEmpty(farName))
{ {
camsProps.Add(new camsProps.Add(new
@@ -685,7 +682,7 @@ namespace PepperDash.Essentials.Room.MobileControl
{ {
if (ConfigIsLoaded) if (ConfigIsLoaded)
{ {
var count = EISC.UShortOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.NumberOfAuxFaders)].UShortValue; var count = EISC.UShortOutput[JoinMap.NumberOfAuxFaders.JoinNumber].UShortValue;
Debug.Console(1, this, "The Fader Count is : {0}", count); Debug.Console(1, this, "The Fader Count is : {0}", count);
@@ -694,8 +691,8 @@ namespace PepperDash.Essentials.Room.MobileControl
// Create auxFaders // Create auxFaders
var auxFaderDict = new Dictionary<string, Volume>(); var auxFaderDict = new Dictionary<string, Volume>();
var volumeStart = JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart); var volumeStart = JoinMap.VolumeJoinStart.JoinNumber;
var volumeEnd = JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart) + JoinMap.GetJoinSpanForKey(MobileControlSIMPLRoomJoinMap.VolumeJoinStart); var volumeEnd = JoinMap.VolumeJoinStart.JoinNumber + JoinMap.VolumeJoinStart.JoinSpan;
for (uint i = volumeStart; i <= count; i++) for (uint i = volumeStart; i <= count; i++)
{ {
@@ -711,22 +708,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[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume)].UShortValue, EISC.UShortOutput[JoinMap.MasterVolume.JoinNumber].UShortValue,
EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume)].BoolValue, EISC.BooleanOutput[JoinMap.MasterVolume.JoinNumber].BoolValue,
EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.MasterVolume)].StringValue, EISC.StringOutput[JoinMap.MasterVolume.JoinNumber].StringValue,
true, true,
"something.png"); "something.png");
volumes.Master.HasPrivacyMute = true; volumes.Master.HasPrivacyMute = true;
volumes.Master.PrivacyMuted = EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.PrivacyMute)].BoolValue; volumes.Master.PrivacyMuted = EISC.BooleanOutput[JoinMap.PrivacyMute.JoinNumber].BoolValue;
volumes.AuxFaders = auxFaderDict; volumes.AuxFaders = auxFaderDict;
volumes.NumberOfAuxFaders = EISC.UShortInput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.NumberOfAuxFaders)].UShortValue; volumes.NumberOfAuxFaders = EISC.UShortInput[JoinMap.NumberOfAuxFaders.JoinNumber].UShortValue;
PostStatusMessage(new PostStatusMessage(new
{ {
activityMode = GetActivityMode(), activityMode = GetActivityMode(),
isOn = EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.RoomIsOn)].BoolValue, isOn = EISC.BooleanOutput[JoinMap.RoomIsOn.JoinNumber].BoolValue,
selectedSourceKey = EISC.StringOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.SelectedSourceKey)].StringValue, selectedSourceKey = EISC.StringOutput[JoinMap.CurrentSourceKey.JoinNumber].StringValue,
volumes = volumes volumes = volumes
}); });
} }
@@ -745,9 +742,9 @@ namespace PepperDash.Essentials.Room.MobileControl
/// <returns></returns> /// <returns></returns>
int GetActivityMode() int GetActivityMode()
{ {
if (EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityPhoneCall)].BoolValue) return 2; if (EISC.BooleanOutput[JoinMap.ActivityPhoneCall.JoinNumber].BoolValue) return 2;
else if (EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityShare)].BoolValue) return 1; else if (EISC.BooleanOutput[JoinMap.ActivityShare.JoinNumber].BoolValue) return 1;
else if (EISC.BooleanOutput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ActivityVideoCall)].BoolValue) return 3; else if (EISC.BooleanOutput[JoinMap.ActivityVideoCall.JoinNumber].BoolValue) return 3;
return 0; return 0;
} }
@@ -824,8 +821,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[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.UserCodeToSystem)].StringValue = UserCode; EISC.StringInput[JoinMap.UserCodeToSystem.JoinNumber].StringValue = UserCode;
EISC.StringInput[JoinMap.GetJoinForKey(MobileControlSIMPLRoomJoinMap.ServerUrl)].StringValue = Parent.Config.ClientAppUrl; EISC.StringInput[JoinMap.ServerUrl.JoinNumber].StringValue = Parent.Config.ClientAppUrl;
} }
} }
} }

View File

@@ -11,108 +11,105 @@ namespace PepperDash.Essentials.AppServer
{ {
public class MobileControlSIMPLRoomJoinMap : JoinMapBaseAdvanced public class MobileControlSIMPLRoomJoinMap : JoinMapBaseAdvanced
{ {
public const string ConfigIsLocal = "ConfigIsLocal"; [JoinName("MasterVolume")]
public const string RoomIsOn = "RoomIsOn"; public JoinDataComplete MasterVolume = new JoinDataComplete(new JoinData() { JoinNumber = 1, JoinSpan = 1 }, new JoinMetadata() {Label = "Master Volume Mute Toggle/FB/Level/Label", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.DigitalAnalogSerial });
public const string PrivacyMute = "PrivacyMute"; [JoinName("VolumeJoinStart")]
public const string PromptForCode = "PromptForCode"; public JoinDataComplete VolumeJoinStart = new JoinDataComplete(new JoinData() { JoinNumber = 2, JoinSpan = 8 }, new JoinMetadata() {Label = "Volume Mute Toggle/FB/Level/Label", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.DigitalAnalogSerial });
public const string ClientJoined = "ClientJoined";
public const string ActivityShare = "ActivityShare";
public const string ActivityPhoneCall = "ActivityPhoneCall";
public const string ActivityVideoCall = "ActivityVideoCall";
public const string MasterVolume = "MasterVolumeMute";
public const string VolumeJoinStart = "VolumeMutesJoinStart";
public const string ShutdownCancel = "ShutdownCancel";
public const string ShutdownEnd = "ShutdownEnd";
public const string ShutdownStart = "ShutdownStart";
public const string SourceHasChanged = "SourceHasChanged";
public const string SpeedDialVisibleStartJoin = "SpeedDialVisibleStartJoin";
public const string ConfigIsReady = "ConfigIsReady";
public const string HideVideoConfRecents = "HideVideoConfRecents";
public const string ShowCameraWhenNotInCall = "ShowCameraWhenNotInCall";
public const string UseSourceEnabled = "UseSourceEnabled";
public const string SourceShareDisableJoinStart = "SourceShareDisableJoinStart";
public const string SourceIsEnabledJoinStart = "SourceIsEnabledJoinStart";
public const string VolumeSlidersJoinStart = "VolumeSlidersJoinStart"; [JoinName("PrivacyMute")]
public const string ShutdownPromptDuration = "ShutdownPromptDuration"; public JoinDataComplete PrivacyMute = new JoinDataComplete(new JoinData() { JoinNumber = 12, JoinSpan = 1 }, new JoinMetadata() { Label = "Privacy Mute Toggle/FB", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
public const string NumberOfAuxFaders = "NumberOfAuxFaders";
public const string VolumeSliderNamesJoinStart = "VolumeSliderNamesJoinStart"; [JoinName("PromptForCode")]
public const string SelectedSourceKey = "SelectedSourceKey"; public JoinDataComplete PromptForCode = new JoinDataComplete(new JoinData() { JoinNumber = 41, JoinSpan = 1 }, new JoinMetadata() {Label = "Prompt User for Code", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
public const string SpeedDialNameStartJoin = "SpeedDialNameStartJoin"; [JoinName("ClientJoined")]
public const string SpeedDialNumberStartJoin = "SpeedDialNumberStartJoin"; public JoinDataComplete ClientJoined = new JoinDataComplete(new JoinData() { JoinNumber = 42, JoinSpan = 1 }, new JoinMetadata() { Label = "Client Joined", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Digital });
public const string ConfigRoomName = "ConfigRoomName"; [JoinName("ActivityShare")]
public const string ConfigHelpMessage = "ConfigHelpMessage"; public JoinDataComplete ActivityShare = new JoinDataComplete(new JoinData() { JoinNumber = 51, JoinSpan = 1 }, new JoinMetadata() {Label = "Activity Share", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
public const string ConfigHelpNumber = "ConfigHelpNumber"; [JoinName("ActivityPhoneCall")]
public const string ConfigRoomPhoneNumber = "ConfigRoomPhoneNumber"; public JoinDataComplete ActivityPhoneCall = new JoinDataComplete(new JoinData() { JoinNumber = 52, JoinSpan = 1 }, new JoinMetadata() { Label = "Activity Phone Call", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
public const string ConfigRoomURI = "ConfigRoomURI"; [JoinName("ActivityVideoCall")]
public const string UserCodeToSystem = "UserCodeToSystem"; public JoinDataComplete ActivityVideoCall = new JoinDataComplete(new JoinData() { JoinNumber = 53, JoinSpan = 1 }, new JoinMetadata() { Label = "Activity Video Call", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
public const string ServerUrl = "ServerUrl";
public const string RoomSpeedDialNamesJoinStart = "RoomSpeedDialNamesJoinStart"; [JoinName("ShutdownPromptDuration")]
public const string RoomSpeedDialNumberssJoinStart = "RoomSpeedDialNumberssJoinStart"; public JoinDataComplete ShutdownPromptDuration = new JoinDataComplete(new JoinData() { JoinNumber = 61, JoinSpan = 1 }, new JoinMetadata() { Label ="Shutdown Cancel", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Analog });
public const string SourceNameJoinStart = "SourceNameJoinStart"; [JoinName("ShutdownCancel")]
public const string SourceIconJoinStart = "SourceIconJoinStart"; public JoinDataComplete ShutdownCancel = new JoinDataComplete(new JoinData() { JoinNumber = 61, JoinSpan = 1 }, new JoinMetadata() { Label ="Shutdown Cancel", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
public const string SourceKeyJoinStart = "SourceKeyJoinStart"; [JoinName("ShutdownEnd")]
public const string SourceTypeJoinStart = "SourceTypeJoinStart"; public JoinDataComplete ShutdownEnd = new JoinDataComplete(new JoinData() { JoinNumber = 62, JoinSpan = 1 }, new JoinMetadata() { Label = "Shutdown End", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
public const string CameraNearNameStart = "CameraNearNameStart"; [JoinName("ShutdownStart")]
public const string CameraFarName = "CameraFarName"; public JoinDataComplete ShutdownStart = new JoinDataComplete(new JoinData() { JoinNumber = 63, JoinSpan = 1 }, new JoinMetadata() { Label = "Shutdown Start", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Digital });
[JoinName("SourceHasChanged")]
public JoinDataComplete SourceHasChanged = new JoinDataComplete(new JoinData() { JoinNumber = 71, JoinSpan = 1 }, new JoinMetadata() { Label = "Source Changed", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
[JoinName("CurrentSourceKey")]
public JoinDataComplete CurrentSourceKey = new JoinDataComplete(new JoinData() { JoinNumber = 71, JoinSpan = 1 }, new JoinMetadata() { Label = "Key of selected source", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinType = eJoinType.Serial });
[JoinName("ConfigIsLocal")]
public JoinDataComplete ConfigIsLocal = new JoinDataComplete(new JoinData() { JoinNumber = 100, JoinSpan = 1 }, new JoinMetadata() { Label = "Config is local to Essentials", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
[JoinName("NumberOfAuxFaders")]
public JoinDataComplete NumberOfAuxFaders = new JoinDataComplete(new JoinData() { JoinNumber = 101, JoinSpan = 1 }, new JoinMetadata() { Label = "Number of Auxilliary Faders", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Analog });
[JoinName("SpeedDialNameStartJoin")]
public JoinDataComplete SpeedDialNameStartJoin = new JoinDataComplete(new JoinData() { JoinNumber = 241, JoinSpan = 10 }, new JoinMetadata() { Label = "Speed Dial names", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
[JoinName("SpeedDialNumberStartJoin")]
public JoinDataComplete SpeedDialNumberStartJoin = new JoinDataComplete(new JoinData() { JoinNumber = 251, JoinSpan = 10 }, new JoinMetadata() { Label = "Speed Dial numbers", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
[JoinName("SpeedDialVisibleStartJoin")]
public JoinDataComplete SpeedDialVisibleStartJoin = new JoinDataComplete(new JoinData() { JoinNumber = 261, JoinSpan = 10 }, new JoinMetadata() { Label = "Speed Dial Visible", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
[JoinName("RoomIsOn")]
public JoinDataComplete RoomIsOn = new JoinDataComplete(new JoinData() { JoinNumber = 301, JoinSpan = 1 }, new JoinMetadata() { Label = "Room Is On", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
[JoinName("UserCodeToSystem")]
public JoinDataComplete UserCodeToSystem = new JoinDataComplete(new JoinData() { JoinNumber = 401, JoinSpan = 1 }, new JoinMetadata() { Label = "User Ccde", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
[JoinName("ServerUrl")]
public JoinDataComplete ServerUrl = new JoinDataComplete(new JoinData() { JoinNumber = 402, JoinSpan = 1 }, new JoinMetadata() { Label ="Server URL", JoinCapabilities = eJoinCapabilities.ToSIMPL, JoinType = eJoinType.Serial });
[JoinName("ConfigRoomName")]
public JoinDataComplete ConfigRoomName = new JoinDataComplete(new JoinData() { JoinNumber = 501, JoinSpan = 1 }, new JoinMetadata() {Label = "Room Nnme", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
[JoinName("ConfigHelpMessage")]
public JoinDataComplete ConfigHelpMessage = new JoinDataComplete(new JoinData() { JoinNumber = 502, JoinSpan = 1 }, new JoinMetadata() { Label = "Room help message", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
[JoinName("ConfigHelpNumber")]
public JoinDataComplete ConfigHelpNumber = new JoinDataComplete(new JoinData() { JoinNumber = 503, JoinSpan = 1 }, new JoinMetadata() { Label = "Room help number", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
[JoinName("ConfigRoomPhoneNumber")]
public JoinDataComplete ConfigRoomPhoneNumber = new JoinDataComplete(new JoinData() { JoinNumber = 504, JoinSpan = 1 }, new JoinMetadata() { Label = "Room phone number", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
[JoinName("ConfigRoomURI")]
public JoinDataComplete ConfigRoomURI = new JoinDataComplete(new JoinData() { JoinNumber = 505, JoinSpan = 1 }, new JoinMetadata() { Label = "Room URI", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
[JoinName("ConfigIsReady")]
public JoinDataComplete ConfigIsReady = new JoinDataComplete(new JoinData() { JoinNumber = 501, JoinSpan = 1 }, new JoinMetadata() { Label = "Config info from SIMPL is ready", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
[JoinName("HideVideoConfRecents")]
public JoinDataComplete HideVideoConfRecents = new JoinDataComplete(new JoinData() { JoinNumber = 502, JoinSpan = 1 }, new JoinMetadata() { Label = "Hide Video Conference Recents", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
[JoinName("ShowCameraWhenNotInCall")]
public JoinDataComplete ShowCameraWhenNotInCall = new JoinDataComplete(new JoinData() { JoinNumber = 503, JoinSpan = 1 }, new JoinMetadata() { Label = "Show camera when not in call", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
[JoinName("UseSourceEnabled")]
public JoinDataComplete UseSourceEnabled = new JoinDataComplete(new JoinData() { JoinNumber = 504, JoinSpan = 1 }, new JoinMetadata() { Label = "Use Source Enabled Joins", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
[JoinName("SourceShareDisableJoinStart")]
public JoinDataComplete SourceShareDisableJoinStart = new JoinDataComplete(new JoinData() { JoinNumber = 601, JoinSpan = 20 }, new JoinMetadata() { Label = "Source is not sharable", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
[JoinName("SourceIsEnabledJoinStart")]
public JoinDataComplete SourceIsEnabledJoinStart = new JoinDataComplete(new JoinData() { JoinNumber = 621, JoinSpan = 20 }, new JoinMetadata() { Label = "Source is enabled", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Digital });
[JoinName("SourceNameJoinStart")]
public JoinDataComplete SourceNameJoinStart = new JoinDataComplete(new JoinData() { JoinNumber = 601, JoinSpan = 20 }, new JoinMetadata() { Label = "Source Names", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
[JoinName("SourceIconJoinStart")]
public JoinDataComplete SourceIconJoinStart = new JoinDataComplete(new JoinData() { JoinNumber = 621, JoinSpan = 20 }, new JoinMetadata() { Label = "Source Icons", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
[JoinName("SourceKeyJoinStart")]
public JoinDataComplete SourceKeyJoinStart = new JoinDataComplete(new JoinData() { JoinNumber = 641, JoinSpan = 20 }, new JoinMetadata() { Label = "Source Keys", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
[JoinName("SourceTypeJoinStart")]
public JoinDataComplete SourceTypeJoinStart = new JoinDataComplete(new JoinData() { JoinNumber = 661, JoinSpan = 20 }, new JoinMetadata() { Label = "Source Types", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
[JoinName("CameraNearNameStart")]
public JoinDataComplete CameraNearNameStart = new JoinDataComplete(new JoinData() { JoinNumber = 761, JoinSpan = 10 }, new JoinMetadata() { Label = "Near End Camera Names", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
[JoinName("CameraFarName")]
public JoinDataComplete CameraFarName = new JoinDataComplete(new JoinData() { JoinNumber = 770, JoinSpan = 1 }, new JoinMetadata() { Label = "Far End Camera Name", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinType = eJoinType.Serial });
public MobileControlSIMPLRoomJoinMap(uint joinStart) public MobileControlSIMPLRoomJoinMap(uint joinStart)
:base(joinStart) :base(joinStart)
{ {
Joins.Add(ConfigIsLocal, new JoinMetadata() { JoinNumber = 100, Label = "Config is local to Essentials", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
Joins.Add(RoomIsOn, new JoinMetadata() { JoinNumber = 301, Label = "Room Is On", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
Joins.Add(PrivacyMute, new JoinMetadata() { JoinNumber = 12, Label = "Privacy Mute Toggle/FB", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
Joins.Add(PromptForCode, new JoinMetadata() { JoinNumber = 41, Label = "Prompt User for Code", 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(ActivityPhoneCall, new JoinMetadata() { JoinNumber = 52, Label = "Activity Phone 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(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(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(SourceHasChanged, new JoinMetadata() { JoinNumber = 71, Label = "Source Changed", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
// 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(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(ShowCameraWhenNotInCall, new JoinMetadata() { JoinNumber = 503, Label = "Show camera when not in call", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
Joins.Add(UseSourceEnabled, new JoinMetadata() { JoinNumber = 504, Label = "Use Source Enabled Joins", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Digital });
Joins.Add(SourceShareDisableJoinStart, new JoinMetadata() { JoinNumber = 601, Label = "Source is not sharable", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 20, JoinType = eJoinType.Digital });
Joins.Add(SourceIsEnabledJoinStart, new JoinMetadata() { JoinNumber = 621, Label = "Source is enabled", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 20, JoinType = eJoinType.Digital });
Joins.Add(ShutdownPromptDuration, new JoinMetadata() { JoinNumber = 61, Label = "Shutdown Prompt Timer Duration", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Analog });
Joins.Add(NumberOfAuxFaders, new JoinMetadata() { JoinNumber = 101, Label = "Number of Auxilliary Faders", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Analog });
Joins.Add(SelectedSourceKey, new JoinMetadata() { JoinNumber = 71, Label = "Key of selected source", JoinCapabilities = eJoinCapabilities.ToFromSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
// 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(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(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(ConfigHelpMessage, new JoinMetadata() { JoinNumber = 502, Label = "Room help message", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
Joins.Add(ConfigHelpNumber, new JoinMetadata() { JoinNumber = 503, Label = "Room help number", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
Joins.Add(ConfigRoomPhoneNumber, new JoinMetadata() { JoinNumber = 504, Label = "Room phone number", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
Joins.Add(ConfigRoomURI, new JoinMetadata() { JoinNumber = 505, Label = "Room URI", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
Joins.Add(SourceNameJoinStart, new JoinMetadata() { JoinNumber = 601, Label = "Source Names", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 20, JoinType = eJoinType.Serial });
Joins.Add(SourceIconJoinStart, new JoinMetadata() { JoinNumber = 621, Label = "Source Icons", 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 });
// 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(CameraFarName, new JoinMetadata() { JoinNumber = 770, Label = "Far End Camera Name", JoinCapabilities = eJoinCapabilities.FromSIMPL, JoinSpan = 1, JoinType = eJoinType.Serial });
//
} }
} }
} }

View File

@@ -174,7 +174,6 @@
<Compile Include="ControlSystem.cs" /> <Compile Include="ControlSystem.cs" />
<Compile Include="Factory\UiDeviceFactory.cs" /> <Compile Include="Factory\UiDeviceFactory.cs" />
<Compile Include="Fusion\EssentialsHuddleVtc1FusionController.cs" /> <Compile Include="Fusion\EssentialsHuddleVtc1FusionController.cs" />
<Compile Include="PluginLoading\PluginLoading.cs" />
<Compile Include="Properties\AssemblyInfo.cs" /> <Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Room\Config\EssentialsDualDisplayRoomPropertiesConfig.cs" /> <Compile Include="Room\Config\EssentialsDualDisplayRoomPropertiesConfig.cs" />
<Compile Include="Room\Config\EssentialsNDisplayRoomPropertiesConfig.cs" /> <Compile Include="Room\Config\EssentialsNDisplayRoomPropertiesConfig.cs" />

View File

@@ -156,6 +156,7 @@
<Compile Include="Monitoring\SystemMonitorController.cs" /> <Compile Include="Monitoring\SystemMonitorController.cs" />
<Compile Include="Microphone Privacy\MicrophonePrivacyController.cs" /> <Compile Include="Microphone Privacy\MicrophonePrivacyController.cs" />
<Compile Include="Microphone Privacy\MicrophonePrivacyControllerConfig.cs" /> <Compile Include="Microphone Privacy\MicrophonePrivacyControllerConfig.cs" />
<Compile Include="PluginLoading\PluginLoader.cs" />
<Compile Include="Presets\PresetBase.cs" /> <Compile Include="Presets\PresetBase.cs" />
<Compile Include="Ramps and Increments\ActionIncrementer.cs" /> <Compile Include="Ramps and Increments\ActionIncrementer.cs" />
<Compile Include="Config\Comm and IR\CommFactory.cs" /> <Compile Include="Config\Comm and IR\CommFactory.cs" />