Files
SPT-Server-Build/Libraries/SPTarkov.Server.Core/Models/Eft/Match/PutMetricsRequestData.cs
T
2025-08-21 09:46:00 +00:00

164 lines
4.7 KiB
C#

using System.Text.Json.Serialization;
using SPTarkov.Server.Core.Models.Utils;
namespace SPTarkov.Server.Core.Models.Eft.Match;
public record PutMetricsRequestData : IRequestData
{
[JsonPropertyName("sid")]
public string? SessionId { get; set; }
[JsonPropertyName("Settings")]
public object? Settings { get; set; }
[JsonPropertyName("SharedSettings")]
public SharedSettings? SharedSettings { get; set; }
[JsonPropertyName("HardwareDescription")]
public HardwareDescription? HardwareDescription { get; set; }
[JsonPropertyName("Location")]
public string? Location { get; set; }
[JsonPropertyName("Metrics")]
public object? Metrics { get; set; }
[JsonPropertyName("ClientEvents")]
public ClientEvents? ClientEvents { get; set; }
[JsonPropertyName("SpikeSamples")]
public List<object>? SpikeSamples { get; set; }
[JsonPropertyName("mode")]
public string? Mode { get; set; }
}
public record SharedSettings
{
[JsonPropertyName("StatedFieldOfView")]
public double? StatedFieldOfView { get; set; }
}
public record HardwareDescription
{
[JsonPropertyName("deviceUniqueIdentifier")]
public string? DeviceUniqueIdentifier { get; set; }
[JsonPropertyName("systemMemorySize")]
public double? SystemMemorySize { get; set; }
[JsonPropertyName("graphicsDeviceID")]
public double? GraphicsDeviceId { get; set; }
[JsonPropertyName("graphicsDeviceName")]
public string? GraphicsDeviceName { get; set; }
[JsonPropertyName("graphicsDeviceType")]
public string? GraphicsDeviceType { get; set; }
[JsonPropertyName("graphicsDeviceVendor")]
public string? GraphicsDeviceVendor { get; set; }
[JsonPropertyName("graphicsDeviceVendorID")]
public double? GraphicsDeviceVendorId { get; set; }
[JsonPropertyName("graphicsDeviceVersion")]
public string? GraphicsDeviceVersion { get; set; }
[JsonPropertyName("graphicsMemorySize")]
public double? GraphicsMemorySize { get; set; }
[JsonPropertyName("graphicsMultiThreaded")]
public bool? GraphicsMultiThreaded { get; set; }
[JsonPropertyName("graphicsShaderLevel")]
public double? GraphicsShaderLevel { get; set; }
[JsonPropertyName("operatingSystem")]
public string? OperatingSystem { get; set; }
[JsonPropertyName("processorCount")]
public double? ProcessorCount { get; set; }
[JsonPropertyName("processorFrequency")]
public double? ProcessorFrequency { get; set; }
[JsonPropertyName("processorType")]
public string? ProcessorType { get; set; }
[JsonPropertyName("driveType")]
public string? DriveType { get; set; }
[JsonPropertyName("swapDriveType")]
public string? SwapDriveType { get; set; }
}
public record ClientEvents
{
[JsonPropertyName("MatchingCompleted")]
public double? MatchingCompleted { get; set; }
[JsonPropertyName("MatchingCompletedReal")]
public double? MatchingCompletedReal { get; set; }
[JsonPropertyName("LocationLoaded")]
public double? LocationLoaded { get; set; }
[JsonPropertyName("LocationLoadedReal")]
public double? LocationLoadedReal { get; set; }
[JsonPropertyName("GamePrepared")]
public double? GamePrepared { get; set; }
[JsonPropertyName("GamePreparedReal")]
public double? GamePreparedReal { get; set; }
[JsonPropertyName("GameCreated")]
public double? GameCreated { get; set; }
[JsonPropertyName("GameCreatedReal")]
public double? GameCreatedReal { get; set; }
[JsonPropertyName("GamePooled")]
public double? GamePooled { get; set; }
[JsonPropertyName("GamePooledReal")]
public double? GamePooledReal { get; set; }
[JsonPropertyName("GameRunned")]
public double? GameRunned { get; set; }
[JsonPropertyName("GameRunnedReal")]
public double? GameRunnedReal { get; set; }
[JsonPropertyName("GameSpawn")]
public double? GameSpawn { get; set; }
[JsonPropertyName("GameSpawnReal")]
public double? GameSpawnReal { get; set; }
[JsonPropertyName("PlayerSpawnEvent")]
public double? PlayerSpawnEvent { get; set; }
[JsonPropertyName("PlayerSpawnEventReal")]
public double? PlayerSpawnEventReal { get; set; }
[JsonPropertyName("GameSpawned")]
public double? GameSpawned { get; set; }
[JsonPropertyName("GameSpawnedReal")]
public double? GameSpawnedReal { get; set; }
[JsonPropertyName("GameStarting")]
public double? GameStarting { get; set; }
[JsonPropertyName("GameStartingReal")]
public double? GameStartingReal { get; set; }
[JsonPropertyName("GameStarted")]
public double? GameStarted { get; set; }
[JsonPropertyName("GameStartedReal")]
public double? GameStartedReal { get; set; }
}