private void ClientOnMessageReceived(MqttApplicationMessageReceivedEventArgs args)
        {
            if (!messages.ServiceCommandTopic.Equals(args.ApplicationMessage.Topic))
            {
                return;
            }

            logger.LogInformation("Command received, updating sensor state...");

            bool newState;

            try
            {
                var payload = Encoding.UTF8.GetString(args.ApplicationMessage.Payload);
                logger.LogInformation($"Payload received:{payload}");
                newState = payload.ToLowerInvariant().Equals("on");
            }
            catch (Exception e)
            {
                logger.LogError(e, "Failed to decode new state!");
                throw;
            }

            if (newState)
            {
                sensor.Start();
            }
            else
            {
                sensor.Stop();
            }
        }
 public void Stop()
 {
     sensor.Stop();
 }