Browse Source

Only fetch 5 devicestatus if last attempt resulted in suggested

Jonas Björkert 1 year ago
parent
commit
a819fe1e82

+ 4 - 2
LoopFollow/Controllers/Nightscout/DeviceStatus.swift

@@ -13,8 +13,10 @@ import Charts
 extension MainViewController {
     // NS Device Status Web Call
     func webLoadNSDeviceStatus() {
-        let count = ObservableUserDefaults.shared.device.value == "Trio" ? "5" : "1"
-        LogManager.shared.log(category: .deviceStatus, message: "Fetching \(count) device status records", isDebug: true)
+        let count = ObservableUserDefaults.shared.device.value == "Trio" && Observable.shared.isLastDeviceStatusSuggested.value ? "5" : "1"
+        if count != "1" {
+            LogManager.shared.log(category: .deviceStatus, message: "Fetching \(count) device status records")
+        }
 
         let parameters: [String: String] = ["count": count]
         NightscoutUtils.executeDynamicRequest(eventType: .deviceStatus, parameters: parameters) { result in

+ 2 - 0
LoopFollow/Controllers/Nightscout/DeviceStatusOpenAPS.swift

@@ -31,6 +31,8 @@ extension MainViewController {
                     wasEnacted = false
                 }
 
+                Observable.shared.isLastDeviceStatusSuggested.value = !wasEnacted
+
                 if wasEnacted {
                     UserDefaultsRepository.alertLastLoopTime.value = lastLoopTime
                     LogManager.shared.log(category: .deviceStatus, message: "New LastLoopTime: \(lastLoopTime)", isDebug: true)

+ 1 - 0
LoopFollow/Storage/Observable.swift

@@ -14,6 +14,7 @@ class Observable {
 
     var tempTarget = ObservableValue<HKQuantity?>(default: nil)
     var override = ObservableValue<String?>(default: nil)
+    var isLastDeviceStatusSuggested = ObservableValue<Bool>(default: false)
 
     private init() {}
 }