Shared System completed. Test for bugs.

This commit is contained in:
2026-04-10 14:14:35 -04:00
parent e855948ca9
commit c3b8dc5061
31 changed files with 109 additions and 282 deletions

View File

@@ -1,7 +0,0 @@
namespace RelayServer.Models;
public class SocketChannelList
{
public required string Type { get; set; }
public required List<SocketChannelInfo> Channels { get; set; }
}

View File

@@ -1,13 +0,0 @@
namespace RelayServer.Models;
public class SocketEncryptedMessage
{
public required string Type { get; set; }
public required string SenderUsername { get; set; }
public string? RecipientUsername { get; set; }
public required string ChannelId { get; set; }
public required string CipherText { get; set; }
public required string Nonce { get; set; }
public required string Tag { get; set; }
public required string EncryptedKey { get; set; }
}

View File

@@ -1,13 +0,0 @@
namespace RelayServer.Models;
public class RtcSignalMessage
{
public required string Type { get; set; } // rtc_join / rtc_offer / rtc_answer / rtc_ice_candidate / rtc_leave
public required string From { get; set; }
public required string ChannelId { get; set; }
public string? Sdp { get; set; }
public string? Candidate { get; set; }
public string? SdpMid { get; set; }
public int? SdpMLineIndex { get; set; }
}

View File

@@ -1,7 +0,0 @@
namespace RelayServer.Models;
public class ServerPublicKeyMessage
{
public required string Type { get; set; }
public required string PublicKey { get; set; }
}

View File

@@ -1,13 +0,0 @@
namespace RelayServer.Models;
public class SocketRtcSignalMessage
{
public required string Type { get; set; } // encrypted_rtc_signal
public required string SenderUsername { get; set; }
public required string ChannelId { get; set; }
public required string CipherText { get; set; }
public required string Nonce { get; set; }
public required string Tag { get; set; }
public required string EncryptedKey { get; set; }
}

View File

@@ -1,14 +0,0 @@
using SurrealDb.Net.Models;
namespace RelayServer.Models.Rtc;
public sealed class RtcActiveCall : Record
{
public required string ChannelId { get; set; }
public string? OfferUser { get; set; }
public RtcSessionDescription? Offer { get; set; }
public RtcSessionDescription? Answer { get; set; }
public DateTime CreatedAt { get; set; }
public DateTime UpdatedAt { get; set; }
public bool IsActive { get; set; }
}

View File

@@ -1,12 +0,0 @@
using SurrealDb.Net.Models;
namespace RelayServer.Models.Rtc;
public class RtcAnswer : Record
{
public required string ChannelId { get; set; }
public required string OfferUser { get; set; }
public required string AnswerUser { get; set; }
public required string Sdp { get; set; }
public DateTime CreatedAt { get; set; }
}

View File

@@ -1,30 +0,0 @@
using SurrealDb.Net.Models;
namespace RelayServer.Models.Rtc;
public class RtcIceCandidate : Record
{
public required string ChannelId { get; set; }
public required string Username { get; set; }
public required string Candidate { get; set; }
public string? SdpMid { get; set; }
public int? SdpMLineIndex { get; set; }
// public required string Direction { get; set; } // "offer" or "answer"
public DateTime CreatedAt { get; set; }
}
public class DBIceCandidate
{
public required string ChannelId { get; set; }
public required string Username { get; set; }
public required IceCandidate Candidate { get; set; }
}
public class IceCandidate
{
public required string candidate { get; set; }
public required string sdpMid { get; set; }
public required int sdpMLineIndex { get; set; }
public required string usernameFragment { get; set; }
}

View File

@@ -1,7 +0,0 @@
namespace RelayServer.Models.Rtc;
public class RtcJoinRequest
{
public required string ChannelId { get; set; }
public required string Username { get; set; }
}

View File

@@ -1,10 +0,0 @@
namespace RelayServer.Models.Rtc;
public class RtcJoinResponse
{
public required string ChannelId { get; set; }
public bool HasActiveCall { get; set; }
public bool IsOfferer { get; set; }
public string? OfferUser { get; set; }
public string? OfferSdp { get; set; }
}

View File

@@ -1,7 +0,0 @@
namespace RelayServer.Models.Rtc;
public class RtcLeaveRequest
{
public required string ChannelId { get; set; }
public required string Username { get; set; }
}

View File

@@ -1,17 +0,0 @@
namespace RelayServer.Models.Rtc;
public sealed class RtcNotificationMessage
{
public required string Type { get; set; } // rtc_offer_updated / rtc_answer_updated / rtc_candidate_added
public required string ChannelId { get; set; }
public string? Username { get; set; }
public string? Direction { get; set; }
}
public sealed class RtcIceNotificationMessage
{
public required string Type { get; set; }
public required string ChannelId { get; set; }
public string? Username { get; set; }
public required IceCandidate Candidate { get; set; }
}

View File

@@ -1,14 +0,0 @@
using SurrealDb.Net.Models;
namespace RelayServer.Models.Rtc;
public class RtcOffer : Record
{
public required string ChannelId { get; set; }
public required string Username { get; set; }
public required RtcSessionDescription SessionDescription { get; set; }
// public required string Type { get; set; }
// public required string Sdp { get; set; }
public DateTime CreatedAt { get; set; }
public DateTime UpdatedAt { get; set; }
}

View File

@@ -1,7 +0,0 @@
namespace RelayServer.Models.Rtc;
public sealed class RtcSessionDescription
{
public required string Type { get; set; }
public required string Sdp { get; set; }
}