@ovok/native 1.16.1-dev.2167 → 1.16.1-dev.2171

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.
Files changed (37) hide show
  1. package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js +40 -11
  2. package/lib/commonjs/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js.map +1 -1
  3. package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js +1 -1
  4. package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
  5. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.connect-retry.js +32 -0
  6. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.connect-retry.js.map +1 -0
  7. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.js +33 -4
  8. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.js.map +1 -1
  9. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.identity-gate.js +43 -4
  10. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.identity-gate.js.map +1 -1
  11. package/lib/module/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js +40 -11
  12. package/lib/module/modules/bt-management/services/devices/bp2/bp2.history-sequencer.js.map +1 -1
  13. package/lib/module/modules/bt-management/services/devices/bt-data-processor.js +1 -1
  14. package/lib/module/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
  15. package/lib/module/modules/bt-management/services/devices/lepu/lepu.connect-retry.js +28 -0
  16. package/lib/module/modules/bt-management/services/devices/lepu/lepu.connect-retry.js.map +1 -0
  17. package/lib/module/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.js +33 -4
  18. package/lib/module/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.js.map +1 -1
  19. package/lib/module/modules/bt-management/services/devices/lepu/lepu.identity-gate.js +43 -4
  20. package/lib/module/modules/bt-management/services/devices/lepu/lepu.identity-gate.js.map +1 -1
  21. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.d.ts +9 -2
  22. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.d.ts.map +1 -1
  23. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.connect-retry.d.ts +12 -0
  24. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.connect-retry.d.ts.map +1 -0
  25. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.d.ts +7 -1
  26. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.d.ts.map +1 -1
  27. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.identity-gate.d.ts +16 -1
  28. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.identity-gate.d.ts.map +1 -1
  29. package/lib/typescript/module/src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.d.ts +9 -2
  30. package/lib/typescript/module/src/modules/bt-management/services/devices/bp2/bp2.history-sequencer.d.ts.map +1 -1
  31. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.connect-retry.d.ts +12 -0
  32. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.connect-retry.d.ts.map +1 -0
  33. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.d.ts +7 -1
  34. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.d.ts.map +1 -1
  35. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.identity-gate.d.ts +16 -1
  36. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.identity-gate.d.ts.map +1 -1
  37. package/package.json +1 -1
@@ -9,6 +9,7 @@ var _clockSync = require("../../../types/clock-sync.js");
9
9
  var _hexToByte = require("../../../utils/hex-to-byte.js");
10
10
  var _lepuCommandBuilder = require("../lepu/lepu.command-builder.js");
11
11
  var _lepuCommands = require("../lepu/lepu.commands.js");
12
+ var _lepuConnectRetry = require("../lepu/lepu.connect-retry.js");
12
13
  var _lepuEcgTransfer = require("../lepu/lepu.ecg-transfer.js");
13
14
  var _lepuFileTransfer = require("../lepu/lepu.file-transfer.js");
14
15
  var _lepuFrame = require("../lepu/lepu.frame.js");
@@ -29,29 +30,47 @@ class BP2HistorySequencer {
29
30
  lastRunStatusFrameCount = 0;
30
31
  realtimeEcgActive = false;
31
32
  phase = "files";
33
+ clockRetry = new _lepuConnectRetry.LepuConnectRetry();
32
34
  constructor(params) {
33
35
  this.params = params;
34
36
  }
35
37
  initialCommands = () => {
36
38
  if ((0, _clockSync.isClockSyncEnabled)(this.params.clockSync)) {
37
39
  this.phase = "clock";
38
- return [{
39
- ...this.params.write,
40
- frame: this.builder.build(_lepuCommands.LepuCommand.SET_TIME, (0, _lepuEcgTransfer.clockPayload)(this.params.clockSync))
41
- }];
40
+ this.clockRetry.started();
41
+ return [this.setTimeCommand()];
42
42
  }
43
43
  return this.startTransfer();
44
44
  };
45
45
  isHistoryTransfer = () => true;
46
- commandTimeoutMs = () => this.isPolling() ? BP2_POLL_ANSWER_TIMEOUT_MS : undefined;
46
+ commandTimeoutMs = () => {
47
+ if (this.phase === "clock") {
48
+ return _lepuConnectRetry.LEPU_CONNECT_REPLY_TIMEOUT_MS;
49
+ }
50
+ return this.isPolling() ? BP2_POLL_ANSWER_TIMEOUT_MS : undefined;
51
+ };
47
52
 
48
- /** The BP2 can drop a poll while it starts measuring, so a missing answer is asked for again. */
49
- onCommandTimeout = () => this.isPolling() ? {
50
- commands: [this.pollCommand()]
51
- } : {};
53
+ /**
54
+ * A BP2 just switched on can drop its first command, and one starting a measurement can
55
+ * drop a poll, so a missing answer is asked for again. The clock is optional: when it is
56
+ * still unanswered, the stored files are read without it.
57
+ */
58
+ onCommandTimeout = () => {
59
+ if (this.phase === "clock") {
60
+ return {
61
+ commands: this.clockRetry.mayRetry() ? [this.setTimeCommand()] : this.startTransfer()
62
+ };
63
+ }
64
+ return this.isPolling() ? {
65
+ commands: [this.pollCommand()]
66
+ } : {};
67
+ };
52
68
 
53
- /** Only the realtime answer settles a poll; any other frame leaves its timeout running. */
54
- commandProgress = frame => this.isPolling() && (0, _lepuFrame.lepuCommandOf)(frame) !== BP2_REALTIME_COMMAND ? "ignored" : "complete";
69
+ /** Only the awaited answer settles a command; any other frame leaves its timeout running. */
70
+ commandProgress = frame => {
71
+ const awaited = this.awaitedCommand();
72
+ return awaited === undefined || (0, _lepuFrame.lepuCommandOf)(frame) === awaited ? "complete" : "ignored";
73
+ };
55
74
  nextCommand = frame => {
56
75
  if (this.phase === "clock") {
57
76
  if ((0, _lepuFrame.lepuCommandOf)(frame) !== _lepuCommands.LepuCommand.SET_TIME) {
@@ -99,6 +118,16 @@ class BP2HistorySequencer {
99
118
  this.params.onTransferFinished();
100
119
  return [this.pollCommand()];
101
120
  };
121
+ awaitedCommand = () => {
122
+ if (this.phase === "clock") {
123
+ return _lepuCommands.LepuCommand.SET_TIME;
124
+ }
125
+ return this.isPolling() ? BP2_REALTIME_COMMAND : undefined;
126
+ };
127
+ setTimeCommand = () => ({
128
+ ...this.params.write,
129
+ frame: this.builder.build(_lepuCommands.LepuCommand.SET_TIME, (0, _lepuEcgTransfer.clockPayload)(this.params.clockSync))
130
+ });
102
131
  isPolling = () => this.phase === "files" && this.transfer === undefined;
103
132
  pollCommand = () => ({
104
133
  ...this.params.write,
@@ -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","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":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AASA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,mBAAA,GAAAH,OAAA;AACA,IAAAI,aAAA,GAAAJ,OAAA;AACA,IAAAK,gBAAA,GAAAL,OAAA;AACA,IAAAM,iBAAA,GAAAN,OAAA;AACA,IAAAO,UAAA,GAAAP,OAAA;AACA,IAAAQ,iBAAA,GAAAR,OAAA;AAKA,MAAMS,oBAAoB,GAAAC,OAAA,CAAAD,oBAAA,GAAG,IAAI;AACjC,MAAME,iBAAiB,GAAG,IAAIC,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACrD,MAAMC,aAAa,GAAG,IAAI;AAC1B,MAAMC,eAAe,GAAG,IAAIF,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;;AAEnD;AACA,MAAMG,oBAAoB,GAAG,GAAG;;AAEhC;AACA,MAAMC,0BAA0B,GAAGD,oBAAoB,GAAG,KAAK;AAgB/D;AACA,MAAME,mBAAmB,CAA6B;EACnCC,OAAO,GAAG,IAAIC,sCAAkB,CAAC,CAAC;EAG3CC,uBAAuB,GAAG,CAAC;EAC3BC,iBAAiB,GAAG,KAAK;EACzBC,KAAK,GAAoB,OAAO;EAEjCC,WAAWA,CAAkBC,MAAiC,EAAE;IAAA,KAAnCA,MAAiC,GAAjCA,MAAiC;EAAG;EAEjEC,eAAe,GAAGA,CAAA,KAAgC;IACvD,IAAI,IAAAC,6BAAkB,EAAC,IAAI,CAACF,MAAM,CAACG,SAAS,CAAC,EAAE;MAC7C,IAAI,CAACL,KAAK,GAAG,OAAO;MAEpB,OAAO,CACL;QACE,GAAG,IAAI,CAACE,MAAM,CAACI,KAAK;QACpBC,KAAK,EAAE,IAAI,CAACX,OAAO,CAACY,KAAK,CACvBC,yBAAW,CAACC,QAAQ,EACpB,IAAAC,6BAAY,EAAC,IAAI,CAACT,MAAM,CAACG,SAAS,CACpC;MACF,CAAC,CACF;IACH;IAEA,OAAO,IAAI,CAACO,aAAa,CAAC,CAAC;EAC7B,CAAC;EAEMC,iBAAiB,GAAGA,CAAA,KAAe,IAAI;EAEvCC,gBAAgB,GAAGA,CAAA,KACxB,IAAI,CAACC,SAAS,CAAC,CAAC,GAAGrB,0BAA0B,GAAGsB,SAAS;;EAE3D;EACOC,gBAAgB,GAAGA,CAAA,KACxB,IAAI,CAACF,SAAS,CAAC,CAAC,GAAG;IAAEG,QAAQ,EAAE,CAAC,IAAI,CAACC,WAAW,CAAC,CAAC;EAAE,CAAC,GAAG,CAAC,CAAC;;EAE5D;EACOC,eAAe,GAAIb,KAAwB,IAChD,IAAI,CAACQ,SAAS,CAAC,CAAC,IAAI,IAAAM,wBAAa,EAACd,KAAK,CAAC,KAAKpB,oBAAoB,GAC7D,SAAS,GACT,UAAU;EAETmC,WAAW,GAChBf,KAAwB,IACiB;IACzC,IAAI,IAAI,CAACP,KAAK,KAAK,OAAO,EAAE;MAC1B,IAAI,IAAAqB,wBAAa,EAACd,KAAK,CAAC,KAAKE,yBAAW,CAACC,QAAQ,EAAE;QACjD,OAAOM,SAAS;MAClB;MAEA,IAAI,CAAC,IAAAO,+BAAa,EAAChB,KAAK,CAAC,EAAE;QACzB,IAAI,CAACL,MAAM,CAACsB,OAAO,CACjB,gCAAgC,IAAAC,0CAAwB,EAAClB,KAAK,CAAC,EACjE,CAAC;MACH;MAEA,OAAO,IAAI,CAACK,aAAa,CAAC,CAAC;IAC7B;IAEA,IAAI,IAAI,CAACc,QAAQ,EAAE;MACjB,OAAO,IAAI,CAACA,QAAQ,CAACJ,WAAW,CAACf,KAAK,CAAC;IACzC;IAEA,IAAI,CAACoB,YAAY,CAACpB,KAAK,CAAC;IAExB,MAAMqB,QAAQ,GAAG,IAAI,CAACC,aAAa,CAACtB,KAAK,CAAC;IAE1C,MAAMuB,kBAAkB,GACtB,IAAI,CAAC/B,iBAAiB,IAAI,IAAI,CAACgC,WAAW,CAACxB,KAAK,CAAC;IAEnD,IAAIqB,QAAQ,EAAE;MACZ,IAAI,CAAC7B,iBAAiB,GAAG,KAAK;IAChC,CAAC,MAAM,IAAI+B,kBAAkB,EAAE;MAC7B,IAAI,CAAC/B,iBAAiB,GAAG,KAAK;MAC9B,IAAI,CAACG,MAAM,CAAC8B,iBAAiB,CAAC,CAAC;IACjC;IAEA,IAAI,IAAI,CAAC9B,MAAM,CAAC+B,mBAAmB,CAAC,CAAC,IAAIH,kBAAkB,EAAE;MAC3D,IAAI,CAAC5B,MAAM,CAACgC,mBAAmB,CAAC,CAAC;MAEjC,OAAO,IAAI,CAACtB,aAAa,CAACgB,QAAQ,GAAG,KAAK,GAAGZ,SAAS,CAAC;IACzD;;IAEA;IACA,OAAO,IAAAK,wBAAa,EAACd,KAAK,CAAC,KAAKpB,oBAAoB,GAAG,CAAC,IAAI,CAACgC,WAAW,CAAC,CAAC,CAAC,GAAGH,SAAS;EACzF,CAAC;EAEOJ,aAAa,GACnBuB,kBAA2B,IACE;IAC7B,IAAI,CAACnC,KAAK,GAAG,OAAO;IACpB,IAAI,CAAC0B,QAAQ,GAAG,IAAIU,kCAAgB,CAAC;MACnC9B,KAAK,EAAE,IAAI,CAACJ,MAAM,CAACI,KAAK;MACxBV,OAAO,EAAE,IAAI,CAACA,OAAO;MACrByC,MAAM,EAAE,IAAI,CAACnC,MAAM,CAACmC,MAAM;MAC1Bb,OAAO,EAAE,IAAI,CAACtB,MAAM,CAACsB,OAAO;MAC5Bc,SAAS,EAAE,IAAI,CAACpC,MAAM,CAACoC,SAAS;MAChCC,aAAa,EAAE,IAAI,CAACC;IACtB,CAAC,CAAC;IAEF,OAAO,IAAI,CAACd,QAAQ,CAACvB,eAAe,CAACgC,kBAAkB,CAAC;EAC1D,CAAC;EAEOK,cAAc,GAAGA,CAAA,KAAgC;IACvD,IAAI,CAACd,QAAQ,GAAGV,SAAS;IACzB,IAAI,CAACd,MAAM,CAACuC,kBAAkB,CAAC,CAAC;IAEhC,OAAO,CAAC,IAAI,CAACtB,WAAW,CAAC,CAAC,CAAC;EAC7B,CAAC;EAEOJ,SAAS,GAAGA,CAAA,KAClB,IAAI,CAACf,KAAK,KAAK,OAAO,IAAI,IAAI,CAAC0B,QAAQ,KAAKV,SAAS;EAE/CG,WAAW,GAAGA,CAAA,MAAsB;IAC1C,GAAG,IAAI,CAACjB,MAAM,CAACI,KAAK;IACpBC,KAAK,EAAE,IAAI,CAACX,OAAO,CAACY,KAAK,CAACrB,oBAAoB,CAAC;IAC/CgD,kBAAkB,EAAE1C;EACtB,CAAC,CAAC;EAEMoC,aAAa,GAAItB,KAAwB,IAC/C,IAAAmC,oBAAS,EAACnC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAKpB,oBAAoB,IACnDE,iBAAiB,CAACsD,GAAG,CAAC,CAACpC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAEqC,WAAW,CAAC,CAAC,CAAC;EAE/Cb,WAAW,GAAIxB,KAAwB,IAC7C,IAAAmC,oBAAS,EAACnC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAKpB,oBAAoB,IACnDK,eAAe,CAACmD,GAAG,CAAC,CAACpC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAEqC,WAAW,CAAC,CAAC,CAAC;EAE7CjB,YAAY,GAAIpB,KAAwB,IAAW;IACzD,IAAI,IAAAmC,oBAAS,EAACnC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAKpB,oBAAoB,EAAE;MACvD;IACF;IAEA,MAAM0D,SAAS,GAAG,CAACtC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAEqC,WAAW,CAAC,CAAC;IAEhD,IAAIC,SAAS,KAAKtD,aAAa,EAAE;MAC/B,IAAI,CAACQ,iBAAiB,GAAG,IAAI;IAC/B;IAEA,IAAI8C,SAAS,KAAK,IAAI,CAACC,aAAa,EAAE;MACpC,IAAI,CAAChD,uBAAuB,EAAE;MAE9B;IACF;IAEA,IAAI,IAAI,CAACgD,aAAa,KAAK9B,SAAS,EAAE;MACpC,IAAA+B,0BAAY,EAAC,MAAM,EAAE,oCAAoC,CAAC;IAC5D;IAEA,IAAI,CAACD,aAAa,GAAGD,SAAS;IAC9B,IAAI,CAAC/C,uBAAuB,GAAG,CAAC;EAClC,CAAC;AACH;AAACV,OAAA,CAAAO,mBAAA,GAAAA,mBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_sentryLogger","require","_clockSync","_hexToByte","_lepuCommandBuilder","_lepuCommands","_lepuConnectRetry","_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","clockRetry","LepuConnectRetry","constructor","params","initialCommands","isClockSyncEnabled","clockSync","started","setTimeCommand","startTransfer","isHistoryTransfer","commandTimeoutMs","LEPU_CONNECT_REPLY_TIMEOUT_MS","isPolling","undefined","onCommandTimeout","commands","mayRetry","pollCommand","commandProgress","frame","awaited","awaitedCommand","lepuCommandOf","nextCommand","LepuCommand","SET_TIME","isLepuSuccess","onError","describeLepuResponseType","transfer","logRunStatus","isResult","isResultFrame","endedWithoutResult","isIdleFrame","onOrphanStreamEnd","shouldStartTransfer","onTransferRequested","delayBeforeWriteMs","LepuFileTransfer","write","onFile","skipFiles","afterTransfer","finishTransfer","onTransferFinished","build","clockPayload","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":[]}
@@ -133,7 +133,7 @@ class BTDataProcessor {
133
133
  handleFrame = (uuid, frame) => {
134
134
  const data = this.frameParser.parse(uuid, frame);
135
135
  if (!data) {
136
- (0, _sentryLogger.sentryLogger)("info", "BT_MANAGER: Frame matched no declared case", {
136
+ (0, _sentryLogger.sentryLogger)("debug", "BT_MANAGER: Frame matched no declared case", {
137
137
  uuid,
138
138
  frameLength: frame.length
139
139
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_sentryLogger","require","_measurementFeedback","_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","validatePackage","progress","commandProgress","commands","nextCommand","sendCommands","data","parse","sentryLogger","frameLength","dependentData","parsingCase","caseType","CaseType","DEPENDENT","handleDependentResult","isMeasuring","measuring","advance","onError","Error","MeasurementFeedbackKey","CORRUPT_FRAME","cause","message","setTimeout","STUCK","cancelConnection","duration","commandTimeoutMs","onCommandTimeout","terminal","COMMAND_TIMEOUT","reason","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-data-processor.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_sentryLogger","require","_measurementFeedback","_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","validatePackage","progress","commandProgress","commands","nextCommand","sendCommands","data","parse","sentryLogger","frameLength","dependentData","parsingCase","caseType","CaseType","DEPENDENT","handleDependentResult","isMeasuring","measuring","advance","onError","Error","MeasurementFeedbackKey","CORRUPT_FRAME","cause","message","setTimeout","STUCK","cancelConnection","duration","commandTimeoutMs","onCommandTimeout","terminal","COMMAND_TIMEOUT","reason","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/bt-data-processor.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.LepuConnectRetry = exports.LEPU_CONNECT_REPLY_TIMEOUT_MS = void 0;
7
+ /** How long a connect-time command may go unanswered before it is sent again. */
8
+ const LEPU_CONNECT_REPLY_TIMEOUT_MS = exports.LEPU_CONNECT_REPLY_TIMEOUT_MS = 1_000;
9
+
10
+ /** A device just woken can drop its first command, so each connect step gets one more try. */
11
+ const LEPU_CONNECT_ATTEMPTS = 2;
12
+
13
+ /** Counts the tries of one connect-time command. */
14
+ class LepuConnectRetry {
15
+ attempts = 0;
16
+
17
+ /** Marks the first send of the command. */
18
+ started = () => {
19
+ this.attempts = 1;
20
+ };
21
+
22
+ /** Whether the command may be sent again; counts that send when it may. */
23
+ mayRetry = () => {
24
+ if (this.attempts >= LEPU_CONNECT_ATTEMPTS) {
25
+ return false;
26
+ }
27
+ this.attempts++;
28
+ return true;
29
+ };
30
+ }
31
+ exports.LepuConnectRetry = LepuConnectRetry;
32
+ //# sourceMappingURL=lepu.connect-retry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["LEPU_CONNECT_REPLY_TIMEOUT_MS","exports","LEPU_CONNECT_ATTEMPTS","LepuConnectRetry","attempts","started","mayRetry"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.connect-retry.ts"],"mappings":";;;;;;AAAA;AACA,MAAMA,6BAA6B,GAAAC,OAAA,CAAAD,6BAAA,GAAG,KAAK;;AAE3C;AACA,MAAME,qBAAqB,GAAG,CAAC;;AAE/B;AACA,MAAMC,gBAAgB,CAAC;EACbC,QAAQ,GAAG,CAAC;;EAEpB;EACOC,OAAO,GAAGA,CAAA,KAAY;IAC3B,IAAI,CAACD,QAAQ,GAAG,CAAC;EACnB,CAAC;;EAED;EACOE,QAAQ,GAAGA,CAAA,KAAe;IAC/B,IAAI,IAAI,CAACF,QAAQ,IAAIF,qBAAqB,EAAE;MAC1C,OAAO,KAAK;IACd;IAEA,IAAI,CAACE,QAAQ,EAAE;IAEf,OAAO,IAAI;EACb,CAAC;AACH;AAACH,OAAA,CAAAE,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
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
+ var _lepuConnectRetry = require("./lepu.connect-retry.js");
9
10
  var _lepuFileTransfer = require("./lepu.file-transfer.js");
10
11
  var _lepuFrame = require("./lepu.frame.js");
11
12
  var _lepuIdentityGate = require("./lepu.identity-gate.js");
@@ -13,6 +14,7 @@ var _lepuResponseType = require("./lepu.response-type.js");
13
14
  /** Identifies a recorder, sets its local clock, then downloads its stored files. */
14
15
  class LepuEcgTransferSequencer {
15
16
  phase = "identity";
17
+ clockRetry = new _lepuConnectRetry.LepuConnectRetry();
16
18
  constructor(params) {
17
19
  this.params = params;
18
20
  this.identity = new _lepuIdentityGate.LepuIdentityGate({
@@ -28,6 +30,31 @@ class LepuEcgTransferSequencer {
28
30
  }
29
31
  initialCommands = () => this.identity.initialCommands();
30
32
  isHistoryTransfer = () => true;
33
+ commandTimeoutMs = () => {
34
+ if (this.phase === "identity") {
35
+ return this.identity.commandTimeoutMs();
36
+ }
37
+ return this.phase === "clock" ? _lepuConnectRetry.LEPU_CONNECT_REPLY_TIMEOUT_MS : undefined;
38
+ };
39
+
40
+ /** An unanswered clock is sent once more, then skipped; the stored files don't need it. */
41
+ onCommandTimeout = () => {
42
+ if (this.phase === "identity") {
43
+ return this.identity.onCommandTimeout();
44
+ }
45
+ if (this.phase !== "clock") {
46
+ return {};
47
+ }
48
+ return {
49
+ commands: this.clockRetry.mayRetry() ? [this.setTimeCommand()] : this.startTransfer()
50
+ };
51
+ };
52
+ commandProgress = frame => {
53
+ if (this.phase === "identity") {
54
+ return this.identity.commandProgress(frame);
55
+ }
56
+ return this.phase === "clock" && (0, _lepuFrame.lepuCommandOf)(frame) !== _lepuCommands.LepuCommand.SET_TIME ? "ignored" : "complete";
57
+ };
31
58
  nextCommand = frame => {
32
59
  if (this.phase === "identity") {
33
60
  return this.identity.nextCommand(frame);
@@ -46,13 +73,15 @@ class LepuEcgTransferSequencer {
46
73
  startClockOrTransfer = () => {
47
74
  if ((0, _clockSync.isClockSyncEnabled)(this.params.clockSync)) {
48
75
  this.phase = "clock";
49
- return [{
50
- ...this.params.write,
51
- frame: this.params.builder.build(_lepuCommands.LepuCommand.SET_TIME, clockPayload(this.params.clockSync))
52
- }];
76
+ this.clockRetry.started();
77
+ return [this.setTimeCommand()];
53
78
  }
54
79
  return this.startTransfer();
55
80
  };
81
+ setTimeCommand = () => ({
82
+ ...this.params.write,
83
+ frame: this.params.builder.build(_lepuCommands.LepuCommand.SET_TIME, clockPayload(this.params.clockSync))
84
+ });
56
85
  finishClock = frame => {
57
86
  if ((0, _lepuFrame.lepuCommandOf)(frame) !== _lepuCommands.LepuCommand.SET_TIME) {
58
87
  return undefined;
@@ -1 +1 @@
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":[]}
1
+ {"version":3,"names":["_clockSync","require","_lepuCommands","_lepuConnectRetry","_lepuFileTransfer","_lepuFrame","_lepuIdentityGate","_lepuResponseType","LepuEcgTransferSequencer","phase","clockRetry","LepuConnectRetry","constructor","params","identity","LepuIdentityGate","write","builder","expectedDeviceTypes","manufacturerData","rejectEncryptionAtBytes","onIdentified","onRefused","onAdmitted","startClockOrTransfer","initialCommands","isHistoryTransfer","commandTimeoutMs","LEPU_CONNECT_REPLY_TIMEOUT_MS","undefined","onCommandTimeout","commands","mayRetry","setTimeCommand","startTransfer","commandProgress","frame","lepuCommandOf","LepuCommand","SET_TIME","nextCommand","finishClock","pollCommand","transfer","isClockSyncEnabled","clockSync","started","build","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;AAYA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAEA,IAAAG,iBAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,iBAAA,GAAAL,OAAA;AACA,IAAAM,iBAAA,GAAAN,OAAA;AA2BA;AACA,MAAMO,wBAAwB,CAA6B;EACjDC,KAAK,GAAyB,UAAU;EAC/BC,UAAU,GAAG,IAAIC,kCAAgB,CAAC,CAAC;EAI7CC,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,gBAAgB,GAAGA,CAAA,KAA0B;IAClD,IAAI,IAAI,CAAClB,KAAK,KAAK,UAAU,EAAE;MAC7B,OAAO,IAAI,CAACK,QAAQ,CAACa,gBAAgB,CAAC,CAAC;IACzC;IAEA,OAAO,IAAI,CAAClB,KAAK,KAAK,OAAO,GAAGmB,+CAA6B,GAAGC,SAAS;EAC3E,CAAC;;EAED;EACOC,gBAAgB,GAAGA,CAAA,KAA4B;IACpD,IAAI,IAAI,CAACrB,KAAK,KAAK,UAAU,EAAE;MAC7B,OAAO,IAAI,CAACK,QAAQ,CAACgB,gBAAgB,CAAC,CAAC;IACzC;IAEA,IAAI,IAAI,CAACrB,KAAK,KAAK,OAAO,EAAE;MAC1B,OAAO,CAAC,CAAC;IACX;IAEA,OAAO;MACLsB,QAAQ,EAAE,IAAI,CAACrB,UAAU,CAACsB,QAAQ,CAAC,CAAC,GAChC,CAAC,IAAI,CAACC,cAAc,CAAC,CAAC,CAAC,GACvB,IAAI,CAACC,aAAa,CAAC;IACzB,CAAC;EACH,CAAC;EAEMC,eAAe,GAAIC,KAAwB,IAA6B;IAC7E,IAAI,IAAI,CAAC3B,KAAK,KAAK,UAAU,EAAE;MAC7B,OAAO,IAAI,CAACK,QAAQ,CAACqB,eAAe,CAACC,KAAK,CAAC;IAC7C;IAEA,OAAO,IAAI,CAAC3B,KAAK,KAAK,OAAO,IAAI,IAAA4B,wBAAa,EAACD,KAAK,CAAC,KAAKE,yBAAW,CAACC,QAAQ,GAC1E,SAAS,GACT,UAAU;EAChB,CAAC;EAEMC,WAAW,GAChBJ,KAAwB,IACiB;IACzC,IAAI,IAAI,CAAC3B,KAAK,KAAK,UAAU,EAAE;MAC7B,OAAO,IAAI,CAACK,QAAQ,CAAC0B,WAAW,CAACJ,KAAK,CAAC;IACzC;IAEA,IAAI,IAAI,CAAC3B,KAAK,KAAK,OAAO,EAAE;MAC1B,OAAO,IAAI,CAACgC,WAAW,CAACL,KAAK,CAAC;IAChC;IAEA,IAAI,IAAI,CAAC3B,KAAK,KAAK,SAAS,EAAE;MAC5B,IACE,IAAI,CAACI,MAAM,CAAC6B,WAAW,KAAKb,SAAS,IACrC,IAAAQ,wBAAa,EAACD,KAAK,CAAC,KAAK,IAAI,CAACvB,MAAM,CAAC6B,WAAW,EAChD;QACA,OAAOb,SAAS;MAClB;MAEA,OAAO,IAAI,CAACK,aAAa,CAAC,KAAK,CAAC;IAClC;IAEA,OAAO,IAAI,CAACS,QAAQ,EAAEH,WAAW,CAACJ,KAAK,CAAC;EAC1C,CAAC;EAEOZ,oBAAoB,GAAGA,CAAA,KAAgC;IAC7D,IAAI,IAAAoB,6BAAkB,EAAC,IAAI,CAAC/B,MAAM,CAACgC,SAAS,CAAC,EAAE;MAC7C,IAAI,CAACpC,KAAK,GAAG,OAAO;MACpB,IAAI,CAACC,UAAU,CAACoC,OAAO,CAAC,CAAC;MAEzB,OAAO,CAAC,IAAI,CAACb,cAAc,CAAC,CAAC,CAAC;IAChC;IAEA,OAAO,IAAI,CAACC,aAAa,CAAC,CAAC;EAC7B,CAAC;EAEOD,cAAc,GAAGA,CAAA,MAAsB;IAC7C,GAAG,IAAI,CAACpB,MAAM,CAACG,KAAK;IACpBoB,KAAK,EAAE,IAAI,CAACvB,MAAM,CAACI,OAAO,CAAC8B,KAAK,CAC9BT,yBAAW,CAACC,QAAQ,EACpBS,YAAY,CAAC,IAAI,CAACnC,MAAM,CAACgC,SAAS,CACpC;EACF,CAAC,CAAC;EAEMJ,WAAW,GACjBL,KAAwB,IACiB;IACzC,IAAI,IAAAC,wBAAa,EAACD,KAAK,CAAC,KAAKE,yBAAW,CAACC,QAAQ,EAAE;MACjD,OAAOV,SAAS;IAClB;IAEA,IAAI,CAAC,IAAAoB,+BAAa,EAACb,KAAK,CAAC,EAAE;MACzB,IAAI,CAACvB,MAAM,CAACqC,OAAO,CACjB,gCAAgC,IAAAC,0CAAwB,EAACf,KAAK,CAAC,EACjE,CAAC;IACH;IAEA,OAAO,IAAI,CAACF,aAAa,CAAC,CAAC;EAC7B,CAAC;EAEOA,aAAa,GACnBkB,kBAA2B,IACE;IAC7B,IAAI,CAAC3C,KAAK,GAAG,OAAO;IACpB,IAAI,CAACkC,QAAQ,GAAG,IAAIU,kCAAgB,CAAC;MACnCrC,KAAK,EAAE,IAAI,CAACH,MAAM,CAACG,KAAK;MACxBC,OAAO,EAAE,IAAI,CAACJ,MAAM,CAACI,OAAO;MAC5BqC,MAAM,EAAE,IAAI,CAACzC,MAAM,CAACyC,MAAM;MAC1BJ,OAAO,EAAE,IAAI,CAACrC,MAAM,CAACqC,OAAO;MAC5BK,SAAS,EAAE,IAAI,CAAC1C,MAAM,CAAC0C,SAAS;MAChCC,UAAU,EAAE,IAAI,CAAC3C,MAAM,CAAC2C,UAAU;MAClCC,aAAa,EAAE,IAAI,CAACC,cAAc;MAClCC,UAAU,EAAE,IAAI,CAAC9C,MAAM,CAAC8C;IAC1B,CAAC,CAAC;IAEF,OAAO,IAAI,CAAChB,QAAQ,CAAClB,eAAe,CAAC2B,kBAAkB,CAAC;EAC1D,CAAC;EAEOM,cAAc,GAAGA,CAAA,KAAgC;IACvD,IAAI,CAACf,QAAQ,GAAGd,SAAS;IAEzB,IAAI,IAAI,CAAChB,MAAM,CAAC6B,WAAW,KAAKb,SAAS,EAAE;MACzC,IAAI,CAACpB,KAAK,GAAG,SAAS;MAEtB,OAAO,CAAC,IAAI,CAACiC,WAAW,CAAC,CAAC,CAAC;IAC7B;IAEA,OAAO,IAAI,CAAC7B,MAAM,CAAC4C,aAAa,GAAG,CAAC,IAAI,EAAE;EAC5C,CAAC;EAEOf,WAAW,GAAGA,CAAA,MAAsB;IAC1C,GAAG,IAAI,CAAC7B,MAAM,CAACG,KAAK;IACpBoB,KAAK,EAAE,IAAI,CAACvB,MAAM,CAACI,OAAO,CAAC8B,KAAK,CAAC,IAAI,CAAClC,MAAM,CAAC6B,WAAY,CAAC;IAC1D,IAAI,IAAI,CAAC7B,MAAM,CAAC+C,cAAc,KAAK/B,SAAS,GACxC,CAAC,CAAC,GACF;MAAEuB,kBAAkB,EAAE,IAAI,CAACvC,MAAM,CAAC+C;IAAe,CAAC;EACxD,CAAC,CAAC;AACJ;AAACC,OAAA,CAAArD,wBAAA,GAAAA,wBAAA;AAED,MAAMwC,YAAY,GAAIH,SAA4B,IAAe;EAC/D,MAAMiB,KAAK,GAAG,IAAAC,wBAAa,EACzBlB,SAAS,EAAEmB,GAAG,GAAG,CAAC,IAAI,IAAIC,IAAI,CAAC,CAAC,EAChCpB,SAAS,EAAEqB,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":[]}
@@ -8,6 +8,7 @@ var _clockSync = require("../../../types/clock-sync.js");
8
8
  var _hexToByte = require("../../../utils/hex-to-byte.js");
9
9
  var _lepuAdvertisement = require("./lepu.advertisement.js");
10
10
  var _lepuCommands = require("./lepu.commands.js");
11
+ var _lepuConnectRetry = require("./lepu.connect-retry.js");
11
12
  var _lepuDeviceInfo = require("./lepu.device-info.js");
12
13
  var _lepuResponseType = require("./lepu.response-type.js");
13
14
  /* eslint-disable max-lines */
@@ -19,6 +20,7 @@ const VIATOM_OXYGEN_INFO = 0x14;
19
20
  class LepuIdentityGate {
20
21
  isIdentified = false;
21
22
  isRefused = false;
23
+ connectRetry = new _lepuConnectRetry.LepuConnectRetry();
22
24
  constructor(params) {
23
25
  this.params = params;
24
26
  }
@@ -42,11 +44,37 @@ class LepuIdentityGate {
42
44
  const command = this.params.clockSyncProtocol === "bp3" ? 0xc0 : 0xec;
43
45
  this.pendingClockCommand = command;
44
46
  this.pendingCommand = command;
45
- return [this.commandFor(command, clockPayload(this.params.clockSync, this.params.clockSyncProtocol))];
47
+ return [this.awaitConnect(this.commandFor(command, clockPayload(this.params.clockSync, this.params.clockSyncProtocol)))];
46
48
  }
47
- this.pendingCommand = _lepuCommands.LepuCommand.GET_INFO;
48
- return [this.commandFor(_lepuCommands.LepuCommand.GET_INFO)];
49
+ return [this.askWhatItIs()];
50
+ };
51
+ commandTimeoutMs = () => this.awaitsConnectReply() ? _lepuConnectRetry.LEPU_CONNECT_REPLY_TIMEOUT_MS : undefined;
52
+
53
+ /**
54
+ * A device just woken can drop its first command, so an unanswered connect command is sent
55
+ * once more. An unanswered clock is then skipped; an unanswered identity is left to the
56
+ * stuck watchdog, since a device that never says what it is cannot be addressed.
57
+ */
58
+ onCommandTimeout = () => {
59
+ if (!this.awaitsConnectReply() || !this.connectCommand) {
60
+ return {};
61
+ }
62
+ if (this.connectRetry.mayRetry()) {
63
+ return {
64
+ commands: [this.connectCommand]
65
+ };
66
+ }
67
+ if (this.pendingClockCommand !== undefined) {
68
+ this.pendingClockCommand = undefined;
69
+ return {
70
+ commands: [this.askWhatItIs()]
71
+ };
72
+ }
73
+ return {};
49
74
  };
75
+
76
+ /** Only the awaited connect reply settles its command; other frames leave the timeout running. */
77
+ commandProgress = frame => this.awaitsConnectReply() && (0, _hexToByte.hexToByte)(frame[COMMAND_INDEX] ?? "ff") !== this.pendingCommand ? "ignored" : "complete";
50
78
  nextCommand = frame => {
51
79
  if (this.params.protocol === "viatom-oxygen") {
52
80
  return this.nextViatomOxygenCommand(frame);
@@ -67,9 +95,20 @@ class LepuIdentityGate {
67
95
  return undefined;
68
96
  }
69
97
  this.pendingClockCommand = undefined;
98
+ return [this.askWhatItIs()];
99
+ };
100
+ askWhatItIs = () => {
70
101
  this.pendingCommand = _lepuCommands.LepuCommand.GET_INFO;
71
- return [this.commandFor(_lepuCommands.LepuCommand.GET_INFO)];
102
+ return this.awaitConnect(this.commandFor(_lepuCommands.LepuCommand.GET_INFO));
72
103
  };
104
+ awaitConnect = command => {
105
+ this.connectCommand = command;
106
+ this.connectRetry.started();
107
+ return command;
108
+ };
109
+
110
+ /** The standard family's clock and identity steps; the oxygen and v2 protocols keep their own pacing. */
111
+ awaitsConnectReply = () => this.params.protocol === undefined && !this.isIdentified && !this.isRefused && this.pendingCommand !== undefined;
73
112
 
74
113
  /** Decides on the reply to the generic `GET_INFO` command. */
75
114
  admit = frame => {
@@ -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","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":[]}
1
+ {"version":3,"names":["_clockSync","require","_hexToByte","_lepuAdvertisement","_lepuCommands","_lepuConnectRetry","_lepuDeviceInfo","_lepuResponseType","COMMAND_INDEX","VIATOM_OXYGEN_INFO","LepuIdentityGate","isIdentified","isRefused","connectRetry","LepuConnectRetry","constructor","params","initialCommands","advertisementRequiresEncryption","manufacturerData","rejectEncryptionAtBytes","refuse","protocol","command","pollCommand","pendingCommand","commandFor","setClock","setClockBeforeInfo","isClockSyncEnabled","clockSync","oxyClockPayload","clockSyncProtocol","pendingClockCommand","awaitConnect","clockPayload","askWhatItIs","commandTimeoutMs","awaitsConnectReply","LEPU_CONNECT_REPLY_TIMEOUT_MS","undefined","onCommandTimeout","connectCommand","mayRetry","commands","commandProgress","frame","hexToByte","nextCommand","nextViatomOxygenCommand","nextClockCommand","poll","admit","LepuCommand","GET_INFO","started","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":[]}
@@ -5,6 +5,7 @@ import { isClockSyncEnabled } from "../../../types/clock-sync.js";
5
5
  import { hexToByte } from "../../../utils/hex-to-byte.js";
6
6
  import { LepuCommandBuilder } from "../lepu/lepu.command-builder.js";
7
7
  import { LepuCommand } from "../lepu/lepu.commands.js";
8
+ import { LEPU_CONNECT_REPLY_TIMEOUT_MS, LepuConnectRetry } from "../lepu/lepu.connect-retry.js";
8
9
  import { clockPayload } from "../lepu/lepu.ecg-transfer.js";
9
10
  import { LepuFileTransfer } from "../lepu/lepu.file-transfer.js";
10
11
  import { lepuCommandOf } from "../lepu/lepu.frame.js";
@@ -25,29 +26,47 @@ class BP2HistorySequencer {
25
26
  lastRunStatusFrameCount = 0;
26
27
  realtimeEcgActive = false;
27
28
  phase = "files";
29
+ clockRetry = new LepuConnectRetry();
28
30
  constructor(params) {
29
31
  this.params = params;
30
32
  }
31
33
  initialCommands = () => {
32
34
  if (isClockSyncEnabled(this.params.clockSync)) {
33
35
  this.phase = "clock";
34
- return [{
35
- ...this.params.write,
36
- frame: this.builder.build(LepuCommand.SET_TIME, clockPayload(this.params.clockSync))
37
- }];
36
+ this.clockRetry.started();
37
+ return [this.setTimeCommand()];
38
38
  }
39
39
  return this.startTransfer();
40
40
  };
41
41
  isHistoryTransfer = () => true;
42
- commandTimeoutMs = () => this.isPolling() ? BP2_POLL_ANSWER_TIMEOUT_MS : undefined;
42
+ commandTimeoutMs = () => {
43
+ if (this.phase === "clock") {
44
+ return LEPU_CONNECT_REPLY_TIMEOUT_MS;
45
+ }
46
+ return this.isPolling() ? BP2_POLL_ANSWER_TIMEOUT_MS : undefined;
47
+ };
43
48
 
44
- /** The BP2 can drop a poll while it starts measuring, so a missing answer is asked for again. */
45
- onCommandTimeout = () => this.isPolling() ? {
46
- commands: [this.pollCommand()]
47
- } : {};
49
+ /**
50
+ * A BP2 just switched on can drop its first command, and one starting a measurement can
51
+ * drop a poll, so a missing answer is asked for again. The clock is optional: when it is
52
+ * still unanswered, the stored files are read without it.
53
+ */
54
+ onCommandTimeout = () => {
55
+ if (this.phase === "clock") {
56
+ return {
57
+ commands: this.clockRetry.mayRetry() ? [this.setTimeCommand()] : this.startTransfer()
58
+ };
59
+ }
60
+ return this.isPolling() ? {
61
+ commands: [this.pollCommand()]
62
+ } : {};
63
+ };
48
64
 
49
- /** Only the realtime answer settles a poll; any other frame leaves its timeout running. */
50
- commandProgress = frame => this.isPolling() && lepuCommandOf(frame) !== BP2_REALTIME_COMMAND ? "ignored" : "complete";
65
+ /** Only the awaited answer settles a command; any other frame leaves its timeout running. */
66
+ commandProgress = frame => {
67
+ const awaited = this.awaitedCommand();
68
+ return awaited === undefined || lepuCommandOf(frame) === awaited ? "complete" : "ignored";
69
+ };
51
70
  nextCommand = frame => {
52
71
  if (this.phase === "clock") {
53
72
  if (lepuCommandOf(frame) !== LepuCommand.SET_TIME) {
@@ -95,6 +114,16 @@ class BP2HistorySequencer {
95
114
  this.params.onTransferFinished();
96
115
  return [this.pollCommand()];
97
116
  };
117
+ awaitedCommand = () => {
118
+ if (this.phase === "clock") {
119
+ return LepuCommand.SET_TIME;
120
+ }
121
+ return this.isPolling() ? BP2_REALTIME_COMMAND : undefined;
122
+ };
123
+ setTimeCommand = () => ({
124
+ ...this.params.write,
125
+ frame: this.builder.build(LepuCommand.SET_TIME, clockPayload(this.params.clockSync))
126
+ });
98
127
  isPolling = () => this.phase === "files" && this.transfer === undefined;
99
128
  pollCommand = () => ({
100
129
  ...this.params.write,
@@ -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","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":";;AAAA,SAASA,YAAY,QAAQ,4CAAyC;AACtE,SACEC,kBAAkB,QAEb,8BAA2B;AAMlC,SAASC,SAAS,QAAQ,+BAA4B;AACtD,SAASC,kBAAkB,QAAQ,iCAA8B;AACjE,SAASC,WAAW,QAAQ,0BAAuB;AACnD,SAASC,YAAY,QAAQ,8BAA2B;AACxD,SAAmBC,gBAAgB,QAAQ,+BAA4B;AACvE,SAASC,aAAa,QAAQ,uBAAoB;AAClD,SACEC,aAAa,EACbC,wBAAwB,QACnB,+BAA4B;AAEnC,MAAMC,oBAAoB,GAAG,IAAI;AACjC,MAAMC,iBAAiB,GAAG,IAAIC,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AACrD,MAAMC,aAAa,GAAG,IAAI;AAC1B,MAAMC,eAAe,GAAG,IAAIF,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;;AAEnD;AACA,MAAMG,oBAAoB,GAAG,GAAG;;AAEhC;AACA,MAAMC,0BAA0B,GAAGD,oBAAoB,GAAG,KAAK;AAgB/D;AACA,MAAME,mBAAmB,CAA6B;EACnCC,OAAO,GAAG,IAAIf,kBAAkB,CAAC,CAAC;EAG3CgB,uBAAuB,GAAG,CAAC;EAC3BC,iBAAiB,GAAG,KAAK;EACzBC,KAAK,GAAoB,OAAO;EAEjCC,WAAWA,CAAkBC,MAAiC,EAAE;IAAA,KAAnCA,MAAiC,GAAjCA,MAAiC;EAAG;EAEjEC,eAAe,GAAGA,CAAA,KAAgC;IACvD,IAAIvB,kBAAkB,CAAC,IAAI,CAACsB,MAAM,CAACE,SAAS,CAAC,EAAE;MAC7C,IAAI,CAACJ,KAAK,GAAG,OAAO;MAEpB,OAAO,CACL;QACE,GAAG,IAAI,CAACE,MAAM,CAACG,KAAK;QACpBC,KAAK,EAAE,IAAI,CAACT,OAAO,CAACU,KAAK,CACvBxB,WAAW,CAACyB,QAAQ,EACpBxB,YAAY,CAAC,IAAI,CAACkB,MAAM,CAACE,SAAS,CACpC;MACF,CAAC,CACF;IACH;IAEA,OAAO,IAAI,CAACK,aAAa,CAAC,CAAC;EAC7B,CAAC;EAEMC,iBAAiB,GAAGA,CAAA,KAAe,IAAI;EAEvCC,gBAAgB,GAAGA,CAAA,KACxB,IAAI,CAACC,SAAS,CAAC,CAAC,GAAGjB,0BAA0B,GAAGkB,SAAS;;EAE3D;EACOC,gBAAgB,GAAGA,CAAA,KACxB,IAAI,CAACF,SAAS,CAAC,CAAC,GAAG;IAAEG,QAAQ,EAAE,CAAC,IAAI,CAACC,WAAW,CAAC,CAAC;EAAE,CAAC,GAAG,CAAC,CAAC;;EAE5D;EACOC,eAAe,GAAIX,KAAwB,IAChD,IAAI,CAACM,SAAS,CAAC,CAAC,IAAI1B,aAAa,CAACoB,KAAK,CAAC,KAAKjB,oBAAoB,GAC7D,SAAS,GACT,UAAU;EAET6B,WAAW,GAChBZ,KAAwB,IACiB;IACzC,IAAI,IAAI,CAACN,KAAK,KAAK,OAAO,EAAE;MAC1B,IAAId,aAAa,CAACoB,KAAK,CAAC,KAAKvB,WAAW,CAACyB,QAAQ,EAAE;QACjD,OAAOK,SAAS;MAClB;MAEA,IAAI,CAAC1B,aAAa,CAACmB,KAAK,CAAC,EAAE;QACzB,IAAI,CAACJ,MAAM,CAACiB,OAAO,CACjB,gCAAgC/B,wBAAwB,CAACkB,KAAK,CAAC,EACjE,CAAC;MACH;MAEA,OAAO,IAAI,CAACG,aAAa,CAAC,CAAC;IAC7B;IAEA,IAAI,IAAI,CAACW,QAAQ,EAAE;MACjB,OAAO,IAAI,CAACA,QAAQ,CAACF,WAAW,CAACZ,KAAK,CAAC;IACzC;IAEA,IAAI,CAACe,YAAY,CAACf,KAAK,CAAC;IAExB,MAAMgB,QAAQ,GAAG,IAAI,CAACC,aAAa,CAACjB,KAAK,CAAC;IAE1C,MAAMkB,kBAAkB,GACtB,IAAI,CAACzB,iBAAiB,IAAI,IAAI,CAAC0B,WAAW,CAACnB,KAAK,CAAC;IAEnD,IAAIgB,QAAQ,EAAE;MACZ,IAAI,CAACvB,iBAAiB,GAAG,KAAK;IAChC,CAAC,MAAM,IAAIyB,kBAAkB,EAAE;MAC7B,IAAI,CAACzB,iBAAiB,GAAG,KAAK;MAC9B,IAAI,CAACG,MAAM,CAACwB,iBAAiB,CAAC,CAAC;IACjC;IAEA,IAAI,IAAI,CAACxB,MAAM,CAACyB,mBAAmB,CAAC,CAAC,IAAIH,kBAAkB,EAAE;MAC3D,IAAI,CAACtB,MAAM,CAAC0B,mBAAmB,CAAC,CAAC;MAEjC,OAAO,IAAI,CAACnB,aAAa,CAACa,QAAQ,GAAG,KAAK,GAAGT,SAAS,CAAC;IACzD;;IAEA;IACA,OAAO3B,aAAa,CAACoB,KAAK,CAAC,KAAKjB,oBAAoB,GAAG,CAAC,IAAI,CAAC2B,WAAW,CAAC,CAAC,CAAC,GAAGH,SAAS;EACzF,CAAC;EAEOJ,aAAa,GACnBoB,kBAA2B,IACE;IAC7B,IAAI,CAAC7B,KAAK,GAAG,OAAO;IACpB,IAAI,CAACoB,QAAQ,GAAG,IAAInC,gBAAgB,CAAC;MACnCoB,KAAK,EAAE,IAAI,CAACH,MAAM,CAACG,KAAK;MACxBR,OAAO,EAAE,IAAI,CAACA,OAAO;MACrBiC,MAAM,EAAE,IAAI,CAAC5B,MAAM,CAAC4B,MAAM;MAC1BX,OAAO,EAAE,IAAI,CAACjB,MAAM,CAACiB,OAAO;MAC5BY,SAAS,EAAE,IAAI,CAAC7B,MAAM,CAAC6B,SAAS;MAChCC,aAAa,EAAE,IAAI,CAACC;IACtB,CAAC,CAAC;IAEF,OAAO,IAAI,CAACb,QAAQ,CAACjB,eAAe,CAAC0B,kBAAkB,CAAC;EAC1D,CAAC;EAEOI,cAAc,GAAGA,CAAA,KAAgC;IACvD,IAAI,CAACb,QAAQ,GAAGP,SAAS;IACzB,IAAI,CAACX,MAAM,CAACgC,kBAAkB,CAAC,CAAC;IAEhC,OAAO,CAAC,IAAI,CAAClB,WAAW,CAAC,CAAC,CAAC;EAC7B,CAAC;EAEOJ,SAAS,GAAGA,CAAA,KAClB,IAAI,CAACZ,KAAK,KAAK,OAAO,IAAI,IAAI,CAACoB,QAAQ,KAAKP,SAAS;EAE/CG,WAAW,GAAGA,CAAA,MAAsB;IAC1C,GAAG,IAAI,CAACd,MAAM,CAACG,KAAK;IACpBC,KAAK,EAAE,IAAI,CAACT,OAAO,CAACU,KAAK,CAAClB,oBAAoB,CAAC;IAC/CwC,kBAAkB,EAAEnC;EACtB,CAAC,CAAC;EAEM6B,aAAa,GAAIjB,KAAwB,IAC/CzB,SAAS,CAACyB,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAKjB,oBAAoB,IACnDC,iBAAiB,CAAC6C,GAAG,CAAC,CAAC7B,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE8B,WAAW,CAAC,CAAC,CAAC;EAE/CX,WAAW,GAAInB,KAAwB,IAC7CzB,SAAS,CAACyB,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAKjB,oBAAoB,IACnDI,eAAe,CAAC0C,GAAG,CAAC,CAAC7B,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE8B,WAAW,CAAC,CAAC,CAAC;EAE7Cf,YAAY,GAAIf,KAAwB,IAAW;IACzD,IAAIzB,SAAS,CAACyB,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,KAAKjB,oBAAoB,EAAE;MACvD;IACF;IAEA,MAAMgD,SAAS,GAAG,CAAC/B,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE8B,WAAW,CAAC,CAAC;IAEhD,IAAIC,SAAS,KAAK7C,aAAa,EAAE;MAC/B,IAAI,CAACO,iBAAiB,GAAG,IAAI;IAC/B;IAEA,IAAIsC,SAAS,KAAK,IAAI,CAACC,aAAa,EAAE;MACpC,IAAI,CAACxC,uBAAuB,EAAE;MAE9B;IACF;IAEA,IAAI,IAAI,CAACwC,aAAa,KAAKzB,SAAS,EAAE;MACpClC,YAAY,CAAC,MAAM,EAAE,oCAAoC,CAAC;IAC5D;IAEA,IAAI,CAAC2D,aAAa,GAAGD,SAAS;IAC9B,IAAI,CAACvC,uBAAuB,GAAG,CAAC;EAClC,CAAC;AACH;AAEA,SAASF,mBAAmB,EAAEP,oBAAoB","ignoreList":[]}
1
+ {"version":3,"names":["sentryLogger","isClockSyncEnabled","hexToByte","LepuCommandBuilder","LepuCommand","LEPU_CONNECT_REPLY_TIMEOUT_MS","LepuConnectRetry","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","clockRetry","constructor","params","initialCommands","clockSync","started","setTimeCommand","startTransfer","isHistoryTransfer","commandTimeoutMs","isPolling","undefined","onCommandTimeout","commands","mayRetry","pollCommand","commandProgress","frame","awaited","awaitedCommand","nextCommand","SET_TIME","onError","transfer","logRunStatus","isResult","isResultFrame","endedWithoutResult","isIdleFrame","onOrphanStreamEnd","shouldStartTransfer","onTransferRequested","delayBeforeWriteMs","write","onFile","skipFiles","afterTransfer","finishTransfer","onTransferFinished","build","has","toLowerCase","runStatus","lastRunStatus"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/bp2/bp2.history-sequencer.ts"],"mappings":"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","ignoreList":[]}
@@ -129,7 +129,7 @@ export class BTDataProcessor {
129
129
  handleFrame = (uuid, frame) => {
130
130
  const data = this.frameParser.parse(uuid, frame);
131
131
  if (!data) {
132
- sentryLogger("info", "BT_MANAGER: Frame matched no declared case", {
132
+ sentryLogger("debug", "BT_MANAGER: Frame matched no declared case", {
133
133
  uuid,
134
134
  frameLength: frame.length
135
135
  });