Esempio n. 1
0
        private void HandleHeartBeat(string msg)
        {
            try
            {
                HeartbeatObject hb = JsonConvert.DeserializeObject <HeartbeatObject>(msg, new JsonSerializerSettings()
                {
                    TypeNameHandling = TypeNameHandling.All, Formatting = Formatting.Indented
                });

                if (hb is HeartbeatObject)
                {
                    _missedHeartBeats = 0;
                }
            }
            catch (Exception)
            {
            }
        }
Esempio n. 2
0
        private void SendHeartBeat()
        {
            if (_missedHeartbeats >= 5)
            {
                // reconnect

                Close();
                return;
            }
            _missedHeartbeats++;

            IMessage hb = new HeartbeatObject()
            {
                HeartbeatData = "Heart Beat"
            };
            string msg = JsonConvert.SerializeObject(hb, new JsonSerializerSettings()
            {
                TypeNameHandling = TypeNameHandling.All, Formatting = Formatting.Indented
            });

            byte[] heartbeatBytes = Encoding.ASCII.GetBytes(msg);

            _heartBeatClient.BeginSend(heartbeatBytes, 0, heartbeatBytes.Length, 0, new AsyncCallback(HeartBeatCallback), null);
        }