mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-13 19:54:59 +00:00
Compare commits
4 Commits
1.9.1-hotf
...
1.9.1-hotf
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f5305197b3 | ||
|
|
1805ebaf0f | ||
|
|
ca8207f2bd | ||
|
|
655bb954fa |
@@ -122,6 +122,7 @@
|
||||
<Compile Include="Display\PanasonicThDisplay.cs" />
|
||||
<Compile Include="VideoCodec\Interfaces\IHasParticipants.cs" />
|
||||
<Compile Include="VideoCodec\Interfaces\IHasSelfviewPosition.cs" />
|
||||
<Compile Include="VideoCodec\Interfaces\IHasSelfviewSize.cs" />
|
||||
<Compile Include="VideoCodec\Interfaces\iVideoCodecInfo.cs" />
|
||||
<Compile Include="Codec\iHasCallFavorites.cs" />
|
||||
<Compile Include="Codec\iHasCallHistory.cs" />
|
||||
|
||||
@@ -31,8 +31,6 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec
|
||||
BoolFeedback LayoutViewIsOnLastPageFeedback { get; } // TODO: #697 [*] Consider modifying to report button visibility in func
|
||||
BoolFeedback CanSwapContentWithThumbnailFeedback { get; }
|
||||
BoolFeedback ContentSwappedWithThumbnailFeedback { get; }
|
||||
StringFeedback LayoutSizeFeedback { get; } // TODO: #714 [ ] Feature Layout Size
|
||||
StringFeedback LayoutPositionFeedback { get; } // TODO: #714 [ ] Feature Layout Size
|
||||
|
||||
ZoomRoom.zConfiguration.eLayoutStyle LastSelectedLayout { get; }
|
||||
ZoomRoom.zConfiguration.eLayoutStyle AvailableLayouts { get; }
|
||||
@@ -43,12 +41,6 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec
|
||||
|
||||
void LayoutTurnNextPage();
|
||||
void LayoutTurnPreviousPage();
|
||||
|
||||
void GetCurrentLayoutSize(); // TODO: #714 [ ] Feature Layout Size
|
||||
void SetLayoutSize(ZoomRoom.zConfiguration.eLayoutSize layoutSize); // TODO: #714 [ ] Feature Layout Size
|
||||
|
||||
void GetCurrentLayoutPosition(); // TODO: #714 [ ] Feature Layout Size
|
||||
void SetLayoutPosition(ZoomRoom.zConfiguration.eLayoutPosition layoutPosition); // TODO: #714 [ ] Feature Layout Size
|
||||
}
|
||||
|
||||
public class LayoutInfoChangedEventArgs : EventArgs
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
using PepperDash.Essentials.Devices.Common.VideoCodec.Cisco;
|
||||
|
||||
namespace PepperDash.Essentials.Core.DeviceTypeInterfaces
|
||||
{
|
||||
public interface IHasSelfviewSize
|
||||
{
|
||||
StringFeedback SelfviewPipSizeFeedback { get; }
|
||||
|
||||
void SelfviewPipSizeSet(CodecCommandWithLabel size);
|
||||
|
||||
void SelfviewPipSizeToggle();
|
||||
}
|
||||
}
|
||||
@@ -25,7 +25,7 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
public class ZoomRoom : VideoCodecBase, IHasCodecSelfView, IHasDirectoryHistoryStack, ICommunicationMonitor,
|
||||
IRouting,
|
||||
IHasScheduleAwareness, IHasCodecCameras, IHasParticipants, IHasCameraOff, IHasCameraMute, IHasCameraAutoMode,
|
||||
IHasFarEndContentStatus, IHasSelfviewPosition, IHasPhoneDialing, IHasZoomRoomLayouts, IHasParticipantPinUnpin, IHasParticipantAudioMute
|
||||
IHasFarEndContentStatus, IHasSelfviewPosition, IHasPhoneDialing, IHasZoomRoomLayouts, IHasParticipantPinUnpin, IHasParticipantAudioMute, IHasSelfviewSize
|
||||
{
|
||||
private const long MeetingRefreshTimer = 60000;
|
||||
private const uint DefaultMeetingDurationMin = 30;
|
||||
@@ -109,6 +109,9 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
|
||||
SelfviewPipPositionFeedback = new StringFeedback(SelfviewPipPositionFeedbackFunc);
|
||||
|
||||
// TODO: #714 [ ] SelfviewPipSizeFeedback
|
||||
SelfviewPipSizeFeedback = new StringFeedback(SelfviewPipSizeFeedbackFunc);
|
||||
|
||||
SetUpFeedbackActions();
|
||||
|
||||
Cameras = new List<CameraBase>();
|
||||
@@ -126,11 +129,6 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
|
||||
LocalLayoutFeedback = new StringFeedback(LocalLayoutFeedbackFunc);
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
LayoutSizeFeedback = new StringFeedback(LayoutSizeFeedbackFunc);
|
||||
LayoutPositionFeedback = new StringFeedback(LayoutPositionFeedbackFunc);
|
||||
|
||||
|
||||
LayoutViewIsOnFirstPageFeedback = new BoolFeedback(LayoutViewIsOnFirstPageFeedbackFunc);
|
||||
LayoutViewIsOnLastPageFeedback = new BoolFeedback(LayoutViewIsOnLastPageFeedbackFunc);
|
||||
CanSwapContentWithThumbnailFeedback = new BoolFeedback(CanSwapContentWithThumbnailFeedbackFunc);
|
||||
@@ -233,6 +231,19 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: #714 [ ] SelfviewPipSizeFeedbackFunc
|
||||
protected Func<string> SelfviewPipSizeFeedbackFunc
|
||||
{
|
||||
get
|
||||
{
|
||||
return
|
||||
() =>
|
||||
_currentSelfviewPipSize != null
|
||||
? _currentSelfviewPipSize.Command ?? "Unknown"
|
||||
: "Unknown";
|
||||
}
|
||||
}
|
||||
|
||||
protected Func<bool> LocalLayoutIsProminentFeedbackFunc
|
||||
{
|
||||
get { return () => false; }
|
||||
@@ -500,7 +511,7 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
{
|
||||
case "Position":
|
||||
{
|
||||
ComputeSelfviewPipStatus();
|
||||
ComputeSelfviewPipPositionStatus();
|
||||
|
||||
SelfviewPipPositionFeedback.FireUpdate();
|
||||
|
||||
@@ -516,6 +527,15 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
LocalLayoutFeedback.FireUpdate();
|
||||
break;
|
||||
}
|
||||
case "Size":
|
||||
{
|
||||
// TODO: #714 [ ] SetupFeedbackActions >> Size
|
||||
ComputeSelfviewPipSizeStatus();
|
||||
|
||||
SelfviewPipSizeFeedback.FireUpdate();
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
};
|
||||
@@ -527,7 +547,7 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
{
|
||||
case "Position":
|
||||
{
|
||||
ComputeSelfviewPipStatus();
|
||||
ComputeSelfviewPipPositionStatus();
|
||||
|
||||
SelfviewPipPositionFeedback.FireUpdate();
|
||||
|
||||
@@ -601,21 +621,22 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
|
||||
Status.Layout.PropertyChanged += (o, a) =>
|
||||
{
|
||||
switch (a.PropertyName)
|
||||
Debug.Console(1, this, "Status.Layout.PropertyChanged a.PropertyName: {0}", a.PropertyName);
|
||||
switch (a.PropertyName.ToLower())
|
||||
{
|
||||
case "can_Switch_Speaker_View":
|
||||
case "can_Switch_Wall_View":
|
||||
case "can_Switch_Share_On_All_Screens":
|
||||
case "can_switch_speaker_view":
|
||||
case "can_switch_wall_view":
|
||||
case "can_switch_share_on_all_screens":
|
||||
{
|
||||
ComputeAvailableLayouts();
|
||||
break;
|
||||
}
|
||||
case "is_In_First_Page":
|
||||
case "is_in_first_page":
|
||||
{
|
||||
LayoutViewIsOnFirstPageFeedback.FireUpdate();
|
||||
break;
|
||||
}
|
||||
case "is_In_Last_Page":
|
||||
case "is_in_last_page":
|
||||
{
|
||||
LayoutViewIsOnLastPageFeedback.FireUpdate();
|
||||
break;
|
||||
@@ -1488,7 +1509,7 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
return;
|
||||
}
|
||||
|
||||
Debug.Console(1, this, "****************************Call Participants***************************");
|
||||
Debug.Console(1, this, "*************************** Call Participants **************************");
|
||||
foreach (var participant in Participants.CurrentParticipants)
|
||||
{
|
||||
Debug.Console(1, this, "Name: {0} Audio: {1} IsHost: {2}", participant.Name,
|
||||
@@ -1575,7 +1596,7 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
}
|
||||
}
|
||||
|
||||
Debug.Console(1, this, "****************************Active Calls*********************************");
|
||||
Debug.Console(1, this, "*************************** Active Calls ********************************");
|
||||
|
||||
// Clean up any disconnected calls left in the list
|
||||
for (int i = 0; i < ActiveCalls.Count; i++)
|
||||
@@ -1591,7 +1612,7 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
|
||||
if (!call.IsActiveCall)
|
||||
{
|
||||
Debug.Console(1, this, "******Removing Inactive Call: {0}******", call.Name);
|
||||
Debug.Console(1, this, "***** Removing Inactive Call: {0} *****", call.Name);
|
||||
ActiveCalls.Remove(call);
|
||||
}
|
||||
}
|
||||
@@ -1746,7 +1767,7 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
|
||||
LinkVideoCodecToApi(this, trilist, joinMap);
|
||||
|
||||
LinkZoomRoomToApi(trilist, joinMap);
|
||||
LinkZoomRoomToApi(trilist, joinMap);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -1800,62 +1821,7 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
}
|
||||
});
|
||||
|
||||
layoutsCodec.LocalLayoutFeedback.LinkInputSig(trilist.StringInput[joinMap.GetSetCurrentLayout.JoinNumber]);
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutSizeOff.JoinNumber, () => layoutsCodec.SetLayoutSize(zConfiguration.eLayoutSize.Off));
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutSize1.JoinNumber, () => layoutsCodec.SetLayoutSize(zConfiguration.eLayoutSize.Size1));
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutSize2.JoinNumber, () => layoutsCodec.SetLayoutSize(zConfiguration.eLayoutSize.Size2));
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutSize3.JoinNumber, () => layoutsCodec.SetLayoutSize(zConfiguration.eLayoutSize.Size3));
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutSizeStrip.JoinNumber, () => layoutsCodec.SetLayoutSize(zConfiguration.eLayoutSize.Strip));
|
||||
trilist.SetSigFalseAction(joinMap.GetSetCurrentLayoutSize.JoinNumber, layoutsCodec.GetCurrentLayoutSize);
|
||||
trilist.SetStringSigAction(joinMap.GetSetCurrentLayoutSize.JoinNumber, (s) =>
|
||||
{
|
||||
try
|
||||
{
|
||||
var size = (zConfiguration.eLayoutSize)Enum.Parse(typeof(zConfiguration.eLayoutSize), s, true);
|
||||
SetLayoutSize(size);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Debug.Console(1, this, "Unable to parse '{0}' to zConfiguration.eLayoutSize: {1}", s, e);
|
||||
}
|
||||
});
|
||||
layoutsCodec.LayoutSizeFeedback.LinkInputSig(trilist.StringInput[joinMap.GetSetCurrentLayoutSize.JoinNumber]);
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutPositionCenter.JoinNumber,
|
||||
() => layoutsCodec.SetLayoutPosition(zConfiguration.eLayoutPosition.Center));
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutPositionUp.JoinNumber,
|
||||
() => layoutsCodec.SetLayoutPosition(zConfiguration.eLayoutPosition.Up));
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutPositionRight.JoinNumber,
|
||||
() => layoutsCodec.SetLayoutPosition(zConfiguration.eLayoutPosition.Right));
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutPositionUpRight.JoinNumber,
|
||||
() => layoutsCodec.SetLayoutPosition(zConfiguration.eLayoutPosition.UpRight));
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutPositionDown.JoinNumber,
|
||||
() => layoutsCodec.SetLayoutPosition(zConfiguration.eLayoutPosition.Down));
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutPositionDownRight.JoinNumber,
|
||||
() => layoutsCodec.SetLayoutPosition(zConfiguration.eLayoutPosition.DownRight));
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutPositionLeft.JoinNumber,
|
||||
() => layoutsCodec.SetLayoutPosition(zConfiguration.eLayoutPosition.Left));
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutPositionUpLeft.JoinNumber,
|
||||
() => layoutsCodec.SetLayoutPosition(zConfiguration.eLayoutPosition.UpLeft));
|
||||
trilist.SetSigFalseAction(joinMap.SetLayoutPositionDownLeft.JoinNumber,
|
||||
() => layoutsCodec.SetLayoutPosition(zConfiguration.eLayoutPosition.DownLeft));
|
||||
trilist.SetSigFalseAction(joinMap.GetSetCurrentLayoutPosition.JoinNumber, layoutsCodec.GetCurrentLayoutPosition);
|
||||
trilist.SetStringSigAction(joinMap.GetSetCurrentLayoutPosition.JoinNumber, (s) =>
|
||||
{
|
||||
try
|
||||
{
|
||||
var position = (zConfiguration.eLayoutPosition) Enum.Parse(typeof (zConfiguration.eLayoutPosition), s, true);
|
||||
SetLayoutPosition(position);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Debug.Console(1, this, "Unable to parse '{0}' to zConfiguration.eLayoutPosition: {1}", s, e);
|
||||
}
|
||||
});
|
||||
|
||||
layoutsCodec.LocalLayoutFeedback.LinkInputSig(trilist.StringInput[joinMap.GetSetCurrentLayout.JoinNumber]);
|
||||
}
|
||||
|
||||
var pinCodec = this as IHasParticipantPinUnpin;
|
||||
@@ -1866,7 +1832,38 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
// Set the value of the local property to be used when pinning a participant
|
||||
trilist.SetUShortSigAction(joinMap.ScreenIndexToPinUserTo.JoinNumber, (u) => ScreenIndexToPinUserTo = u);
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: #714 [ ] LinkZoomRoomToApi >> layoutSizeCoodec
|
||||
var layoutSizeCodec = this as IHasSelfviewSize;
|
||||
if (layoutSizeCodec != null)
|
||||
{
|
||||
trilist.SetSigFalseAction(joinMap.GetSetSelfviewPipSize.JoinNumber, layoutSizeCodec.SelfviewPipSizeToggle);
|
||||
trilist.SetStringSigAction(joinMap.GetSetSelfviewPipSize.JoinNumber, (s) =>
|
||||
{
|
||||
try
|
||||
{
|
||||
var size = (zConfiguration.eLayoutSize)Enum.Parse(typeof(zConfiguration.eLayoutSize), s, true);
|
||||
var cmd = SelfviewPipSizes.FirstOrDefault(c => c.Command.Equals(size.ToString()));
|
||||
SelfviewPipSizeSet(cmd);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Debug.Console(1, this, "Unable to parse '{0}' to zConfiguration.eLayoutSize: {1}", s, e);
|
||||
}
|
||||
});
|
||||
|
||||
layoutSizeCodec.SelfviewPipSizeFeedback.LinkInputSig(trilist.StringInput[joinMap.GetSetSelfviewPipSize.JoinNumber]);
|
||||
}
|
||||
|
||||
trilist.OnlineStatusChange += (device, args) =>
|
||||
{
|
||||
if (!args.DeviceOnLine) return;
|
||||
|
||||
layoutsCodec.LocalLayoutFeedback.FireUpdate();
|
||||
pinCodec.NumberOfScreensFeedback.FireUpdate();
|
||||
layoutSizeCodec.SelfviewPipSizeFeedback.FireUpdate();
|
||||
};
|
||||
}
|
||||
|
||||
public override void ExecuteSwitch(object selector)
|
||||
{
|
||||
@@ -2237,13 +2234,58 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
new CodecCommandWithLabel("DownLeft", "Lower Left")
|
||||
};
|
||||
|
||||
private void ComputeSelfviewPipStatus()
|
||||
private void ComputeSelfviewPipPositionStatus()
|
||||
{
|
||||
_currentSelfviewPipPosition =
|
||||
SelfviewPipPositions.FirstOrDefault(
|
||||
p => p.Command.ToLower().Equals(Configuration.Call.Layout.Position.ToString().ToLower()));
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
// TODO: #714 [ ] Implementation of IHasSelfviewPipSize
|
||||
#region Implementation of IHasSelfviewPipSize
|
||||
|
||||
private CodecCommandWithLabel _currentSelfviewPipSize;
|
||||
|
||||
public StringFeedback SelfviewPipSizeFeedback { get; private set; }
|
||||
|
||||
public void SelfviewPipSizeSet(CodecCommandWithLabel size)
|
||||
{
|
||||
SendText(String.Format("zConfiguration Call Layout Size: {0}", size.Command));
|
||||
}
|
||||
|
||||
public void SelfviewPipSizeToggle()
|
||||
{
|
||||
if (_currentSelfviewPipSize != null)
|
||||
{
|
||||
var nextPipSizeIndex = SelfviewPipSizes.IndexOf(_currentSelfviewPipSize) + 1;
|
||||
|
||||
if (nextPipSizeIndex >= SelfviewPipSizes.Count)
|
||||
// Check if we need to loop back to the first item in the list
|
||||
nextPipSizeIndex = 0;
|
||||
|
||||
SelfviewPipSizeSet(SelfviewPipSizes[nextPipSizeIndex]);
|
||||
}
|
||||
}
|
||||
|
||||
public List<CodecCommandWithLabel> SelfviewPipSizes = new List<CodecCommandWithLabel>()
|
||||
{
|
||||
new CodecCommandWithLabel("Off", "Off"),
|
||||
new CodecCommandWithLabel("Size1", "Size 1"),
|
||||
new CodecCommandWithLabel("Size2", "Size 2"),
|
||||
new CodecCommandWithLabel("Size3", "Size 3"),
|
||||
new CodecCommandWithLabel("Strip", "Strip")
|
||||
};
|
||||
|
||||
private void ComputeSelfviewPipSizeStatus()
|
||||
{
|
||||
_currentSelfviewPipSize =
|
||||
SelfviewPipSizes.FirstOrDefault(
|
||||
p => p.Command.ToLower().Equals(Configuration.Call.Layout.Size.ToString().ToLower()));
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region Implementation of IHasPhoneDialing
|
||||
@@ -2300,9 +2342,8 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
/// </summary>
|
||||
private void ComputeAvailableLayouts()
|
||||
{
|
||||
Debug.Console(1, this, "Computing available layouts...");
|
||||
zConfiguration.eLayoutStyle availableLayouts = zConfiguration.eLayoutStyle.None;
|
||||
// TODO: #697 [X] Compute the avaialble layouts and set the value of AvailableLayouts
|
||||
// Will need to test and confirm that this logic evaluates correctly
|
||||
if (Status.Layout.can_Switch_Wall_View)
|
||||
{
|
||||
availableLayouts |= zConfiguration.eLayoutStyle.Gallery;
|
||||
@@ -2325,6 +2366,8 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
availableLayouts |= zConfiguration.eLayoutStyle.Strip;
|
||||
}
|
||||
|
||||
Debug.Console(1, this, "Available layouts: {0}", availableLayouts);
|
||||
|
||||
var handler = AvailableLayoutsChanged;
|
||||
if (handler != null)
|
||||
{
|
||||
@@ -2366,86 +2409,6 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
SendText("zCommand Call Layout TurnPage Forward: Off");
|
||||
}
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
/// <summary>
|
||||
/// Stores last selected layout size
|
||||
/// </summary>
|
||||
public zConfiguration.eLayoutSize LastSelectedLayoutSize { get; private set; }
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
/// <summary>
|
||||
/// Queries for current layout size
|
||||
/// </summary>
|
||||
public void GetCurrentLayoutSize()
|
||||
{
|
||||
SendText("zConfiguration Call Layout Size");
|
||||
}
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
/// <summary>
|
||||
/// Sets selected layout size
|
||||
/// </summary>
|
||||
/// <param name="layoutSize">zConfiguration.eLayoutSize</param>
|
||||
public void SetLayoutSize(zConfiguration.eLayoutSize layoutSize)
|
||||
{
|
||||
LastSelectedLayoutSize = layoutSize;
|
||||
SendText(String.Format("zConfiguration Call Layout Size: {0}", layoutSize.ToString()));
|
||||
}
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
private Func<string> LayoutSizeFeedbackFunc
|
||||
{
|
||||
get
|
||||
{
|
||||
return () => Configuration.Call.Layout.Size.ToString();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Layout size feedback
|
||||
/// </summary>
|
||||
public StringFeedback LayoutSizeFeedback { get; private set; }
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
/// <summary>
|
||||
/// Stores last selected layout position
|
||||
/// </summary>
|
||||
public zConfiguration.eLayoutPosition LastSelectedLayoutPosition { get; private set; }
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
/// <summary>
|
||||
/// Queries for current layout position
|
||||
/// </summary>
|
||||
public void GetCurrentLayoutPosition()
|
||||
{
|
||||
SendText("zConfiguration Call Layout Position");
|
||||
}
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
/// <summary>
|
||||
/// Sets selected layout position
|
||||
/// </summary>
|
||||
/// <param name="layoutPosition"></param>
|
||||
public void SetLayoutPosition(zConfiguration.eLayoutPosition layoutPosition)
|
||||
{
|
||||
LastSelectedLayoutPosition = layoutPosition;
|
||||
SendText(String.Format("zConfiguration Call Layout Position: {0}", layoutPosition.ToString()));
|
||||
}
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
private Func<string> LayoutPositionFeedbackFunc
|
||||
{
|
||||
get
|
||||
{
|
||||
return () => Configuration.Call.Layout.Position.ToString();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Layout position feedback
|
||||
/// </summary>
|
||||
public StringFeedback LayoutPositionFeedback { get; private set; }
|
||||
|
||||
#endregion
|
||||
|
||||
#region IHasCodecLayouts Members
|
||||
@@ -2479,7 +2442,7 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
public void MinMaxLayoutToggle()
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
@@ -6,8 +6,6 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
{
|
||||
public class ZoomRoomJoinMap : VideoCodecControllerJoinMap
|
||||
{
|
||||
// TODO: #697 [X] Set join numbers
|
||||
|
||||
#region Digital
|
||||
|
||||
[JoinName("CanSwapContentWithThumbnail")]
|
||||
@@ -164,9 +162,9 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
JoinType = eJoinType.DigitalSerial
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutSizeOff")]
|
||||
public JoinDataComplete SetLayoutSizeOff = new JoinDataComplete(
|
||||
// TODO: #714 [ ] JoinMap >> SelfivewPipSizeToggle
|
||||
[JoinName("SelfviewPipSizeToggle")]
|
||||
public JoinDataComplete SelfviewPipSizeToggle = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 231,
|
||||
@@ -174,206 +172,11 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout size off",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutSize1")]
|
||||
public JoinDataComplete SetLayoutSize1 = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 232,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout size 1",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutSize2")]
|
||||
public JoinDataComplete SetLayoutSize2 = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 233,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout size 2",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutSize3")]
|
||||
public JoinDataComplete SetLayoutSize3 = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 234,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout size 3",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutSizeStrip")]
|
||||
public JoinDataComplete SetLayoutSizeStrip = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 235,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout size strip",
|
||||
Description = "Toggles the selfview pip size, (aka layout size)",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutPositionCenter")]
|
||||
public JoinDataComplete SetLayoutPositionCenter = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 241,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout position to center",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutPositionUp")]
|
||||
public JoinDataComplete SetLayoutPositionUp = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 242,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout position to up",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutPositionRight")]
|
||||
public JoinDataComplete SetLayoutPositionRight = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 243,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout position to right",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutPositionUpRight")]
|
||||
public JoinDataComplete SetLayoutPositionUpRight = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 244,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout position to up right",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutPositionDown")]
|
||||
public JoinDataComplete SetLayoutPositionDown = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 245,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout position to down",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutPositionDownRight")]
|
||||
public JoinDataComplete SetLayoutPositionDownRight = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 246,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout position to down right",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutPositionLeft")]
|
||||
public JoinDataComplete SetLayoutPositionLeft = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 247,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout position todown left",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutPositionUpLeft")]
|
||||
public JoinDataComplete SetLayoutPositionUpLeft = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 248,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout position to up left",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("SetLayoutPositionDownLeft")]
|
||||
public JoinDataComplete SetLayoutPositionDownLeft = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 249,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets layout position to down left",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.Digital
|
||||
});
|
||||
|
||||
//[JoinName("ParticipantAudioMuteToggleStart")]
|
||||
//public JoinDataComplete ParticipantAudioMuteToggleStart = new JoinDataComplete(
|
||||
// new JoinData
|
||||
@@ -468,9 +271,9 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
JoinType = eJoinType.Serial
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("GetSetCurrentLayoutSize")]
|
||||
public JoinDataComplete GetSetCurrentLayoutSize = new JoinDataComplete(
|
||||
// TODO: #714 [ ] JoinMap >> GetSetSelfviewPipSize
|
||||
[JoinName("GetSetSelfviewPipSize")]
|
||||
public JoinDataComplete GetSetSelfviewPipSize = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 230,
|
||||
@@ -478,27 +281,11 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets and reports the current layout size.",
|
||||
Description = "Sets and reports the selfview pip size, (aka layout size).",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.DigitalSerial
|
||||
});
|
||||
|
||||
// TODO: #714 [ ] Feature Layout Size
|
||||
[JoinName("GetSetCurrentLayoutPosition")]
|
||||
public JoinDataComplete GetSetCurrentLayoutPosition = new JoinDataComplete(
|
||||
new JoinData
|
||||
{
|
||||
JoinNumber = 240,
|
||||
JoinSpan = 1
|
||||
},
|
||||
new JoinMetadata
|
||||
{
|
||||
Description = "Sets and reports the current layout position.",
|
||||
JoinCapabilities = eJoinCapabilities.ToFromSIMPL,
|
||||
JoinType = eJoinType.DigitalSerial
|
||||
});
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
public ZoomRoomJoinMap(uint joinStart)
|
||||
|
||||
Reference in New Issue
Block a user