@ovok/native 1.6.25 → 1.6.26

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 (111) hide show
  1. package/lib/commonjs/modules/bt-management/services/custom/compile-custom-lepu.js +7 -0
  2. package/lib/commonjs/modules/bt-management/services/custom/compile-custom-lepu.js.map +1 -1
  3. package/lib/commonjs/modules/bt-management/services/devices/aoj/aoj.thermometers.js +8 -3
  4. package/lib/commonjs/modules/bt-management/services/devices/aoj/aoj.thermometers.js.map +1 -1
  5. package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js +7 -2
  6. package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
  7. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.commands.js +2 -0
  8. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.commands.js.map +1 -1
  9. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.js +77 -0
  10. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.js.map +1 -0
  11. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.file-transfer.js +1 -1
  12. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.file-transfer.js.map +1 -1
  13. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.identity-gate.js +2 -2
  14. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.identity-gate.js.map +1 -1
  15. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.transports.js +6 -0
  16. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
  17. package/lib/commonjs/modules/bt-management/services/devices/spo/pc60fw.frame-reader.js +71 -0
  18. package/lib/commonjs/modules/bt-management/services/devices/spo/pc60fw.frame-reader.js.map +1 -0
  19. package/lib/commonjs/modules/bt-management/services/devices/spo/spo2.device.js +31 -5
  20. package/lib/commonjs/modules/bt-management/services/devices/spo/spo2.device.js.map +1 -1
  21. package/lib/commonjs/modules/bt-management/services/devices/spo/spo2.main-services.js +5 -0
  22. package/lib/commonjs/modules/bt-management/services/devices/spo/spo2.main-services.js.map +1 -1
  23. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-files.js +1 -1
  24. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-files.js.map +1 -1
  25. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js +8 -1
  26. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js.map +1 -1
  27. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.lepod.js +1 -0
  28. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.lepod.js.map +1 -1
  29. package/lib/commonjs/modules/bt-management/utils/calculate-crc-8-maxim.js +24 -0
  30. package/lib/commonjs/modules/bt-management/utils/calculate-crc-8-maxim.js.map +1 -0
  31. package/lib/module/modules/bt-management/services/custom/compile-custom-lepu.js +7 -0
  32. package/lib/module/modules/bt-management/services/custom/compile-custom-lepu.js.map +1 -1
  33. package/lib/module/modules/bt-management/services/devices/aoj/aoj.thermometers.js +8 -3
  34. package/lib/module/modules/bt-management/services/devices/aoj/aoj.thermometers.js.map +1 -1
  35. package/lib/module/modules/bt-management/services/devices/custom/custom.device.js +7 -2
  36. package/lib/module/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
  37. package/lib/module/modules/bt-management/services/devices/lepu/lepu.commands.js +2 -0
  38. package/lib/module/modules/bt-management/services/devices/lepu/lepu.commands.js.map +1 -1
  39. package/lib/module/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.js +73 -0
  40. package/lib/module/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.js.map +1 -0
  41. package/lib/module/modules/bt-management/services/devices/lepu/lepu.file-transfer.js +1 -1
  42. package/lib/module/modules/bt-management/services/devices/lepu/lepu.file-transfer.js.map +1 -1
  43. package/lib/module/modules/bt-management/services/devices/lepu/lepu.identity-gate.js +2 -2
  44. package/lib/module/modules/bt-management/services/devices/lepu/lepu.identity-gate.js.map +1 -1
  45. package/lib/module/modules/bt-management/services/devices/lepu/lepu.transports.js +6 -0
  46. package/lib/module/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
  47. package/lib/module/modules/bt-management/services/devices/spo/pc60fw.frame-reader.js +66 -0
  48. package/lib/module/modules/bt-management/services/devices/spo/pc60fw.frame-reader.js.map +1 -0
  49. package/lib/module/modules/bt-management/services/devices/spo/spo2.device.js +31 -5
  50. package/lib/module/modules/bt-management/services/devices/spo/spo2.device.js.map +1 -1
  51. package/lib/module/modules/bt-management/services/devices/spo/spo2.main-services.js +5 -0
  52. package/lib/module/modules/bt-management/services/devices/spo/spo2.main-services.js.map +1 -1
  53. package/lib/module/modules/bt-management/services/devices/viatom/viatom.ecg-files.js +1 -1
  54. package/lib/module/modules/bt-management/services/devices/viatom/viatom.ecg-files.js.map +1 -1
  55. package/lib/module/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js +8 -1
  56. package/lib/module/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js.map +1 -1
  57. package/lib/module/modules/bt-management/services/devices/viatom/viatom.lepod.js +1 -0
  58. package/lib/module/modules/bt-management/services/devices/viatom/viatom.lepod.js.map +1 -1
  59. package/lib/module/modules/bt-management/utils/calculate-crc-8-maxim.js +19 -0
  60. package/lib/module/modules/bt-management/utils/calculate-crc-8-maxim.js.map +1 -0
  61. package/lib/typescript/commonjs/src/modules/bt-management/services/custom/compile-custom-lepu.d.ts.map +1 -1
  62. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/aoj/aoj.thermometers.d.ts.map +1 -1
  63. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
  64. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.commands.d.ts +2 -0
  65. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.commands.d.ts.map +1 -1
  66. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.d.ts +41 -0
  67. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.d.ts.map +1 -0
  68. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.file-transfer.d.ts +2 -0
  69. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.file-transfer.d.ts.map +1 -1
  70. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.identity-gate.d.ts +2 -0
  71. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.identity-gate.d.ts.map +1 -1
  72. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +5 -0
  73. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts.map +1 -1
  74. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/spo/pc60fw.frame-reader.d.ts +8 -0
  75. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/spo/pc60fw.frame-reader.d.ts.map +1 -0
  76. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/spo/spo2.device.d.ts +5 -0
  77. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/spo/spo2.device.d.ts.map +1 -1
  78. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/spo/spo2.main-services.d.ts.map +1 -1
  79. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.ecg-files.d.ts.map +1 -1
  80. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.d.ts.map +1 -1
  81. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.lepod.d.ts.map +1 -1
  82. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-lepu-spec.d.ts +2 -0
  83. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-lepu-spec.d.ts.map +1 -1
  84. package/lib/typescript/commonjs/src/modules/bt-management/utils/calculate-crc-8-maxim.d.ts +3 -0
  85. package/lib/typescript/commonjs/src/modules/bt-management/utils/calculate-crc-8-maxim.d.ts.map +1 -0
  86. package/lib/typescript/module/src/modules/bt-management/services/custom/compile-custom-lepu.d.ts.map +1 -1
  87. package/lib/typescript/module/src/modules/bt-management/services/devices/aoj/aoj.thermometers.d.ts.map +1 -1
  88. package/lib/typescript/module/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
  89. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.commands.d.ts +2 -0
  90. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.commands.d.ts.map +1 -1
  91. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.d.ts +41 -0
  92. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.ecg-transfer.d.ts.map +1 -0
  93. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.file-transfer.d.ts +2 -0
  94. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.file-transfer.d.ts.map +1 -1
  95. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.identity-gate.d.ts +2 -0
  96. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.identity-gate.d.ts.map +1 -1
  97. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +5 -0
  98. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts.map +1 -1
  99. package/lib/typescript/module/src/modules/bt-management/services/devices/spo/pc60fw.frame-reader.d.ts +8 -0
  100. package/lib/typescript/module/src/modules/bt-management/services/devices/spo/pc60fw.frame-reader.d.ts.map +1 -0
  101. package/lib/typescript/module/src/modules/bt-management/services/devices/spo/spo2.device.d.ts +5 -0
  102. package/lib/typescript/module/src/modules/bt-management/services/devices/spo/spo2.device.d.ts.map +1 -1
  103. package/lib/typescript/module/src/modules/bt-management/services/devices/spo/spo2.main-services.d.ts.map +1 -1
  104. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.ecg-files.d.ts.map +1 -1
  105. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.d.ts.map +1 -1
  106. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.lepod.d.ts.map +1 -1
  107. package/lib/typescript/module/src/modules/bt-management/types/custom-lepu-spec.d.ts +2 -0
  108. package/lib/typescript/module/src/modules/bt-management/types/custom-lepu-spec.d.ts.map +1 -1
  109. package/lib/typescript/module/src/modules/bt-management/utils/calculate-crc-8-maxim.d.ts +3 -0
  110. package/lib/typescript/module/src/modules/bt-management/utils/calculate-crc-8-maxim.d.ts.map +1 -0
  111. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["_caseType","require","_btManagedDevice","_spo2MainServices","SPO2Device","BTManagedDevice","onStreamStart","mainServices","spo2MainServices","stuckDataTimeout","validatePackage","pkg","map","b","toLowerCase","headIndex","i","length","slice","toNum","hex","parseInt","lengthByte","totalLen","handleSuccessResult","successResult","collectedValues","caseType","CaseType","STREAM","OTHER","measurementTypeKey","onError","Error","handlePulseOximeterResult","error","checkIfHasError","onResult","bloodOxygen","undefined","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/spo/spo2.device.ts"],"mappings":";;;;;;AAEA,IAAAA,SAAA,GAAAC,OAAA;AAKA,IAAAC,gBAAA,GAAAD,OAAA;AAEA,IAAAE,iBAAA,GAAAF,OAAA;AAEO,MAAMG,UAAU,SAASC,gCAAe,CAA2B;EAC9DC,aAAa,GAAeA,CAAA,KAAM,CAAC,CAAC;EAEpCC,YAAY,GAAeC,kCAAgB;EAC3CC,gBAAgB,GAAG,MAAM;EAEzBC,eAAe,GAAgCC,GAAG,IAAK;IAC/DA,GAAG,GAAGA,GAAG,CAACC,GAAG,CAAEC,CAAC,IAAKA,CAAC,CAACC,WAAW,CAAC,CAAC,CAAC;IAErC,IAAIC,SAAS,GAAG,CAAC,CAAC;IAElB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGL,GAAG,CAACM,MAAM,GAAG,CAAC,EAAED,CAAC,EAAE,EAAE;MACvC,IAAIL,GAAG,CAACK,CAAC,CAAC,KAAK,IAAI,IAAIL,GAAG,CAACK,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE;QAC1CD,SAAS,GAAGC,CAAC;QACb;MACF;IACF;IAEA,IAAID,SAAS,KAAK,CAAC,CAAC,EAAE;MACpB,OAAO,KAAK;IACd;IAEA,IAAIA,SAAS,GAAG,CAAC,EAAE;MACjBJ,GAAG,GAAGA,GAAG,CAACO,KAAK,CAACH,SAAS,CAAC;IAC5B;IAEA,IAAIJ,GAAG,CAACM,MAAM,GAAG,CAAC,EAAE;MAClB,OAAO,KAAK;IACd;IAEA,MAAME,KAAK,GAAIC,GAAY,IAAKC,QAAQ,CAACD,GAAG,IAAI,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC;IAE7D,MAAME,UAAU,GAAGH,KAAK,CAACR,GAAG,CAAC,CAAC,CAAC,CAAC;IAEhC,MAAMY,QAAQ,GAAG,CAAC,GAAGD,UAAU;IAE/B,IAAIX,GAAG,CAACM,MAAM,GAAGM,QAAQ,EAAE;MACzB,OAAO,KAAK;IACd;IAEA,OAAO,IAAI;EACb,CAAC;EAESC,mBAAmBA,CAC3BC,aAEC,EACDC,eAAyB,EACT;IAChB,IACED,aAAa,CAACE,QAAQ,KAAKC,kBAAQ,CAACC,MAAM,IAC1CJ,aAAa,CAACE,QAAQ,KAAKC,kBAAQ,CAACE,KAAK,EACzC;MACA;IACF;IAEA,IAAI,CAACJ,eAAe,CAAC,CAAC,CAAC,IAAI,GAAG,MAAM,IAAI,EAAE;MACxC,OAAO,IAAI;IACb;IAEA,IAAI,CAACD,aAAa,CAACM,kBAAkB,EAAE;MACrC,IAAI,CAACC,OAAO,GACV,IAAIC,KAAK,CACP,0CAA0CR,aAAa,CAACE,QAAQ,EAClE,CACF,CAAC;MAED;IACF;IAEA,IAAI,CAACO,yBAAyB,CAACT,aAAa,CAAC;EAC/C;EAEQS,yBAAyBA,CAC/BT,aAAgE,EAC1D;IACN,MAAMU,KAAK,GAAG,IAAI,CAACC,eAAe,CAACX,aAAa,CAAC;IAEjD,IAAIU,KAAK,EAAE;MACT,IAAI,CAACH,OAAO,GAAGG,KAAK,CAAC;MAErB;IACF;IAEA,IAAI,CAACE,QAAQ,GAAGZ,aAAa,CAAC;EAChC;EAEQW,eAAeA,CACrBX,aAAgE,EAC5C;IACpB,IAAI,CAACA,aAAa,CAACa,WAAW,EAAE;MAC9B,OAAO,sDAAsD;IAC/D;IAEA,OAAOC,SAAS;EAClB;AACF;AAACC,OAAA,CAAApC,UAAA,GAAAA,UAAA","ignoreList":[]}
1
+ {"version":3,"names":["_caseType","require","_btManagedDevice","_pc60fwFrameReader","_spo2MainServices","SPO2Device","BTManagedDevice","onStreamStart","mainServices","spo2MainServices","stuckDataTimeout","frameReader","Pc60FwFrameReader","validatePackage","pkg","map","b","toLowerCase","headIndex","i","length","slice","toNum","hex","parseInt","lengthByte","totalLen","handleSuccessResult","successResult","collectedValues","caseType","CaseType","STREAM","OTHER","status","Number","isValidParameterResult","lastValidResult","withoutPerfusionMarker","perfusionIndex","undefined","measurementTypeKey","onError","Error","handlePulseOximeterResult","error","checkIfHasError","onResult","bloodOxygen","pulseRate","includes","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/spo/spo2.device.ts"],"mappings":"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","ignoreList":[]}
@@ -43,6 +43,11 @@ const spo2MainServices = exports.spo2MainServices = [{
43
43
  parseType: "number",
44
44
  byteIndexes: [7, 6],
45
45
  parseReference: 16
46
+ }, {
47
+ name: "perfusionIndex",
48
+ parseType: "number",
49
+ byteIndexes: [8],
50
+ customParserDefinition: value => parseInt(value, 16) / 10
46
51
  }]
47
52
  }]
48
53
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_core","require","_caseType","spo2MainServices","exports","uuid","monitorUuids","parsingModel","caseValuePosition","cases","measurementTypeKey","MeasurementTypeKey","bloodOxygenPulseRate","caseType","CaseType","STREAM","caseValue","parseDefinitions","description","RESULT","name","parseType","byteIndexes","parseReference"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/spo/spo2.main-services.ts"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAD,OAAA;AAGO,MAAME,gBAA4B,GAAAC,OAAA,CAAAD,gBAAA,GAAG,CAC1C;EACEE,IAAI,EAAE,sCAAsC;EAC5CC,YAAY,EAAE,CACZ;IACED,IAAI,EAAE,sCAAsC;IAC5CE,YAAY,EAAE;MACZC,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;MAC/BC,KAAK,EAAE,CACL;QACEC,kBAAkB,EAAEC,wBAAkB,CAACC,oBAAoB;QAC3DC,QAAQ,EAAEC,kBAAQ,CAACC,MAAM;QACzBC,SAAS,EAAE,UAAU;QACrBC,gBAAgB,EAAE,EAAE;QACpBC,WAAW,EAAE;MACf,CAAC,EAED;QACER,kBAAkB,EAAEC,wBAAkB,CAACC,oBAAoB;QAC3DC,QAAQ,EAAEC,kBAAQ,CAACC,MAAM;QACzBC,SAAS,EAAE,UAAU;QACrBC,gBAAgB,EAAE,EAAE;QACpBC,WAAW,EAAE;MACf,CAAC,EAED;QACER,kBAAkB,EAAEC,wBAAkB,CAACC,oBAAoB;QAC3DC,QAAQ,EAAEC,kBAAQ,CAACC,MAAM;QACzBC,SAAS,EAAE,UAAU;QACrBC,gBAAgB,EAAE;MACpB,CAAC,EAED;QACEP,kBAAkB,EAAEC,wBAAkB,CAACC,oBAAoB;QAC3DC,QAAQ,EAAEC,kBAAQ,CAACK,MAAM;QACzBH,SAAS,EAAE,UAAU;QACrBC,gBAAgB,EAAE,CAChB;UACEG,IAAI,EAAE,aAAa;UACnBC,SAAS,EAAE,QAAQ;UACnBC,WAAW,EAAE,CAAC,CAAC,CAAC;UAChBC,cAAc,EAAE;QAClB,CAAC,EACD;UACEH,IAAI,EAAE,WAAW;UACjBC,SAAS,EAAE,QAAQ;UACnBC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;UACnBC,cAAc,EAAE;QAClB,CAAC;MAEL,CAAC;IAEL;EACF,CAAC;AAEL,CAAC,CACF","ignoreList":[]}
1
+ {"version":3,"names":["_core","require","_caseType","spo2MainServices","exports","uuid","monitorUuids","parsingModel","caseValuePosition","cases","measurementTypeKey","MeasurementTypeKey","bloodOxygenPulseRate","caseType","CaseType","STREAM","caseValue","parseDefinitions","description","RESULT","name","parseType","byteIndexes","parseReference","customParserDefinition","value","parseInt"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/spo/spo2.main-services.ts"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAD,OAAA;AAGO,MAAME,gBAA4B,GAAAC,OAAA,CAAAD,gBAAA,GAAG,CAC1C;EACEE,IAAI,EAAE,sCAAsC;EAC5CC,YAAY,EAAE,CACZ;IACED,IAAI,EAAE,sCAAsC;IAC5CE,YAAY,EAAE;MACZC,iBAAiB,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;MAC/BC,KAAK,EAAE,CACL;QACEC,kBAAkB,EAAEC,wBAAkB,CAACC,oBAAoB;QAC3DC,QAAQ,EAAEC,kBAAQ,CAACC,MAAM;QACzBC,SAAS,EAAE,UAAU;QACrBC,gBAAgB,EAAE,EAAE;QACpBC,WAAW,EAAE;MACf,CAAC,EAED;QACER,kBAAkB,EAAEC,wBAAkB,CAACC,oBAAoB;QAC3DC,QAAQ,EAAEC,kBAAQ,CAACC,MAAM;QACzBC,SAAS,EAAE,UAAU;QACrBC,gBAAgB,EAAE,EAAE;QACpBC,WAAW,EAAE;MACf,CAAC,EAED;QACER,kBAAkB,EAAEC,wBAAkB,CAACC,oBAAoB;QAC3DC,QAAQ,EAAEC,kBAAQ,CAACC,MAAM;QACzBC,SAAS,EAAE,UAAU;QACrBC,gBAAgB,EAAE;MACpB,CAAC,EAED;QACEP,kBAAkB,EAAEC,wBAAkB,CAACC,oBAAoB;QAC3DC,QAAQ,EAAEC,kBAAQ,CAACK,MAAM;QACzBH,SAAS,EAAE,UAAU;QACrBC,gBAAgB,EAAE,CAChB;UACEG,IAAI,EAAE,aAAa;UACnBC,SAAS,EAAE,QAAQ;UACnBC,WAAW,EAAE,CAAC,CAAC,CAAC;UAChBC,cAAc,EAAE;QAClB,CAAC,EACD;UACEH,IAAI,EAAE,WAAW;UACjBC,SAAS,EAAE,QAAQ;UACnBC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;UACnBC,cAAc,EAAE;QAClB,CAAC,EACD;UACEH,IAAI,EAAE,gBAAgB;UACtBC,SAAS,EAAE,QAAQ;UACnBC,WAAW,EAAE,CAAC,CAAC,CAAC;UAChBE,sBAAsB,EAAGC,KAAa,IACpCC,QAAQ,CAACD,KAAK,EAAE,EAAE,CAAC,GAAG;QAC1B,CAAC;MAEL,CAAC;IAEL;EACF,CAAC;AAEL,CAAC,CACF","ignoreList":[]}
@@ -40,7 +40,7 @@ const decodeViatomEcgRecording = content => {
40
40
  for (let index = waveStart; index + 1 < waveEnd; index += 2) {
41
41
  const raw = (0, _hexToByte.hexToByte)(content[index] ?? "0") | (0, _hexToByte.hexToByte)(content[index + 1] ?? "0") << 8;
42
42
  const signed = raw & 0x8000 ? raw - 0x10000 : raw;
43
- samples.push(signed * VIATOM_ECG_MILLIVOLTS_PER_COUNT);
43
+ samples.push(raw === 0x7fff ? 0 : signed * VIATOM_ECG_MILLIVOLTS_PER_COUNT);
44
44
  }
45
45
  const recordedSeconds = readUInt32LittleEndian(content, content.length - 20);
46
46
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["_hexToByte","require","VIATOM_ECG_SAMPLE_RATE_HZ","exports","VIATOM_ECG_MILLIVOLTS_PER_COUNT","validDate","year","month","day","hour","minute","second","date","Date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","undefined","recordedAtFromViatomFileName","name","digits","match","length","Number","slice","readUInt32LittleEndian","bytes","from","hexToByte","decodeViatomEcgRecording","content","samples","duration","waveStart","waveEnd","index","raw","signed","push","recordedSeconds"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.ecg-files.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_hexToByte","require","VIATOM_ECG_SAMPLE_RATE_HZ","exports","VIATOM_ECG_MILLIVOLTS_PER_COUNT","validDate","year","month","day","hour","minute","second","date","Date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","undefined","recordedAtFromViatomFileName","name","digits","match","length","Number","slice","readUInt32LittleEndian","bytes","from","hexToByte","decodeViatomEcgRecording","content","samples","duration","waveStart","waveEnd","index","raw","signed","push","recordedSeconds"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.ecg-files.ts"],"mappings":"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","ignoreList":[]}
@@ -55,6 +55,7 @@ const declareRecorder = (advertisedName, profile, params) => (0, _lepuTransports
55
55
  id: params.id ?? `viatom-${advertisedName.toLowerCase().replace(/[^a-z0-9]+/g, "-")}`,
56
56
  nameMatch: params.nameMatch ?? (0, _lepuNameMatch.lepuNameMatch)(advertisedName),
57
57
  transport: profile.transport,
58
+ clockSync: "supported",
58
59
  pollCommand: profile.pollCommand,
59
60
  minLengthBytes: profile.heartRateBytes[1] + 1,
60
61
  caseSelectorBytes: [1],
@@ -74,7 +75,10 @@ const declareRecorder = (advertisedName, profile, params) => (0, _lepuTransports
74
75
  ...(params.expectedDeviceTypes ? {
75
76
  expectedDeviceTypes: params.expectedDeviceTypes
76
77
  } : {}),
77
- fileTransfer: "ecg"
78
+ fileTransfer: "ecg",
79
+ ...(RAW_ECG_MODEL_NAMES.has(advertisedName) ? {
80
+ ecgFileDecoder: "raw-int16"
81
+ } : {})
78
82
  });
79
83
 
80
84
  /** The ER1, and the handheld recorders sold under other names on the same protocol. */
@@ -112,6 +116,9 @@ const ER1_MODEL_NAMES = exports.ER1_MODEL_NAMES = ["ER1", "ER1-H", "ER1-L", "ER1
112
116
  /** The names the ER2 recorders advertise, all of them on the small-MTU link. */
113
117
  const ER2_MODEL_NAMES = exports.ER2_MODEL_NAMES = ["ER2", "ER2-S", "HHM2", "HHM3", "LP ER2"];
114
118
 
119
+ /** These are the only Viatom recorders whose stored waveform is verified raw int16. */
120
+ const RAW_ECG_MODEL_NAMES = new Set(["ER1-L", "ER1-S", "ER1-W"]);
121
+
115
122
  /** The ER3 is identified separately from the ER1/ER2 opcode family. */
116
123
  const ER3_MODEL_NAMES = exports.ER3_MODEL_NAMES = ["ER3"];
117
124
  //# sourceMappingURL=viatom.ecg-recorders.js.map
@@ -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","pollCommand","minLengthBytes","heartRateBytes","caseSelectorBytes","cases","selector","toString","padStart","kind","measurementTypeKey","MeasurementTypeKey","heartRate","description","fields","name","byteIndexes","byteOrder","encoding","unit","expectedDeviceTypes","fileTransfer","er1Recorder","exports","er2Recorder","er3Recorder","ER1_MODEL_NAMES","ER2_MODEL_NAMES","ER3_MODEL_NAMES"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.ecg-recorders.ts"],"mappings":"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","ignoreList":[]}
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","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":"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","ignoreList":[]}
@@ -94,6 +94,7 @@ const lepodMonitor = (advertisedName, params) => (0, _lepuTransports.lepuDevice)
94
94
  id: params.id ?? `viatom-${advertisedName.toLowerCase().replace(/[^a-z0-9]+/g, "-")}`,
95
95
  nameMatch: params.nameMatch ?? (0, _lepuNameMatch.lepuNameMatch)(advertisedName),
96
96
  fileTransfer: "ecg",
97
+ clockSync: "supported",
97
98
  pollCommand: RT_DATA,
98
99
  minLengthBytes: MIN_LENGTH_BYTES,
99
100
  caseSelectorBytes: [1],
@@ -1 +1 @@
1
- {"version":3,"names":["_core","require","_lepuNameMatch","_lepuTransports","RT_DATA","MIN_LENGTH_BYTES","HEART_RATE","RESPIRATION_RATE","BLOOD_OXYGEN","PULSE_RATE","PERFUSION_INDEX","TEMPERATURE","PERFUSION_SCALE","TEMPERATURE_SCALE","littleEndian","name","byteIndexes","unit","byteOrder","encoding","LEPOD_MEASUREMENTS","measurementTypeKey","MeasurementTypeKey","bloodOxygenPulseRate","fields","scale","decimals","respiratoryRate","temperature","lepodMonitor","advertisedName","params","lepuDevice","id","toLowerCase","replace","nameMatch","lepuNameMatch","fileTransfer","pollCommand","minLengthBytes","caseSelectorBytes","cases","selector","kind","heartRate","description","additionalMeasurements","map","each","expectedDeviceTypes","exports","LEPOD_MODEL_NAMES"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.lepod.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_core","require","_lepuNameMatch","_lepuTransports","RT_DATA","MIN_LENGTH_BYTES","HEART_RATE","RESPIRATION_RATE","BLOOD_OXYGEN","PULSE_RATE","PERFUSION_INDEX","TEMPERATURE","PERFUSION_SCALE","TEMPERATURE_SCALE","littleEndian","name","byteIndexes","unit","byteOrder","encoding","LEPOD_MEASUREMENTS","measurementTypeKey","MeasurementTypeKey","bloodOxygenPulseRate","fields","scale","decimals","respiratoryRate","temperature","lepodMonitor","advertisedName","params","lepuDevice","id","toLowerCase","replace","nameMatch","lepuNameMatch","fileTransfer","clockSync","pollCommand","minLengthBytes","caseSelectorBytes","cases","selector","kind","heartRate","description","additionalMeasurements","map","each","expectedDeviceTypes","exports","LEPOD_MODEL_NAMES"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.lepod.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.calculateCrc8Maxim = void 0;
7
+ var _hexToByte = require("./hex-to-byte.js");
8
+ const CRC8_POLYNOMIAL = 0x8c;
9
+ const BITS_PER_BYTE = 8;
10
+ const BYTE_MASK = 0xff;
11
+
12
+ /** CRC-8/MAXIM (Dallas/1-Wire), initial value 0x00. */
13
+ const calculateCrc8Maxim = (hex, byteCount) => {
14
+ let remainder = 0;
15
+ for (let index = 0; index < byteCount; index++) {
16
+ remainder ^= (0, _hexToByte.hexToByte)(hex[index] || "0");
17
+ for (let bit = 0; bit < BITS_PER_BYTE; bit++) {
18
+ remainder = remainder & 1 ? remainder >> 1 ^ CRC8_POLYNOMIAL : remainder >> 1;
19
+ }
20
+ }
21
+ return remainder & BYTE_MASK;
22
+ };
23
+ exports.calculateCrc8Maxim = calculateCrc8Maxim;
24
+ //# sourceMappingURL=calculate-crc-8-maxim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_hexToByte","require","CRC8_POLYNOMIAL","BITS_PER_BYTE","BYTE_MASK","calculateCrc8Maxim","hex","byteCount","remainder","index","hexToByte","bit","exports"],"sourceRoot":"../../../../../src","sources":["modules/bt-management/utils/calculate-crc-8-maxim.ts"],"mappings":";;;;;;AAAA,IAAAA,UAAA,GAAAC,OAAA;AAEA,MAAMC,eAAe,GAAG,IAAI;AAC5B,MAAMC,aAAa,GAAG,CAAC;AACvB,MAAMC,SAAS,GAAG,IAAI;;AAEtB;AACO,MAAMC,kBAAkB,GAAGA,CAChCC,GAAsB,EACtBC,SAAiB,KACN;EACX,IAAIC,SAAS,GAAG,CAAC;EAEjB,KAAK,IAAIC,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGF,SAAS,EAAEE,KAAK,EAAE,EAAE;IAC9CD,SAAS,IAAI,IAAAE,oBAAS,EAACJ,GAAG,CAACG,KAAK,CAAC,IAAI,GAAG,CAAC;IAEzC,KAAK,IAAIE,GAAG,GAAG,CAAC,EAAEA,GAAG,GAAGR,aAAa,EAAEQ,GAAG,EAAE,EAAE;MAC5CH,SAAS,GACPA,SAAS,GAAG,CAAC,GACRA,SAAS,IAAI,CAAC,GAAIN,eAAe,GAClCM,SAAS,IAAI,CAAC;IACtB;EACF;EAEA,OAAOA,SAAS,GAAGJ,SAAS;AAC9B,CAAC;AAACQ,OAAA,CAAAP,kBAAA,GAAAA,kBAAA","ignoreList":[]}
@@ -84,6 +84,10 @@ export const compileCustomLepu = (id, spec, serviceUuids) => {
84
84
  const protocol = assertProtocol(id, lepu.protocol);
85
85
  const expectedDeviceTypes = assertDeviceTypes(id, lepu.expectedDeviceTypes);
86
86
  const pollCommand = assertPollCommand(id, lepu);
87
+ const ecgFileDecoder = lepu.ecgFileDecoder;
88
+ if (ecgFileDecoder !== undefined && ecgFileDecoder !== "raw-int16") {
89
+ throw customDeviceError(id, "lepu.ecgFileDecoder", `is "${String(ecgFileDecoder)}"; expected "raw-int16"`);
90
+ }
87
91
  const requestStartByte = lepu.requestStartByte ?? startBytes[0];
88
92
  if (!requestStartByte || !HEX_BYTE.test(requestStartByte.toLowerCase())) {
89
93
  throw customDeviceError(id, "lepu.requestStartByte", `is "${String(lepu.requestStartByte)}"; it must be exactly two hex digits`);
@@ -96,6 +100,9 @@ export const compileCustomLepu = (id, spec, serviceUuids) => {
96
100
  ...(protocol === undefined ? {} : {
97
101
  protocol
98
102
  }),
103
+ ...(ecgFileDecoder === undefined ? {} : {
104
+ ecgFileDecoder
105
+ }),
99
106
  startBytes,
100
107
  requestStartByte: requestStartByte.toLowerCase(),
101
108
  expectedDeviceTypes,
@@ -1 +1 @@
1
- {"version":3,"names":["customDeviceError","normalizeBleUuid","HEX_BYTE","MAX_OPCODE","MAX_DEVICE_TYPE","assertProtocol","id","protocol","undefined","String","assertStartBytes","startBytes","Array","isArray","length","map","byte","index","normalized","toLowerCase","test","assertDeviceTypes","deviceTypes","deviceType","Number","isInteger","assertPollCommand","lepu","pollCommand","compileCustomLepu","spec","serviceUuids","services","some","service","write","expectedDeviceTypes","requestStartByte","serviceUuid","includes","writeWithoutResponse","Boolean","setClockBeforeInfo","characteristicUuid"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/custom/compile-custom-lepu.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["customDeviceError","normalizeBleUuid","HEX_BYTE","MAX_OPCODE","MAX_DEVICE_TYPE","assertProtocol","id","protocol","undefined","String","assertStartBytes","startBytes","Array","isArray","length","map","byte","index","normalized","toLowerCase","test","assertDeviceTypes","deviceTypes","deviceType","Number","isInteger","assertPollCommand","lepu","pollCommand","compileCustomLepu","spec","serviceUuids","services","some","service","write","expectedDeviceTypes","ecgFileDecoder","requestStartByte","serviceUuid","includes","writeWithoutResponse","Boolean","setClockBeforeInfo","characteristicUuid"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/custom/compile-custom-lepu.ts"],"mappings":"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","ignoreList":[]}
@@ -15,6 +15,7 @@ import { defineCustomDevice } from "../../custom/define-custom-device.js";
15
15
  /** Every frame opens with these two: a fixed start byte and a fixed device type. */
16
16
  const FRAME_HEADER = ["aa", "01"];
17
17
  const COMMAND_BYTE = 2;
18
+ const MODE_BYTE = 6;
18
19
 
19
20
  /** Header, a three-byte payload and the checksum. */
20
21
  const FRAME_BYTES = 8;
@@ -61,9 +62,9 @@ export const aoj20aThermometer = params => defineCustomDevice({
61
62
  from: CHECKSUM_FROM
62
63
  }
63
64
  },
64
- caseSelectorBytes: [COMMAND_BYTE],
65
- cases: [{
66
- selector: TEMPERATURE_REPLY,
65
+ caseSelectorBytes: [COMMAND_BYTE, MODE_BYTE],
66
+ cases: [...["01", "02", "03"].map(mode => ({
67
+ selector: `${TEMPERATURE_REPLY}${mode}`,
67
68
  kind: "result",
68
69
  measurementTypeKey: MeasurementTypeKey.temperature,
69
70
  fields: [{
@@ -74,6 +75,10 @@ export const aoj20aThermometer = params => defineCustomDevice({
74
75
  scale: TEMPERATURE_SCALE,
75
76
  decimals: TEMPERATURE_DECIMALS
76
77
  }]
78
+ })), {
79
+ selector: `${TEMPERATURE_REPLY}04`,
80
+ kind: "idle",
81
+ description: "Object or surface-temperature reading"
77
82
  }]
78
83
  }]
79
84
  }]
@@ -1 +1 @@
1
- {"version":3,"names":["MeasurementTypeKey","defineCustomDevice","FRAME_HEADER","COMMAND_BYTE","FRAME_BYTES","CHECKSUM_INDEX","CHECKSUM_FROM","PAYLOAD","TEMPERATURE_REPLY","TEMPERATURE_SCALE","TEMPERATURE_DECIMALS","SPOT_CHECK_TIMEOUT_MS","aoj20aThermometer","params","id","nameMatch","stuckDataTimeoutMs","services","uuid","monitor","frame","header","minLengthBytes","checksum","algorithm","index","from","caseSelectorBytes","cases","selector","kind","measurementTypeKey","temperature","fields","name","byteIndexes","byteOrder","unit","scale","decimals"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/aoj/aoj.thermometers.ts"],"mappings":";;AAAA,SAASA,kBAAkB,QAAQ,YAAY;AAG/C,SAASC,kBAAkB,QAAQ,sCAAmC;;AAEtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAMC,YAAY,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC;AAEjC,MAAMC,YAAY,GAAG,CAAC;;AAEtB;AACA,MAAMC,WAAW,GAAG,CAAC;AACrB,MAAMC,cAAc,GAAG,CAAC;;AAExB;AACA,MAAMC,aAAa,GAAG,CAAC;AAEvB,MAAMC,OAAO,GAAG,CAAC;;AAEjB;AACA,MAAMC,iBAAiB,GAAG,IAAI;;AAE9B;AACA,MAAMC,iBAAiB,GAAG,IAAI;AAC9B,MAAMC,oBAAoB,GAAG,CAAC;AAE9B,MAAMC,qBAAqB,GAAG,MAAM;AAapC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,iBAAiB,GAC5BC,MAAuB,IAEvBZ,kBAAkB,CAAC;EACjBa,EAAE,EAAED,MAAM,CAACC,EAAE,IAAI,qBAAqB;EACtCC,SAAS,EAAEF,MAAM,CAACE,SAAS,IAAI,YAAY;EAC3CC,kBAAkB,EAAEH,MAAM,CAACG,kBAAkB,IAAIL,qBAAqB;EACtEM,QAAQ,EAAE,CACR;IACEC,IAAI,EAAE,MAAM;IACZC,OAAO,EAAE,CACP;MACED,IAAI,EAAE,MAAM;MACZE,KAAK,EAAE;QACLC,MAAM,EAAEnB,YAAY;QACpBoB,cAAc,EAAElB,WAAW;QAC3BmB,QAAQ,EAAE;UACRC,SAAS,EAAE,KAAK;UAChBC,KAAK,EAAEpB,cAAc;UACrBqB,IAAI,EAAEpB;QACR;MACF,CAAC;MACDqB,iBAAiB,EAAE,CAACxB,YAAY,CAAC;MACjCyB,KAAK,EAAE,CACL;QACEC,QAAQ,EAAErB,iBAAiB;QAC3BsB,IAAI,EAAE,QAAQ;QACdC,kBAAkB,EAAE/B,kBAAkB,CAACgC,WAAW;QAClDC,MAAM,EAAE,CACN;UACEC,IAAI,EAAE,UAAU;UAChBC,WAAW,EAAE,CAAC5B,OAAO,EAAEA,OAAO,GAAG,CAAC,CAAC;UACnC6B,SAAS,EAAE,KAAK;UAChBC,IAAI,EAAE,KAAK;UACXC,KAAK,EAAE7B,iBAAiB;UACxB8B,QAAQ,EAAE7B;QACZ,CAAC;MAEL,CAAC;IAEL,CAAC;EAEL,CAAC;AAEL,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["MeasurementTypeKey","defineCustomDevice","FRAME_HEADER","COMMAND_BYTE","MODE_BYTE","FRAME_BYTES","CHECKSUM_INDEX","CHECKSUM_FROM","PAYLOAD","TEMPERATURE_REPLY","TEMPERATURE_SCALE","TEMPERATURE_DECIMALS","SPOT_CHECK_TIMEOUT_MS","aoj20aThermometer","params","id","nameMatch","stuckDataTimeoutMs","services","uuid","monitor","frame","header","minLengthBytes","checksum","algorithm","index","from","caseSelectorBytes","cases","map","mode","selector","kind","measurementTypeKey","temperature","fields","name","byteIndexes","byteOrder","unit","scale","decimals","description"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/aoj/aoj.thermometers.ts"],"mappings":";;AAAA,SAASA,kBAAkB,QAAQ,YAAY;AAG/C,SAASC,kBAAkB,QAAQ,sCAAmC;;AAEtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAMC,YAAY,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC;AAEjC,MAAMC,YAAY,GAAG,CAAC;AACtB,MAAMC,SAAS,GAAG,CAAC;;AAEnB;AACA,MAAMC,WAAW,GAAG,CAAC;AACrB,MAAMC,cAAc,GAAG,CAAC;;AAExB;AACA,MAAMC,aAAa,GAAG,CAAC;AAEvB,MAAMC,OAAO,GAAG,CAAC;;AAEjB;AACA,MAAMC,iBAAiB,GAAG,IAAI;;AAE9B;AACA,MAAMC,iBAAiB,GAAG,IAAI;AAC9B,MAAMC,oBAAoB,GAAG,CAAC;AAE9B,MAAMC,qBAAqB,GAAG,MAAM;AAapC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,iBAAiB,GAC5BC,MAAuB,IAEvBb,kBAAkB,CAAC;EACjBc,EAAE,EAAED,MAAM,CAACC,EAAE,IAAI,qBAAqB;EACtCC,SAAS,EAAEF,MAAM,CAACE,SAAS,IAAI,YAAY;EAC3CC,kBAAkB,EAAEH,MAAM,CAACG,kBAAkB,IAAIL,qBAAqB;EACtEM,QAAQ,EAAE,CACR;IACEC,IAAI,EAAE,MAAM;IACZC,OAAO,EAAE,CACP;MACED,IAAI,EAAE,MAAM;MACZE,KAAK,EAAE;QACLC,MAAM,EAAEpB,YAAY;QACpBqB,cAAc,EAAElB,WAAW;QAC3BmB,QAAQ,EAAE;UACRC,SAAS,EAAE,KAAK;UAChBC,KAAK,EAAEpB,cAAc;UACrBqB,IAAI,EAAEpB;QACR;MACF,CAAC;MACDqB,iBAAiB,EAAE,CAACzB,YAAY,EAAEC,SAAS,CAAC;MAC5CyB,KAAK,EAAE,CACL,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAACC,GAAG,CAAEC,IAAI,KAAM;QACnCC,QAAQ,EAAE,GAAGvB,iBAAiB,GAAGsB,IAAI,EAAE;QACvCE,IAAI,EAAE,QAAiB;QACvBC,kBAAkB,EAAElC,kBAAkB,CAACmC,WAAW;QAClDC,MAAM,EAAE,CACN;UACEC,IAAI,EAAE,UAAU;UAChBC,WAAW,EAAE,CAAC9B,OAAO,EAAEA,OAAO,GAAG,CAAC,CAAC;UACnC+B,SAAS,EAAE,KAAc;UACzBC,IAAI,EAAE,KAAK;UACXC,KAAK,EAAE/B,iBAAiB;UACxBgC,QAAQ,EAAE/B;QACZ,CAAC;MAEL,CAAC,CAAC,CAAC,EACH;QACEqB,QAAQ,EAAE,GAAGvB,iBAAiB,IAAI;QAClCwB,IAAI,EAAE,MAAM;QACZU,WAAW,EAAE;MACf,CAAC;IAEL,CAAC;EAEL,CAAC;AAEL,CAAC,CAAC","ignoreList":[]}
@@ -8,7 +8,7 @@ import { parseMeasurement } from "../../../utils/parse-measurement.js";
8
8
  import { discardedReadingError, rejectCustomReading } from "../../../utils/reject-custom-reading.js";
9
9
  import { BTManagedDevice } from "../bt-managed-device.js";
10
10
  import { LepuCommandBuilder } from "../lepu/lepu.command-builder.js";
11
- import { LepuFileTransfer } from "../lepu/lepu.file-transfer.js";
11
+ import { LepuEcgTransferSequencer } from "../lepu/lepu.ecg-transfer.js";
12
12
  import { LepuFrameReader } from "../lepu/lepu.frame-reader.js";
13
13
  import { decodeViatomEcgRecording, recordedAtFromViatomFileName } from "../viatom/viatom.ecg-files.js";
14
14
  import { createLepuSequencer, recordLepuIdentity } from "./custom-lepu-sequencer.js";
@@ -58,14 +58,19 @@ export class CustomDevice extends BTManagedDevice {
58
58
  this.frameReader = new LepuFrameReader(lepu.startBytes);
59
59
  this.createCommandSequencer = () => {
60
60
  if (lepu.fileTransfer === "ecg") {
61
- return new LepuFileTransfer({
61
+ return new LepuEcgTransferSequencer({
62
62
  write: {
63
63
  serviceUuid: lepu.write.serviceUuid,
64
64
  characteristicUuid: lepu.write.characteristicUuid
65
65
  },
66
66
  builder: new LepuCommandBuilder(lepu.startBytes[0] ?? "a5"),
67
+ clockSync,
68
+ expectedDeviceTypes: lepu.expectedDeviceTypes,
69
+ onIdentified: this.onIdentified,
70
+ onRefused: this.onIdentityRefused,
67
71
  onFile: this.reportViatomEcgFile,
68
72
  skipFiles: this.deliveredEcgFileNames,
73
+ acceptFile: name => lepu.ecgFileDecoder === "raw-int16" && /^R/i.test(name),
69
74
  afterTransfer: lepu.pollCommand ? () => [{
70
75
  serviceUuid: lepu.write.serviceUuid,
71
76
  characteristicUuid: lepu.write.characteristicUuid,
@@ -1 +1 @@
1
- {"version":3,"names":["MeasurementTypeKey","CaseType","createFrameValidator","parseMeasurement","discardedReadingError","rejectCustomReading","BTManagedDevice","LepuCommandBuilder","LepuFileTransfer","LepuFrameReader","decodeViatomEcgRecording","recordedAtFromViatomFileName","createLepuSequencer","recordLepuIdentity","CustomDevice","validators","Map","constructor","device","params","definition","oneReadingPerConnection","deviceData","clockSync","deliveredEcgFileNames","Set","mainServices","stuckDataTimeout","reportsBondedEvent","preferredMtu","undefined","declareLepuProtocol","frames","forEach","frame","uuid","set","lepu","frameReader","startBytes","createCommandSequencer","fileTransfer","write","serviceUuid","characteristicUuid","builder","onFile","reportViatomEcgFile","skipFiles","afterTransfer","pollCommand","build","onError","reason","Error","onProgress","progress","onConnectionEvent","kind","current","receivedBytes","total","totalBytes","onIdentified","onRefused","onIdentityRefused","file","decoded","content","samples","length","name","onResult","measurementTypeKey","ecg","caseType","RESULT","diagramPoints","duration","recordedAt","recordingId","info","id","validatePackage","pkg","validate","get","String","toLowerCase","handleDependentResult","data","shouldReportDependentResult","reportFrame","error","parsingCase","OTHER","_data","handleSuccessResult","decorateReading","reading","recordOffset","repeated","repeatedRecords","report","parsedData","records","Math","floor","from","recordBytes","record","measurements","discard","measurement","reportMeasurement","fieldNames","rejection","map","fields","find","message"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/custom/custom.device.ts"],"mappings":";;AAAA;AACA,SAASA,kBAAkB,QAAQ,YAAY;AAG/C,SAASC,QAAQ,QAAQ,6BAA0B;AAUnD,SAASC,oBAAoB,QAAQ,0CAAuC;AAC5E,SAASC,gBAAgB,QAAQ,qCAAkC;AACnE,SACEC,qBAAqB,EACrBC,mBAAmB,QACd,yCAAsC;AAC7C,SAASC,eAAe,QAAQ,yBAAsB;AACtD,SAASC,kBAAkB,QAAQ,iCAA8B;AAEjE,SAAmBC,gBAAgB,QAAQ,+BAA4B;AACvE,SAASC,eAAe,QAAQ,8BAA2B;AAC3D,SACEC,wBAAwB,EACxBC,4BAA4B,QACvB,+BAA4B;AAEnC,SACEC,mBAAmB,EACnBC,kBAAkB,QACb,4BAAyB;AAKhC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,YAAY,SAASR,eAAe,CAAiB;EAO/CS,UAAU,GAAG,IAAIC,GAAG,CAAsC,CAAC;EAE5EC,WAAWA,CACTC,MAAc,EACdC,MAA0C,EAC1CC,UAAkC,EAClC;IACA,KAAK,CAACF,MAAM,EAAE;MACZ,GAAGC,MAAM;MACTE,uBAAuB,EACrBF,MAAM,CAACE,uBAAuB,IAAID,UAAU,CAACC;IACjD,CAAC,CAAC;IAEF,IAAI,CAACD,UAAU,GAAGA,UAAU;IAC5B,IAAI,CAACE,UAAU,CAACC,SAAS,GAAGH,UAAU,CAACG,SAAS;IAChD,IAAI,CAACC,qBAAqB,GAAG,IAAIC,GAAG,CAACN,MAAM,CAACK,qBAAqB,IAAI,EAAE,CAAC;IACxE,IAAI,CAACE,YAAY,GAAGN,UAAU,CAACM,YAAY;IAC3C,IAAI,CAACC,gBAAgB,GAAGP,UAAU,CAACO,gBAAgB;IACnD,IAAI,CAACC,kBAAkB,GAAGR,UAAU,CAACQ,kBAAkB,KAAK,IAAI;IAEhE,IAAIR,UAAU,CAACS,YAAY,KAAKC,SAAS,EAAE;MACzC,IAAI,CAACD,YAAY,GAAGT,UAAU,CAACS,YAAY;IAC7C;IAEA,IAAI,CAACE,mBAAmB,CAACX,UAAU,EAAED,MAAM,CAACI,SAAS,CAAC;IAEtDH,UAAU,CAACY,MAAM,CAACC,OAAO,CAAC,CAACC,KAAK,EAAEC,IAAI,KAAK;MACzC,IAAI,CAACpB,UAAU,CAACqB,GAAG,CAACD,IAAI,EAAEjC,oBAAoB,CAACgC,KAAK,CAAC,CAAC;IACxD,CAAC,CAAC;EACJ;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACUH,mBAAmBA,CACzBX,UAAkC,EAClCG,SAA0D,EACpD;IACN,MAAMc,IAAI,GAAGjB,UAAU,CAACiB,IAAI;IAE5B,IAAI,CAACA,IAAI,EAAE;MACT;IACF;IAEA,IAAI,CAACC,WAAW,GAAG,IAAI7B,eAAe,CAAC4B,IAAI,CAACE,UAAU,CAAC;IAEvD,IAAI,CAACC,sBAAsB,GAAG,MAAM;MAClC,IAAIH,IAAI,CAACI,YAAY,KAAK,KAAK,EAAE;QAC/B,OAAO,IAAIjC,gBAAgB,CAAC;UAC1BkC,KAAK,EAAE;YACLC,WAAW,EAAEN,IAAI,CAACK,KAAK,CAACC,WAAW;YACnCC,kBAAkB,EAAEP,IAAI,CAACK,KAAK,CAACE;UACjC,CAAC;UACDC,OAAO,EAAE,IAAItC,kBAAkB,CAAC8B,IAAI,CAACE,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;UAC3DO,MAAM,EAAE,IAAI,CAACC,mBAAmB;UAChCC,SAAS,EAAE,IAAI,CAACxB,qBAAqB;UACrCyB,aAAa,EAAEZ,IAAI,CAACa,WAAW,GAC3B,MAAM,CACJ;YACEP,WAAW,EAAEN,IAAI,CAACK,KAAK,CAACC,WAAW;YACnCC,kBAAkB,EAAEP,IAAI,CAACK,KAAK,CAACE,kBAAkB;YACjDV,KAAK,EAAE,IAAI3B,kBAAkB,CAC3B8B,IAAI,CAACE,UAAU,CAAC,CAAC,CAAC,IAAI,IACxB,CAAC,CAACY,KAAK,CAACd,IAAI,CAACa,WAAY;UAC3B,CAAC,CACF,GACDpB,SAAS;UACbsB,OAAO,EAAGC,MAAM,IACd,IAAI,CAACD,OAAO,GAAG,IAAIE,KAAK,CAAC,eAAeD,MAAM,EAAE,CAAC,CAAC;UACpDE,UAAU,EAAGC,QAAQ,IACnB,IAAI,CAACC,iBAAiB,GAAG;YACvBnC,UAAU,EAAE,IAAI,CAACA,UAAU;YAC3BoC,IAAI,EAAE,kBAAkB;YACxBF,QAAQ,EAAE;cACRG,OAAO,EAAEH,QAAQ,CAACI,aAAa;cAC/BC,KAAK,EAAEL,QAAQ,CAACM;YAClB;UACF,CAAC;QACL,CAAC,CAAC;MACJ;MAEA,OAAOlD,mBAAmB,CAACyB,IAAI,EAAE;QAC/B0B,YAAY,EAAE,IAAI,CAACA,YAAY;QAC/BC,SAAS,EAAE,IAAI,CAACC;MAClB,CAAC,EAAE1C,SAAS,CAAC;IACf,CAAC;EACH;EAEQwB,mBAAmB,GAAImB,IAAc,IAAW;IACtD,MAAMC,OAAO,GAAGzD,wBAAwB,CAACwD,IAAI,CAACE,OAAO,CAAC;IAEtD,IAAID,OAAO,CAACE,OAAO,CAACC,MAAM,KAAK,CAAC,EAAE;MAChC,IAAI,CAAClB,OAAO,GAAG,IAAIE,KAAK,CAAC,qBAAqBY,IAAI,CAACK,IAAI,mBAAmB,CAAC,CAAC;MAE5E;IACF;IAEA,IAAI,CAACC,QAAQ,GAAG;MACdC,kBAAkB,EAAEzE,kBAAkB,CAAC0E,GAAG;MAC1CC,QAAQ,EAAE1E,QAAQ,CAAC2E,MAAM;MACzBC,aAAa,EAAEV,OAAO,CAACE,OAAO;MAC9BS,QAAQ,EAAEX,OAAO,CAACW,QAAQ;MAC1BC,UAAU,EAAEpE,4BAA4B,CAACuD,IAAI,CAACK,IAAI,CAAC;MACnDS,WAAW,EAAEd,IAAI,CAACK;IACpB,CAA4B,CAAC;EAC/B,CAAC;EAEOR,YAAY,GAAIkB,IAAoB,IAC1CpE,kBAAkB,CAAC,IAAI,CAACS,UAAU,EAAE2D,IAAI,CAAC;EAEnChB,iBAAiB,GAAIZ,MAAc,IAAW;IACpD,IAAI,CAACD,OAAO,GACV,IAAIE,KAAK,CACP,kBAAkB,IAAI,CAAClC,UAAU,CAAC8D,EAAE,wBAAwB7B,MAAM,GACpE,CACF,CAAC;EACH,CAAC;EAES8B,eAAe,GAAGA,CAACC,GAAa,EAAEjD,IAAY,KAAc;IACpE,MAAMkD,QAAQ,GAAG,IAAI,CAACtE,UAAU,CAACuE,GAAG,CAACC,MAAM,CAACpD,IAAI,IAAI,EAAE,CAAC,CAACqD,WAAW,CAAC,CAAC,CAAC;IAEtE,IAAI,CAACH,QAAQ,EAAE;MACb,OAAO,KAAK;IACd;IAEA,OAAOA,QAAQ,CAACD,GAAG,CAAC;EACtB,CAAC;;EAED;AACF;AACA;AACA;AACA;EACYK,qBAAqB,GAC7BC,IAAuD,IACD;IACtD,IAAI;MACF,IAAI,IAAI,CAACC,2BAA2B,CAACD,IAAI,CAAC,EAAE;QAC1C,IAAI,CAACE,WAAW,CAACF,IAAI,CAAC;MACxB;IACF,CAAC,CAAC,OAAOG,KAAK,EAAE;MACd,IAAI,CAACzC,OAAO,GAAGyC,KAAc,CAAC;IAChC;IAEA,OAAO;MACL,GAAGH,IAAI;MACPI,WAAW,EAAE;QAAE,GAAGJ,IAAI,CAACI,WAAW;QAAEnB,QAAQ,EAAE1E,QAAQ,CAAC8F;MAAM;IAC/D,CAAC;EACH,CAAC;;EAED;EACUJ,2BAA2B,GACnCK,KAAwD,IAC5C,IAAI;;EAElB;AACF;AACA;AACA;EACYC,mBAAmBA,CAAA,EAAmB;IAC9C;EACF;;EAEA;EACUC,eAAe,GAAGA,CAC1BC,OAAqB,EACrBjE,KAAyB,EACzBkE,YAAqB,KAEpB,IAAI,CAAChF,UAAU,CAAC8E,eAAe,GAC9BC,OAAO,EACPjE,KAAK,EACLkE,YACF,CAAC,IAAiCD,OAAO;;EAE3C;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACUP,WAAWA,CAACF,IAAuD,EAAE;IAC3E,MAAMW,QAAQ,GAAGX,IAAI,CAACI,WAAW,CAACQ,eAAe;IAEjD,IAAI,CAACD,QAAQ,IAAI,CAACX,IAAI,CAACxD,KAAK,EAAE;MAC5B,IAAI,CAACqE,MAAM,CAACb,IAAI,CAACc,UAAU,EAAEd,IAAI,CAACI,WAAW,EAAEJ,IAAI,CAACxD,KAAK,CAAC;MAE1D;IACF;IAEA,MAAMuE,OAAO,GAAGC,IAAI,CAACC,KAAK,CACxB,CAACjB,IAAI,CAACxD,KAAK,CAACoC,MAAM,GAAG+B,QAAQ,CAACO,IAAI,IAAIP,QAAQ,CAACQ,WACjD,CAAC;IAED,KAAK,IAAIC,MAAM,GAAG,CAAC,EAAEA,MAAM,GAAGL,OAAO,EAAEK,MAAM,EAAE,EAAE;MAC/C,IAAI,CAACP,MAAM,CACTpG,gBAAgB,CACduF,IAAI,CAACxD,KAAK,EACVwD,IAAI,CAACI,WAAW,EAChBO,QAAQ,CAACO,IAAI,GAAGE,MAAM,GAAGT,QAAQ,CAACQ,WACpC,CAAC,EACDnB,IAAI,CAACI,WAAW,EAChBJ,IAAI,CAACxD,KAAK,EACVmE,QAAQ,CAACO,IAAI,GAAGE,MAAM,GAAGT,QAAQ,CAACQ,WACpC,CAAC;IACH;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACUN,MAAMA,CACZC,UAAwB,EACxBV,WAAwB,EACxB5D,KAAyB,EACzBkE,YAAqB,EACf;IACN,MAAMW,YAAY,GAAGjB,WAAW,CAACiB,YAAY,IAAI,EAAE;IAEnD,IAAIA,YAAY,CAACzC,MAAM,KAAK,CAAC,EAAE;MAC7B,IAAI,CAAC0C,OAAO,CAAC,4CAA4C,EAAER,UAAU,CAAC;MAEtE;IACF;IAEAO,YAAY,CAAC9E,OAAO,CAAEgF,WAAW,IAC/B,IAAI,CAACC,iBAAiB,CAACV,UAAU,EAAES,WAAW,EAAE/E,KAAK,EAAEkE,YAAY,CACrE,CAAC;EACH;EAEQY,OAAOA,CAAC3D,MAAc,EAAEmD,UAAwB,EAAQ;IAC9D,IAAI,CAACpD,OAAO,GAAGhD,qBAAqB,CAAC,IAAI,CAACgB,UAAU,CAAC8D,EAAE,EAAE7B,MAAM,EAAEmD,UAAU,CAAC,CAAC;EAC/E;EAEQU,iBAAiBA,CACvBV,UAAwB,EACxBS,WAA6B,EAC7B/E,KAAyB,EACzBkE,YAAqB,EACf;IACN,MAAMD,OAAO,GAAG;MACdxB,QAAQ,EAAE6B,UAAU,CAAC7B,QAAQ;MAC7BF,kBAAkB,EAAEwC,WAAW,CAACxC;IAClC,CAAiB;IAEjBwC,WAAW,CAACE,UAAU,CAAClF,OAAO,CAAEsC,IAAI,IAAK;MACvC4B,OAAO,CAAC5B,IAAI,CAAC,GAAGiC,UAAU,CAACjC,IAAI,CAAC;IAClC,CAAC,CAAC;IAEF,MAAM6C,SAAS,GAAGH,WAAW,CAACE,UAAU,CACrCE,GAAG,CAAE9C,IAAI,IACRlE,mBAAmB,CACjB,IAAI,CAACe,UAAU,CAACkG,MAAM,EACtBL,WAAW,CAACxC,kBAAkB,EAC9BF,IAAI,EACJ4B,OAAO,CAAC5B,IAAI,CACd,CACF,CAAC,CACAgD,IAAI,CAAEC,OAAO,IAAKA,OAAO,KAAK1F,SAAS,CAAC;IAE3C,IAAIsF,SAAS,EAAE;MACb,IAAI,CAACJ,OAAO,CAACI,SAAS,EAAEjB,OAAO,CAAC;MAEhC;IACF;IAEA,IAAI,CAAC3B,QAAQ,GAAG,IAAI,CAAC0B,eAAe,CAACC,OAAO,EAAEjE,KAAK,EAAEkE,YAAY,CAAC,CAAC;EACrE;AAEF","ignoreList":[]}
1
+ {"version":3,"names":["MeasurementTypeKey","CaseType","createFrameValidator","parseMeasurement","discardedReadingError","rejectCustomReading","BTManagedDevice","LepuCommandBuilder","LepuEcgTransferSequencer","LepuFrameReader","decodeViatomEcgRecording","recordedAtFromViatomFileName","createLepuSequencer","recordLepuIdentity","CustomDevice","validators","Map","constructor","device","params","definition","oneReadingPerConnection","deviceData","clockSync","deliveredEcgFileNames","Set","mainServices","stuckDataTimeout","reportsBondedEvent","preferredMtu","undefined","declareLepuProtocol","frames","forEach","frame","uuid","set","lepu","frameReader","startBytes","createCommandSequencer","fileTransfer","write","serviceUuid","characteristicUuid","builder","expectedDeviceTypes","onIdentified","onRefused","onIdentityRefused","onFile","reportViatomEcgFile","skipFiles","acceptFile","name","ecgFileDecoder","test","afterTransfer","pollCommand","build","onError","reason","Error","onProgress","progress","onConnectionEvent","kind","current","receivedBytes","total","totalBytes","file","decoded","content","samples","length","onResult","measurementTypeKey","ecg","caseType","RESULT","diagramPoints","duration","recordedAt","recordingId","info","id","validatePackage","pkg","validate","get","String","toLowerCase","handleDependentResult","data","shouldReportDependentResult","reportFrame","error","parsingCase","OTHER","_data","handleSuccessResult","decorateReading","reading","recordOffset","repeated","repeatedRecords","report","parsedData","records","Math","floor","from","recordBytes","record","measurements","discard","measurement","reportMeasurement","fieldNames","rejection","map","fields","find","message"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/custom/custom.device.ts"],"mappings":"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","ignoreList":[]}
@@ -20,6 +20,8 @@ export const LepuCommand = {
20
20
  * addressing it with an opcode that means something else on the wrong hardware.
21
21
  */
22
22
  GET_INFO: 0xe1,
23
+ /** Sets the device's local wall clock before history is requested. */
24
+ SET_TIME: 0xec,
23
25
  GET_BATTERY: 0xe4,
24
26
  /** Enumerate the records stored on the device. */
25
27
  GET_FILE_LIST: 0xf1,
@@ -1 +1 @@
1
- {"version":3,"names":["LepuCommand","ECHO","GET_INFO","GET_BATTERY","GET_FILE_LIST","READ_FILE_START","READ_FILE_DATA","READ_FILE_END"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.commands.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMA,WAAW,GAAG;EACzB;EACAC,IAAI,EAAE,IAAI;EAEV;AACF;AACA;AACA;AACA;AACA;AACA;EACEC,QAAQ,EAAE,IAAI;EAEdC,WAAW,EAAE,IAAI;EAEjB;EACAC,aAAa,EAAE,IAAI;EAEnB;EACAC,eAAe,EAAE,IAAI;EAErB;EACAC,cAAc,EAAE,IAAI;EAEpB;EACAC,aAAa,EAAE;AACjB,CAAU","ignoreList":[]}
1
+ {"version":3,"names":["LepuCommand","ECHO","GET_INFO","SET_TIME","GET_BATTERY","GET_FILE_LIST","READ_FILE_START","READ_FILE_DATA","READ_FILE_END"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.commands.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMA,WAAW,GAAG;EACzB;EACAC,IAAI,EAAE,IAAI;EAEV;AACF;AACA;AACA;AACA;AACA;AACA;EACEC,QAAQ,EAAE,IAAI;EAEd;EACAC,QAAQ,EAAE,IAAI;EAEdC,WAAW,EAAE,IAAI;EAEjB;EACAC,aAAa,EAAE,IAAI;EAEnB;EACAC,eAAe,EAAE,IAAI;EAErB;EACAC,cAAc,EAAE,IAAI;EAEpB;EACAC,aAAa,EAAE;AACjB,CAAU","ignoreList":[]}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+
3
+ import { getClockParts, isClockSyncEnabled } from "../../../types/clock-sync.js";
4
+ import { LepuCommand } from "./lepu.commands.js";
5
+ import { LepuFileTransfer } from "./lepu.file-transfer.js";
6
+ import { lepuCommandOf } from "./lepu.frame.js";
7
+ import { LepuIdentityGate } from "./lepu.identity-gate.js";
8
+ import { describeLepuResponseType, isLepuSuccess } from "./lepu.response-type.js";
9
+ /** Identifies a recorder, sets its local clock, then downloads its stored files. */
10
+ class LepuEcgTransferSequencer {
11
+ phase = "identity";
12
+ constructor(params) {
13
+ this.params = params;
14
+ this.identity = new LepuIdentityGate({
15
+ write: params.write,
16
+ builder: params.builder,
17
+ expectedDeviceTypes: params.expectedDeviceTypes,
18
+ onIdentified: params.onIdentified,
19
+ onRefused: params.onRefused,
20
+ onAdmitted: this.startClockOrTransfer
21
+ });
22
+ }
23
+ initialCommands = () => this.identity.initialCommands();
24
+ isHistoryTransfer = () => true;
25
+ nextCommand = frame => {
26
+ if (this.phase === "identity") {
27
+ return this.identity.nextCommand(frame);
28
+ }
29
+ if (this.phase === "clock") {
30
+ return this.finishClock(frame);
31
+ }
32
+ return this.transfer?.nextCommand(frame);
33
+ };
34
+ startClockOrTransfer = () => {
35
+ if (isClockSyncEnabled(this.params.clockSync)) {
36
+ this.phase = "clock";
37
+ return [{
38
+ ...this.params.write,
39
+ frame: this.params.builder.build(LepuCommand.SET_TIME, clockPayload(this.params.clockSync))
40
+ }];
41
+ }
42
+ return this.startTransfer();
43
+ };
44
+ finishClock = frame => {
45
+ if (lepuCommandOf(frame) !== LepuCommand.SET_TIME) {
46
+ return undefined;
47
+ }
48
+ if (!isLepuSuccess(frame)) {
49
+ this.params.onError(`the device refused SET_TIME: ${describeLepuResponseType(frame)}`);
50
+ }
51
+ return this.startTransfer();
52
+ };
53
+ startTransfer = () => {
54
+ this.phase = "files";
55
+ this.transfer = new LepuFileTransfer({
56
+ write: this.params.write,
57
+ builder: this.params.builder,
58
+ onFile: this.params.onFile,
59
+ onError: this.params.onError,
60
+ skipFiles: this.params.skipFiles,
61
+ acceptFile: this.params.acceptFile,
62
+ afterTransfer: this.params.afterTransfer,
63
+ onProgress: this.params.onProgress
64
+ });
65
+ return this.transfer.initialCommands();
66
+ };
67
+ }
68
+ const clockPayload = clockSync => {
69
+ const parts = getClockParts(clockSync?.now?.() ?? new Date(), clockSync?.timezone);
70
+ return [parts.year & 0xff, parts.year >> 8 & 0xff, parts.month, parts.day, parts.hours, parts.minutes, parts.seconds];
71
+ };
72
+ export { LepuEcgTransferSequencer };
73
+ //# sourceMappingURL=lepu.ecg-transfer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["getClockParts","isClockSyncEnabled","LepuCommand","LepuFileTransfer","lepuCommandOf","LepuIdentityGate","describeLepuResponseType","isLepuSuccess","LepuEcgTransferSequencer","phase","constructor","params","identity","write","builder","expectedDeviceTypes","onIdentified","onRefused","onAdmitted","startClockOrTransfer","initialCommands","isHistoryTransfer","nextCommand","frame","finishClock","transfer","clockSync","build","SET_TIME","clockPayload","startTransfer","undefined","onError","onFile","skipFiles","acceptFile","afterTransfer","onProgress","parts","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":[]}
@@ -73,7 +73,7 @@ class LepuFileTransfer {
73
73
  };
74
74
  openNextFile = () => {
75
75
  let name = this.files[this.fileIndex];
76
- while (name !== undefined && this.params.skipFiles?.has(name)) {
76
+ while (name !== undefined && (this.params.skipFiles?.has(name) || this.params.acceptFile?.(name) === false)) {
77
77
  this.fileIndex++;
78
78
  name = this.files[this.fileIndex];
79
79
  }
@@ -1 +1 @@
1
- {"version":3,"names":["le32FromHex","le32ToBytes","LepuCommand","lepuNameBytes","lepuNamesFrom","lepuCommandOf","lepuPayloadOf","describeLepuResponseType","isLepuSuccess","FILE_SIZE_OFFSET","MAX_FILE_BYTES","TRANSFER_COMMANDS","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","afterTransfer","includes","undefined","fail","openNextFile","openedFile","appendChunk","closedFile","skipFiles","has","payload","limit","maxFileBytes","closeFile","length","push","onProgress","receivedBytes","onFile","reason","onError","write","builder","build"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.file-transfer.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["le32FromHex","le32ToBytes","LepuCommand","lepuNameBytes","lepuNamesFrom","lepuCommandOf","lepuPayloadOf","describeLepuResponseType","isLepuSuccess","FILE_SIZE_OFFSET","MAX_FILE_BYTES","TRANSFER_COMMANDS","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","afterTransfer","includes","undefined","fail","openNextFile","openedFile","appendChunk","closedFile","skipFiles","has","acceptFile","payload","limit","maxFileBytes","closeFile","length","push","onProgress","receivedBytes","onFile","reason","onError","write","builder","build"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.file-transfer.ts"],"mappings":"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","ignoreList":[]}
@@ -53,7 +53,7 @@ export class LepuIdentityGate {
53
53
  return this.refuse("the device answered with a frame too short to hold its own model number");
54
54
  }
55
55
  this.params.onIdentified?.(info);
56
- if (this.params.pollCommand === undefined) {
56
+ if (this.params.pollCommand === undefined && this.params.onAdmitted === undefined) {
57
57
  return undefined;
58
58
  }
59
59
  const isNarrowed = this.params.expectedDeviceTypes.length > 0;
@@ -61,7 +61,7 @@ export class LepuIdentityGate {
61
61
  return this.refuse(`the hardware reported model ${info.deviceType} (branch "${info.branchCode}"), which this declaration was not written for`);
62
62
  }
63
63
  this.isIdentified = true;
64
- return this.poll();
64
+ return this.params.onAdmitted?.() ?? this.poll();
65
65
  };
66
66
 
67
67
  /** Closes the gate for good. There is no state a refused device can be talked back from. */
@@ -1 +1 @@
1
- {"version":3,"names":["getClockParts","isClockSyncEnabled","hexToByte","LepuCommand","parseLepuDeviceInfo","describeLepuResponseType","isLepuSuccess","COMMAND_INDEX","VIATOM_OXYGEN_INFO","LepuIdentityGate","isIdentified","isRefused","constructor","params","initialCommands","protocol","setClock","setClockBeforeInfo","clockSync","command","commandFor","oxyClockPayload","pendingCommand","GET_INFO","nextCommand","frame","nextViatomOxygenCommand","undefined","poll","admit","refuse","info","onIdentified","pollCommand","isNarrowed","expectedDeviceTypes","length","includes","deviceType","branchCode","reason","onRefused","payload","delayBeforeWriteMs","write","builder","build","writeWithoutResponse","withoutResponse","status","toString","padStart","parseViatomOxygenDeviceInfo","parts","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":"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","ignoreList":[]}
1
+ {"version":3,"names":["getClockParts","isClockSyncEnabled","hexToByte","LepuCommand","parseLepuDeviceInfo","describeLepuResponseType","isLepuSuccess","COMMAND_INDEX","VIATOM_OXYGEN_INFO","LepuIdentityGate","isIdentified","isRefused","constructor","params","initialCommands","protocol","setClock","setClockBeforeInfo","clockSync","command","commandFor","oxyClockPayload","pendingCommand","GET_INFO","nextCommand","frame","nextViatomOxygenCommand","undefined","poll","admit","refuse","info","onIdentified","pollCommand","onAdmitted","isNarrowed","expectedDeviceTypes","length","includes","deviceType","branchCode","reason","onRefused","payload","delayBeforeWriteMs","write","builder","build","writeWithoutResponse","withoutResponse","status","toString","padStart","parseViatomOxygenDeviceInfo","parts","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":"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","ignoreList":[]}