@ovok/native 1.6.23 → 1.6.25
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/supported-device-catalog-entries.js +1 -1
- package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-entries.js.map +1 -1
- package/lib/commonjs/modules/bt-device/constants/supported-devices.js +1 -1
- package/lib/commonjs/modules/bt-device/constants/supported-devices.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.device.js +7 -1
- package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.device.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js +37 -0
- package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js +7 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.device-names.js +13 -4
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.device-names.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.name-match.js +3 -0
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.name-match.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.transports.js +2 -0
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.js +31 -0
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.js.map +1 -0
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.js +4 -1
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.js +9 -4
- package/lib/commonjs/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.bp-monitors.js +28 -0
- package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.bp-monitors.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.ecg-device.js +24 -3
- package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.ecg-device.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.ecg-record.js +98 -0
- package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.ecg-record.js.map +1 -0
- package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.js +215 -55
- package/lib/commonjs/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js +16 -3
- package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js.map +1 -1
- 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/utils/convert-ecg-diagnostic-flag.js +19 -27
- package/lib/commonjs/modules/bt-management/utils/convert-ecg-diagnostic-flag.js.map +1 -1
- package/lib/module/modules/bt-device/constants/supported-device-catalog-entries.js +2 -2
- package/lib/module/modules/bt-device/constants/supported-device-catalog-entries.js.map +1 -1
- package/lib/module/modules/bt-device/constants/supported-devices.js +1 -1
- package/lib/module/modules/bt-device/constants/supported-devices.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bp2/bp2.device.js +7 -1
- package/lib/module/modules/bt-management/services/devices/bp2/bp2.device.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-data-processor.js +37 -0
- package/lib/module/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bt-managed-device.js +7 -1
- package/lib/module/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.device-names.js +13 -3
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.device-names.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.name-match.js +4 -1
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.name-match.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.transports.js +2 -0
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.js +27 -0
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.js.map +1 -0
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.js +4 -1
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.js +4 -5
- package/lib/module/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/veroval/veroval.bp-monitors.js +28 -0
- package/lib/module/modules/bt-management/services/devices/veroval/veroval.bp-monitors.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/veroval/veroval.ecg-device.js +24 -3
- package/lib/module/modules/bt-management/services/devices/veroval/veroval.ecg-device.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/veroval/veroval.ecg-record.js +92 -0
- package/lib/module/modules/bt-management/services/devices/veroval/veroval.ecg-record.js.map +1 -0
- package/lib/module/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.js +211 -50
- package/lib/module/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js +16 -3
- package/lib/module/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js.map +1 -1
- 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/utils/convert-ecg-diagnostic-flag.js +19 -27
- package/lib/module/modules/bt-management/utils/convert-ecg-diagnostic-flag.js.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-entries.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-devices.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/bt-data-processor.d.ts +8 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-data-processor.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/lepu/lepu.device-names.d.ts +9 -3
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.device-names.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.name-match.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +3 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.d.ts +3 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.d.ts +2 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.bp-monitors.d.ts +11 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.bp-monitors.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.ecg-device.d.ts +2 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.ecg-device.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.ecg-record.d.ts +41 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.ecg-record.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.d.ts +50 -18
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.bp-monitors.d.ts.map +1 -1
- 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/command-sequencer.d.ts +10 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/command-sequencer.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts +4 -1
- 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/utils/convert-ecg-diagnostic-flag.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-entries.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-device/constants/supported-devices.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/bt-data-processor.d.ts +8 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/bt-data-processor.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/lepu/lepu.device-names.d.ts +9 -3
- package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.device-names.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.name-match.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +3 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.d.ts +3 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.d.ts +2 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.bp-monitors.d.ts +11 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.bp-monitors.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.ecg-device.d.ts +2 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.ecg-device.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.ecg-record.d.ts +41 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.ecg-record.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.d.ts +50 -18
- package/lib/typescript/module/src/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.bp-monitors.d.ts.map +1 -1
- 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/command-sequencer.d.ts +10 -0
- package/lib/typescript/module/src/modules/bt-management/types/command-sequencer.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts +4 -1
- 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/utils/convert-ecg-diagnostic-flag.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,35 +1,67 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ClockSyncOptions } from "../../../types/clock-sync";
|
|
2
|
+
import { CommandSequencer, CommandTimeoutResult } from "../../../types/command-sequencer";
|
|
2
3
|
import { DeviceCommand } from "../../../types/device-command";
|
|
4
|
+
import { VerovalEcgHeader } from "./veroval.ecg-record";
|
|
5
|
+
declare const DOWNLOAD_WAIT = 0;
|
|
6
|
+
declare const DOWNLOAD_MODE = 1;
|
|
7
|
+
declare const DOWNLOAD_HEADER = 2;
|
|
8
|
+
declare const DOWNLOAD_RAW = 3;
|
|
9
|
+
declare const HEADER_PACKETS = 5;
|
|
10
|
+
declare const PACKETS_PER_SEGMENT = 16;
|
|
11
|
+
declare const SEGMENT_BYTES: number;
|
|
12
|
+
declare const COMMAND_TIMEOUT_MS = 3000;
|
|
13
|
+
declare const RAW_TIMEOUT_MS = 2000;
|
|
14
|
+
declare const SET_TIME_DELAY_MS = 1500;
|
|
3
15
|
interface EcgTransferParams {
|
|
4
16
|
/** The characteristic requests are written to. */
|
|
5
17
|
write: Omit<DeviceCommand, "frame">;
|
|
6
|
-
/** Called once
|
|
7
|
-
|
|
18
|
+
/** Called once for every valid blood-pressure header or completed ECG. */
|
|
19
|
+
onRecord: (record: {
|
|
20
|
+
header: VerovalEcgHeader;
|
|
21
|
+
raw?: readonly string[];
|
|
22
|
+
}) => void;
|
|
23
|
+
clockSync?: ClockSyncOptions;
|
|
8
24
|
}
|
|
9
25
|
/**
|
|
10
|
-
* Downloads
|
|
26
|
+
* Downloads all records from the Veroval ECG/BP monitor.
|
|
11
27
|
*
|
|
12
|
-
* The
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
* paced by counting them. Notifications for live measurements, standby and device settings
|
|
16
|
-
* share the characteristic, so only the download group and command advance the transfer.
|
|
17
|
-
*
|
|
18
|
-
* A recording is thirty-four seconds at 128 Hz. Nothing is reported until all of it has
|
|
19
|
-
* arrived: a partial ECG that looked whole would be worse than none, and the count is what
|
|
20
|
-
* says it is whole.
|
|
28
|
+
* The mode reply gives the number of records in each user memory. Headers are collected first;
|
|
29
|
+
* only then does the device enter raw-download mode. This matters because a blood-pressure
|
|
30
|
+
* record is complete in its header while an ECG needs one or more raw segments.
|
|
21
31
|
*/
|
|
22
|
-
|
|
32
|
+
declare class VerovalEcgTransfer implements CommandSequencer {
|
|
23
33
|
private readonly params;
|
|
24
34
|
private phase;
|
|
25
|
-
private
|
|
35
|
+
private headerPacket;
|
|
36
|
+
private headerBytes;
|
|
37
|
+
private recordIndex;
|
|
38
|
+
private expectedRecords;
|
|
39
|
+
private headers;
|
|
40
|
+
private ecgHeaders;
|
|
41
|
+
private ecgIndex;
|
|
26
42
|
private segment;
|
|
27
|
-
private
|
|
43
|
+
private rawPacket;
|
|
44
|
+
private segmentBytes;
|
|
45
|
+
private rawBytes;
|
|
46
|
+
private lastCommand;
|
|
47
|
+
private pendingTimeout;
|
|
48
|
+
private retries;
|
|
49
|
+
private settings;
|
|
28
50
|
constructor(params: EcgTransferParams);
|
|
29
51
|
initialCommands: () => readonly DeviceCommand[];
|
|
30
52
|
nextCommand: (frame: readonly string[]) => readonly DeviceCommand[] | undefined;
|
|
31
|
-
|
|
53
|
+
commandTimeoutMs: () => number | undefined;
|
|
54
|
+
onCommandTimeout: () => CommandTimeoutResult;
|
|
55
|
+
commandProgress: (frame: readonly string[]) => "ignored" | "partial" | "complete";
|
|
56
|
+
private nextSettings;
|
|
57
|
+
private nextMode;
|
|
58
|
+
private nextHeader;
|
|
59
|
+
private nextRaw;
|
|
60
|
+
private requestMode;
|
|
61
|
+
private requestHeader;
|
|
62
|
+
private requestRaw;
|
|
32
63
|
private requestSegment;
|
|
64
|
+
private remember;
|
|
33
65
|
}
|
|
34
|
-
export {};
|
|
66
|
+
export { COMMAND_TIMEOUT_MS, DOWNLOAD_HEADER, DOWNLOAD_MODE, DOWNLOAD_RAW, DOWNLOAD_WAIT, HEADER_PACKETS, PACKETS_PER_SEGMENT, RAW_TIMEOUT_MS, SEGMENT_BYTES, SET_TIME_DELAY_MS, VerovalEcgTransfer, };
|
|
35
67
|
//# sourceMappingURL=veroval.ecg-transfer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"veroval.ecg-transfer.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"veroval.ecg-transfer.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAqC,MAAM,2BAA2B,CAAC;AAChG,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAG9D,OAAO,EAAyB,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAS/E,QAAA,MAAM,aAAa,IAAI,CAAC;AACxB,QAAA,MAAM,aAAa,IAAI,CAAC;AACxB,QAAA,MAAM,eAAe,IAAI,CAAC;AAC1B,QAAA,MAAM,YAAY,IAAI,CAAC;AAcvB,QAAA,MAAM,cAAc,IAAI,CAAC;AACzB,QAAA,MAAM,mBAAmB,KAAK,CAAC;AAC/B,QAAA,MAAM,aAAa,QAAsC,CAAC;AAE1D,QAAA,MAAM,kBAAkB,OAAQ,CAAC;AACjC,QAAA,MAAM,cAAc,OAAQ,CAAC;AAE7B,QAAA,MAAM,iBAAiB,OAAQ,CAAC;AA0EhC,UAAU,iBAAiB;IAEzB,kDAAkD;IAClD,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAEpC,0EAA0E;IAC1E,QAAQ,EAAE,CAAC,MAAM,EAAE;QACjB,MAAM,EAAE,gBAAgB,CAAC;QACzB,GAAG,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;KACzB,KAAK,IAAI,CAAC;IAEX,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAID;;;;;;GAMG;AACH,cAAM,kBAAmB,YAAW,gBAAgB;IAkB/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAjB1C,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAAa;gBAEO,MAAM,EAAE,iBAAiB;IAItD,eAAe,QAAO,SAAS,aAAa,EAAE,CAG5B;IAElB,WAAW,GAChB,OAAO,SAAS,MAAM,EAAE,KACvB,SAAS,aAAa,EAAE,GAAG,SAAS,CAkBrC;IAEK,gBAAgB,QAAO,MAAM,GAAG,SAAS,CACU;IAEnD,gBAAgB,QAAO,oBAAoB,CAwBhD;IAEK,eAAe,GACpB,OAAO,SAAS,MAAM,EAAE,KACvB,SAAS,GAAG,SAAS,GAAG,UAAU,CAgCnC;IAEF,OAAO,CAAC,YAAY,CAiBlB;IAEF,OAAO,CAAC,QAAQ,CAsBd;IAEF,OAAO,CAAC,UAAU,CAoDhB;IAEF,OAAO,CAAC,OAAO,CAgDb;IAEF,OAAO,CAAC,WAAW,CAIf;IAEJ,OAAO,CAAC,aAAa,CASnB;IAEF,OAAO,CAAC,UAAU,CAahB;IAEF,OAAO,CAAC,cAAc,CAcpB;IAEF,OAAO,CAAC,QAAQ,CAcd;CACH;AAED,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,YAAY,EACZ,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,kBAAkB,GACnB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viatom.bp-monitors.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/viatom/viatom.bp-monitors.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"viatom.bp-monitors.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/viatom/viatom.bp-monitors.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,sBAAsB,EAEvB,MAAM,yCAAyC,CAAC;AA0GjD,UAAU,cAAc;IAEtB,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC;AAED;;;;;;GAMG;AACH,QAAA,MAAM,eAAe,GACnB,gBAAgB,MAAM,EACtB,QAAQ,cAAc,KACrB,sBAYC,CAAC;AAEL,gDAAgD;AAChD,QAAA,MAAM,WAAW,GAAI,QAAQ,cAAc,KAAG,sBACb,CAAC;AAElC,kFAAkF;AAClF,QAAA,MAAM,WAAW,GAAI,QAAQ,cAAc,KAAG,sBACb,CAAC;AAElC,kFAAkF;AAClF,QAAA,MAAM,WAAW,GAAI,QAAQ,cAAc,KAAG,sBACb,CAAC;AAElC;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,eAAe,EAAE,SAAS,MAAM,EAgBrC,CAAC;AAEF,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,eAAe,EACf,eAAe,GAChB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clock-sync.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/clock-sync.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,CAAC;AAE1E,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,KAAK,CAAC;AAEhD,MAAM,WAAW,gBAAgB;IAE/B,2EAA2E;IAC3E,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,wEAAwE;IACxE,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IAEjB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED,eAAO,MAAM,kBAAkB,GAAI,UAAU,gBAAgB,KAAG,OACpC,CAAC;AAE7B,eAAO,MAAM,aAAa,GACxB,MAAM,IAAI,EACV,WAAU,iBAA2B;;;;;;;;CAoBhC,CAAC;AAER,qFAAqF;AACrF,eAAO,MAAM,4BAA4B,GACvC,YAAY,MAAM,KACjB,
|
|
1
|
+
{"version":3,"file":"clock-sync.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/clock-sync.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,mBAAmB,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,CAAC;AAE1E,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,KAAK,CAAC;AAEhD,MAAM,WAAW,gBAAgB;IAE/B,2EAA2E;IAC3E,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,wEAAwE;IACxE,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IAEjB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CAC9B;AAED,eAAO,MAAM,kBAAkB,GAAI,UAAU,gBAAgB,KAAG,OACpC,CAAC;AAE7B,eAAO,MAAM,aAAa,GACxB,MAAM,IAAI,EACV,WAAU,iBAA2B;;;;;;;;CAoBhC,CAAC;AAER,qFAAqF;AACrF,eAAO,MAAM,4BAA4B,GACvC,YAAY,MAAM,KACjB,mBAWF,CAAC"}
|
|
@@ -1,4 +1,8 @@
|
|
|
1
1
|
import { DeviceCommand } from "./device-command";
|
|
2
|
+
export interface CommandTimeoutResult {
|
|
3
|
+
commands?: readonly DeviceCommand[];
|
|
4
|
+
terminal?: boolean;
|
|
5
|
+
}
|
|
2
6
|
/**
|
|
3
7
|
* Decides what to send a device, and when.
|
|
4
8
|
*
|
|
@@ -22,6 +26,12 @@ export interface CommandSequencer {
|
|
|
22
26
|
* on the hardware actually present.
|
|
23
27
|
*/
|
|
24
28
|
nextCommand(frame: readonly string[]): readonly DeviceCommand[] | undefined;
|
|
29
|
+
/** The response timeout for the currently outstanding command, when a protocol needs one. */
|
|
30
|
+
commandTimeoutMs?(): number | undefined;
|
|
31
|
+
/** Re-sends the current command or ends the exchange after a response timeout. */
|
|
32
|
+
onCommandTimeout?(): CommandTimeoutResult;
|
|
33
|
+
/** Describes whether a frame is ignored, partial, or completes the outstanding command. */
|
|
34
|
+
commandProgress?(frame: readonly string[]): "ignored" | "partial" | "complete";
|
|
25
35
|
/** True when a timeout-style disconnect is the device's normal completion signal. */
|
|
26
36
|
isNormalDisconnect?(): boolean;
|
|
27
37
|
/** True when accepted results are records downloaded from device history. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-sequencer.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/command-sequencer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"command-sequencer.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/command-sequencer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,SAAS,aAAa,EAAE,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,gBAAgB;IAE/B,6FAA6F;IAC7F,eAAe,IAAI,SAAS,aAAa,EAAE,CAAC;IAE5C;;;;;;OAMG;IACH,WAAW,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,aAAa,EAAE,GAAG,SAAS,CAAC;IAE5E,6FAA6F;IAC7F,gBAAgB,CAAC,IAAI,MAAM,GAAG,SAAS,CAAC;IAExC,kFAAkF;IAClF,gBAAgB,CAAC,IAAI,oBAAoB,CAAC;IAE1C,2FAA2F;IAC3F,eAAe,CAAC,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;IAE/E,qFAAqF;IACrF,kBAAkB,CAAC,IAAI,OAAO,CAAC;IAE/B,6EAA6E;IAC7E,iBAAiB,CAAC,IAAI,OAAO,CAAC;CAC/B"}
|
|
@@ -15,6 +15,9 @@ type ActivityStepCountMeasurement = {
|
|
|
15
15
|
start?: Date;
|
|
16
16
|
end?: Date;
|
|
17
17
|
};
|
|
18
|
+
type VerovalEcgMeasurement = EcgMeasurement & {
|
|
19
|
+
memorySlot?: number;
|
|
20
|
+
};
|
|
18
21
|
interface DeviceMeasurementMap {
|
|
19
22
|
[IntegratedDevices.F4]: BodyWeightMeasurement;
|
|
20
23
|
[IntegratedDevices.BP2]: BloodPressureMeasurement | EcgMeasurement;
|
|
@@ -29,7 +32,7 @@ interface DeviceMeasurementMap {
|
|
|
29
32
|
[IntegratedDevices.COSINUSS]: never;
|
|
30
33
|
[IntegratedDevices.BC01]: UrineAnalyzeMeasurement;
|
|
31
34
|
[IntegratedDevices.VEROVAL_DUO_CONTROL]: BloodPressureMeasurement;
|
|
32
|
-
[IntegratedDevices.VEROVAL_ECG]:
|
|
35
|
+
[IntegratedDevices.VEROVAL_ECG]: VerovalEcgMeasurement | BloodPressureMeasurement;
|
|
33
36
|
[IntegratedDevices.VEROVAL_ACTIVITY]: ActivityHeartRateMeasurement | ActivityStepCountMeasurement;
|
|
34
37
|
[IntegratedDevices.FORA_SCALE]: never;
|
|
35
38
|
[IntegratedDevices.RPM_SCALE]: never;
|
package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device-measurement-map.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/device-measurement-map.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,cAAc,EACd,wBAAwB,EACxB,uBAAuB,EACxB,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,KAAK,4BAA4B,GAAG;IAClC,kBAAkB,EAAE,kBAAkB,CAAC,SAAS,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,GAAG,CAAC,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF,KAAK,4BAA4B,GAAG;IAClC,kBAAkB,EAAE,kBAAkB,CAAC,SAAS,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,GAAG,CAAC,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF,UAAU,oBAAoB;IAC5B,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,qBAAqB,CAAC;IAC9C,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,wBAAwB,GAAG,cAAc,CAAC;IACnE,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,wBAAwB,CAAC;IACnD,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,OAAO,YAAY,EAAE,0BAA0B,CAAC;IAC7E,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IAClC,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,wBAAwB,CAAC;IACrD,CAAC,iBAAiB,CAAC,cAAc,CAAC,EAAE,uBAAuB,CAAC;IAC5D,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACxD,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC;IACxC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;IACpC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;IACpC,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,uBAAuB,CAAC;IAClD,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,EAAE,wBAAwB,CAAC;IAClE,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"device-measurement-map.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/types/device-measurement-map.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,qBAAqB,EACrB,cAAc,EACd,wBAAwB,EACxB,uBAAuB,EACxB,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,KAAK,4BAA4B,GAAG;IAClC,kBAAkB,EAAE,kBAAkB,CAAC,SAAS,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,GAAG,CAAC,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF,KAAK,4BAA4B,GAAG;IAClC,kBAAkB,EAAE,kBAAkB,CAAC,SAAS,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,GAAG,CAAC,EAAE,IAAI,CAAC;CACZ,CAAC;AAEF,KAAK,qBAAqB,GAAG,cAAc,GAAG;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,UAAU,oBAAoB;IAC5B,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,qBAAqB,CAAC;IAC9C,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,wBAAwB,GAAG,cAAc,CAAC;IACnE,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,wBAAwB,CAAC;IACnD,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,OAAO,YAAY,EAAE,0BAA0B,CAAC;IAC7E,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC;IAClC,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,wBAAwB,CAAC;IACrD,CAAC,iBAAiB,CAAC,cAAc,CAAC,EAAE,uBAAuB,CAAC;IAC5D,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,uBAAuB,CAAC;IACxD,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC;IACxC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;IACpC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;IACpC,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,uBAAuB,CAAC;IAClD,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,EAAE,wBAAwB,CAAC;IAClE,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,qBAAqB,GAAG,wBAAwB,CAAC;IAClF,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAChC,4BAA4B,GAC5B,4BAA4B,CAAC;IACjC,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC;IACtC,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IACrC,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC;IACtC,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC;IAChC,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IACjC,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC;IAC9B,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC;IACrC,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,uBAAuB,CAAC;CAClD;AAED;;;GAGG;AACH,KAAK,oBAAoB,CAAC,CAAC,SAAS,SAAS,IAAI,CAAC,SAAS,iBAAiB,GACxE,oBAAoB,CAAC,CAAC,CAAC,GACvB,iBAAiB,CAAC;AAEtB,MAAM,MAAM,yBAAyB,CAAC,CAAC,SAAS,SAAS,SAAS,EAAE,IAClE,oBAAoB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG;IAAE,QAAQ,EAAE,QAAQ,CAAA;CAAE,CAAC"}
|
package/lib/typescript/commonjs/src/modules/bt-management/utils/convert-ecg-diagnostic-flag.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"convert-ecg-diagnostic-flag.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/utils/convert-ecg-diagnostic-flag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C,wBAAgB,wBAAwB,CACtC,cAAc,EAAE,MAAM,GACrB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"convert-ecg-diagnostic-flag.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-management/utils/convert-ecg-diagnostic-flag.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C,wBAAgB,wBAAwB,CACtC,cAAc,EAAE,MAAM,GACrB,iBAAiB,CA4CnB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supported-device-catalog-entries.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-device/constants/supported-device-catalog-entries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"supported-device-catalog-entries.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-device/constants/supported-device-catalog-entries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AA4F3D,eAAO,MAAM,0BAA0B,8PA0GQ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supported-devices.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-device/constants/supported-devices.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAiDhF,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,IAAI,CAAC;CACxB,CAAC;AAEF,KAAK,yBAAyB,GAAG,eAAe,GAAG;IAEjD,4DAA4D;IAC5D,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,gBAAgB,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAeF;;;;;;;GAOG;AACH,QAAA,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qPAuMkC,CAAC;
|
|
1
|
+
{"version":3,"file":"supported-devices.d.ts","sourceRoot":"","sources":["../../../../../../../src/modules/bt-device/constants/supported-devices.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2CAA2C,CAAC;AAiDhF,KAAK,eAAe,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,IAAI,CAAC;CACxB,CAAC;AAEF,KAAK,yBAAyB,GAAG,eAAe,GAAG;IAEjD,4DAA4D;IAC5D,EAAE,EAAE,MAAM,CAAC;IACX,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,gBAAgB,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAChD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAeF;;;;;;;GAOG;AACH,QAAA,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qPAuMkC,CAAC;AAyMhD,+FAA+F;AAC/F,QAAA,MAAM,gBAAgB,EAAE,SAAS,yBAAyB,EAQxD,CAAC;AAEH,QAAA,MAAM,iBAAiB,sCAAmB,CAAC;AAK3C,iFAAiF;AACjF,QAAA,MAAM,0BAA0B,EAAE,SAAS,cAAc,EAMxD,CAAC;AAEF,OAAO,EACL,OAAO,EACP,0BAA0B,EAC1B,iBAAiB,EACjB,gBAAgB,GACjB,CAAC;AACF,YAAY,EAAE,eAAe,EAAE,yBAAyB,EAAE,CAAC"}
|
package/lib/typescript/module/src/modules/bt-management/services/devices/bp2/bp2.device.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bp2.device.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/bp2/bp2.device.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAK9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAElF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAKvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAUpD,4DAA4D;AAC5D,QAAA,MAAM,4BAA4B,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"bp2.device.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/bp2/bp2.device.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAK9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,yBAAyB,EAAE,MAAM,uCAAuC,CAAC;AAElF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AACpF,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAKvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAUpD,4DAA4D;AAC5D,QAAA,MAAM,4BAA4B,WAAW,CAAC;AAO9C,cAAM,SAAU,SAAQ,eAAe,CAAC,iBAAiB,CAAC,GAAG,CAAC;IAC5D,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,uBAAuB,CAAqB;IACpD,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAsB;IAC5D,OAAO,CAAC,cAAc,CAGlB;IACJ,OAAO,CAAC,iBAAiB,CAAqB;IAE9C,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,CAAmB;IACrD,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAS;gBAGzC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,CAAC;IAMnD,SAAS,CAAC,aAAa,EAAE,MAAM,IAAI,CAKjC;IAEF,SAAS,CAAC,sBAAsB,QAAO,gBAAgB,CA4BrD;IAEF,SAAS,CAAC,WAAW,EAAE,cAAc,CAAwB;IAC7D,SAAS,CAAC,YAAY,EAAE,MAAM,CAAqB;IAEnD,SAAS,CAAC,mBAAmB,CAC3B,aAAa,EAAE,uBAAuB,CACpC,yBAAyB,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CACnD,EACD,eAAe,EAAE,MAAM,EAAE,GACxB,IAAI,GAAG,OAAO;IA0BjB,OAAO,CAAC,eAAe;IA6BvB,OAAO,CAAC,eAAe;IA+CvB,OAAO,CAAC,yBAAyB;IAuBjC,OAAO,CAAC,+BAA+B;IAiDvC,OAAO,CAAC,kBAAkB,CAYxB;IAEF,OAAO,CAAC,YAAY,CAeF;IAElB,OAAO,CAAC,iBAAiB,CAkDvB;IAEF,OAAO,CAAC,oBAAoB,CAwB1B;IAEF,OAAO,CAAC,kBAAkB,CAIxB;IAEF,OAAO,CAAC,oBAAoB,CAO1B;IAEF,OAAO,CAAC,qBAAqB;CAoD9B;AAED,OAAO,EAAE,SAAS,EAAE,4BAA4B,EAAE,CAAC"}
|
package/lib/typescript/module/src/modules/bt-management/services/devices/bt-data-processor.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Measurement, MeasurementTypeKey } from "@ovok/core";
|
|
2
2
|
import { Device } from "react-native-ble-plx";
|
|
3
|
+
import { CommandTimeoutResult } from "../../types/command-sequencer";
|
|
3
4
|
import { DependentResultHandlerParams } from "../../types/dependent-result-handler-params";
|
|
4
5
|
import { DeviceCommand } from "../../types/device-command";
|
|
5
6
|
import { DeviceStatus } from "../../types/device-status";
|
|
@@ -21,6 +22,9 @@ interface DataProcessorCallbacks<T extends Measurement> {
|
|
|
21
22
|
nextCommand?: (frame: readonly string[]) => readonly DeviceCommand[] | undefined;
|
|
22
23
|
/** Sends what `nextCommand` decided. */
|
|
23
24
|
sendCommands?: (commands: readonly DeviceCommand[]) => void;
|
|
25
|
+
commandTimeoutMs?: () => number | undefined;
|
|
26
|
+
onCommandTimeout?: () => CommandTimeoutResult;
|
|
27
|
+
commandProgress?: (frame: readonly string[]) => "ignored" | "partial" | "complete";
|
|
24
28
|
onError?: (error: Error) => void;
|
|
25
29
|
handleDependentResult?: (data: DependentResultHandlerParams<T>) => DependentResultHandlerParams<T>;
|
|
26
30
|
}
|
|
@@ -42,12 +46,15 @@ export declare class BTDataProcessor<T extends Measurement> {
|
|
|
42
46
|
private readonly frameParser;
|
|
43
47
|
private readonly measurementState;
|
|
44
48
|
private stuckDataTimeout;
|
|
49
|
+
private commandTimeout;
|
|
45
50
|
constructor(device: Device, mainServices: IMedicalDevice["mainService"], stuckDataTimeoutDuration: number, callbacks: DataProcessorCallbacks<T>, frameReader?: FrameReader | undefined);
|
|
46
51
|
private currentUuid;
|
|
47
52
|
destroy: () => void;
|
|
48
53
|
processData: (uuid: string, hexValue: string[]) => void;
|
|
49
54
|
/** Starts the connection watchdog once a device has received its first command. */
|
|
50
55
|
armStuckTimeout: () => void;
|
|
56
|
+
/** Starts a protocol-specific response watchdog for the initial command. */
|
|
57
|
+
armCommandTimeout: () => void;
|
|
51
58
|
/**
|
|
52
59
|
* Drains every complete frame the buffer holds.
|
|
53
60
|
*
|
|
@@ -80,6 +87,7 @@ export declare class BTDataProcessor<T extends Measurement> {
|
|
|
80
87
|
* measurement that happens to read the same is still reported.
|
|
81
88
|
*/
|
|
82
89
|
private startStuckTimeout;
|
|
90
|
+
private startCommandTimeout;
|
|
83
91
|
}
|
|
84
92
|
export {};
|
|
85
93
|
//# sourceMappingURL=bt-data-processor.d.ts.map
|
package/lib/typescript/module/src/modules/bt-management/services/devices/bt-data-processor.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bt-data-processor.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-data-processor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"bt-data-processor.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-data-processor.ts"],"names":[],"mappings":"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"}
|
package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bt-managed-device.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-managed-device.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"bt-managed-device.d.ts","sourceRoot":"","sources":["../../../../../../../../src/modules/bt-management/services/devices/bt-managed-device.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAMxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AACtE,OAAO,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAUjF,8BAAsB,eAAe,CAAC,CAAC,SAAS,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAC/E,YAAW,gBAAgB;aA+FT,MAAM,EAAE,MAAM;IA7FzB,EAAE,EAAE,MAAM,CAAC;IAElB,OAAO,CAAC,iBAAiB,CAAkC;IAC3D,OAAO,CAAC,iBAAiB,CAA4B;IACrD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,aAAa,CAEP;IACd,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAU;IAClD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAiC;IAC9D,OAAO,CAAC,4BAA4B,CAAS;IAC7C,OAAO,CAAC,qBAAqB,CAAS;IACtC,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,wBAAwB,CAAiC;IACjE,OAAO,CAAC,mBAAmB,CAAqB;IAChD,OAAO,CAAC,kBAAkB,CAAK;IACxB,UAAU,EAAE,UAAU,CAAC;IAE9B;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAE5C;;;;;;;OAOG;IACH,SAAS,CAAC,qBAAqB,CAAC,EAAE,CAChC,IAAI,EAAE,4BAA4B,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAC/D,4BAA4B,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAElE,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;IAE/D;;;;;;;;;OASG;IACH,SAAS,CAAC,sBAAsB,CAAC,EAAE,MAAM,gBAAgB,CAAC;IAE1D;;;;;;OAMG;IACH,SAAS,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC;IAEpC;;;;;OAKG;IACH,SAAS,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEhC,8EAA8E;IAC9E,SAAS,CAAC,kBAAkB,UAAS;IAErC;;;;;OAKG;IACH,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACrE,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9C,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CACpC,aAAa,EAAE,uBAAuB,CAAC,WAAW,CAAC,EACnD,eAAe,EAAE,MAAM,EAAE,GACxB,IAAI,GAAG,OAAO;IAEV,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,GAAG,KAAK,GAAG,MAAM,KAAK,IAAI,CAAC;IACrD,qBAAqB,CAAC,EAAE,CAC7B,MAAM,EAAE,YAAY,EACpB,kBAAkB,CAAC,EAAE,kBAAkB,KACpC,IAAI,CAAC;IACH,QAAQ,CAAC,EAAE,CAChB,IAAI,EAAE,uBAAuB,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAC1D,IAAI,CAAC;IACH,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;IAClC,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,CAAC;gBAE/C,MAAM,EAAE,MAAM,EAE9B,EACE,UAAU,EACV,OAAO,EAAE,eAAe,EACxB,qBAAqB,EAAE,6BAA6B,EACpD,QAAQ,EAAE,gBAAgB,EAC1B,iBAAiB,EAAE,yBAAyB,EAC5C,oBAAoB,EAAE,4BAA4B,EAClD,uBAAuB,EACvB,YAAY,GACb,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAwKnB,OAAO,aAWZ;IAEF,uEAAuE;IAChE,UAAU,sBAYf;IAEF,OAAO,CAAC,eAAe,CA2GrB;IAEK,OAAO,QAAO,OAAO,CAAC,IAAI,CAAC,CAchC;CACH"}
|
package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.device-names.d.ts
CHANGED
|
@@ -9,12 +9,18 @@
|
|
|
9
9
|
*
|
|
10
10
|
* It is that function's vocabulary, not a catalogue of everything the vendor sells: a few
|
|
11
11
|
* products - the ER3 and the M12 among them - are identified elsewhere in that app and never
|
|
12
|
-
* reach this list.
|
|
13
|
-
*
|
|
12
|
+
* reach this list. The first-word names below are compared against the complete first token of
|
|
13
|
+
* the advertisement, not as an open-ended prefix: `O2` must not claim `O2Ring`, and `BabyO2`
|
|
14
|
+
* must not claim `BabyO2N`.
|
|
14
15
|
*
|
|
15
16
|
* They are held here as a flat vocabulary rather than an ordered cascade, because
|
|
16
17
|
* `lepuNameMatch` derives the exclusions from the list itself. Adding a name automatically
|
|
17
18
|
* narrows every name it extends, which an ordered list would leave to whoever inserted it.
|
|
18
19
|
*/
|
|
19
|
-
|
|
20
|
+
declare const LEPU_DEVICE_NAMES: readonly string[];
|
|
21
|
+
/** Names the vendor matches by the complete first word of the advertisement. */
|
|
22
|
+
declare const LEPU_FIRST_WORD_DEVICE_NAMES: readonly string[];
|
|
23
|
+
/** Fetal-doppler and massager names from the vendor vocabulary, kept out of the SDK catalog. */
|
|
24
|
+
declare const LEPU_CATALOG_EXCLUDED_DEVICE_NAMES: readonly string[];
|
|
25
|
+
export { LEPU_CATALOG_EXCLUDED_DEVICE_NAMES, LEPU_DEVICE_NAMES, LEPU_FIRST_WORD_DEVICE_NAMES, };
|
|
20
26
|
//# sourceMappingURL=lepu.device-names.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lepu.device-names.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.device-names.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lepu.device-names.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.device-names.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;GAkBG;AACH,QAAA,MAAM,iBAAiB,EAAE,SAAS,MAAM,EA0OvC,CAAC;AAEF,gFAAgF;AAChF,QAAA,MAAM,4BAA4B,EAAE,SAAS,MAAM,EAqClD,CAAC;AAEF,gGAAgG;AAChG,QAAA,MAAM,kCAAkC,EAAE,SAAS,MAAM,EAGxD,CAAC;AAEF,OAAO,EACL,kCAAkC,EAClC,iBAAiB,EACjB,4BAA4B,GAC7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lepu.name-match.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.name-match.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lepu.name-match.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.name-match.ts"],"names":[],"mappings":"AAUA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,aAAa,GACxB,MAAM,MAAM,EACZ,aAAY,SAAS,MAAM,EAAsB,KAChD,MAaF,CAAC"}
|
package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CustomCaseSpec } from "../../../types/custom-case-spec";
|
|
2
|
-
import { CustomDeviceDefinition } from "../../../types/custom-device-definition";
|
|
2
|
+
import { CustomDeviceDefinition, CustomReadingDecorator } from "../../../types/custom-device-definition";
|
|
3
3
|
/**
|
|
4
4
|
* The characteristics each group of products exposes, read from the vendor's own managers.
|
|
5
5
|
*
|
|
@@ -43,6 +43,8 @@ declare const lepuTransports: {
|
|
|
43
43
|
};
|
|
44
44
|
type LepuTransportName = keyof typeof lepuTransports;
|
|
45
45
|
interface LepuDeviceParams {
|
|
46
|
+
/** Adds protocol metadata or rejects a decoded reading before it is emitted. */
|
|
47
|
+
decorateReading?: CustomReadingDecorator;
|
|
46
48
|
/** Reported back as deviceData.name, and must not collide with a built-in device. */
|
|
47
49
|
id?: string;
|
|
48
50
|
/** The name the hardware advertises. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lepu.transports.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.transports.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,
|
|
1
|
+
{"version":3,"file":"lepu.transports.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/lepu/lepu.transports.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,yCAAyC,CAAC;AAyEjD;;;;;;;GAOG;AACH,QAAA,MAAM,cAAc;;;;;;;IAQlB,8EAA8E;;;;;;;;;;;;;;;;;;;;;;;;;CA4B9B,CAAC;AAEnD,KAAK,iBAAiB,GAAG,MAAM,OAAO,cAAc,CAAC;AAErD,UAAU,gBAAgB;IAExB,gFAAgF;IAChF,eAAe,CAAC,EAAE,sBAAsB,CAAC;IAEzC,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,oFAAoF;IACpF,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAE9B,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,IAAI,GAAG,eAAe,CAAC;IAElC,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B,mFAAmF;IACnF,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B,YAAY,CAAC,EAAE,KAAK,CAAC;IAErB;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE/B;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE7B,KAAK,EAAE,cAAc,EAAE,CAAC;IAExB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAID,QAAA,MAAM,UAAU,GAAI,QAAQ,gBAAgB,KAAG,sBAgD9C,CAAC;AAEF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC;AACtC,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"standard-gatt.blood-pressure-status.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/standard-gatt/standard-gatt.blood-pressure-status.ts"],"names":[],"mappings":"AAYA,QAAA,MAAM,4BAA4B,GAChC,OAAO,SAAS,MAAM,EAAE,EACxB,qBAAgB,KACf,MAAM,GAAG,SA2BX,CAAC;AAEF,OAAO,EAAE,4BAA4B,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standard-gatt.devices.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAEjF,OAAO,EAIL,oBAAoB,EACrB,MAAM,yBAAyB,CAAC;AA2CjC,QAAA,MAAM,2BAA2B,GAC/B,QAAQ,oBAAoB,KAC3B,
|
|
1
|
+
{"version":3,"file":"standard-gatt.devices.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/standard-gatt/standard-gatt.devices.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAEjF,OAAO,EAIL,oBAAoB,EACrB,MAAM,yBAAyB,CAAC;AA2CjC,QAAA,MAAM,2BAA2B,GAC/B,QAAQ,oBAAoB,KAC3B,sBAsDA,CAAC;AAEJ,yEAAyE;AACzE,QAAA,MAAM,yBAAyB,GAC7B,QAAQ,oBAAoB,KAC3B,sBA4CC,CAAC;AAKL;;;;GAIG;AACH,QAAA,MAAM,yBAAyB,GAC7B,QAAQ,oBAAoB,KAC3B,sBAkCC,CAAC;AAEL;;;;;GAKG;AACH,QAAA,MAAM,2BAA2B,GAC/B,QAAQ,oBAAoB,KAC3B,sBAWC,CAAC;AAEL;;;;;GAKG;AACH,QAAA,MAAM,uBAAuB,GAC3B,QAAQ,oBAAoB,KAC3B,sBAsCC,CAAC;AAEL,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACvB,2BAA2B,EAC3B,yBAAyB,EACzB,yBAAyB,GAC1B,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { MeasurementTypeKey } from "@ovok/core";
|
|
2
2
|
import { CustomDeviceDefinition, CustomReadingDecorator } from "../../../types/custom-device-definition";
|
|
3
3
|
import { CustomFieldSpec } from "../../../types/custom-field-spec";
|
|
4
|
+
import { bloodPressureStatusFromFrame } from "./standard-gatt.blood-pressure-status";
|
|
4
5
|
interface StandardDeviceParams {
|
|
5
6
|
/** Reported back as deviceData.name, and must not collide with a built-in device. */
|
|
6
7
|
id?: string;
|
|
@@ -49,6 +50,6 @@ declare const littleEndian: (name: string, byteIndexes: number[], unit: string,
|
|
|
49
50
|
/** Reads the SIG blood-pressure timestamp as a phone-local date. */
|
|
50
51
|
declare const recordedAtFromBloodPressureFrame: (frame: readonly string[], offset?: number) => Date | undefined;
|
|
51
52
|
declare const decorateBloodPressureReading: CustomReadingDecorator;
|
|
52
|
-
export { decorateBloodPressureReading, declareProfile, littleEndian, recordedAtFromBloodPressureFrame, sigUuid, };
|
|
53
|
+
export { bloodPressureStatusFromFrame, decorateBloodPressureReading, declareProfile, littleEndian, recordedAtFromBloodPressureFrame, sigUuid, };
|
|
53
54
|
export type { ProfileSpec, StandardDeviceParams };
|
|
54
55
|
//# sourceMappingURL=standard-gatt.profile.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standard-gatt.profile.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGhD,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"standard-gatt.profile.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/standard-gatt/standard-gatt.profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAGhD,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACvB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAGnE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAKrF,UAAU,oBAAoB;IAE5B,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,wCAAwC;IACxC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,wEAAwE;IACxE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,oEAAoE;IACpE,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC,iFAAiF;IACjF,eAAe,CAAC,EAAE,sBAAsB,CAAC;CAC1C;AAED,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IAEvB,uFAAuF;IACvF,cAAc,EAAE,MAAM,CAAC;IAEvB,kBAAkB,EAAE,kBAAkB,CAAC;IAEvC,2EAA2E;IAC3E,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;IAE7B,iFAAiF;IACjF,gBAAgB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,eAAe,EAAE,CAAC,CAAC,CAAC;IAExE,6FAA6F;IAC7F,MAAM,EAAE,SAAS,eAAe,EAAE,CAAC;IAEnC;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,QAAQ,CACvB,MAAM,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,eAAe,EAAE,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CACtE,CAAC;CACH;AAED,QAAA,MAAM,OAAO,GAAI,UAAU,MAAM,KAAG,MACW,CAAC;AAEhD;;;;;GAKG;AACH,QAAA,MAAM,cAAc,GAClB,QAAQ,oBAAoB,EAC5B,SAAS,WAAW,KACnB,sBAsCA,CAAC;AAEJ,QAAA,MAAM,YAAY,GAChB,MAAM,MAAM,EACZ,aAAa,MAAM,EAAE,EACrB,MAAM,MAAM,EACZ,UAAU,eAAe,CAAC,UAAU,CAAC,KACpC,eAMD,CAAC;AAcH,oEAAoE;AACpE,QAAA,MAAM,gCAAgC,GACpC,OAAO,SAAS,MAAM,EAAE,EACxB,eAAU,KACT,IAAI,GAAG,SAmCT,CAAC;AAEF,QAAA,MAAM,4BAA4B,EAAE,sBAyDnC,CAAC;AAEF,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC5B,cAAc,EACd,YAAY,EACZ,gCAAgC,EAChC,OAAO,GACR,CAAC;AACF,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,CAAC"}
|
|
@@ -1,4 +1,14 @@
|
|
|
1
|
+
import { Measurement } from "@ovok/core";
|
|
1
2
|
import { CustomDeviceDefinition } from "../../../types/custom-device-definition";
|
|
3
|
+
import { MeasurementWithCaseType } from "../../../types/measurement-with-case-type";
|
|
4
|
+
type VerovalBloodPressureReading = MeasurementWithCaseType<Measurement> & {
|
|
5
|
+
/** The device flagged the reading as part of a triple measurement. */
|
|
6
|
+
tripleMeasurement?: boolean;
|
|
7
|
+
/** The device flagged atrial fibrillation during the reading. */
|
|
8
|
+
atrialFibrillation?: boolean;
|
|
9
|
+
/** The device flagged the reading as taken in its resting mode. */
|
|
10
|
+
restingMeasurement?: boolean;
|
|
11
|
+
};
|
|
2
12
|
interface VerovalBpParams {
|
|
3
13
|
/** Reported back as deviceData.name, and must not collide with a built-in device. */
|
|
4
14
|
id?: string;
|
|
@@ -15,4 +25,5 @@ declare const bpw26Monitor: (params: VerovalBpParams) => CustomDeviceDefinition;
|
|
|
15
25
|
/** The names these monitors advertise. */
|
|
16
26
|
declare const VEROVAL_BP_MODEL_NAMES: readonly string[];
|
|
17
27
|
export { bpu26Monitor, bpw26Monitor, VEROVAL_BP_MODEL_NAMES, verovalCompactMonitor, };
|
|
28
|
+
export type { VerovalBloodPressureReading };
|
|
18
29
|
//# sourceMappingURL=veroval.bp-monitors.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"veroval.bp-monitors.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.bp-monitors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"veroval.bp-monitors.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.bp-monitors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EACL,sBAAsB,EAEvB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,uBAAuB,EAAE,MAAM,2CAA2C,CAAC;AAyBpF,KAAK,2BAA2B,GAAG,uBAAuB,CAAC,WAAW,CAAC,GAAG;IAExE,sEAAsE;IACtE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B,iEAAiE;IACjE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B,mEAAmE;IACnE,kBAAkB,CAAC,EAAE,OAAO,CAAC;CAC9B,CAAC;AAqCF,UAAU,eAAe;IAEvB,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,qFAAqF;IACrF,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B,wEAAwE;IACxE,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,QAAA,MAAM,qBAAqB,GACzB,gBAAgB,MAAM,EACtB,QAAQ,eAAe,KACtB,sBAeC,CAAC;AAEL,sDAAsD;AACtD,QAAA,MAAM,YAAY,GAAI,QAAQ,eAAe,KAAG,sBACT,CAAC;AAExC,kDAAkD;AAClD,QAAA,MAAM,YAAY,GAAI,QAAQ,eAAe,KAAG,sBACT,CAAC;AAExC,0CAA0C;AAC1C,QAAA,MAAM,sBAAsB,EAAE,SAAS,MAAM,EAAqB,CAAC;AAEnE,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,sBAAsB,EACtB,qBAAqB,GACtB,CAAC;AACF,YAAY,EAAE,2BAA2B,EAAE,CAAC"}
|
|
@@ -22,9 +22,10 @@ export declare class VerovalEcgDevice extends BTManagedDevice<IntegratedDevices.
|
|
|
22
22
|
protected mainServices: IService[];
|
|
23
23
|
protected validatePackage: () => boolean;
|
|
24
24
|
protected createCommandSequencer: () => VerovalEcgTransfer;
|
|
25
|
+
private readonly clockSync;
|
|
25
26
|
constructor(device: Device, params: CreateDeviceParams<IntegratedDevices.VEROVAL_ECG>);
|
|
26
27
|
/** Nothing is reported per packet; the transfer reports the recording when it is whole. */
|
|
27
28
|
protected handleSuccessResult(): void;
|
|
28
|
-
private
|
|
29
|
+
private reportRecord;
|
|
29
30
|
}
|
|
30
31
|
//# sourceMappingURL=veroval.ecg-device.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"veroval.ecg-device.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.ecg-device.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"veroval.ecg-device.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.ecg-device.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAG9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAUvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAgC5D;;;;;;;;;;GAUG;AACH,qBAAa,gBAAiB,SAAQ,eAAe,CAAC,iBAAiB,CAAC,WAAW,CAAC;IAClF,SAAS,CAAC,gBAAgB,SAAoB;IAC9C,UAAmB,YAAY,SAAiB;IAChD,SAAS,CAAC,aAAa,YAAa;IAEpC,SAAS,CAAC,YAAY,EAAE,QAAQ,EAAE,CAKhC;IAEF,UAAmB,eAAe,QAAO,OAAO,CAAS;IAEzD,UAAmB,sBAAsB,2BAKpC;IAEL,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiE;gBAGzF,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,WAAW,CAAC;IAM3D,2FAA2F;IAC3F,SAAS,CAAC,mBAAmB,IAAI,IAAI;IAIrC,OAAO,CAAC,YAAY,CA2ClB;CACH"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { BloodPressureMeasurement, EcgDiagnosticFlag, EcgMeasurement } from "@ovok/core";
|
|
2
|
+
declare const HEADER_BYTES = 80;
|
|
3
|
+
declare const ECG_RECORD_TYPE = 38;
|
|
4
|
+
declare const RECORD_TYPE_OFFSET = 71;
|
|
5
|
+
declare const RAW_SIZE_OFFSET = 40;
|
|
6
|
+
declare const USER_OFFSET = 44;
|
|
7
|
+
declare const BP_ERROR_OFFSET = 62;
|
|
8
|
+
declare const BP_PULSE_OFFSET = 63;
|
|
9
|
+
declare const BP_SYSTOLIC_OFFSET = 64;
|
|
10
|
+
declare const BP_DIASTOLIC_OFFSET = 66;
|
|
11
|
+
interface VerovalEcgHeader {
|
|
12
|
+
bytes: readonly string[];
|
|
13
|
+
sequence: number;
|
|
14
|
+
recordedAt?: Date;
|
|
15
|
+
memorySlot: 1 | 2;
|
|
16
|
+
rawSize: number;
|
|
17
|
+
heartRate: number;
|
|
18
|
+
diagnosticResult?: EcgDiagnosticFlag;
|
|
19
|
+
calibration?: {
|
|
20
|
+
physicalMinimumMicrovolts: number;
|
|
21
|
+
physicalMaximumMicrovolts: number;
|
|
22
|
+
digitalMinimum: number;
|
|
23
|
+
digitalMaximum: number;
|
|
24
|
+
};
|
|
25
|
+
isEcg: boolean;
|
|
26
|
+
hasError: boolean;
|
|
27
|
+
}
|
|
28
|
+
interface VerovalEcgRecord extends EcgMeasurement {
|
|
29
|
+
id: string;
|
|
30
|
+
memorySlot: 1 | 2;
|
|
31
|
+
}
|
|
32
|
+
interface VerovalBloodPressureRecord extends BloodPressureMeasurement {
|
|
33
|
+
id: string;
|
|
34
|
+
memorySlot: 1 | 2;
|
|
35
|
+
}
|
|
36
|
+
declare const parseVerovalEcgHeader: (bytes: readonly string[]) => VerovalEcgHeader | undefined;
|
|
37
|
+
declare const verovalRecordId: (header: VerovalEcgHeader) => string;
|
|
38
|
+
declare const parseVerovalBloodPressureRecord: (header: VerovalEcgHeader) => VerovalBloodPressureRecord | undefined;
|
|
39
|
+
export { BP_DIASTOLIC_OFFSET, BP_ERROR_OFFSET, BP_PULSE_OFFSET, BP_SYSTOLIC_OFFSET, ECG_RECORD_TYPE, HEADER_BYTES, parseVerovalBloodPressureRecord, parseVerovalEcgHeader, RECORD_TYPE_OFFSET, RAW_SIZE_OFFSET, USER_OFFSET, verovalRecordId, };
|
|
40
|
+
export type { VerovalBloodPressureRecord, VerovalEcgHeader, VerovalEcgRecord, };
|
|
41
|
+
//# sourceMappingURL=veroval.ecg-record.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"veroval.ecg-record.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.ecg-record.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,iBAAiB,EACjB,cAAc,EAEf,MAAM,YAAY,CAAC;AAIpB,QAAA,MAAM,YAAY,KAAK,CAAC;AACxB,QAAA,MAAM,eAAe,KAAK,CAAC;AAE3B,QAAA,MAAM,kBAAkB,KAAK,CAAC;AAC9B,QAAA,MAAM,eAAe,KAAK,CAAC;AAC3B,QAAA,MAAM,WAAW,KAAK,CAAC;AAEvB,QAAA,MAAM,eAAe,KAAK,CAAC;AAC3B,QAAA,MAAM,eAAe,KAAK,CAAC;AAC3B,QAAA,MAAM,kBAAkB,KAAK,CAAC;AAC9B,QAAA,MAAM,mBAAmB,KAAK,CAAC;AAuF/B,UAAU,gBAAgB;IACxB,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,WAAW,CAAC,EAAE;QACZ,yBAAyB,EAAE,MAAM,CAAC;QAClC,yBAAyB,EAAE,MAAM,CAAC;QAClC,cAAc,EAAE,MAAM,CAAC;QACvB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;IACF,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,gBAAiB,SAAQ,cAAc;IAC/C,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC;CACnB;AAED,UAAU,0BAA2B,SAAQ,wBAAwB;IACnE,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,CAAC,GAAG,CAAC,CAAC;CACnB;AAED,QAAA,MAAM,qBAAqB,GACzB,OAAO,SAAS,MAAM,EAAE,KACvB,gBAAgB,GAAG,SAqBrB,CAAC;AAEF,QAAA,MAAM,eAAe,GAAI,QAAQ,gBAAgB,KAAG,MAC4C,CAAC;AAEjG,QAAA,MAAM,+BAA+B,GACnC,QAAQ,gBAAgB,KACvB,0BAA0B,GAAG,SAc/B,CAAC;AAEF,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,YAAY,EACZ,+BAA+B,EAC/B,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,eAAe,GAChB,CAAC;AACF,YAAY,EACV,0BAA0B,EAC1B,gBAAgB,EAChB,gBAAgB,GACjB,CAAC"}
|
|
@@ -1,35 +1,67 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ClockSyncOptions } from "../../../types/clock-sync";
|
|
2
|
+
import { CommandSequencer, CommandTimeoutResult } from "../../../types/command-sequencer";
|
|
2
3
|
import { DeviceCommand } from "../../../types/device-command";
|
|
4
|
+
import { VerovalEcgHeader } from "./veroval.ecg-record";
|
|
5
|
+
declare const DOWNLOAD_WAIT = 0;
|
|
6
|
+
declare const DOWNLOAD_MODE = 1;
|
|
7
|
+
declare const DOWNLOAD_HEADER = 2;
|
|
8
|
+
declare const DOWNLOAD_RAW = 3;
|
|
9
|
+
declare const HEADER_PACKETS = 5;
|
|
10
|
+
declare const PACKETS_PER_SEGMENT = 16;
|
|
11
|
+
declare const SEGMENT_BYTES: number;
|
|
12
|
+
declare const COMMAND_TIMEOUT_MS = 3000;
|
|
13
|
+
declare const RAW_TIMEOUT_MS = 2000;
|
|
14
|
+
declare const SET_TIME_DELAY_MS = 1500;
|
|
3
15
|
interface EcgTransferParams {
|
|
4
16
|
/** The characteristic requests are written to. */
|
|
5
17
|
write: Omit<DeviceCommand, "frame">;
|
|
6
|
-
/** Called once
|
|
7
|
-
|
|
18
|
+
/** Called once for every valid blood-pressure header or completed ECG. */
|
|
19
|
+
onRecord: (record: {
|
|
20
|
+
header: VerovalEcgHeader;
|
|
21
|
+
raw?: readonly string[];
|
|
22
|
+
}) => void;
|
|
23
|
+
clockSync?: ClockSyncOptions;
|
|
8
24
|
}
|
|
9
25
|
/**
|
|
10
|
-
* Downloads
|
|
26
|
+
* Downloads all records from the Veroval ECG/BP monitor.
|
|
11
27
|
*
|
|
12
|
-
* The
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
* paced by counting them. Notifications for live measurements, standby and device settings
|
|
16
|
-
* share the characteristic, so only the download group and command advance the transfer.
|
|
17
|
-
*
|
|
18
|
-
* A recording is thirty-four seconds at 128 Hz. Nothing is reported until all of it has
|
|
19
|
-
* arrived: a partial ECG that looked whole would be worse than none, and the count is what
|
|
20
|
-
* says it is whole.
|
|
28
|
+
* The mode reply gives the number of records in each user memory. Headers are collected first;
|
|
29
|
+
* only then does the device enter raw-download mode. This matters because a blood-pressure
|
|
30
|
+
* record is complete in its header while an ECG needs one or more raw segments.
|
|
21
31
|
*/
|
|
22
|
-
|
|
32
|
+
declare class VerovalEcgTransfer implements CommandSequencer {
|
|
23
33
|
private readonly params;
|
|
24
34
|
private phase;
|
|
25
|
-
private
|
|
35
|
+
private headerPacket;
|
|
36
|
+
private headerBytes;
|
|
37
|
+
private recordIndex;
|
|
38
|
+
private expectedRecords;
|
|
39
|
+
private headers;
|
|
40
|
+
private ecgHeaders;
|
|
41
|
+
private ecgIndex;
|
|
26
42
|
private segment;
|
|
27
|
-
private
|
|
43
|
+
private rawPacket;
|
|
44
|
+
private segmentBytes;
|
|
45
|
+
private rawBytes;
|
|
46
|
+
private lastCommand;
|
|
47
|
+
private pendingTimeout;
|
|
48
|
+
private retries;
|
|
49
|
+
private settings;
|
|
28
50
|
constructor(params: EcgTransferParams);
|
|
29
51
|
initialCommands: () => readonly DeviceCommand[];
|
|
30
52
|
nextCommand: (frame: readonly string[]) => readonly DeviceCommand[] | undefined;
|
|
31
|
-
|
|
53
|
+
commandTimeoutMs: () => number | undefined;
|
|
54
|
+
onCommandTimeout: () => CommandTimeoutResult;
|
|
55
|
+
commandProgress: (frame: readonly string[]) => "ignored" | "partial" | "complete";
|
|
56
|
+
private nextSettings;
|
|
57
|
+
private nextMode;
|
|
58
|
+
private nextHeader;
|
|
59
|
+
private nextRaw;
|
|
60
|
+
private requestMode;
|
|
61
|
+
private requestHeader;
|
|
62
|
+
private requestRaw;
|
|
32
63
|
private requestSegment;
|
|
64
|
+
private remember;
|
|
33
65
|
}
|
|
34
|
-
export {};
|
|
66
|
+
export { COMMAND_TIMEOUT_MS, DOWNLOAD_HEADER, DOWNLOAD_MODE, DOWNLOAD_RAW, DOWNLOAD_WAIT, HEADER_PACKETS, PACKETS_PER_SEGMENT, RAW_TIMEOUT_MS, SEGMENT_BYTES, SET_TIME_DELAY_MS, VerovalEcgTransfer, };
|
|
35
67
|
//# sourceMappingURL=veroval.ecg-transfer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"veroval.ecg-transfer.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"veroval.ecg-transfer.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/veroval/veroval.ecg-transfer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAqC,MAAM,2BAA2B,CAAC;AAChG,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAG9D,OAAO,EAAyB,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAS/E,QAAA,MAAM,aAAa,IAAI,CAAC;AACxB,QAAA,MAAM,aAAa,IAAI,CAAC;AACxB,QAAA,MAAM,eAAe,IAAI,CAAC;AAC1B,QAAA,MAAM,YAAY,IAAI,CAAC;AAcvB,QAAA,MAAM,cAAc,IAAI,CAAC;AACzB,QAAA,MAAM,mBAAmB,KAAK,CAAC;AAC/B,QAAA,MAAM,aAAa,QAAsC,CAAC;AAE1D,QAAA,MAAM,kBAAkB,OAAQ,CAAC;AACjC,QAAA,MAAM,cAAc,OAAQ,CAAC;AAE7B,QAAA,MAAM,iBAAiB,OAAQ,CAAC;AA0EhC,UAAU,iBAAiB;IAEzB,kDAAkD;IAClD,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAEpC,0EAA0E;IAC1E,QAAQ,EAAE,CAAC,MAAM,EAAE;QACjB,MAAM,EAAE,gBAAgB,CAAC;QACzB,GAAG,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;KACzB,KAAK,IAAI,CAAC;IAEX,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAID;;;;;;GAMG;AACH,cAAM,kBAAmB,YAAW,gBAAgB;IAkB/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAjB1C,OAAO,CAAC,KAAK,CAAQ;IACrB,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,WAAW,CAAgB;IACnC,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,YAAY,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,WAAW,CAA4B;IAC/C,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,QAAQ,CAAa;gBAEO,MAAM,EAAE,iBAAiB;IAItD,eAAe,QAAO,SAAS,aAAa,EAAE,CAG5B;IAElB,WAAW,GAChB,OAAO,SAAS,MAAM,EAAE,KACvB,SAAS,aAAa,EAAE,GAAG,SAAS,CAkBrC;IAEK,gBAAgB,QAAO,MAAM,GAAG,SAAS,CACU;IAEnD,gBAAgB,QAAO,oBAAoB,CAwBhD;IAEK,eAAe,GACpB,OAAO,SAAS,MAAM,EAAE,KACvB,SAAS,GAAG,SAAS,GAAG,UAAU,CAgCnC;IAEF,OAAO,CAAC,YAAY,CAiBlB;IAEF,OAAO,CAAC,QAAQ,CAsBd;IAEF,OAAO,CAAC,UAAU,CAoDhB;IAEF,OAAO,CAAC,OAAO,CAgDb;IAEF,OAAO,CAAC,WAAW,CAIf;IAEJ,OAAO,CAAC,aAAa,CASnB;IAEF,OAAO,CAAC,UAAU,CAahB;IAEF,OAAO,CAAC,cAAc,CAcpB;IAEF,OAAO,CAAC,QAAQ,CAcd;CACH;AAED,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,YAAY,EACZ,aAAa,EACb,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,kBAAkB,GACnB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viatom.bp-monitors.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/viatom/viatom.bp-monitors.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"viatom.bp-monitors.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/viatom/viatom.bp-monitors.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,sBAAsB,EAEvB,MAAM,yCAAyC,CAAC;AA0GjD,UAAU,cAAc;IAEtB,qFAAqF;IACrF,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAE5B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC;AAED;;;;;;GAMG;AACH,QAAA,MAAM,eAAe,GACnB,gBAAgB,MAAM,EACtB,QAAQ,cAAc,KACrB,sBAYC,CAAC;AAEL,gDAAgD;AAChD,QAAA,MAAM,WAAW,GAAI,QAAQ,cAAc,KAAG,sBACb,CAAC;AAElC,kFAAkF;AAClF,QAAA,MAAM,WAAW,GAAI,QAAQ,cAAc,KAAG,sBACb,CAAC;AAElC,kFAAkF;AAClF,QAAA,MAAM,WAAW,GAAI,QAAQ,cAAc,KAAG,sBACb,CAAC;AAElC;;;;;;;;;;;GAWG;AACH,QAAA,MAAM,eAAe,EAAE,SAAS,MAAM,EAgBrC,CAAC;AAEF,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,eAAe,EACf,eAAe,GAChB,CAAC"}
|