protected Common(EpicTransport transport, EpicOptions options) { Transport = transport; EpicManager = Transport.EpicManager; Options = options; AddNotifyPeerConnectionRequestOptions addNotifyPeerConnectionRequestOptions = new AddNotifyPeerConnectionRequestOptions { LocalUserId = EpicManager.AccountId.ProductUserId }; _onIncomingConnectionRequest += OnNewConnection; _onRemoteConnectionClosed += OnConnectionFailed; _incomingNotificationId = EpicManager.P2PInterface.AddNotifyPeerConnectionRequest(addNotifyPeerConnectionRequestOptions, null, _onIncomingConnectionRequest); AddNotifyPeerConnectionClosedOptions addNotifyPeerConnectionClosedOptions = new AddNotifyPeerConnectionClosedOptions { LocalUserId = EpicManager.AccountId.ProductUserId }; _outgoingNotificationId = EpicManager.P2PInterface.AddNotifyPeerConnectionClosed(addNotifyPeerConnectionClosedOptions, null, _onRemoteConnectionClosed); }
/// <summary> /// /// </summary> /// <param name="transport"></param> /// <param name="options"></param> public Server(EpicTransport transport, EpicOptions options) : base(transport, options) { Options = options; Transport = transport; _connectedEpicUsers = new Dictionary <ProductUserId, Client>(); UniTask.Run(ProcessIncomingMessages).Forget(); }
/// <summary> /// /// </summary> /// <param name="transport"></param> /// <param name="options"></param> /// <param name="serverControlled">Is the data being processed by server or client.</param> public Client(EpicTransport transport, EpicOptions options, bool serverControlled) : base(transport, options) { Options = options; Transport = transport; _serverControlled = serverControlled; _initialWait = !_serverControlled; if (serverControlled) { return; } SocketName = new SocketId { SocketName = Guid.NewGuid().ToString("N").GetHashCode().ToString().Replace("-", string.Empty) }; Debug.Log($"SocketId: {SocketName.SocketName}"); UniTask.Run(ProcessIncomingMessages).Forget(); }