@ovok/native 1.6.54 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commonjs/modules/bt-device/constants/device-instruction-pdfs.js +2 -1
- package/lib/commonjs/modules/bt-device/constants/device-instruction-pdfs.js.map +1 -1
- package/lib/commonjs/modules/bt-device/constants/device-list-items.js +7 -0
- package/lib/commonjs/modules/bt-device/constants/device-list-items.js.map +1 -1
- package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-assets.js +3 -1
- package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-assets.js.map +1 -1
- package/lib/commonjs/modules/bt-device/constants/supported-devices.js +11 -2
- package/lib/commonjs/modules/bt-device/constants/supported-devices.js.map +1 -1
- package/lib/commonjs/modules/bt-management/core/resolve-device-key.js +6 -1
- package/lib/commonjs/modules/bt-management/core/resolve-device-key.js.map +1 -1
- package/lib/commonjs/modules/bt-management/index.js +48 -0
- package/lib/commonjs/modules/bt-management/index.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/bt-manager.js +9 -17
- package/lib/commonjs/modules/bt-management/services/bt-manager.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/device-classes.js +3 -1
- package/lib/commonjs/modules/bt-management/services/device-classes.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/device-creator.js +9 -7
- package/lib/commonjs/modules/bt-management/services/device-creator.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.device.js +1 -7
- package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.device.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js +1 -5
- package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-command-writer.js +2 -8
- package/lib/commonjs/modules/bt-management/services/devices/bt-command-writer.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-connection-handler.js +33 -33
- package/lib/commonjs/modules/bt-management/services/devices/bt-connection-handler.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-device-information.js +2 -3
- package/lib/commonjs/modules/bt-management/services/devices/bt-device-information.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js +8 -24
- package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/custom/custom-lepu-sequencer.js +0 -3
- package/lib/commonjs/modules/bt-management/services/devices/custom/custom-lepu-sequencer.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/trasense/s9-advertisement.js +31 -0
- package/lib/commonjs/modules/bt-management/services/devices/trasense/s9-advertisement.js.map +1 -0
- package/lib/commonjs/modules/bt-management/services/devices/trasense/s9-frame-reader.js +27 -0
- package/lib/commonjs/modules/bt-management/services/devices/trasense/s9-frame-reader.js.map +1 -0
- package/lib/commonjs/modules/bt-management/services/devices/trasense/s9.command-sequencer.js +340 -0
- package/lib/commonjs/modules/bt-management/services/devices/trasense/s9.command-sequencer.js.map +1 -0
- package/lib/commonjs/modules/bt-management/services/devices/trasense/s9.device.js +74 -0
- package/lib/commonjs/modules/bt-management/services/devices/trasense/s9.device.js.map +1 -0
- package/lib/commonjs/modules/bt-management/types/clock-sync.js +1 -0
- package/lib/commonjs/modules/bt-management/types/clock-sync.js.map +1 -1
- package/lib/commonjs/modules/bt-management/types/integrated-devices.js +1 -0
- package/lib/commonjs/modules/bt-management/types/integrated-devices.js.map +1 -1
- package/lib/commonjs/modules/ui/components/pairing-flow.js +8 -2
- package/lib/commonjs/modules/ui/components/pairing-flow.js.map +1 -1
- package/lib/module/modules/bt-device/constants/device-instruction-pdfs.js +2 -1
- package/lib/module/modules/bt-device/constants/device-instruction-pdfs.js.map +1 -1
- package/lib/module/modules/bt-device/constants/device-list-items.js +7 -0
- package/lib/module/modules/bt-device/constants/device-list-items.js.map +1 -1
- package/lib/module/modules/bt-device/constants/supported-device-catalog-assets.js +3 -1
- package/lib/module/modules/bt-device/constants/supported-device-catalog-assets.js.map +1 -1
- package/lib/module/modules/bt-device/constants/supported-devices.js +12 -3
- package/lib/module/modules/bt-device/constants/supported-devices.js.map +1 -1
- package/lib/module/modules/bt-management/core/resolve-device-key.js +6 -1
- package/lib/module/modules/bt-management/core/resolve-device-key.js.map +1 -1
- package/lib/module/modules/bt-management/index.js +4 -0
- package/lib/module/modules/bt-management/index.js.map +1 -1
- package/lib/module/modules/bt-management/services/bt-manager.js +9 -17
- package/lib/module/modules/bt-management/services/bt-manager.js.map +1 -1
- package/lib/module/modules/bt-management/services/device-classes.js +3 -1
- package/lib/module/modules/bt-management/services/device-classes.js.map +1 -1
- package/lib/module/modules/bt-management/services/device-creator.js +9 -7
- package/lib/module/modules/bt-management/services/device-creator.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bp2/bp2.device.js +1 -7
- package/lib/module/modules/bt-management/services/devices/bp2/bp2.device.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js +1 -5
- package/lib/module/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-command-writer.js +2 -8
- package/lib/module/modules/bt-management/services/devices/bt-command-writer.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-connection-handler.js +33 -33
- package/lib/module/modules/bt-management/services/devices/bt-connection-handler.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-data-processor.js +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-device-information.js +2 -3
- package/lib/module/modules/bt-management/services/devices/bt-device-information.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-managed-device.js +8 -24
- package/lib/module/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/custom/custom-lepu-sequencer.js +0 -3
- package/lib/module/modules/bt-management/services/devices/custom/custom-lepu-sequencer.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/trasense/s9-advertisement.js +26 -0
- package/lib/module/modules/bt-management/services/devices/trasense/s9-advertisement.js.map +1 -0
- package/lib/module/modules/bt-management/services/devices/trasense/s9-frame-reader.js +22 -0
- package/lib/module/modules/bt-management/services/devices/trasense/s9-frame-reader.js.map +1 -0
- package/lib/module/modules/bt-management/services/devices/trasense/s9.command-sequencer.js +336 -0
- package/lib/module/modules/bt-management/services/devices/trasense/s9.command-sequencer.js.map +1 -0
- package/lib/module/modules/bt-management/services/devices/trasense/s9.device.js +69 -0
- package/lib/module/modules/bt-management/services/devices/trasense/s9.device.js.map +1 -0
- package/lib/module/modules/bt-management/types/clock-sync.js +1 -0
- package/lib/module/modules/bt-management/types/clock-sync.js.map +1 -1
- package/lib/module/modules/bt-management/types/device-measurement-map.js.map +1 -1
- package/lib/module/modules/bt-management/types/integrated-devices.js +1 -0
- package/lib/module/modules/bt-management/types/integrated-devices.js.map +1 -1
- package/lib/module/modules/ui/components/pairing-flow.js +8 -2
- package/lib/module/modules/ui/components/pairing-flow.js.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-device/constants/device-instruction-pdfs.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-device/constants/device-list-items.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts +3 -1
- package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-devices.d.ts +7 -0
- package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/core/resolve-device-key.d.ts +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/core/resolve-device-key.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts +4 -0
- package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/bt-manager.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/device-classes.d.ts +2 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/device-classes.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/device-creator.d.ts +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/device-creator.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bp2/bp2.device.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-command-writer.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-connection-handler.d.ts +2 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-connection-handler.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-device-information.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/custom/custom-lepu-sequencer.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/trasense/s9-advertisement.d.ts +8 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/trasense/s9-advertisement.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/trasense/s9-frame-reader.d.ts +7 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/trasense/s9-frame-reader.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/trasense/s9.command-sequencer.d.ts +63 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/trasense/s9.command-sequencer.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/trasense/s9.device.d.ts +18 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/trasense/s9.device.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/clock-sync.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/device-connection-event.d.ts +5 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/device-connection-event.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/device-data.d.ts +2 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/device-data.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts +3 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/integrated-devices.d.ts +2 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/integrated-devices.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/data-sync/services/managers/sync-progress-manager.d.ts +1 -1
- package/lib/typescript/commonjs/src/modules/data-sync/utils/get-samples-from-health.d.ts +1 -1
- package/lib/typescript/commonjs/src/modules/ui/components/pairing-flow.d.ts +1 -0
- package/lib/typescript/commonjs/src/modules/ui/components/pairing-flow.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-device/constants/device-instruction-pdfs.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-device/constants/device-list-items.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts +3 -1
- package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-device/constants/supported-devices.d.ts +7 -0
- package/lib/typescript/module/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/core/resolve-device-key.d.ts +1 -1
- package/lib/typescript/module/src/modules/bt-management/core/resolve-device-key.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/index.d.ts +4 -0
- package/lib/typescript/module/src/modules/bt-management/index.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/bt-manager.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/device-classes.d.ts +2 -0
- package/lib/typescript/module/src/modules/bt-management/services/device-classes.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/device-creator.d.ts +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/device-creator.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bp2/bp2.device.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-command-writer.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-connection-handler.d.ts +2 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-connection-handler.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-device-information.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/custom/custom-lepu-sequencer.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/trasense/s9-advertisement.d.ts +8 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/trasense/s9-advertisement.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/trasense/s9-frame-reader.d.ts +7 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/trasense/s9-frame-reader.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/trasense/s9.command-sequencer.d.ts +63 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/trasense/s9.command-sequencer.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/trasense/s9.device.d.ts +18 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/trasense/s9.device.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/types/clock-sync.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/device-connection-event.d.ts +5 -1
- package/lib/typescript/module/src/modules/bt-management/types/device-connection-event.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/device-data.d.ts +2 -0
- package/lib/typescript/module/src/modules/bt-management/types/device-data.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts +3 -0
- package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/integrated-devices.d.ts +2 -1
- package/lib/typescript/module/src/modules/bt-management/types/integrated-devices.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/data-sync/services/managers/sync-progress-manager.d.ts +1 -1
- package/lib/typescript/module/src/modules/data-sync/utils/get-samples-from-health.d.ts +1 -1
- package/lib/typescript/module/src/modules/ui/components/pairing-flow.d.ts +1 -0
- package/lib/typescript/module/src/modules/ui/components/pairing-flow.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["resolveDeviceKey","isCustomDeviceDefinition","BUILT_IN_DEVICE_CLASSES","DEVICE_CLASSES","CustomDevice","collectCustomDevices","acceptedDevices","customDevices","Map","matchers","Set","forEach","entry","index","Error","has","id","matchByService","nameMatch","source","set","add","DeviceCreator","deviceNameCache","CACHE_MAX_SIZE","constructor","acceptedDeviceNames","getDeviceName","foundName","serviceUUIDs","normalizedServices","map","uuid","toLowerCase","size","undefined","matchDeviceName","get","matched","cacheDeviceName","createDevice","params","String","deviceName","trim","device","name","localName","custom","deviceClass","Object","keys","join","destroy","clear","deviceType","firstKey","next","value","delete"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/services/device-creator.ts"],"mappings":";;AAAA,SAASA,gBAAgB,QAAQ,+BAA4B;AAM7D,SAASC,wBAAwB,QAAQ,yCAAsC;AAE/E,SACEC,uBAAuB,IAAIC,cAAc,QAEpC,qBAAkB;AAEzB,SAASC,YAAY,QAAQ,mCAAgC;
|
|
1
|
+
{"version":3,"names":["resolveDeviceKey","isCustomDeviceDefinition","BUILT_IN_DEVICE_CLASSES","DEVICE_CLASSES","CustomDevice","isTrasenseS9Advertisement","collectCustomDevices","acceptedDevices","customDevices","Map","matchers","Set","forEach","entry","index","Error","has","id","matchByService","nameMatch","source","set","add","DeviceCreator","deviceNameCache","CACHE_MAX_SIZE","constructor","acceptedDeviceNames","getDeviceName","foundName","serviceUUIDs","manufacturerData","normalizedServices","map","uuid","toLowerCase","size","undefined","matchDeviceName","cacheKey","JSON","stringify","get","matched","cacheDeviceName","createDevice","params","String","deviceName","trim","device","name","localName","custom","deviceClass","Object","keys","join","destroy","clear","deviceType","firstKey","next","value","delete"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/services/device-creator.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -126,13 +126,7 @@ class BP2Device extends BTManagedDevice {
|
|
|
126
126
|
// Duration + special_status + pulse_rate + reserved[10]
|
|
127
127
|
const duration = le32FromHex(data, 0x0a);
|
|
128
128
|
if (duration < this.duration) {
|
|
129
|
-
|
|
130
|
-
sentryLogger("info", "BT_MANAGER: BP2 ECG stream restarted", {
|
|
131
|
-
deviceId: this.deviceData.id,
|
|
132
|
-
previousDuration: this.duration,
|
|
133
|
-
duration,
|
|
134
|
-
droppedSamples
|
|
135
|
-
});
|
|
129
|
+
sentryLogger("info", "BT_MANAGER: BP2 ECG stream restarted");
|
|
136
130
|
this.diagramPoints = [];
|
|
137
131
|
this.onDeviceStatusChanged?.(DeviceStatus.MEASURING, MeasurementTypeKey.ecg);
|
|
138
132
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["MeasurementTypeKey","EcgDiagnosticFlag","BloodPressureStates","sentryLogger","bloodPressureTranslatedExceptionMap","CaseType","DeviceStatus","hexToByte","i16FromHex","le16FromHex","le32FromHex","BTManagedDevice","decodeBP2File","recordedAtFromLocalSeconds","BP2FrameReader","BP2HistorySequencer","bp2MainServices","BP2_PREFERRED_MTU","BP2_ECG_MILLIVOLTS_PER_COUNT","BP2_ECG_SAMPLES_PER_SECOND","BP2_ECG_SAMPLE_TOLERANCE","BP2_ECG_NO_VALUE","BP2_BP_NO_VALUE","BP2_PULSE_NO_VALUES","Set","BP2Device","collectedValues","diagramPoints","duration","historyMode","historyRequested","pendingResults","Map","reportedFileNames","mainServices","stuckDataTimeout","constructor","device","params","clockSync","deliveredFileNames","deliveredEcgFileNames","onStreamStart","lastLiveResultSignature","undefined","createCommandSequencer","clear","service","write","writeUuid","serviceUuid","uuid","characteristicUuid","onFile","handleHistoryFile","onError","handleHistoryError","onTransferFinished","reportPendingResults","shouldStartTransfer","onTransferRequested","onOrphanStreamEnd","skipFiles","frameReader","preferredMtu","handleSuccessResult","successResult","measurementTypeKey","caseType","Error","ecg","handleEcgResult","bloodPressure","handleBloodPressureResult","RESULT","addDeviceTimestamp","error","checkIfHasErrorForEcg","queueHistoryResult","onResult","handleEcgStream","lenL","lenH","dataLen","dataStart","dataEnd","data","slice","droppedSamples","length","deviceId","deviceData","id","previousDuration","onDeviceStatusChanged","MEASURING","samplingNum","samplesStart","i","byteIndexInData","sampleVal","push","checkIfHasErrorForBloodPressure","result","recordedAt","bpMeasurement","status","diastolic","systolic","heartRate","REGULAR","errorString","get","DEVICE_ERROR","has","signature","signatureFor","set","join","diagnosticResult","file","name","decoded","content","pending","add","matchesPendingResult","delete","pendingBloodPressure","decodedBloodPressure","pendingEcg","decodedEcg","reason","forEach","ecgMeasurement","POOR_WAVEFORM","LEAD_OFF","expectedSamples"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bp2/bp2.device.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["MeasurementTypeKey","EcgDiagnosticFlag","BloodPressureStates","sentryLogger","bloodPressureTranslatedExceptionMap","CaseType","DeviceStatus","hexToByte","i16FromHex","le16FromHex","le32FromHex","BTManagedDevice","decodeBP2File","recordedAtFromLocalSeconds","BP2FrameReader","BP2HistorySequencer","bp2MainServices","BP2_PREFERRED_MTU","BP2_ECG_MILLIVOLTS_PER_COUNT","BP2_ECG_SAMPLES_PER_SECOND","BP2_ECG_SAMPLE_TOLERANCE","BP2_ECG_NO_VALUE","BP2_BP_NO_VALUE","BP2_PULSE_NO_VALUES","Set","BP2Device","collectedValues","diagramPoints","duration","historyMode","historyRequested","pendingResults","Map","reportedFileNames","mainServices","stuckDataTimeout","constructor","device","params","clockSync","deliveredFileNames","deliveredEcgFileNames","onStreamStart","lastLiveResultSignature","undefined","createCommandSequencer","clear","service","write","writeUuid","serviceUuid","uuid","characteristicUuid","onFile","handleHistoryFile","onError","handleHistoryError","onTransferFinished","reportPendingResults","shouldStartTransfer","onTransferRequested","onOrphanStreamEnd","skipFiles","frameReader","preferredMtu","handleSuccessResult","successResult","measurementTypeKey","caseType","Error","ecg","handleEcgResult","bloodPressure","handleBloodPressureResult","RESULT","addDeviceTimestamp","error","checkIfHasErrorForEcg","queueHistoryResult","onResult","handleEcgStream","lenL","lenH","dataLen","dataStart","dataEnd","data","slice","onDeviceStatusChanged","MEASURING","samplingNum","samplesStart","i","byteIndexInData","sampleVal","push","checkIfHasErrorForBloodPressure","result","recordedAt","length","bpMeasurement","status","diastolic","systolic","heartRate","REGULAR","errorString","get","DEVICE_ERROR","has","signature","signatureFor","set","join","diagnosticResult","file","name","decoded","content","pending","add","matchesPendingResult","delete","pendingBloodPressure","decodedBloodPressure","pendingEcg","decodedEcg","reason","forEach","ecgMeasurement","POOR_WAVEFORM","LEAD_OFF","expectedSamples"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bp2/bp2.device.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -99,11 +99,7 @@ class BP2HistorySequencer {
|
|
|
99
99
|
return;
|
|
100
100
|
}
|
|
101
101
|
if (this.lastRunStatus !== undefined) {
|
|
102
|
-
sentryLogger("info", "BT_MANAGER: BP2 run status changed"
|
|
103
|
-
from: this.lastRunStatus,
|
|
104
|
-
to: runStatus,
|
|
105
|
-
previousFrameCount: this.lastRunStatusFrameCount
|
|
106
|
-
});
|
|
102
|
+
sentryLogger("info", "BT_MANAGER: BP2 run status changed");
|
|
107
103
|
}
|
|
108
104
|
this.lastRunStatus = runStatus;
|
|
109
105
|
this.lastRunStatusFrameCount = 1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["sentryLogger","isClockSyncEnabled","hexToByte","LepuCommandBuilder","LepuCommand","clockPayload","LepuFileTransfer","lepuCommandOf","isLepuSuccess","describeLepuResponseType","BP2_REALTIME_COMMAND","BP2_RESULT_STATES","Set","BP2_ECG_STATE","BP2_IDLE_STATES","BP2_POLL_INTERVAL_MS","BP2HistorySequencer","builder","lastRunStatusFrameCount","realtimeEcgActive","phase","constructor","params","initialCommands","clockSync","write","frame","build","SET_TIME","startTransfer","isHistoryTransfer","nextCommand","undefined","onError","transfer","logRunStatus","isResult","isResultFrame","endedWithoutResult","isIdleFrame","onOrphanStreamEnd","shouldStartTransfer","onTransferRequested","delayBeforeWriteMs","onFile","skipFiles","afterTransfer","finishTransfer","onTransferFinished","pollCommand","has","toLowerCase","runStatus","lastRunStatus"
|
|
1
|
+
{"version":3,"names":["sentryLogger","isClockSyncEnabled","hexToByte","LepuCommandBuilder","LepuCommand","clockPayload","LepuFileTransfer","lepuCommandOf","isLepuSuccess","describeLepuResponseType","BP2_REALTIME_COMMAND","BP2_RESULT_STATES","Set","BP2_ECG_STATE","BP2_IDLE_STATES","BP2_POLL_INTERVAL_MS","BP2HistorySequencer","builder","lastRunStatusFrameCount","realtimeEcgActive","phase","constructor","params","initialCommands","clockSync","write","frame","build","SET_TIME","startTransfer","isHistoryTransfer","nextCommand","undefined","onError","transfer","logRunStatus","isResult","isResultFrame","endedWithoutResult","isIdleFrame","onOrphanStreamEnd","shouldStartTransfer","onTransferRequested","delayBeforeWriteMs","onFile","skipFiles","afterTransfer","finishTransfer","onTransferFinished","pollCommand","has","toLowerCase","runStatus","lastRunStatus"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bp2/bp2.history-sequencer.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { slog } from "../../../helpers/utils/s-log.js";
|
|
4
3
|
import { sentryLogger } from "../../../helpers/utils/sentry-logger.js";
|
|
4
|
+
import { toBluetoothError } from "../../types/bluetooth-error.js";
|
|
5
5
|
import { hexToBase64 } from "../../utils/hex-to-base-64.js";
|
|
6
6
|
const MAX_WRITE_ATTEMPTS = 3;
|
|
7
7
|
|
|
@@ -137,14 +137,8 @@ export class BTCommandWriter {
|
|
|
137
137
|
return true;
|
|
138
138
|
} catch (error) {
|
|
139
139
|
sentryLogger("error", "DEVICE: Error sending command", {
|
|
140
|
-
|
|
141
|
-
deviceName: this.device.name
|
|
140
|
+
errorCode: toBluetoothError(error).code
|
|
142
141
|
});
|
|
143
|
-
if (attempt === MAX_WRITE_ATTEMPTS) {
|
|
144
|
-
slog(error, "BT_CONNECTION_HANDLER: Error sending command", {
|
|
145
|
-
deviceName: this.device.name
|
|
146
|
-
});
|
|
147
|
-
}
|
|
148
142
|
}
|
|
149
143
|
}
|
|
150
144
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["sentryLogger","toBluetoothError","hexToBase64","MAX_WRITE_ATTEMPTS","DEFAULT_ATT_MTU","ATT_WRITE_HEADER_BYTES","BTCommandWriter","pendingWrites","Promise","resolve","mtu","constructor","device","onError","useNegotiatedMtu","Number","isInteger","reset","send","commands","then","writeInOrder","catch","error","command","writeCommand","delayBeforeWriteMs","setTimeout","chunk","chunksOf","frame","written","writeChunk","writeTo","value","withoutResponse","writeCharacteristicWithoutResponseForService","serviceUuid","characteristicUuid","writeCharacteristicWithResponseForService","size","Math","max","chunks","start","length","push","slice","attempt","isConnected","join","errorCode","code"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-command-writer.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,6 +11,7 @@ import { BTCommandWriter } from "./bt-command-writer.js";
|
|
|
11
11
|
import { readDeviceInformation } from "./bt-device-information.js";
|
|
12
12
|
export class BTConnectionHandler {
|
|
13
13
|
characteristicSubscriptions = [];
|
|
14
|
+
disconnectObserved = false;
|
|
14
15
|
constructor(device, mainServices, callbacks, preferredMtu) {
|
|
15
16
|
this.device = device;
|
|
16
17
|
this.mainServices = mainServices;
|
|
@@ -20,54 +21,50 @@ export class BTConnectionHandler {
|
|
|
20
21
|
}
|
|
21
22
|
connect = async () => {
|
|
22
23
|
const startedAt = Date.now();
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
deviceName: this.device.name ?? "unknown"
|
|
26
|
-
});
|
|
24
|
+
this.disconnectObserved = false;
|
|
25
|
+
const span = startOvokSpan("bluetooth.connect");
|
|
27
26
|
try {
|
|
28
27
|
await this.connectWithRetries();
|
|
29
28
|
await this.requestPreferredMtu();
|
|
30
29
|
await this.device.discoverAllServicesAndCharacteristics();
|
|
31
30
|
await readDeviceInformation(this.device, this.callbacks.onDeviceInfo);
|
|
32
31
|
await this.readBatteryLevel();
|
|
32
|
+
if (this.disconnectObserved || !(await this.device.isConnected())) {
|
|
33
|
+
throw new Error("Device disconnected during connection setup");
|
|
34
|
+
}
|
|
33
35
|
this.callbacks.onStatusChanged?.(DeviceStatus.CONNECTED);
|
|
34
|
-
this.onDisconnectSubscription = this.device.onDisconnected(this.onDeviceDisconnected);
|
|
35
36
|
await this.subscribeToAllCharacteristics();
|
|
36
37
|
span?.setStatus?.({
|
|
37
38
|
code: 1
|
|
38
39
|
});
|
|
39
40
|
} catch (error) {
|
|
41
|
+
const errorCode = toBluetoothError(error).code;
|
|
40
42
|
sentryLogger("error", "BT_MANAGER: Error connecting to device", {
|
|
41
|
-
|
|
42
|
-
deviceName: this.device.name
|
|
43
|
+
errorCode
|
|
43
44
|
});
|
|
44
45
|
this.callbacks.onError?.(error);
|
|
45
46
|
if (toBluetoothError(error).code === BluetoothErrorCode.PAIRING_REQUIRED) {
|
|
46
47
|
recordOvokMetric("ovok.pairing.failures", 1, {
|
|
47
|
-
|
|
48
|
-
deviceName: this.device.name ?? "unknown"
|
|
48
|
+
errorCode
|
|
49
49
|
});
|
|
50
50
|
addOvokSpanEvent("pairing.failed", {
|
|
51
|
-
|
|
52
|
-
deviceName: this.device.name ?? "unknown"
|
|
51
|
+
errorCode
|
|
53
52
|
}, span);
|
|
54
53
|
this.callbacks.onConnectionEvent?.({
|
|
55
54
|
kind: "pairing",
|
|
56
55
|
pairingCodeRequired: true
|
|
57
56
|
});
|
|
58
57
|
}
|
|
59
|
-
this.
|
|
60
|
-
|
|
58
|
+
if (!this.disconnectObserved) {
|
|
59
|
+
this.callbacks.onStatusChanged?.(DeviceStatus.DISCONNECTED);
|
|
60
|
+
}
|
|
61
61
|
span?.setStatus?.({
|
|
62
62
|
code: 2,
|
|
63
|
-
message:
|
|
63
|
+
message: errorCode
|
|
64
64
|
});
|
|
65
65
|
throw error;
|
|
66
66
|
} finally {
|
|
67
|
-
recordOvokDuration("ovok.device.connection.duration", Date.now() - startedAt
|
|
68
|
-
deviceId: this.device.id,
|
|
69
|
-
deviceName: this.device.name ?? "unknown"
|
|
70
|
-
});
|
|
67
|
+
recordOvokDuration("ovok.device.connection.duration", Date.now() - startedAt);
|
|
71
68
|
span?.end();
|
|
72
69
|
}
|
|
73
70
|
};
|
|
@@ -76,6 +73,7 @@ export class BTConnectionHandler {
|
|
|
76
73
|
this.characteristicSubscriptions = [];
|
|
77
74
|
this.writer.reset();
|
|
78
75
|
this.onDisconnectSubscription?.remove();
|
|
76
|
+
this.onDisconnectSubscription = undefined;
|
|
79
77
|
};
|
|
80
78
|
|
|
81
79
|
/** Sends commands to the device, in order, one at a time. */
|
|
@@ -95,11 +93,10 @@ export class BTConnectionHandler {
|
|
|
95
93
|
const negotiated = await this.device.requestMTU(this.preferredMtu);
|
|
96
94
|
this.writer.useNegotiatedMtu(negotiated?.mtu ?? this.device.mtu);
|
|
97
95
|
} catch (error) {
|
|
96
|
+
const errorCode = toBluetoothError(error).code;
|
|
98
97
|
sentryLogger("info", "DEVICE: MTU request was not granted", {
|
|
99
|
-
deviceId: this.device.id,
|
|
100
|
-
deviceName: this.device.name,
|
|
101
98
|
requestedMtu: this.preferredMtu,
|
|
102
|
-
|
|
99
|
+
errorCode
|
|
103
100
|
});
|
|
104
101
|
}
|
|
105
102
|
};
|
|
@@ -132,26 +129,23 @@ export class BTConnectionHandler {
|
|
|
132
129
|
while (!connected && retryCount < maxRetries) {
|
|
133
130
|
connected = await this.device.isConnected();
|
|
134
131
|
if (connected) {
|
|
132
|
+
this.listenForDisconnect();
|
|
135
133
|
return;
|
|
136
134
|
}
|
|
137
135
|
try {
|
|
138
136
|
await this.device.connect();
|
|
137
|
+
this.listenForDisconnect();
|
|
139
138
|
connected = true;
|
|
140
139
|
} catch (error) {
|
|
141
140
|
retryCount++;
|
|
141
|
+
const errorCode = toBluetoothError(error).code;
|
|
142
142
|
sentryLogger("error", "DEVICE: Connection failed", {
|
|
143
|
-
|
|
144
|
-
deviceName: this.device.name,
|
|
145
|
-
error: error instanceof Error ? error.message : String(error),
|
|
146
|
-
errorCode: error?.errorCode,
|
|
143
|
+
errorCode,
|
|
147
144
|
retryCount
|
|
148
145
|
});
|
|
149
146
|
if (retryCount >= maxRetries) {
|
|
150
147
|
sentryLogger("error", "DEVICE: Connection failed after all retries", {
|
|
151
|
-
|
|
152
|
-
deviceName: this.device.name,
|
|
153
|
-
error: error instanceof Error ? error.message : String(error),
|
|
154
|
-
errorCode: error?.errorCode,
|
|
148
|
+
errorCode,
|
|
155
149
|
willRetry: retryCount < maxRetries
|
|
156
150
|
});
|
|
157
151
|
throw error;
|
|
@@ -160,10 +154,16 @@ export class BTConnectionHandler {
|
|
|
160
154
|
}
|
|
161
155
|
}
|
|
162
156
|
};
|
|
157
|
+
listenForDisconnect = () => {
|
|
158
|
+
this.onDisconnectSubscription?.remove();
|
|
159
|
+
this.onDisconnectSubscription = this.device.onDisconnected(this.onDeviceDisconnected);
|
|
160
|
+
};
|
|
163
161
|
onDeviceDisconnected = error => {
|
|
162
|
+
this.disconnectObserved = true;
|
|
164
163
|
sentryLogger("info", "BT_MANAGER: On device disconnected", {
|
|
165
|
-
error
|
|
166
|
-
|
|
164
|
+
...(error ? {
|
|
165
|
+
errorCode: toBluetoothError(error).code
|
|
166
|
+
} : {})
|
|
167
167
|
});
|
|
168
168
|
if (error && !this.callbacks.isNormalDisconnect?.()) {
|
|
169
169
|
this.callbacks.onError?.(error);
|
|
@@ -205,9 +205,9 @@ export class BTConnectionHandler {
|
|
|
205
205
|
this.callbacks.onCommandSent?.();
|
|
206
206
|
}
|
|
207
207
|
} catch (error) {
|
|
208
|
+
const errorCode = toBluetoothError(error).code;
|
|
208
209
|
sentryLogger("error", "DEVICE: Error subscribing to all characteristics", {
|
|
209
|
-
|
|
210
|
-
deviceName: this.device.name
|
|
210
|
+
errorCode
|
|
211
211
|
});
|
|
212
212
|
this.callbacks.onError?.(error);
|
|
213
213
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["sentryLogger","addOvokSpanEvent","recordOvokDuration","recordOvokMetric","startOvokSpan","BluetoothErrorCode","toBluetoothError","DeviceStatus","base64ToHex","BTCommandWriter","readDeviceInformation","BTConnectionHandler","characteristicSubscriptions","constructor","device","mainServices","callbacks","preferredMtu","writer","onError","connect","startedAt","Date","now","span","
|
|
1
|
+
{"version":3,"names":["sentryLogger","addOvokSpanEvent","recordOvokDuration","recordOvokMetric","startOvokSpan","BluetoothErrorCode","toBluetoothError","DeviceStatus","base64ToHex","BTCommandWriter","readDeviceInformation","BTConnectionHandler","characteristicSubscriptions","disconnectObserved","constructor","device","mainServices","callbacks","preferredMtu","writer","onError","connect","startedAt","Date","now","span","connectWithRetries","requestPreferredMtu","discoverAllServicesAndCharacteristics","onDeviceInfo","readBatteryLevel","isConnected","Error","onStatusChanged","CONNECTED","subscribeToAllCharacteristics","setStatus","code","error","errorCode","PAIRING_REQUIRED","onConnectionEvent","kind","pairingCodeRequired","DISCONNECTED","message","end","destroy","forEach","sub","remove","reset","onDisconnectSubscription","undefined","sendCommands","commands","send","negotiated","requestMTU","useNegotiatedMtu","mtu","requestedMtu","characteristic","readCharacteristicForService","value","Number","parseInt","isFinite","batteryLevel","maxRetries","retryDelay","maxDelay","connected","retryCount","listenForDisconnect","willRetry","Promise","resolve","setTimeout","Math","min","pow","onDisconnected","onDeviceDisconnected","isNormalDisconnect","mainService","monitorUuid","monitorUuids","subscription","monitorCharacteristicForService","uuid","result","processData","hexValue","onDataReceived","push","initialCommands","length","onCommandSent"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-connection-handler.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["sentryLogger","CaseType","FrameReadStatus","FrameParser","MeasurementStateMachine","BTDataProcessor","buffers","Map","constructor","device","mainServices","stuckDataTimeoutDuration","callbacks","frameReader","frameParser","measurementState","onStatusChanged","onStreamStart","onMeasurementEnd","onResult","currentUuid","destroy","clear","reset","clearTimeout","stuckDataTimeout","undefined","commandTimeout","processData","uuid","hexValue","String","toLowerCase","buffer","get","push","set","startStuckTimeout","readFramesFromBuffer","readWholeBuffer","armStuckTimeout","armCommandTimeout","startCommandTimeout","reader","length","result","readFrame","hasProgressed","consumedBytes","splice","status","COMPLETE","handleFrame","frame","answerFrame","CORRUPT","reportCorruptFrame","INCOMPLETE","validatePackage","progress","commandProgress","commands","nextCommand","sendCommands","data","parse","
|
|
1
|
+
{"version":3,"names":["sentryLogger","CaseType","FrameReadStatus","FrameParser","MeasurementStateMachine","BTDataProcessor","buffers","Map","constructor","device","mainServices","stuckDataTimeoutDuration","callbacks","frameReader","frameParser","measurementState","onStatusChanged","onStreamStart","onMeasurementEnd","onResult","currentUuid","destroy","clear","reset","clearTimeout","stuckDataTimeout","undefined","commandTimeout","processData","uuid","hexValue","String","toLowerCase","buffer","get","push","set","startStuckTimeout","readFramesFromBuffer","readWholeBuffer","armStuckTimeout","armCommandTimeout","startCommandTimeout","reader","length","result","readFrame","hasProgressed","consumedBytes","splice","status","COMPLETE","handleFrame","frame","answerFrame","CORRUPT","reportCorruptFrame","INCOMPLETE","validatePackage","progress","commandProgress","commands","nextCommand","sendCommands","data","parse","frameLength","dependentData","parsingCase","caseType","DEPENDENT","handleDependentResult","isMeasuring","measuring","advance","onError","Error","cause","message","setTimeout","cancelConnection","duration","commandTimeoutMs","onCommandTimeout","terminal"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-data-processor.ts"],"mappings":";;AAAA;;AAIA,SAASA,YAAY,QAAQ,yCAAsC;AACnE,SAASC,QAAQ,QAAQ,0BAAuB;AAKhD,SAASC,eAAe,QAAQ,kCAA+B;AAK/D,SAASC,WAAW,QAAQ,mBAAgB;AAC5C,SAASC,uBAAuB,QAAQ,gCAA6B;AAuCrE,OAAO,MAAMC,eAAe,CAAwB;EAClD;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACUC,OAAO,GAAG,IAAIC,GAAG,CAAmB,CAAC;EAK7CC,WAAWA,CACQC,MAAc,EAC/BC,YAA2C,EAC1BC,wBAAgC,EAChCC,SAAoC,EACpCC,WAAyB,EAC1C;IAAA,KALiBJ,MAAc,GAAdA,MAAc;IAAA,KAEdE,wBAAgC,GAAhCA,wBAAgC;IAAA,KAChCC,SAAoC,GAApCA,SAAoC;IAAA,KACpCC,WAAyB,GAAzBA,WAAyB;IAE1C,IAAI,CAACC,WAAW,GAAG,IAAIX,WAAW,CAACO,YAAY,CAAC;IAChD,IAAI,CAACK,gBAAgB,GAAG,IAAIX,uBAAuB,CAAC;MAClDY,eAAe,EAAEJ,SAAS,CAACI,eAAe;MAC1CC,aAAa,EAAEL,SAAS,CAACK,aAAa;MACtCC,gBAAgB,EAAEN,SAAS,CAACM,gBAAgB;MAC5CC,QAAQ,EAAEP,SAAS,CAACO;IACtB,CAAC,CAAC;EACJ;EAEQC,WAAW,GAAW,EAAE;EAEzBC,OAAO,GAAGA,CAAA,KAAM;IACrB,IAAI,CAACf,OAAO,CAACgB,KAAK,CAAC,CAAC;IACpB,IAAI,CAACF,WAAW,GAAG,EAAE;IACrB,IAAI,CAACL,gBAAgB,CAACQ,KAAK,CAAC,CAAC;IAC7BC,YAAY,CAAC,IAAI,CAACC,gBAAgB,CAAC;IACnC,IAAI,CAACA,gBAAgB,GAAGC,SAAS;IACjCF,YAAY,CAAC,IAAI,CAACG,cAAc,CAAC;IACjC,IAAI,CAACA,cAAc,GAAGD,SAAS;EACjC,CAAC;EAEME,WAAW,GAAGA,CAACC,IAAY,EAAEC,QAAkB,KAAK;IACzD,IAAI,CAACV,WAAW,GAAGW,MAAM,CAACF,IAAI,IAAI,EAAE,CAAC,CAACG,WAAW,CAAC,CAAC;IAEnD,MAAMC,MAAM,GAAG,IAAI,CAAC3B,OAAO,CAAC4B,GAAG,CAAC,IAAI,CAACd,WAAW,CAAC,IAAI,EAAE;IAEvDa,MAAM,CAACE,IAAI,CAAC,GAAGL,QAAQ,CAAC;IACxB,IAAI,CAACxB,OAAO,CAAC8B,GAAG,CAAC,IAAI,CAAChB,WAAW,EAAEa,MAAM,CAAC;IAC1C,IAAI,CAACI,iBAAiB,CAAC,CAAC;IAExB,IAAI,IAAI,CAACxB,WAAW,EAAE;MACpB,IAAI,CAACyB,oBAAoB,CAAC,IAAI,CAACzB,WAAW,EAAEgB,IAAI,EAAEI,MAAM,CAAC;MAEzD;IACF;IAEA,IAAI,CAACM,eAAe,CAACV,IAAI,EAAEI,MAAM,CAAC;EACpC,CAAC;;EAED;EACOO,eAAe,GAAGA,CAAA,KAAM;IAC7B,IAAI,CAACH,iBAAiB,CAAC,CAAC;EAC1B,CAAC;;EAED;EACOI,iBAAiB,GAAGA,CAAA,KAAM;IAC/B,IAAI,CAACC,mBAAmB,CAAC,CAAC;EAC5B,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;AACA;EACUJ,oBAAoB,GAAGA,CAC7BK,MAAmB,EACnBd,IAAY,EACZI,MAAgB,KACb;IACH,OAAOA,MAAM,CAACW,MAAM,GAAG,CAAC,EAAE;MACxB,MAAMC,MAAM,GAAGF,MAAM,CAACG,SAAS,CAACb,MAAM,CAAC;MACvC,MAAMc,aAAa,GAAGF,MAAM,CAACG,aAAa,GAAG,CAAC;MAE9Cf,MAAM,CAACgB,MAAM,CAAC,CAAC,EAAEJ,MAAM,CAACG,aAAa,CAAC;MAEtC,IAAIH,MAAM,CAACK,MAAM,KAAKhD,eAAe,CAACiD,QAAQ,EAAE;QAC9C,IAAI,CAACC,WAAW,CAACvB,IAAI,EAAEgB,MAAM,CAACQ,KAAK,CAAC;QACpC,IAAI,CAACC,WAAW,CAACT,MAAM,CAACQ,KAAK,CAAC;QAE9B;MACF;MAEA,IAAIR,MAAM,CAACK,MAAM,KAAKhD,eAAe,CAACqD,OAAO,EAAE;QAC7C,IAAI,CAACC,kBAAkB,CAAC,CAAC;MAC3B;MAEA,IAAIX,MAAM,CAACK,MAAM,KAAKhD,eAAe,CAACuD,UAAU,IAAI,CAACV,aAAa,EAAE;QAClE;MACF;IACF;EACF,CAAC;;EAED;AACF;AACA;EACUR,eAAe,GAAGA,CAACV,IAAY,EAAEI,MAAgB,KAAK;IAC5D,IAAI,CAAC,IAAI,CAACrB,SAAS,CAAC8C,eAAe,CAACzB,MAAM,EAAEJ,IAAI,CAAC,EAAE;MACjD;IACF;IAEA,IAAI,CAACuB,WAAW,CAACvB,IAAI,EAAEI,MAAM,CAAC;IAC9B,IAAI,CAAC3B,OAAO,CAAC8B,GAAG,CAAC,IAAI,CAAChB,WAAW,EAAE,EAAE,CAAC;IACtC,IAAI,CAACkC,WAAW,CAACrB,MAAM,CAAC;EAC1B,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACUqB,WAAW,GAAID,KAAwB,IAAK;IAClD,MAAMM,QAAQ,GAAG,IAAI,CAAC/C,SAAS,CAACgD,eAAe,GAAGP,KAAK,CAAC,IAAI,UAAU;IACtE,MAAMQ,QAAQ,GAAG,IAAI,CAACjD,SAAS,CAACkD,WAAW,GAAGT,KAAK,CAAC;IAEpD,IAAIM,QAAQ,KAAK,UAAU,EAAE;MAC3BnC,YAAY,CAAC,IAAI,CAACG,cAAc,CAAC;MACjC,IAAI,CAACA,cAAc,GAAGD,SAAS;IACjC,CAAC,MAAM,IAAIiC,QAAQ,KAAK,SAAS,EAAE;MACjC,IAAI,CAACjB,mBAAmB,CAAC,CAAC;IAC5B;IAEA,IAAImB,QAAQ,IAAIA,QAAQ,CAACjB,MAAM,GAAG,CAAC,EAAE;MACnC,IAAI,CAAChC,SAAS,CAACmD,YAAY,GAAGF,QAAQ,CAAC;MACvC,IAAI,CAACnB,mBAAmB,CAAC,CAAC;IAC5B;EACF,CAAC;EAEOU,WAAW,GAAGA,CAACvB,IAAY,EAAEwB,KAAe,KAAK;IACvD,MAAMW,IAAI,GAAG,IAAI,CAAClD,WAAW,CAACmD,KAAK,CAACpC,IAAI,EAAEwB,KAAK,CAAC;IAEhD,IAAI,CAACW,IAAI,EAAE;MACThE,YAAY,CAAC,MAAM,EAAE,4CAA4C,EAAE;QACjE6B,IAAI;QACJqC,WAAW,EAAEb,KAAK,CAACT;MACrB,CAAC,CAAC;MAEF;IACF;;IAEA;AACJ;AACA;AACA;IACI,IAAIuB,aAAa,GAAG,IAAI;IAExB,IAAIH,IAAI,CAACI,WAAW,CAACC,QAAQ,KAAKpE,QAAQ,CAACqE,SAAS,EAAE;MACpDH,aAAa,GAAG,IAAI,CAACvD,SAAS,CAAC2D,qBAAqB,GAAG;QACrD,GAAGP,IAAI;QACPQ,WAAW,EAAE,IAAI,CAACzD,gBAAgB,CAAC0D;MACrC,CAAC,CAAC;IACJ;IAEA,IAAI,CAAC1D,gBAAgB,CAAC2D,OAAO,CAACP,aAAa,IAAIH,IAAI,EAAEX,KAAK,CAAC;EAC7D,CAAC;EAEOG,kBAAkB,GAAGA,CAAA,KAAM;IACjC,IAAI,CAAC5C,SAAS,CAAC+D,OAAO,GACpB,IAAIC,KAAK,CAAC,mDAAmD,EAAE;MAC7DC,KAAK,EAAE;QACLC,OAAO,EAAE;MACX;IACF,CAAC,CACH,CAAC;EACH,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACUzC,iBAAiB,GAAGA,CAAA,KAAM;IAChC,IAAI,IAAI,CAACZ,gBAAgB,EAAE;MACzBD,YAAY,CAAC,IAAI,CAACC,gBAAgB,CAAC;IACrC;IAEA,IAAI,CAACA,gBAAgB,GAAGsD,UAAU,CAAC,MAAM;MACvC,IAAI,CAACnE,SAAS,CAAC+D,OAAO,GACpB,IAAIC,KAAK,CAAC,2CAA2C,EAAE;QACrDC,KAAK,EAAE;UACLC,OAAO,EAAE;QACX;MACF,CAAC,CACH,CAAC;MACD,IAAI,CAACrE,MAAM,CAACuE,gBAAgB,GAAG,CAAC;IAClC,CAAC,EAAE,IAAI,CAACrE,wBAAwB,CAAC;EACnC,CAAC;EAEO+B,mBAAmB,GAAGA,CAAA,KAAM;IAClC,MAAMuC,QAAQ,GAAG,IAAI,CAACrE,SAAS,CAACsE,gBAAgB,GAAG,CAAC;IAEpD,IAAI,CAACD,QAAQ,IAAIA,QAAQ,IAAI,CAAC,EAAE;MAC9B;IACF;IAEAzD,YAAY,CAAC,IAAI,CAACG,cAAc,CAAC;IACjC,IAAI,CAACA,cAAc,GAAGoD,UAAU,CAAC,MAAM;MACrC,IAAI,CAACpD,cAAc,GAAGD,SAAS;MAE/B,MAAMmB,MAAM,GAAG,IAAI,CAACjC,SAAS,CAACuE,gBAAgB,GAAG,CAAC;MAElD,IAAItC,MAAM,EAAEgB,QAAQ,IAAIhB,MAAM,CAACgB,QAAQ,CAACjB,MAAM,GAAG,CAAC,EAAE;QAClD,IAAI,CAAChC,SAAS,CAACmD,YAAY,GAAGlB,MAAM,CAACgB,QAAQ,CAAC;QAC9C,IAAI,CAACnB,mBAAmB,CAAC,CAAC;QAE1B;MACF;MAEA,IAAIG,MAAM,EAAEuC,QAAQ,EAAE;QACpB,IAAI,CAACxE,SAAS,CAAC+D,OAAO,GACpB,IAAIC,KAAK,CAAC,+CAA+C,CAC3D,CAAC;QACD,KAAK,IAAI,CAACnE,MAAM,CAACuE,gBAAgB,GAAG,CAAC;MACvC;IACF,CAAC,EAAEC,QAAQ,CAAC;EACd,CAAC;AACH","ignoreList":[]}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { Buffer } from "buffer";
|
|
4
4
|
import { sentryLogger } from "../../../helpers/utils/sentry-logger.js";
|
|
5
|
+
import { toBluetoothError } from "../../types/bluetooth-error.js";
|
|
5
6
|
const MAX_PAIRING_RETRIES = 2;
|
|
6
7
|
const PAIRING_RETRY_DELAY_MS = 1_000;
|
|
7
8
|
const isPairingAuthenticationError = error => {
|
|
@@ -33,10 +34,8 @@ const readDeviceInformation = async (device, onDeviceInfo) => {
|
|
|
33
34
|
} catch (error) {
|
|
34
35
|
// Optional GAP/Device Information characteristics are not present on every device.
|
|
35
36
|
sentryLogger("info", "DEVICE: Optional device information unavailable", {
|
|
36
|
-
deviceId: device.id,
|
|
37
|
-
deviceName: device.name,
|
|
38
37
|
characteristicUuid,
|
|
39
|
-
|
|
38
|
+
errorCode: toBluetoothError(error).code
|
|
40
39
|
});
|
|
41
40
|
if (attempt < MAX_PAIRING_RETRIES && isPairingAuthenticationError(error)) {
|
|
42
41
|
retry.push([key, serviceUuid, characteristicUuid]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Buffer","sentryLogger","MAX_PAIRING_RETRIES","PAIRING_RETRY_DELAY_MS","isPairingAuthenticationError","error","text","Error","message","String","test","wait","milliseconds","Promise","resolve","setTimeout","readDeviceInformation","device","onDeviceInfo","read","readCharacteristicForService","info","values","pending","attempt","retry","key","serviceUuid","characteristicUuid","characteristic","call","value","from","toString","replace","trim","
|
|
1
|
+
{"version":3,"names":["Buffer","sentryLogger","toBluetoothError","MAX_PAIRING_RETRIES","PAIRING_RETRY_DELAY_MS","isPairingAuthenticationError","error","text","Error","message","String","test","wait","milliseconds","Promise","resolve","setTimeout","readDeviceInformation","device","onDeviceInfo","read","readCharacteristicForService","info","values","pending","attempt","retry","key","serviceUuid","characteristicUuid","characteristic","call","value","from","toString","replace","trim","errorCode","code","push","length","Object","keys"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-device-information.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,QAAQ;AAI/B,SAASC,YAAY,QAAQ,yCAAsC;AACnE,SAASC,gBAAgB,QAAQ,gCAA6B;AAS9D,MAAMC,mBAAmB,GAAG,CAAC;AAC7B,MAAMC,sBAAsB,GAAG,KAAK;AAEpC,MAAMC,4BAA4B,GAAIC,KAAc,IAAc;EAChE,MAAMC,IAAI,GAAGD,KAAK,YAAYE,KAAK,GAAGF,KAAK,CAACG,OAAO,GAAGC,MAAM,CAACJ,KAAK,CAAC;EAEnE,OAAO,kFAAkF,CAACK,IAAI,CAC5FJ,IACF,CAAC;AACH,CAAC;AAED,MAAMK,IAAI,GAAIC,YAAoB,IAChC,IAAIC,OAAO,CAAEC,OAAO,IAAKC,UAAU,CAACD,OAAO,EAAEF,YAAY,CAAC,CAAC;AAE7D,MAAMI,qBAAqB,GAAG,MAAAA,CAC5BC,MAAc,EACdC,YAAkD,KAChC;EAClB,MAAMC,IAAI,GAAGF,MAAM,CAACG,4BAA4B;EAEhD,IAAI,OAAOD,IAAI,KAAK,UAAU,EAAE;IAC9B;EACF;EAEA,MAAME,IAAyB,GAAG,CAAC,CAAC;EAEpC,MAAMC,MAA8D,GAAG,CACrE,CAAC,MAAM,EAAE,sCAAsC,EAAE,sCAAsC,CAAC,EACxF,CAAC,kBAAkB,EAAE,sCAAsC,EAAE,sCAAsC,CAAC,EACpG,CAAC,OAAO,EAAE,sCAAsC,EAAE,sCAAsC,CAAC,EACzF,CAAC,cAAc,EAAE,sCAAsC,EAAE,sCAAsC,CAAC,CACjG;EAED,IAAIC,OAAO,GAAGD,MAAM;EAEpB,KAAK,IAAIE,OAAO,GAAG,CAAC,EAAEA,OAAO,IAAItB,mBAAmB,EAAEsB,OAAO,IAAI,CAAC,EAAE;IAClE,MAAMC,KAAK,GAAG,EAA6B;IAE3C,KAAK,MAAM,CAACC,GAAG,EAAEC,WAAW,EAAEC,kBAAkB,CAAC,IAAIL,OAAO,EAAE;MAC5D,IAAI;QACF,MAAMM,cAAc,GAAG,MAAMV,IAAI,CAACW,IAAI,CACpCb,MAAM,EACNU,WAAW,EACXC,kBACF,CAAC;QAED,MAAMG,KAAK,GAAGF,cAAc,EAAEE,KAAK;QAEnC,IAAI,CAACA,KAAK,EAAE;UACV;QACF;QAEA,MAAMzB,IAAI,GAAGP,MAAM,CAACiC,IAAI,CAACD,KAAK,EAAE,QAAQ,CAAC,CACtCE,QAAQ,CAAC,MAAM,CAAC,CAChBC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CACnBC,IAAI,CAAC,CAAC;QAET,IAAI7B,IAAI,EAAE;UACRe,IAAI,CAACK,GAAG,CAAC,GAAGpB,IAAI;QAClB;MACF,CAAC,CAAC,OAAOD,KAAK,EAAE;QACd;QACAL,YAAY,CAAC,MAAM,EAAE,iDAAiD,EAAE;UACtE4B,kBAAkB;UAClBQ,SAAS,EAAEnC,gBAAgB,CAACI,KAAK,CAAC,CAACgC;QACrC,CAAC,CAAC;QAEF,IAAIb,OAAO,GAAGtB,mBAAmB,IAAIE,4BAA4B,CAACC,KAAK,CAAC,EAAE;UACxEoB,KAAK,CAACa,IAAI,CAAC,CAACZ,GAAG,EAAEC,WAAW,EAAEC,kBAAkB,CAAC,CAAC;QACpD;MACF;IACF;IAEA,IAAI,CAACH,KAAK,CAACc,MAAM,EAAE;MACjB;IACF;IAEA,MAAM5B,IAAI,CAACR,sBAAsB,IAAIqB,OAAO,GAAG,CAAC,CAAC,CAAC;IAClDD,OAAO,GAAGE,KAAK;EACjB;EAEA,IAAIe,MAAM,CAACC,IAAI,CAACpB,IAAI,CAAC,CAACkB,MAAM,GAAG,CAAC,EAAE;IAChCrB,YAAY,GAAGG,IAAI,CAAC;EACtB;AACF,CAAC;AAED,SAASL,qBAAqB","ignoreList":[]}
|
|
@@ -8,7 +8,6 @@ import { toBluetoothError } from "../../types/bluetooth-error.js";
|
|
|
8
8
|
import { clockSyncCapabilityForDevice } from "../../types/clock-sync.js";
|
|
9
9
|
import { DeviceStatus } from "../../types/device-status.js";
|
|
10
10
|
import { createStableResultId } from "../../utils/result-identity.js";
|
|
11
|
-
import { summariseMeasurementForLog } from "../../utils/summarise-measurement-for-log.js";
|
|
12
11
|
import { supportedMeasurementTypeKeys } from "../../utils/supported-measurement-type-keys.js";
|
|
13
12
|
import { BTConnectionHandler } from "./bt-connection-handler.js";
|
|
14
13
|
import { BTDataProcessor } from "./bt-data-processor.js";
|
|
@@ -91,10 +90,7 @@ export class BTManagedDevice {
|
|
|
91
90
|
this.device = device;
|
|
92
91
|
this.oneReadingPerConnection = oneReadingPerConnection === true;
|
|
93
92
|
this.resultPolicy = resultPolicy;
|
|
94
|
-
sentryLogger("info", "BT_MANAGER: Creating BTManagedDevice"
|
|
95
|
-
deviceId: device.id,
|
|
96
|
-
deviceName: deviceName
|
|
97
|
-
});
|
|
93
|
+
sentryLogger("info", "BT_MANAGER: Creating BTManagedDevice");
|
|
98
94
|
this.deviceData = {
|
|
99
95
|
id: device.id,
|
|
100
96
|
name: deviceName,
|
|
@@ -109,12 +105,9 @@ export class BTManagedDevice {
|
|
|
109
105
|
this.onDeviceStatusChanged = (status, measurementTypeKey) => {
|
|
110
106
|
sentryLogger("info", "BT_MANAGER: Calling onDeviceStatusChanged callback", {
|
|
111
107
|
status,
|
|
112
|
-
measurementTypeKey
|
|
113
|
-
deviceData: this.deviceData,
|
|
114
|
-
deviceName: this.deviceData.name
|
|
108
|
+
measurementTypeKey
|
|
115
109
|
});
|
|
116
110
|
addOvokSpanEvent("device.status_changed", {
|
|
117
|
-
deviceId: this.deviceData.id,
|
|
118
111
|
model: this.deviceData.name,
|
|
119
112
|
status,
|
|
120
113
|
measurementTypeKey: measurementTypeKey ?? "unknown"
|
|
@@ -126,12 +119,10 @@ export class BTManagedDevice {
|
|
|
126
119
|
});
|
|
127
120
|
};
|
|
128
121
|
this.onError = error => {
|
|
122
|
+
const normalized = toBluetoothError(error);
|
|
129
123
|
sentryLogger("error", "BT_MANAGER: Calling onError callback", {
|
|
130
|
-
|
|
131
|
-
deviceData: this.deviceData,
|
|
132
|
-
deviceName: this.deviceData.name
|
|
124
|
+
errorCode: normalized.code
|
|
133
125
|
});
|
|
134
|
-
const normalized = toBluetoothError(error);
|
|
135
126
|
const originalError = normalized.originalError;
|
|
136
127
|
onErrorCallback?.({
|
|
137
128
|
deviceData: this.deviceData,
|
|
@@ -178,19 +169,15 @@ export class BTManagedDevice {
|
|
|
178
169
|
this.resultReportedThisConnection = true;
|
|
179
170
|
this.historyResultCount += 1;
|
|
180
171
|
recordOvokMetric("ovok.readings.received", 1, {
|
|
181
|
-
deviceId: this.deviceData.id,
|
|
182
172
|
model: this.deviceData.name,
|
|
183
173
|
measurementTypeKey
|
|
184
174
|
});
|
|
185
175
|
addOvokSpanEvent("reading.received", {
|
|
186
|
-
deviceId: this.deviceData.id,
|
|
187
176
|
model: this.deviceData.name,
|
|
188
177
|
measurementTypeKey
|
|
189
178
|
});
|
|
190
179
|
sentryLogger("info", "BT_MANAGER: Calling onResult callback", {
|
|
191
|
-
|
|
192
|
-
deviceData: this.deviceData,
|
|
193
|
-
deviceName: this.deviceData.name
|
|
180
|
+
measurementTypeKey
|
|
194
181
|
});
|
|
195
182
|
if (this.historyTransferActive) {
|
|
196
183
|
onConnectionEventCallback?.({
|
|
@@ -217,10 +204,7 @@ export class BTManagedDevice {
|
|
|
217
204
|
}
|
|
218
205
|
destroy = () => {
|
|
219
206
|
this.handleMeasurementEnd();
|
|
220
|
-
sentryLogger("info", "BT_MANAGER: Destroying device"
|
|
221
|
-
deviceData: this.deviceData,
|
|
222
|
-
deviceName: this.deviceData.name
|
|
223
|
-
});
|
|
207
|
+
sentryLogger("info", "BT_MANAGER: Destroying device");
|
|
224
208
|
this.connectionHandler?.destroy();
|
|
225
209
|
this.dataProcessor?.destroy();
|
|
226
210
|
this.onError = undefined;
|
|
@@ -236,9 +220,9 @@ export class BTManagedDevice {
|
|
|
236
220
|
try {
|
|
237
221
|
await this.device.cancelConnection();
|
|
238
222
|
} catch (error) {
|
|
223
|
+
const normalized = toBluetoothError(error);
|
|
239
224
|
sentryLogger("info", "BT_MANAGER: Device was already disconnected", {
|
|
240
|
-
|
|
241
|
-
error: error instanceof Error ? error.message : String(error)
|
|
225
|
+
errorCode: normalized.code
|
|
242
226
|
});
|
|
243
227
|
}
|
|
244
228
|
};
|