refactor (networking)
This commit is contained in:
parent
febc4d9488
commit
450a6f2796
153 changed files with 7834 additions and 8004 deletions
14
insight.sln
14
insight.sln
|
|
@ -31,12 +31,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Insight.Server", "src\Serve
|
||||||
EndProject
|
EndProject
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Insight.Updater", "src\Updater\Insight.Updater\Insight.Updater.csproj", "{4875D70F-A96B-4EBA-99BE-218886D29BEB}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Insight.Updater", "src\Updater\Insight.Updater\Insight.Updater.csproj", "{4875D70F-A96B-4EBA-99BE-218886D29BEB}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Insight.Web.Assets", "src\Web\Insight.Web.Assets\Insight.Web.Assets.csproj", "{EBB8A2A8-453B-4867-A8E2-072530391DD0}"
|
|
||||||
EndProject
|
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Insight.Agent", "src\Agent\Insight.Agent\Insight.Agent.csproj", "{2A391CA2-F96B-4DB7-80AA-0668A5141640}"
|
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Insight.Agent", "src\Agent\Insight.Agent\Insight.Agent.csproj", "{2A391CA2-F96B-4DB7-80AA-0668A5141640}"
|
||||||
EndProject
|
EndProject
|
||||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Insight.Agent.Assets", "src\Agent\Insight.Agent.Assets\Insight.Agent.Assets.csproj", "{4C2B66EA-4EE1-47BF-BAEE-DDBAF6FCB324}"
|
|
||||||
EndProject
|
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
Debug|Any CPU = Debug|Any CPU
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
|
@ -71,18 +67,10 @@ Global
|
||||||
{4875D70F-A96B-4EBA-99BE-218886D29BEB}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{4875D70F-A96B-4EBA-99BE-218886D29BEB}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{4875D70F-A96B-4EBA-99BE-218886D29BEB}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{4875D70F-A96B-4EBA-99BE-218886D29BEB}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{4875D70F-A96B-4EBA-99BE-218886D29BEB}.Release|Any CPU.Build.0 = Release|Any CPU
|
{4875D70F-A96B-4EBA-99BE-218886D29BEB}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
{EBB8A2A8-453B-4867-A8E2-072530391DD0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
|
||||||
{EBB8A2A8-453B-4867-A8E2-072530391DD0}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
|
||||||
{EBB8A2A8-453B-4867-A8E2-072530391DD0}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
|
||||||
{EBB8A2A8-453B-4867-A8E2-072530391DD0}.Release|Any CPU.Build.0 = Release|Any CPU
|
|
||||||
{2A391CA2-F96B-4DB7-80AA-0668A5141640}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
{2A391CA2-F96B-4DB7-80AA-0668A5141640}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
{2A391CA2-F96B-4DB7-80AA-0668A5141640}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{2A391CA2-F96B-4DB7-80AA-0668A5141640}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{2A391CA2-F96B-4DB7-80AA-0668A5141640}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
{2A391CA2-F96B-4DB7-80AA-0668A5141640}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
{2A391CA2-F96B-4DB7-80AA-0668A5141640}.Release|Any CPU.Build.0 = Release|Any CPU
|
{2A391CA2-F96B-4DB7-80AA-0668A5141640}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
{4C2B66EA-4EE1-47BF-BAEE-DDBAF6FCB324}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
|
||||||
{4C2B66EA-4EE1-47BF-BAEE-DDBAF6FCB324}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
|
||||||
{4C2B66EA-4EE1-47BF-BAEE-DDBAF6FCB324}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
|
||||||
{4C2B66EA-4EE1-47BF-BAEE-DDBAF6FCB324}.Release|Any CPU.Build.0 = Release|Any CPU
|
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(SolutionProperties) = preSolution
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
HideSolutionNode = FALSE
|
HideSolutionNode = FALSE
|
||||||
|
|
@ -95,9 +83,7 @@ Global
|
||||||
{EF3188D7-338D-43DA-BF6B-D26E5BDAC3A6} = {35BA5DCB-BECC-4F51-8DD0-694C555D205A}
|
{EF3188D7-338D-43DA-BF6B-D26E5BDAC3A6} = {35BA5DCB-BECC-4F51-8DD0-694C555D205A}
|
||||||
{1E75F7E9-E6AA-44E7-A2F3-DB4CA85E0118} = {038C3821-E554-496D-B585-A3BC193B7913}
|
{1E75F7E9-E6AA-44E7-A2F3-DB4CA85E0118} = {038C3821-E554-496D-B585-A3BC193B7913}
|
||||||
{4875D70F-A96B-4EBA-99BE-218886D29BEB} = {F2D241DB-7692-46DB-8A6A-958B365DAAF8}
|
{4875D70F-A96B-4EBA-99BE-218886D29BEB} = {F2D241DB-7692-46DB-8A6A-958B365DAAF8}
|
||||||
{EBB8A2A8-453B-4867-A8E2-072530391DD0} = {3F000016-069D-477E-ACA3-F643880B57E8}
|
|
||||||
{2A391CA2-F96B-4DB7-80AA-0668A5141640} = {140F73DD-29D3-4C44-809B-5B470880AA0D}
|
{2A391CA2-F96B-4DB7-80AA-0668A5141640} = {140F73DD-29D3-4C44-809B-5B470880AA0D}
|
||||||
{4C2B66EA-4EE1-47BF-BAEE-DDBAF6FCB324} = {140F73DD-29D3-4C44-809B-5B470880AA0D}
|
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||||
SolutionGuid = {F376A326-7590-4E7E-AB9B-76CED8527AB0}
|
SolutionGuid = {F376A326-7590-4E7E-AB9B-76CED8527AB0}
|
||||||
|
|
|
||||||
|
|
@ -1,14 +0,0 @@
|
||||||
namespace Insight.Agent.Enums
|
|
||||||
{
|
|
||||||
public enum CategoryEnum
|
|
||||||
{
|
|
||||||
Network = 1,
|
|
||||||
System = 2,
|
|
||||||
Application = 3,
|
|
||||||
Security = 4,
|
|
||||||
Monitoring = 5,
|
|
||||||
Task = 6,
|
|
||||||
Printer = 7,
|
|
||||||
RDP = 8
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
namespace Insight.Agent.Enums
|
|
||||||
{
|
|
||||||
public enum DispatchEnum
|
|
||||||
{
|
|
||||||
Pending = 1,
|
|
||||||
Failure = 2,
|
|
||||||
Success = 3,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
namespace Insight.Agent.Enums
|
|
||||||
{
|
|
||||||
public enum StatusEnum
|
|
||||||
{
|
|
||||||
Information = 1,
|
|
||||||
Warning = 2,
|
|
||||||
Error = 3
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,30 +0,0 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk">
|
|
||||||
|
|
||||||
<PropertyGroup>
|
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
|
||||||
<ImplicitUsings>true</ImplicitUsings>
|
|
||||||
<Nullable>enable</Nullable>
|
|
||||||
<AssemblyName>Insight.Agent.Assets</AssemblyName>
|
|
||||||
<RootNamespace>Insight.Agent</RootNamespace>
|
|
||||||
<Product>Insight</Product>
|
|
||||||
<AssemblyVersion>2023.9.14.0</AssemblyVersion>
|
|
||||||
</PropertyGroup>
|
|
||||||
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
|
||||||
<DebugType>none</DebugType>
|
|
||||||
</PropertyGroup>
|
|
||||||
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
|
|
||||||
<DebugType>none</DebugType>
|
|
||||||
</PropertyGroup>
|
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="Vaitr.Network" Version="2023.9.13" />
|
|
||||||
<PackageReference Include="Vaitr.Snmp" Version="2023.3.3" />
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<ProjectReference Include="..\..\Core\Insight.Domain\Insight.Domain.csproj" />
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
</Project>
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
||||||
using Insight.Agent.Messages;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Interfaces
|
|
||||||
{
|
|
||||||
public partial interface IAgentMessageHandler<TSender>
|
|
||||||
{
|
|
||||||
ValueTask HandleAsync<TMessage>(TSender sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,41 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
using System.Runtime.InteropServices;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(120, typeof(Application))]
|
|
||||||
[MemoryPackUnion(121, typeof(ApplicationList))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Application : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Publisher { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Version { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Location { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? Source { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public string? Uninstall { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public DateTime? InstallDate { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public Architecture? Architecture { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable(GenerateType.Collection)]
|
|
||||||
public partial class ApplicationList : List<Application>, IAgentMessage { }
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
@ -1,34 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(1, typeof(Authentication))]
|
|
||||||
[MemoryPackUnion(2, typeof(AuthenticationRequest))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Authentication : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public PlatformType? Platform { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public Guid Serial { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public Version? Version { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Hostname { get; set; }
|
|
||||||
|
|
||||||
public enum PlatformType
|
|
||||||
{
|
|
||||||
Unknown = 0,
|
|
||||||
Windows = 1,
|
|
||||||
Unix = 2
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class AuthenticationRequest : IAgentMessage { }
|
|
||||||
}
|
|
||||||
|
|
@ -1,10 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(2000, typeof(GetInventory))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class GetInventory : IAgentMessage { }
|
|
||||||
}
|
|
||||||
|
|
@ -1,49 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(1000, typeof(ConsoleQuery))]
|
|
||||||
[MemoryPackUnion(1001, typeof(ConsoleQueryRequest))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class ConsoleQuery : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? Id { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? HostId { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Query { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Data { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? Errors { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public bool IsString { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public bool IsArray { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public bool HadErrors { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class ConsoleQueryRequest : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? Id { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? HostId { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Query { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,103 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(50, typeof(Drive))]
|
|
||||||
[MemoryPackUnion(51, typeof(DriveList))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Drive : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public uint? Index { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Id { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Manufacturer { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? SerialNumber { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public ulong? Size { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public string? Status { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public string? InterfaceType { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public string? FirmwareRevision { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(9)]
|
|
||||||
public string? PNPDeviceID { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(10)]
|
|
||||||
public List<Volume>? Volumes { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable(GenerateType.Collection)]
|
|
||||||
public partial class DriveList : List<Drive>, IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Volume : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public uint? Index { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Id { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? SerialNumber { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public ulong? Size { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public ulong? FreeSpace { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public string? Type { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public string? FileSystem { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public bool? Compressed { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(9)]
|
|
||||||
public bool? Bootable { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(10)]
|
|
||||||
public bool? PrimaryPartition { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(11)]
|
|
||||||
public bool? BootPartition { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(12)]
|
|
||||||
public ulong? BlockSize { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(13)]
|
|
||||||
public ulong? NumberOfBlocks { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(14)]
|
|
||||||
public ulong? StartingOffset { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(15)]
|
|
||||||
public DriveType? DriveType { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(16)]
|
|
||||||
public string? ProviderName { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,41 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(10, typeof(Event))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Event : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public DateTime? Timestamp { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public StatusType? Status { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Source { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Category { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public int? EventId { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public string? Task { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public string? Message { get; set; }
|
|
||||||
|
|
||||||
public enum StatusType
|
|
||||||
{
|
|
||||||
Unknown = 0,
|
|
||||||
Information = 1,
|
|
||||||
Warning = 2,
|
|
||||||
Error = 3,
|
|
||||||
Critical = 4
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,7 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
}
|
|
||||||
|
|
@ -1,195 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
using System.Net;
|
|
||||||
using System.Net.NetworkInformation;
|
|
||||||
using System.Net.Sockets;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(70, typeof(Interface))]
|
|
||||||
[MemoryPackUnion(71, typeof(InterfaceList))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Interface : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public uint? Index { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public Guid? Guid { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Mac { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? Description { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public string? Manufacturer { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public string? Suffix { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public bool? Physical { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public NetworkInterfaceType? Type { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(9)]
|
|
||||||
public OperationalStatus? Status { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(10)]
|
|
||||||
public long? Speed { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(11)]
|
|
||||||
public long? Ipv4Mtu { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(12)]
|
|
||||||
public bool? Ipv4Dhcp { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(13)]
|
|
||||||
public bool? Ipv4Forwarding { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(14)]
|
|
||||||
public long? Ipv6Mtu { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(15)]
|
|
||||||
public long? Sent { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(16)]
|
|
||||||
public long? Received { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(17)]
|
|
||||||
public long? IncomingPacketsDiscarded { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(18)]
|
|
||||||
public long? IncomingPacketsWithErrors { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(19)]
|
|
||||||
public long? IncomingUnknownProtocolPackets { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(20)]
|
|
||||||
public long? OutgoingPacketsDiscarded { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(21)]
|
|
||||||
public long? OutgoingPacketsWithErrors { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(22)]
|
|
||||||
public List<Unicast>? Addresses { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(23)]
|
|
||||||
public List<IPAddress2>? Gateways { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(24)]
|
|
||||||
public List<IPAddress2>? Dns { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(25)]
|
|
||||||
public List<IPAddress2>? Dhcp { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(26)]
|
|
||||||
public List<Route>? Routes { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable(GenerateType.Collection)]
|
|
||||||
public partial class InterfaceList : List<Interface>, IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Unicast : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public IPAddress2? IpAddress { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public IPAddress2? Ipv4Mask { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public long? AddressPreferredLifetime { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public long? AddressValidLifetime { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public long? DhcpLeaseLifetime { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public DuplicateAddressDetectionState? DuplicateAddressDetectionState { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public int? PrefixLength { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public PrefixOrigin? PrefixOrigin { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public SuffixOrigin? SuffixOrigin { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Route : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public uint? InterfaceIndex { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public IPAddress2? Destination { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public IPAddress2? Gateway { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Mask { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public int? Metric { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class IPAddress2 : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public AddressFamily? AddressFamily { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Address { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public bool? IsIPv6Teredo { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public bool? IsIPv6SiteLocal { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public bool? IsIPv6Multicast { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public bool? IsIPv6LinkLocal { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public bool? IsIPv4MappedToIPv6 { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public bool? IsIPv6UniqueLocal { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackConstructor]
|
|
||||||
public IPAddress2()
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public IPAddress2(IPAddress address)
|
|
||||||
{
|
|
||||||
AddressFamily = address.AddressFamily;
|
|
||||||
Address = address.ToString();
|
|
||||||
IsIPv4MappedToIPv6 = address.IsIPv4MappedToIPv6;
|
|
||||||
IsIPv6LinkLocal = address.IsIPv6LinkLocal;
|
|
||||||
IsIPv6Multicast = address.IsIPv6Multicast;
|
|
||||||
IsIPv6SiteLocal = address.IsIPv6SiteLocal;
|
|
||||||
IsIPv6Teredo = address.IsIPv6Teredo;
|
|
||||||
IsIPv6UniqueLocal = address.IsIPv6UniqueLocal;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,10 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(0, typeof(Keepalive))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Keepalive : IAgentMessage { }
|
|
||||||
}
|
|
||||||
|
|
@ -1,29 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(20, typeof(Mainboard))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Mainboard : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? Manufacturer { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Model { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Serial { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? BiosManufacturer { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? BiosVersion { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public DateTime? BiosDate { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,67 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(40, typeof(Memory))]
|
|
||||||
[MemoryPackUnion(41, typeof(MemoryList))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Memory : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public uint? Index { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Tag { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Location { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Manufacturer { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? Model { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public string? Serial { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public ulong? Capacity { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public uint? Speed { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public uint? Voltage { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(9)]
|
|
||||||
public uint? ConfiguredSpeed { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(10)]
|
|
||||||
public uint? ConfiguredVoltage { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable(GenerateType.Collection)]
|
|
||||||
public partial class MemoryList : List<Memory>, IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class MemoryMetric : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public DateTime? Timestamp { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public float? MemoryAvailable { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public float? MemoryAvailablePercentage { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public float? MemoryUsed { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public float? MemoryUsagePercentage { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,30 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
using System.Runtime.InteropServices;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(90, typeof(OperationSystem))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class OperationSystem : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Version { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? SerialNumber { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public Architecture? Architecture { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public bool? Virtual { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public DateTime? InstallDate { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,30 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(140, typeof(Printer))]
|
|
||||||
[MemoryPackUnion(141, typeof(PrinterList))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Printer : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Driver { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Port { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Location { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? Comment { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable(GenerateType.Collection)]
|
|
||||||
public partial class PrinterList : List<Printer>, IAgentMessage { }
|
|
||||||
}
|
|
||||||
|
|
@ -1,70 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(30, typeof(Processor))]
|
|
||||||
[MemoryPackUnion(31, typeof(ProcessorList))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Processor : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public uint? Index { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Manufacturer { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? SerialNumber { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? Socket { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public string? Version { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public string? DeviceId { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public uint? Cores { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public uint? LogicalCores { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(9)]
|
|
||||||
public uint? CurrentSpeed { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(10)]
|
|
||||||
public uint? MaxSpeed { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(11)]
|
|
||||||
public uint? L1Size { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(12)]
|
|
||||||
public uint? L2Size { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(13)]
|
|
||||||
public uint? L3Size { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(14)]
|
|
||||||
public bool? Virtualization { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable(GenerateType.Collection)]
|
|
||||||
public partial class ProcessorList : List<Processor>, IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class ProcessorMetric : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public DateTime? Timestamp { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public float? ProcessorUsagePercentage { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,64 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(130, typeof(Service))]
|
|
||||||
[MemoryPackUnion(131, typeof(ServiceList))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Service : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public uint? ProcessId { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Display { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Description { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? PathName { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public string? Account { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public bool? Delay { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public ServiceStatus? Status { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public ServiceMode? StartMode { get; set; }
|
|
||||||
|
|
||||||
public enum ServiceStatus
|
|
||||||
{
|
|
||||||
Unknown = -1,
|
|
||||||
Stopped = 1,
|
|
||||||
StartPending = 2,
|
|
||||||
StopPending = 3,
|
|
||||||
Running = 4,
|
|
||||||
ContinuePending = 5,
|
|
||||||
PausePending = 6,
|
|
||||||
Paused = 7
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum ServiceMode
|
|
||||||
{
|
|
||||||
Unknown = -1,
|
|
||||||
Boot = 0,
|
|
||||||
System = 1,
|
|
||||||
Automatic = 2,
|
|
||||||
Manual = 3,
|
|
||||||
Disabled = 4
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable(GenerateType.Collection)]
|
|
||||||
public partial class ServiceList : List<Service>, IAgentMessage { }
|
|
||||||
}
|
|
||||||
|
|
@ -1,30 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(110, typeof(Session))]
|
|
||||||
[MemoryPackUnion(111, typeof(SessionList))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Session : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? Sid { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? User { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Type { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Status { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? Remote { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable(GenerateType.Collection)]
|
|
||||||
public partial class SessionList : List<Session>, IAgentMessage { }
|
|
||||||
}
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(3, typeof(Status))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Status : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public DateTime Timestamp { get; } = DateTime.Now;
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public TimeSpan Uptime { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,302 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(160, typeof(StoragePool))]
|
|
||||||
[MemoryPackUnion(161, typeof(StoragePoolList))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class StoragePool : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? UniqueId { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? FriendlyName { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public List<OperationalState>? States { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public HealthState? Health { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public RetireMissingPhysicalDisksEnum? RetireMissingPhysicalDisks { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public string? Resiliency { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public bool? IsPrimordial { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public bool? IsReadOnly { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(9)]
|
|
||||||
public bool? IsClustered { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(10)]
|
|
||||||
public ulong? Size { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(11)]
|
|
||||||
public ulong? AllocatedSize { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(12)]
|
|
||||||
public ulong? SectorSize { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(13)]
|
|
||||||
public List<PhysicalDisk>? PhysicalDisks { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(14)]
|
|
||||||
public List<VirtualDisk>? VirtualDisks { get; set; }
|
|
||||||
|
|
||||||
public enum OperationalState
|
|
||||||
{
|
|
||||||
Unknown = 0,
|
|
||||||
Other = 1,
|
|
||||||
OK = 2,
|
|
||||||
Degraded = 3,
|
|
||||||
Stressed = 4,
|
|
||||||
Predictive_Failure = 5,
|
|
||||||
Error = 6,
|
|
||||||
Non_Recoverable_Error = 7,
|
|
||||||
Starting = 8,
|
|
||||||
Stopping = 9,
|
|
||||||
Stopped = 10,
|
|
||||||
In_Service = 11,
|
|
||||||
No_Contact = 12,
|
|
||||||
Lost_Communication = 13,
|
|
||||||
Aborted = 14,
|
|
||||||
Dormant = 15,
|
|
||||||
Supporting_Entity_In_Error = 16,
|
|
||||||
Completed = 17,
|
|
||||||
Power_Mode = 18,
|
|
||||||
Relocating = 19
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum HealthState
|
|
||||||
{
|
|
||||||
Healthy = 0,
|
|
||||||
Warning = 1,
|
|
||||||
Unhealthy = 2,
|
|
||||||
Unknown = 3
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum RetireMissingPhysicalDisksEnum
|
|
||||||
{
|
|
||||||
Auto = 1,
|
|
||||||
Always = 2,
|
|
||||||
Never = 3
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable(GenerateType.Collection)]
|
|
||||||
public partial class StoragePoolList : List<StoragePool>, IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class PhysicalDisk : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? UniqueId { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? DeviceId { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? FriendlyName { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Manufacturer { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? Model { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public ushort? MediaType { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public ushort? BusType { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public List<OperationalState>? States { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public HealthState? Health { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(9)]
|
|
||||||
public List<SupportedUsagesEnum>? SupportedUsages { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(10)]
|
|
||||||
public ushort? Usage { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(11)]
|
|
||||||
public string? PhysicalLocation { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(12)]
|
|
||||||
public string? SerialNumber { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(13)]
|
|
||||||
public string? FirmwareVersion { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(14)]
|
|
||||||
public ulong? Size { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(15)]
|
|
||||||
public ulong? AllocatedSize { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(16)]
|
|
||||||
public ulong? LogicalSectorSize { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(17)]
|
|
||||||
public ulong? PhysicalSectorSize { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(18)]
|
|
||||||
public ulong? VirtualDiskFootprint { get; set; }
|
|
||||||
|
|
||||||
public enum OperationalState
|
|
||||||
{
|
|
||||||
Unknown = 0,
|
|
||||||
Other = 1,
|
|
||||||
OK = 2,
|
|
||||||
Degraded = 3,
|
|
||||||
Stressed = 4,
|
|
||||||
Predictive_Failure = 5,
|
|
||||||
Error = 6,
|
|
||||||
Non_Recoverable_Error = 7,
|
|
||||||
Starting = 8,
|
|
||||||
Stopping = 9,
|
|
||||||
Stopped = 10,
|
|
||||||
In_Service = 11,
|
|
||||||
No_Contact = 12,
|
|
||||||
Lost_Communication = 13,
|
|
||||||
Aborted = 14,
|
|
||||||
Dormant = 15,
|
|
||||||
Supporting_Entity_In_Error = 16,
|
|
||||||
Completed = 17,
|
|
||||||
Power_Mode = 18,
|
|
||||||
Relocating = 19
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum HealthState
|
|
||||||
{
|
|
||||||
Healthy = 0,
|
|
||||||
Warning = 1,
|
|
||||||
Unhealthy = 2,
|
|
||||||
Unknown = 3
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum SupportedUsagesEnum
|
|
||||||
{
|
|
||||||
Unknown = 0,
|
|
||||||
Auto_Select = 1,
|
|
||||||
Manual_Select = 2,
|
|
||||||
Hot_Spare = 3,
|
|
||||||
Retired = 4,
|
|
||||||
Journal = 5
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class VirtualDisk : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? UniqueId { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? FriendlyName { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public List<OperationalState>? States { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public HealthState? Health { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public AccessTypeEnum? AccessType { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public ProvisioningTypeEnum? ProvisioningType { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public ushort? PhysicalDiskRedundancy { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public string? ResiliencySettingName { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(9)]
|
|
||||||
public bool? Deduplication { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(10)]
|
|
||||||
public bool? IsSnapshot { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(11)]
|
|
||||||
public ulong? Size { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(12)]
|
|
||||||
public ulong? AllocatedSize { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(13)]
|
|
||||||
public ulong? FootprintOnPool { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(14)]
|
|
||||||
public ulong? ReadCacheSize { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(15)]
|
|
||||||
public ulong? WriteCacheSize { get; set; }
|
|
||||||
|
|
||||||
public enum OperationalState
|
|
||||||
{
|
|
||||||
Unknown = 0,
|
|
||||||
Other = 1,
|
|
||||||
OK = 2,
|
|
||||||
Degraded = 3,
|
|
||||||
Stressed = 4,
|
|
||||||
Predictive_Failure = 5,
|
|
||||||
Error = 6,
|
|
||||||
Non_Recoverable_Error = 7,
|
|
||||||
Starting = 8,
|
|
||||||
Stopping = 9,
|
|
||||||
Stopped = 10,
|
|
||||||
In_Service = 11,
|
|
||||||
No_Contact = 12,
|
|
||||||
Lost_Communication = 13,
|
|
||||||
Aborted = 14,
|
|
||||||
Dormant = 15,
|
|
||||||
Supporting_Entity_In_Error = 16,
|
|
||||||
Completed = 17,
|
|
||||||
Power_Mode = 18,
|
|
||||||
Relocating = 19
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum HealthState
|
|
||||||
{
|
|
||||||
Healthy = 0,
|
|
||||||
Warning = 1,
|
|
||||||
Unhealthy = 2,
|
|
||||||
Unknown = 3
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum AccessTypeEnum
|
|
||||||
{
|
|
||||||
Unknown = 0,
|
|
||||||
Readable = 1,
|
|
||||||
Writeable = 2,
|
|
||||||
Read_Write = 3,
|
|
||||||
Write_Once = 4
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum ProvisioningTypeEnum
|
|
||||||
{
|
|
||||||
Unknown = 0,
|
|
||||||
Thin = 1,
|
|
||||||
Fixed = 2
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,23 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(80, typeof(SystemInfo))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class SystemInfo : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public DateTime? LastBootUpTime { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public DateTime? LocalDateTime { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public uint? Processes { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? License { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,29 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(11, typeof(Trap))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Trap : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public DateTime? Timestamp { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Endpoint { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Hostname { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Version { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? Community { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public List<KeyValuePair<string, string?>>? Data { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,83 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(100, typeof(Update))]
|
|
||||||
[MemoryPackUnion(101, typeof(UpdateList))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Update : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? Id { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public DateTime? Date { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Description { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? SupportUrl { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public string? Hotfix { get; set; }
|
|
||||||
|
|
||||||
// if installed
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public OsUpdateResultCodeEnum? Result { get; set; }
|
|
||||||
|
|
||||||
// if pending
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public OsUpdateTypeEnum? Type { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public decimal? Size { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(9)]
|
|
||||||
public bool? IsDownloaded { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(10)]
|
|
||||||
public bool? CanRequestUserInput { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(11)]
|
|
||||||
public OsUpdateRebootBehaviorEnum? RebootBehavior { get; set; }
|
|
||||||
|
|
||||||
public enum OsUpdateRebootBehaviorEnum
|
|
||||||
{
|
|
||||||
NeverReboots = 1,
|
|
||||||
AlwaysRequiresReboot = 2,
|
|
||||||
CanRequestReboot = 3
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum OsUpdateResultCodeEnum
|
|
||||||
{
|
|
||||||
NotStarted = 1,
|
|
||||||
InProgress = 2,
|
|
||||||
Succeeded = 3,
|
|
||||||
SucceededWithErrors = 4,
|
|
||||||
Failed = 5,
|
|
||||||
Aborted = 6
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum OsUpdateTypeEnum
|
|
||||||
{
|
|
||||||
Software = 1,
|
|
||||||
Driver = 2
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class UpdateList : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public List<Update>? Installed { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public List<Update>? Pending { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,73 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(150, typeof(User))]
|
|
||||||
[MemoryPackUnion(151, typeof(UserList))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class User : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? Sid { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Domain { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? FullName { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? Description { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public string? Status { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public bool? LocalAccount { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public bool? Disabled { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public bool? Lockout { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(9)]
|
|
||||||
public bool? PasswordChangeable { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(10)]
|
|
||||||
public bool? PasswordExpires { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(11)]
|
|
||||||
public bool? PasswordRequired { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(12)]
|
|
||||||
public List<Group>? Groups { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable(GenerateType.Collection)]
|
|
||||||
public partial class UserList : List<User>, IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Group : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? Sid { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Domain { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Description { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public bool? LocalAccount { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,30 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(60, typeof(Videocard))]
|
|
||||||
[MemoryPackUnion(61, typeof(VideocardList))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class Videocard : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? DeviceId { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? Model { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public ulong Memory { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public DateTime DriverDate { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? DriverVersion { get; set; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable(GenerateType.Collection)]
|
|
||||||
public partial class VideocardList : List<Videocard>, IAgentMessage { }
|
|
||||||
}
|
|
||||||
|
|
@ -1,265 +0,0 @@
|
||||||
using MemoryPack;
|
|
||||||
|
|
||||||
namespace Insight.Agent.Messages
|
|
||||||
{
|
|
||||||
[MemoryPackUnion(170, typeof(VirtualMaschine))]
|
|
||||||
[MemoryPackUnion(171, typeof(VirtualMaschineList))]
|
|
||||||
public partial interface IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class VirtualMaschine : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public Guid? Id { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public uint? ProcessId { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Caption { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public string? Notes { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public EnabledEnum? Enabled { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public EnabledDefaultEnum? EnabledDefault { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public HealthStatusEnum? HealthState { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public string? Status { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(9)]
|
|
||||||
public ulong? OnTime { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(10)]
|
|
||||||
public uint? ReplicationMode { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(11)]
|
|
||||||
public ReplicationStateEnum? ReplicationState { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(12)]
|
|
||||||
public ReplicationHealthEnum? ReplicationHealth { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(13)]
|
|
||||||
public string? ConfigurationVersion { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(14)]
|
|
||||||
public IntegrationServicesVersionStateEnum? IntegrationServicesVersionState { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(15)]
|
|
||||||
public uint? NumberOfProcessors { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(16)]
|
|
||||||
public uint? ProcessorLoad { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(17)]
|
|
||||||
public int? MemoryAvailable { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(18)]
|
|
||||||
public ulong? MemoryUsage { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(19)]
|
|
||||||
public DateTime? InstallDate { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(20)]
|
|
||||||
public DateTime? TimeOfLastConfigurationChange { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(21)]
|
|
||||||
public DateTime? TimeOfLastStateChange { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(22)]
|
|
||||||
public DateTime? LastReplicationTime { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(23)]
|
|
||||||
public string? GuestOperatingSystem { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(24)]
|
|
||||||
public List<VirtualMaschineConfiguration>? Configurations { get; set; }
|
|
||||||
|
|
||||||
public enum EnabledEnum
|
|
||||||
{
|
|
||||||
Unbekannt = 0,
|
|
||||||
Andere = 1,
|
|
||||||
Aktiviert = 2,
|
|
||||||
Deaktiviert = 3,
|
|
||||||
Herunterfahren = 4,
|
|
||||||
Nicht_Verfügbar = 5,
|
|
||||||
Aktiviert_Offline = 6,
|
|
||||||
In_Test = 7,
|
|
||||||
Latent = 8,
|
|
||||||
Eingeschränkt = 9,
|
|
||||||
Wird_gestartet = 10
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum EnabledDefaultEnum
|
|
||||||
{
|
|
||||||
Aktiviert = 2,
|
|
||||||
Deaktiviert = 3,
|
|
||||||
Aktiviert_Offline = 6
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum HealthStatusEnum
|
|
||||||
{
|
|
||||||
OK = 5,
|
|
||||||
Hauptfehler = 20,
|
|
||||||
Kritischer_Fehler = 25
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum ReplicationStateEnum
|
|
||||||
{
|
|
||||||
Deaktiviert = 0,
|
|
||||||
Bereit = 1,
|
|
||||||
Warten_auf_Erstreplikation = 2,
|
|
||||||
Replikat = 3,
|
|
||||||
Synchronisierte_Replication_abgeschlossen = 4,
|
|
||||||
Wiederhergestellt = 5,
|
|
||||||
Commit = 6,
|
|
||||||
Angehalten = 7,
|
|
||||||
Kritisch = 8,
|
|
||||||
Warten_auf_die_Neusynchronisierung = 9,
|
|
||||||
Resynchronisierung = 10,
|
|
||||||
Resynchronisierung_angehalten = 11,
|
|
||||||
Failover_in_Bearbeitung = 12,
|
|
||||||
Failback_in_Fortschritt = 13,
|
|
||||||
Failback_abgeschlossen = 14,
|
|
||||||
Datenträgerupdate_in_Bearbeitung = 15,
|
|
||||||
Datenträgeraktualisierung_kritisch = 16,
|
|
||||||
Unbekannt = 17,
|
|
||||||
Repurpose_Replikation_in_Bearbeitung = 18,
|
|
||||||
Vorbereitet_für_die_Synchronisierungsreplikation = 19,
|
|
||||||
Vorbereitet_für_die_Umgekehrte_Replikation_der_Gruppe = 20,
|
|
||||||
Failover_in_Fortschritt = 21
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum ReplicationHealthEnum
|
|
||||||
{
|
|
||||||
OK = 1,
|
|
||||||
Warnung = 2,
|
|
||||||
Kritisch = 3
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum IntegrationServicesVersionStateEnum
|
|
||||||
{
|
|
||||||
Unknown = 0,
|
|
||||||
UpToDate = 1,
|
|
||||||
Mismatch = 2
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
[MemoryPackable(GenerateType.Collection)]
|
|
||||||
public partial class VirtualMaschineList : List<VirtualMaschine>, IAgentMessage { }
|
|
||||||
|
|
||||||
[MemoryPackable]
|
|
||||||
public partial class VirtualMaschineConfiguration : IAgentMessage
|
|
||||||
{
|
|
||||||
[MemoryPackOrder(0)]
|
|
||||||
public string? Id { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(1)]
|
|
||||||
public string? ParentId { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(2)]
|
|
||||||
public string? Type { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(3)]
|
|
||||||
public string? Name { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(4)]
|
|
||||||
public DateTime? CreationTime { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(5)]
|
|
||||||
public string? Generation { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(6)]
|
|
||||||
public string? Architecture { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(7)]
|
|
||||||
public AutomaticStartupActionEnum? AutomaticStartupAction { get; set; }
|
|
||||||
//public DateTime? AutomaticStartupActionDelay { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(8)]
|
|
||||||
public AutomaticShutdownActionEnum? AutomaticShutdownAction { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(9)]
|
|
||||||
public AutomaticRecoveryActionEnum? AutomaticRecoveryAction { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(10)]
|
|
||||||
public bool? AutomaticSnapshotsEnabled { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(11)]
|
|
||||||
public string? BaseBoardSerialNumber { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(12)]
|
|
||||||
public string? BIOSGUID { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(13)]
|
|
||||||
public string? BIOSSerialNumber { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(14)]
|
|
||||||
public ushort[]? BootOrder { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(15)]
|
|
||||||
public string? ConfigurationDataRoot { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(16)]
|
|
||||||
public string? ConfigurationFile { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(17)]
|
|
||||||
public string? GuestStateDataRoot { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(18)]
|
|
||||||
public string? GuestStateFile { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(19)]
|
|
||||||
public string? SnapshotDataRoot { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(20)]
|
|
||||||
public string? SuspendDataRoot { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(21)]
|
|
||||||
public string? SwapFileDataRoot { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(22)]
|
|
||||||
public bool? SecureBootEnabled { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(23)]
|
|
||||||
public bool? IsAutomaticSnapshot { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(24)]
|
|
||||||
public string[]? Notes { get; set; }
|
|
||||||
|
|
||||||
[MemoryPackOrder(25)]
|
|
||||||
public List<VirtualMaschineConfiguration>? Childs { get; set; }
|
|
||||||
|
|
||||||
//public string[]? HostResource { get; set; }
|
|
||||||
|
|
||||||
public enum AutomaticStartupActionEnum
|
|
||||||
{
|
|
||||||
Nothing = 2,
|
|
||||||
RestartIfLastStateActive = 3,
|
|
||||||
Alway = 4
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum AutomaticShutdownActionEnum
|
|
||||||
{
|
|
||||||
Ausschalten = 2,
|
|
||||||
Speichern = 3,
|
|
||||||
Herunterfahren = 4
|
|
||||||
}
|
|
||||||
|
|
||||||
public enum AutomaticRecoveryActionEnum
|
|
||||||
{
|
|
||||||
Keine = 2,
|
|
||||||
Neustart = 3,
|
|
||||||
Rollback = 4
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
<RootNamespace>Insight.Agent</RootNamespace>
|
<RootNamespace>Insight.Agent</RootNamespace>
|
||||||
<Product>Insight</Product>
|
<Product>Insight</Product>
|
||||||
<AssemblyName>agent</AssemblyName>
|
<AssemblyName>agent</AssemblyName>
|
||||||
<AssemblyVersion>2023.9.14.0</AssemblyVersion>
|
<AssemblyVersion>2023.9.21.0</AssemblyVersion>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
@ -27,10 +27,11 @@
|
||||||
<PackageReference Include="System.Management" Version="7.0.2" />
|
<PackageReference Include="System.Management" Version="7.0.2" />
|
||||||
<PackageReference Include="System.ServiceProcess.ServiceController" Version="7.0.1" />
|
<PackageReference Include="System.ServiceProcess.ServiceController" Version="7.0.1" />
|
||||||
<PackageReference Include="Microsoft.PowerShell.SDK" Version="7.3.7" />
|
<PackageReference Include="Microsoft.PowerShell.SDK" Version="7.3.7" />
|
||||||
|
<PackageReference Include="Vaitr.Snmp" Version="2023.3.3" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\Insight.Agent.Assets\Insight.Agent.Assets.csproj" />
|
<ProjectReference Include="..\..\Core\Insight.Domain\Insight.Domain.csproj" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,15 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using Vaitr.Network;
|
using Vaitr.Network;
|
||||||
|
|
||||||
namespace Insight.Agent.Network
|
namespace Insight.Agent.Network;
|
||||||
{
|
|
||||||
public class AgentSession : TcpSession<IAgentMessage>
|
|
||||||
{
|
|
||||||
private readonly IEnumerable<IAgentMessageHandler<AgentSession>> _handlers;
|
|
||||||
|
|
||||||
public AgentSession(IEnumerable<IAgentMessageHandler<AgentSession>> handlers, ISerializer<IAgentMessage> serializer, ILogger<AgentSession> logger) : base(serializer, logger)
|
public class AgentSession : TcpSession<IMessage>
|
||||||
|
{
|
||||||
|
private readonly IEnumerable<IMessageHandler<AgentSession>> _handlers;
|
||||||
|
|
||||||
|
public AgentSession(IEnumerable<IMessageHandler<AgentSession>> handlers, ISerializer<IMessage> serializer, ILogger<AgentSession> logger) : base(serializer, logger)
|
||||||
{
|
{
|
||||||
_handlers = handlers;
|
_handlers = handlers;
|
||||||
}
|
}
|
||||||
|
|
@ -26,12 +26,12 @@ namespace Insight.Agent.Network
|
||||||
return default;
|
return default;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override ValueTask OnSentAsync(IPacketContext<IAgentMessage> context, CancellationToken cancellationToken)
|
protected override ValueTask OnSentAsync(IPacketContext<IMessage> context, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
return base.OnSentAsync(context, cancellationToken);
|
return base.OnSentAsync(context, cancellationToken);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override async ValueTask OnReceivedAsync(IPacketContext<IAgentMessage> context, CancellationToken cancellationToken)
|
protected override async ValueTask OnReceivedAsync(IPacketContext<IMessage> context, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
await base.OnReceivedAsync(context, cancellationToken);
|
await base.OnReceivedAsync(context, cancellationToken);
|
||||||
|
|
||||||
|
|
@ -54,4 +54,3 @@ namespace Insight.Agent.Network
|
||||||
return default;
|
return default;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,14 +1,15 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Agent.Models;
|
||||||
using Insight.Agent.Messages;
|
|
||||||
using Insight.Agent.Models;
|
|
||||||
using Insight.Agent.Services;
|
using Insight.Agent.Services;
|
||||||
using Insight.Domain.Constants;
|
using Insight.Domain.Constants;
|
||||||
|
using Insight.Domain.Interfaces;
|
||||||
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
namespace Insight.Agent.Network.Handlers;
|
||||||
|
|
||||||
|
public class AuthenticationHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public class AuthenticationHandler : IAgentMessageHandler<AgentSession>
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
|
||||||
{
|
{
|
||||||
if (message is AuthenticationRequest)
|
if (message is AuthenticationRequest)
|
||||||
{
|
{
|
||||||
|
|
@ -35,4 +36,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,13 +1,14 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Management.Automation;
|
using System.Management.Automation;
|
||||||
using System.Management.Automation.Runspaces;
|
using System.Management.Automation.Runspaces;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers;
|
namespace Insight.Agent.Network.Handlers;
|
||||||
|
|
||||||
public class ConsoleHandler : IAgentMessageHandler<AgentSession>
|
public class ConsoleHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is ConsoleQueryRequest consoleQueryRequest)
|
if (message is ConsoleQueryRequest consoleQueryRequest)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -1,16 +1,17 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
namespace Insight.Agent.Network.Handlers;
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class DriveHandler : IAgentMessageHandler<AgentSession>
|
public class DriveHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
var result = new DriveList();
|
var result = new DriveList();
|
||||||
result.AddRange(GetDrives());
|
result.AddRange(GetDrives());
|
||||||
|
|
@ -175,4 +176,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
return volumes;
|
return volumes;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,20 +1,21 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Net;
|
using System.Net;
|
||||||
using System.Net.NetworkInformation;
|
using System.Net.NetworkInformation;
|
||||||
using System.Runtime.InteropServices;
|
using System.Runtime.InteropServices;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
using Route = Insight.Agent.Messages.Route;
|
using Route = Insight.Domain.Messages.Agent.Route;
|
||||||
|
|
||||||
|
namespace Insight.Agent.Network.Handlers;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class InterfaceHandler : IAgentMessageHandler<AgentSession>
|
public class InterfaceHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
var result = new InterfaceList();
|
var result = new InterfaceList();
|
||||||
result.AddRange(GetInterfaces());
|
result.AddRange(GetInterfaces());
|
||||||
|
|
@ -271,4 +272,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,16 +1,17 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
namespace Insight.Agent.Network.Handlers;
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class MainboardHandler : IAgentMessageHandler<AgentSession>
|
public class MainboardHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
await sender.SendAsync(GetMainboard(), cancellationToken);
|
await sender.SendAsync(GetMainboard(), cancellationToken);
|
||||||
}
|
}
|
||||||
|
|
@ -83,4 +84,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
return mainboard;
|
return mainboard;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,16 +1,17 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
namespace Insight.Agent.Network.Handlers;
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class MemoryHandler : IAgentMessageHandler<AgentSession>
|
public class MemoryHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
var result = new MemoryList();
|
var result = new MemoryList();
|
||||||
result.AddRange(GetMemory());
|
result.AddRange(GetMemory());
|
||||||
|
|
@ -120,4 +121,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
// return metric;
|
// return metric;
|
||||||
//}
|
//}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,19 +1,20 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using Microsoft.Win32;
|
using Microsoft.Win32;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Runtime.InteropServices;
|
using System.Runtime.InteropServices;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
using System.Security.AccessControl;
|
using System.Security.AccessControl;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
namespace Insight.Agent.Network.Handlers;
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class OperationSystemHandler : IAgentMessageHandler<AgentSession>
|
public class OperationSystemHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
await sender.SendAsync(GetOperatingSystem(), cancellationToken);
|
await sender.SendAsync(GetOperatingSystem(), cancellationToken);
|
||||||
}
|
}
|
||||||
|
|
@ -88,4 +89,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
return os;
|
return os;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,16 +1,17 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
namespace Insight.Agent.Network.Handlers;
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class PrinterHandler : IAgentMessageHandler<AgentSession>
|
public class PrinterHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
var result = new PrinterList();
|
var result = new PrinterList();
|
||||||
result.AddRange(GetPrinters());
|
result.AddRange(GetPrinters());
|
||||||
|
|
@ -57,4 +58,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
return printers;
|
return printers;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,16 +1,17 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
namespace Insight.Agent.Network.Handlers;
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class ProcessorHandler : IAgentMessageHandler<AgentSession>
|
public class ProcessorHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
var result = new ProcessorList();
|
var result = new ProcessorList();
|
||||||
result.AddRange(GetProcessors());
|
result.AddRange(GetProcessors());
|
||||||
|
|
@ -140,4 +141,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
// return metric;
|
// return metric;
|
||||||
//}
|
//}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,17 +1,18 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
using System.ServiceProcess;
|
using System.ServiceProcess;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
namespace Insight.Agent.Network.Handlers;
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class ServiceHandler : IAgentMessageHandler<AgentSession>
|
public class ServiceHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
var result = new ServiceList();
|
var result = new ServiceList();
|
||||||
result.AddRange(GetServices());
|
result.AddRange(GetServices());
|
||||||
|
|
@ -115,4 +116,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
return services.OrderBy(x => x.Name).ToList();
|
return services.OrderBy(x => x.Name).ToList();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,16 +1,17 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Runtime.InteropServices;
|
using System.Runtime.InteropServices;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
namespace Insight.Agent.Network.Handlers;
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class SessionHandler : IAgentMessageHandler<AgentSession>
|
public class SessionHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
var result = new SessionList();
|
var result = new SessionList();
|
||||||
result.AddRange(GetSessions());
|
result.AddRange(GetSessions());
|
||||||
|
|
@ -249,4 +250,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,19 +1,20 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using Microsoft.Win32;
|
using Microsoft.Win32;
|
||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
using System.Runtime.InteropServices;
|
using System.Runtime.InteropServices;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
using System.Security.AccessControl;
|
using System.Security.AccessControl;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
namespace Insight.Agent.Network.Handlers;
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
internal class SoftwareHandler : IAgentMessageHandler<AgentSession>
|
internal class SoftwareHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
var x64 = Task.Run(() => ApplicationRegistryQuery(RegistryView.Registry64), cancellationToken);
|
var x64 = Task.Run(() => ApplicationRegistryQuery(RegistryView.Registry64), cancellationToken);
|
||||||
var x86 = Task.Run(() => ApplicationRegistryQuery(RegistryView.Registry32), cancellationToken);
|
var x86 = Task.Run(() => ApplicationRegistryQuery(RegistryView.Registry32), cancellationToken);
|
||||||
|
|
@ -116,4 +117,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
return apps;
|
return apps;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,19 +1,20 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
using static Insight.Agent.Messages.PhysicalDisk;
|
using static Insight.Domain.Messages.Agent.PhysicalDisk;
|
||||||
using static Insight.Agent.Messages.StoragePool;
|
using static Insight.Domain.Messages.Agent.StoragePool;
|
||||||
using static Insight.Agent.Messages.VirtualDisk;
|
using static Insight.Domain.Messages.Agent.VirtualDisk;
|
||||||
|
|
||||||
|
namespace Insight.Agent.Network.Handlers;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class StoragePoolHandler : IAgentMessageHandler<AgentSession>
|
public class StoragePoolHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
var result = new StoragePoolList();
|
var result = new StoragePoolList();
|
||||||
result.AddRange(GetStoragePool());
|
result.AddRange(GetStoragePool());
|
||||||
|
|
@ -305,4 +306,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
return disks;
|
return disks;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,18 +1,19 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using Microsoft.Win32;
|
using Microsoft.Win32;
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
namespace Insight.Agent.Network.Handlers;
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class SystemInfoHandler : IAgentMessageHandler<AgentSession>
|
public class SystemInfoHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
await sender.SendAsync(GetSystem(), cancellationToken);
|
await sender.SendAsync(GetSystem(), cancellationToken);
|
||||||
}
|
}
|
||||||
|
|
@ -172,4 +173,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
Windows8AndUp
|
Windows8AndUp
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,18 +1,19 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
using WUApiLib;
|
using WUApiLib;
|
||||||
using static Insight.Agent.Messages.Update;
|
using static Insight.Domain.Messages.Agent.Update;
|
||||||
|
|
||||||
|
namespace Insight.Agent.Network.Handlers;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class UpdateHandler : IAgentMessageHandler<AgentSession>
|
public class UpdateHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
await sender.SendAsync(GetUpdates(), cancellationToken);
|
await sender.SendAsync(GetUpdates(), cancellationToken);
|
||||||
}
|
}
|
||||||
|
|
@ -127,4 +128,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
return updates;
|
return updates;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,16 +1,17 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
namespace Insight.Agent.Network.Handlers;
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class UserHandler : IAgentMessageHandler<AgentSession>
|
public class UserHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
var result = new UserList();
|
var result = new UserList();
|
||||||
result.AddRange(GetUsers());
|
result.AddRange(GetUsers());
|
||||||
|
|
@ -185,4 +186,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
public string? UserName { get; set; }
|
public string? UserName { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,16 +1,17 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
namespace Insight.Agent.Network.Handlers;
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class VideocardHandler : IAgentMessageHandler<AgentSession>
|
public class VideocardHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
var result = new VideocardList();
|
var result = new VideocardList();
|
||||||
result.AddRange(GetVideocards());
|
result.AddRange(GetVideocards());
|
||||||
|
|
@ -61,4 +62,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
return videocards;
|
return videocards;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,18 +1,19 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
using static Insight.Agent.Messages.VirtualMaschine;
|
using static Insight.Domain.Messages.Agent.VirtualMaschine;
|
||||||
using static Insight.Agent.Messages.VirtualMaschineConfiguration;
|
using static Insight.Domain.Messages.Agent.VirtualMaschineConfiguration;
|
||||||
|
|
||||||
|
namespace Insight.Agent.Network.Handlers;
|
||||||
|
|
||||||
namespace Insight.Agent.Network.Handlers
|
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
public class VirtualMaschineHandler : IAgentMessageHandler<AgentSession>
|
public class VirtualMaschineHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is GetInventory)
|
if (message is InventoryRequest)
|
||||||
{
|
{
|
||||||
var result = new VirtualMaschineList();
|
var result = new VirtualMaschineList();
|
||||||
result.AddRange(GetVirtualMaschines());
|
result.AddRange(GetVirtualMaschines());
|
||||||
|
|
@ -356,4 +357,3 @@ namespace Insight.Agent.Network.Handlers
|
||||||
return vms;
|
return vms;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
using Insight.Agent.Extensions;
|
using Insight.Agent.Extensions;
|
||||||
using Insight.Agent.Interfaces;
|
|
||||||
using Insight.Agent.Messages;
|
|
||||||
using Insight.Agent.Network;
|
using Insight.Agent.Network;
|
||||||
using Insight.Agent.Network.Handlers;
|
using Insight.Agent.Network.Handlers;
|
||||||
using Insight.Agent.Services;
|
using Insight.Agent.Services;
|
||||||
using Insight.Domain.Constants;
|
using Insight.Domain.Constants;
|
||||||
|
using Insight.Domain.Interfaces;
|
||||||
|
using Insight.Domain.Messages;
|
||||||
using Microsoft.Extensions.Configuration;
|
using Microsoft.Extensions.Configuration;
|
||||||
using Microsoft.Extensions.DependencyInjection;
|
using Microsoft.Extensions.DependencyInjection;
|
||||||
using Microsoft.Extensions.Hosting;
|
using Microsoft.Extensions.Hosting;
|
||||||
|
|
@ -12,8 +12,8 @@ using Microsoft.Extensions.Logging;
|
||||||
using Vaitr.Network;
|
using Vaitr.Network;
|
||||||
using Vaitr.Network.Hosting;
|
using Vaitr.Network.Hosting;
|
||||||
|
|
||||||
namespace Insight.Agent.Windows
|
namespace Insight.Agent.Windows;
|
||||||
{
|
|
||||||
internal class Program
|
internal class Program
|
||||||
{
|
{
|
||||||
public static async Task Main(string[] args)
|
public static async Task Main(string[] args)
|
||||||
|
|
@ -52,7 +52,7 @@ namespace Insight.Agent.Windows
|
||||||
if (OperatingSystem.IsWindows()) services.AddHostedService<EventService>();
|
if (OperatingSystem.IsWindows()) services.AddHostedService<EventService>();
|
||||||
|
|
||||||
// AGENT NETWORKING
|
// AGENT NETWORKING
|
||||||
services.UseHostedClient<AgentSession, IAgentMessage>(options =>
|
services.UseHostedClient<AgentSession, IMessage>(options =>
|
||||||
{
|
{
|
||||||
options.Host = host.Configuration.GetValue<string?>(Appsettings.ServerHost) ?? throw new Exception($"{Appsettings.ServerHost} value not set (appsettings)");
|
options.Host = host.Configuration.GetValue<string?>(Appsettings.ServerHost) ?? throw new Exception($"{Appsettings.ServerHost} value not set (appsettings)");
|
||||||
options.Port = host.Configuration.GetValue<int?>(Appsettings.ServerPort) ?? throw new Exception($"{Appsettings.ServerPort} value not set (appsettings)");
|
options.Port = host.Configuration.GetValue<int?>(Appsettings.ServerPort) ?? throw new Exception($"{Appsettings.ServerPort} value not set (appsettings)");
|
||||||
|
|
@ -60,27 +60,27 @@ namespace Insight.Agent.Windows
|
||||||
options.Timeout = 30000;
|
options.Timeout = 30000;
|
||||||
options.Encryption = Encryption.Tls12;
|
options.Encryption = Encryption.Tls12;
|
||||||
|
|
||||||
options.UseSerializer<MemPackSerializer<IAgentMessage>, IAgentMessage>();
|
options.UseSerializer<MemPackSerializer<IMessage>, IMessage>();
|
||||||
});
|
});
|
||||||
|
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, AuthenticationHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, AuthenticationHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, DriveHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, DriveHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, InterfaceHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, InterfaceHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, MainboardHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, MainboardHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, MemoryHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, MemoryHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, OperationSystemHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, OperationSystemHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, PrinterHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, PrinterHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, ProcessorHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, ProcessorHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, ServiceHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, ServiceHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, SessionHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, SessionHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, SoftwareHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, SoftwareHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, StoragePoolHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, StoragePoolHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, SystemInfoHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, SystemInfoHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, UpdateHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, UpdateHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, UserHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, UserHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, VideocardHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, VideocardHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, VirtualMaschineHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, VirtualMaschineHandler>();
|
||||||
services.AddSingleton<IAgentMessageHandler<AgentSession>, ConsoleHandler>();
|
services.AddSingleton<IMessageHandler<AgentSession>, ConsoleHandler>();
|
||||||
|
|
||||||
// GLOBAL DEPENDENCIES
|
// GLOBAL DEPENDENCIES
|
||||||
services.AddTransient(provider => new HttpClient(new HttpClientHandler
|
services.AddTransient(provider => new HttpClient(new HttpClientHandler
|
||||||
|
|
@ -94,4 +94,3 @@ namespace Insight.Agent.Windows
|
||||||
await host.RunAsync().ConfigureAwait(false);
|
await host.RunAsync().ConfigureAwait(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,24 +1,25 @@
|
||||||
using Insight.Agent.Messages;
|
using Insight.Agent.Network;
|
||||||
using Insight.Agent.Network;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using Microsoft.Extensions.Hosting;
|
using Microsoft.Extensions.Hosting;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using System.Diagnostics.Eventing.Reader;
|
using System.Diagnostics.Eventing.Reader;
|
||||||
using System.Runtime.Versioning;
|
using System.Runtime.Versioning;
|
||||||
using System.Threading.Channels;
|
using System.Threading.Channels;
|
||||||
using Vaitr.Network;
|
using Vaitr.Network;
|
||||||
using static Insight.Agent.Messages.Event;
|
using static Insight.Domain.Messages.Agent.Event;
|
||||||
using EventLevel = System.Diagnostics.Tracing.EventLevel;
|
using EventLevel = System.Diagnostics.Tracing.EventLevel;
|
||||||
|
|
||||||
namespace Insight.Agent.Services
|
namespace Insight.Agent.Services;
|
||||||
{
|
|
||||||
[SupportedOSPlatform("windows")]
|
[SupportedOSPlatform("windows")]
|
||||||
internal class EventService : BackgroundService
|
internal class EventService : BackgroundService
|
||||||
{
|
{
|
||||||
private readonly Channel<Event> _queue;
|
private readonly Channel<Event> _queue;
|
||||||
private readonly ISessionPool<AgentSession, IAgentMessage> _pool;
|
private readonly ISessionPool<AgentSession, IMessage> _pool;
|
||||||
private readonly ILogger<EventService> _logger;
|
private readonly ILogger<EventService> _logger;
|
||||||
|
|
||||||
public EventService(ISessionPool<AgentSession, IAgentMessage> pool, ILogger<EventService> logger)
|
public EventService(ISessionPool<AgentSession, IMessage> pool, ILogger<EventService> logger)
|
||||||
{
|
{
|
||||||
_pool = pool;
|
_pool = pool;
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
|
|
@ -167,4 +168,3 @@ namespace Insight.Agent.Services
|
||||||
catch (Exception) { } // app crash
|
catch (Exception) { } // app crash
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
using Insight.Agent.Messages;
|
using Insight.Agent.Network;
|
||||||
using Insight.Agent.Network;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using Microsoft.Extensions.Configuration;
|
using Microsoft.Extensions.Configuration;
|
||||||
using Microsoft.Extensions.Hosting;
|
using Microsoft.Extensions.Hosting;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
|
|
@ -9,19 +10,18 @@ using System.Net.Sockets;
|
||||||
using System.Threading.Channels;
|
using System.Threading.Channels;
|
||||||
using Vaitr.Network;
|
using Vaitr.Network;
|
||||||
|
|
||||||
namespace Insight.Agent.Services
|
namespace Insight.Agent.Services;
|
||||||
{
|
|
||||||
public class TrapService : BackgroundService
|
public class TrapService : BackgroundService
|
||||||
{
|
{
|
||||||
private static IPEndPoint EndpointCache { get; } = new(IPAddress.Any, 0);
|
private static IPEndPoint EndpointCache { get; } = new(IPAddress.Any, 0);
|
||||||
private readonly Channel<Trap> _queue;
|
private readonly Channel<Trap> _queue;
|
||||||
|
|
||||||
|
|
||||||
private readonly int _port;
|
private readonly int _port;
|
||||||
private readonly ISessionPool<AgentSession, IAgentMessage> _pool;
|
private readonly ISessionPool<AgentSession, IMessage> _pool;
|
||||||
private readonly ILogger<TrapService> _logger;
|
private readonly ILogger<TrapService> _logger;
|
||||||
|
|
||||||
public TrapService(ISessionPool<AgentSession, IAgentMessage> pool, IConfiguration configuration, ILogger<TrapService> logger)
|
public TrapService(ISessionPool<AgentSession, IMessage> pool, IConfiguration configuration, ILogger<TrapService> logger)
|
||||||
{
|
{
|
||||||
_port = configuration.GetValue<int?>(Appsettings.TrapPort) ?? throw new Exception($"{Appsettings.TrapPort} value not set (appsettings)");
|
_port = configuration.GetValue<int?>(Appsettings.TrapPort) ?? throw new Exception($"{Appsettings.TrapPort} value not set (appsettings)");
|
||||||
_pool = pool;
|
_pool = pool;
|
||||||
|
|
@ -197,4 +197,3 @@ namespace Insight.Agent.Services
|
||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -10,8 +10,8 @@ using System.Runtime.Versioning;
|
||||||
using System.ServiceProcess;
|
using System.ServiceProcess;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
|
|
||||||
namespace Insight.Agent.Services
|
namespace Insight.Agent.Services;
|
||||||
{
|
|
||||||
internal class UpdateService : BackgroundService
|
internal class UpdateService : BackgroundService
|
||||||
{
|
{
|
||||||
private readonly Uri _uri;
|
private readonly Uri _uri;
|
||||||
|
|
@ -357,4 +357,3 @@ namespace Insight.Agent.Services
|
||||||
public List<string> UpdateErrors { get; } = new();
|
public List<string> UpdateErrors { get; } = new();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
using Insight.Agent.Extensions;
|
using Insight.Agent.Extensions;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages.Agent;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
|
|
||||||
namespace Insight.Agent.Services
|
namespace Insight.Agent.Services;
|
||||||
{
|
|
||||||
public partial class CollectorService
|
public partial class CollectorService
|
||||||
{
|
{
|
||||||
public OperationSystem? GetOperatingSystem()
|
public OperationSystem? GetOperatingSystem()
|
||||||
|
|
@ -103,4 +103,3 @@ namespace Insight.Agent.Services
|
||||||
return os;
|
return os;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
using Insight.Agent.Extensions;
|
using Insight.Agent.Extensions;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages.Agent;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using System.Text.RegularExpressions;
|
using System.Text.RegularExpressions;
|
||||||
|
|
||||||
namespace Insight.Agent.Services
|
namespace Insight.Agent.Services;
|
||||||
{
|
|
||||||
public partial class CollectorService
|
public partial class CollectorService
|
||||||
{
|
{
|
||||||
public List<Session>? GetSessions()
|
public List<Session>? GetSessions()
|
||||||
|
|
@ -47,4 +47,3 @@ namespace Insight.Agent.Services
|
||||||
return sessions;
|
return sessions;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
<Product>Insight</Product>
|
<Product>Insight</Product>
|
||||||
<AssemblyName>api</AssemblyName>
|
<AssemblyName>api</AssemblyName>
|
||||||
<AssemblyVersion>2023.8.23.1</AssemblyVersion>
|
<AssemblyVersion>2023.9.21.1</AssemblyVersion>
|
||||||
<RootNamespace>Insight.Api</RootNamespace>
|
<RootNamespace>Insight.Api</RootNamespace>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
using System.Net;
|
using System.Net;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
|
|
||||||
namespace Insight.Domain.Constants
|
namespace Insight.Domain.Constants;
|
||||||
{
|
|
||||||
public static class Configuration
|
public static class Configuration
|
||||||
{
|
{
|
||||||
public static string Hostname => Dns.GetHostEntry("localhost").HostName;
|
public static string Hostname => Dns.GetHostEntry("localhost").HostName;
|
||||||
|
|
@ -10,4 +10,3 @@ namespace Insight.Domain.Constants
|
||||||
public static DirectoryInfo? AppDirectory => string.IsNullOrWhiteSpace(Environment.ProcessPath) ? null : new DirectoryInfo(Environment.ProcessPath).Parent;
|
public static DirectoryInfo? AppDirectory => string.IsNullOrWhiteSpace(Environment.ProcessPath) ? null : new DirectoryInfo(Environment.ProcessPath).Parent;
|
||||||
public static string DefaultConfig => Path.Combine(AppDirectory?.FullName ?? string.Empty, "config.json");
|
public static string DefaultConfig => Path.Combine(AppDirectory?.FullName ?? string.Empty, "config.json");
|
||||||
}
|
}
|
||||||
}
|
|
||||||
13
src/Core/Insight.Domain/Enums/CategoryEnum.cs
Normal file
13
src/Core/Insight.Domain/Enums/CategoryEnum.cs
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
namespace Insight.Domain.Enums;
|
||||||
|
|
||||||
|
public enum CategoryEnum
|
||||||
|
{
|
||||||
|
Network = 1,
|
||||||
|
System = 2,
|
||||||
|
Application = 3,
|
||||||
|
Security = 4,
|
||||||
|
Monitoring = 5,
|
||||||
|
Task = 6,
|
||||||
|
Printer = 7,
|
||||||
|
RDP = 8
|
||||||
|
}
|
||||||
8
src/Core/Insight.Domain/Enums/DispatchEnum.cs
Normal file
8
src/Core/Insight.Domain/Enums/DispatchEnum.cs
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
namespace Insight.Domain.Enums;
|
||||||
|
|
||||||
|
public enum DispatchEnum
|
||||||
|
{
|
||||||
|
Pending = 1,
|
||||||
|
Failure = 2,
|
||||||
|
Success = 3,
|
||||||
|
}
|
||||||
8
src/Core/Insight.Domain/Enums/StatusEnum.cs
Normal file
8
src/Core/Insight.Domain/Enums/StatusEnum.cs
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
namespace Insight.Domain.Enums;
|
||||||
|
|
||||||
|
public enum StatusEnum
|
||||||
|
{
|
||||||
|
Information = 1,
|
||||||
|
Warning = 2,
|
||||||
|
Error = 3
|
||||||
|
}
|
||||||
|
|
@ -6,9 +6,13 @@
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
<RootNamespace>Insight.Domain</RootNamespace>
|
<RootNamespace>Insight.Domain</RootNamespace>
|
||||||
<Product>Insight</Product>
|
<Product>Insight</Product>
|
||||||
<AssemblyVersion>2023.7.3.0</AssemblyVersion>
|
<AssemblyVersion>2023.9.21.1</AssemblyVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Vaitr.Network" Version="2023.9.13" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
||||||
<DebugType>none</DebugType>
|
<DebugType>none</DebugType>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
using Insight.Domain.Messages;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Interfaces;
|
||||||
|
|
||||||
|
public partial interface IMessageHandler<TSender>
|
||||||
|
{
|
||||||
|
ValueTask HandleAsync<TMessage>(TSender sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage;
|
||||||
|
}
|
||||||
35
src/Core/Insight.Domain/Messages/Agent/Application.cs
Normal file
35
src/Core/Insight.Domain/Messages/Agent/Application.cs
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
using MemoryPack;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Application : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Publisher { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Version { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Location { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? Source { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public string? Uninstall { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public DateTime? InstallDate { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public Architecture? Architecture { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable(GenerateType.Collection)]
|
||||||
|
public partial class ApplicationList : List<Application>, IMessage { }
|
||||||
29
src/Core/Insight.Domain/Messages/Agent/Authentication.cs
Normal file
29
src/Core/Insight.Domain/Messages/Agent/Authentication.cs
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Authentication : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public PlatformType? Platform { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public Guid Serial { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public Version? Version { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Hostname { get; set; }
|
||||||
|
|
||||||
|
public enum PlatformType
|
||||||
|
{
|
||||||
|
Unknown = 0,
|
||||||
|
Windows = 1,
|
||||||
|
Unix = 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class AuthenticationRequest : IMessage { }
|
||||||
6
src/Core/Insight.Domain/Messages/Agent/Commands.cs
Normal file
6
src/Core/Insight.Domain/Messages/Agent/Commands.cs
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class InventoryRequest : IMessage { }
|
||||||
44
src/Core/Insight.Domain/Messages/Agent/ConsoleQuery.cs
Normal file
44
src/Core/Insight.Domain/Messages/Agent/ConsoleQuery.cs
Normal file
|
|
@ -0,0 +1,44 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class ConsoleQuery : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? Id { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? HostId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Query { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Data { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? Errors { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public bool IsString { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public bool IsArray { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public bool HadErrors { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class ConsoleQueryRequest : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? Id { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? HostId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Query { get; set; }
|
||||||
|
}
|
||||||
98
src/Core/Insight.Domain/Messages/Agent/Drive.cs
Normal file
98
src/Core/Insight.Domain/Messages/Agent/Drive.cs
Normal file
|
|
@ -0,0 +1,98 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Drive : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public uint? Index { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Id { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Manufacturer { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? SerialNumber { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public ulong? Size { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public string? Status { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public string? InterfaceType { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public string? FirmwareRevision { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(9)]
|
||||||
|
public string? PNPDeviceID { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(10)]
|
||||||
|
public List<Volume>? Volumes { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable(GenerateType.Collection)]
|
||||||
|
public partial class DriveList : List<Drive>, IMessage { }
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Volume : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public uint? Index { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Id { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? SerialNumber { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public ulong? Size { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public ulong? FreeSpace { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public string? Type { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public string? FileSystem { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public bool? Compressed { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(9)]
|
||||||
|
public bool? Bootable { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(10)]
|
||||||
|
public bool? PrimaryPartition { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(11)]
|
||||||
|
public bool? BootPartition { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(12)]
|
||||||
|
public ulong? BlockSize { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(13)]
|
||||||
|
public ulong? NumberOfBlocks { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(14)]
|
||||||
|
public ulong? StartingOffset { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(15)]
|
||||||
|
public DriveType? DriveType { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(16)]
|
||||||
|
public string? ProviderName { get; set; }
|
||||||
|
}
|
||||||
37
src/Core/Insight.Domain/Messages/Agent/Event.cs
Normal file
37
src/Core/Insight.Domain/Messages/Agent/Event.cs
Normal file
|
|
@ -0,0 +1,37 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Event : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public DateTime? Timestamp { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public StatusType? Status { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Source { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Category { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public int? EventId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public string? Task { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public string? Message { get; set; }
|
||||||
|
|
||||||
|
public enum StatusType
|
||||||
|
{
|
||||||
|
Unknown = 0,
|
||||||
|
Information = 1,
|
||||||
|
Warning = 2,
|
||||||
|
Error = 3,
|
||||||
|
Critical = 4
|
||||||
|
}
|
||||||
|
}
|
||||||
190
src/Core/Insight.Domain/Messages/Agent/Interface.cs
Normal file
190
src/Core/Insight.Domain/Messages/Agent/Interface.cs
Normal file
|
|
@ -0,0 +1,190 @@
|
||||||
|
using MemoryPack;
|
||||||
|
using System.Net;
|
||||||
|
using System.Net.NetworkInformation;
|
||||||
|
using System.Net.Sockets;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Interface : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public uint? Index { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public Guid? Guid { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Mac { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? Description { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public string? Manufacturer { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public string? Suffix { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public bool? Physical { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public NetworkInterfaceType? Type { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(9)]
|
||||||
|
public OperationalStatus? Status { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(10)]
|
||||||
|
public long? Speed { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(11)]
|
||||||
|
public long? Ipv4Mtu { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(12)]
|
||||||
|
public bool? Ipv4Dhcp { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(13)]
|
||||||
|
public bool? Ipv4Forwarding { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(14)]
|
||||||
|
public long? Ipv6Mtu { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(15)]
|
||||||
|
public long? Sent { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(16)]
|
||||||
|
public long? Received { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(17)]
|
||||||
|
public long? IncomingPacketsDiscarded { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(18)]
|
||||||
|
public long? IncomingPacketsWithErrors { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(19)]
|
||||||
|
public long? IncomingUnknownProtocolPackets { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(20)]
|
||||||
|
public long? OutgoingPacketsDiscarded { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(21)]
|
||||||
|
public long? OutgoingPacketsWithErrors { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(22)]
|
||||||
|
public List<Unicast>? Addresses { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(23)]
|
||||||
|
public List<IPAddress2>? Gateways { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(24)]
|
||||||
|
public List<IPAddress2>? Dns { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(25)]
|
||||||
|
public List<IPAddress2>? Dhcp { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(26)]
|
||||||
|
public List<Route>? Routes { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable(GenerateType.Collection)]
|
||||||
|
public partial class InterfaceList : List<Interface>, IMessage { }
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Unicast : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public IPAddress2? IpAddress { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public IPAddress2? Ipv4Mask { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public long? AddressPreferredLifetime { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public long? AddressValidLifetime { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public long? DhcpLeaseLifetime { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public DuplicateAddressDetectionState? DuplicateAddressDetectionState { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public int? PrefixLength { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public PrefixOrigin? PrefixOrigin { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public SuffixOrigin? SuffixOrigin { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Route : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public uint? InterfaceIndex { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public IPAddress2? Destination { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public IPAddress2? Gateway { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Mask { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public int? Metric { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class IPAddress2 : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public AddressFamily? AddressFamily { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Address { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public bool? IsIPv6Teredo { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public bool? IsIPv6SiteLocal { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public bool? IsIPv6Multicast { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public bool? IsIPv6LinkLocal { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public bool? IsIPv4MappedToIPv6 { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public bool? IsIPv6UniqueLocal { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackConstructor]
|
||||||
|
public IPAddress2()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public IPAddress2(IPAddress address)
|
||||||
|
{
|
||||||
|
AddressFamily = address.AddressFamily;
|
||||||
|
Address = address.ToString();
|
||||||
|
IsIPv4MappedToIPv6 = address.IsIPv4MappedToIPv6;
|
||||||
|
IsIPv6LinkLocal = address.IsIPv6LinkLocal;
|
||||||
|
IsIPv6Multicast = address.IsIPv6Multicast;
|
||||||
|
IsIPv6SiteLocal = address.IsIPv6SiteLocal;
|
||||||
|
IsIPv6Teredo = address.IsIPv6Teredo;
|
||||||
|
IsIPv6UniqueLocal = address.IsIPv6UniqueLocal;
|
||||||
|
}
|
||||||
|
}
|
||||||
25
src/Core/Insight.Domain/Messages/Agent/Mainboard.cs
Normal file
25
src/Core/Insight.Domain/Messages/Agent/Mainboard.cs
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Mainboard : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? Manufacturer { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Model { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Serial { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? BiosManufacturer { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? BiosVersion { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public DateTime? BiosDate { get; set; }
|
||||||
|
}
|
||||||
62
src/Core/Insight.Domain/Messages/Agent/Memory.cs
Normal file
62
src/Core/Insight.Domain/Messages/Agent/Memory.cs
Normal file
|
|
@ -0,0 +1,62 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Memory : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public uint? Index { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Tag { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Location { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Manufacturer { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? Model { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public string? Serial { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public ulong? Capacity { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public uint? Speed { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public uint? Voltage { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(9)]
|
||||||
|
public uint? ConfiguredSpeed { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(10)]
|
||||||
|
public uint? ConfiguredVoltage { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable(GenerateType.Collection)]
|
||||||
|
public partial class MemoryList : List<Memory>, IMessage { }
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class MemoryMetric : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public DateTime? Timestamp { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public float? MemoryAvailable { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public float? MemoryAvailablePercentage { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public float? MemoryUsed { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public float? MemoryUsagePercentage { get; set; }
|
||||||
|
}
|
||||||
26
src/Core/Insight.Domain/Messages/Agent/OperationSystem.cs
Normal file
26
src/Core/Insight.Domain/Messages/Agent/OperationSystem.cs
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
using MemoryPack;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class OperationSystem : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Version { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? SerialNumber { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public Architecture? Architecture { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public bool? Virtual { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public DateTime? InstallDate { get; set; }
|
||||||
|
}
|
||||||
25
src/Core/Insight.Domain/Messages/Agent/Printer.cs
Normal file
25
src/Core/Insight.Domain/Messages/Agent/Printer.cs
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Printer : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Driver { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Port { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Location { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? Comment { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable(GenerateType.Collection)]
|
||||||
|
public partial class PrinterList : List<Printer>, IMessage { }
|
||||||
65
src/Core/Insight.Domain/Messages/Agent/Processor.cs
Normal file
65
src/Core/Insight.Domain/Messages/Agent/Processor.cs
Normal file
|
|
@ -0,0 +1,65 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Processor : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public uint? Index { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Manufacturer { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? SerialNumber { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? Socket { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public string? Version { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public string? DeviceId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public uint? Cores { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public uint? LogicalCores { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(9)]
|
||||||
|
public uint? CurrentSpeed { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(10)]
|
||||||
|
public uint? MaxSpeed { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(11)]
|
||||||
|
public uint? L1Size { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(12)]
|
||||||
|
public uint? L2Size { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(13)]
|
||||||
|
public uint? L3Size { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(14)]
|
||||||
|
public bool? Virtualization { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable(GenerateType.Collection)]
|
||||||
|
public partial class ProcessorList : List<Processor>, IMessage { }
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class ProcessorMetric : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public DateTime? Timestamp { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public float? ProcessorUsagePercentage { get; set; }
|
||||||
|
}
|
||||||
59
src/Core/Insight.Domain/Messages/Agent/Service.cs
Normal file
59
src/Core/Insight.Domain/Messages/Agent/Service.cs
Normal file
|
|
@ -0,0 +1,59 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Service : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public uint? ProcessId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Display { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Description { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? PathName { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public string? Account { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public bool? Delay { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public ServiceStatus? Status { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public ServiceMode? StartMode { get; set; }
|
||||||
|
|
||||||
|
public enum ServiceStatus
|
||||||
|
{
|
||||||
|
Unknown = -1,
|
||||||
|
Stopped = 1,
|
||||||
|
StartPending = 2,
|
||||||
|
StopPending = 3,
|
||||||
|
Running = 4,
|
||||||
|
ContinuePending = 5,
|
||||||
|
PausePending = 6,
|
||||||
|
Paused = 7
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum ServiceMode
|
||||||
|
{
|
||||||
|
Unknown = -1,
|
||||||
|
Boot = 0,
|
||||||
|
System = 1,
|
||||||
|
Automatic = 2,
|
||||||
|
Manual = 3,
|
||||||
|
Disabled = 4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable(GenerateType.Collection)]
|
||||||
|
public partial class ServiceList : List<Service>, IMessage { }
|
||||||
25
src/Core/Insight.Domain/Messages/Agent/Session.cs
Normal file
25
src/Core/Insight.Domain/Messages/Agent/Session.cs
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Session : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? Sid { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? User { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Type { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Status { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? Remote { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable(GenerateType.Collection)]
|
||||||
|
public partial class SessionList : List<Session>, IMessage { }
|
||||||
13
src/Core/Insight.Domain/Messages/Agent/Status.cs
Normal file
13
src/Core/Insight.Domain/Messages/Agent/Status.cs
Normal file
|
|
@ -0,0 +1,13 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Status : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public DateTime Timestamp { get; } = DateTime.Now;
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public TimeSpan Uptime { get; set; }
|
||||||
|
}
|
||||||
297
src/Core/Insight.Domain/Messages/Agent/StoragePool.cs
Normal file
297
src/Core/Insight.Domain/Messages/Agent/StoragePool.cs
Normal file
|
|
@ -0,0 +1,297 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class StoragePool : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? UniqueId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? FriendlyName { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public List<OperationalState>? States { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public HealthState? Health { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public RetireMissingPhysicalDisksEnum? RetireMissingPhysicalDisks { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public string? Resiliency { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public bool? IsPrimordial { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public bool? IsReadOnly { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(9)]
|
||||||
|
public bool? IsClustered { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(10)]
|
||||||
|
public ulong? Size { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(11)]
|
||||||
|
public ulong? AllocatedSize { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(12)]
|
||||||
|
public ulong? SectorSize { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(13)]
|
||||||
|
public List<PhysicalDisk>? PhysicalDisks { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(14)]
|
||||||
|
public List<VirtualDisk>? VirtualDisks { get; set; }
|
||||||
|
|
||||||
|
public enum OperationalState
|
||||||
|
{
|
||||||
|
Unknown = 0,
|
||||||
|
Other = 1,
|
||||||
|
OK = 2,
|
||||||
|
Degraded = 3,
|
||||||
|
Stressed = 4,
|
||||||
|
Predictive_Failure = 5,
|
||||||
|
Error = 6,
|
||||||
|
Non_Recoverable_Error = 7,
|
||||||
|
Starting = 8,
|
||||||
|
Stopping = 9,
|
||||||
|
Stopped = 10,
|
||||||
|
In_Service = 11,
|
||||||
|
No_Contact = 12,
|
||||||
|
Lost_Communication = 13,
|
||||||
|
Aborted = 14,
|
||||||
|
Dormant = 15,
|
||||||
|
Supporting_Entity_In_Error = 16,
|
||||||
|
Completed = 17,
|
||||||
|
Power_Mode = 18,
|
||||||
|
Relocating = 19
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum HealthState
|
||||||
|
{
|
||||||
|
Healthy = 0,
|
||||||
|
Warning = 1,
|
||||||
|
Unhealthy = 2,
|
||||||
|
Unknown = 3
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum RetireMissingPhysicalDisksEnum
|
||||||
|
{
|
||||||
|
Auto = 1,
|
||||||
|
Always = 2,
|
||||||
|
Never = 3
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable(GenerateType.Collection)]
|
||||||
|
public partial class StoragePoolList : List<StoragePool>, IMessage { }
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class PhysicalDisk : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? UniqueId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? DeviceId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? FriendlyName { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Manufacturer { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? Model { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public ushort? MediaType { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public ushort? BusType { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public List<OperationalState>? States { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public HealthState? Health { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(9)]
|
||||||
|
public List<SupportedUsagesEnum>? SupportedUsages { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(10)]
|
||||||
|
public ushort? Usage { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(11)]
|
||||||
|
public string? PhysicalLocation { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(12)]
|
||||||
|
public string? SerialNumber { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(13)]
|
||||||
|
public string? FirmwareVersion { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(14)]
|
||||||
|
public ulong? Size { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(15)]
|
||||||
|
public ulong? AllocatedSize { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(16)]
|
||||||
|
public ulong? LogicalSectorSize { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(17)]
|
||||||
|
public ulong? PhysicalSectorSize { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(18)]
|
||||||
|
public ulong? VirtualDiskFootprint { get; set; }
|
||||||
|
|
||||||
|
public enum OperationalState
|
||||||
|
{
|
||||||
|
Unknown = 0,
|
||||||
|
Other = 1,
|
||||||
|
OK = 2,
|
||||||
|
Degraded = 3,
|
||||||
|
Stressed = 4,
|
||||||
|
Predictive_Failure = 5,
|
||||||
|
Error = 6,
|
||||||
|
Non_Recoverable_Error = 7,
|
||||||
|
Starting = 8,
|
||||||
|
Stopping = 9,
|
||||||
|
Stopped = 10,
|
||||||
|
In_Service = 11,
|
||||||
|
No_Contact = 12,
|
||||||
|
Lost_Communication = 13,
|
||||||
|
Aborted = 14,
|
||||||
|
Dormant = 15,
|
||||||
|
Supporting_Entity_In_Error = 16,
|
||||||
|
Completed = 17,
|
||||||
|
Power_Mode = 18,
|
||||||
|
Relocating = 19
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum HealthState
|
||||||
|
{
|
||||||
|
Healthy = 0,
|
||||||
|
Warning = 1,
|
||||||
|
Unhealthy = 2,
|
||||||
|
Unknown = 3
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum SupportedUsagesEnum
|
||||||
|
{
|
||||||
|
Unknown = 0,
|
||||||
|
Auto_Select = 1,
|
||||||
|
Manual_Select = 2,
|
||||||
|
Hot_Spare = 3,
|
||||||
|
Retired = 4,
|
||||||
|
Journal = 5
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class VirtualDisk : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? UniqueId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? FriendlyName { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public List<OperationalState>? States { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public HealthState? Health { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public AccessTypeEnum? AccessType { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public ProvisioningTypeEnum? ProvisioningType { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public ushort? PhysicalDiskRedundancy { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public string? ResiliencySettingName { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(9)]
|
||||||
|
public bool? Deduplication { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(10)]
|
||||||
|
public bool? IsSnapshot { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(11)]
|
||||||
|
public ulong? Size { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(12)]
|
||||||
|
public ulong? AllocatedSize { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(13)]
|
||||||
|
public ulong? FootprintOnPool { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(14)]
|
||||||
|
public ulong? ReadCacheSize { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(15)]
|
||||||
|
public ulong? WriteCacheSize { get; set; }
|
||||||
|
|
||||||
|
public enum OperationalState
|
||||||
|
{
|
||||||
|
Unknown = 0,
|
||||||
|
Other = 1,
|
||||||
|
OK = 2,
|
||||||
|
Degraded = 3,
|
||||||
|
Stressed = 4,
|
||||||
|
Predictive_Failure = 5,
|
||||||
|
Error = 6,
|
||||||
|
Non_Recoverable_Error = 7,
|
||||||
|
Starting = 8,
|
||||||
|
Stopping = 9,
|
||||||
|
Stopped = 10,
|
||||||
|
In_Service = 11,
|
||||||
|
No_Contact = 12,
|
||||||
|
Lost_Communication = 13,
|
||||||
|
Aborted = 14,
|
||||||
|
Dormant = 15,
|
||||||
|
Supporting_Entity_In_Error = 16,
|
||||||
|
Completed = 17,
|
||||||
|
Power_Mode = 18,
|
||||||
|
Relocating = 19
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum HealthState
|
||||||
|
{
|
||||||
|
Healthy = 0,
|
||||||
|
Warning = 1,
|
||||||
|
Unhealthy = 2,
|
||||||
|
Unknown = 3
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum AccessTypeEnum
|
||||||
|
{
|
||||||
|
Unknown = 0,
|
||||||
|
Readable = 1,
|
||||||
|
Writeable = 2,
|
||||||
|
Read_Write = 3,
|
||||||
|
Write_Once = 4
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum ProvisioningTypeEnum
|
||||||
|
{
|
||||||
|
Unknown = 0,
|
||||||
|
Thin = 1,
|
||||||
|
Fixed = 2
|
||||||
|
}
|
||||||
|
}
|
||||||
19
src/Core/Insight.Domain/Messages/Agent/SystemInfo.cs
Normal file
19
src/Core/Insight.Domain/Messages/Agent/SystemInfo.cs
Normal file
|
|
@ -0,0 +1,19 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class SystemInfo : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public DateTime? LastBootUpTime { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public DateTime? LocalDateTime { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public uint? Processes { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? License { get; set; }
|
||||||
|
}
|
||||||
25
src/Core/Insight.Domain/Messages/Agent/Trap.cs
Normal file
25
src/Core/Insight.Domain/Messages/Agent/Trap.cs
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Trap : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public DateTime? Timestamp { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Endpoint { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Hostname { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Version { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? Community { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public List<KeyValuePair<string, string?>>? Data { get; set; }
|
||||||
|
}
|
||||||
78
src/Core/Insight.Domain/Messages/Agent/Update.cs
Normal file
78
src/Core/Insight.Domain/Messages/Agent/Update.cs
Normal file
|
|
@ -0,0 +1,78 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Update : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? Id { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public DateTime? Date { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Description { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? SupportUrl { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public string? Hotfix { get; set; }
|
||||||
|
|
||||||
|
// if installed
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public OsUpdateResultCodeEnum? Result { get; set; }
|
||||||
|
|
||||||
|
// if pending
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public OsUpdateTypeEnum? Type { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public decimal? Size { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(9)]
|
||||||
|
public bool? IsDownloaded { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(10)]
|
||||||
|
public bool? CanRequestUserInput { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(11)]
|
||||||
|
public OsUpdateRebootBehaviorEnum? RebootBehavior { get; set; }
|
||||||
|
|
||||||
|
public enum OsUpdateRebootBehaviorEnum
|
||||||
|
{
|
||||||
|
NeverReboots = 1,
|
||||||
|
AlwaysRequiresReboot = 2,
|
||||||
|
CanRequestReboot = 3
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum OsUpdateResultCodeEnum
|
||||||
|
{
|
||||||
|
NotStarted = 1,
|
||||||
|
InProgress = 2,
|
||||||
|
Succeeded = 3,
|
||||||
|
SucceededWithErrors = 4,
|
||||||
|
Failed = 5,
|
||||||
|
Aborted = 6
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum OsUpdateTypeEnum
|
||||||
|
{
|
||||||
|
Software = 1,
|
||||||
|
Driver = 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class UpdateList : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public List<Update>? Installed { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public List<Update>? Pending { get; set; }
|
||||||
|
}
|
||||||
68
src/Core/Insight.Domain/Messages/Agent/User.cs
Normal file
68
src/Core/Insight.Domain/Messages/Agent/User.cs
Normal file
|
|
@ -0,0 +1,68 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class User : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? Sid { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Domain { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? FullName { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? Description { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public string? Status { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public bool? LocalAccount { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public bool? Disabled { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public bool? Lockout { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(9)]
|
||||||
|
public bool? PasswordChangeable { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(10)]
|
||||||
|
public bool? PasswordExpires { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(11)]
|
||||||
|
public bool? PasswordRequired { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(12)]
|
||||||
|
public List<Group>? Groups { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable(GenerateType.Collection)]
|
||||||
|
public partial class UserList : List<User>, IMessage { }
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Group : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? Sid { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Domain { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Description { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public bool? LocalAccount { get; set; }
|
||||||
|
}
|
||||||
25
src/Core/Insight.Domain/Messages/Agent/Videocard.cs
Normal file
25
src/Core/Insight.Domain/Messages/Agent/Videocard.cs
Normal file
|
|
@ -0,0 +1,25 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Videocard : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? DeviceId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? Model { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public ulong Memory { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public DateTime DriverDate { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? DriverVersion { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable(GenerateType.Collection)]
|
||||||
|
public partial class VideocardList : List<Videocard>, IMessage { }
|
||||||
260
src/Core/Insight.Domain/Messages/Agent/VirtualMaschine.cs
Normal file
260
src/Core/Insight.Domain/Messages/Agent/VirtualMaschine.cs
Normal file
|
|
@ -0,0 +1,260 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Agent;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class VirtualMaschine : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public Guid? Id { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public uint? ProcessId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Caption { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? Notes { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public EnabledEnum? Enabled { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public EnabledDefaultEnum? EnabledDefault { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public HealthStatusEnum? HealthState { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public string? Status { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(9)]
|
||||||
|
public ulong? OnTime { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(10)]
|
||||||
|
public uint? ReplicationMode { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(11)]
|
||||||
|
public ReplicationStateEnum? ReplicationState { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(12)]
|
||||||
|
public ReplicationHealthEnum? ReplicationHealth { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(13)]
|
||||||
|
public string? ConfigurationVersion { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(14)]
|
||||||
|
public IntegrationServicesVersionStateEnum? IntegrationServicesVersionState { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(15)]
|
||||||
|
public uint? NumberOfProcessors { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(16)]
|
||||||
|
public uint? ProcessorLoad { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(17)]
|
||||||
|
public int? MemoryAvailable { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(18)]
|
||||||
|
public ulong? MemoryUsage { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(19)]
|
||||||
|
public DateTime? InstallDate { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(20)]
|
||||||
|
public DateTime? TimeOfLastConfigurationChange { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(21)]
|
||||||
|
public DateTime? TimeOfLastStateChange { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(22)]
|
||||||
|
public DateTime? LastReplicationTime { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(23)]
|
||||||
|
public string? GuestOperatingSystem { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(24)]
|
||||||
|
public List<VirtualMaschineConfiguration>? Configurations { get; set; }
|
||||||
|
|
||||||
|
public enum EnabledEnum
|
||||||
|
{
|
||||||
|
Unbekannt = 0,
|
||||||
|
Andere = 1,
|
||||||
|
Aktiviert = 2,
|
||||||
|
Deaktiviert = 3,
|
||||||
|
Herunterfahren = 4,
|
||||||
|
Nicht_Verfügbar = 5,
|
||||||
|
Aktiviert_Offline = 6,
|
||||||
|
In_Test = 7,
|
||||||
|
Latent = 8,
|
||||||
|
Eingeschränkt = 9,
|
||||||
|
Wird_gestartet = 10
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum EnabledDefaultEnum
|
||||||
|
{
|
||||||
|
Aktiviert = 2,
|
||||||
|
Deaktiviert = 3,
|
||||||
|
Aktiviert_Offline = 6
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum HealthStatusEnum
|
||||||
|
{
|
||||||
|
OK = 5,
|
||||||
|
Hauptfehler = 20,
|
||||||
|
Kritischer_Fehler = 25
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum ReplicationStateEnum
|
||||||
|
{
|
||||||
|
Deaktiviert = 0,
|
||||||
|
Bereit = 1,
|
||||||
|
Warten_auf_Erstreplikation = 2,
|
||||||
|
Replikat = 3,
|
||||||
|
Synchronisierte_Replication_abgeschlossen = 4,
|
||||||
|
Wiederhergestellt = 5,
|
||||||
|
Commit = 6,
|
||||||
|
Angehalten = 7,
|
||||||
|
Kritisch = 8,
|
||||||
|
Warten_auf_die_Neusynchronisierung = 9,
|
||||||
|
Resynchronisierung = 10,
|
||||||
|
Resynchronisierung_angehalten = 11,
|
||||||
|
Failover_in_Bearbeitung = 12,
|
||||||
|
Failback_in_Fortschritt = 13,
|
||||||
|
Failback_abgeschlossen = 14,
|
||||||
|
Datenträgerupdate_in_Bearbeitung = 15,
|
||||||
|
Datenträgeraktualisierung_kritisch = 16,
|
||||||
|
Unbekannt = 17,
|
||||||
|
Repurpose_Replikation_in_Bearbeitung = 18,
|
||||||
|
Vorbereitet_für_die_Synchronisierungsreplikation = 19,
|
||||||
|
Vorbereitet_für_die_Umgekehrte_Replikation_der_Gruppe = 20,
|
||||||
|
Failover_in_Fortschritt = 21
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum ReplicationHealthEnum
|
||||||
|
{
|
||||||
|
OK = 1,
|
||||||
|
Warnung = 2,
|
||||||
|
Kritisch = 3
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum IntegrationServicesVersionStateEnum
|
||||||
|
{
|
||||||
|
Unknown = 0,
|
||||||
|
UpToDate = 1,
|
||||||
|
Mismatch = 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable(GenerateType.Collection)]
|
||||||
|
public partial class VirtualMaschineList : List<VirtualMaschine>, IMessage { }
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class VirtualMaschineConfiguration : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? Id { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? ParentId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Type { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Name { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public DateTime? CreationTime { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(5)]
|
||||||
|
public string? Generation { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(6)]
|
||||||
|
public string? Architecture { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public AutomaticStartupActionEnum? AutomaticStartupAction { get; set; }
|
||||||
|
//public DateTime? AutomaticStartupActionDelay { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(8)]
|
||||||
|
public AutomaticShutdownActionEnum? AutomaticShutdownAction { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(9)]
|
||||||
|
public AutomaticRecoveryActionEnum? AutomaticRecoveryAction { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(10)]
|
||||||
|
public bool? AutomaticSnapshotsEnabled { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(11)]
|
||||||
|
public string? BaseBoardSerialNumber { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(12)]
|
||||||
|
public string? BIOSGUID { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(13)]
|
||||||
|
public string? BIOSSerialNumber { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(14)]
|
||||||
|
public ushort[]? BootOrder { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(15)]
|
||||||
|
public string? ConfigurationDataRoot { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(16)]
|
||||||
|
public string? ConfigurationFile { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(17)]
|
||||||
|
public string? GuestStateDataRoot { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(18)]
|
||||||
|
public string? GuestStateFile { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(19)]
|
||||||
|
public string? SnapshotDataRoot { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(20)]
|
||||||
|
public string? SuspendDataRoot { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(21)]
|
||||||
|
public string? SwapFileDataRoot { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(22)]
|
||||||
|
public bool? SecureBootEnabled { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(23)]
|
||||||
|
public bool? IsAutomaticSnapshot { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(24)]
|
||||||
|
public string[]? Notes { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(25)]
|
||||||
|
public List<VirtualMaschineConfiguration>? Childs { get; set; }
|
||||||
|
|
||||||
|
//public string[]? HostResource { get; set; }
|
||||||
|
|
||||||
|
public enum AutomaticStartupActionEnum
|
||||||
|
{
|
||||||
|
Nothing = 2,
|
||||||
|
RestartIfLastStateActive = 3,
|
||||||
|
Alway = 4
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum AutomaticShutdownActionEnum
|
||||||
|
{
|
||||||
|
Ausschalten = 2,
|
||||||
|
Speichern = 3,
|
||||||
|
Herunterfahren = 4
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum AutomaticRecoveryActionEnum
|
||||||
|
{
|
||||||
|
Keine = 2,
|
||||||
|
Neustart = 3,
|
||||||
|
Rollback = 4
|
||||||
|
}
|
||||||
|
}
|
||||||
46
src/Core/Insight.Domain/Messages/IMessage.cs
Normal file
46
src/Core/Insight.Domain/Messages/IMessage.cs
Normal file
|
|
@ -0,0 +1,46 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
[MemoryPackUnion(0, typeof(Keepalive))]
|
||||||
|
[MemoryPackUnion(1, typeof(Agent.Authentication))]
|
||||||
|
[MemoryPackUnion(2, typeof(Agent.AuthenticationRequest))]
|
||||||
|
[MemoryPackUnion(10, typeof(Agent.InventoryRequest))]
|
||||||
|
[MemoryPackUnion(20, typeof(Agent.ConsoleQuery))]
|
||||||
|
[MemoryPackUnion(21, typeof(Agent.ConsoleQueryRequest))]
|
||||||
|
[MemoryPackUnion(100, typeof(Agent.Application))]
|
||||||
|
[MemoryPackUnion(101, typeof(Agent.ApplicationList))]
|
||||||
|
[MemoryPackUnion(102, typeof(Agent.Drive))]
|
||||||
|
[MemoryPackUnion(103, typeof(Agent.DriveList))]
|
||||||
|
[MemoryPackUnion(104, typeof(Agent.Event))]
|
||||||
|
[MemoryPackUnion(105, typeof(Agent.Interface))]
|
||||||
|
[MemoryPackUnion(106, typeof(Agent.InterfaceList))]
|
||||||
|
[MemoryPackUnion(107, typeof(Agent.Mainboard))]
|
||||||
|
[MemoryPackUnion(108, typeof(Agent.Memory))]
|
||||||
|
[MemoryPackUnion(109, typeof(Agent.MemoryList))]
|
||||||
|
[MemoryPackUnion(110, typeof(Agent.OperationSystem))]
|
||||||
|
[MemoryPackUnion(111, typeof(Agent.Printer))]
|
||||||
|
[MemoryPackUnion(112, typeof(Agent.PrinterList))]
|
||||||
|
[MemoryPackUnion(113, typeof(Agent.Processor))]
|
||||||
|
[MemoryPackUnion(114, typeof(Agent.ProcessorList))]
|
||||||
|
[MemoryPackUnion(115, typeof(Agent.Service))]
|
||||||
|
[MemoryPackUnion(116, typeof(Agent.ServiceList))]
|
||||||
|
[MemoryPackUnion(117, typeof(Agent.Session))]
|
||||||
|
[MemoryPackUnion(118, typeof(Agent.SessionList))]
|
||||||
|
[MemoryPackUnion(119, typeof(Agent.Status))]
|
||||||
|
[MemoryPackUnion(120, typeof(Agent.StoragePool))]
|
||||||
|
[MemoryPackUnion(121, typeof(Agent.StoragePoolList))]
|
||||||
|
[MemoryPackUnion(122, typeof(Agent.SystemInfo))]
|
||||||
|
[MemoryPackUnion(123, typeof(Agent.Trap))]
|
||||||
|
[MemoryPackUnion(124, typeof(Agent.Update))]
|
||||||
|
[MemoryPackUnion(125, typeof(Agent.UpdateList))]
|
||||||
|
[MemoryPackUnion(126, typeof(Agent.User))]
|
||||||
|
[MemoryPackUnion(127, typeof(Agent.UserList))]
|
||||||
|
[MemoryPackUnion(128, typeof(Agent.Videocard))]
|
||||||
|
[MemoryPackUnion(129, typeof(Agent.VideocardList))]
|
||||||
|
[MemoryPackUnion(130, typeof(Agent.VirtualMaschine))]
|
||||||
|
[MemoryPackUnion(131, typeof(Agent.VirtualMaschineList))]
|
||||||
|
[MemoryPackUnion(400, typeof(Web.ConsoleQueryProxy))]
|
||||||
|
[MemoryPackUnion(401, typeof(Web.ConsoleQueryProxyRequest))]
|
||||||
|
public partial interface IMessage { }
|
||||||
6
src/Core/Insight.Domain/Messages/Keepalive.cs
Normal file
6
src/Core/Insight.Domain/Messages/Keepalive.cs
Normal file
|
|
@ -0,0 +1,6 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class Keepalive : IMessage { }
|
||||||
38
src/Core/Insight.Domain/Messages/Web/ConsoleProxy.cs
Normal file
38
src/Core/Insight.Domain/Messages/Web/ConsoleProxy.cs
Normal file
|
|
@ -0,0 +1,38 @@
|
||||||
|
using MemoryPack;
|
||||||
|
|
||||||
|
namespace Insight.Domain.Messages.Web;
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class ConsoleQueryProxy : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? Id { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? HostId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Query { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(3)]
|
||||||
|
public string? Data { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(4)]
|
||||||
|
public string? Errors { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(7)]
|
||||||
|
public bool HadErrors { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[MemoryPackable]
|
||||||
|
public partial class ConsoleQueryProxyRequest : IMessage
|
||||||
|
{
|
||||||
|
[MemoryPackOrder(0)]
|
||||||
|
public string? Id { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(1)]
|
||||||
|
public string? HostId { get; set; }
|
||||||
|
|
||||||
|
[MemoryPackOrder(2)]
|
||||||
|
public string? Query { get; set; }
|
||||||
|
}
|
||||||
|
|
@ -1,15 +1,15 @@
|
||||||
using System.ComponentModel.DataAnnotations;
|
using System.ComponentModel.DataAnnotations;
|
||||||
using System.Text.Json.Serialization;
|
using System.Text.Json.Serialization;
|
||||||
|
|
||||||
namespace Insight.Domain.Models
|
namespace Insight.Domain.Models;
|
||||||
{
|
|
||||||
public class TokenRequest
|
public class TokenRequest
|
||||||
{
|
{
|
||||||
[JsonPropertyName("username"), EmailAddress, Required]
|
[JsonPropertyName("username"), EmailAddress, Required]
|
||||||
public string Username { get; set; }
|
public string? Username { get; set; }
|
||||||
|
|
||||||
[JsonPropertyName("password"), DataType(DataType.Password), Required]
|
[JsonPropertyName("password"), DataType(DataType.Password), Required]
|
||||||
public string Password { get; set; }
|
public string? Password { get; set; }
|
||||||
|
|
||||||
[JsonPropertyName("code"), DataType(DataType.Text)]
|
[JsonPropertyName("code"), DataType(DataType.Text)]
|
||||||
public string? Code { get; set; }
|
public string? Code { get; set; }
|
||||||
|
|
@ -18,19 +18,19 @@ namespace Insight.Domain.Models
|
||||||
public class TokenResponse
|
public class TokenResponse
|
||||||
{
|
{
|
||||||
[JsonPropertyName("access_token")]
|
[JsonPropertyName("access_token")]
|
||||||
public string AccessToken { get; set; }
|
public string? AccessToken { get; set; }
|
||||||
|
|
||||||
[JsonPropertyName("expires_in")]
|
[JsonPropertyName("expires_in")]
|
||||||
public int ExpireInSeconds { get; set; }
|
public int ExpireInSeconds { get; set; }
|
||||||
|
|
||||||
[JsonPropertyName("refresh_token")]
|
[JsonPropertyName("refresh_token")]
|
||||||
public string RefreshToken { get; set; }
|
public string? RefreshToken { get; set; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public class TokenRevokeRequest
|
public class TokenRevokeRequest
|
||||||
{
|
{
|
||||||
[JsonPropertyName("token"), Required]
|
[JsonPropertyName("token"), Required]
|
||||||
public string Token { get; set; }
|
public string? Token { get; set; }
|
||||||
|
|
||||||
[JsonPropertyName("reason")]
|
[JsonPropertyName("reason")]
|
||||||
public string? Reason { get; set; }
|
public string? Reason { get; set; }
|
||||||
|
|
@ -45,11 +45,10 @@ namespace Insight.Domain.Models
|
||||||
public class TokenRefreshRequest
|
public class TokenRefreshRequest
|
||||||
{
|
{
|
||||||
[JsonPropertyName("token"), Required]
|
[JsonPropertyName("token"), Required]
|
||||||
public string Token { get; set; }
|
public string? Token { get; set; }
|
||||||
|
|
||||||
public TokenRefreshRequest(string token)
|
public TokenRefreshRequest(string token)
|
||||||
{
|
{
|
||||||
Token = token;
|
Token = token;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,8 +1,7 @@
|
||||||
namespace Insight.Domain.Models
|
namespace Insight.Domain.Models;
|
||||||
{
|
|
||||||
public class UpdateResponse
|
public class UpdateResponse
|
||||||
{
|
{
|
||||||
public Version? Version { get; set; }
|
public Version? Version { get; set; }
|
||||||
public Uri? Uri { get; set; }
|
public Uri? Uri { get; set; }
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
<RootNamespace>Insight.Infrastructure</RootNamespace>
|
<RootNamespace>Insight.Infrastructure</RootNamespace>
|
||||||
<Product>Insight</Product>
|
<Product>Insight</Product>
|
||||||
<AssemblyVersion>2023.7.12.0</AssemblyVersion>
|
<AssemblyVersion>2023.9.21.1</AssemblyVersion>
|
||||||
<ImplicitUsings>true</ImplicitUsings>
|
<ImplicitUsings>true</ImplicitUsings>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
<TargetFramework>net7.0</TargetFramework>
|
<TargetFramework>net7.0</TargetFramework>
|
||||||
<Product>Insight</Product>
|
<Product>Insight</Product>
|
||||||
<AssemblyName>server</AssemblyName>
|
<AssemblyName>server</AssemblyName>
|
||||||
<AssemblyVersion>2023.9.14.0</AssemblyVersion>
|
<AssemblyVersion>2023.9.21.1</AssemblyVersion>
|
||||||
<RootNamespace>Insight.Server</RootNamespace>
|
<RootNamespace>Insight.Server</RootNamespace>
|
||||||
<ImplicitUsings>enable</ImplicitUsings>
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
<Nullable>enable</Nullable>
|
<Nullable>enable</Nullable>
|
||||||
|
|
@ -53,9 +53,7 @@
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\..\Agent\Insight.Agent.Assets\Insight.Agent.Assets.csproj" />
|
|
||||||
<ProjectReference Include="..\..\Core\Insight.Infrastructure\Insight.Infrastructure.csproj" />
|
<ProjectReference Include="..\..\Core\Insight.Infrastructure\Insight.Infrastructure.csproj" />
|
||||||
<ProjectReference Include="..\..\Web\Insight.Web.Assets\Insight.Web.Assets.csproj" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
using Insight.Agent.Enums;
|
using Insight.Domain.Enums;
|
||||||
|
|
||||||
|
namespace Insight.Server.Models;
|
||||||
|
|
||||||
namespace Insight.Server.Models
|
|
||||||
{
|
|
||||||
internal class MonitorMessage
|
internal class MonitorMessage
|
||||||
{
|
{
|
||||||
public DateTime? Timestamp { get; set; }
|
public DateTime? Timestamp { get; set; }
|
||||||
|
|
@ -24,4 +24,3 @@ namespace Insight.Server.Models
|
||||||
FreeNas = 5
|
FreeNas = 5
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
|
||||||
|
|
@ -1,19 +1,20 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using Insight.Server.Network.Handlers.Agent;
|
using Insight.Server.Network.Handlers.Agent;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using Vaitr.Network;
|
using Vaitr.Network;
|
||||||
|
|
||||||
namespace Insight.Server.Network
|
namespace Insight.Server.Network;
|
||||||
{
|
|
||||||
public class AgentSession : TcpSession<IAgentMessage>
|
public class AgentSession : TcpSession<IMessage>
|
||||||
{
|
{
|
||||||
public string? Id { get; set; }
|
public string? Id { get; set; }
|
||||||
|
|
||||||
private readonly AgentHandler _agentHandler;
|
private readonly AgentHandler _agentHandler;
|
||||||
private readonly IEnumerable<IAgentMessageHandler<AgentSession>> _handlers;
|
private readonly IEnumerable<IMessageHandler<AgentSession>> _handlers;
|
||||||
|
|
||||||
public AgentSession(AgentHandler agentHandler, IEnumerable<IAgentMessageHandler<AgentSession>> handlers, ISerializer<IAgentMessage> serializer, ILogger<AgentSession> logger) : base(serializer, logger)
|
public AgentSession(AgentHandler agentHandler, IEnumerable<IMessageHandler<AgentSession>> handlers, ISerializer<IMessage> serializer, ILogger<AgentSession> logger) : base(serializer, logger)
|
||||||
{
|
{
|
||||||
_agentHandler = agentHandler;
|
_agentHandler = agentHandler;
|
||||||
_handlers = handlers;
|
_handlers = handlers;
|
||||||
|
|
@ -44,14 +45,14 @@ namespace Insight.Server.Network
|
||||||
await _agentHandler.DisconnectedAsync(this, default);
|
await _agentHandler.DisconnectedAsync(this, default);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override async ValueTask OnSentAsync(IPacketContext<IAgentMessage> context, CancellationToken cancellationToken)
|
protected override async ValueTask OnSentAsync(IPacketContext<IMessage> context, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
await base.OnSentAsync(context, cancellationToken);
|
await base.OnSentAsync(context, cancellationToken);
|
||||||
|
|
||||||
await _agentHandler.StatisticUpdateAsync(this, cancellationToken);
|
await _agentHandler.StatisticUpdateAsync(this, cancellationToken);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected override async ValueTask OnReceivedAsync(IPacketContext<IAgentMessage> context, CancellationToken cancellationToken)
|
protected override async ValueTask OnReceivedAsync(IPacketContext<IMessage> context, CancellationToken cancellationToken)
|
||||||
{
|
{
|
||||||
await base.OnReceivedAsync(context, cancellationToken);
|
await base.OnReceivedAsync(context, cancellationToken);
|
||||||
|
|
||||||
|
|
@ -86,4 +87,3 @@ namespace Insight.Server.Network
|
||||||
await _agentHandler.StatisticUpdateAsync(this, cancellationToken);
|
await _agentHandler.StatisticUpdateAsync(this, cancellationToken);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,14 +1,15 @@
|
||||||
using Insight.Agent.Enums;
|
using Insight.Domain.Enums;
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using Insight.Infrastructure;
|
using Insight.Infrastructure;
|
||||||
using Insight.Infrastructure.Entities;
|
using Insight.Infrastructure.Entities;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using MongoDB.Driver;
|
using MongoDB.Driver;
|
||||||
|
|
||||||
namespace Insight.Server.Network.Handlers.Agent
|
namespace Insight.Server.Network.Handlers.Agent;
|
||||||
{
|
|
||||||
public class AgentHandler : IAgentMessageHandler<AgentSession>
|
public class AgentHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
private readonly IMongoDatabase _database;
|
private readonly IMongoDatabase _database;
|
||||||
private readonly ILogger<AgentHandler> _logger;
|
private readonly ILogger<AgentHandler> _logger;
|
||||||
|
|
@ -19,7 +20,7 @@ namespace Insight.Server.Network.Handlers.Agent
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is AuthenticationRequest authenticationRequest)
|
if (message is AuthenticationRequest authenticationRequest)
|
||||||
{
|
{
|
||||||
|
|
@ -159,4 +160,3 @@ namespace Insight.Server.Network.Handlers.Agent
|
||||||
.ConfigureAwait(false);
|
.ConfigureAwait(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,20 +1,21 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
using Insight.Web.Messages;
|
using Insight.Domain.Messages.Agent;
|
||||||
|
using Insight.Domain.Messages.Web;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using MongoDB.Driver;
|
using MongoDB.Driver;
|
||||||
using Vaitr.Network;
|
using Vaitr.Network;
|
||||||
|
|
||||||
namespace Insight.Server.Network.Handlers.Agent
|
namespace Insight.Server.Network.Handlers.Agent;
|
||||||
|
|
||||||
|
public class ConsoleHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
public class ConsoleHandler : IAgentMessageHandler<AgentSession>
|
private readonly ISessionPool<WebSession, IMessage> _webPool;
|
||||||
{
|
|
||||||
private readonly ISessionPool<WebSession, IWebMessage> _webPool;
|
|
||||||
private readonly IMongoDatabase _database;
|
private readonly IMongoDatabase _database;
|
||||||
private readonly ILogger<ConsoleHandler> _logger;
|
private readonly ILogger<ConsoleHandler> _logger;
|
||||||
|
|
||||||
public ConsoleHandler(
|
public ConsoleHandler(
|
||||||
ISessionPool<WebSession, IWebMessage> webPool,
|
ISessionPool<WebSession, IMessage> webPool,
|
||||||
IMongoDatabase database,
|
IMongoDatabase database,
|
||||||
ILogger<ConsoleHandler> logger)
|
ILogger<ConsoleHandler> logger)
|
||||||
{
|
{
|
||||||
|
|
@ -23,7 +24,7 @@ namespace Insight.Server.Network.Handlers.Agent
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is ConsoleQuery consoleQuery)
|
if (message is ConsoleQuery consoleQuery)
|
||||||
{
|
{
|
||||||
|
|
@ -47,4 +48,3 @@ namespace Insight.Server.Network.Handlers.Agent
|
||||||
}, cancellationToken);
|
}, cancellationToken);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,13 +1,14 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using Insight.Infrastructure;
|
using Insight.Infrastructure;
|
||||||
using Insight.Infrastructure.Entities;
|
using Insight.Infrastructure.Entities;
|
||||||
using MongoDB.Bson;
|
using MongoDB.Bson;
|
||||||
using MongoDB.Driver;
|
using MongoDB.Driver;
|
||||||
|
|
||||||
namespace Insight.Server.Network.Handlers.Agent
|
namespace Insight.Server.Network.Handlers.Agent;
|
||||||
{
|
|
||||||
public class DriveHandler : IAgentMessageHandler<AgentSession>
|
public class DriveHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
private readonly IMongoDatabase _database;
|
private readonly IMongoDatabase _database;
|
||||||
|
|
||||||
|
|
@ -16,7 +17,7 @@ namespace Insight.Server.Network.Handlers.Agent
|
||||||
_database = database;
|
_database = database;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is DriveList drives)
|
if (message is DriveList drives)
|
||||||
{
|
{
|
||||||
|
|
@ -142,4 +143,3 @@ namespace Insight.Server.Network.Handlers.Agent
|
||||||
var volumeResult = await _database.HostVolume().BulkWriteAsync(volumeBulk, cancellationToken: cancellationToken);
|
var volumeResult = await _database.HostVolume().BulkWriteAsync(volumeBulk, cancellationToken: cancellationToken);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,15 +1,16 @@
|
||||||
using Insight.Agent.Enums;
|
using Insight.Domain.Enums;
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using Insight.Infrastructure;
|
using Insight.Infrastructure;
|
||||||
using Insight.Infrastructure.Entities;
|
using Insight.Infrastructure.Entities;
|
||||||
using Microsoft.Extensions.Logging;
|
using Microsoft.Extensions.Logging;
|
||||||
using MongoDB.Driver;
|
using MongoDB.Driver;
|
||||||
using static Insight.Agent.Messages.Event;
|
using static Insight.Domain.Messages.Agent.Event;
|
||||||
|
|
||||||
namespace Insight.Server.Network.Handlers.Agent
|
namespace Insight.Server.Network.Handlers.Agent;
|
||||||
{
|
|
||||||
public class EventHandler : IAgentMessageHandler<AgentSession>
|
public class EventHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
private readonly IMongoDatabase _database;
|
private readonly IMongoDatabase _database;
|
||||||
private readonly ILogger<EventHandler> _logger;
|
private readonly ILogger<EventHandler> _logger;
|
||||||
|
|
@ -20,7 +21,7 @@ namespace Insight.Server.Network.Handlers.Agent
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is Event @event)
|
if (message is Event @event)
|
||||||
{
|
{
|
||||||
|
|
@ -263,4 +264,3 @@ namespace Insight.Server.Network.Handlers.Agent
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
@ -1,13 +1,14 @@
|
||||||
using Insight.Agent.Interfaces;
|
using Insight.Domain.Interfaces;
|
||||||
using Insight.Agent.Messages;
|
using Insight.Domain.Messages;
|
||||||
|
using Insight.Domain.Messages.Agent;
|
||||||
using Insight.Infrastructure;
|
using Insight.Infrastructure;
|
||||||
using Insight.Infrastructure.Entities;
|
using Insight.Infrastructure.Entities;
|
||||||
using MongoDB.Bson;
|
using MongoDB.Bson;
|
||||||
using MongoDB.Driver;
|
using MongoDB.Driver;
|
||||||
|
|
||||||
namespace Insight.Server.Network.Handlers.Agent
|
namespace Insight.Server.Network.Handlers.Agent;
|
||||||
{
|
|
||||||
public class InterfaceHandler : IAgentMessageHandler<AgentSession>
|
public class InterfaceHandler : IMessageHandler<AgentSession>
|
||||||
{
|
{
|
||||||
private readonly IMongoDatabase _database;
|
private readonly IMongoDatabase _database;
|
||||||
|
|
||||||
|
|
@ -16,7 +17,7 @@ namespace Insight.Server.Network.Handlers.Agent
|
||||||
_database = database;
|
_database = database;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IAgentMessage
|
public async ValueTask HandleAsync<TMessage>(AgentSession sender, TMessage message, CancellationToken cancellationToken) where TMessage : IMessage
|
||||||
{
|
{
|
||||||
if (message is InterfaceList interfaces)
|
if (message is InterfaceList interfaces)
|
||||||
{
|
{
|
||||||
|
|
@ -296,4 +297,3 @@ namespace Insight.Server.Network.Handlers.Agent
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue