Exemple #1
0
        public async Task Ping(IHubCallerClients clients, PingPongMessage receivedPing)
        {
            _repository.save(receivedPing);

            _logger.log("Sleeping for " + PING_PONG_INTERVAL + " milliseconds");
            Thread.Sleep(PING_PONG_INTERVAL);

            PingPongMessage pongResponse = new PingPongMessage();

            pongResponse.date      = System.DateTime.UtcNow.ToString();
            pongResponse.messageId = receivedPing.messageId + 1;

            if (receivedPing.sessionId == Guid.Empty)
            {
                pongResponse.sessionId = Guid.NewGuid();
                _logger.log("No session specified for incoming ping; new Session ID: " + pongResponse.sessionId.ToString());
            }
            else
            {
                pongResponse.sessionId = receivedPing.sessionId;
            }

            _logger.log("Sending pong with Session ID: " + pongResponse.sessionId.ToString() + " & Message ID: " + pongResponse.messageId.ToString());

            await clients.Caller.SendAsync("pong", pongResponse);

            _repository.save(pongResponse);
        }
        public async void PongMessageReceived(PingPongMessage message)
        {
            _unitOfWork.PingRepository.Add(message);
            await Task.Delay(2000);

            PongSendMessage(message.Id);
        }
        private void onReceivedPong(PingPongMessage pongMessage)
        {
            Console.WriteLine(controller.nickname + "OnReceive PONG");
            Pair pairMsg = new Pair(pongMessage.AddrSrc, pongMessage.PortSrc);

            nodesConnected.Remove(pairMsg);
        }
Exemple #4
0
        // True = Ping
        // False = Pong
        internal async Task SendPingPong(bool sendPing)
        {
            var pingMsg = new PingPongMessage {
                Type = sendPing ? MessageTypeEnum.Ping : MessageTypeEnum.Pong
            };
            await ClientWebSocketUtils.SendTextMessage(_websocket.WebSocket, pingMsg.ToJson());

            Out(pingMsg.ToJson());
        }
 public void PongSendMessage(Guid id)
 {
     if (_onMessageStarted != null)
     {
         var message = new PingPongMessage("PONG_MESSAGE");
         _onMessageStarted(message, id.ToString());
         _unitOfWork.PongRepository.Add(message);
     }
 }
        // True = Ping
        // False = Pong
        public async Task SendPingPong(bool sendPing)
        {
            var pingMsg = new PingPongMessage {
                Type = sendPing ? MessageTypeEnum.Ping : MessageTypeEnum.Pong
            };
            await ClientWebSocketUtils.SendTextMessage(_websocket.WebSocket, pingMsg.ToJson());

            Console.WriteLine(pingMsg.ToJson());
        }
        private void onReceivedPing(PingPongMessage pongMessage)
        {
            Console.WriteLine(controller.nickname + "OnReceive PING");

            //Send Pong
            PingPongMessage response = new PingPongMessage(controller.getIpLocal(), controller.port, Parser.TimestampNow().ToString(), false);
            Pair            dest     = new Pair(pongMessage.AddrSrc, pongMessage.PortSrc);

            controller.sender.sendMessage(response, dest);
        }
Exemple #8
0
        public Guid PingSendMessage()
        {
            if (_onMessageStarted != null)
            {
                PingPongMessage message = new PingPongMessage("PING_MESSAGE");
                _onMessageStarted(message, "pingpongQueue");
                return(message.Id);
            }

            return(new Guid());
        }
 private async void PingPong_OnPongReceived(object sender, PingPongMessage e)
 {
     await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
     {
         if (SelectedSystem.Id == e.TargetId)
         {
             SelectedSystem.PingTime = e.RoundTripTime.TotalMilliseconds.ToString("0") + "ms";
             Bindings.Update();
         }
     });
 }
        private void initTimerPingPong()
        {
            timerPingPong           = new System.Timers.Timer(DELAY_TIMER_PING_PONG);
            timerPingPong.AutoReset = true;
            timerPingPong.Elapsed  += (s, e) =>
            {
                PingPongMessage ping = new PingPongMessage(getIpLocal(), port, Parser.TimestampNow().ToString(), true);
                sender.sendMessage(ping);
            };

            timerPingPong.Start();
        }
Exemple #11
0
        public void SendMessage(PingPongMessage message, string queue)
        {
            lock (channel)
            {
                channel.QueueDeclare(queue: queue,
                                     durable: false,
                                     exclusive: false,
                                     autoDelete: false,
                                     arguments: null);

                var body = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(message));

                channel.BasicPublish(exchange: "",
                                     routingKey: queue,
                                     basicProperties: null,
                                     body: body);
            }
        }
 private void PingPong_OnPongReceived(object sender, PingPongMessage e)
 {
 }
 public void Add(PingPongMessage message)
 {
     _repository.Add(message);
 }
Exemple #14
0
 public async Task Ping(PingPongMessage receivedPing)
 {
     _logger.log("Incoming ping with Session ID: " + receivedPing.sessionId + " & Message ID " + receivedPing.messageId);
     await _pingPongService.Ping(Clients, receivedPing);
 }
Exemple #15
0
        private void PingClick(object sender, RoutedEventArgs e)
        {
            PingPongMessage ppm = new PingPongMessage(controller.getIpLocal(), controller.port, Parser.TimestampNow().ToString(), true);

            controller.sender.sendMessage(ppm);
        }
Exemple #16
0
 public void PingMessageReceived(PingPongMessage message)
 {
     replyMessage = message.Message;
 }
 public void save(PingPongMessage pingPongMessage)
 {
     _logger.warn("Saving not yet implemented");
 }