/// <summary> /// Checks whether a <see cref="LoRaDevice"/> is valid for a <see cref="LoRaPayloadData"/> /// It validates that the device has a <see cref="LoRaDevice.NwkSKey"/> and mic check /// </summary> /// <param name="logError">Indicates if error should be log if mic check fails</param> private bool IsValidDeviceForPayload(LoRaDevice loRaDevice, LoRaPayloadData loraPayload, bool logError) { if (string.IsNullOrEmpty(loRaDevice.NwkSKey)) { return(false); } var checkMicResult = loRaDevice.ValidateMic(loraPayload); if (!checkMicResult && logError) { Logger.Log(loRaDevice.DevEUI, $"with devAddr {loRaDevice.DevAddr} check MIC failed", LogLevel.Debug); } return(checkMicResult); }