mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-02-09 09:45:06 +00:00
docs: add missing XML comments for Mobile Control Project
This commit is contained in:
@@ -7,8 +7,15 @@ namespace PepperDash.Essentials.Touchpanel
|
||||
/// </summary>
|
||||
public interface ITheme : IKeyed
|
||||
{
|
||||
/// <summary>
|
||||
/// Current theme
|
||||
/// </summary>
|
||||
string Theme { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Set the theme with the given value
|
||||
/// </summary>
|
||||
/// <param name="theme">The theme to set</param>
|
||||
void UpdateTheme(string theme);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,12 +8,24 @@ namespace PepperDash.Essentials.Touchpanel
|
||||
/// </summary>
|
||||
public interface ITswAppControl : IKeyed
|
||||
{
|
||||
/// <summary>
|
||||
/// Updates when the Zoom Room Control Application opens or closes
|
||||
/// </summary>
|
||||
BoolFeedback AppOpenFeedback { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Hide the Zoom App and show the User Control Application
|
||||
/// </summary>
|
||||
void HideOpenApp();
|
||||
|
||||
/// <summary>
|
||||
/// Close the Zoom App and show the User Control Application
|
||||
/// </summary>
|
||||
void CloseOpenApp();
|
||||
|
||||
/// <summary>
|
||||
/// Open the Zoom App
|
||||
/// </summary>
|
||||
void OpenApp();
|
||||
}
|
||||
|
||||
@@ -22,10 +34,19 @@ namespace PepperDash.Essentials.Touchpanel
|
||||
/// </summary>
|
||||
public interface ITswZoomControl : IKeyed
|
||||
{
|
||||
/// <summary>
|
||||
/// Updates when Zoom has an incoming call
|
||||
/// </summary>
|
||||
BoolFeedback ZoomIncomingCallFeedback { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Updates when Zoom is in a call
|
||||
/// </summary>
|
||||
BoolFeedback ZoomInCallFeedback { get; }
|
||||
|
||||
/// <summary>
|
||||
/// End a Zoom Call
|
||||
/// </summary>
|
||||
void EndZoomCall();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,17 +7,24 @@ using PepperDash.Essentials.AppServer.Messengers;
|
||||
namespace PepperDash.Essentials.Touchpanel
|
||||
{
|
||||
/// <summary>
|
||||
/// Represents a ITswAppControlMessenger
|
||||
/// Messenger for controlling the Zoom App on a TSW Panel that supports the Zoom Room Control Application
|
||||
/// </summary>
|
||||
public class ITswAppControlMessenger : MessengerBase
|
||||
{
|
||||
private readonly ITswAppControl _appControl;
|
||||
|
||||
/// <summary>
|
||||
/// Create an instance of the <see cref="ITswAppControlMessenger"/> class.
|
||||
/// </summary>
|
||||
/// <param name="key">The key for this messenger</param>
|
||||
/// <param name="messagePath">The message path for this messenger</param>
|
||||
/// <param name="device">The device for this messenger</param>
|
||||
public ITswAppControlMessenger(string key, string messagePath, Device device) : base(key, messagePath, device)
|
||||
{
|
||||
_appControl = device as ITswAppControl;
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void RegisterActions()
|
||||
{
|
||||
if (_appControl == null)
|
||||
@@ -43,14 +50,14 @@ namespace PepperDash.Essentials.Touchpanel
|
||||
};
|
||||
}
|
||||
|
||||
private void SendFullStatus()
|
||||
private void SendFullStatus(string id = null)
|
||||
{
|
||||
var message = new TswAppStateMessage
|
||||
{
|
||||
AppOpen = _appControl.AppOpenFeedback.BoolValue,
|
||||
};
|
||||
|
||||
PostStatusMessage(message);
|
||||
PostStatusMessage(message, id);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -59,6 +66,9 @@ namespace PepperDash.Essentials.Touchpanel
|
||||
/// </summary>
|
||||
public class TswAppStateMessage : DeviceStateMessageBase
|
||||
{
|
||||
/// <summary>
|
||||
/// True if the Zoom app is open on a TSW panel
|
||||
/// </summary>
|
||||
[JsonProperty("appOpen", NullValueHandling = NullValueHandling.Ignore)]
|
||||
public bool? AppOpen { get; set; }
|
||||
}
|
||||
|
||||
@@ -8,17 +8,24 @@ using PepperDash.Essentials.AppServer.Messengers;
|
||||
namespace PepperDash.Essentials.Touchpanel
|
||||
{
|
||||
/// <summary>
|
||||
/// Represents a ITswZoomControlMessenger
|
||||
/// Messenger to handle
|
||||
/// </summary>
|
||||
public class ITswZoomControlMessenger : MessengerBase
|
||||
{
|
||||
private readonly ITswZoomControl _zoomControl;
|
||||
|
||||
/// <summary>
|
||||
/// Create in instance of the <see cref="ITswZoomControlMessenger"/> class for the given device
|
||||
/// </summary>
|
||||
/// <param name="key">The key for this messenger</param>
|
||||
/// <param name="messagePath">The message path for this messenger</param>
|
||||
/// <param name="device">The device for this messenger</param>
|
||||
public ITswZoomControlMessenger(string key, string messagePath, Device device) : base(key, messagePath, device)
|
||||
{
|
||||
_zoomControl = device as ITswZoomControl;
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void RegisterActions()
|
||||
{
|
||||
if (_zoomControl == null)
|
||||
@@ -27,7 +34,9 @@ namespace PepperDash.Essentials.Touchpanel
|
||||
return;
|
||||
}
|
||||
|
||||
AddAction($"/fullStatus", (id, context) => SendFullStatus());
|
||||
AddAction($"/fullStatus", (id, context) => SendFullStatus(id));
|
||||
|
||||
AddAction($"/zoomStatus", (id, content) => SendFullStatus(id));
|
||||
|
||||
|
||||
AddAction($"/endCall", (id, context) => _zoomControl.EndZoomCall());
|
||||
@@ -53,7 +62,7 @@ namespace PepperDash.Essentials.Touchpanel
|
||||
};
|
||||
}
|
||||
|
||||
private void SendFullStatus()
|
||||
private void SendFullStatus(string id = null)
|
||||
{
|
||||
var message = new TswZoomStateMessage
|
||||
{
|
||||
@@ -61,7 +70,7 @@ namespace PepperDash.Essentials.Touchpanel
|
||||
IncomingCall = _zoomControl?.ZoomIncomingCallFeedback.BoolValue
|
||||
};
|
||||
|
||||
PostStatusMessage(message);
|
||||
PostStatusMessage(message, id);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -70,9 +79,16 @@ namespace PepperDash.Essentials.Touchpanel
|
||||
/// </summary>
|
||||
public class TswZoomStateMessage : DeviceStateMessageBase
|
||||
{
|
||||
/// <summary>
|
||||
/// True if the panel is in a Zoom call
|
||||
/// </summary>
|
||||
[JsonProperty("inCall", NullValueHandling = NullValueHandling.Ignore)]
|
||||
public bool? InCall { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// True if there is an incoming Zoom call
|
||||
/// </summary>
|
||||
|
||||
[JsonProperty("incomingCall", NullValueHandling = NullValueHandling.Ignore)]
|
||||
public bool? IncomingCall { get; set; }
|
||||
}
|
||||
|
||||
@@ -7,17 +7,24 @@ using PepperDash.Essentials.AppServer.Messengers;
|
||||
namespace PepperDash.Essentials.Touchpanel
|
||||
{
|
||||
/// <summary>
|
||||
/// Represents a ThemeMessenger
|
||||
/// Messenger to save the current theme (light/dark) and send to a device
|
||||
/// </summary>
|
||||
public class ThemeMessenger : MessengerBase
|
||||
{
|
||||
private readonly ITheme _tpDevice;
|
||||
|
||||
/// <summary>
|
||||
/// Create an instance of the <see cref="ThemeMessenger"/> class
|
||||
/// </summary>
|
||||
/// <param name="key">The key for this messenger</param>
|
||||
/// <param name="path">The path for this messenger</param>
|
||||
/// <param name="device">The device for this messenger</param>
|
||||
public ThemeMessenger(string key, string path, ITheme device) : base(key, path, device as Device)
|
||||
{
|
||||
_tpDevice = device;
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void RegisterActions()
|
||||
{
|
||||
AddAction("/fullStatus", (id, content) =>
|
||||
|
||||
Reference in New Issue
Block a user