Files

41 lines
1.8 KiB
C#
Raw Permalink Normal View History

2026-04-28 16:48:04 +08:00
using Unity.WebRTC;
namespace Unity.RenderStreaming.Signaling
{
public delegate void OnStartHandler(ISignaling signaling);
public delegate void OnConnectHandler(ISignaling signaling, string connectionId, bool polite);
public delegate void OnDisconnectHandler(ISignaling signaling, string connectionId);
public delegate void OnOfferHandler(ISignaling signaling, DescData e);
public delegate void OnAnswerHandler(ISignaling signaling, DescData e);
public delegate void OnIceCandidateHandler(ISignaling signaling, CandidateData e);
2026-04-29 15:13:24 +08:00
public delegate void OnParticipantJoinedHandler(ISignaling signaling, ParticipantEventData e);
public delegate void OnParticipantLeftHandler(ISignaling signaling, ParticipantEventData e);
public delegate void OnCallRequestHandler(ISignaling signaling, CallRequestData e);
public delegate void OnMessageHandler(ISignaling signaling, OnMessageData e);
2026-04-28 16:48:04 +08:00
public interface ISignaling
{
void Start();
void Stop();
event OnStartHandler OnStart;
event OnConnectHandler OnCreateConnection;
event OnDisconnectHandler OnDestroyConnection;
event OnOfferHandler OnOffer;
event OnAnswerHandler OnAnswer;
event OnIceCandidateHandler OnIceCandidate;
2026-04-29 15:13:24 +08:00
event OnParticipantJoinedHandler OnParticipantJoined;
event OnParticipantLeftHandler OnParticipantLeft;
event OnCallRequestHandler OnCallRequest;
event OnMessageHandler OnMessage;
2026-04-28 16:48:04 +08:00
string Url { get; }
void OpenConnection(string connectionId);
void CloseConnection(string connectionId);
void SendOffer(string connectionId, RTCSessionDescription offer);
void SendAnswer(string connectionId, RTCSessionDescription answer);
void SendCandidate(string connectionId, RTCIceCandidate candidate);
}
}