public void IntTest() { _awaitingMessage = new CountdownEvent(2); const string peerAName = "PeerA"; const int peerAPort = 4000; const string peerBName = "PeerB"; const int peerBPort = 5000; IPeerIdentification peerAIdentification = new StringPeerIdentification(peerAName); IPeerIdentification peerBIdentification = new StringPeerIdentification(peerBName); IPeerManager peerApeerManager = new PeerManager(); peerApeerManager.AddOrUpdatePeer(peerBIdentification, new IPEndPoint(IPAddress.Loopback, peerBPort)); IPeerManager peerBpeerManager = new PeerManager(); peerBpeerManager.AddOrUpdatePeer(peerAIdentification, new IPEndPoint(IPAddress.Loopback, peerAPort)); ISerializer serializer = new JSONSerialiser(); IUDPNetworking peerA = new UDPNetworking( peerAIdentification, peerApeerManager, serializer, new IPEndPoint(IPAddress.Loopback, peerAPort) ); IUDPNetworking peerB = new UDPNetworking( peerBIdentification, peerBpeerManager, serializer, new IPEndPoint(IPAddress.Loopback, peerBPort) ); peerA.OnMessageReceived += OnMessageReceived; peerB.OnMessageReceived += OnMessageReceived; peerA.SendMessageAsync(new StringMessage() { To = peerBIdentification, From = peerAIdentification, Data = "Hello B!" }); peerB.SendMessageAsync(new StringMessage() { To = peerAIdentification, From = peerBIdentification, Data = "Hello A!" }); _awaitingMessage.Wait(); peerA.Dispose(); peerB.Dispose(); }
private void PrepareListenner() { var middlewares = new List <IMiddleware <MainMessage> >(); middlewares.Add(new MsgIdIncrement()); middlewares.Add(new ServerIdFiller()); udpListenner = new UDPNetworking <MainMessage>(_config.Listen, (int)_config.UdpPort, this.MsgRouter, middlewares); }
public void Init(Config config) { this._config = config; this._log = new LoggerWrapper(this.GetType().Name, this._config.Loggers); this._log.Debug("Logger initialized."); var middlewares = new List <IMiddleware <MainMessage> >(); middlewares.Add(new MsgIdIncrement()); middlewares.Add(_serverIdFiller); udpListenner = new UDPNetworking <MainMessage>(_config.Listen, (int)_config.UdpPort, this.MsgRouter, middlewares); }
public void SendButtonPress(string button) { UDPNetworking.log += "Button Pressed: " + button + "\n"; switch (button) { case "Forward": UDPNetworking.Socket_SendMessage(MOVE_FORWARD_MESSAGE); break; case "Backward": UDPNetworking.Socket_SendMessage(MOVE_BACKWARD_MESSAGE); break; case "Move Right": UDPNetworking.Socket_SendMessage(MOVE_RIGHT_MESSAGE); break; case "Move Left": UDPNetworking.Socket_SendMessage(MOVE_LEFT_MESSAGE); break; case "Up": UDPNetworking.Socket_SendMessage(MOVE_UP_MESSAGE); break; case "Down": UDPNetworking.Socket_SendMessage(MOVE_DOWN_MESSAGE); break; case "Lean Left": UDPNetworking.Socket_SendMessage(LEAN_LEFT_MESSAGE); break; case "Lean Right": UDPNetworking.Socket_SendMessage(LEAN_RIGHT_MESSAGE); break; case "Lean Forward": UDPNetworking.Socket_SendMessage(LEAN_FORWARD_MESSAGE); break; case "Lean Backward": UDPNetworking.Socket_SendMessage(LEAN_BACKWARD_MESSAGE); break; case "Turn Right": UDPNetworking.Socket_SendMessage(TURN_RIGHT_MESSAGE); break; case "Turn Left": UDPNetworking.Socket_SendMessage(TURN_LEFT_MESSAGE); break; case "A": UDPNetworking.Socket_SendMessage(BUTTON_A); break; case "B": UDPNetworking.log += "Action not defined\n"; break; case "X": UDPNetworking.log += "Action not defined\n"; break; case "Y": UDPNetworking.log += "Action not defined\n"; break; case "Stop": UDPNetworking.Socket_SendMessage(STOP_MESSAGE); break; case "Connection": UDPNetworking.Connection(); break; case "Disconnection": UDPNetworking.Disconnection(); break; default: // Aucun bouton correspondant : on n'envoi rien UDPNetworking.log += "Button not recognized\n"; break; } }