private void OnNotifyAvailableClientsRequest(IResonanceTransporter transporter, ResonanceMessage <NotifyAvailableClientsRequest> request) { InvokeUI(() => { ConnectedClients.Clear(); foreach (var client in request.Object.Clients) { ConnectedClients.Add(client); } }); }
private void ConnectionStateChangedCallback(IEnumerable <string> connectedClients) { ConnectedClients.Clear(); foreach (var connectedClient in connectedClients) { ConnectedClients.Add(new ListViewItemViewModel { Text = string.Format("Client connected from IP: {0}", connectedClient) }); } OnPropertyChanged("ConnectedClients"); }
private void StopServer() { if (!ServerStarted) { return; } Client = (Client.Name == settingsService.Name) ? Client : new ChatWCFService.Client(settingsService.Name); Port = (Port == settingsService.Port) ? Port : settingsService.Port; ConnectedClients.Clear(); hostService.Stop(); ServerStarted = false; Notifications.Add(new Notification("Server stopped", DateTime.Now, NotificationType.ServerStopped)); }
public void PopulateClients() { ConnectedClients.Clear(); var filter = Builders <ClientModel> .Filter.Gte(x => x.LastSeen, DateTime.Now.AddMinutes(-5)); var onlineClients = Mongo.Get(filter).ToList(); foreach (var c in onlineClients) { ConnectedClients.Add(c); } }
public void Disconnect() { running = false; for (int i = 0; i < ConnectedClients.Count; i++) { Disconnect(ConnectedClients[i]); } ConnectedClients.Clear(); server.Send("disconnect"); }
/// <summary> /// Stops the current WebRTC session, unregisters the listening service and stops the discovery /// </summary> private async void Disconnect() { if (IsConnected) { try { Logger.LogInformation("Disconnecting..."); IsFree = false; if (IsInSession) { await LeaveSession(); } Logger.LogInformation("Closing listener service..."); await _service?.DisposeAsync(); Logger.LogInformation("Closing service discovery..."); await _discoveryClient?.DisposeAsync(); IsConnected = false; InvokeUI(() => { ConnectedClients.Clear(); SelectedClient = null; }); Logger.LogInformation("Disconnected."); } catch (Exception ex) { Logger.LogError(ex, ex.Message); } finally { IsFree = true; } } }
/// <summary> /// Disconnects all clients from server and disposes all associated system resources /// </summary> public void Disconnect() { if (ConnectedClients != null) { foreach (var client in ConnectedClients) { if (client.Key.Socket != null && client.Key.Socket.Connected) { client.Key.Socket.Disconnect(false); client.Value.Abort(); //close receiving thread } } ConnectedClients.Clear(); } if (ConnectedServer != null) { ConnectedServer.Socket.Disconnect(false); if (_clientListeningThread != null && _clientListeningThread.ThreadState != ThreadState.Stopped) { _clientListeningThread.Abort(); } } }
private void StopConnBtnClicked() { server.StopConnection(); ConnectedClients.Clear(); Connected = false; }
public void StopServer() { DataListener.Stop(); ServerStatus = false; ConnectedClients.Clear(); }