@ovok/native 1.6.34 → 1.6.36
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-devices.js +1 -1
- package/lib/commonjs/modules/bt-device/constants/supported-devices.js.map +1 -1
- 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.device-names.js +1 -1
- 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.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/services/devices/viatom/viatom.ecg-recorders.js +11 -6
- package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.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/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/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.device-names.js +1 -1
- 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.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/services/devices/viatom/viatom.ecg-recorders.js +11 -6
- package/lib/module/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.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/typescript/commonjs/src/modules/bt-device/constants/supported-devices.d.ts.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.device-names.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/services/devices/viatom/viatom.ecg-recorders.d.ts.map +1 -1
- 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-device/constants/supported-devices.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.device-names.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/services/devices/viatom/viatom.ecg-recorders.d.ts.map +1 -1
- 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
|
@@ -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":"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","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+$/, "");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_clockSync","require","_hexToByte","_lepuAdvertisement","_lepuCommands","_lepuDeviceInfo","_lepuResponseType","COMMAND_INDEX","VIATOM_OXYGEN_INFO","LepuIdentityGate","isIdentified","isRefused","constructor","params","initialCommands","advertisementRequiresEncryption","manufacturerData","rejectEncryptionAtBytes","refuse","protocol","command","pollCommand","pendingCommand","commandFor","setClock","setClockBeforeInfo","isClockSyncEnabled","clockSync","oxyClockPayload","LepuCommand","GET_INFO","nextCommand","frame","nextViatomOxygenCommand","undefined","poll","admit","hexToByte","isLepuSuccess","describeLepuResponseType","info","parseLepuDeviceInfo","onIdentified","onAdmitted","isNarrowed","expectedDeviceTypes","length","includes","deviceType","branchCode","reason","onRefused","payload","delayBeforeWriteMs","write","builder","build","writeWithoutResponse","withoutResponse","status","toString","padStart","parseViatomOxygenDeviceInfo","exports","parts","getClockParts","now","Date","timezone","pad","value","String","JSON","stringify","SetTIME","year","month","day","hours","minutes","seconds","Array","from","TextEncoder","encode","text","slice","map","byte","fromCharCode","join","replace","parse","Number","Model","isInteger","protocolMaxLength","Branch","serialNumber","SN","SerialNumber"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.identity-gate.ts"],"mappings":";;;;;;AAEA,IAAAA,UAAA,GAAAC,OAAA;AAOA,IAAAC,UAAA,GAAAD,OAAA;AAEA,IAAAE,kBAAA,GAAAF,OAAA;AAEA,IAAAG,aAAA,GAAAH,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AACA,IAAAK,iBAAA,GAAAL,OAAA;AAfA;;
|
|
1
|
+
{"version":3,"names":["_clockSync","require","_hexToByte","_lepuAdvertisement","_lepuCommands","_lepuDeviceInfo","_lepuResponseType","COMMAND_INDEX","VIATOM_OXYGEN_INFO","LepuIdentityGate","isIdentified","isRefused","constructor","params","initialCommands","advertisementRequiresEncryption","manufacturerData","rejectEncryptionAtBytes","refuse","protocol","command","pollCommand","pendingCommand","commandFor","setClock","setClockBeforeInfo","isClockSyncEnabled","clockSync","oxyClockPayload","clockSyncProtocol","pendingClockCommand","clockPayload","LepuCommand","GET_INFO","nextCommand","frame","nextViatomOxygenCommand","undefined","nextClockCommand","poll","admit","hexToByte","isLepuSuccess","describeLepuResponseType","info","parseLepuDeviceInfo","onIdentified","onAdmitted","isNarrowed","expectedDeviceTypes","length","includes","deviceType","branchCode","reason","onRefused","pollIntervalMs","payload","delayBeforeWriteMs","write","builder","build","writeWithoutResponse","withoutResponse","status","toString","padStart","parseViatomOxygenDeviceInfo","exports","parts","getClockParts","now","Date","timezone","pad","value","String","JSON","stringify","SetTIME","year","month","day","hours","minutes","seconds","Array","from","TextEncoder","encode","date","tenthsOfHour","getTimezoneOffset","push","text","slice","map","byte","fromCharCode","join","replace","parse","Number","Model","isInteger","protocolMaxLength","Branch","serialNumber","SN","SerialNumber"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.identity-gate.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -176,11 +176,17 @@ const lepuDevice = params => {
|
|
|
176
176
|
...(params.pollCommand === undefined ? {} : {
|
|
177
177
|
pollCommand: params.pollCommand
|
|
178
178
|
}),
|
|
179
|
+
...(params.pollIntervalMs === undefined ? {} : {
|
|
180
|
+
pollIntervalMs: params.pollIntervalMs
|
|
181
|
+
}),
|
|
179
182
|
...(params.writeWithoutResponse === undefined ? {} : {
|
|
180
183
|
writeWithoutResponse: params.writeWithoutResponse
|
|
181
184
|
}),
|
|
182
185
|
...(params.setClockBeforeInfo === undefined ? {} : {
|
|
183
186
|
setClockBeforeInfo: params.setClockBeforeInfo
|
|
187
|
+
}),
|
|
188
|
+
...(params.clockSyncProtocol === undefined ? {} : {
|
|
189
|
+
clockSyncProtocol: params.clockSyncProtocol
|
|
184
190
|
})
|
|
185
191
|
},
|
|
186
192
|
services: services.map(service => ({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_defineCustomDevice","require","STANDARD_SERVICE","STANDARD_WRITE","STANDARD_NOTIFY","AW1_SERVICE","AW1_WRITE","AW1_NOTIFY","DING_SERVICE","DING_WRITE","DING_NOTIFY","AI_TELE_SERVICE","AI_TELE_WRITE","AI_TELE_NOTIFY","PREFERRED_MTU","MINIMUM_MTU","DEFAULT_STUCK_TIMEOUT_MS","START_BYTE","lepuTransports","exports","standard","serviceUuid","notifyUuid","writeUuid","preferredMtu","standardSmallMtu","aw1","ding","aiTele","COMMAND_BYTE","lepuDevice","params","transport","viatomOxygen","protocol","monitor","each","uuid","frame","minLengthBytes","caseSelectorBytes","undefined","cases","services","v2","defineCustomDevice","id","nameMatch","matchByService","stuckDataTimeoutMs","clockSync","sessionPolicy","lepu","startBytes","manufacturerDataProtocol","requestStartByte","rejectEncryptionAtBytes","write","characteristicUuid","expectedDeviceTypes","fileTransfer","ecgFileDecoder","pollCommand","writeWithoutResponse","setClockBeforeInfo","map","service","decorateReading"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.transports.ts"],"mappings":";;;;;;AASA,IAAAA,mBAAA,GAAAC,OAAA;AATA;;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,gBAAgB,GAAG,sCAAsC;AAC/D,MAAMC,cAAc,GAAG,sCAAsC;AAC7D,MAAMC,eAAe,GAAG,sCAAsC;;AAE9D;AACA,MAAMC,WAAW,GAAG,sCAAsC;AAC1D,MAAMC,SAAS,GAAG,sCAAsC;AACxD,MAAMC,UAAU,GAAG,sCAAsC;;AAEzD;AACA;AACA;AACA;AACA,MAAMC,YAAY,GAAG,sCAAsC;AAC3D,MAAMC,UAAU,GAAG,sCAAsC;AACzD,MAAMC,WAAW,GAAG,sCAAsC;;AAE1D;AACA,MAAMC,eAAe,GAAG,sCAAsC;AAC9D,MAAMC,aAAa,GAAG,sCAAsC;AAC5D,MAAMC,cAAc,GAAG,sCAAsC;;AAE7D;AACA,MAAMC,aAAa,GAAG,GAAG;;AAEzB;AACA,MAAMC,WAAW,GAAG,EAAE;;AAEtB;AACA,MAAMC,wBAAwB,GAAG,MAAM;AAEvC,MAAMC,UAAU,GAAG,IAAI;AASvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,cAAc,GAAAC,OAAA,CAAAD,cAAA,GAAG;EACrBE,QAAQ,EAAE;IACRC,WAAW,EAAEnB,gBAAgB;IAC7BoB,UAAU,EAAElB,eAAe;IAC3BmB,SAAS,EAAEpB,cAAc;IACzBqB,YAAY,EAAEV;EAChB,CAAC;EAED;EACAW,gBAAgB,EAAE;IAChBJ,WAAW,EAAEnB,gBAAgB;IAC7BoB,UAAU,EAAElB,eAAe;IAC3BmB,SAAS,EAAEpB,cAAc;IACzBqB,YAAY,EAAET;EAChB,CAAC;EAEDW,GAAG,EAAE;IACHL,WAAW,EAAEhB,WAAW;IACxBiB,UAAU,EAAEf,UAAU;IACtBgB,SAAS,EAAEjB,SAAS;IACpBkB,YAAY,EAAEV;EAChB,CAAC;EAEDa,IAAI,EAAE;IACJN,WAAW,EAAEb,YAAY;IACzBc,UAAU,EAAEZ,WAAW;IACvBa,SAAS,EAAEd,UAAU;IACrBe,YAAY,EAAEV;EAChB,CAAC;EAEDc,MAAM,EAAE;IACNP,WAAW,EAAEV,eAAe;IAC5BW,UAAU,EAAET,cAAc;IAC1BU,SAAS,EAAEX,aAAa;IACxBY,YAAY,EAAEV;EAChB;AACF,CAAkD;
|
|
1
|
+
{"version":3,"names":["_defineCustomDevice","require","STANDARD_SERVICE","STANDARD_WRITE","STANDARD_NOTIFY","AW1_SERVICE","AW1_WRITE","AW1_NOTIFY","DING_SERVICE","DING_WRITE","DING_NOTIFY","AI_TELE_SERVICE","AI_TELE_WRITE","AI_TELE_NOTIFY","PREFERRED_MTU","MINIMUM_MTU","DEFAULT_STUCK_TIMEOUT_MS","START_BYTE","lepuTransports","exports","standard","serviceUuid","notifyUuid","writeUuid","preferredMtu","standardSmallMtu","aw1","ding","aiTele","COMMAND_BYTE","lepuDevice","params","transport","viatomOxygen","protocol","monitor","each","uuid","frame","minLengthBytes","caseSelectorBytes","undefined","cases","services","v2","defineCustomDevice","id","nameMatch","matchByService","stuckDataTimeoutMs","clockSync","sessionPolicy","lepu","startBytes","manufacturerDataProtocol","requestStartByte","rejectEncryptionAtBytes","write","characteristicUuid","expectedDeviceTypes","fileTransfer","ecgFileDecoder","pollCommand","pollIntervalMs","writeWithoutResponse","setClockBeforeInfo","clockSyncProtocol","map","service","decorateReading"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.transports.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/modules/bt-management/services/devices/measurement-state-machine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_caseType","require","_deviceStatus","MeasurementStateMachine","isMeasuring","constructor","callbacks","reset","lastCaseValue","undefined","lastFrame","advance","parsingCase","measurementTypeKey","parsedData","frame","isResult","caseType","CaseType","RESULT","isRepeatedResult","caseValue","join","toLowerCase","STREAM","startMeasuring","OTHER","stopMeasuring","keepMeasuring","onResult","onStreamStart","onStatusChanged","DeviceStatus","MEASURING","onMeasurementEnd","CONNECTED","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/measurement-state-machine.ts"],"mappings":";;;;;;AAEA,IAAAA,SAAA,GAAAC,OAAA;AAEA,IAAAC,aAAA,GAAAD,OAAA;AAgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAME,uBAAuB,CAAwB;EAClDC,WAAW,GAAY,KAAK;EAIpCC,WAAWA,CAAkBC,SAAoC,EAAE;IAAA,KAAtCA,SAAoC,GAApCA,SAAoC;EAAG;
|
|
1
|
+
{"version":3,"names":["_caseType","require","_deviceStatus","MeasurementStateMachine","isMeasuring","constructor","callbacks","measuring","reset","lastCaseValue","undefined","lastFrame","advance","parsingCase","measurementTypeKey","parsedData","frame","isResult","caseType","CaseType","RESULT","isRepeatedResult","caseValue","join","toLowerCase","STREAM","startMeasuring","OTHER","stopMeasuring","keepMeasuring","onResult","onStreamStart","onStatusChanged","DeviceStatus","MEASURING","onMeasurementEnd","CONNECTED","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/measurement-state-machine.ts"],"mappings":";;;;;;AAEA,IAAAA,SAAA,GAAAC,OAAA;AAEA,IAAAC,aAAA,GAAAD,OAAA;AAgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAME,uBAAuB,CAAwB;EAClDC,WAAW,GAAY,KAAK;EAIpCC,WAAWA,CAAkBC,SAAoC,EAAE;IAAA,KAAtCA,SAAoC,GAApCA,SAAoC;EAAG;EAEpE,IAAWC,SAASA,CAAA,EAAY;IAC9B,OAAO,IAAI,CAACH,WAAW;EACzB;EAEOI,KAAK,GAAGA,CAAA,KAAY;IACzB,IAAI,CAACJ,WAAW,GAAG,KAAK;IACxB,IAAI,CAACK,aAAa,GAAGC,SAAS;IAC9B,IAAI,CAACC,SAAS,GAAGD,SAAS;EAC5B,CAAC;EAEME,OAAO,GAAGA,CACf;IACEC,WAAW;IACXC,kBAAkB;IAClBC;EAC+B,CAAC,EAClCC,KAAe,KACN;IACT,MAAMC,QAAQ,GAAGJ,WAAW,CAACK,QAAQ,KAAKC,kBAAQ,CAACC,MAAM;IAEzD,MAAMC,gBAAgB,GACpBJ,QAAQ,IACRJ,WAAW,CAACS,SAAS,KAAK,IAAI,CAACb,aAAa,IAC5C,IAAI,CAACE,SAAS,EAAEY,IAAI,CAAC,EAAE,CAAC,CAACC,WAAW,CAAC,CAAC,KAAKR,KAAK,CAACO,IAAI,CAAC,EAAE,CAAC,CAACC,WAAW,CAAC,CAAC;IAEzE,IAAI,CAACf,aAAa,GAAGI,WAAW,CAACS,SAAS;IAC1C,IAAI,CAACX,SAAS,GAAG,CAAC,GAAGK,KAAK,CAAC;IAE3B,IAAIH,WAAW,CAACK,QAAQ,KAAKC,kBAAQ,CAACM,MAAM,IAAI,CAAC,IAAI,CAACrB,WAAW,EAAE;MACjE,IAAI,CAACsB,cAAc,CAACZ,kBAAkB,CAAC;IACzC;IAEA,IAAI,IAAI,CAACV,WAAW,IAAIS,WAAW,CAACK,QAAQ,KAAKC,kBAAQ,CAACQ,KAAK,EAAE;MAC/D,IAAI,CAACC,aAAa,CAACd,kBAAkB,CAAC;IACxC;IAEA,IAAIO,gBAAgB,EAAE;MACpB;IACF;IAEA,IAAIQ,aAAa,GAAG,KAAK;IAEzB,IAAI,IAAI,CAACzB,WAAW,IAAIa,QAAQ,EAAE;MAChCY,aAAa,GAAG,IAAI,CAACvB,SAAS,CAACwB,QAAQ,GAAGf,UAAU,EAAEC,KAAK,CAAC,IAAI,KAAK;IACvE;IAEA,IAAIC,QAAQ,IAAI,CAACY,aAAa,EAAE;MAC9B,IAAI,CAACD,aAAa,CAACd,kBAAkB,CAAC;IACxC;EACF,CAAC;EAEOY,cAAc,GAAIZ,kBAAuC,IAAW;IAC1E,IAAI,CAACR,SAAS,CAACyB,aAAa,GAAG,CAAC;IAChC,IAAI,CAACzB,SAAS,CAAC0B,eAAe,GAAGC,0BAAY,CAACC,SAAS,EAAEpB,kBAAkB,CAAC;IAC5E,IAAI,CAACV,WAAW,GAAG,IAAI;EACzB,CAAC;EAEOwB,aAAa,GAAId,kBAAuC,IAAW;IACzE,IAAI,CAACV,WAAW,GAAG,KAAK;IACxB,IAAI,CAACE,SAAS,CAAC6B,gBAAgB,GAAG,CAAC;IACnC,IAAI,CAAC7B,SAAS,CAAC0B,eAAe,GAC5BC,0BAAY,CAACG,SAAS,EACtBtB,kBACF,CAAC;EACH,CAAC;AACH;AAACuB,OAAA,CAAAlC,uBAAA,GAAAA,uBAAA","ignoreList":[]}
|
|
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.viatomBpMonitor = exports.bp2wMonitor = exports.bp2tMonitor = exports.bp2aMonitor = exports.BP3_MODEL_NAMES = void 0;
|
|
7
7
|
var _core = require("@ovok/core");
|
|
8
|
+
var _le32FromHex = require("../../../utils/le-32-from-hex.js");
|
|
9
|
+
var _bp2Files = require("../bp2/bp2.files.js");
|
|
8
10
|
var _lepuNameMatch = require("../lepu/lepu.name-match.js");
|
|
9
11
|
var _lepuTransports = require("../lepu/lepu.transports.js");
|
|
10
12
|
/**
|
|
@@ -34,6 +36,7 @@ const CASE_SELECTOR_BYTES = [1, 7];
|
|
|
34
36
|
/** Header, realtime state, the result struct and its result code. */
|
|
35
37
|
const MIN_LENGTH_BYTES = 29;
|
|
36
38
|
const RESULT_CODE_INDEX = 28;
|
|
39
|
+
const DEVICE_TIME_INDEX = 16;
|
|
37
40
|
const READING = [{
|
|
38
41
|
name: "systolic",
|
|
39
42
|
byteIndexes: [20, 21],
|
|
@@ -56,6 +59,7 @@ const READING = [{
|
|
|
56
59
|
const result = (selector, description) => ({
|
|
57
60
|
selector,
|
|
58
61
|
kind: "result",
|
|
62
|
+
requiresStream: true,
|
|
59
63
|
measurementTypeKey: _core.MeasurementTypeKey.bloodPressure,
|
|
60
64
|
fields: [...READING],
|
|
61
65
|
description
|
|
@@ -70,7 +74,11 @@ const rejectFailedResult = (reading, frame) => {
|
|
|
70
74
|
if (resultCode !== 0) {
|
|
71
75
|
throw new Error(`Viatom blood-pressure measurement failed with result code 0x${resultCode.toString(16).padStart(2, "0")}`);
|
|
72
76
|
}
|
|
73
|
-
|
|
77
|
+
const recordedAt = frame && frame.length >= DEVICE_TIME_INDEX + 4 ? (0, _bp2Files.recordedAtFromLocalSeconds)((0, _le32FromHex.le32FromHex)([...frame], DEVICE_TIME_INDEX)) : undefined;
|
|
78
|
+
return recordedAt ? {
|
|
79
|
+
...reading,
|
|
80
|
+
recordedAt
|
|
81
|
+
} : reading;
|
|
74
82
|
};
|
|
75
83
|
|
|
76
84
|
/**
|
|
@@ -96,8 +104,12 @@ const BP2_CASES = [...["00", "01", "02", "03", "0a", "14", "ff"].map(state => ({
|
|
|
96
104
|
const viatomBpMonitor = (advertisedName, params) => (0, _lepuTransports.lepuDevice)({
|
|
97
105
|
id: params.id ?? `viatom-${advertisedName.toLowerCase().replace(/[^a-z0-9]+/g, "-")}`,
|
|
98
106
|
nameMatch: params.nameMatch ?? (0, _lepuNameMatch.lepuNameMatch)(advertisedName),
|
|
107
|
+
clockSync: "supported",
|
|
108
|
+
clockSyncProtocol: BP3_MODEL_NAMES.includes(advertisedName) ? "bp3" : "bp2",
|
|
109
|
+
fileTransfer: BP3_MODEL_NAMES.includes(advertisedName) ? "bp3" : "bp2",
|
|
99
110
|
rejectEncryptionAtBytes: [4],
|
|
100
111
|
pollCommand: RT_DATA,
|
|
112
|
+
pollIntervalMs: 200,
|
|
101
113
|
minLengthBytes: MIN_LENGTH_BYTES,
|
|
102
114
|
caseSelectorBytes: CASE_SELECTOR_BYTES,
|
|
103
115
|
cases: BP2_CASES.map(each => ({
|
package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_core","require","_lepuNameMatch","_lepuTransports","RT_DATA","CASE_SELECTOR_BYTES","MIN_LENGTH_BYTES","RESULT_CODE_INDEX","READING","name","byteIndexes","byteOrder","encoding","unit","result","selector","description","kind","measurementTypeKey","MeasurementTypeKey","bloodPressure","fields","measuring","rejectFailedResult","reading","frame","resultCode","Number","parseInt","Error","toString","padStart","BP2_CASES","map","state","viatomBpMonitor","advertisedName","params","lepuDevice","id","toLowerCase","replace","nameMatch","lepuNameMatch","rejectEncryptionAtBytes","pollCommand","minLengthBytes","caseSelectorBytes","cases","each","decorateReading","expectedDeviceTypes","exports","bp2aMonitor","bp2tMonitor","bp2wMonitor"
|
|
1
|
+
{"version":3,"names":["_core","require","_le32FromHex","_bp2Files","_lepuNameMatch","_lepuTransports","RT_DATA","CASE_SELECTOR_BYTES","MIN_LENGTH_BYTES","RESULT_CODE_INDEX","DEVICE_TIME_INDEX","READING","name","byteIndexes","byteOrder","encoding","unit","result","selector","description","kind","requiresStream","measurementTypeKey","MeasurementTypeKey","bloodPressure","fields","measuring","rejectFailedResult","reading","frame","resultCode","Number","parseInt","Error","toString","padStart","recordedAt","length","recordedAtFromLocalSeconds","le32FromHex","undefined","BP2_CASES","map","state","viatomBpMonitor","advertisedName","params","lepuDevice","id","toLowerCase","replace","nameMatch","lepuNameMatch","clockSync","clockSyncProtocol","BP3_MODEL_NAMES","includes","fileTransfer","rejectEncryptionAtBytes","pollCommand","pollIntervalMs","minLengthBytes","caseSelectorBytes","cases","each","decorateReading","expectedDeviceTypes","exports","bp2aMonitor","bp2tMonitor","bp2wMonitor"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.bp-monitors.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.decodeViatomBp3File = exports.BP3_RECORD_BYTES = exports.BP3_LIST_HEADER_BYTES = void 0;
|
|
7
|
+
var _core = require("@ovok/core");
|
|
8
|
+
var _convertBpStateFlag = require("../../../utils/convert-bp-state-flag.js");
|
|
9
|
+
var _hexToByte = require("../../../utils/hex-to-byte.js");
|
|
10
|
+
var _le16FromHex = require("../../../utils/le-16-from-hex.js");
|
|
11
|
+
var _le32FromHex = require("../../../utils/le-32-from-hex.js");
|
|
12
|
+
var _bp2Files = require("../bp2/bp2.files.js");
|
|
13
|
+
const BP3_LIST_HEADER_BYTES = exports.BP3_LIST_HEADER_BYTES = 10;
|
|
14
|
+
const BP3_RECORD_BYTES = exports.BP3_RECORD_BYTES = 38;
|
|
15
|
+
const BP3_FILE_NAME = "bp.list";
|
|
16
|
+
/**
|
|
17
|
+
* Decodes the BP3 `bp.list` file used by the ViHealth protocol.
|
|
18
|
+
*
|
|
19
|
+
* The first ten bytes are the list header. Records are little-endian, thirty-eight bytes
|
|
20
|
+
* each; byte 4 is the device user identifier and bytes 0-3 are local wall-clock seconds.
|
|
21
|
+
* The user identifier is retained as the SDK's memory slot so apps can keep users separate.
|
|
22
|
+
*/
|
|
23
|
+
const decodeViatomBp3File = (name, content) => {
|
|
24
|
+
if (name.toLowerCase() !== BP3_FILE_NAME || content.length < BP3_LIST_HEADER_BYTES || (content.length - BP3_LIST_HEADER_BYTES) % BP3_RECORD_BYTES !== 0) {
|
|
25
|
+
return undefined;
|
|
26
|
+
}
|
|
27
|
+
const records = [];
|
|
28
|
+
for (let offset = BP3_LIST_HEADER_BYTES; offset + BP3_RECORD_BYTES <= content.length; offset += BP3_RECORD_BYTES) {
|
|
29
|
+
const measureTime = (0, _le32FromHex.le32FromHex)([...content], offset);
|
|
30
|
+
const uid = (0, _le32FromHex.le32FromHex)([...content], offset + 4);
|
|
31
|
+
const resultFlags = (0, _hexToByte.hexToByte)(content[offset + 20] ?? "00");
|
|
32
|
+
const recordedAt = (0, _bp2Files.recordedAtFromLocalSeconds)(measureTime);
|
|
33
|
+
records.push({
|
|
34
|
+
measurementTypeKey: _core.MeasurementTypeKey.bloodPressure,
|
|
35
|
+
systolic: (0, _le16FromHex.le16FromHex)(content, offset + 13),
|
|
36
|
+
diastolic: (0, _le16FromHex.le16FromHex)(content, offset + 15),
|
|
37
|
+
meanArterialPressure: (0, _le16FromHex.le16FromHex)(content, offset + 17),
|
|
38
|
+
heartRate: (0, _hexToByte.hexToByte)(content[offset + 19] ?? "00"),
|
|
39
|
+
status: (0, _convertBpStateFlag.convertBpStateFlag)(content[offset + 12] ?? "00"),
|
|
40
|
+
irregularHeartbeat: (resultFlags & 0x01) !== 0,
|
|
41
|
+
memorySlot: uid,
|
|
42
|
+
...(recordedAt === undefined ? {} : {
|
|
43
|
+
recordedAt
|
|
44
|
+
}),
|
|
45
|
+
recordingId: `${name}:${uid}:${measureTime}`
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
return records;
|
|
49
|
+
};
|
|
50
|
+
exports.decodeViatomBp3File = decodeViatomBp3File;
|
|
51
|
+
//# sourceMappingURL=viatom.bp3-files.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_core","require","_convertBpStateFlag","_hexToByte","_le16FromHex","_le32FromHex","_bp2Files","BP3_LIST_HEADER_BYTES","exports","BP3_RECORD_BYTES","BP3_FILE_NAME","decodeViatomBp3File","name","content","toLowerCase","length","undefined","records","offset","measureTime","le32FromHex","uid","resultFlags","hexToByte","recordedAt","recordedAtFromLocalSeconds","push","measurementTypeKey","MeasurementTypeKey","bloodPressure","systolic","le16FromHex","diastolic","meanArterialPressure","heartRate","status","convertBpStateFlag","irregularHeartbeat","memorySlot","recordingId"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.bp3-files.ts"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,mBAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AACA,IAAAI,YAAA,GAAAJ,OAAA;AACA,IAAAK,SAAA,GAAAL,OAAA;AAEA,MAAMM,qBAAqB,GAAAC,OAAA,CAAAD,qBAAA,GAAG,EAAE;AAChC,MAAME,gBAAgB,GAAAD,OAAA,CAAAC,gBAAA,GAAG,EAAE;AAC3B,MAAMC,aAAa,GAAG,SAAS;AAO/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,mBAAmB,GAAGA,CAC1BC,IAAY,EACZC,OAA0B,KACY;EACtC,IACED,IAAI,CAACE,WAAW,CAAC,CAAC,KAAKJ,aAAa,IACpCG,OAAO,CAACE,MAAM,GAAGR,qBAAqB,IACtC,CAACM,OAAO,CAACE,MAAM,GAAGR,qBAAqB,IAAIE,gBAAgB,KAAK,CAAC,EACjE;IACA,OAAOO,SAAS;EAClB;EAEA,MAAMC,OAA8B,GAAG,EAAE;EAEzC,KACE,IAAIC,MAAM,GAAGX,qBAAqB,EAClCW,MAAM,GAAGT,gBAAgB,IAAII,OAAO,CAACE,MAAM,EAC3CG,MAAM,IAAIT,gBAAgB,EAC1B;IACA,MAAMU,WAAW,GAAG,IAAAC,wBAAW,EAAC,CAAC,GAAGP,OAAO,CAAC,EAAEK,MAAM,CAAC;IACrD,MAAMG,GAAG,GAAG,IAAAD,wBAAW,EAAC,CAAC,GAAGP,OAAO,CAAC,EAAEK,MAAM,GAAG,CAAC,CAAC;IACjD,MAAMI,WAAW,GAAG,IAAAC,oBAAS,EAACV,OAAO,CAACK,MAAM,GAAG,EAAE,CAAC,IAAI,IAAI,CAAC;IAC3D,MAAMM,UAAU,GAAG,IAAAC,oCAA0B,EAACN,WAAW,CAAC;IAE1DF,OAAO,CAACS,IAAI,CAAC;MACXC,kBAAkB,EAAEC,wBAAkB,CAACC,aAAa;MACpDC,QAAQ,EAAE,IAAAC,wBAAW,EAAClB,OAAO,EAAEK,MAAM,GAAG,EAAE,CAAC;MAC3Cc,SAAS,EAAE,IAAAD,wBAAW,EAAClB,OAAO,EAAEK,MAAM,GAAG,EAAE,CAAC;MAC5Ce,oBAAoB,EAAE,IAAAF,wBAAW,EAAClB,OAAO,EAAEK,MAAM,GAAG,EAAE,CAAC;MACvDgB,SAAS,EAAE,IAAAX,oBAAS,EAACV,OAAO,CAACK,MAAM,GAAG,EAAE,CAAC,IAAI,IAAI,CAAC;MAClDiB,MAAM,EAAE,IAAAC,sCAAkB,EAACvB,OAAO,CAACK,MAAM,GAAG,EAAE,CAAC,IAAI,IAAI,CAAC;MACxDmB,kBAAkB,EAAE,CAACf,WAAW,GAAG,IAAI,MAAM,CAAC;MAC9CgB,UAAU,EAAEjB,GAAG;MACf,IAAIG,UAAU,KAAKR,SAAS,GAAG,CAAC,CAAC,GAAG;QAAEQ;MAAW,CAAC,CAAC;MACnDe,WAAW,EAAE,GAAG3B,IAAI,IAAIS,GAAG,IAAIF,WAAW;IAC5C,CAAC,CAAC;EACJ;EAEA,OAAOF,OAAO;AAChB,CAAC;AAACT,OAAA,CAAAG,mBAAA,GAAAA,mBAAA","ignoreList":[]}
|
|
@@ -79,7 +79,9 @@ const declareRecorder = (advertisedName, profile, params) => (0, _lepuTransports
|
|
|
79
79
|
...(params.expectedDeviceTypes ? {
|
|
80
80
|
expectedDeviceTypes: params.expectedDeviceTypes
|
|
81
81
|
} : {}),
|
|
82
|
-
fileTransfer:
|
|
82
|
+
...(profile.fileTransfer === undefined ? {} : {
|
|
83
|
+
fileTransfer: profile.fileTransfer
|
|
84
|
+
}),
|
|
83
85
|
...(RAW_ECG_MODEL_NAMES.has(advertisedName) ? {
|
|
84
86
|
ecgFileDecoder: "raw-int16"
|
|
85
87
|
} : {})
|
|
@@ -89,7 +91,8 @@ const declareRecorder = (advertisedName, profile, params) => (0, _lepuTransports
|
|
|
89
91
|
const er1Recorder = (advertisedName, params) => declareRecorder(advertisedName, {
|
|
90
92
|
pollCommand: RT_DATA,
|
|
91
93
|
heartRateBytes: ER_HEART_RATE_BYTES,
|
|
92
|
-
transport: "standard"
|
|
94
|
+
transport: "standard",
|
|
95
|
+
fileTransfer: advertisedName === "VBeat" ? undefined : "ecg"
|
|
93
96
|
}, params);
|
|
94
97
|
|
|
95
98
|
/**
|
|
@@ -102,7 +105,8 @@ exports.er1Recorder = er1Recorder;
|
|
|
102
105
|
const er2Recorder = (advertisedName, params) => declareRecorder(advertisedName, {
|
|
103
106
|
pollCommand: RT_DATA,
|
|
104
107
|
heartRateBytes: ER_HEART_RATE_BYTES,
|
|
105
|
-
transport: "standardSmallMtu"
|
|
108
|
+
transport: "standardSmallMtu",
|
|
109
|
+
fileTransfer: "ecg"
|
|
106
110
|
}, params);
|
|
107
111
|
|
|
108
112
|
/** The ER3, which reads the same parameter block from a different opcode. */
|
|
@@ -110,15 +114,16 @@ exports.er2Recorder = er2Recorder;
|
|
|
110
114
|
const er3Recorder = (advertisedName, params) => declareRecorder(advertisedName, {
|
|
111
115
|
pollCommand: ER3_RT_DATA,
|
|
112
116
|
heartRateBytes: ER_HEART_RATE_BYTES,
|
|
113
|
-
transport: "standard"
|
|
117
|
+
transport: "standard",
|
|
118
|
+
fileTransfer: "ecg"
|
|
114
119
|
}, params);
|
|
115
120
|
|
|
116
121
|
/** The names the ER1 recorders advertise. */
|
|
117
122
|
exports.er3Recorder = er3Recorder;
|
|
118
|
-
const ER1_MODEL_NAMES = exports.ER1_MODEL_NAMES = ["ER1", "ER1-H", "ER1-L", "ER1-S", "ER1-SP", "ER1-W", "ER1S", "HHM1"];
|
|
123
|
+
const ER1_MODEL_NAMES = exports.ER1_MODEL_NAMES = ["ER1", "ER1-H", "ER1-L", "ER1-S", "ER1-SP", "ER1-W", "ER1S", "HHM1", "VBeat", "Cardio AI"];
|
|
119
124
|
|
|
120
125
|
/** The names the ER2 recorders advertise, all of them on the small-MTU link. */
|
|
121
|
-
const ER2_MODEL_NAMES = exports.ER2_MODEL_NAMES = ["ER2", "ER2-S", "HHM2", "HHM3", "LP ER2"];
|
|
126
|
+
const ER2_MODEL_NAMES = exports.ER2_MODEL_NAMES = ["ER2", "ER2-S", "HHM2", "HHM3", "LP ER2", "DuoEK", "CMTouch", "EM-B", "EM-W"];
|
|
122
127
|
|
|
123
128
|
/** These are the only Viatom recorders whose stored waveform is verified raw int16. */
|
|
124
129
|
const RAW_ECG_MODEL_NAMES = new Set(["ER1-L", "ER1-S", "ER1-W"]);
|
package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_core","require","_lepuNameMatch","_lepuTransports","RT_DATA","ER3_RT_DATA","HEART_RATE_UNIT","ER_HEART_RATE_BYTES","declareRecorder","advertisedName","profile","params","lepuDevice","id","toLowerCase","replace","nameMatch","lepuNameMatch","transport","clockSync","sessionPolicy","minSamples","emit","pollCommand","minLengthBytes","heartRateBytes","caseSelectorBytes","cases","selector","toString","padStart","kind","measurementTypeKey","MeasurementTypeKey","heartRate","description","fields","name","byteIndexes","byteOrder","encoding","unit","expectedDeviceTypes","fileTransfer","RAW_ECG_MODEL_NAMES","has","ecgFileDecoder","er1Recorder","exports","er2Recorder","er3Recorder","ER1_MODEL_NAMES","ER2_MODEL_NAMES","Set","ER3_MODEL_NAMES"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.ecg-recorders.ts"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAGA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAMG,OAAO,GAAG,IAAI;;AAEpB;AACA,MAAMC,WAAW,GAAG,IAAI;AAExB,MAAMC,eAAe,GAAG,KAAK;
|
|
1
|
+
{"version":3,"names":["_core","require","_lepuNameMatch","_lepuTransports","RT_DATA","ER3_RT_DATA","HEART_RATE_UNIT","ER_HEART_RATE_BYTES","declareRecorder","advertisedName","profile","params","lepuDevice","id","toLowerCase","replace","nameMatch","lepuNameMatch","transport","clockSync","sessionPolicy","minSamples","emit","pollCommand","minLengthBytes","heartRateBytes","caseSelectorBytes","cases","selector","toString","padStart","kind","measurementTypeKey","MeasurementTypeKey","heartRate","description","fields","name","byteIndexes","byteOrder","encoding","unit","expectedDeviceTypes","fileTransfer","undefined","RAW_ECG_MODEL_NAMES","has","ecgFileDecoder","er1Recorder","exports","er2Recorder","er3Recorder","ER1_MODEL_NAMES","ER2_MODEL_NAMES","Set","ER3_MODEL_NAMES"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.ecg-recorders.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -35,6 +35,7 @@ const clockSyncCapabilityForDevice = deviceName => {
|
|
|
35
35
|
case _integratedDevices.IntegratedDevices.MYSENSE:
|
|
36
36
|
case _integratedDevices.IntegratedDevices.VEROVAL_ECG:
|
|
37
37
|
case _integratedDevices.IntegratedDevices.AOJ20A:
|
|
38
|
+
case _integratedDevices.IntegratedDevices.BP2:
|
|
38
39
|
return "supported";
|
|
39
40
|
case _integratedDevices.IntegratedDevices.VEROVAL_ACTIVITY:
|
|
40
41
|
return "unsupported";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_integratedDevices","require","isClockSyncEnabled","options","enabled","exports","getClockParts","date","timezone","year","getUTCFullYear","month","getUTCMonth","day","getUTCDate","hours","getUTCHours","minutes","getUTCMinutes","seconds","getUTCSeconds","milliseconds","getUTCMilliseconds","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","clockSyncCapabilityForDevice","deviceName","IntegratedDevices","BC01","MYSENSE","VEROVAL_ECG","AOJ20A","VEROVAL_ACTIVITY","GENIAL_T31","ZH_SG_A606"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/types/clock-sync.ts"],"mappings":";;;;;;AAEA,IAAAA,kBAAA,GAAAC,OAAA;AAFA;;AAoBO,MAAMC,kBAAkB,GAAIC,OAA0B,IAC3DA,OAAO,EAAEC,OAAO,KAAK,KAAK;AAACC,OAAA,CAAAH,kBAAA,GAAAA,kBAAA;AAEtB,MAAMI,aAAa,GAAGA,CAC3BC,IAAU,EACVC,QAA2B,GAAG,OAAO,KAErCA,QAAQ,KAAK,KAAK,GACd;EACEC,IAAI,EAAEF,IAAI,CAACG,cAAc,CAAC,CAAC;EAC3BC,KAAK,EAAEJ,IAAI,CAACK,WAAW,CAAC,CAAC,GAAG,CAAC;EAC7BC,GAAG,EAAEN,IAAI,CAACO,UAAU,CAAC,CAAC;EACtBC,KAAK,EAAER,IAAI,CAACS,WAAW,CAAC,CAAC;EACzBC,OAAO,EAAEV,IAAI,CAACW,aAAa,CAAC,CAAC;EAC7BC,OAAO,EAAEZ,IAAI,CAACa,aAAa,CAAC,CAAC;EAC7BC,YAAY,EAAEd,IAAI,CAACe,kBAAkB,CAAC;AACxC,CAAC,GACD;EACEb,IAAI,EAAEF,IAAI,CAACgB,WAAW,CAAC,CAAC;EACxBZ,KAAK,EAAEJ,IAAI,CAACiB,QAAQ,CAAC,CAAC,GAAG,CAAC;EAC1BX,GAAG,EAAEN,IAAI,CAACkB,OAAO,CAAC,CAAC;EACnBV,KAAK,EAAER,IAAI,CAACmB,QAAQ,CAAC,CAAC;EACtBT,OAAO,EAAEV,IAAI,CAACoB,UAAU,CAAC,CAAC;EAC1BR,OAAO,EAAEZ,IAAI,CAACqB,UAAU,CAAC,CAAC;EAC1BP,YAAY,EAAEd,IAAI,CAACsB,eAAe,CAAC;AACrC,CAAC;;AAEP;AAAAxB,OAAA,CAAAC,aAAA,GAAAA,aAAA;AACO,MAAMwB,4BAA4B,GACvCC,UAAkB,IACM;EACxB,QAAQA,UAAU;IAChB,KAAKC,oCAAiB,CAACC,IAAI;IAC3B,KAAKD,oCAAiB,CAACE,OAAO;IAC9B,KAAKF,oCAAiB,CAACG,WAAW;IAClC,KAAKH,oCAAiB,CAACI,MAAM;
|
|
1
|
+
{"version":3,"names":["_integratedDevices","require","isClockSyncEnabled","options","enabled","exports","getClockParts","date","timezone","year","getUTCFullYear","month","getUTCMonth","day","getUTCDate","hours","getUTCHours","minutes","getUTCMinutes","seconds","getUTCSeconds","milliseconds","getUTCMilliseconds","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","clockSyncCapabilityForDevice","deviceName","IntegratedDevices","BC01","MYSENSE","VEROVAL_ECG","AOJ20A","BP2","VEROVAL_ACTIVITY","GENIAL_T31","ZH_SG_A606"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/types/clock-sync.ts"],"mappings":";;;;;;AAEA,IAAAA,kBAAA,GAAAC,OAAA;AAFA;;AAoBO,MAAMC,kBAAkB,GAAIC,OAA0B,IAC3DA,OAAO,EAAEC,OAAO,KAAK,KAAK;AAACC,OAAA,CAAAH,kBAAA,GAAAA,kBAAA;AAEtB,MAAMI,aAAa,GAAGA,CAC3BC,IAAU,EACVC,QAA2B,GAAG,OAAO,KAErCA,QAAQ,KAAK,KAAK,GACd;EACEC,IAAI,EAAEF,IAAI,CAACG,cAAc,CAAC,CAAC;EAC3BC,KAAK,EAAEJ,IAAI,CAACK,WAAW,CAAC,CAAC,GAAG,CAAC;EAC7BC,GAAG,EAAEN,IAAI,CAACO,UAAU,CAAC,CAAC;EACtBC,KAAK,EAAER,IAAI,CAACS,WAAW,CAAC,CAAC;EACzBC,OAAO,EAAEV,IAAI,CAACW,aAAa,CAAC,CAAC;EAC7BC,OAAO,EAAEZ,IAAI,CAACa,aAAa,CAAC,CAAC;EAC7BC,YAAY,EAAEd,IAAI,CAACe,kBAAkB,CAAC;AACxC,CAAC,GACD;EACEb,IAAI,EAAEF,IAAI,CAACgB,WAAW,CAAC,CAAC;EACxBZ,KAAK,EAAEJ,IAAI,CAACiB,QAAQ,CAAC,CAAC,GAAG,CAAC;EAC1BX,GAAG,EAAEN,IAAI,CAACkB,OAAO,CAAC,CAAC;EACnBV,KAAK,EAAER,IAAI,CAACmB,QAAQ,CAAC,CAAC;EACtBT,OAAO,EAAEV,IAAI,CAACoB,UAAU,CAAC,CAAC;EAC1BR,OAAO,EAAEZ,IAAI,CAACqB,UAAU,CAAC,CAAC;EAC1BP,YAAY,EAAEd,IAAI,CAACsB,eAAe,CAAC;AACrC,CAAC;;AAEP;AAAAxB,OAAA,CAAAC,aAAA,GAAAA,aAAA;AACO,MAAMwB,4BAA4B,GACvCC,UAAkB,IACM;EACxB,QAAQA,UAAU;IAChB,KAAKC,oCAAiB,CAACC,IAAI;IAC3B,KAAKD,oCAAiB,CAACE,OAAO;IAC9B,KAAKF,oCAAiB,CAACG,WAAW;IAClC,KAAKH,oCAAiB,CAACI,MAAM;IAC7B,KAAKJ,oCAAiB,CAACK,GAAG;MACxB,OAAO,WAAW;IACpB,KAAKL,oCAAiB,CAACM,gBAAgB;MACrC,OAAO,aAAa;IACtB,KAAKN,oCAAiB,CAACO,UAAU;IACjC,KAAKP,oCAAiB,CAACQ,UAAU;MAC/B,OAAO,WAAW;IACpB;MACE,OAAO,SAAS;EACpB;AACF,CAAC;AAACnC,OAAA,CAAAyB,4BAAA,GAAAA,4BAAA","ignoreList":[]}
|
|
@@ -254,7 +254,7 @@ const definitionsFor = name => {
|
|
|
254
254
|
if (ER1_MODEL_NAMES.includes(name)) {
|
|
255
255
|
return {
|
|
256
256
|
acceptedDevices: [er1Recorder(name, {})],
|
|
257
|
-
measurementTypes: [MeasurementTypeKey.heartRate, MeasurementTypeKey.ecg]
|
|
257
|
+
measurementTypes: name === "VBeat" ? [MeasurementTypeKey.heartRate] : [MeasurementTypeKey.heartRate, MeasurementTypeKey.ecg]
|
|
258
258
|
};
|
|
259
259
|
}
|
|
260
260
|
if (ER2_MODEL_NAMES.includes(name)) {
|