feat: Enhance signaling and relay management for improved invite handling and session recycling

This commit is contained in:
veroxsity
2026-04-18 14:58:09 +01:00
parent 74b78e81e4
commit f3021e6c4d
6 changed files with 107 additions and 15 deletions

View File

@@ -1825,6 +1825,16 @@ int APIENTRY _tWinMain(_In_ HINSTANCE hInstance,
const Win64LceLiveSignaling::ESignalingState sigState =
Win64LceLiveSignaling::GetSnapshot().state;
if (WinsockNetLayer::IsHosting() &&
(sigState == Win64LceLiveSignaling::ESignalingState::PeerKnown ||
sigState == Win64LceLiveSignaling::ESignalingState::Failed ||
sigState == Win64LceLiveSignaling::ESignalingState::Closed))
{
// Recycle stale/consumed signaling sessions so subsequent invites carry
// a fresh active session ID instead of a dead one.
Win64LceLiveSignaling::Close();
}
// Host: edge-trigger on first Ready frame (requires active session).
if (WinsockNetLayer::IsHosting() &&
WinsockNetLayer::IsActive() &&