Explorar el Código

Pump update limitations remover

Jon B.M hace 4 años
padre
commit
d11f7d1e8e

+ 3 - 3
FreeAPS/Sources/APS/APSManager.swift

@@ -6,7 +6,7 @@ import SwiftDate
 import Swinject
 
 protocol APSManager {
-    func heartbeat(date: Date, force: Bool)
+    func heartbeat(date: Date)
     func autotune() -> AnyPublisher<Autotune?, Never>
     func enactBolus(amount: Double, isSMB: Bool)
     var pumpManager: PumpManagerUI? { get set }
@@ -137,8 +137,8 @@ final class BaseAPSManager: APSManager, Injectable {
             .store(in: &lifetime)
     }
 
-    func heartbeat(date: Date, force: Bool) {
-        deviceDataManager.heartbeat(date: date, force: force)
+    func heartbeat(date: Date) {
+        deviceDataManager.heartbeat(date: date)
     }
 
     private func loop() {

+ 2 - 23
FreeAPS/Sources/APS/DeviceDataManager.swift

@@ -18,7 +18,7 @@ protocol DeviceDataManager: GlucoseSource {
     var errorSubject: PassthroughSubject<Error, Never> { get }
     var pumpName: CurrentValueSubject<String, Never> { get }
     var pumpExpiresAtDate: CurrentValueSubject<Date?, Never> { get }
-    func heartbeat(date: Date, force: Bool)
+    func heartbeat(date: Date)
     func createBolusProgressReporter() -> DoseProgressReporter?
 }
 
@@ -96,30 +96,9 @@ final class BaseDeviceDataManager: DeviceDataManager, Injectable {
         pumpManager?.createBolusProgressReporter(reportingOn: processQueue)
     }
 
-    func heartbeat(date: Date, force: Bool) {
+    func heartbeat(date: Date) {
         processQueue.safeSync {
-            if force {
-                updatePumpData()
-                return
-            }
-
-            var updateInterval: TimeInterval = 1 * 60
-
-            switch date.timeIntervalSince(lastHeartBeatTime) {
-            case let interval where interval > 10.minutes.timeInterval:
-                break
-            case let interval where interval > 5.minutes.timeInterval:
-                updateInterval = 1.minutes.timeInterval
             default:
-                break
-            }
-
-            let interval = date.timeIntervalSince(lastHeartBeatTime)
-            guard interval >= updateInterval else {
-                debug(.deviceManager, "Last hearbeat \(interval / 60) min ago, skip updating the pump data")
-                return
-            }
-
             lastHeartBeatTime = date
             updatePumpData()
         }

+ 1 - 1
FreeAPS/Sources/APS/FetchGlucoseManager.swift

@@ -81,7 +81,7 @@ final class BaseFetchGlucoseManager: FetchGlucoseManager, Injectable {
                 debug(.nightscout, "New glucose found")
 
                 self.glucoseStorage.storeGlucose(filtered)
-                self.apsManager.heartbeat(date: date, force: false)
+                self.apsManager.heartbeat(date: date)
                 self.nightscoutManager.uploadGlucose()
                 let glucoseForHealth = filteredByDate.filter { !glucoseFromHealth.contains($0) }
 

+ 1 - 1
FreeAPS/Sources/Modules/Home/HomeProvider.swift

@@ -19,7 +19,7 @@ extension Home {
         }
 
         func heartbeatNow() {
-            apsManager.heartbeat(date: Date(), force: true)
+            apsManager.heartbeat(date: Date())
         }
 
         func filteredGlucose(hours: Int) -> [BloodGlucose] {