@ovok/native 1.16.1-dev.2149 → 1.16.1-dev.2151
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/services/devices/bp2/bp2.history-sequencer.js +13 -0
- package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js.map +1 -1
- package/lib/module/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js +13 -0
- package/lib/module/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js.map +1 -1
- package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.d.ts +7 -1
- package/lib/typescript/commonjs/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/bp2/bp2.history-sequencer.d.ts +7 -1
- package/lib/typescript/module/src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -18,6 +18,9 @@ const BP2_RESULT_STATES = new Set(["05", "07", "11"]);
|
|
|
18
18
|
const BP2_ECG_STATE = "06";
|
|
19
19
|
const BP2_IDLE_STATES = new Set(["00", "01", "03"]);
|
|
20
20
|
const BP2_POLL_INTERVAL_MS = 200;
|
|
21
|
+
|
|
22
|
+
/** How long a realtime poll may go unanswered before it is sent again. */
|
|
23
|
+
const BP2_POLL_ANSWER_TIMEOUT_MS = 1_000;
|
|
21
24
|
/** Reads unseen BP2 history on connect and after each realtime result. */
|
|
22
25
|
class BP2HistorySequencer {
|
|
23
26
|
builder = new _lepuCommandBuilder.LepuCommandBuilder();
|
|
@@ -38,6 +41,15 @@ class BP2HistorySequencer {
|
|
|
38
41
|
return this.startTransfer();
|
|
39
42
|
};
|
|
40
43
|
isHistoryTransfer = () => true;
|
|
44
|
+
commandTimeoutMs = () => this.isPolling() ? BP2_POLL_ANSWER_TIMEOUT_MS : undefined;
|
|
45
|
+
|
|
46
|
+
/** The BP2 can drop a poll while it starts measuring, so a missing answer is asked for again. */
|
|
47
|
+
onCommandTimeout = () => this.isPolling() ? {
|
|
48
|
+
commands: [this.pollCommand()]
|
|
49
|
+
} : {};
|
|
50
|
+
|
|
51
|
+
/** Only the realtime answer settles a poll; any other frame leaves its timeout running. */
|
|
52
|
+
commandProgress = frame => this.isPolling() && (0, _lepuFrame.lepuCommandOf)(frame) !== BP2_REALTIME_COMMAND ? "ignored" : "complete";
|
|
41
53
|
nextCommand = frame => {
|
|
42
54
|
if (this.phase === "clock") {
|
|
43
55
|
if ((0, _lepuFrame.lepuCommandOf)(frame) !== _lepuCommands.LepuCommand.SET_TIME) {
|
|
@@ -85,6 +97,7 @@ class BP2HistorySequencer {
|
|
|
85
97
|
this.params.onTransferFinished();
|
|
86
98
|
return [this.pollCommand()];
|
|
87
99
|
};
|
|
100
|
+
isPolling = () => this.phase === "files" && this.transfer === undefined;
|
|
88
101
|
pollCommand = () => ({
|
|
89
102
|
...this.params.write,
|
|
90
103
|
frame: this.builder.build(BP2_REALTIME_COMMAND),
|
package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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","
|
|
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","BP2_POLL_ANSWER_TIMEOUT_MS","BP2HistorySequencer","builder","LepuCommandBuilder","lastRunStatusFrameCount","realtimeEcgActive","phase","constructor","params","initialCommands","isClockSyncEnabled","clockSync","write","frame","build","LepuCommand","SET_TIME","clockPayload","startTransfer","isHistoryTransfer","commandTimeoutMs","isPolling","undefined","onCommandTimeout","commands","pollCommand","commandProgress","lepuCommandOf","nextCommand","isLepuSuccess","onError","describeLepuResponseType","transfer","logRunStatus","isResult","isResultFrame","endedWithoutResult","isIdleFrame","onOrphanStreamEnd","shouldStartTransfer","onTransferRequested","delayBeforeWriteMs","LepuFileTransfer","onFile","skipFiles","afterTransfer","finishTransfer","onTransferFinished","hexToByte","has","toLowerCase","runStatus","lastRunStatus","sentryLogger"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bp2/bp2.history-sequencer.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -14,6 +14,9 @@ const BP2_RESULT_STATES = new Set(["05", "07", "11"]);
|
|
|
14
14
|
const BP2_ECG_STATE = "06";
|
|
15
15
|
const BP2_IDLE_STATES = new Set(["00", "01", "03"]);
|
|
16
16
|
const BP2_POLL_INTERVAL_MS = 200;
|
|
17
|
+
|
|
18
|
+
/** How long a realtime poll may go unanswered before it is sent again. */
|
|
19
|
+
const BP2_POLL_ANSWER_TIMEOUT_MS = 1_000;
|
|
17
20
|
/** Reads unseen BP2 history on connect and after each realtime result. */
|
|
18
21
|
class BP2HistorySequencer {
|
|
19
22
|
builder = new LepuCommandBuilder();
|
|
@@ -34,6 +37,15 @@ class BP2HistorySequencer {
|
|
|
34
37
|
return this.startTransfer();
|
|
35
38
|
};
|
|
36
39
|
isHistoryTransfer = () => true;
|
|
40
|
+
commandTimeoutMs = () => this.isPolling() ? BP2_POLL_ANSWER_TIMEOUT_MS : undefined;
|
|
41
|
+
|
|
42
|
+
/** The BP2 can drop a poll while it starts measuring, so a missing answer is asked for again. */
|
|
43
|
+
onCommandTimeout = () => this.isPolling() ? {
|
|
44
|
+
commands: [this.pollCommand()]
|
|
45
|
+
} : {};
|
|
46
|
+
|
|
47
|
+
/** Only the realtime answer settles a poll; any other frame leaves its timeout running. */
|
|
48
|
+
commandProgress = frame => this.isPolling() && lepuCommandOf(frame) !== BP2_REALTIME_COMMAND ? "ignored" : "complete";
|
|
37
49
|
nextCommand = frame => {
|
|
38
50
|
if (this.phase === "clock") {
|
|
39
51
|
if (lepuCommandOf(frame) !== LepuCommand.SET_TIME) {
|
|
@@ -81,6 +93,7 @@ class BP2HistorySequencer {
|
|
|
81
93
|
this.params.onTransferFinished();
|
|
82
94
|
return [this.pollCommand()];
|
|
83
95
|
};
|
|
96
|
+
isPolling = () => this.phase === "files" && this.transfer === undefined;
|
|
84
97
|
pollCommand = () => ({
|
|
85
98
|
...this.params.write,
|
|
86
99
|
frame: this.builder.build(BP2_REALTIME_COMMAND),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["sentryLogger","isClockSyncEnabled","hexToByte","LepuCommandBuilder","LepuCommand","clockPayload","LepuFileTransfer","lepuCommandOf","isLepuSuccess","describeLepuResponseType","BP2_REALTIME_COMMAND","BP2_RESULT_STATES","Set","BP2_ECG_STATE","BP2_IDLE_STATES","BP2_POLL_INTERVAL_MS","BP2HistorySequencer","builder","lastRunStatusFrameCount","realtimeEcgActive","phase","constructor","params","initialCommands","clockSync","write","frame","build","SET_TIME","startTransfer","isHistoryTransfer","
|
|
1
|
+
{"version":3,"names":["sentryLogger","isClockSyncEnabled","hexToByte","LepuCommandBuilder","LepuCommand","clockPayload","LepuFileTransfer","lepuCommandOf","isLepuSuccess","describeLepuResponseType","BP2_REALTIME_COMMAND","BP2_RESULT_STATES","Set","BP2_ECG_STATE","BP2_IDLE_STATES","BP2_POLL_INTERVAL_MS","BP2_POLL_ANSWER_TIMEOUT_MS","BP2HistorySequencer","builder","lastRunStatusFrameCount","realtimeEcgActive","phase","constructor","params","initialCommands","clockSync","write","frame","build","SET_TIME","startTransfer","isHistoryTransfer","commandTimeoutMs","isPolling","undefined","onCommandTimeout","commands","pollCommand","commandProgress","nextCommand","onError","transfer","logRunStatus","isResult","isResultFrame","endedWithoutResult","isIdleFrame","onOrphanStreamEnd","shouldStartTransfer","onTransferRequested","delayBeforeWriteMs","onFile","skipFiles","afterTransfer","finishTransfer","onTransferFinished","has","toLowerCase","runStatus","lastRunStatus"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bp2/bp2.history-sequencer.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ClockSyncOptions } from "../../../types/clock-sync";
|
|
2
|
-
import { CommandSequencer } from "../../../types/command-sequencer";
|
|
2
|
+
import { CommandSequencer, CommandTimeoutResult } from "../../../types/command-sequencer";
|
|
3
3
|
import { DeviceCommand } from "../../../types/device-command";
|
|
4
4
|
import { LepuFile } from "../lepu/lepu.file-transfer";
|
|
5
5
|
declare const BP2_REALTIME_COMMAND = 8;
|
|
@@ -26,9 +26,15 @@ declare class BP2HistorySequencer implements CommandSequencer {
|
|
|
26
26
|
constructor(params: BP2HistorySequencerParams);
|
|
27
27
|
initialCommands: () => readonly DeviceCommand[];
|
|
28
28
|
isHistoryTransfer: () => boolean;
|
|
29
|
+
commandTimeoutMs: () => number | undefined;
|
|
30
|
+
/** The BP2 can drop a poll while it starts measuring, so a missing answer is asked for again. */
|
|
31
|
+
onCommandTimeout: () => CommandTimeoutResult;
|
|
32
|
+
/** Only the realtime answer settles a poll; any other frame leaves its timeout running. */
|
|
33
|
+
commandProgress: (frame: readonly string[]) => "ignored" | "complete";
|
|
29
34
|
nextCommand: (frame: readonly string[]) => readonly DeviceCommand[] | undefined;
|
|
30
35
|
private startTransfer;
|
|
31
36
|
private finishTransfer;
|
|
37
|
+
private isPolling;
|
|
32
38
|
private pollCommand;
|
|
33
39
|
private isResultFrame;
|
|
34
40
|
private isIdleFrame;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bp2.history-sequencer.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,
|
|
1
|
+
{"version":3,"file":"bp2.history-sequencer.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAK9D,OAAO,EAAE,QAAQ,EAAoB,MAAM,4BAA4B,CAAC;AAOxE,QAAA,MAAM,oBAAoB,IAAO,CAAC;AASlC,UAAU,yBAAyB;IACjC,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACpC,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACjC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,mBAAmB,EAAE,MAAM,OAAO,CAAC;IACnC,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAID,0EAA0E;AAC1E,cAAM,mBAAoB,YAAW,gBAAgB;IAQhC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAP1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IACpD,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,uBAAuB,CAAK;IACpC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,KAAK,CAA4B;gBAEL,MAAM,EAAE,yBAAyB;IAE9D,eAAe,QAAO,SAAS,aAAa,EAAE,CAgBnD;IAEK,iBAAiB,QAAO,OAAO,CAAS;IAExC,gBAAgB,QAAO,MAAM,GAAG,SAAS,CACY;IAE5D,iGAAiG;IAC1F,gBAAgB,QAAO,oBAAoB,CACW;IAE7D,2FAA2F;IACpF,eAAe,GAAI,OAAO,SAAS,MAAM,EAAE,KAAG,SAAS,GAAG,UAAU,CAG1D;IAEV,WAAW,GAChB,OAAO,SAAS,MAAM,EAAE,KACvB,SAAS,aAAa,EAAE,GAAG,SAAS,CAyCrC;IAEF,OAAO,CAAC,aAAa,CAcnB;IAEF,OAAO,CAAC,cAAc,CAKpB;IAEF,OAAO,CAAC,SAAS,CACuC;IAExD,OAAO,CAAC,WAAW,CAIhB;IAEH,OAAO,CAAC,aAAa,CAEmC;IAExD,OAAO,CAAC,WAAW,CAEmC;IAEtD,OAAO,CAAC,YAAY,CAuBlB;CACH;AAED,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ClockSyncOptions } from "../../../types/clock-sync";
|
|
2
|
-
import { CommandSequencer } from "../../../types/command-sequencer";
|
|
2
|
+
import { CommandSequencer, CommandTimeoutResult } from "../../../types/command-sequencer";
|
|
3
3
|
import { DeviceCommand } from "../../../types/device-command";
|
|
4
4
|
import { LepuFile } from "../lepu/lepu.file-transfer";
|
|
5
5
|
declare const BP2_REALTIME_COMMAND = 8;
|
|
@@ -26,9 +26,15 @@ declare class BP2HistorySequencer implements CommandSequencer {
|
|
|
26
26
|
constructor(params: BP2HistorySequencerParams);
|
|
27
27
|
initialCommands: () => readonly DeviceCommand[];
|
|
28
28
|
isHistoryTransfer: () => boolean;
|
|
29
|
+
commandTimeoutMs: () => number | undefined;
|
|
30
|
+
/** The BP2 can drop a poll while it starts measuring, so a missing answer is asked for again. */
|
|
31
|
+
onCommandTimeout: () => CommandTimeoutResult;
|
|
32
|
+
/** Only the realtime answer settles a poll; any other frame leaves its timeout running. */
|
|
33
|
+
commandProgress: (frame: readonly string[]) => "ignored" | "complete";
|
|
29
34
|
nextCommand: (frame: readonly string[]) => readonly DeviceCommand[] | undefined;
|
|
30
35
|
private startTransfer;
|
|
31
36
|
private finishTransfer;
|
|
37
|
+
private isPolling;
|
|
32
38
|
private pollCommand;
|
|
33
39
|
private isResultFrame;
|
|
34
40
|
private isIdleFrame;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bp2.history-sequencer.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,
|
|
1
|
+
{"version":3,"file":"bp2.history-sequencer.d.ts","sourceRoot":"","sources":["../../../../../../../../../src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,gBAAgB,EACjB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAK9D,OAAO,EAAE,QAAQ,EAAoB,MAAM,4BAA4B,CAAC;AAOxE,QAAA,MAAM,oBAAoB,IAAO,CAAC;AASlC,UAAU,yBAAyB;IACjC,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACpC,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,KAAK,IAAI,CAAC;IACjC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,mBAAmB,EAAE,MAAM,OAAO,CAAC;IACnC,mBAAmB,EAAE,MAAM,IAAI,CAAC;IAChC,iBAAiB,EAAE,MAAM,IAAI,CAAC;IAC9B,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAID,0EAA0E;AAC1E,cAAM,mBAAoB,YAAW,gBAAgB;IAQhC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAP1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA4B;IACpD,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,uBAAuB,CAAK;IACpC,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,KAAK,CAA4B;gBAEL,MAAM,EAAE,yBAAyB;IAE9D,eAAe,QAAO,SAAS,aAAa,EAAE,CAgBnD;IAEK,iBAAiB,QAAO,OAAO,CAAS;IAExC,gBAAgB,QAAO,MAAM,GAAG,SAAS,CACY;IAE5D,iGAAiG;IAC1F,gBAAgB,QAAO,oBAAoB,CACW;IAE7D,2FAA2F;IACpF,eAAe,GAAI,OAAO,SAAS,MAAM,EAAE,KAAG,SAAS,GAAG,UAAU,CAG1D;IAEV,WAAW,GAChB,OAAO,SAAS,MAAM,EAAE,KACvB,SAAS,aAAa,EAAE,GAAG,SAAS,CAyCrC;IAEF,OAAO,CAAC,aAAa,CAcnB;IAEF,OAAO,CAAC,cAAc,CAKpB;IAEF,OAAO,CAAC,SAAS,CACuC;IAExD,OAAO,CAAC,WAAW,CAIhB;IAEH,OAAO,CAAC,aAAa,CAEmC;IAExD,OAAO,CAAC,WAAW,CAEmC;IAEtD,OAAO,CAAC,YAAY,CAuBlB;CACH;AAED,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,CAAC"}
|