docs: complete XML documentation for all projects with inheritdoc tags

Co-authored-by: andrew-welker <1765622+andrew-welker@users.noreply.github.com>
This commit is contained in:
copilot-swe-agent[bot]
2025-07-22 15:53:01 +00:00
parent 260677a37f
commit 7987eb8f9b
485 changed files with 8099 additions and 2490 deletions

View File

@@ -84,10 +84,6 @@ namespace PepperDash.Core
port.TextReceived += Port_TextReceivedStringDelimiter;
}
/// <summary>
/// Disconnects this gather from the Port's TextReceived event. This will not fire LineReceived
/// after the this call.
/// </summary>
/// <summary>
/// Stop method
/// </summary>

View File

@@ -22,9 +22,6 @@ namespace PepperDash.Core
/// </summary>
private CTimer DebugExpiryPeriod;
/// <summary>
/// The current debug setting
/// </summary>
/// <summary>
/// Gets or sets the DebugSetting
/// </summary>
@@ -44,9 +41,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Indicates that receive stream debugging is enabled
/// </summary>
/// <summary>
/// Gets or sets the RxStreamDebuggingIsEnabled
/// </summary>

View File

@@ -5,9 +5,6 @@ using Newtonsoft.Json.Converters;
namespace PepperDash.Core
{
/// <summary>
/// Config properties that indicate how to communicate with a device for control
/// </summary>
/// <summary>
/// Represents a ControlPropertiesConfig
/// </summary>

View File

@@ -29,9 +29,6 @@ namespace PepperDash.Core
/// </summary>
public class GenericSocketStatusChageEventArgs : EventArgs
{
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the Client
/// </summary>
@@ -62,9 +59,6 @@ namespace PepperDash.Core
/// </summary>
public class GenericTcpServerStateChangedEventArgs : EventArgs
{
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the State
/// </summary>
@@ -159,9 +153,6 @@ namespace PepperDash.Core
}
}
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the Text
/// </summary>

View File

@@ -78,9 +78,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Port on server
/// </summary>
/// <summary>
/// Gets or sets the Port
/// </summary>
@@ -151,9 +148,6 @@ namespace PepperDash.Core
/// </summary>
public string ConnectionFailure { get { return ClientStatus.ToString(); } }
/// <summary>
/// bool to track if auto reconnect should be set on the socket
/// </summary>
/// <summary>
/// Gets or sets the AutoReconnect
/// </summary>
@@ -193,9 +187,6 @@ namespace PepperDash.Core
#region GenericSecureTcpIpClient properties
/// <summary>
/// Bool to show whether the server requires a preshared key. This is used in the DynamicTCPServer class
/// </summary>
/// <summary>
/// Gets or sets the SharedKeyRequired
/// </summary>
@@ -215,9 +206,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// SharedKey is sent for varification to the server. Shared key can be any text (255 char limit in SIMPL+ Module), but must match the Shared Key on the Server module
/// </summary>
/// <summary>
/// Gets or sets the SharedKey
/// </summary>
@@ -233,9 +221,6 @@ namespace PepperDash.Core
/// </summary>
bool IsTryingToConnect;
/// <summary>
/// Bool showing if socket is ready for communication after shared key exchange
/// </summary>
/// <summary>
/// Gets or sets the IsReadyForCommunication
/// </summary>
@@ -356,9 +341,6 @@ namespace PepperDash.Core
BufferSize = 2000;
}
/// <summary>
/// Just to help S+ set the key
/// </summary>
/// <summary>
/// Initialize method
/// </summary>
@@ -452,9 +434,6 @@ namespace PepperDash.Core
return true;
}
/// <summary>
/// Connect Method. Will return if already connected. Will write errors if missing address, port, or unique key/name.
/// </summary>
/// <summary>
/// Connect method
/// </summary>
@@ -586,9 +565,6 @@ namespace PepperDash.Core
}
}
/// <summary>
///
/// </summary>
/// <summary>
/// Disconnect method
/// </summary>
@@ -612,9 +588,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Does the actual disconnect business
/// </summary>
/// <summary>
/// DisconnectClient method
/// </summary>
@@ -875,9 +848,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// General send method
/// </summary>
/// <summary>
/// SendText method
/// </summary>
@@ -907,9 +877,6 @@ namespace PepperDash.Core
}
}
/// <summary>
///
/// </summary>
/// <summary>
/// SendBytes method
/// </summary>

View File

@@ -79,9 +79,6 @@ namespace PepperDash.Core
/// </summary>
public string Hostname { get; set; }
/// <summary>
/// Port on server
/// </summary>
/// <summary>
/// Gets or sets the Port
/// </summary>
@@ -115,9 +112,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// SharedKey is sent for varification to the server. Shared key can be any text (255 char limit in SIMPL+ Module), but must match the Shared Key on the Server module
/// </summary>
/// <summary>
/// Gets or sets the SharedKey
/// </summary>
@@ -128,9 +122,6 @@ namespace PepperDash.Core
/// </summary>
private bool WaitingForSharedKeyResponse { get; set; }
/// <summary>
/// Defaults to 2000
/// </summary>
/// <summary>
/// Gets or sets the BufferSize
/// </summary>
@@ -344,9 +335,6 @@ namespace PepperDash.Core
#region Methods
/// <summary>
/// Just to help S+ set the key
/// </summary>
/// <summary>
/// Initialize method
/// </summary>
@@ -406,9 +394,6 @@ namespace PepperDash.Core
}
/// <summary>
/// Connect Method. Will return if already connected. Will write errors if missing address, port, or unique key/name.
/// </summary>
/// <summary>
/// Connect method
/// </summary>
@@ -540,9 +525,6 @@ namespace PepperDash.Core
}
}
/// <summary>
///
/// </summary>
/// <summary>
/// Disconnect method
/// </summary>
@@ -821,9 +803,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// General send method
/// </summary>
/// <summary>
/// SendText method
/// </summary>
@@ -853,9 +832,6 @@ namespace PepperDash.Core
}
}
/// <summary>
///
/// </summary>
/// <summary>
/// SendBytes method
/// </summary>

View File

@@ -57,9 +57,6 @@ namespace PepperDash.Core
/// </summary>
public ServerHasChokedCallbackDelegate ServerHasChoked { get; set; }
/// <summary>
///
/// </summary>
/// <summary>
/// Delegate for ServerHasChokedCallbackDelegate
/// </summary>
@@ -106,9 +103,6 @@ namespace PepperDash.Core
/// </summary>
int MonitorClientFailureCount;
/// <summary>
/// 3 by default
/// </summary>
/// <summary>
/// Gets or sets the MonitorClientMaxFailureCount
/// </summary>
@@ -195,9 +189,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Port Server should listen on
/// </summary>
/// <summary>
/// Gets or sets the Port
/// </summary>
@@ -231,10 +222,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// SharedKey is sent for varification to the server. Shared key can be any text (255 char limit in SIMPL+ Module), but must match the Shared Key on the Server module.
/// If SharedKey changes while server is listening or clients are connected, disconnect and stop listening will be called
/// </summary>
/// <summary>
/// Gets or sets the SharedKey
/// </summary>
@@ -259,9 +246,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Milliseconds before server expects another heartbeat. Set by property HeartbeatRequiredIntervalInSeconds which is driven from S+
/// </summary>
/// <summary>
/// Gets or sets the HeartbeatRequiredIntervalMs
/// </summary>
@@ -272,9 +256,6 @@ namespace PepperDash.Core
/// </summary>
public ushort HeartbeatRequiredIntervalInSeconds { set { HeartbeatRequiredIntervalMs = (value * 1000); } }
/// <summary>
/// String to Match for heartbeat. If null or empty any string will reset heartbeat timer
/// </summary>
/// <summary>
/// Gets or sets the HeartbeatStringToMatch
/// </summary>
@@ -293,9 +274,6 @@ namespace PepperDash.Core
/// </summary>
public List<uint> ConnectedClientsIndexes = new List<uint>();
/// <summary>
/// Defaults to 2000
/// </summary>
/// <summary>
/// Gets or sets the BufferSize
/// </summary>
@@ -360,9 +338,6 @@ namespace PepperDash.Core
#region Methods - Server Actions
/// <summary>
/// Disconnects all clients and stops the server
/// </summary>
/// <summary>
/// KillServer method
/// </summary>
public void KillServer()
@@ -421,9 +396,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Start listening on the specified port
/// </summary>
/// <summary>
/// Listen method
/// </summary>
@@ -482,9 +454,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Stop Listeneing
/// </summary>
/// <summary>
/// StopListening method
/// </summary>
@@ -527,9 +496,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Disconnect All Clients
/// </summary>
/// <summary>
/// DisconnectAllClientsForShutdown method
/// </summary>
public void DisconnectAllClientsForShutdown()

View File

@@ -41,9 +41,6 @@ namespace PepperDash.Core
///// </summary>
//public event GenericSocketStatusChangeEventDelegate SocketStatusChange;
/// <summary>
/// Address of server
/// </summary>
/// <summary>
/// Gets or sets the Hostname
/// </summary>
@@ -54,17 +51,11 @@ namespace PepperDash.Core
/// </summary>
public int Port { get; set; }
/// <summary>
/// Username for server
/// </summary>
/// <summary>
/// Gets or sets the Username
/// </summary>
public string Username { get; set; }
/// <summary>
/// And... Password for server. That was worth documenting!
/// </summary>
/// <summary>
/// Gets or sets the Password
/// </summary>
@@ -131,10 +122,6 @@ namespace PepperDash.Core
set { AutoReconnect = value == 1; }
}
/// <summary>
/// Millisecond value, determines the timeout period in between reconnect attempts.
/// Set to 5000 by default
/// </summary>
/// <summary>
/// Gets or sets the AutoReconnectIntervalMs
/// </summary>
@@ -209,9 +196,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Connect to the server, using the provided properties.
/// </summary>
/// <summary>
/// Connect method
/// </summary>
@@ -339,9 +323,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Disconnect the clients and put away it's resources.
/// </summary>
/// <summary>
/// Disconnect method
/// </summary>
@@ -573,9 +554,6 @@ namespace PepperDash.Core
//*****************************************************************************************************
//*****************************************************************************************************
/// <summary>
/// Fired when connection changes
/// </summary>
/// <summary>
/// Represents a SshConnectionChangeEventArgs
/// </summary>
public class SshConnectionChangeEventArgs : EventArgs
@@ -585,25 +563,16 @@ public class SshConnectionChangeEventArgs : EventArgs
/// </summary>
public bool IsConnected { get; private set; }
/// <summary>
/// Connection Status represented as a ushort
/// </summary>
/// <summary>
/// Gets or sets the UIsConnected
/// </summary>
public ushort UIsConnected { get { return (ushort)(Client.IsConnected ? 1 : 0); } }
/// <summary>
/// The client
/// </summary>
/// <summary>
/// Gets or sets the Client
/// </summary>
public GenericSshClient Client { get; private set; }
/// <summary>
/// Socket Status as represented by
/// </summary>
/// <summary>
/// Gets or sets the Status
/// </summary>

View File

@@ -58,9 +58,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Port on server
/// </summary>
/// <summary>
/// Gets or sets the Port
/// </summary>
@@ -138,9 +135,6 @@ namespace PepperDash.Core
/// </summary>
public string ConnectionFailure { get { return ClientStatus.ToString(); } }
/// <summary>
/// bool to track if auto reconnect should be set on the socket
/// </summary>
/// <summary>
/// Gets or sets the AutoReconnect
/// </summary>
@@ -237,9 +231,6 @@ namespace PepperDash.Core
}, Timeout.Infinite);
}
/// <summary>
/// Just to help S+ set the key
/// </summary>
/// <summary>
/// Initialize method
/// </summary>
@@ -279,9 +270,6 @@ namespace PepperDash.Core
return true;
}
/// <summary>
/// Attempts to connect to the server
/// </summary>
/// <summary>
/// Connect method
/// </summary>
@@ -349,9 +337,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Attempts to disconnect the client
/// </summary>
/// <summary>
/// Disconnect method
/// </summary>
@@ -372,9 +357,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Does the actual disconnect business
/// </summary>
/// <summary>
/// DisconnectClient method
/// </summary>
@@ -467,9 +449,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// General send method
/// </summary>
/// <summary>
/// SendText method
/// </summary>
@@ -483,9 +462,6 @@ namespace PepperDash.Core
_client.SendData(bytes, bytes.Length);
}
/// <summary>
/// This is useful from console and...?
/// </summary>
/// <summary>
/// SendEscapedText method
/// </summary>
@@ -538,9 +514,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Configuration properties for TCP/SSH Connections
/// </summary>
/// <summary>
/// Represents a TcpSshPropertiesConfig
/// </summary>
@@ -562,9 +535,6 @@ namespace PepperDash.Core
/// Username credential
/// </summary>
public string Username { get; set; }
/// <summary>
/// Passord credential
/// </summary>
/// <summary>
/// Gets or sets the Password
/// </summary>
@@ -575,17 +545,11 @@ namespace PepperDash.Core
/// </summary>
public int BufferSize { get; set; }
/// <summary>
/// Defaults to true
/// </summary>
/// <summary>
/// Gets or sets the AutoReconnect
/// </summary>
public bool AutoReconnect { get; set; }
/// <summary>
/// Defaults to 5000ms
/// </summary>
/// <summary>
/// Gets or sets the AutoReconnectIntervalMs
/// </summary>

View File

@@ -68,9 +68,6 @@ namespace PepperDash.Core
/// </summary>
public string Hostname { get; set; }
/// <summary>
/// Port on server
/// </summary>
/// <summary>
/// Gets or sets the Port
/// </summary>
@@ -104,9 +101,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// SharedKey is sent for varification to the server. Shared key can be any text (255 char limit in SIMPL+ Module), but must match the Shared Key on the Server module
/// </summary>
/// <summary>
/// Gets or sets the SharedKey
/// </summary>
@@ -117,9 +111,6 @@ namespace PepperDash.Core
/// </summary>
private bool WaitingForSharedKeyResponse { get; set; }
/// <summary>
/// Defaults to 2000
/// </summary>
/// <summary>
/// Gets or sets the BufferSize
/// </summary>
@@ -297,9 +288,6 @@ namespace PepperDash.Core
#region Methods
/// <summary>
/// Just to help S+ set the key
/// </summary>
/// <summary>
/// Initialize method
/// </summary>
@@ -322,9 +310,6 @@ namespace PepperDash.Core
}
/// <summary>
/// Connect Method. Will return if already connected. Will write errors if missing address, port, or unique key/name.
/// </summary>
/// <summary>
/// Connect method
/// </summary>
@@ -456,9 +441,6 @@ namespace PepperDash.Core
}
}
/// <summary>
///
/// </summary>
/// <summary>
/// Disconnect method
/// </summary>
@@ -686,9 +668,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// General send method
/// </summary>
/// <summary>
/// SendText method
/// </summary>
@@ -718,9 +697,6 @@ namespace PepperDash.Core
}
}
/// <summary>
///
/// </summary>
/// <summary>
/// SendBytes method
/// </summary>

View File

@@ -51,9 +51,6 @@ namespace PepperDash.Core
/// </summary>
public ServerHasChokedCallbackDelegate ServerHasChoked { get; set; }
/// <summary>
///
/// </summary>
/// <summary>
/// Delegate for ServerHasChokedCallbackDelegate
/// </summary>
@@ -84,9 +81,6 @@ namespace PepperDash.Core
/// </summary>
int MonitorClientFailureCount;
/// <summary>
/// 3 by default
/// </summary>
/// <summary>
/// Gets or sets the MonitorClientMaxFailureCount
/// </summary>
@@ -176,9 +170,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Port Server should listen on
/// </summary>
/// <summary>
/// Gets or sets the Port
/// </summary>
@@ -212,10 +203,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// SharedKey is sent for varification to the server. Shared key can be any text (255 char limit in SIMPL+ Module), but must match the Shared Key on the Server module.
/// If SharedKey changes while server is listening or clients are connected, disconnect and stop listening will be called
/// </summary>
/// <summary>
/// Gets or sets the SharedKey
/// </summary>
@@ -240,9 +227,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Milliseconds before server expects another heartbeat. Set by property HeartbeatRequiredIntervalInSeconds which is driven from S+
/// </summary>
/// <summary>
/// Gets or sets the HeartbeatRequiredIntervalMs
/// </summary>
@@ -253,9 +237,6 @@ namespace PepperDash.Core
/// </summary>
public ushort HeartbeatRequiredIntervalInSeconds { set { HeartbeatRequiredIntervalMs = (value * 1000); } }
/// <summary>
/// String to Match for heartbeat. If null or empty any string will reset heartbeat timer
/// </summary>
/// <summary>
/// Gets or sets the HeartbeatStringToMatch
/// </summary>
@@ -274,9 +255,6 @@ namespace PepperDash.Core
/// </summary>
public List<uint> ConnectedClientsIndexes = new List<uint>();
/// <summary>
/// Defaults to 2000
/// </summary>
/// <summary>
/// Gets or sets the BufferSize
/// </summary>
@@ -341,9 +319,6 @@ namespace PepperDash.Core
#region Methods - Server Actions
/// <summary>
/// Disconnects all clients and stops the server
/// </summary>
/// <summary>
/// KillServer method
/// </summary>
public void KillServer()
@@ -401,9 +376,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Start listening on the specified port
/// </summary>
/// <summary>
/// Listen method
/// </summary>
@@ -461,9 +433,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Stop Listening
/// </summary>
/// <summary>
/// StopListening method
/// </summary>
@@ -506,9 +475,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Disconnect All Clients
/// </summary>
/// <summary>
/// DisconnectAllClientsForShutdown method
/// </summary>
public void DisconnectAllClientsForShutdown()

View File

@@ -187,9 +187,6 @@ namespace PepperDash.Core
Disconnect();
}
/// <summary>
/// Enables the UDP Server
/// </summary>
/// <summary>
/// Connect method
/// </summary>
@@ -227,9 +224,6 @@ namespace PepperDash.Core
Server.ReceiveDataAsync(Receive);
}
/// <summary>
/// Disabled the UDP Server
/// </summary>
/// <summary>
/// Disconnect method
/// </summary>
@@ -335,9 +329,6 @@ namespace PepperDash.Core
}
/// <summary>
///
/// </summary>
/// <summary>
/// Represents a GenericUdpReceiveTextExtraArgs
/// </summary>

View File

@@ -2,9 +2,6 @@
namespace PepperDash.Core
{
/// <summary>
/// Client config object for TCP client with server that inherits from TcpSshPropertiesConfig and adds properties for shared key and heartbeat
/// </summary>
/// <summary>
/// Represents a TcpClientConfigObject
/// </summary>

View File

@@ -38,9 +38,6 @@ namespace PepperDash.Core
void Disconnect();
}
/// <summary>
/// Represents a device that uses basic connection
/// </summary>
/// <summary>
/// Defines the contract for IBasicCommunication
/// </summary>
@@ -150,9 +147,6 @@ namespace PepperDash.Core
/// </summary>
public class GenericCommMethodReceiveBytesArgs : EventArgs
{
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the Bytes
/// </summary>

View File

@@ -5,9 +5,6 @@ using Serilog.Events;
namespace PepperDash.Core
{
//*********************************************************************************************************
/// <summary>
/// The core event and status-bearing class that most if not all device and connectors can derive from.
/// </summary>
/// <summary>
/// Represents a Device
/// </summary>
@@ -18,9 +15,6 @@ namespace PepperDash.Core
/// Unique Key
/// </summary>
public string Key { get; protected set; }
/// <summary>
/// Name of the devie
/// </summary>
/// <summary>
/// Gets or sets the Name
/// </summary>
@@ -102,9 +96,6 @@ namespace PepperDash.Core
_PostActivationActions.Add(act);
}
/// <summary>
/// Executes the preactivation actions
/// </summary>
/// <summary>
/// PreActivate method
/// </summary>
@@ -124,11 +115,6 @@ namespace PepperDash.Core
});
}
/// <summary>
/// Gets this device ready to be used in the system. Runs any added pre-activation items, and
/// all post-activation at end. Classes needing additional logic to
/// run should override CustomActivate()
/// </summary>
/// <summary>
/// Activate method
/// </summary>
@@ -142,9 +128,6 @@ namespace PepperDash.Core
return result;
}
/// <summary>
/// Executes the postactivation actions
/// </summary>
/// <summary>
/// PostActivate method
/// </summary>

View File

@@ -4,9 +4,6 @@ using Serilog.Events;
namespace PepperDash.Core
{
/// <summary>
/// Class to help with accessing values from the CrestronEthernetHelper class
/// </summary>
/// <summary>
/// Represents a EthernetHelper
/// </summary>
@@ -27,9 +24,6 @@ namespace PepperDash.Core
// ADD OTHER HELPERS HERE
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the PortNumber
/// </summary>

View File

@@ -16,25 +16,16 @@ namespace PepperDash.Core
/// </summary>
public bool State { get; set; }
/// <summary>
/// Boolean ushort value property
/// </summary>
/// <summary>
/// Gets or sets the IntValue
/// </summary>
public ushort IntValue { get { return (ushort)(State ? 1 : 0); } }
/// <summary>
/// Boolean change event args type
/// </summary>
/// <summary>
/// Gets or sets the Type
/// </summary>
public ushort Type { get; set; }
/// <summary>
/// Boolean change event args index
/// </summary>
/// <summary>
/// Gets or sets the Index
/// </summary>
@@ -73,9 +64,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// Ushort change event args
/// </summary>
/// <summary>
/// Represents a UshrtChangeEventArgs
/// </summary>
@@ -86,17 +74,11 @@ namespace PepperDash.Core
/// </summary>
public ushort IntValue { get; set; }
/// <summary>
/// Ushort change event args type
/// </summary>
/// <summary>
/// Gets or sets the Type
/// </summary>
public ushort Type { get; set; }
/// <summary>
/// Ushort change event args index
/// </summary>
/// <summary>
/// Gets or sets the Index
/// </summary>
@@ -135,9 +117,6 @@ namespace PepperDash.Core
}
}
/// <summary>
/// String change event args
/// </summary>
/// <summary>
/// Represents a StringChangeEventArgs
/// </summary>
@@ -148,17 +127,11 @@ namespace PepperDash.Core
/// </summary>
public string StringValue { get; set; }
/// <summary>
/// String change event args type
/// </summary>
/// <summary>
/// Gets or sets the Type
/// </summary>
public ushort Type { get; set; }
/// <summary>
/// string change event args index
/// </summary>
/// <summary>
/// Gets or sets the Index
/// </summary>

View File

@@ -32,17 +32,11 @@ namespace PepperDash.Core.JsonStandardObjects
/// </summary>
public DeviceConfig Device { get; set; }
/// <summary>
/// Device change event args type
/// </summary>
/// <summary>
/// Gets or sets the Type
/// </summary>
public ushort Type { get; set; }
/// <summary>
/// Device change event args index
/// </summary>
/// <summary>
/// Gets or sets the Index
/// </summary>

View File

@@ -47,17 +47,11 @@ namespace PepperDash.Core.JsonStandardObjects
]
}
*/
/// <summary>
/// Device communication parameter class
/// </summary>
/// <summary>
/// Represents a ComParamsConfig
/// </summary>
public class ComParamsConfig
{
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the baudRate
/// </summary>
@@ -92,16 +86,10 @@ namespace PepperDash.Core.JsonStandardObjects
public int pacing { get; set; }
// convert properties for simpl
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the simplBaudRate
/// </summary>
public ushort simplBaudRate { get { return Convert.ToUInt16(baudRate); } }
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the simplDataBits
/// </summary>
@@ -155,16 +143,10 @@ namespace PepperDash.Core.JsonStandardObjects
public int autoReconnectIntervalMs { get; set; }
// convert properties for simpl
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the simplPort
/// </summary>
public ushort simplPort { get { return Convert.ToUInt16(port); } }
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the simplAutoReconnect
/// </summary>
@@ -210,9 +192,6 @@ namespace PepperDash.Core.JsonStandardObjects
public TcpSshPropertiesConfig tcpSshProperties { get; set; }
// convert properties for simpl
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the simplControlPortNumber
/// </summary>
@@ -228,9 +207,6 @@ namespace PepperDash.Core.JsonStandardObjects
}
}
/// <summary>
/// Device properties class
/// </summary>
/// <summary>
/// Represents a PropertiesConfig
/// </summary>
@@ -250,16 +226,10 @@ namespace PepperDash.Core.JsonStandardObjects
public ControlConfig control { get; set; }
// convert properties for simpl
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the simplDeviceId
/// </summary>
public ushort simplDeviceId { get { return Convert.ToUInt16(deviceId); } }
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the simplEnabled
/// </summary>

View File

@@ -88,9 +88,6 @@ namespace PepperDash.Core.JsonToSimpl
/// </summary>
public class SPlusValueWrapper
{
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the ValueType
/// </summary>
@@ -125,9 +122,6 @@ namespace PepperDash.Core.JsonToSimpl
}
}
/// <summary>
/// S+ types enum
/// </summary>
/// <summary>
/// Enumeration of SPlusType values
/// </summary>

View File

@@ -52,9 +52,6 @@ namespace PepperDash.Core.JsonToSimpl
}
}
/// <summary>
/// Gets a master by its key. Case-insensitive
/// </summary>
/// <summary>
/// GetMasterByFile method
/// </summary>

View File

@@ -5,9 +5,6 @@ using Serilog.Events;
namespace PepperDash.Core.JsonToSimpl
{
/// <summary>
/// Used to interact with an array of values with the S+ modules
/// </summary>
/// <summary>
/// Represents a JsonToSimplArrayLookupChild
/// </summary>
@@ -79,12 +76,10 @@ namespace PepperDash.Core.JsonToSimpl
PathSuffix == null ? "" : PathSuffix);
}
/// <summary>
/// Process all values
/// </summary>
/// <summary>
/// ProcessAll method
/// </summary>
/// <inheritdoc />
public override void ProcessAll()
{
if (FindInArray())

View File

@@ -28,17 +28,11 @@ namespace PepperDash.Core.JsonToSimpl
/// </summary>
public SPlusValuesDelegate GetAllValuesDelegate { get; set; }
/// <summary>
/// Use a callback to reduce task switch/threading
/// </summary>
/// <summary>
/// Gets or sets the SetAllPathsDelegate
/// </summary>
public SPlusValuesDelegate SetAllPathsDelegate { get; set; }
/// <summary>
/// Unique identifier for instance
/// </summary>
/// <summary>
/// Gets or sets the Key
/// </summary>
@@ -55,9 +49,6 @@ namespace PepperDash.Core.JsonToSimpl
/// </summary>
public string PathSuffix { get; protected set; }
/// <summary>
/// Indicates if the instance is linked to an object
/// </summary>
/// <summary>
/// Gets or sets the LinkedToObject
/// </summary>
@@ -122,9 +113,6 @@ namespace PepperDash.Core.JsonToSimpl
BoolPaths[index] = path;
}
/// <summary>
/// Set the JPath for a ushort out index.
/// </summary>
/// <summary>
/// SetUshortPath method
/// </summary>
@@ -135,9 +123,6 @@ namespace PepperDash.Core.JsonToSimpl
UshortPaths[index] = path;
}
/// <summary>
/// Set the JPath for a string output index.
/// </summary>
/// <summary>
/// SetStringPath method
/// </summary>
@@ -148,13 +133,10 @@ namespace PepperDash.Core.JsonToSimpl
StringPaths[index] = path;
}
/// <summary>
/// Evalutates all outputs with defined paths. called by S+ when paths are ready to process
/// and by Master when file is read.
/// </summary>
/// <summary>
/// ProcessAll method
/// </summary>
/// <inheritdoc />
public virtual void ProcessAll()
{
if (!LinkedToObject)

View File

@@ -19,17 +19,11 @@ namespace PepperDash.Core.JsonToSimpl
/// </summary>
public string Filepath { get; private set; }
/// <summary>
/// Filepath to the actual file that will be read (Portal or local)
/// </summary>
/// <summary>
/// Gets or sets the ActualFilePath
/// </summary>
public string ActualFilePath { get; private set; }
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the Filename
/// </summary>

View File

@@ -2,9 +2,6 @@
namespace PepperDash.Core.JsonToSimpl
{
/// <summary>
///
/// </summary>
/// <summary>
/// Represents a JsonToSimplFixedPathObject
/// </summary>

View File

@@ -5,9 +5,6 @@ using Newtonsoft.Json.Linq;
namespace PepperDash.Core.JsonToSimpl
{
/// <summary>
/// Generic Master
/// </summary>
/// <summary>
/// Represents a JsonToSimplGenericMaster
/// </summary>
@@ -23,9 +20,6 @@ namespace PepperDash.Core.JsonToSimpl
// To prevent multiple same-file access
static object WriteLock = new object();
/// <summary>
/// Callback action for saving
/// </summary>
/// <summary>
/// Gets or sets the SaveCallback
/// </summary>
@@ -81,12 +75,10 @@ namespace PepperDash.Core.JsonToSimpl
}
}
/// <summary>
///
/// </summary>
/// <summary>
/// Save method
/// </summary>
/// <inheritdoc />
public override void Save()
{
// this code is duplicated in the other masters!!!!!!!!!!!!!

View File

@@ -38,9 +38,6 @@ namespace PepperDash.Core.JsonToSimpl
/// </summary>
public string Key { get { return UniqueID; } }
/// <summary>
/// A unique ID
/// </summary>
/// <summary>
/// Gets or sets the UniqueID
/// </summary>
@@ -56,10 +53,6 @@ namespace PepperDash.Core.JsonToSimpl
}
string _DebugName = "";
/// <summary>
/// This will be prepended to all paths to allow path swapping or for more organized
/// sub-paths
/// </summary>
/// <summary>
/// Gets or sets the PathPrefix
/// </summary>
@@ -89,9 +82,6 @@ namespace PepperDash.Core.JsonToSimpl
}
}
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the JsonObject
/// </summary>
@@ -140,9 +130,6 @@ namespace PepperDash.Core.JsonToSimpl
}
}
/// <summary>
/// Called from the child to add changed or new values for saving
/// </summary>
/// <summary>
/// AddUnsavedValue method
/// </summary>

View File

@@ -18,9 +18,6 @@ namespace PepperDash.Core.JsonToSimpl
/// </summary>
public string PortalFilepath { get; private set; }
/// <summary>
/// File path of the actual file being read (Portal or local)
/// </summary>
/// <summary>
/// Gets or sets the ActualFilePath
/// </summary>

View File

@@ -77,17 +77,11 @@ namespace PepperDash.Core
/// </summary>
public static string FileName = string.Format(@"app{0}Debug.json", InitialParametersClass.ApplicationNumber);
/// <summary>
/// Debug level to set for a given program.
/// </summary>
/// <summary>
/// Gets or sets the Level
/// </summary>
public static int Level { get; private set; }
/// <summary>
/// When this is true, the configuration file will NOT be loaded until triggered by either a console command or a signal
/// </summary>
/// <summary>
/// Gets or sets the DoNotLoadConfigOnNextBoot
/// </summary>
@@ -99,9 +93,6 @@ namespace PepperDash.Core
public static bool IsRunningOnAppliance = CrestronEnvironment.DevicePlatform == eDevicePlatform.Appliance;
/// <summary>
/// Version for the currently loaded PepperDashCore dll
/// </summary>
/// <summary>
/// Gets or sets the PepperDashCoreVersion
/// </summary>
@@ -620,9 +611,6 @@ namespace PepperDash.Core
InitialParametersClass.ApplicationNumber, DoNotLoadConfigOnNextBoot);
}
/// <summary>
///
/// </summary>
/// <summary>
/// ShowDebugLog method
/// </summary>
@@ -1137,9 +1125,6 @@ namespace PepperDash.Core
return string.Format("{0}{1}user{1}debugSettings{1}{2}.json",Directory.GetApplicationRootDirectory(), Path.DirectorySeparatorChar, InitialParametersClass.RoomId);
}
/// <summary>
/// Error level to for message to be logged at
/// </summary>
/// <summary>
/// Enumeration of ErrorLogLevel values
/// </summary>

View File

@@ -149,9 +149,6 @@ namespace PepperDash.Core
string.Format(format, items));
}
/// <summary>
/// Appends a device Key to the beginning of a message
/// </summary>
/// <summary>
/// Console method
/// </summary>

View File

@@ -4,9 +4,6 @@ using Newtonsoft.Json;
namespace PepperDash.Core.Logging
{
/// <summary>
/// Class to persist current Debug settings across program restarts
/// </summary>
/// <summary>
/// Represents a DebugContextCollection
/// </summary>

View File

@@ -2,9 +2,6 @@
namespace PepperDash.Core.PasswordManagement
{
/// <summary>
/// A class to allow user interaction with the PasswordManager
/// </summary>
/// <summary>
/// Represents a PasswordClient
/// </summary>
@@ -120,9 +117,6 @@ namespace PepperDash.Core.PasswordManagement
ValidatePassword(PasswordToValidate);
}
/// <summary>
/// Clears the user entered password and resets the LEDs
/// </summary>
/// <summary>
/// ClearPassword method
/// </summary>

View File

@@ -4,9 +4,6 @@ using Crestron.SimplSharp;
namespace PepperDash.Core.PasswordManagement
{
/// <summary>
/// Allows passwords to be stored and managed
/// </summary>
/// <summary>
/// Represents a PasswordManager
/// </summary>

View File

@@ -68,9 +68,6 @@ namespace PepperDash.Core.SystemInfo
public const ushort ProgramConfigChange = 305;
}
/// <summary>
/// Processor Change Event Args Class
/// </summary>
/// <summary>
/// Represents a ProcessorChangeEventArgs
/// </summary>
@@ -117,9 +114,6 @@ namespace PepperDash.Core.SystemInfo
}
}
/// <summary>
/// Ethernet Change Event Args Class
/// </summary>
/// <summary>
/// Represents a EthernetChangeEventArgs
/// </summary>
@@ -171,9 +165,6 @@ namespace PepperDash.Core.SystemInfo
}
}
/// <summary>
/// Control Subnet Chage Event Args Class
/// </summary>
/// <summary>
/// Represents a ControlSubnetChangeEventArgs
/// </summary>
@@ -220,9 +211,6 @@ namespace PepperDash.Core.SystemInfo
}
}
/// <summary>
/// Program Change Event Args Class
/// </summary>
/// <summary>
/// Represents a ProgramChangeEventArgs
/// </summary>

View File

@@ -100,9 +100,6 @@ namespace PepperDash.Core.SystemInfo
OnBoolChange(false, 0, SystemInfoConstants.BusyBoolChange);
}
/// <summary>
/// Gets the current ethernet info
/// </summary>
/// <summary>
/// GetEthernetInfo method
/// </summary>
@@ -164,9 +161,6 @@ namespace PepperDash.Core.SystemInfo
OnBoolChange(false, 0, SystemInfoConstants.BusyBoolChange);
}
/// <summary>
/// Gets the current control subnet info
/// </summary>
/// <summary>
/// GetControlSubnetInfo method
/// </summary>
@@ -272,9 +266,6 @@ namespace PepperDash.Core.SystemInfo
OnBoolChange(false, 0, SystemInfoConstants.BusyBoolChange);
}
/// <summary>
/// Gets the processor uptime and passes it to S+
/// </summary>
/// <summary>
/// RefreshProcessorUptime method
/// </summary>

View File

@@ -2,9 +2,6 @@
namespace PepperDash.Core.Web.RequestHandlers
{
/// <summary>
/// Web API default request handler
/// </summary>
/// <summary>
/// Represents a DefaultRequestHandler
/// </summary>

View File

@@ -25,33 +25,21 @@ namespace PepperDash.Core.Web
private readonly CCriticalSection _serverLock = new CCriticalSection();
private HttpCwsServer _server;
/// <summary>
/// Web API server key
/// </summary>
/// <summary>
/// Gets or sets the Key
/// </summary>
public string Key { get; private set; }
/// <summary>
/// Web API server name
/// </summary>
/// <summary>
/// Gets or sets the Name
/// </summary>
public string Name { get; private set; }
/// <summary>
/// CWS base path, will default to "/api" if not set via initialize method
/// </summary>
/// <summary>
/// Gets or sets the BasePath
/// </summary>
public string BasePath { get; private set; }
/// <summary>
/// Indicates CWS is registered with base path
/// </summary>
/// <summary>
/// Gets or sets the IsRegistered
/// </summary>
@@ -149,9 +137,6 @@ namespace PepperDash.Core.Web
Start();
}
/// <summary>
/// Initializes CWS class
/// </summary>
/// <summary>
/// Initialize method
/// </summary>
@@ -194,9 +179,6 @@ namespace PepperDash.Core.Web
_server.Routes.Remove(route);
}
/// <summary>
/// Returns a list of the current routes
/// </summary>
/// <summary>
/// GetRouteCollection method
/// </summary>
@@ -243,9 +225,6 @@ namespace PepperDash.Core.Web
}
}
/// <summary>
/// Stop CWS instance
/// </summary>
/// <summary>
/// Stop method
/// </summary>

View File

@@ -2,9 +2,6 @@
namespace PepperDash.Core.WebApi.Presets
{
/// <summary>
/// Represents a preset
/// </summary>
/// <summary>
/// Represents a Preset
/// </summary>
@@ -15,41 +12,26 @@ namespace PepperDash.Core.WebApi.Presets
/// </summary>
public int Id { get; set; }
/// <summary>
/// User ID
/// </summary>
/// <summary>
/// Gets or sets the UserId
/// </summary>
public int UserId { get; set; }
/// <summary>
/// Room Type ID
/// </summary>
/// <summary>
/// Gets or sets the RoomTypeId
/// </summary>
public int RoomTypeId { get; set; }
/// <summary>
/// Preset Name
/// </summary>
/// <summary>
/// Gets or sets the PresetName
/// </summary>
public string PresetName { get; set; }
/// <summary>
/// Preset Number
/// </summary>
/// <summary>
/// Gets or sets the PresetNumber
/// </summary>
public int PresetNumber { get; set; }
/// <summary>
/// Preset Data
/// </summary>
/// <summary>
/// Gets or sets the Data
/// </summary>
@@ -66,9 +48,6 @@ namespace PepperDash.Core.WebApi.Presets
}
}
/// <summary>
///
/// </summary>
/// <summary>
/// Represents a PresetReceivedEventArgs
/// </summary>
@@ -79,17 +58,11 @@ namespace PepperDash.Core.WebApi.Presets
/// </summary>
public bool LookupSuccess { get; private set; }
/// <summary>
/// S+ helper
/// </summary>
/// <summary>
/// Gets or sets the ULookupSuccess
/// </summary>
public ushort ULookupSuccess { get { return (ushort)(LookupSuccess ? 1 : 0); } }
/// <summary>
/// The preset
/// </summary>
/// <summary>
/// Gets or sets the Preset
/// </summary>

View File

@@ -16,25 +16,16 @@ namespace PepperDash.Core.WebApi.Presets
/// </summary>
public int Id { get; set; }
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the ExternalId
/// </summary>
public string ExternalId { get; set; }
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the FirstName
/// </summary>
public string FirstName { get; set; }
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the LastName
/// </summary>
@@ -52,17 +43,11 @@ namespace PepperDash.Core.WebApi.Presets
/// </summary>
public bool LookupSuccess { get; private set; }
/// <summary>
/// For stupid S+
/// </summary>
/// <summary>
/// Gets or sets the ULookupSuccess
/// </summary>
public ushort ULookupSuccess { get { return (ushort)(LookupSuccess ? 1 : 0); } }
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the User
/// </summary>
@@ -85,9 +70,6 @@ namespace PepperDash.Core.WebApi.Presets
}
}
/// <summary>
///
/// </summary>
/// <summary>
/// Represents a UserAndRoomMessage
/// </summary>
@@ -98,17 +80,11 @@ namespace PepperDash.Core.WebApi.Presets
/// </summary>
public int UserId { get; set; }
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the RoomTypeId
/// </summary>
public int RoomTypeId { get; set; }
/// <summary>
///
/// </summary>
/// <summary>
/// Gets or sets the PresetNumber
/// </summary>

View File

@@ -25,9 +25,6 @@ namespace PepperDash.Core.WebApi.Presets
/// </summary>
public event EventHandler<PresetReceivedEventArgs> PresetReceived;
/// <summary>
/// Unique identifier for this instance
/// </summary>
/// <summary>
/// Gets or sets the Key
/// </summary>

View File

@@ -75,6 +75,7 @@ namespace PepperDash.Core.Intersystem.Tokens
/// <summary>
/// ToString method
/// </summary>
/// <inheritdoc />
public override string ToString()
{
return Index + " = 0x" + Value.ToString("X4");

View File

@@ -73,6 +73,7 @@ namespace PepperDash.Core.Intersystem.Tokens
/// <summary>
/// ToString method
/// </summary>
/// <inheritdoc />
public override string ToString()
{
return Index + " = " + (Value ? "High" : "Low");

View File

@@ -79,6 +79,7 @@ namespace PepperDash.Core.Intersystem.Tokens
/// <summary>
/// ToString method
/// </summary>
/// <inheritdoc />
public override string ToString()
{
return Index + " = \"" + Value + "\"";

View File

@@ -139,9 +139,6 @@ namespace PepperDash.Core.Intersystem
}
}
/// <summary>
/// Disposes of the internal stream if specified to not leave open.
/// </summary>
/// <summary>
/// Dispose method
/// </summary>

View File

@@ -31,7 +31,7 @@ namespace PepperDash.Essentials.Core.Bridges
}
/// <summary>
/// Bridge API using EISC
/// Represents a EiscApiAdvanced
/// </summary>
public class EiscApiAdvanced : BridgeApi, ICommunicationMonitor
{
@@ -60,12 +60,19 @@ namespace PepperDash.Essentials.Core.Bridges
AddPostActivationAction(RegisterEisc);
}
/// <summary>
/// CustomActivate method
/// </summary>
/// <inheritdoc />
public override bool CustomActivate()
{
CommunicationMonitor.Start();
return base.CustomActivate();
}
/// <summary>
/// Deactivate method
/// </summary>
public override bool Deactivate()
{
CommunicationMonitor.Stop();
@@ -123,6 +130,9 @@ namespace PepperDash.Essentials.Core.Bridges
Debug.LogMessage(LogEventLevel.Debug, this, "EISC registration successful");
}
/// <summary>
/// LinkRooms method
/// </summary>
public void LinkRooms()
{
Debug.LogMessage(LogEventLevel.Debug, this, "Linking Rooms...");
@@ -153,6 +163,9 @@ namespace PepperDash.Essentials.Core.Bridges
/// </summary>
/// <param name="deviceKey"></param>
/// <param name="joinMap"></param>
/// <summary>
/// AddJoinMap method
/// </summary>
public void AddJoinMap(string deviceKey, JoinMapBaseAdvanced joinMap)
{
if (!JoinMaps.ContainsKey(deviceKey))
@@ -166,8 +179,9 @@ namespace PepperDash.Essentials.Core.Bridges
}
/// <summary>
/// Prints all the join maps on this bridge
/// PrintJoinMaps method
/// </summary>
/// <inheritdoc />
public virtual void PrintJoinMaps()
{
CrestronConsole.ConsoleCommandResponse("Join Maps for EISC IPID: {0}\r\n", Eisc.ID.ToString("X"));
@@ -179,8 +193,9 @@ namespace PepperDash.Essentials.Core.Bridges
}
}
/// <summary>
/// Generates markdown for all join maps on this bridge
/// MarkdownForBridge method
/// </summary>
/// <inheritdoc />
public virtual void MarkdownForBridge(string bridgeKey)
{
Debug.LogMessage(LogEventLevel.Information, this, "Writing Joinmaps to files for EISC IPID: {0}", Eisc.ID.ToString("X"));
@@ -196,6 +211,9 @@ namespace PepperDash.Essentials.Core.Bridges
/// Prints the join map for a device by key
/// </summary>
/// <param name="deviceKey"></param>
/// <summary>
/// PrintJoinMapForDevice method
/// </summary>
public void PrintJoinMapForDevice(string deviceKey)
{
var joinMap = JoinMaps[deviceKey];
@@ -213,6 +231,9 @@ namespace PepperDash.Essentials.Core.Bridges
/// Prints the join map for a device by key
/// </summary>
/// <param name="deviceKey"></param>
/// <summary>
/// MarkdownJoinMapForDevice method
/// </summary>
public void MarkdownJoinMapForDevice(string deviceKey, string bridgeKey)
{
var joinMap = JoinMaps[deviceKey];
@@ -233,6 +254,9 @@ namespace PepperDash.Essentials.Core.Bridges
/// <param name="join"></param>
/// <param name="type"></param>
/// <param name="state"></param>
/// <summary>
/// ExecuteJoinAction method
/// </summary>
public void ExecuteJoinAction(uint join, string type, object state)
{
try
@@ -318,49 +342,91 @@ namespace PepperDash.Essentials.Core.Bridges
#region Implementation of ICommunicationMonitor
/// <summary>
/// Gets or sets the CommunicationMonitor
/// </summary>
public StatusMonitorBase CommunicationMonitor { get; private set; }
#endregion
}
/// <summary>
/// Represents a EiscApiPropertiesConfig
/// </summary>
public class EiscApiPropertiesConfig
{
[JsonProperty("control")]
/// <summary>
/// Gets or sets the Control
/// </summary>
public EssentialsControlPropertiesConfig Control { get; set; }
[JsonProperty("devices")]
/// <summary>
/// Gets or sets the Devices
/// </summary>
public List<ApiDevicePropertiesConfig> Devices { get; set; }
[JsonProperty("rooms")]
/// <summary>
/// Gets or sets the Rooms
/// </summary>
public List<ApiRoomPropertiesConfig> Rooms { get; set; }
/// <summary>
/// Represents a ApiDevicePropertiesConfig
/// </summary>
public class ApiDevicePropertiesConfig
{
[JsonProperty("deviceKey")]
/// <summary>
/// Gets or sets the DeviceKey
/// </summary>
public string DeviceKey { get; set; }
[JsonProperty("joinStart")]
/// <summary>
/// Gets or sets the JoinStart
/// </summary>
public uint JoinStart { get; set; }
[JsonProperty("joinMapKey")]
/// <summary>
/// Gets or sets the JoinMapKey
/// </summary>
public string JoinMapKey { get; set; }
}
/// <summary>
/// Represents a ApiRoomPropertiesConfig
/// </summary>
public class ApiRoomPropertiesConfig
{
[JsonProperty("roomKey")]
/// <summary>
/// Gets or sets the RoomKey
/// </summary>
public string RoomKey { get; set; }
[JsonProperty("joinStart")]
/// <summary>
/// Gets or sets the JoinStart
/// </summary>
public uint JoinStart { get; set; }
[JsonProperty("joinMapKey")]
/// <summary>
/// Gets or sets the JoinMapKey
/// </summary>
public string JoinMapKey { get; set; }
}
}
/// <summary>
/// Represents a EiscApiAdvancedFactory
/// </summary>
public class EiscApiAdvancedFactory : EssentialsDeviceFactory<EiscApiAdvanced>
{
public EiscApiAdvancedFactory()
@@ -368,6 +434,10 @@ namespace PepperDash.Essentials.Core.Bridges
TypeNames = new List<string> { "eiscapiadv", "eiscapiadvanced", "eiscapiadvancedserver", "eiscapiadvancedclient", "vceiscapiadv", "vceiscapiadvanced" };
}
/// <summary>
/// BuildDevice method
/// </summary>
/// <inheritdoc />
public override EssentialsDevice BuildDevice(DeviceConfig dc)
{
Debug.LogMessage(LogEventLevel.Debug, "Factory Attempting to create new EiscApiAdvanced Device");

View File

@@ -34,6 +34,9 @@ namespace PepperDash.Essentials.Core.Bridges
bridge.PrintJoinMaps();
}
}
/// <summary>
/// JoinmapMarkdown method
/// </summary>
public static void JoinmapMarkdown(string command)
{
var targets = command.Split(' ');

View File

@@ -3,7 +3,7 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Defines a device that uses JoinMapBaseAdvanced for its join map
/// Defines the contract for IBridgeAdvanced
/// </summary>
public interface IBridgeAdvanced
{

View File

@@ -2,6 +2,9 @@ using System;
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a AirMediaControllerJoinMap
/// </summary>
public class AirMediaControllerJoinMap : JoinMapBaseAdvanced
{
[JoinName("IsOnline")]

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a AppleTvJoinMap
/// </summary>
public class AppleTvJoinMap : JoinMapBaseAdvanced
{
[JoinName("UpArrow")]

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a C2nRthsControllerJoinMap
/// </summary>
public class C2nRthsControllerJoinMap : JoinMapBaseAdvanced
{
[JoinName("IsOnline")]

View File

@@ -3,7 +3,7 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Join map for CameraBase devices
/// Represents a CameraControllerJoinMap
/// </summary>
public class CameraControllerJoinMap : JoinMapBaseAdvanced
{

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a CenOdtOccupancySensorBaseJoinMap
/// </summary>
public class CenOdtOccupancySensorBaseJoinMap : JoinMapBaseAdvanced
{
#region Digitals

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a DisplayControllerJoinMap
/// </summary>
public class DisplayControllerJoinMap : JoinMapBaseAdvanced
{
[JoinName("Name")]

View File

@@ -1,6 +1,9 @@
using System;
namespace PepperDash.Essentials.Core.Bridges {
/// <summary>
/// Represents a DmBladeChassisControllerJoinMap
/// </summary>
public class DmBladeChassisControllerJoinMap : JoinMapBaseAdvanced {
[JoinName("IsOnline")]

View File

@@ -2,6 +2,9 @@ using System;
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a DmChassisControllerJoinMap
/// </summary>
public class DmChassisControllerJoinMap : JoinMapBaseAdvanced
{
[JoinName("EnableAudioBreakaway")]

View File

@@ -2,6 +2,9 @@ using System;
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a DmRmcControllerJoinMap
/// </summary>
public class DmRmcControllerJoinMap : JoinMapBaseAdvanced
{
[JoinName("IsOnline")]

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a DmTxControllerJoinMap
/// </summary>
public class DmTxControllerJoinMap : JoinMapBaseAdvanced
{
[JoinName("IsOnline")]

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a DmpsAudioOutputControllerJoinMap
/// </summary>
public class DmpsAudioOutputControllerJoinMap : JoinMapBaseAdvanced
{

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a DmpsMicrophoneControllerJoinMap
/// </summary>
public class DmpsMicrophoneControllerJoinMap : JoinMapBaseAdvanced
{
[JoinName("MicGain")]

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a DmpsRoutingControllerJoinMap
/// </summary>
public class DmpsRoutingControllerJoinMap : JoinMapBaseAdvanced
{
[JoinName("EnableRouting")]

View File

@@ -3,6 +3,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a GenericLightingJoinMap
/// </summary>
public class GenericLightingJoinMap : JoinMapBaseAdvanced
{

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a GenericRelayControllerJoinMap
/// </summary>
public class GenericRelayControllerJoinMap : JoinMapBaseAdvanced
{

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a GlsOccupancySensorBaseJoinMap
/// </summary>
public class GlsOccupancySensorBaseJoinMap : JoinMapBaseAdvanced
{
[JoinName("IsOnline")]

View File

@@ -3,6 +3,9 @@ using PepperDash.Essentials.Core;
namespace PepperDash.Essentials.Core.Bridges.JoinMaps
{
/// <summary>
/// Represents a GlsPartitionSensorJoinMap
/// </summary>
public class GlsPartitionSensorJoinMap : JoinMapBaseAdvanced
{

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a HdMdNxM4kEControllerJoinMap
/// </summary>
public class HdMdNxM4kEControllerJoinMap : JoinMapBaseAdvanced
{
[JoinName("Name")]

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a HdMdxxxCEControllerJoinMap
/// </summary>
public class HdMdxxxCEControllerJoinMap : JoinMapBaseAdvanced
{

View File

@@ -3,6 +3,9 @@ using PepperDash.Essentials.Core;
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a HdPsXxxControllerJoinMap
/// </summary>
public class HdPsXxxControllerJoinMap : JoinMapBaseAdvanced
{

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a Hrxxx0WirelessRemoteControllerJoinMap
/// </summary>
public class Hrxxx0WirelessRemoteControllerJoinMap : JoinMapBaseAdvanced
{
[JoinName("Power")]

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a IAnalogInputJoinMap
/// </summary>
public class IAnalogInputJoinMap : JoinMapBaseAdvanced
{

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a IBasicCommunicationJoinMap
/// </summary>
public class IBasicCommunicationJoinMap : JoinMapBaseAdvanced
{
[JoinName("TextReceived")]

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a IDigitalInputJoinMap
/// </summary>
public class IDigitalInputJoinMap : JoinMapBaseAdvanced
{

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a IDigitalOutputJoinMap
/// </summary>
public class IDigitalOutputJoinMap : JoinMapBaseAdvanced
{

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a PduJoinMapBase
/// </summary>
public class PduJoinMapBase : JoinMapBaseAdvanced
{
[JoinName("Name")]

View File

@@ -3,6 +3,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a SetTopBoxControllerJoinMap
/// </summary>
public class SetTopBoxControllerJoinMap : JoinMapBaseAdvanced
{
[JoinName("PowerOn")]

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a StatusSignControllerJoinMap
/// </summary>
public class StatusSignControllerJoinMap : JoinMapBaseAdvanced
{
[JoinName("IsOnline")]

View File

@@ -2,6 +2,9 @@
namespace PepperDash.Essentials.Core.Bridges
{
/// <summary>
/// Represents a SystemMonitorJoinMap
/// </summary>
public class SystemMonitorJoinMap : JoinMapBaseAdvanced
{
[JoinName("TimeZone")]

View File

@@ -2,6 +2,9 @@ using System;
using PepperDash.Essentials.Core;
namespace PepperDash.Essentials.Core.Bridges.JoinMaps
{
/// <summary>
/// Represents a VideoCodecControllerJoinMap
/// </summary>
public class VideoCodecControllerJoinMap : JoinMapBaseAdvanced
{
#region Digital

View File

@@ -12,13 +12,22 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core
{
/// <summary>
/// Represents a CecPortController
/// </summary>
public class CecPortController : Device, IBasicCommunicationWithStreamDebugging
{
/// <summary>
/// Gets or sets the StreamDebugging
/// </summary>
public CommunicationStreamDebugging StreamDebugging { get; private set; }
public event EventHandler<GenericCommMethodReceiveBytesArgs> BytesReceived;
public event EventHandler<GenericCommMethodReceiveTextArgs> TextReceived;
/// <summary>
/// Gets or sets the IsConnected
/// </summary>
public bool IsConnected { get { return true; } }
ICec Port;
@@ -74,6 +83,9 @@ namespace PepperDash.Essentials.Core
#region IBasicCommunication Members
/// <summary>
/// SendText method
/// </summary>
public void SendText(string text)
{
if (Port == null)
@@ -83,6 +95,9 @@ namespace PepperDash.Essentials.Core
Port.StreamCec.Send.StringValue = text;
}
/// <summary>
/// SendBytes method
/// </summary>
public void SendBytes(byte[] bytes)
{
if (Port == null)
@@ -93,10 +108,16 @@ namespace PepperDash.Essentials.Core
Port.StreamCec.Send.StringValue = text;
}
/// <summary>
/// Connect method
/// </summary>
public void Connect()
{
}
/// <summary>
/// Disconnect method
/// </summary>
public void Disconnect()
{
}
@@ -107,6 +128,9 @@ namespace PepperDash.Essentials.Core
///
/// </summary>
/// <param name="s"></param>
/// <summary>
/// SimulateReceive method
/// </summary>
public void SimulateReceive(string s)
{
// split out hex chars and build string

View File

@@ -12,13 +12,22 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core
{
/// <summary>
/// Represents a ComPortController
/// </summary>
public class ComPortController : Device, IBasicCommunicationWithStreamDebugging
{
/// <summary>
/// Gets or sets the StreamDebugging
/// </summary>
public CommunicationStreamDebugging StreamDebugging { get; private set; }
public event EventHandler<GenericCommMethodReceiveBytesArgs> BytesReceived;
public event EventHandler<GenericCommMethodReceiveTextArgs> TextReceived;
/// <summary>
/// Gets or sets the IsConnected
/// </summary>
public bool IsConnected { get { return true; } }
ComPort Port;
@@ -116,6 +125,10 @@ namespace PepperDash.Essentials.Core
if(!eventSubscribed) Debug.LogMessage(LogEventLevel.Warning, this, "Received data but no handler is registered");
}
/// <summary>
/// Deactivate method
/// </summary>
/// <inheritdoc />
public override bool Deactivate()
{
return Port.UnRegister() == eDeviceRegistrationUnRegistrationResponse.Success;
@@ -123,6 +136,9 @@ namespace PepperDash.Essentials.Core
#region IBasicCommunication Members
/// <summary>
/// SendText method
/// </summary>
public void SendText(string text)
{
if (Port == null)
@@ -133,6 +149,9 @@ namespace PepperDash.Essentials.Core
Port.Send(text);
}
/// <summary>
/// SendBytes method
/// </summary>
public void SendBytes(byte[] bytes)
{
if (Port == null)
@@ -144,10 +163,16 @@ namespace PepperDash.Essentials.Core
Port.Send(text);
}
/// <summary>
/// Connect method
/// </summary>
public void Connect()
{
}
/// <summary>
/// Disconnect method
/// </summary>
public void Disconnect()
{
}
@@ -158,6 +183,9 @@ namespace PepperDash.Essentials.Core
///
/// </summary>
/// <param name="s"></param>
/// <summary>
/// SimulateReceive method
/// </summary>
public void SimulateReceive(string s)
{
// split out hex chars and build string

View File

@@ -34,8 +34,9 @@ namespace PepperDash.Essentials.Core
}
/// <summary>
///
/// CanConvert method
/// </summary>
/// <inheritdoc />
public override bool CanConvert(Type objectType)
{
return objectType == typeof(ComPort.ComPortSpec?);
@@ -44,10 +45,15 @@ namespace PepperDash.Essentials.Core
public override bool CanRead { get { return true; } }
/// <summary>
/// This converter will not be used for writing
/// Gets or sets the CanWrite
/// </summary>
/// <inheritdoc />
public override bool CanWrite { get { return false; } }
/// <summary>
/// WriteJson method
/// </summary>
/// <inheritdoc />
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
throw new NotImplementedException();
@@ -55,12 +61,11 @@ namespace PepperDash.Essentials.Core
}
/// <summary>
/// The gist of this converter: The comspec JSON comes in with normal values that need to be converted
/// into enum names. This converter takes the value and applies the appropriate enum's name prefix to the value
/// and then returns the enum value using Enum.Parse. NOTE: Does not write
/// Represents a ComSpecPropsJsonConverter
/// </summary>
public class ComSpecPropsJsonConverter : JsonConverter
{
/// <inheritdoc />
public override bool CanConvert(Type objectType)
{
return objectType == typeof(ComPort.eComBaudRates)
@@ -72,8 +77,15 @@ namespace PepperDash.Essentials.Core
|| objectType == typeof(ComPort.eComStopBits);
}
/// <summary>
/// Gets or sets the CanRead
/// </summary>
/// <inheritdoc />
public override bool CanRead { get { return true; } }
/// <summary>
/// ReadJson method
/// </summary>
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
//Debug.LogMessage(LogEventLevel.Verbose, "ReadJson type: " + objectType.Name);
@@ -94,6 +106,10 @@ namespace PepperDash.Essentials.Core
return null;
}
/// <summary>
/// WriteJson method
/// </summary>
/// <inheritdoc />
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
throw new NotImplementedException();

View File

@@ -38,6 +38,9 @@ namespace PepperDash.Essentials.Core
/// Returns a comm method of either com port, TCP, SSH, and puts this into the DeviceManager
/// </summary>
/// <param name="deviceConfig">The Device config object</param>
/// <summary>
/// CreateCommForDevice method
/// </summary>
public static IBasicCommunication CreateCommForDevice(DeviceConfig deviceConfig)
{
EssentialsControlPropertiesConfig controlConfig = GetControlPropertiesConfig(deviceConfig);
@@ -110,6 +113,9 @@ namespace PepperDash.Essentials.Core
return comm;
}
/// <summary>
/// GetComPort method
/// </summary>
public static ComPort GetComPort(EssentialsControlPropertiesConfig config)
{
var comPar = config.ComParams;
@@ -125,6 +131,9 @@ namespace PepperDash.Essentials.Core
/// </summary>
/// <param name="config"></param>
/// <returns></returns>
/// <summary>
/// GetCecPort method
/// </summary>
public static ICec GetCecPort(ControlPropertiesConfig config)
{
try
@@ -182,6 +191,9 @@ namespace PepperDash.Essentials.Core
/// return the ControlSystem object from the Global class.
/// </summary>
/// <returns>IComPorts device or null if the device is not found or does not implement IComPorts</returns>
/// <summary>
/// GetIComPortsDeviceFromManagedDevice method
/// </summary>
public static IComPorts GetIComPortsDeviceFromManagedDevice(string ComPortDevKey)
{
if ((ComPortDevKey.Equals("controlSystem", System.StringComparison.OrdinalIgnoreCase)
@@ -199,7 +211,7 @@ namespace PepperDash.Essentials.Core
}
/// <summary>
///
/// Represents a EssentialsControlPropertiesConfig
/// </summary>
public class EssentialsControlPropertiesConfig :
ControlPropertiesConfig
@@ -232,6 +244,9 @@ namespace PepperDash.Essentials.Core
}
[JsonProperty("infinetId", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// Gets or sets the InfinetId
/// </summary>
public string InfinetId { get; set; }
/// <summary>
@@ -254,10 +269,22 @@ namespace PepperDash.Essentials.Core
}
}
/// <summary>
/// Represents a IrControlSpec
/// </summary>
public class IrControlSpec
{
/// <summary>
/// Gets or sets the PortDeviceKey
/// </summary>
public string PortDeviceKey { get; set; }
/// <summary>
/// Gets or sets the PortNumber
/// </summary>
public uint PortNumber { get; set; }
/// <summary>
/// Gets or sets the File
/// </summary>
public string File { get; set; }
}
}

View File

@@ -11,20 +11,32 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core
{
/// <summary>
/// Represents a ConsoleCommMockDevice
/// </summary>
public class ConsoleCommMockDevice : EssentialsDevice, ICommunicationMonitor
{
/// <summary>
/// Gets or sets the Communication
/// </summary>
public IBasicCommunication Communication { get; private set; }
/// <summary>
/// Gets or sets the PortGather
/// </summary>
public CommunicationGather PortGather { get; private set; }
/// <summary>
/// Gets or sets the CommunicationMonitor
/// </summary>
public StatusMonitorBase CommunicationMonitor { get; private set; }
/// <summary>
/// Defaults to \x0a
/// </summary>
/// <summary>
/// Gets or sets the LineEnding
/// </summary>
public string LineEnding { get; set; }
/// <summary>
/// Set to true to show responses in full hex
/// </summary>
/// <summary>
/// Gets or sets the ShowHexResponse
/// </summary>
public bool ShowHexResponse { get; set; }
public ConsoleCommMockDevice(string key, string name, ConsoleCommMockDevicePropertiesConfig props, IBasicCommunication comm)
@@ -37,6 +49,10 @@ namespace PepperDash.Essentials.Core
LineEnding = props.LineEnding;
}
/// <summary>
/// CustomActivate method
/// </summary>
/// <inheritdoc />
public override bool CustomActivate()
{
Communication.Connect();
@@ -56,9 +72,18 @@ namespace PepperDash.Essentials.Core
}
}
/// <summary>
/// Represents a ConsoleCommMockDevicePropertiesConfig
/// </summary>
public class ConsoleCommMockDevicePropertiesConfig
{
/// <summary>
/// Gets or sets the LineEnding
/// </summary>
public string LineEnding { get; set; }
/// <summary>
/// Gets or sets the CommunicationMonitorProperties
/// </summary>
public CommunicationMonitorConfig CommunicationMonitorProperties { get; set; }
public ConsoleCommMockDevicePropertiesConfig()
@@ -67,6 +92,9 @@ namespace PepperDash.Essentials.Core
}
}
/// <summary>
/// Represents a ConsoleCommMockDeviceFactory
/// </summary>
public class ConsoleCommMockDeviceFactory : EssentialsDeviceFactory<ConsoleCommMockDevice>
{
public ConsoleCommMockDeviceFactory()
@@ -74,6 +102,10 @@ namespace PepperDash.Essentials.Core
TypeNames = new List<string>() { "commmock" };
}
/// <summary>
/// BuildDevice method
/// </summary>
/// <inheritdoc />
public override EssentialsDevice BuildDevice(DeviceConfig dc)
{
Debug.LogMessage(LogEventLevel.Debug, "Factory Attempting to create new Comm Mock Device");

View File

@@ -44,12 +44,18 @@ namespace PepperDash.Essentials.Core
}
/// <summary>
/// BuildDevice method
/// </summary>
public static IKeyed BuildDevice(DeviceConfig dc)
{
Debug.LogMessage(LogEventLevel.Debug, "Factory Attempting to create new Generic Comm Device");
return new GenericComm(dc);
}
/// <summary>
/// SetPortConfig method
/// </summary>
public void SetPortConfig(string portConfig)
{
// TODO: Deserialize new EssentialsControlPropertiesConfig and handle as necessary
@@ -71,6 +77,10 @@ namespace PepperDash.Essentials.Core
ConfigWriter.UpdateDeviceConfig(config);
}
/// <summary>
/// LinkToApi method
/// </summary>
/// <inheritdoc />
public override void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge)
{
var joinMap = new IBasicCommunicationJoinMap(joinStart);
@@ -129,6 +139,9 @@ namespace PepperDash.Essentials.Core
}
}
/// <summary>
/// Represents a GenericCommFactory
/// </summary>
public class GenericCommFactory : EssentialsDeviceFactory<GenericComm>
{
public GenericCommFactory()
@@ -136,6 +149,10 @@ namespace PepperDash.Essentials.Core
TypeNames = new List<string>() { "genericComm" };
}
/// <summary>
/// BuildDevice method
/// </summary>
/// <inheritdoc />
public override EssentialsDevice BuildDevice(DeviceConfig dc)
{
Debug.LogMessage(LogEventLevel.Debug, "Factory Attempting to create new Generic Comm Device");

View File

@@ -5,6 +5,9 @@ using System;
namespace PepperDash.Essentials.Core
{
[Obsolete("Please use the builtin HttpClient class instead: https://learn.microsoft.com/en-us/dotnet/fundamentals/networking/http/httpclient-guidelines")]
/// <summary>
/// Represents a GenericHttpClient
/// </summary>
public class GenericHttpClient : Device, IBasicCommunication
{
private readonly HttpClient Client;
@@ -25,6 +28,9 @@ namespace PepperDash.Essentials.Core
///
/// </summary>
/// <param name="path"></param>
/// <summary>
/// SendText method
/// </summary>
public void SendText(string path)
{
HttpClientRequest request = new HttpClientRequest();
@@ -40,6 +46,9 @@ namespace PepperDash.Essentials.Core
HttpClient.DISPATCHASYNC_ERROR error = Client.DispatchAsyncEx(request, Response, request);
}
/// <summary>
/// SendTextNoResponse method
/// </summary>
public void SendTextNoResponse(string format, params object[] items)
{
HttpClientRequest request = new HttpClientRequest();
@@ -65,6 +74,9 @@ namespace PepperDash.Essentials.Core
#region IBasicCommunication Members
/// <summary>
/// SendBytes method
/// </summary>
public void SendBytes(byte[] bytes)
{
throw new NotImplementedException();
@@ -78,11 +90,17 @@ namespace PepperDash.Essentials.Core
public event EventHandler<GenericCommMethodReceiveBytesArgs> BytesReceived;
/// <summary>
/// Connect method
/// </summary>
public void Connect()
{
throw new NotImplementedException();
}
/// <summary>
/// Disconnect method
/// </summary>
public void Disconnect()
{
throw new NotImplementedException();
@@ -97,10 +115,22 @@ namespace PepperDash.Essentials.Core
#endregion
}
/// <summary>
/// Represents a GenericHttpClientEventArgs
/// </summary>
public class GenericHttpClientEventArgs : EventArgs
{
/// <summary>
/// Gets or sets the ResponseText
/// </summary>
public string ResponseText { get; private set; }
/// <summary>
/// Gets or sets the RequestPath
/// </summary>
public string RequestPath { get; private set; }
/// <summary>
/// Gets or sets the Error
/// </summary>
public HTTP_CALLBACK_ERROR Error { get; set; }
public GenericHttpClientEventArgs(string response, string request, HTTP_CALLBACK_ERROR error)
{

View File

@@ -83,6 +83,9 @@ namespace PepperDash.Essentials.Core
}
}
/// <summary>
/// GetIrOutputPort method
/// </summary>
public static IROutputPort GetIrOutputPort(DeviceConfig dc)
{
var irControllerKey = dc.Key + "-ir";
@@ -142,6 +145,9 @@ namespace PepperDash.Essentials.Core
return port;
}
/// <summary>
/// GetIrOutputPortController method
/// </summary>
public static IrOutputPortController GetIrOutputPortController(DeviceConfig config)
{
Debug.LogMessage(LogEventLevel.Debug, "Attempting to create new Ir Port Controller");
@@ -159,8 +165,8 @@ namespace PepperDash.Essentials.Core
/*
/// <summary>
/// Returns a ready-to-go IrOutputPortController from a DeviceConfig object.
/// </summary>
/// GetIrOutputPortController method
/// </summary>
public static IrOutputPortController GetIrOutputPortController(DeviceConfig devConf)
{
var irControllerKey = devConf.Key + "-ir";
@@ -222,12 +228,15 @@ namespace PepperDash.Essentials.Core
}*/
}
/// <summary>
/// Wrapper to help in IR port creation
/// </summary>
/// <summary>
/// Represents a IrOutPortConfig
/// </summary>
public class IrOutPortConfig
{
[JsonProperty("port")]
/// <summary>
/// Gets or sets the Port
/// </summary>
public IROutputPort Port { get; set; }
[JsonProperty("fileName")]

View File

@@ -8,6 +8,9 @@ using System.Threading.Tasks;
namespace PepperDash.Essentials.Core.Config
{
/// <summary>
/// Represents a AudioControlPointListItem
/// </summary>
public class AudioControlPointListItem
{
[JsonProperty("levelControls")]

View File

@@ -33,6 +33,9 @@ namespace PepperDash.Essentials.Core.Config
public Dictionary<string, Dictionary<string, CameraListItem>> CameraLists { get; set; }
[JsonProperty("tieLines")]
/// <summary>
/// Gets or sets the TieLines
/// </summary>
public List<TieLineConfig> TieLines { get; set; }
[JsonProperty("joinMaps")]
@@ -81,6 +84,9 @@ namespace PepperDash.Essentials.Core.Config
/// </summary>
/// <param name="key">key of the list to retrieve</param>
/// <returns>AudioControlPointList if the key exists, null otherwise</returns>
/// <summary>
/// GetAudioControlPointListForKey method
/// </summary>
public AudioControlPointListItem GetAudioControlPointListForKey(string key)
{
if (AudioControlPointLists == null || string.IsNullOrEmpty(key) || !AudioControlPointLists.ContainsKey(key))
@@ -105,6 +111,9 @@ namespace PepperDash.Essentials.Core.Config
/// </summary>
/// <param name="key">Key of desired device</param>
/// <returns></returns>
/// <summary>
/// GetDeviceForKey method
/// </summary>
public DeviceConfig GetDeviceForKey(string key)
{
if (string.IsNullOrEmpty(key))

View File

@@ -11,10 +11,13 @@ using Newtonsoft.Json.Linq;
namespace PepperDash.Essentials.Core.Config
{
/// <summary>
/// Represents a ConfigPropertiesHelpers
/// </summary>
public class ConfigPropertiesHelpers
{
/// <summary>
/// Returns the value of properties.hasAudio, or false if not defined
/// GetHasAudio method
/// </summary>
public static bool GetHasAudio(DeviceConfig deviceConfig)
{

View File

@@ -13,25 +13,46 @@ using PepperDash.Essentials.Core;
namespace PepperDash.Essentials.Core.Config
{
/// <summary>
/// Represents a DeviceConfig
/// </summary>
public class DeviceConfig
{
[JsonProperty("key")]
/// <summary>
/// Gets or sets the Key
/// </summary>
public string Key { get; set; }
[JsonProperty("uid")]
/// <summary>
/// Gets or sets the Uid
/// </summary>
public int Uid { get; set; }
[JsonProperty("name")]
/// <summary>
/// Gets or sets the Name
/// </summary>
public string Name { get; set; }
[JsonProperty("group")]
/// <summary>
/// Gets or sets the Group
/// </summary>
public string Group { get; set; }
[JsonProperty("type")]
/// <summary>
/// Gets or sets the Type
/// </summary>
public string Type { get; set; }
[JsonProperty("properties")]
[JsonConverter(typeof(DevicePropertiesConverter))]
/// <summary>
/// Gets or sets the Properties
/// </summary>
public JToken Properties { get; set; }
public DeviceConfig(DeviceConfig dc)
@@ -51,11 +72,14 @@ namespace PepperDash.Essentials.Core.Config
}
/// <summary>
///
/// Represents a DevicePropertiesConverter
/// </summary>
public class DevicePropertiesConverter : JsonConverter
{
/// <summary>
/// CanConvert method
/// </summary>
public override bool CanConvert(Type objectType)
{
return objectType == typeof(JToken);
@@ -66,6 +90,7 @@ namespace PepperDash.Essentials.Core.Config
return JToken.ReadFrom(reader);
}
/// <inheritdoc />
public override bool CanWrite
{
get
@@ -74,6 +99,10 @@ namespace PepperDash.Essentials.Core.Config
}
}
/// <summary>
/// WriteJson method
/// </summary>
/// <inheritdoc />
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
throw new NotImplementedException("SOD OFF HOSER");

View File

@@ -26,6 +26,9 @@ namespace PepperDash.Essentials.Core.Config
public static EssentialsConfig ConfigObject { get; private set; }
/// <summary>
/// LoadConfig2 method
/// </summary>
public static bool LoadConfig2()
{
Debug.LogMessage(LogEventLevel.Information, "Loading unmerged system/template portal configuration file.");
@@ -157,6 +160,9 @@ namespace PepperDash.Essentials.Core.Config
/// </summary>
/// <param name="filePath"></param>
/// <returns></returns>
/// <summary>
/// GetConfigFiles method
/// </summary>
public static FileInfo[] GetConfigFiles(string filePath)
{
// Get the directory
@@ -189,6 +195,9 @@ namespace PepperDash.Essentials.Core.Config
/// </summary>
/// <param name="key"></param>
/// <returns></returns>
/// <summary>
/// GetGroupForDeviceKey method
/// </summary>
public static string GetGroupForDeviceKey(string key)
{
var dev = ConfigObject.Devices.FirstOrDefault(d => d.Key.Equals(key, StringComparison.OrdinalIgnoreCase));

View File

@@ -20,6 +20,9 @@ namespace PepperDash.Essentials.Core.Config
{
public static event EventHandler<ConfigStatusEventArgs> ConfigStatusChanged;
/// <summary>
/// GetConfigFromServer method
/// </summary>
public static void GetConfigFromServer(string url)
{
Debug.LogMessage(LogEventLevel.Information, "Attempting to get new config from '{0}'", url);
@@ -202,6 +205,9 @@ namespace PepperDash.Essentials.Core.Config
}
/// <summary>
/// Enumeration of eUpdateStatus values
/// </summary>
public enum eUpdateStatus
{
UpdateStarted,
@@ -214,8 +220,14 @@ namespace PepperDash.Essentials.Core.Config
UpdateFailed
}
/// <summary>
/// Represents a ConfigStatusEventArgs
/// </summary>
public class ConfigStatusEventArgs : EventArgs
{
/// <summary>
/// Gets or sets the UpdateStatus
/// </summary>
public eUpdateStatus UpdateStatus { get; private set; }
public ConfigStatusEventArgs(eUpdateStatus status)

View File

@@ -31,6 +31,9 @@ namespace PepperDash.Essentials.Core.Config
/// <param name="deviceKey"></param>
/// <param name="properties"></param>
/// <returns></returns>
/// <summary>
/// UpdateDeviceProperties method
/// </summary>
public static bool UpdateDeviceProperties(string deviceKey, JToken properties)
{
bool success = false;
@@ -53,6 +56,9 @@ namespace PepperDash.Essentials.Core.Config
return success;
}
/// <summary>
/// UpdateDeviceConfig method
/// </summary>
public static bool UpdateDeviceConfig(DeviceConfig config)
{
bool success = false;
@@ -73,6 +79,9 @@ namespace PepperDash.Essentials.Core.Config
return success;
}
/// <summary>
/// UpdateRoomConfig method
/// </summary>
public static bool UpdateRoomConfig(DeviceConfig config)
{
bool success = false;
@@ -124,6 +133,9 @@ namespace PepperDash.Essentials.Core.Config
/// </summary>
/// <param name="filepath"></param>
/// <param name="o"></param>
/// <summary>
/// WriteFile method
/// </summary>
public static void WriteFile(string filePath, string configData)
{
if (WriteTimer != null)

View File

@@ -68,6 +68,9 @@ namespace PepperDash.Essentials.Core.Config
}
[JsonProperty("rooms")]
/// <summary>
/// Gets or sets the Rooms
/// </summary>
public List<DeviceConfig> Rooms { get; set; }
@@ -78,11 +81,14 @@ namespace PepperDash.Essentials.Core.Config
}
}
/// <summary>
///
/// </summary>
/// <summary>
/// Represents a SystemTemplateConfigs
/// </summary>
public class SystemTemplateConfigs
{
/// <summary>
/// Gets or sets the System
/// </summary>
public EssentialsConfig System { get; set; }
public EssentialsConfig Template { get; set; }

View File

@@ -6,6 +6,9 @@ using System.Threading.Tasks;
namespace PepperDash.Essentials.Core
{
/// <summary>
/// Defines the contract for ILoadConfig
/// </summary>
public interface ILoadConfig
{
void GoWithLoad();

View File

@@ -22,18 +22,33 @@ namespace PepperDash.Essentials.Core.Config
public string Type { get; set; }
[JsonProperty("version")]
/// <summary>
/// Gets or sets the Version
/// </summary>
public string Version { get; set; }
[JsonProperty("runtimeInfo")]
/// <summary>
/// Gets or sets the RuntimeInfo
/// </summary>
public RuntimeInfo RuntimeInfo { get; set; }
[JsonProperty("comment")]
/// <summary>
/// Gets or sets the Comment
/// </summary>
public string Comment { get; set; }
[JsonProperty("hostname")]
/// <summary>
/// Gets or sets the HostName
/// </summary>
public string HostName { get; set; }
[JsonProperty("appNumber")]
/// <summary>
/// Gets or sets the AppNumber
/// </summary>
public uint AppNumber { get; set; }
public InfoConfig()
@@ -52,7 +67,7 @@ namespace PepperDash.Essentials.Core.Config
/// <summary>
/// Represents runtime information about the program/processor
/// Represents a RuntimeInfo
/// </summary>
public class RuntimeInfo
{

View File

@@ -6,8 +6,14 @@ using Crestron.SimplSharp;
namespace PepperDash.Essentials.Core.Config
{
/// <summary>
/// Represents a SourceDevicePropertiesConfigBase
/// </summary>
public class SourceDevicePropertiesConfigBase
{
/// <summary>
/// Gets or sets the DisableSharing
/// </summary>
public bool DisableSharing { get; set; }
}
}

View File

@@ -14,18 +14,26 @@ namespace PepperDash.Essentials.Core
protected GenericBase Hardware;
/// <summary>
/// Returns a list containing the Outputs that we want to expose.
/// Gets or sets the Feedbacks
/// </summary>
public FeedbackCollection<Feedback> Feedbacks { get; private set; }
/// <summary>
/// Gets or sets the IsOnline
/// </summary>
public BoolFeedback IsOnline { get; private set; }
/// <summary>
/// Gets or sets the IsRegistered
/// </summary>
public BoolFeedback IsRegistered { get; private set; }
/// <summary>
/// Gets or sets the IpConnectionsText
/// </summary>
public StringFeedback IpConnectionsText { get; private set; }
/// <summary>
/// Used by implementing classes to prevent registration with Crestron TLDM. For
/// devices like RMCs and TXs attached to a chassis.
/// </summary>
/// <summary>
/// Gets or sets the PreventRegistration
/// </summary>
public bool PreventRegistration { get; protected set; }
protected CrestronGenericBaseDevice(string key, string name, GenericBase hardware)
@@ -60,10 +68,10 @@ namespace PepperDash.Essentials.Core
CommunicationMonitor = new CrestronGenericBaseCommunicationMonitor(this, hardware, 120000, 300000);
}
/// <summary>
/// Make sure that overriding classes call this!
/// Registers the Crestron device, connects up to the base events, starts communication monitor
/// </summary>
/// <summary>
/// CustomActivate method
/// </summary>
/// <inheritdoc />
public override bool CustomActivate()
{
Debug.LogMessage(LogEventLevel.Information, this, "Activating");
@@ -111,6 +119,10 @@ namespace PepperDash.Essentials.Core
/// This disconnects events and unregisters the base hardware device.
/// </summary>
/// <returns></returns>
/// <summary>
/// Deactivate method
/// </summary>
/// <inheritdoc />
public override bool Deactivate()
{
CommunicationMonitor.Stop();
@@ -127,6 +139,9 @@ namespace PepperDash.Essentials.Core
/// Adds feedback(s) to the list
/// </summary>
/// <param name="newFbs"></param>
/// <summary>
/// AddToFeedbackList method
/// </summary>
public void AddToFeedbackList(params Feedback[] newFbs)
{
foreach (var f in newFbs)
@@ -158,11 +173,17 @@ namespace PepperDash.Essentials.Core
#region IStatusMonitor Members
/// <summary>
/// Gets or sets the CommunicationMonitor
/// </summary>
public StatusMonitorBase CommunicationMonitor { get; private set; }
#endregion
#region IUsageTracking Members
/// <summary>
/// Gets or sets the UsageTracker
/// </summary>
public UsageTracking UsageTracker { get; set; }
#endregion
@@ -185,6 +206,9 @@ namespace PepperDash.Essentials.Core
//***********************************************************************************
/// <summary>
/// Represents a CrestronGenericBaseDeviceEventIds
/// </summary>
public class CrestronGenericBaseDeviceEventIds
{
public const uint IsOnline = 1;
@@ -196,6 +220,9 @@ namespace PepperDash.Essentials.Core
/// </summary>
public static class GenericBaseExtensions
{
/// <summary>
/// RegisterWithLogging method
/// </summary>
public static eDeviceRegistrationUnRegistrationResponse RegisterWithLogging(this GenericBase device, string key)
{
var result = device.Register();

View File

@@ -17,10 +17,19 @@ using Serilog.Events;
namespace PepperDash.Essentials.Core.CrestronIO
{
[Description("Wrapper class for Digital Input")]
/// <summary>
/// Represents a GenericDigitalInputDevice
/// </summary>
public class GenericDigitalInputDevice : EssentialsBridgeableDevice, IDigitalInput
{
/// <summary>
/// Gets or sets the InputPort
/// </summary>
public DigitalInput InputPort { get; private set; }
/// <summary>
/// Gets or sets the InputStateFeedback
/// </summary>
public BoolFeedback InputStateFeedback { get; private set; }
Func<bool> InputStateFeedbackFunc
@@ -103,6 +112,10 @@ namespace PepperDash.Essentials.Core.CrestronIO
#region Bridge Linking
/// <summary>
/// LinkToApi method
/// </summary>
/// <inheritdoc />
public override void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge)
{
var joinMap = new IDigitalInputJoinMap(joinStart);
@@ -139,6 +152,9 @@ namespace PepperDash.Essentials.Core.CrestronIO
#region Factory
/// <summary>
/// Represents a GenericDigitalInputDeviceFactory
/// </summary>
public class GenericDigitalInputDeviceFactory : EssentialsDeviceFactory<GenericDigitalInputDevice>
{
public GenericDigitalInputDeviceFactory()
@@ -146,6 +162,10 @@ namespace PepperDash.Essentials.Core.CrestronIO
TypeNames = new List<string>() { "digitalinput" };
}
/// <summary>
/// BuildDevice method
/// </summary>
/// <inheritdoc />
public override EssentialsDevice BuildDevice(DeviceConfig dc)
{
Debug.LogMessage(LogEventLevel.Debug, "Factory Attempting to create new Generic Digital Input Device");

View File

@@ -115,16 +115,25 @@ namespace PepperDash.Essentials.Core.CrestronIO
#region Methods
/// <summary>
/// OpenRelay method
/// </summary>
public void OpenRelay()
{
RelayOutput.State = false;
}
/// <summary>
/// CloseRelay method
/// </summary>
public void CloseRelay()
{
RelayOutput.State = true;
}
/// <summary>
/// ToggleRelayState method
/// </summary>
public void ToggleRelayState()
{
if (RelayOutput.State == true)
@@ -151,6 +160,10 @@ namespace PepperDash.Essentials.Core.CrestronIO
#region Bridge Linking
/// <summary>
/// LinkToApi method
/// </summary>
/// <inheritdoc />
public override void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge)
{
var joinMap = new GenericRelayControllerJoinMap(joinStart);
@@ -194,6 +207,9 @@ namespace PepperDash.Essentials.Core.CrestronIO
#region Factory
/// <summary>
/// Represents a GenericRelayDeviceFactory
/// </summary>
public class GenericRelayDeviceFactory : EssentialsDeviceFactory<GenericRelayDevice>
{
public GenericRelayDeviceFactory()
@@ -201,6 +217,10 @@ namespace PepperDash.Essentials.Core.CrestronIO
TypeNames = new List<string>() { "relayoutput" };
}
/// <summary>
/// BuildDevice method
/// </summary>
/// <inheritdoc />
public override EssentialsDevice BuildDevice(DeviceConfig dc)
{
Debug.LogMessage(LogEventLevel.Debug, "Factory Attempting to create new Generic Relay Device");

View File

@@ -70,6 +70,9 @@ namespace PepperDash.Essentials.Core.CrestronIO
/// Set minimum voltage change for device to update voltage changed method
/// </summary>
/// <param name="value">valid values range from 0 - 65535, representing the full 100% range of the processor voltage source. Check processor documentation for details</param>
/// <summary>
/// SetMinimumChange method
/// </summary>
public void SetMinimumChange(ushort value)
{
InputPort.AnalogMinChange = value;
@@ -88,6 +91,10 @@ namespace PepperDash.Essentials.Core.CrestronIO
#region Bridge Linking
/// <summary>
/// LinkToApi method
/// </summary>
/// <inheritdoc />
public override void LinkToApi(BasicTriList trilist, uint joinStart, string joinMapKey, EiscApiAdvanced bridge)
{
var joinMap = new IAnalogInputJoinMap(joinStart);
@@ -139,6 +146,9 @@ namespace PepperDash.Essentials.Core.CrestronIO
#endregion
/// <summary>
/// GetVersiportDigitalInput method
/// </summary>
public static Versiport GetVersiportDigitalInput(IOPortConfig dc)
{
@@ -188,6 +198,9 @@ namespace PepperDash.Essentials.Core.CrestronIO
}
/// <summary>
/// Represents a GenericVersiportAbalogInputDeviceFactory
/// </summary>
public class GenericVersiportAbalogInputDeviceFactory : EssentialsDeviceFactory<GenericVersiportAnalogInputDevice>
{
public GenericVersiportAbalogInputDeviceFactory()
@@ -195,6 +208,10 @@ namespace PepperDash.Essentials.Core.CrestronIO
TypeNames = new List<string>() { "versiportanaloginput" };
}
/// <summary>
/// BuildDevice method
/// </summary>
/// <inheritdoc />
public override EssentialsDevice BuildDevice(DeviceConfig dc)
{
Debug.LogMessage(LogEventLevel.Debug, "Factory Attempting to create new Generic Versiport Device");

Some files were not shown because too many files have changed in this diff Show More