async Task CreateServer() { // Create the server _server = new SimplMessageServer(); // Create a callback for received data of type classA _server.AddCallBack <ClassA>((receivedMessage) => { // get data from received message cast to ClassA var receivedObject = receivedMessage.GetContent <ClassA>(); Console.WriteLine($"Server: received message {receivedObject.VarDouble}, {receivedObject.VarInt}"); // Reply to the message with the same content (echo) _server.Reply(receivedObject, receivedMessage); Console.WriteLine($"Server: replied to message"); }); // Start listening for client connections on loopback end point _server.Listen(new IPEndPoint(IPAddress.Loopback, 5000)); // Wait until a new client has connected Console.WriteLine($"Server: awaiting connection from new client"); var connectedClient = await _server.WaitForNewClientAsync(); Console.WriteLine($"Server: a client has connected"); }
private void ServerReceivedClassACallback(ReceivedMessage receivedMessage) { // get data from received message var receivedObject = receivedMessage.GetContent <ClassA>(); // Indicate that the server received data Console.WriteLine($"Server: received message {receivedObject.VarDouble}, {receivedObject.VarInt}"); // Create a response object with string content, based on the received message var sendMessage = new ClassB() { VarString = $"{receivedObject.VarDouble}, {receivedObject.VarInt}" }; // Reply to received message Console.WriteLine($"Server: replying to client {sendMessage.VarString}"); _server.Reply(sendMessage, receivedMessage); }
void CreateServer() { // Create the server var server = new SimplMessageServer(); // Create a callback for received data of type classA server.AddCallBack <ClassA>((receivedMessage) => { // get data from received message cast to ClassA var receivedObject = receivedMessage.GetContent <ClassA>(); Console.WriteLine($"Server received message: {receivedObject.VarDouble}, {receivedObject.VarInt}"); // Reply to the message with the same content (echo) server.Reply(receivedObject, receivedMessage); Console.WriteLine($"Server replied to message"); }); // Start listening for client connections on loopback end point server.Listen(new IPEndPoint(IPAddress.Loopback, 5000)); }