private void ServerStatus(object o) { PlexClientInfo client = o as PlexClientInfo; if (PlexServer.IsLoggedIn) { serverStatus.Stop(); serverStatus.Dispose(); isAlive = true; this.adr = client.IpAddress; this.p = client.PlayerPort; this.lP = client.ListenPort; this.Name = client.Name; identifier = PlexServer.GetClientIdentifier(adr); if (PlexServer.RegisterClient(Name)) { PlexServer.Clients[Name].OnLibraryChange += new EventHandler <LibraryChangeEventArgs>(PlexClient_OnLibraryChange); } server = new HttpServer(); server.OnHttpRequest += new OnHttpRequestHandler(server_OnHttpRequest); server.Port = client.ListenPort; server.EthernetAdapterToBindTo = EthernetAdapterType.EthernetLANAdapter; server.Active = true; pollTimer = new CTimer(PollTimer, this, 0, 30000); } }
public PlexClient(string ipAddress, int playerPort, int listenPort, string name) { PlexClientInfo info = new PlexClientInfo(ipAddress, playerPort, listenPort, name); serverStatus = new CTimer(ServerStatus, info, 0, 10000); }