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(); }