@ovok/native 1.6.34 → 1.6.35
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-management/components/bt-provider-child-wrapper.js +5 -1
- package/lib/commonjs/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/bt-manager.js +1 -0
- package/lib/commonjs/modules/bt-management/services/bt-manager.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/custom/compile-custom-case.js +6 -0
- package/lib/commonjs/modules/bt-management/services/custom/compile-custom-case.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/custom/compile-custom-lepu.js +42 -0
- package/lib/commonjs/modules/bt-management/services/custom/compile-custom-lepu.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.device.js +16 -12
- 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.files.js +7 -5
- package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.files.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js +33 -6
- 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-data-processor.js +4 -1
- package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/custom/custom-lepu-sequencer.js +4 -0
- package/lib/commonjs/modules/bt-management/services/devices/custom/custom-lepu-sequencer.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js +46 -6
- package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.js +28 -4
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.file-transfer.js +6 -3
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.file-transfer.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.identity-gate.js +28 -1
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.identity-gate.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.transports.js +6 -0
- package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/measurement-state-machine.js +3 -0
- package/lib/commonjs/modules/bt-management/services/devices/measurement-state-machine.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js +13 -1
- package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js.map +1 -1
- package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bp3-files.js +51 -0
- package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bp3-files.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/module/modules/bt-management/components/bt-provider-child-wrapper.js +5 -1
- package/lib/module/modules/bt-management/components/bt-provider-child-wrapper.js.map +1 -1
- package/lib/module/modules/bt-management/services/bt-manager.js +1 -0
- package/lib/module/modules/bt-management/services/bt-manager.js.map +1 -1
- package/lib/module/modules/bt-management/services/custom/compile-custom-case.js +6 -0
- package/lib/module/modules/bt-management/services/custom/compile-custom-case.js.map +1 -1
- package/lib/module/modules/bt-management/services/custom/compile-custom-lepu.js +42 -0
- package/lib/module/modules/bt-management/services/custom/compile-custom-lepu.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bp2/bp2.device.js +17 -13
- 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.files.js +6 -5
- package/lib/module/modules/bt-management/services/devices/bp2/bp2.files.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js +33 -6
- 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-data-processor.js +4 -1
- package/lib/module/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/custom/custom-lepu-sequencer.js +4 -0
- package/lib/module/modules/bt-management/services/devices/custom/custom-lepu-sequencer.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/custom/custom.device.js +46 -6
- package/lib/module/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.js +27 -4
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.file-transfer.js +6 -3
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.file-transfer.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.identity-gate.js +28 -1
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.identity-gate.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.transports.js +6 -0
- package/lib/module/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/measurement-state-machine.js +3 -0
- package/lib/module/modules/bt-management/services/devices/measurement-state-machine.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js +13 -1
- package/lib/module/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/viatom/viatom.bp3-files.js +47 -0
- package/lib/module/modules/bt-management/services/devices/viatom/viatom.bp3-files.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/typescript/commonjs/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/bt-manager.d.ts +1 -0
- 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/custom/compile-custom-case.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/custom/compile-custom-lepu.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bp2/bp2.device.d.ts +3 -2
- 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.files.d.ts +2 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bp2/bp2.files.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.d.ts +4 -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-data-processor.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/custom/custom.device.d.ts +4 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.d.ts +8 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.file-transfer.d.ts +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.file-transfer.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.identity-gate.d.ts +6 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.identity-gate.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +5 -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/measurement-state-machine.d.ts +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/measurement-state-machine.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/services/devices/viatom/viatom.bp3-files.d.ts +18 -0
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.bp3-files.d.ts.map +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/btprovider-children-props.d.ts +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/btprovider-children-props.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/create-device-params.d.ts +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/create-device-params.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/custom-case-spec.d.ts +2 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/custom-case-spec.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/custom-lepu-spec.d.ts +6 -2
- package/lib/typescript/commonjs/src/modules/bt-management/types/custom-lepu-spec.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/dependent-result-handler-params.d.ts +2 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/dependent-result-handler-params.d.ts.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/types/parsing-case.d.ts +1 -0
- package/lib/typescript/commonjs/src/modules/bt-management/types/parsing-case.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/components/bt-provider-child-wrapper.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/bt-manager.d.ts +1 -0
- 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/custom/compile-custom-case.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/custom/compile-custom-lepu.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bp2/bp2.device.d.ts +3 -2
- 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.files.d.ts +2 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bp2/bp2.files.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.d.ts +4 -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-data-processor.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/custom/custom.device.d.ts +4 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.d.ts +8 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.file-transfer.d.ts +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.file-transfer.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.identity-gate.d.ts +6 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.identity-gate.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +5 -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/measurement-state-machine.d.ts +1 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/measurement-state-machine.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/services/devices/viatom/viatom.bp3-files.d.ts +18 -0
- package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.bp3-files.d.ts.map +1 -0
- package/lib/typescript/module/src/modules/bt-management/types/btprovider-children-props.d.ts +1 -0
- package/lib/typescript/module/src/modules/bt-management/types/btprovider-children-props.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/create-device-params.d.ts +1 -0
- package/lib/typescript/module/src/modules/bt-management/types/create-device-params.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/custom-case-spec.d.ts +2 -0
- package/lib/typescript/module/src/modules/bt-management/types/custom-case-spec.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/custom-lepu-spec.d.ts +6 -2
- package/lib/typescript/module/src/modules/bt-management/types/custom-lepu-spec.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/dependent-result-handler-params.d.ts +2 -0
- package/lib/typescript/module/src/modules/bt-management/types/dependent-result-handler-params.d.ts.map +1 -1
- package/lib/typescript/module/src/modules/bt-management/types/parsing-case.d.ts +1 -0
- package/lib/typescript/module/src/modules/bt-management/types/parsing-case.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -5,24 +5,49 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.BP2_REALTIME_COMMAND = exports.BP2HistorySequencer = void 0;
|
|
7
7
|
var _sentryLogger = require("../../../../helpers/utils/sentry-logger.js");
|
|
8
|
+
var _clockSync = require("../../../types/clock-sync.js");
|
|
8
9
|
var _hexToByte = require("../../../utils/hex-to-byte.js");
|
|
9
10
|
var _lepuCommandBuilder = require("../lepu/lepu.command-builder.js");
|
|
11
|
+
var _lepuCommands = require("../lepu/lepu.commands.js");
|
|
12
|
+
var _lepuEcgTransfer = require("../lepu/lepu.ecg-transfer.js");
|
|
10
13
|
var _lepuFileTransfer = require("../lepu/lepu.file-transfer.js");
|
|
14
|
+
var _lepuFrame = require("../lepu/lepu.frame.js");
|
|
15
|
+
var _lepuResponseType = require("../lepu/lepu.response-type.js");
|
|
11
16
|
const BP2_REALTIME_COMMAND = exports.BP2_REALTIME_COMMAND = 0x08;
|
|
12
17
|
const BP2_RESULT_STATES = new Set(["05", "07", "11"]);
|
|
13
18
|
const BP2_ECG_STATE = "06";
|
|
14
19
|
const BP2_IDLE_STATES = new Set(["00", "01", "03"]);
|
|
15
|
-
|
|
20
|
+
const BP2_POLL_INTERVAL_MS = 200;
|
|
21
|
+
/** Reads unseen BP2 history on connect and after each realtime result. */
|
|
16
22
|
class BP2HistorySequencer {
|
|
17
23
|
builder = new _lepuCommandBuilder.LepuCommandBuilder();
|
|
18
24
|
lastRunStatusFrameCount = 0;
|
|
19
25
|
realtimeEcgActive = false;
|
|
26
|
+
phase = "files";
|
|
20
27
|
constructor(params) {
|
|
21
28
|
this.params = params;
|
|
22
29
|
}
|
|
23
|
-
initialCommands = () =>
|
|
30
|
+
initialCommands = () => {
|
|
31
|
+
if ((0, _clockSync.isClockSyncEnabled)(this.params.clockSync)) {
|
|
32
|
+
this.phase = "clock";
|
|
33
|
+
return [{
|
|
34
|
+
...this.params.write,
|
|
35
|
+
frame: this.builder.build(_lepuCommands.LepuCommand.SET_TIME, (0, _lepuEcgTransfer.clockPayload)(this.params.clockSync))
|
|
36
|
+
}];
|
|
37
|
+
}
|
|
38
|
+
return this.startTransfer();
|
|
39
|
+
};
|
|
24
40
|
isHistoryTransfer = () => true;
|
|
25
41
|
nextCommand = frame => {
|
|
42
|
+
if (this.phase === "clock") {
|
|
43
|
+
if ((0, _lepuFrame.lepuCommandOf)(frame) !== _lepuCommands.LepuCommand.SET_TIME) {
|
|
44
|
+
return undefined;
|
|
45
|
+
}
|
|
46
|
+
if (!(0, _lepuResponseType.isLepuSuccess)(frame)) {
|
|
47
|
+
this.params.onError(`the device refused SET_TIME: ${(0, _lepuResponseType.describeLepuResponseType)(frame)}`);
|
|
48
|
+
}
|
|
49
|
+
return this.startTransfer();
|
|
50
|
+
}
|
|
26
51
|
if (this.transfer) {
|
|
27
52
|
return this.transfer.nextCommand(frame);
|
|
28
53
|
}
|
|
@@ -37,11 +62,12 @@ class BP2HistorySequencer {
|
|
|
37
62
|
}
|
|
38
63
|
if (this.params.shouldStartTransfer() || endedWithoutResult) {
|
|
39
64
|
this.params.onTransferRequested();
|
|
40
|
-
return this.startTransfer();
|
|
65
|
+
return this.startTransfer(isResult ? 3_000 : undefined);
|
|
41
66
|
}
|
|
42
67
|
return undefined;
|
|
43
68
|
};
|
|
44
|
-
startTransfer =
|
|
69
|
+
startTransfer = delayBeforeWriteMs => {
|
|
70
|
+
this.phase = "files";
|
|
45
71
|
this.transfer = new _lepuFileTransfer.LepuFileTransfer({
|
|
46
72
|
write: this.params.write,
|
|
47
73
|
builder: this.builder,
|
|
@@ -50,7 +76,7 @@ class BP2HistorySequencer {
|
|
|
50
76
|
skipFiles: this.params.skipFiles,
|
|
51
77
|
afterTransfer: this.finishTransfer
|
|
52
78
|
});
|
|
53
|
-
return this.transfer.initialCommands();
|
|
79
|
+
return this.transfer.initialCommands(delayBeforeWriteMs);
|
|
54
80
|
};
|
|
55
81
|
finishTransfer = () => {
|
|
56
82
|
this.transfer = undefined;
|
|
@@ -59,7 +85,8 @@ class BP2HistorySequencer {
|
|
|
59
85
|
};
|
|
60
86
|
pollCommand = () => ({
|
|
61
87
|
...this.params.write,
|
|
62
|
-
frame: this.builder.build(BP2_REALTIME_COMMAND)
|
|
88
|
+
frame: this.builder.build(BP2_REALTIME_COMMAND),
|
|
89
|
+
delayBeforeWriteMs: BP2_POLL_INTERVAL_MS
|
|
63
90
|
});
|
|
64
91
|
isResultFrame = frame => (0, _hexToByte.hexToByte)(frame[1] ?? "0") === BP2_REALTIME_COMMAND && BP2_RESULT_STATES.has((frame[7] ?? "").toLowerCase());
|
|
65
92
|
isIdleFrame = frame => (0, _hexToByte.hexToByte)(frame[1] ?? "0") === BP2_REALTIME_COMMAND && BP2_IDLE_STATES.has((frame[7] ?? "").toLowerCase());
|
package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_sentryLogger","require","_hexToByte","_lepuCommandBuilder","_lepuFileTransfer","BP2_REALTIME_COMMAND","exports","BP2_RESULT_STATES","Set","BP2_ECG_STATE","BP2_IDLE_STATES","BP2HistorySequencer","builder","LepuCommandBuilder","lastRunStatusFrameCount","realtimeEcgActive","constructor","params","initialCommands","
|
|
1
|
+
{"version":3,"names":["_sentryLogger","require","_clockSync","_hexToByte","_lepuCommandBuilder","_lepuCommands","_lepuEcgTransfer","_lepuFileTransfer","_lepuFrame","_lepuResponseType","BP2_REALTIME_COMMAND","exports","BP2_RESULT_STATES","Set","BP2_ECG_STATE","BP2_IDLE_STATES","BP2_POLL_INTERVAL_MS","BP2HistorySequencer","builder","LepuCommandBuilder","lastRunStatusFrameCount","realtimeEcgActive","phase","constructor","params","initialCommands","isClockSyncEnabled","clockSync","write","frame","build","LepuCommand","SET_TIME","clockPayload","startTransfer","isHistoryTransfer","nextCommand","lepuCommandOf","undefined","isLepuSuccess","onError","describeLepuResponseType","transfer","logRunStatus","isResult","isResultFrame","endedWithoutResult","isIdleFrame","onOrphanStreamEnd","shouldStartTransfer","onTransferRequested","delayBeforeWriteMs","LepuFileTransfer","onFile","skipFiles","afterTransfer","finishTransfer","onTransferFinished","pollCommand","hexToByte","has","toLowerCase","runStatus","lastRunStatus","sentryLogger","from","to","previousFrameCount"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bp2/bp2.history-sequencer.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -144,7 +144,10 @@ class BTDataProcessor {
|
|
|
144
144
|
*/
|
|
145
145
|
let dependentData = null;
|
|
146
146
|
if (data.parsingCase.caseType === _caseType.CaseType.DEPENDENT) {
|
|
147
|
-
dependentData = this.callbacks.handleDependentResult?.(
|
|
147
|
+
dependentData = this.callbacks.handleDependentResult?.({
|
|
148
|
+
...data,
|
|
149
|
+
isMeasuring: this.measurementState.measuring
|
|
150
|
+
});
|
|
148
151
|
}
|
|
149
152
|
this.measurementState.advance(dependentData || data, frame);
|
|
150
153
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_sentryLogger","require","_caseType","_frameReadStatus","_frameParser","_measurementStateMachine","BTDataProcessor","buffers","Map","constructor","device","mainServices","stuckDataTimeoutDuration","callbacks","frameReader","frameParser","FrameParser","measurementState","MeasurementStateMachine","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","FrameReadStatus","COMPLETE","handleFrame","frame","answerFrame","CORRUPT","reportCorruptFrame","INCOMPLETE","validatePackage","progress","commandProgress","commands","nextCommand","sendCommands","data","parse","sentryLogger","join","dependentData","parsingCase","caseType","CaseType","DEPENDENT","handleDependentResult","advance","onError","Error","cause","message","setTimeout","cancelConnection","duration","commandTimeoutMs","onCommandTimeout","terminal","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-data-processor.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["_sentryLogger","require","_caseType","_frameReadStatus","_frameParser","_measurementStateMachine","BTDataProcessor","buffers","Map","constructor","device","mainServices","stuckDataTimeoutDuration","callbacks","frameReader","frameParser","FrameParser","measurementState","MeasurementStateMachine","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","FrameReadStatus","COMPLETE","handleFrame","frame","answerFrame","CORRUPT","reportCorruptFrame","INCOMPLETE","validatePackage","progress","commandProgress","commands","nextCommand","sendCommands","data","parse","sentryLogger","join","dependentData","parsingCase","caseType","CaseType","DEPENDENT","handleDependentResult","isMeasuring","measuring","advance","onError","Error","cause","message","setTimeout","cancelConnection","duration","commandTimeoutMs","onCommandTimeout","terminal","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-data-processor.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -53,11 +53,15 @@ const createLepuSequencer = (lepu, report, clockSync, manufacturerData) => {
|
|
|
53
53
|
protocol: selected.protocol,
|
|
54
54
|
writeWithoutResponse: selected.writeWithoutResponse,
|
|
55
55
|
setClockBeforeInfo: selected.setClockBeforeInfo,
|
|
56
|
+
clockSyncProtocol: selected.clockSyncProtocol,
|
|
56
57
|
clockSync,
|
|
57
58
|
expectedDeviceTypes: selected.expectedDeviceTypes,
|
|
58
59
|
...(selected.pollCommand === undefined ? {} : {
|
|
59
60
|
pollCommand: selected.pollCommand
|
|
60
61
|
}),
|
|
62
|
+
...(selected.pollIntervalMs === undefined ? {} : {
|
|
63
|
+
pollIntervalMs: selected.pollIntervalMs
|
|
64
|
+
}),
|
|
61
65
|
manufacturerData,
|
|
62
66
|
rejectEncryptionAtBytes: selected.rejectEncryptionAtBytes,
|
|
63
67
|
onIdentified: report.onIdentified,
|
package/lib/commonjs/modules/bt-management/services/devices/custom/custom-lepu-sequencer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_sentryLogger","require","_lepuAdvertisement","_lepuCommandBuilder","_lepuIdentityGate","_lepuTransports","DEFAULT_START_BYTE","recordLepuIdentity","deviceData","info","sn","serialNumber","sentryLogger","deviceId","id","deviceName","name","deviceType","branchCode","protocolMaxLength","exports","createLepuSequencer","lepu","report","clockSync","manufacturerData","selected","selectLepu","LepuIdentityGate","write","serviceUuid","characteristicUuid","builder","LepuCommandBuilder","requestStartByte","startBytes","fixedSequence","protocol","writeWithoutResponse","setClockBeforeInfo","expectedDeviceTypes","pollCommand","undefined","rejectEncryptionAtBytes","onIdentified","onRefused","manufacturerDataProtocol","viatomOxygenUsesV2","transport","lepuTransports","aw1","writeUuid"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/custom/custom-lepu-sequencer.ts"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAKA,IAAAC,kBAAA,GAAAD,OAAA;AACA,IAAAE,mBAAA,GAAAF,OAAA;AAEA,IAAAG,iBAAA,GAAAH,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AAEA;AACA,MAAMK,kBAAkB,GAAG,IAAI;AAO/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,kBAAkB,GAAGA,CACzBC,UAAsB,EACtBC,IAAoB,KACX;EACTD,UAAU,CAACE,EAAE,GAAGD,IAAI,CAACE,YAAY;EAEjC,IAAAC,0BAAY,EAAC,MAAM,EAAE,sCAAsC,EAAE;IAC3DC,QAAQ,EAAEL,UAAU,CAACM,EAAE;IACvBC,UAAU,EAAEP,UAAU,CAACQ,IAAI;IAC3BC,UAAU,EAAER,IAAI,CAACQ,UAAU;IAC3BC,UAAU,EAAET,IAAI,CAACS,UAAU;IAC3BC,iBAAiB,EAAEV,IAAI,CAACU;EAC1B,CAAC,CAAC;AACJ,CAAC;AAACC,OAAA,CAAAb,kBAAA,GAAAA,kBAAA;AAEF,MAAMc,mBAAmB,GAAGA,CAC1BC,IAAoB,EACpBC,MAAsB,EACtBC,SAA4B,EAC5BC,gBAAyB,KACJ;EACrB,MAAMC,QAAQ,GAAGC,UAAU,CAACL,IAAI,EAAEG,gBAAgB,CAAC;EAEnD,OAAO,IAAIG,kCAAgB,CAAC;IAC1BC,KAAK,EAAE;MACLC,WAAW,EAAEJ,QAAQ,CAACG,KAAK,CAACC,WAAW;MACvCC,kBAAkB,EAAEL,QAAQ,CAACG,KAAK,CAACE;IACrC,CAAC;IACDC,OAAO,EAAE,IAAIC,sCAAkB,CAC7BP,QAAQ,CAACQ,gBAAgB,IAAIR,QAAQ,CAACS,UAAU,CAAC,CAAC,CAAC,IAAI7B,kBAAkB,EACzE;MAAE8B,aAAa,EAAEV,QAAQ,CAACW,QAAQ,KAAK;IAAgB,CACzD,CAAC;IACDA,QAAQ,EAAEX,QAAQ,CAACW,QAAQ;IAC3BC,oBAAoB,EAAEZ,QAAQ,CAACY,oBAAoB;IACnDC,kBAAkB,EAAEb,QAAQ,CAACa,kBAAkB;IAC/
|
|
1
|
+
{"version":3,"names":["_sentryLogger","require","_lepuAdvertisement","_lepuCommandBuilder","_lepuIdentityGate","_lepuTransports","DEFAULT_START_BYTE","recordLepuIdentity","deviceData","info","sn","serialNumber","sentryLogger","deviceId","id","deviceName","name","deviceType","branchCode","protocolMaxLength","exports","createLepuSequencer","lepu","report","clockSync","manufacturerData","selected","selectLepu","LepuIdentityGate","write","serviceUuid","characteristicUuid","builder","LepuCommandBuilder","requestStartByte","startBytes","fixedSequence","protocol","writeWithoutResponse","setClockBeforeInfo","clockSyncProtocol","expectedDeviceTypes","pollCommand","undefined","pollIntervalMs","rejectEncryptionAtBytes","onIdentified","onRefused","manufacturerDataProtocol","viatomOxygenUsesV2","transport","lepuTransports","aw1","writeUuid"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/custom/custom-lepu-sequencer.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,10 +9,12 @@ var _caseType = require("../../../types/case-type.js");
|
|
|
9
9
|
var _createFrameValidator = require("../../../utils/create-frame-validator.js");
|
|
10
10
|
var _parseMeasurement = require("../../../utils/parse-measurement.js");
|
|
11
11
|
var _rejectCustomReading = require("../../../utils/reject-custom-reading.js");
|
|
12
|
+
var _bp2Files = require("../bp2/bp2.files.js");
|
|
12
13
|
var _btManagedDevice = require("../bt-managed-device.js");
|
|
13
14
|
var _lepuCommandBuilder = require("../lepu/lepu.command-builder.js");
|
|
14
15
|
var _lepuEcgTransfer = require("../lepu/lepu.ecg-transfer.js");
|
|
15
16
|
var _lepuFrameReader = require("../lepu/lepu.frame-reader.js");
|
|
17
|
+
var _viatomBp3Files = require("../viatom/viatom.bp3-files.js");
|
|
16
18
|
var _viatomEcgFiles = require("../viatom/viatom.ecg-files.js");
|
|
17
19
|
var _customLepuSequencer = require("./custom-lepu-sequencer.js");
|
|
18
20
|
/* eslint-disable max-lines */
|
|
@@ -27,6 +29,7 @@ var _customLepuSequencer = require("./custom-lepu-sequencer.js");
|
|
|
27
29
|
* catalog accepts. Anything else is reported through onError and no measurement is emitted.
|
|
28
30
|
*/
|
|
29
31
|
class CustomDevice extends _btManagedDevice.BTManagedDevice {
|
|
32
|
+
reportedHistoryIds = new Set();
|
|
30
33
|
validators = new Map();
|
|
31
34
|
sessionAggregates = new Map();
|
|
32
35
|
constructor(device, params, definition) {
|
|
@@ -37,7 +40,7 @@ class CustomDevice extends _btManagedDevice.BTManagedDevice {
|
|
|
37
40
|
this.definition = definition;
|
|
38
41
|
this.sessionPolicy = definition.sessionPolicy;
|
|
39
42
|
this.deviceData.clockSync = definition.clockSync;
|
|
40
|
-
this.
|
|
43
|
+
this.deliveredFileNames = new Set([...(params.deliveredEcgFileNames ?? []), ...(params.deliveredFileNames ?? [])]);
|
|
41
44
|
const selectedLepu = definition.lepu ? (0, _customLepuSequencer.selectLepu)(definition.lepu, device.manufacturerData ?? undefined) : undefined;
|
|
42
45
|
this.mainServices = selectedLepu?.manufacturerDataProtocol === "viatom-oxygen" ? definition.mainServices.filter(service => service.uuid === selectedLepu.write.serviceUuid) : definition.mainServices;
|
|
43
46
|
this.stuckDataTimeout = definition.stuckDataTimeout;
|
|
@@ -65,7 +68,8 @@ class CustomDevice extends _btManagedDevice.BTManagedDevice {
|
|
|
65
68
|
}
|
|
66
69
|
this.frameReader = new _lepuFrameReader.LepuFrameReader(lepu.startBytes);
|
|
67
70
|
this.createCommandSequencer = () => {
|
|
68
|
-
if (lepu.fileTransfer
|
|
71
|
+
if (lepu.fileTransfer !== undefined) {
|
|
72
|
+
this.reportedHistoryIds.clear();
|
|
69
73
|
return new _lepuEcgTransfer.LepuEcgTransferSequencer({
|
|
70
74
|
write: {
|
|
71
75
|
serviceUuid: lepu.write.serviceUuid,
|
|
@@ -73,13 +77,17 @@ class CustomDevice extends _btManagedDevice.BTManagedDevice {
|
|
|
73
77
|
},
|
|
74
78
|
builder: new _lepuCommandBuilder.LepuCommandBuilder(lepu.startBytes[0] ?? "a5"),
|
|
75
79
|
clockSync,
|
|
80
|
+
manufacturerData: this.device.manufacturerData ?? undefined,
|
|
81
|
+
rejectEncryptionAtBytes: lepu.rejectEncryptionAtBytes,
|
|
76
82
|
expectedDeviceTypes: lepu.expectedDeviceTypes,
|
|
77
83
|
onIdentified: this.onIdentified,
|
|
78
84
|
onRefused: this.onIdentityRefused,
|
|
79
|
-
onFile: this.reportViatomEcgFile,
|
|
80
|
-
skipFiles: this.
|
|
81
|
-
acceptFile: name => lepu.ecgFileDecoder === "raw-int16" && /^R/i.test(name),
|
|
82
|
-
|
|
85
|
+
onFile: lepu.fileTransfer === "ecg" ? this.reportViatomEcgFile : lepu.fileTransfer === "bp2" ? this.reportViatomBp2File : this.reportViatomBp3File,
|
|
86
|
+
skipFiles: lepu.fileTransfer === "bp3" ? undefined : this.deliveredFileNames,
|
|
87
|
+
acceptFile: lepu.fileTransfer === "ecg" ? name => lepu.ecgFileDecoder === "raw-int16" && /^R/i.test(name) : lepu.fileTransfer === "bp3" ? name => /^bp\.list$/i.test(name) : undefined,
|
|
88
|
+
pollCommand: lepu.fileTransfer === "ecg" ? undefined : lepu.pollCommand,
|
|
89
|
+
pollIntervalMs: lepu.fileTransfer === "ecg" ? undefined : lepu.pollIntervalMs,
|
|
90
|
+
afterTransfer: lepu.fileTransfer === "ecg" && lepu.pollCommand ? () => [{
|
|
83
91
|
serviceUuid: lepu.write.serviceUuid,
|
|
84
92
|
characteristicUuid: lepu.write.characteristicUuid,
|
|
85
93
|
frame: new _lepuCommandBuilder.LepuCommandBuilder(lepu.startBytes[0] ?? "a5").build(lepu.pollCommand)
|
|
@@ -116,6 +124,29 @@ class CustomDevice extends _btManagedDevice.BTManagedDevice {
|
|
|
116
124
|
recordingId: file.name
|
|
117
125
|
});
|
|
118
126
|
};
|
|
127
|
+
reportViatomBp2File = file => {
|
|
128
|
+
const decoded = (0, _bp2Files.decodeBP2File)(file.name, file.content);
|
|
129
|
+
if (!decoded || this.reportedHistoryIds.has(decoded.recordingId)) {
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
this.reportedHistoryIds.add(decoded.recordingId);
|
|
133
|
+
this.onResult?.({
|
|
134
|
+
...decoded,
|
|
135
|
+
caseType: _caseType.CaseType.RESULT
|
|
136
|
+
});
|
|
137
|
+
};
|
|
138
|
+
reportViatomBp3File = file => {
|
|
139
|
+
(0, _viatomBp3Files.decodeViatomBp3File)(file.name, file.content)?.forEach(decoded => {
|
|
140
|
+
if (this.deliveredFileNames.has(decoded.recordingId) || this.reportedHistoryIds.has(decoded.recordingId)) {
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
this.reportedHistoryIds.add(decoded.recordingId);
|
|
144
|
+
this.onResult?.({
|
|
145
|
+
...decoded,
|
|
146
|
+
caseType: _caseType.CaseType.RESULT
|
|
147
|
+
});
|
|
148
|
+
});
|
|
149
|
+
};
|
|
119
150
|
onIdentified = info => (0, _customLepuSequencer.recordLepuIdentity)(this.deviceData, info);
|
|
120
151
|
onIdentityRefused = reason => {
|
|
121
152
|
this.onError?.(new Error(`Custom device "${this.definition.id}" was not addressed: ${reason}.`));
|
|
@@ -135,6 +166,15 @@ class CustomDevice extends _btManagedDevice.BTManagedDevice {
|
|
|
135
166
|
*/
|
|
136
167
|
handleDependentResult = data => {
|
|
137
168
|
try {
|
|
169
|
+
if (data.parsingCase.requiresStream && !data.isMeasuring) {
|
|
170
|
+
return {
|
|
171
|
+
...data,
|
|
172
|
+
parsingCase: {
|
|
173
|
+
...data.parsingCase,
|
|
174
|
+
caseType: _caseType.CaseType.OTHER
|
|
175
|
+
}
|
|
176
|
+
};
|
|
177
|
+
}
|
|
138
178
|
if (this.sessionPolicy) {
|
|
139
179
|
this.captureSessionSample(data);
|
|
140
180
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_core","require","_caseType","_createFrameValidator","_parseMeasurement","_rejectCustomReading","_btManagedDevice","_lepuCommandBuilder","_lepuEcgTransfer","_lepuFrameReader","_viatomEcgFiles","_customLepuSequencer","CustomDevice","BTManagedDevice","validators","Map","sessionAggregates","constructor","device","params","definition","oneReadingPerConnection","sessionPolicy","deviceData","clockSync","deliveredEcgFileNames","Set","selectedLepu","lepu","selectLepu","manufacturerData","undefined","mainServices","manufacturerDataProtocol","filter","service","uuid","write","serviceUuid","stuckDataTimeout","reportsBondedEvent","preferredMtu","declareLepuProtocol","frames","forEach","frame","set","createFrameValidator","frameReader","LepuFrameReader","startBytes","createCommandSequencer","fileTransfer","LepuEcgTransferSequencer","characteristicUuid","builder","LepuCommandBuilder","expectedDeviceTypes","onIdentified","onRefused","onIdentityRefused","onFile","reportViatomEcgFile","skipFiles","acceptFile","name","ecgFileDecoder","test","afterTransfer","pollCommand","build","onError","reason","Error","onProgress","progress","onConnectionEvent","kind","current","receivedBytes","total","totalBytes","createLepuSequencer","file","decoded","decodeViatomEcgRecording","content","samples","length","onResult","measurementTypeKey","MeasurementTypeKey","ecg","caseType","CaseType","RESULT","diagramPoints","duration","recordedAt","recordedAtFromViatomFileName","recordingId","info","recordLepuIdentity","id","validatePackage","pkg","validate","get","String","toLowerCase","handleDependentResult","data","captureSessionSample","parsingCase","STREAM","shouldReportDependentResult","reportFrame","error","OTHER","_data","handleSuccessResult","handleMeasurementEnd","policy","aggregates","values","clear","sessionStartedAt","emit","aggregate","count","minSamples","summary","sample","Object","fromEntries","sums","entries","map","sessionAverage","decorateReading","value","decimals","fields","Math","trunc","Number","toFixed","measurements","frameRecordedAt","Date","measurement","reading","createMeasurement","parsedData","rejection","measurementRejection","key","existing","fieldNames","recordOffset","repeated","repeatedRecords","report","records","floor","from","recordBytes","record","parseMeasurement","discard","reportMeasurement","discardedReadingError","rejectCustomReading","find","message","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/custom/custom.device.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_core","require","_caseType","_createFrameValidator","_parseMeasurement","_rejectCustomReading","_bp2Files","_btManagedDevice","_lepuCommandBuilder","_lepuEcgTransfer","_lepuFrameReader","_viatomBp3Files","_viatomEcgFiles","_customLepuSequencer","CustomDevice","BTManagedDevice","reportedHistoryIds","Set","validators","Map","sessionAggregates","constructor","device","params","definition","oneReadingPerConnection","sessionPolicy","deviceData","clockSync","deliveredFileNames","deliveredEcgFileNames","selectedLepu","lepu","selectLepu","manufacturerData","undefined","mainServices","manufacturerDataProtocol","filter","service","uuid","write","serviceUuid","stuckDataTimeout","reportsBondedEvent","preferredMtu","declareLepuProtocol","frames","forEach","frame","set","createFrameValidator","frameReader","LepuFrameReader","startBytes","createCommandSequencer","fileTransfer","clear","LepuEcgTransferSequencer","characteristicUuid","builder","LepuCommandBuilder","rejectEncryptionAtBytes","expectedDeviceTypes","onIdentified","onRefused","onIdentityRefused","onFile","reportViatomEcgFile","reportViatomBp2File","reportViatomBp3File","skipFiles","acceptFile","name","ecgFileDecoder","test","pollCommand","pollIntervalMs","afterTransfer","build","onError","reason","Error","onProgress","progress","onConnectionEvent","kind","current","receivedBytes","total","totalBytes","createLepuSequencer","file","decoded","decodeViatomEcgRecording","content","samples","length","onResult","measurementTypeKey","MeasurementTypeKey","ecg","caseType","CaseType","RESULT","diagramPoints","duration","recordedAt","recordedAtFromViatomFileName","recordingId","decodeBP2File","has","add","decodeViatomBp3File","info","recordLepuIdentity","id","validatePackage","pkg","validate","get","String","toLowerCase","handleDependentResult","data","parsingCase","requiresStream","isMeasuring","OTHER","captureSessionSample","STREAM","shouldReportDependentResult","reportFrame","error","_data","handleSuccessResult","handleMeasurementEnd","policy","aggregates","values","sessionStartedAt","emit","aggregate","count","minSamples","summary","sample","Object","fromEntries","sums","entries","map","sessionAverage","decorateReading","value","decimals","fields","Math","trunc","Number","toFixed","measurements","frameRecordedAt","Date","measurement","reading","createMeasurement","parsedData","rejection","measurementRejection","key","existing","fieldNames","recordOffset","repeated","repeatedRecords","report","records","floor","from","recordBytes","record","parseMeasurement","discard","reportMeasurement","discardedReadingError","rejectCustomReading","find","message","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/custom/custom.device.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.LepuEcgTransferSequencer = void 0;
|
|
6
|
+
exports.clockPayload = exports.LepuEcgTransferSequencer = void 0;
|
|
7
7
|
var _clockSync = require("../../../types/clock-sync.js");
|
|
8
8
|
var _lepuCommands = require("./lepu.commands.js");
|
|
9
9
|
var _lepuFileTransfer = require("./lepu.file-transfer.js");
|
|
@@ -19,6 +19,8 @@ class LepuEcgTransferSequencer {
|
|
|
19
19
|
write: params.write,
|
|
20
20
|
builder: params.builder,
|
|
21
21
|
expectedDeviceTypes: params.expectedDeviceTypes,
|
|
22
|
+
manufacturerData: params.manufacturerData,
|
|
23
|
+
rejectEncryptionAtBytes: params.rejectEncryptionAtBytes,
|
|
22
24
|
onIdentified: params.onIdentified,
|
|
23
25
|
onRefused: params.onRefused,
|
|
24
26
|
onAdmitted: this.startClockOrTransfer
|
|
@@ -33,6 +35,12 @@ class LepuEcgTransferSequencer {
|
|
|
33
35
|
if (this.phase === "clock") {
|
|
34
36
|
return this.finishClock(frame);
|
|
35
37
|
}
|
|
38
|
+
if (this.phase === "polling") {
|
|
39
|
+
if (this.params.pollCommand === undefined || (0, _lepuFrame.lepuCommandOf)(frame) !== this.params.pollCommand) {
|
|
40
|
+
return undefined;
|
|
41
|
+
}
|
|
42
|
+
return this.startTransfer(3_000);
|
|
43
|
+
}
|
|
36
44
|
return this.transfer?.nextCommand(frame);
|
|
37
45
|
};
|
|
38
46
|
startClockOrTransfer = () => {
|
|
@@ -54,7 +62,7 @@ class LepuEcgTransferSequencer {
|
|
|
54
62
|
}
|
|
55
63
|
return this.startTransfer();
|
|
56
64
|
};
|
|
57
|
-
startTransfer =
|
|
65
|
+
startTransfer = delayBeforeWriteMs => {
|
|
58
66
|
this.phase = "files";
|
|
59
67
|
this.transfer = new _lepuFileTransfer.LepuFileTransfer({
|
|
60
68
|
write: this.params.write,
|
|
@@ -63,15 +71,31 @@ class LepuEcgTransferSequencer {
|
|
|
63
71
|
onError: this.params.onError,
|
|
64
72
|
skipFiles: this.params.skipFiles,
|
|
65
73
|
acceptFile: this.params.acceptFile,
|
|
66
|
-
afterTransfer: this.
|
|
74
|
+
afterTransfer: this.finishTransfer,
|
|
67
75
|
onProgress: this.params.onProgress
|
|
68
76
|
});
|
|
69
|
-
return this.transfer.initialCommands();
|
|
77
|
+
return this.transfer.initialCommands(delayBeforeWriteMs);
|
|
78
|
+
};
|
|
79
|
+
finishTransfer = () => {
|
|
80
|
+
this.transfer = undefined;
|
|
81
|
+
if (this.params.pollCommand !== undefined) {
|
|
82
|
+
this.phase = "polling";
|
|
83
|
+
return [this.pollCommand()];
|
|
84
|
+
}
|
|
85
|
+
return this.params.afterTransfer?.() ?? [];
|
|
70
86
|
};
|
|
87
|
+
pollCommand = () => ({
|
|
88
|
+
...this.params.write,
|
|
89
|
+
frame: this.params.builder.build(this.params.pollCommand),
|
|
90
|
+
...(this.params.pollIntervalMs === undefined ? {} : {
|
|
91
|
+
delayBeforeWriteMs: this.params.pollIntervalMs
|
|
92
|
+
})
|
|
93
|
+
});
|
|
71
94
|
}
|
|
72
95
|
exports.LepuEcgTransferSequencer = LepuEcgTransferSequencer;
|
|
73
96
|
const clockPayload = clockSync => {
|
|
74
97
|
const parts = (0, _clockSync.getClockParts)(clockSync?.now?.() ?? new Date(), clockSync?.timezone);
|
|
75
98
|
return [parts.year & 0xff, parts.year >> 8 & 0xff, parts.month, parts.day, parts.hours, parts.minutes, parts.seconds];
|
|
76
99
|
};
|
|
100
|
+
exports.clockPayload = clockPayload;
|
|
77
101
|
//# sourceMappingURL=lepu.ecg-transfer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clockSync","require","_lepuCommands","_lepuFileTransfer","_lepuFrame","_lepuIdentityGate","_lepuResponseType","LepuEcgTransferSequencer","phase","constructor","params","identity","LepuIdentityGate","write","builder","expectedDeviceTypes","onIdentified","onRefused","onAdmitted","startClockOrTransfer","initialCommands","isHistoryTransfer","nextCommand","frame","finishClock","
|
|
1
|
+
{"version":3,"names":["_clockSync","require","_lepuCommands","_lepuFileTransfer","_lepuFrame","_lepuIdentityGate","_lepuResponseType","LepuEcgTransferSequencer","phase","constructor","params","identity","LepuIdentityGate","write","builder","expectedDeviceTypes","manufacturerData","rejectEncryptionAtBytes","onIdentified","onRefused","onAdmitted","startClockOrTransfer","initialCommands","isHistoryTransfer","nextCommand","frame","finishClock","pollCommand","undefined","lepuCommandOf","startTransfer","transfer","isClockSyncEnabled","clockSync","build","LepuCommand","SET_TIME","clockPayload","isLepuSuccess","onError","describeLepuResponseType","delayBeforeWriteMs","LepuFileTransfer","onFile","skipFiles","acceptFile","afterTransfer","finishTransfer","onProgress","pollIntervalMs","exports","parts","getClockParts","now","Date","timezone","year","month","day","hours","minutes","seconds"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.ecg-transfer.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AASA,IAAAC,aAAA,GAAAD,OAAA;AAEA,IAAAE,iBAAA,GAAAF,OAAA;AACA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,iBAAA,GAAAJ,OAAA;AACA,IAAAK,iBAAA,GAAAL,OAAA;AA2BA;AACA,MAAMM,wBAAwB,CAA6B;EACjDC,KAAK,GAAyB,UAAU;EAIzCC,WAAWA,CAAkBC,MAA6B,EAAE;IAAA,KAA/BA,MAA6B,GAA7BA,MAA6B;IAC/D,IAAI,CAACC,QAAQ,GAAG,IAAIC,kCAAgB,CAAC;MACnCC,KAAK,EAAEH,MAAM,CAACG,KAAK;MACnBC,OAAO,EAAEJ,MAAM,CAACI,OAAO;MACvBC,mBAAmB,EAAEL,MAAM,CAACK,mBAAmB;MAC/CC,gBAAgB,EAAEN,MAAM,CAACM,gBAAgB;MACzCC,uBAAuB,EAAEP,MAAM,CAACO,uBAAuB;MACvDC,YAAY,EAAER,MAAM,CAACQ,YAAY;MACjCC,SAAS,EAAET,MAAM,CAACS,SAAS;MAC3BC,UAAU,EAAE,IAAI,CAACC;IACnB,CAAC,CAAC;EACJ;EAEOC,eAAe,GAAGA,CAAA,KACvB,IAAI,CAACX,QAAQ,CAACW,eAAe,CAAC,CAAC;EAE1BC,iBAAiB,GAAGA,CAAA,KAAe,IAAI;EAEvCC,WAAW,GAChBC,KAAwB,IACiB;IACzC,IAAI,IAAI,CAACjB,KAAK,KAAK,UAAU,EAAE;MAC7B,OAAO,IAAI,CAACG,QAAQ,CAACa,WAAW,CAACC,KAAK,CAAC;IACzC;IAEA,IAAI,IAAI,CAACjB,KAAK,KAAK,OAAO,EAAE;MAC1B,OAAO,IAAI,CAACkB,WAAW,CAACD,KAAK,CAAC;IAChC;IAEA,IAAI,IAAI,CAACjB,KAAK,KAAK,SAAS,EAAE;MAC5B,IACE,IAAI,CAACE,MAAM,CAACiB,WAAW,KAAKC,SAAS,IACrC,IAAAC,wBAAa,EAACJ,KAAK,CAAC,KAAK,IAAI,CAACf,MAAM,CAACiB,WAAW,EAChD;QACA,OAAOC,SAAS;MAClB;MAEA,OAAO,IAAI,CAACE,aAAa,CAAC,KAAK,CAAC;IAClC;IAEA,OAAO,IAAI,CAACC,QAAQ,EAAEP,WAAW,CAACC,KAAK,CAAC;EAC1C,CAAC;EAEOJ,oBAAoB,GAAGA,CAAA,KAAgC;IAC7D,IAAI,IAAAW,6BAAkB,EAAC,IAAI,CAACtB,MAAM,CAACuB,SAAS,CAAC,EAAE;MAC7C,IAAI,CAACzB,KAAK,GAAG,OAAO;MAEpB,OAAO,CACL;QACE,GAAG,IAAI,CAACE,MAAM,CAACG,KAAK;QACpBY,KAAK,EAAE,IAAI,CAACf,MAAM,CAACI,OAAO,CAACoB,KAAK,CAC9BC,yBAAW,CAACC,QAAQ,EACpBC,YAAY,CAAC,IAAI,CAAC3B,MAAM,CAACuB,SAAS,CACpC;MACF,CAAC,CACF;IACH;IAEA,OAAO,IAAI,CAACH,aAAa,CAAC,CAAC;EAC7B,CAAC;EAEOJ,WAAW,GACjBD,KAAwB,IACiB;IACzC,IAAI,IAAAI,wBAAa,EAACJ,KAAK,CAAC,KAAKU,yBAAW,CAACC,QAAQ,EAAE;MACjD,OAAOR,SAAS;IAClB;IAEA,IAAI,CAAC,IAAAU,+BAAa,EAACb,KAAK,CAAC,EAAE;MACzB,IAAI,CAACf,MAAM,CAAC6B,OAAO,CACjB,gCAAgC,IAAAC,0CAAwB,EAACf,KAAK,CAAC,EACjE,CAAC;IACH;IAEA,OAAO,IAAI,CAACK,aAAa,CAAC,CAAC;EAC7B,CAAC;EAEOA,aAAa,GACnBW,kBAA2B,IACE;IAC7B,IAAI,CAACjC,KAAK,GAAG,OAAO;IACpB,IAAI,CAACuB,QAAQ,GAAG,IAAIW,kCAAgB,CAAC;MACnC7B,KAAK,EAAE,IAAI,CAACH,MAAM,CAACG,KAAK;MACxBC,OAAO,EAAE,IAAI,CAACJ,MAAM,CAACI,OAAO;MAC5B6B,MAAM,EAAE,IAAI,CAACjC,MAAM,CAACiC,MAAM;MAC1BJ,OAAO,EAAE,IAAI,CAAC7B,MAAM,CAAC6B,OAAO;MAC5BK,SAAS,EAAE,IAAI,CAAClC,MAAM,CAACkC,SAAS;MAChCC,UAAU,EAAE,IAAI,CAACnC,MAAM,CAACmC,UAAU;MAClCC,aAAa,EAAE,IAAI,CAACC,cAAc;MAClCC,UAAU,EAAE,IAAI,CAACtC,MAAM,CAACsC;IAC1B,CAAC,CAAC;IAEF,OAAO,IAAI,CAACjB,QAAQ,CAACT,eAAe,CAACmB,kBAAkB,CAAC;EAC1D,CAAC;EAEOM,cAAc,GAAGA,CAAA,KAAgC;IACvD,IAAI,CAAChB,QAAQ,GAAGH,SAAS;IAEzB,IAAI,IAAI,CAAClB,MAAM,CAACiB,WAAW,KAAKC,SAAS,EAAE;MACzC,IAAI,CAACpB,KAAK,GAAG,SAAS;MAEtB,OAAO,CAAC,IAAI,CAACmB,WAAW,CAAC,CAAC,CAAC;IAC7B;IAEA,OAAO,IAAI,CAACjB,MAAM,CAACoC,aAAa,GAAG,CAAC,IAAI,EAAE;EAC5C,CAAC;EAEOnB,WAAW,GAAGA,CAAA,MAAsB;IAC1C,GAAG,IAAI,CAACjB,MAAM,CAACG,KAAK;IACpBY,KAAK,EAAE,IAAI,CAACf,MAAM,CAACI,OAAO,CAACoB,KAAK,CAAC,IAAI,CAACxB,MAAM,CAACiB,WAAY,CAAC;IAC1D,IAAI,IAAI,CAACjB,MAAM,CAACuC,cAAc,KAAKrB,SAAS,GACxC,CAAC,CAAC,GACF;MAAEa,kBAAkB,EAAE,IAAI,CAAC/B,MAAM,CAACuC;IAAe,CAAC;EACxD,CAAC,CAAC;AACJ;AAACC,OAAA,CAAA3C,wBAAA,GAAAA,wBAAA;AAED,MAAM8B,YAAY,GAAIJ,SAA4B,IAAe;EAC/D,MAAMkB,KAAK,GAAG,IAAAC,wBAAa,EACzBnB,SAAS,EAAEoB,GAAG,GAAG,CAAC,IAAI,IAAIC,IAAI,CAAC,CAAC,EAChCrB,SAAS,EAAEsB,QACb,CAAC;EAED,OAAO,CACLJ,KAAK,CAACK,IAAI,GAAG,IAAI,EAChBL,KAAK,CAACK,IAAI,IAAI,CAAC,GAAI,IAAI,EACxBL,KAAK,CAACM,KAAK,EACXN,KAAK,CAACO,GAAG,EACTP,KAAK,CAACQ,KAAK,EACXR,KAAK,CAACS,OAAO,EACbT,KAAK,CAACU,OAAO,CACd;AACH,CAAC;AAACX,OAAA,CAAAb,YAAA,GAAAA,YAAA","ignoreList":[]}
|
|
@@ -50,7 +50,7 @@ class LepuFileTransfer {
|
|
|
50
50
|
this.params = params;
|
|
51
51
|
}
|
|
52
52
|
isHistoryTransfer = () => true;
|
|
53
|
-
initialCommands =
|
|
53
|
+
initialCommands = delayBeforeWriteMs => [this.commandFor(_lepuCommands.LepuCommand.GET_FILE_LIST, [], delayBeforeWriteMs)];
|
|
54
54
|
nextCommand = frame => {
|
|
55
55
|
const command = (0, _lepuFrame.lepuCommandOf)(frame);
|
|
56
56
|
if (this.isDone) {
|
|
@@ -156,9 +156,12 @@ class LepuFileTransfer {
|
|
|
156
156
|
this.isSessionOpen = false;
|
|
157
157
|
return this.closeFile();
|
|
158
158
|
};
|
|
159
|
-
commandFor = (command, payload = []) => ({
|
|
159
|
+
commandFor = (command, payload = [], delayBeforeWriteMs) => ({
|
|
160
160
|
...this.params.write,
|
|
161
|
-
frame: this.params.builder.build(command, payload)
|
|
161
|
+
frame: this.params.builder.build(command, payload),
|
|
162
|
+
...(delayBeforeWriteMs === undefined ? {} : {
|
|
163
|
+
delayBeforeWriteMs
|
|
164
|
+
})
|
|
162
165
|
});
|
|
163
166
|
}
|
|
164
167
|
exports.LepuFileTransfer = LepuFileTransfer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_le32FromHex","require","_le32ToBytes","_lepuCommands","_lepuFileNames","_lepuFrame","_lepuResponseType","FILE_SIZE_OFFSET","MAX_FILE_BYTES","TRANSFER_COMMANDS","LepuCommand","GET_FILE_LIST","READ_FILE_START","READ_FILE_DATA","READ_FILE_END","LepuFileTransfer","files","fileIndex","name","totalBytes","content","isSessionOpen","isDone","constructor","params","isHistoryTransfer","initialCommands","commandFor","nextCommand","frame","command","lepuCommandOf","afterTransfer","includes","undefined","isLepuSuccess","fail","describeLepuResponseType","lepuNamesFrom","lepuPayloadOf","openNextFile","openedFile","appendChunk","closedFile","skipFiles","has","acceptFile","lepuNameBytes","le32ToBytes","payload","le32FromHex","limit","maxFileBytes","closeFile","length","push","onProgress","receivedBytes","onFile","reason","onError","write","builder","build","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.file-transfer.ts"],"mappings":";;;;;;AAIA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAGA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,iBAAA,GAAAL,OAAA;AAXA;;AAaA,MAAMM,gBAAgB,GAAG,CAAC;;AAE1B;AACA;AACA;AACA;AACA;AACA,MAAMC,cAAc,GAAG,OAAO;AAE9B,MAAMC,iBAAoC,GAAG,CAC3CC,yBAAW,CAACC,aAAa,EACzBD,yBAAW,CAACE,eAAe,EAC3BF,yBAAW,CAACG,cAAc,EAC1BH,yBAAW,CAACI,aAAa,CAC1B;AAwCD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,gBAAgB,CAA6B;EACzCC,KAAK,GAAa,EAAE;EACpBC,SAAS,GAAG,CAAC;EACbC,IAAI,GAAG,EAAE;EACTC,UAAU,GAAG,CAAC;EACdC,OAAO,GAAa,EAAE;EACtBC,aAAa,GAAG,KAAK;EACrBC,MAAM,GAAG,KAAK;EAEfC,WAAWA,CAAkBC,MAA8B,EAAE;IAAA,KAAhCA,MAA8B,GAA9BA,MAA8B;EAAG;EAE9DC,iBAAiB,GAAGA,CAAA,KAAe,IAAI;EAEvCC,eAAe,
|
|
1
|
+
{"version":3,"names":["_le32FromHex","require","_le32ToBytes","_lepuCommands","_lepuFileNames","_lepuFrame","_lepuResponseType","FILE_SIZE_OFFSET","MAX_FILE_BYTES","TRANSFER_COMMANDS","LepuCommand","GET_FILE_LIST","READ_FILE_START","READ_FILE_DATA","READ_FILE_END","LepuFileTransfer","files","fileIndex","name","totalBytes","content","isSessionOpen","isDone","constructor","params","isHistoryTransfer","initialCommands","delayBeforeWriteMs","commandFor","nextCommand","frame","command","lepuCommandOf","afterTransfer","includes","undefined","isLepuSuccess","fail","describeLepuResponseType","lepuNamesFrom","lepuPayloadOf","openNextFile","openedFile","appendChunk","closedFile","skipFiles","has","acceptFile","lepuNameBytes","le32ToBytes","payload","le32FromHex","limit","maxFileBytes","closeFile","length","push","onProgress","receivedBytes","onFile","reason","onError","write","builder","build","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.file-transfer.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -38,6 +38,12 @@ class LepuIdentityGate {
|
|
|
38
38
|
this.pendingCommand = setClock ? 0x16 : VIATOM_OXYGEN_INFO;
|
|
39
39
|
return [command];
|
|
40
40
|
}
|
|
41
|
+
if (this.params.clockSyncProtocol && (0, _clockSync.isClockSyncEnabled)(this.params.clockSync)) {
|
|
42
|
+
const command = this.params.clockSyncProtocol === "bp3" ? 0xc0 : 0xec;
|
|
43
|
+
this.pendingClockCommand = command;
|
|
44
|
+
this.pendingCommand = command;
|
|
45
|
+
return [this.commandFor(command, clockPayload(this.params.clockSync, this.params.clockSyncProtocol))];
|
|
46
|
+
}
|
|
41
47
|
this.pendingCommand = _lepuCommands.LepuCommand.GET_INFO;
|
|
42
48
|
return [this.commandFor(_lepuCommands.LepuCommand.GET_INFO)];
|
|
43
49
|
};
|
|
@@ -45,6 +51,9 @@ class LepuIdentityGate {
|
|
|
45
51
|
if (this.params.protocol === "viatom-oxygen") {
|
|
46
52
|
return this.nextViatomOxygenCommand(frame);
|
|
47
53
|
}
|
|
54
|
+
if (this.pendingClockCommand !== undefined) {
|
|
55
|
+
return this.nextClockCommand(frame);
|
|
56
|
+
}
|
|
48
57
|
if (this.isRefused) {
|
|
49
58
|
return undefined;
|
|
50
59
|
}
|
|
@@ -53,6 +62,14 @@ class LepuIdentityGate {
|
|
|
53
62
|
}
|
|
54
63
|
return this.admit(frame);
|
|
55
64
|
};
|
|
65
|
+
nextClockCommand = frame => {
|
|
66
|
+
if ((0, _hexToByte.hexToByte)(frame[COMMAND_INDEX] ?? "ff") !== this.pendingClockCommand) {
|
|
67
|
+
return undefined;
|
|
68
|
+
}
|
|
69
|
+
this.pendingClockCommand = undefined;
|
|
70
|
+
this.pendingCommand = _lepuCommands.LepuCommand.GET_INFO;
|
|
71
|
+
return [this.commandFor(_lepuCommands.LepuCommand.GET_INFO)];
|
|
72
|
+
};
|
|
56
73
|
|
|
57
74
|
/** Decides on the reply to the generic `GET_INFO` command. */
|
|
58
75
|
admit = frame => {
|
|
@@ -86,7 +103,7 @@ class LepuIdentityGate {
|
|
|
86
103
|
};
|
|
87
104
|
|
|
88
105
|
/** Nothing, for a declaration that asks what the device is and stops there. */
|
|
89
|
-
poll = () => this.params.pollCommand === undefined ? undefined : [this.commandFor(this.params.pollCommand)];
|
|
106
|
+
poll = () => this.params.pollCommand === undefined ? undefined : [this.commandFor(this.params.pollCommand, [], this.params.pollIntervalMs)];
|
|
90
107
|
commandFor = (command, payload = [], delayBeforeWriteMs) => ({
|
|
91
108
|
...this.params.write,
|
|
92
109
|
frame: this.params.builder.build(command, payload),
|
|
@@ -142,6 +159,16 @@ const oxyClockPayload = clockSync => {
|
|
|
142
159
|
});
|
|
143
160
|
return Array.from(new TextEncoder().encode(payload));
|
|
144
161
|
};
|
|
162
|
+
const clockPayload = (clockSync, protocol) => {
|
|
163
|
+
const date = clockSync?.now?.() ?? new Date();
|
|
164
|
+
const parts = (0, _clockSync.getClockParts)(date, clockSync?.timezone);
|
|
165
|
+
const payload = [parts.year & 0xff, parts.year >> 8 & 0xff, parts.month, parts.day, parts.hours, parts.minutes, parts.seconds];
|
|
166
|
+
if (protocol === "bp3") {
|
|
167
|
+
const tenthsOfHour = clockSync?.timezone === "utc" ? 0 : -date.getTimezoneOffset() / 6;
|
|
168
|
+
payload.push(tenthsOfHour & 0xff);
|
|
169
|
+
}
|
|
170
|
+
return payload;
|
|
171
|
+
};
|
|
145
172
|
const parseViatomOxygenDeviceInfo = frame => {
|
|
146
173
|
try {
|
|
147
174
|
const text = frame.slice(7, -1).map(byte => String.fromCharCode((0, _hexToByte.hexToByte)(byte))).join("").replace(/\0+$/, "");
|