Exemple #1
0
        private void KeepaliveTimer_Elapsed(object sender, ElapsedEventArgs e)
        {
            if (keepaliveTimestamp <= DateTime.UtcNow)
            {
                CoapToken   token = CoapToken.Create();
                ushort      id    = CoapSender.NewId(token.TokenBytes);
                CoapRequest ping  = new CoapRequest
                {
                    MessageId   = id,
                    Token       = token.TokenBytes,
                    Code        = CodeType.EmptyMessage,
                    MessageType = CoapMessageType.Confirmable
                };

                OnKeepAlive?.Invoke(this, new CoapMessageEventArgs(ping));
            }
        }
        protected virtual void Dispose(bool disposing)
        {
            if (!disposedValue)
            {
                if (disposing)
                {
                    if (keepaliveTimer != null)
                    {
                        keepaliveTimer.Stop();
                        keepaliveTimer.Dispose();
                    }

                    CoapSender.Dispose();
                    CoapReceiver.Dispose();
                }

                disposedValue = true;
            }
        }