public void SendPushShutdown(ReactorVirtualClient c) { EosPacket p = new EosPacket(); p.Sender = ReactorServer.Id; p.Type = EosPacketType.Shutdown; byte[] toSend = Encryption.AES_Encrypt(p.ToBytes(), c.Key, c.Salt); EosSignal.SendNotification(c.Address, SignalPort, toSend); }
protected virtual void SendPushRegistration(ReactorVirtualClient c) { EosPacket p = new EosPacket(); p.Sender = ReactorServer.Id; p.Type = EosPacketType.Registered; p.Data.Add(Encoding.Unicode.GetBytes(TimeToLive.ToString())); c.SendPacket(p.ToBytes()); }
public void HandleReactorPacket(ReactorVirtualClient c, EosPacket p) { switch (p.Type) { case EosPacketType.RequstRegistration: byte[] accesskey = p.Data[0]; string username = Encoding.Unicode.GetString(p.Data[1]); if (!ValidateAccessKey(accesskey)) { break; } c.Tag = Encoding.Unicode.GetBytes(username); // register TtlClients.Add(c, Environment.TickCount); // Current Time in Ticks SendPushRegistration(c); break; } }
public override void ReactorServerOnClientDisconnectedEvent(ReactorVirtualClient c) { Console.WriteLine(DateTime.Now.ToString() + "> Server | Client Disconnected: " + c.Id); base.ReactorServerOnClientDisconnectedEvent(c); }
public override void ReactorServerOnClientConnectionSecuredEvent(ReactorVirtualClient c) { Console.WriteLine(DateTime.Now.ToString() + "> Server | Connection to " + c.Id + " is now secured."); base.ReactorServerOnClientConnectionSecuredEvent(c); }
public virtual void ReactorServerOnClientConnectedEvent(ReactorVirtualClient c) { //throw new NotImplementedException(); }
private void ReactorServerOnClientPacketReceivedEvent(ReactorVirtualClient c, byte[] data) { EosPacket p = new EosPacket(data); HandleReactorPacket(c, p); }