implement client server connection tracking persistence

This commit is contained in:
RaidMax
2021-08-31 18:21:40 -05:00
parent eff8a29a39
commit c5f9a68102
37 changed files with 4961 additions and 22 deletions

View File

@ -1,13 +1,11 @@
using SharedLibraryCore.Interfaces;
using System;
using System.Collections.Generic;
using System.Text;
namespace SharedLibraryCore.Dtos.Meta.Responses
{
public class BaseMetaResponse : IClientMeta, IClientMetaResponse
{
public int MetaId { get; set; }
public long MetaId { get; set; }
public int ClientId { get; set; }
public MetaType Type { get; set; }
public DateTime When { get; set; }

View File

@ -0,0 +1,10 @@
using Data.Models;
namespace SharedLibraryCore.Dtos.Meta.Responses
{
public class ConnectionHistoryResponse : BaseMetaResponse
{
public string ServerName { get; set; }
public Reference.ConnectionType ConnectionType { get; set; }
}
}

View File

@ -26,6 +26,7 @@ namespace SharedLibraryCore.Interfaces
ChatMessage,
Penalized,
ReceivedPenalty,
QuickMessage
QuickMessage,
ConnectionHistory
}
}

View File

@ -7,6 +7,6 @@ namespace SharedLibraryCore.Interfaces
public interface IClientMetaResponse
{
int ClientId { get;}
int MetaId { get; }
long MetaId { get; }
}
}

View File

@ -0,0 +1,12 @@
using System;
namespace SharedLibraryCore.Interfaces
{
public interface IEventPublisher
{
event EventHandler<GameEvent> OnClientDisconnect;
event EventHandler<GameEvent> OnClientConnect;
void Publish(GameEvent gameEvent);
}
}

View File

@ -4,7 +4,7 @@
<OutputType>Library</OutputType>
<TargetFramework>netcoreapp3.1</TargetFramework>
<PackageId>RaidMax.IW4MAdmin.SharedLibraryCore</PackageId>
<Version>2021.8.29.1</Version>
<Version>2021.8.31.1</Version>
<Authors>RaidMax</Authors>
<Company>Forever None</Company>
<Configurations>Debug;Release;Prerelease</Configurations>
@ -19,7 +19,7 @@
<IsPackable>true</IsPackable>
<PackageLicenseExpression>MIT</PackageLicenseExpression>
<Description>Shared Library for IW4MAdmin</Description>
<PackageVersion>2021.8.29.1</PackageVersion>
<PackageVersion>2021.8.31.1</PackageVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Prerelease|AnyCPU'">
@ -44,7 +44,7 @@
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="3.1.10" />
<PackageReference Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="3.1.10" />
<PackageReference Include="Newtonsoft.Json" Version="12.0.3" />
<PackageReference Include="RaidMax.IW4MAdmin.Data" Version="1.0.6" />
<PackageReference Include="RaidMax.IW4MAdmin.Data" Version="1.0.7" />
<PackageReference Include="Serilog.AspNetCore" Version="3.4.0" />
<PackageReference Include="SimpleCrypto.NetCore" Version="1.0.0" />
</ItemGroup>