Fixed typo that was causing dew point errors.

This commit is contained in:
2021-10-17 18:37:06 -04:00
parent d8734913e0
commit 7a4c08da6e
3 changed files with 22 additions and 6 deletions

View File

@@ -1,4 +1,5 @@
import CoreUnitTypes import CoreUnitTypes
import Logging
import Models import Models
import MQTTNIO import MQTTNIO
import NIO import NIO
@@ -55,7 +56,7 @@ extension MQTTNIO.MQTTClient {
let subscription = MQTTSubscribeInfoV5.init( let subscription = MQTTSubscribeInfoV5.init(
topicFilter: sensor.topic, topicFilter: sensor.topic,
qos: .atLeastOnce, qos: .atLeastOnce,
retainAsPublished: true, retainAsPublished: false,
retainHandling: .sendAlways retainHandling: .sendAlways
) )
return v5.subscribe(to: [subscription]) return v5.subscribe(to: [subscription])
@@ -137,3 +138,13 @@ extension EventLoopFuture where Value == Temperature {
} }
} }
} }
extension EventLoopFuture {
func debug(logger: Logger?) -> EventLoopFuture<Value> {
map { value in
logger?.debug("Value: \(value)")
return value
}
}
}

View File

@@ -15,10 +15,13 @@ extension Client.MQTTClient {
.init( .init(
fetchHumidity: { sensor in fetchHumidity: { sensor in
client.fetch(sensor: sensor) client.fetch(sensor: sensor)
.debug(logger: client.logger)
}, },
fetchTemperature: { sensor, units in fetchTemperature: { sensor, units in
client.fetch(sensor: sensor) client.fetch(sensor: sensor)
.debug(logger: client.logger)
.convertIfNeeded(to: units) .convertIfNeeded(to: units)
.debug(logger: client.logger)
}, },
setRelay: { relay, state in setRelay: { relay, state in
client.set(relay: relay, to: state) client.set(relay: relay, to: state)

View File

@@ -8,7 +8,7 @@ import Foundation
var logger: Logger = { var logger: Logger = {
var logger = Logger(label: "dewPoint-logger") var logger = Logger(label: "dewPoint-logger")
logger.logLevel = .info logger.logLevel = .debug
return logger return logger
}() }()
@@ -32,6 +32,8 @@ defer {
} }
while true { while true {
// let temp = try environment.mqttClient.fetchTemperature(tempSensor, .imperial).wait()
// logger.debug("Temp: \(temp.rawValue)")
logger.debug("Fetching dew point...") logger.debug("Fetching dew point...")