static int Main(string[] args) { var listenConfig = ListenConfigModel.GetDefaults(); var userProvider = UserProvider.GetDefaults(10); var server = new ServerWrapper(listenConfig, userProvider); try { server.Listen(); } catch (Exception e) { SocketObject.GlobalLog($"Fatal exception: {e.Message}"); return(-1); } return(0); }
public ServerWrapper(ListenConfigModel config, IAuthProviderModel <UserModel> userProvider) : base(config, userProvider) { this.OnAuthConnectionEvent += (connection, identity) => { this.Log($"Handshake with {identity.AuthToken}"); }; this.OnContentReceivedEvent += (connection, identity, clientPacket) => { // echo content var serverPacket = new ServerPacketModel { dynamicServerContent = clientPacket.dynamicClientContent }; connection.SendPacket(serverPacket); // we can also broadcast to others // foreach (var activeConnection in this.activeConnections) // { // activeConnection.Key.SendPacket(serverPacket); // } }; }