diff --git a/Cartfile.resolved b/Cartfile.resolved index 0980ce2bf8..fb7c03d9a8 100644 --- a/Cartfile.resolved +++ b/Cartfile.resolved @@ -3,6 +3,6 @@ github "LoopKit/CGMBLEKit" "96de871ed517630cfc2c9c68ac9698870086d6c9" github "LoopKit/G4ShareSpy" "e5268fd8d458ddbd722187217a638d99a4578bc3" github "LoopKit/LoopKit" "3ea3bb600b599701f4fe0196409b1249c3d4e8bc" github "LoopKit/MKRingProgressView" "f548a5c64832be2d37d7c91b5800e284887a2a0a" -github "LoopKit/dexcom-share-client-swift" "fe47b7a8f1f0e809ab4525520c559ab0e07a9d1c" +github "LoopKit/dexcom-share-client-swift" "83b89d5badb86219a5da400437fc3cdea12b03b3" github "i-schuetz/SwiftCharts" "0.6.5" -github "ps2/rileylink_ios" "2888970adca367922b436d5245e26b0738700c07" +github "ps2/rileylink_ios" "0dc526607ce2b06f48dadf58a3fd7b39fe11e452" diff --git a/Loop/Managers/DeviceDataManager.swift b/Loop/Managers/DeviceDataManager.swift index 67a9174a94..194382ec2b 100644 --- a/Loop/Managers/DeviceDataManager.swift +++ b/Loop/Managers/DeviceDataManager.swift @@ -160,12 +160,12 @@ final class DeviceDataManager { switch result { case .newData(let values): log.default("CGMManager:\(type(of: manager)) did update with \(values.count) values") - + loopManager.addGlucose(values) { result in if manager.shouldSyncToRemoteService { switch result { case .success(let values): - self.nightscoutDataManager.uploadGlucose(values, sensorState: manager.sensorState) + self.nightscoutDataManager.uploadGlucose(values, sensorState: manager.sensorState, fromDevice: manager.device) case .failure: break } diff --git a/Loop/Managers/NightscoutDataManager.swift b/Loop/Managers/NightscoutDataManager.swift index ea8899ea15..f276d94b3f 100644 --- a/Loop/Managers/NightscoutDataManager.swift +++ b/Loop/Managers/NightscoutDataManager.swift @@ -406,12 +406,17 @@ final class NightscoutDataManager { uploader.uploadDeviceStatus(deviceStatus) } - func uploadGlucose(_ values: [GlucoseValue], sensorState: SensorDisplayable?) { + func uploadGlucose(_ values: [GlucoseValue], sensorState: SensorDisplayable?, fromDevice device: HKDevice?) { guard let uploader = deviceManager.remoteDataManager.nightscoutService.uploader else { return } - - let device = "loop://\(UIDevice.current.name)" + + var deviceStr: String + if let device = device { + deviceStr = [device.name, device.manufacturer, device.model, device.firmwareVersion, device.softwareVersion].compactMap { $0 }.joined(separator: " ") + } else { + deviceStr = "loop://unknowndevice" + } let direction: String? = { switch sensorState?.trendType { case .up?: @@ -434,9 +439,10 @@ final class NightscoutDataManager { glucoseMGDL: Int(value.quantity.doubleValue(for: .milligramsPerDeciliter)), at: value.startDate, direction: direction, - device: device + device: deviceStr ) } + uploader.flushAll(); } }