@ovok/native 1.6.32 → 1.6.34

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 (259) hide show
  1. package/lib/commonjs/modules/bt-device/constants/device-instruction-pdfs.js +4 -1
  2. package/lib/commonjs/modules/bt-device/constants/device-instruction-pdfs.js.map +1 -1
  3. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-assets.js +3 -1
  4. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-assets.js.map +1 -1
  5. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-entries.js +1 -1
  6. package/lib/commonjs/modules/bt-device/constants/supported-device-catalog-entries.js.map +1 -1
  7. package/lib/commonjs/modules/bt-device/constants/supported-devices.js +25 -0
  8. package/lib/commonjs/modules/bt-device/constants/supported-devices.js.map +1 -1
  9. package/lib/commonjs/modules/bt-management/constants/integrated-devices-map.js +2 -1
  10. package/lib/commonjs/modules/bt-management/constants/integrated-devices-map.js.map +1 -1
  11. package/lib/commonjs/modules/bt-management/index.js +77 -0
  12. package/lib/commonjs/modules/bt-management/index.js.map +1 -1
  13. package/lib/commonjs/modules/bt-management/services/background-sync/background-service-uuids.js +4 -0
  14. package/lib/commonjs/modules/bt-management/services/background-sync/background-service-uuids.js.map +1 -1
  15. package/lib/commonjs/modules/bt-management/services/custom/define-custom-device.js +20 -0
  16. package/lib/commonjs/modules/bt-management/services/custom/define-custom-device.js.map +1 -1
  17. package/lib/commonjs/modules/bt-management/services/device-creator.js +7 -1
  18. package/lib/commonjs/modules/bt-management/services/device-creator.js.map +1 -1
  19. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.command-sequencer.js +68 -0
  20. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.command-sequencer.js.map +1 -0
  21. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.device.js +55 -0
  22. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.device.js.map +1 -0
  23. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.frame-parser.js +36 -0
  24. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.frame-parser.js.map +1 -0
  25. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.frame-reader.js +68 -0
  26. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.frame-reader.js.map +1 -0
  27. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.main-services.js +31 -0
  28. package/lib/commonjs/modules/bt-management/services/devices/a606/a606.main-services.js.map +1 -0
  29. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.js +73 -0
  30. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.js.map +1 -0
  31. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.device.js +55 -0
  32. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.device.js.map +1 -0
  33. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.js +53 -0
  34. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.js.map +1 -0
  35. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.js +55 -0
  36. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.js.map +1 -0
  37. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.main-services.js +30 -0
  38. package/lib/commonjs/modules/bt-management/services/devices/bpw1/bpw1.main-services.js.map +1 -0
  39. package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js +1 -0
  40. package/lib/commonjs/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
  41. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js +4 -0
  42. package/lib/commonjs/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  43. package/lib/commonjs/modules/bt-management/services/devices/checkme/checkme.device.js +57 -0
  44. package/lib/commonjs/modules/bt-management/services/devices/checkme/checkme.device.js.map +1 -0
  45. package/lib/commonjs/modules/bt-management/services/devices/checkme/checkme.protocol.js +263 -0
  46. package/lib/commonjs/modules/bt-management/services/devices/checkme/checkme.protocol.js.map +1 -0
  47. package/lib/commonjs/modules/bt-management/services/devices/checkme/checkme.sequencer.js +255 -0
  48. package/lib/commonjs/modules/bt-management/services/devices/checkme/checkme.sequencer.js.map +1 -0
  49. package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js +87 -6
  50. package/lib/commonjs/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
  51. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.transports.js +3 -0
  52. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
  53. package/lib/commonjs/modules/bt-management/services/devices/measurement-state-machine.js +1 -0
  54. package/lib/commonjs/modules/bt-management/services/devices/measurement-state-machine.js.map +1 -1
  55. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js +4 -0
  56. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js.map +1 -1
  57. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.lepod.js +4 -0
  58. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.lepod.js.map +1 -1
  59. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.oximeters.js +10 -0
  60. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.oximeters.js.map +1 -1
  61. package/lib/commonjs/modules/bt-management/types/clock-sync.js +1 -0
  62. package/lib/commonjs/modules/bt-management/types/clock-sync.js.map +1 -1
  63. package/lib/commonjs/modules/bt-management/types/custom-session-policy.js +2 -0
  64. package/lib/commonjs/modules/bt-management/types/custom-session-policy.js.map +1 -0
  65. package/lib/commonjs/modules/bt-management/types/integrated-devices.js +3 -0
  66. package/lib/commonjs/modules/bt-management/types/integrated-devices.js.map +1 -1
  67. package/lib/module/modules/bt-device/constants/device-instruction-pdfs.js +4 -1
  68. package/lib/module/modules/bt-device/constants/device-instruction-pdfs.js.map +1 -1
  69. package/lib/module/modules/bt-device/constants/supported-device-catalog-assets.js +3 -1
  70. package/lib/module/modules/bt-device/constants/supported-device-catalog-assets.js.map +1 -1
  71. package/lib/module/modules/bt-device/constants/supported-device-catalog-entries.js +1 -1
  72. package/lib/module/modules/bt-device/constants/supported-device-catalog-entries.js.map +1 -1
  73. package/lib/module/modules/bt-device/constants/supported-devices.js +26 -1
  74. package/lib/module/modules/bt-device/constants/supported-devices.js.map +1 -1
  75. package/lib/module/modules/bt-management/constants/integrated-devices-map.js +2 -1
  76. package/lib/module/modules/bt-management/constants/integrated-devices-map.js.map +1 -1
  77. package/lib/module/modules/bt-management/index.js +7 -0
  78. package/lib/module/modules/bt-management/index.js.map +1 -1
  79. package/lib/module/modules/bt-management/services/background-sync/background-service-uuids.js +4 -0
  80. package/lib/module/modules/bt-management/services/background-sync/background-service-uuids.js.map +1 -1
  81. package/lib/module/modules/bt-management/services/custom/define-custom-device.js +20 -0
  82. package/lib/module/modules/bt-management/services/custom/define-custom-device.js.map +1 -1
  83. package/lib/module/modules/bt-management/services/device-creator.js +7 -1
  84. package/lib/module/modules/bt-management/services/device-creator.js.map +1 -1
  85. package/lib/module/modules/bt-management/services/devices/a606/a606.command-sequencer.js +61 -0
  86. package/lib/module/modules/bt-management/services/devices/a606/a606.command-sequencer.js.map +1 -0
  87. package/lib/module/modules/bt-management/services/devices/a606/a606.device.js +45 -0
  88. package/lib/module/modules/bt-management/services/devices/a606/a606.device.js.map +1 -0
  89. package/lib/module/modules/bt-management/services/devices/a606/a606.frame-parser.js +32 -0
  90. package/lib/module/modules/bt-management/services/devices/a606/a606.frame-parser.js.map +1 -0
  91. package/lib/module/modules/bt-management/services/devices/a606/a606.frame-reader.js +63 -0
  92. package/lib/module/modules/bt-management/services/devices/a606/a606.frame-reader.js.map +1 -0
  93. package/lib/module/modules/bt-management/services/devices/a606/a606.main-services.js +28 -0
  94. package/lib/module/modules/bt-management/services/devices/a606/a606.main-services.js.map +1 -0
  95. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.js +66 -0
  96. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.js.map +1 -0
  97. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.device.js +45 -0
  98. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.device.js.map +1 -0
  99. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.js +48 -0
  100. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.js.map +1 -0
  101. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.js +50 -0
  102. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.js.map +1 -0
  103. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.main-services.js +26 -0
  104. package/lib/module/modules/bt-management/services/devices/bpw1/bpw1.main-services.js.map +1 -0
  105. package/lib/module/modules/bt-management/services/devices/bt-data-processor.js +1 -0
  106. package/lib/module/modules/bt-management/services/devices/bt-data-processor.js.map +1 -1
  107. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js +4 -0
  108. package/lib/module/modules/bt-management/services/devices/bt-managed-device.js.map +1 -1
  109. package/lib/module/modules/bt-management/services/devices/checkme/checkme.device.js +53 -0
  110. package/lib/module/modules/bt-management/services/devices/checkme/checkme.device.js.map +1 -0
  111. package/lib/module/modules/bt-management/services/devices/checkme/checkme.protocol.js +247 -0
  112. package/lib/module/modules/bt-management/services/devices/checkme/checkme.protocol.js.map +1 -0
  113. package/lib/module/modules/bt-management/services/devices/checkme/checkme.sequencer.js +245 -0
  114. package/lib/module/modules/bt-management/services/devices/checkme/checkme.sequencer.js.map +1 -0
  115. package/lib/module/modules/bt-management/services/devices/custom/custom.device.js +87 -6
  116. package/lib/module/modules/bt-management/services/devices/custom/custom.device.js.map +1 -1
  117. package/lib/module/modules/bt-management/services/devices/lepu/lepu.transports.js +3 -0
  118. package/lib/module/modules/bt-management/services/devices/lepu/lepu.transports.js.map +1 -1
  119. package/lib/module/modules/bt-management/services/devices/measurement-state-machine.js +1 -0
  120. package/lib/module/modules/bt-management/services/devices/measurement-state-machine.js.map +1 -1
  121. package/lib/module/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js +4 -0
  122. package/lib/module/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.js.map +1 -1
  123. package/lib/module/modules/bt-management/services/devices/viatom/viatom.lepod.js +4 -0
  124. package/lib/module/modules/bt-management/services/devices/viatom/viatom.lepod.js.map +1 -1
  125. package/lib/module/modules/bt-management/services/devices/viatom/viatom.oximeters.js +10 -0
  126. package/lib/module/modules/bt-management/services/devices/viatom/viatom.oximeters.js.map +1 -1
  127. package/lib/module/modules/bt-management/types/clock-sync.js +1 -0
  128. package/lib/module/modules/bt-management/types/clock-sync.js.map +1 -1
  129. package/lib/module/modules/bt-management/types/custom-device-definition.js.map +1 -1
  130. package/lib/module/modules/bt-management/types/custom-session-policy.js +2 -0
  131. package/lib/module/modules/bt-management/types/custom-session-policy.js.map +1 -0
  132. package/lib/module/modules/bt-management/types/device-measurement-map.js.map +1 -1
  133. package/lib/module/modules/bt-management/types/integrated-devices.js +3 -0
  134. package/lib/module/modules/bt-management/types/integrated-devices.js.map +1 -1
  135. package/lib/typescript/commonjs/src/modules/bt-device/constants/device-instruction-pdfs.d.ts.map +1 -1
  136. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts +3 -1
  137. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts.map +1 -1
  138. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-device-catalog-entries.d.ts.map +1 -1
  139. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-devices.d.ts +7 -0
  140. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
  141. package/lib/typescript/commonjs/src/modules/bt-management/constants/integrated-devices-map.d.ts.map +1 -1
  142. package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts +7 -0
  143. package/lib/typescript/commonjs/src/modules/bt-management/index.d.ts.map +1 -1
  144. package/lib/typescript/commonjs/src/modules/bt-management/services/background-sync/background-service-uuids.d.ts.map +1 -1
  145. package/lib/typescript/commonjs/src/modules/bt-management/services/custom/define-custom-device.d.ts.map +1 -1
  146. package/lib/typescript/commonjs/src/modules/bt-management/services/device-creator.d.ts.map +1 -1
  147. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.command-sequencer.d.ts +22 -0
  148. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.command-sequencer.d.ts.map +1 -0
  149. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.device.d.ts +24 -0
  150. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.device.d.ts.map +1 -0
  151. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.frame-parser.d.ts +10 -0
  152. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.frame-parser.d.ts.map +1 -0
  153. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.frame-reader.d.ts +9 -0
  154. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.frame-reader.d.ts.map +1 -0
  155. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.main-services.d.ts +4 -0
  156. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/a606/a606.main-services.d.ts.map +1 -0
  157. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.d.ts +21 -0
  158. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.d.ts.map +1 -0
  159. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.device.d.ts +22 -0
  160. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.device.d.ts.map +1 -0
  161. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.d.ts +9 -0
  162. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.d.ts.map +1 -0
  163. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.d.ts +8 -0
  164. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.d.ts.map +1 -0
  165. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.main-services.d.ts +4 -0
  166. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bpw1/bpw1.main-services.d.ts.map +1 -0
  167. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-data-processor.d.ts +1 -0
  168. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-data-processor.d.ts.map +1 -1
  169. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts +2 -0
  170. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  171. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/checkme/checkme.device.d.ts +18 -0
  172. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/checkme/checkme.device.d.ts.map +1 -0
  173. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/checkme/checkme.protocol.d.ts +79 -0
  174. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/checkme/checkme.protocol.d.ts.map +1 -0
  175. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/checkme/checkme.sequencer.d.ts +52 -0
  176. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/checkme/checkme.sequencer.d.ts.map +1 -0
  177. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/custom/custom.device.d.ts +10 -0
  178. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
  179. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +3 -0
  180. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts.map +1 -1
  181. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/measurement-state-machine.d.ts +1 -0
  182. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/measurement-state-machine.d.ts.map +1 -1
  183. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.d.ts.map +1 -1
  184. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.lepod.d.ts.map +1 -1
  185. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.oximeters.d.ts.map +1 -1
  186. package/lib/typescript/commonjs/src/modules/bt-management/types/clock-sync.d.ts.map +1 -1
  187. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-device-definition.d.ts +2 -0
  188. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-device-definition.d.ts.map +1 -1
  189. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-device-spec.d.ts +3 -0
  190. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-device-spec.d.ts.map +1 -1
  191. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-session-policy.d.ts +13 -0
  192. package/lib/typescript/commonjs/src/modules/bt-management/types/custom-session-policy.d.ts.map +1 -0
  193. package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts +8 -0
  194. package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
  195. package/lib/typescript/commonjs/src/modules/bt-management/types/integrated-devices.d.ts +4 -1
  196. package/lib/typescript/commonjs/src/modules/bt-management/types/integrated-devices.d.ts.map +1 -1
  197. package/lib/typescript/module/src/modules/bt-device/constants/device-instruction-pdfs.d.ts.map +1 -1
  198. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts +3 -1
  199. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-assets.d.ts.map +1 -1
  200. package/lib/typescript/module/src/modules/bt-device/constants/supported-device-catalog-entries.d.ts.map +1 -1
  201. package/lib/typescript/module/src/modules/bt-device/constants/supported-devices.d.ts +7 -0
  202. package/lib/typescript/module/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
  203. package/lib/typescript/module/src/modules/bt-management/constants/integrated-devices-map.d.ts.map +1 -1
  204. package/lib/typescript/module/src/modules/bt-management/index.d.ts +7 -0
  205. package/lib/typescript/module/src/modules/bt-management/index.d.ts.map +1 -1
  206. package/lib/typescript/module/src/modules/bt-management/services/background-sync/background-service-uuids.d.ts.map +1 -1
  207. package/lib/typescript/module/src/modules/bt-management/services/custom/define-custom-device.d.ts.map +1 -1
  208. package/lib/typescript/module/src/modules/bt-management/services/device-creator.d.ts.map +1 -1
  209. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.command-sequencer.d.ts +22 -0
  210. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.command-sequencer.d.ts.map +1 -0
  211. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.device.d.ts +24 -0
  212. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.device.d.ts.map +1 -0
  213. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.frame-parser.d.ts +10 -0
  214. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.frame-parser.d.ts.map +1 -0
  215. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.frame-reader.d.ts +9 -0
  216. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.frame-reader.d.ts.map +1 -0
  217. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.main-services.d.ts +4 -0
  218. package/lib/typescript/module/src/modules/bt-management/services/devices/a606/a606.main-services.d.ts.map +1 -0
  219. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.d.ts +21 -0
  220. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.command-sequencer.d.ts.map +1 -0
  221. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.device.d.ts +22 -0
  222. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.device.d.ts.map +1 -0
  223. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.d.ts +9 -0
  224. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.frame-parser.d.ts.map +1 -0
  225. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.d.ts +8 -0
  226. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.frame-reader.d.ts.map +1 -0
  227. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.main-services.d.ts +4 -0
  228. package/lib/typescript/module/src/modules/bt-management/services/devices/bpw1/bpw1.main-services.d.ts.map +1 -0
  229. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-data-processor.d.ts +1 -0
  230. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-data-processor.d.ts.map +1 -1
  231. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts +2 -0
  232. package/lib/typescript/module/src/modules/bt-management/services/devices/bt-managed-device.d.ts.map +1 -1
  233. package/lib/typescript/module/src/modules/bt-management/services/devices/checkme/checkme.device.d.ts +18 -0
  234. package/lib/typescript/module/src/modules/bt-management/services/devices/checkme/checkme.device.d.ts.map +1 -0
  235. package/lib/typescript/module/src/modules/bt-management/services/devices/checkme/checkme.protocol.d.ts +79 -0
  236. package/lib/typescript/module/src/modules/bt-management/services/devices/checkme/checkme.protocol.d.ts.map +1 -0
  237. package/lib/typescript/module/src/modules/bt-management/services/devices/checkme/checkme.sequencer.d.ts +52 -0
  238. package/lib/typescript/module/src/modules/bt-management/services/devices/checkme/checkme.sequencer.d.ts.map +1 -0
  239. package/lib/typescript/module/src/modules/bt-management/services/devices/custom/custom.device.d.ts +10 -0
  240. package/lib/typescript/module/src/modules/bt-management/services/devices/custom/custom.device.d.ts.map +1 -1
  241. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts +3 -0
  242. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.transports.d.ts.map +1 -1
  243. package/lib/typescript/module/src/modules/bt-management/services/devices/measurement-state-machine.d.ts +1 -0
  244. package/lib/typescript/module/src/modules/bt-management/services/devices/measurement-state-machine.d.ts.map +1 -1
  245. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.ecg-recorders.d.ts.map +1 -1
  246. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.lepod.d.ts.map +1 -1
  247. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.oximeters.d.ts.map +1 -1
  248. package/lib/typescript/module/src/modules/bt-management/types/clock-sync.d.ts.map +1 -1
  249. package/lib/typescript/module/src/modules/bt-management/types/custom-device-definition.d.ts +2 -0
  250. package/lib/typescript/module/src/modules/bt-management/types/custom-device-definition.d.ts.map +1 -1
  251. package/lib/typescript/module/src/modules/bt-management/types/custom-device-spec.d.ts +3 -0
  252. package/lib/typescript/module/src/modules/bt-management/types/custom-device-spec.d.ts.map +1 -1
  253. package/lib/typescript/module/src/modules/bt-management/types/custom-session-policy.d.ts +13 -0
  254. package/lib/typescript/module/src/modules/bt-management/types/custom-session-policy.d.ts.map +1 -0
  255. package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts +8 -0
  256. package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
  257. package/lib/typescript/module/src/modules/bt-management/types/integrated-devices.d.ts +4 -1
  258. package/lib/typescript/module/src/modules/bt-management/types/integrated-devices.d.ts.map +1 -1
  259. package/package.json +1 -1
@@ -0,0 +1,255 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "CheckmeListType", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _checkmeProtocol.CheckmeListType;
10
+ }
11
+ });
12
+ exports.CheckmeProSequencer = void 0;
13
+ var _core = require("@ovok/core");
14
+ var _caseType = require("../../../types/case-type.js");
15
+ var _checkmeProtocol = require("./checkme.protocol.js");
16
+ /* eslint-disable import/group-exports, max-lines */
17
+
18
+ const READ_TIMEOUT_MS = 5_000;
19
+ const MAX_RETRIES = 2;
20
+ const le32 = bytes => (Number.parseInt(bytes[0] ?? "00", 16) | Number.parseInt(bytes[1] ?? "00", 16) << 8 | Number.parseInt(bytes[2] ?? "00", 16) << 16 | Number.parseInt(bytes[3] ?? "00", 16) << 24) >>> 0;
21
+ const command = (write, frame) => ({
22
+ ...write,
23
+ frame,
24
+ withoutResponse: true
25
+ });
26
+ const valid = value => Number.isFinite(value) && value > 0;
27
+ const recordedAtFromName = name => {
28
+ const digits = name.replace(/\D/g, "");
29
+ if (digits.length < 14) {
30
+ return undefined;
31
+ }
32
+ const date = new Date(Number(digits.slice(0, 4)), Number(digits.slice(4, 6)) - 1, Number(digits.slice(6, 8)), Number(digits.slice(8, 10)), Number(digits.slice(10, 12)), Number(digits.slice(12, 14)));
33
+ return Number.isNaN(date.getTime()) ? undefined : date;
34
+ };
35
+
36
+ /**
37
+ * Downloads Checkme Pro history using the command exchange in ViHealth's CheckmeBleInterface.
38
+ * The device returns list records first; the daily list and ECG list then point to waveform
39
+ * files, which are read with the same offset-based transfer.
40
+ */
41
+ class CheckmeProSequencer {
42
+ phase = "info";
43
+ queue = [];
44
+ content = [];
45
+ expectedBytes = 0;
46
+ sequence = 0;
47
+ retries = 0;
48
+ reported = new Set();
49
+ constructor(params) {
50
+ this.params = params;
51
+ }
52
+ initialCommands = () => this.remember(checkmeCommandFor(this.params.write, _checkmeProtocol.CheckmeCommand.info));
53
+ isHistoryTransfer = () => true;
54
+ commandTimeoutMs = () => this.phase === "done" ? undefined : READ_TIMEOUT_MS;
55
+ onCommandTimeout = () => {
56
+ if (!this.lastCommand || this.retries >= MAX_RETRIES) {
57
+ this.phase = "done";
58
+ return {
59
+ terminal: true
60
+ };
61
+ }
62
+ this.retries += 1;
63
+ return {
64
+ commands: [this.lastCommand]
65
+ };
66
+ };
67
+ isNormalDisconnect = () => this.phase === "done";
68
+ nextCommand = frame => {
69
+ const response = (0, _checkmeProtocol.decodeCheckmeResponse)(frame);
70
+ if (!response || !response.state || this.phase === "done") {
71
+ return undefined;
72
+ }
73
+ this.retries = 0;
74
+ if (this.phase === "info") {
75
+ this.queue = [{
76
+ name: "usr.dat",
77
+ kind: "users"
78
+ }];
79
+ return this.startNextFile();
80
+ }
81
+ if (this.phase === "start") {
82
+ this.expectedBytes = le32(response.content);
83
+ this.content = [];
84
+ this.sequence = 0;
85
+ this.phase = "content";
86
+ return this.expectedBytes > 0 ? this.remember(this.write((0, _checkmeProtocol.checkmeReadContent)(this.sequence))) : this.finishFile();
87
+ }
88
+ if (this.phase === "content") {
89
+ this.content.push(...response.content);
90
+ if (this.content.length < this.expectedBytes) {
91
+ this.sequence += 1;
92
+ return this.remember(this.write((0, _checkmeProtocol.checkmeReadContent)(this.sequence)));
93
+ }
94
+ return this.finishFile();
95
+ }
96
+ return this.finishCurrentFile();
97
+ };
98
+ write = frame => command(this.params.write, frame);
99
+ remember = next => {
100
+ this.lastCommand = next;
101
+ return [next];
102
+ };
103
+ startNextFile = () => {
104
+ const next = this.queue.shift();
105
+ if (!next) {
106
+ this.phase = "done";
107
+ return undefined;
108
+ }
109
+ this.current = next;
110
+ this.phase = "start";
111
+ return this.remember(this.write((0, _checkmeProtocol.checkmeReadFileStart)(next.name)));
112
+ };
113
+ finishFile = () => {
114
+ this.phase = "end";
115
+ return this.remember(this.write((0, _checkmeProtocol.checkmeReadEnd)()));
116
+ };
117
+ finishCurrentFile = () => {
118
+ if (this.current) {
119
+ this.processFile(this.current, this.content);
120
+ }
121
+ return this.startNextFile();
122
+ };
123
+ processFile = (file, bytes) => {
124
+ switch (file.kind) {
125
+ case "users":
126
+ this.queue = this.filePlan(bytes);
127
+ return;
128
+ case "daily":
129
+ this.processDaily(bytes);
130
+ return;
131
+ case "ecg-list":
132
+ this.queue.unshift(...(0, _checkmeProtocol.parseCheckmeEcgRecords)(bytes).map(record => ({
133
+ name: record.recordName,
134
+ kind: "ecg-file"
135
+ })));
136
+ return;
137
+ case "oxygen":
138
+ (0, _checkmeProtocol.parseCheckmeOxygenRecords)(bytes).forEach(record => {
139
+ this.reportOnce(`${_core.MeasurementTypeKey.bloodOxygenPulseRate}:${record.recordName}`, {
140
+ measurementTypeKey: _core.MeasurementTypeKey.bloodOxygenPulseRate,
141
+ bloodOxygen: record.bloodOxygen,
142
+ pulseRate: record.heartRate,
143
+ perfusionIndex: record.perfusionIndex,
144
+ recordedAt: record.recordedAt
145
+ });
146
+ });
147
+ return;
148
+ case "blood-pressure":
149
+ (0, _checkmeProtocol.parseCheckmeBloodPressureRecords)(bytes).forEach(record => {
150
+ this.reportOnce(`${_core.MeasurementTypeKey.bloodPressure}:${record.recordName}`, {
151
+ measurementTypeKey: _core.MeasurementTypeKey.bloodPressure,
152
+ systolic: record.systolic,
153
+ diastolic: record.diastolic,
154
+ heartRate: record.heartRate,
155
+ recordedAt: record.recordedAt
156
+ });
157
+ });
158
+ return;
159
+ case "temperature":
160
+ (0, _checkmeProtocol.parseCheckmeTemperatureRecords)(bytes).forEach(record => {
161
+ this.reportOnce(`${_core.MeasurementTypeKey.temperature}:${record.recordName}`, {
162
+ measurementTypeKey: _core.MeasurementTypeKey.temperature,
163
+ bodyTemp: record.temperature,
164
+ recordedAt: record.recordedAt
165
+ });
166
+ });
167
+ return;
168
+ case "ecg-file":
169
+ {
170
+ const recording = (0, _checkmeProtocol.decodeCheckmeEcgFile)(bytes);
171
+ if (recording && recording.diagramPoints.length > 0) {
172
+ this.reportOnce(`${_core.MeasurementTypeKey.ecg}:${file.name}`, {
173
+ measurementTypeKey: _core.MeasurementTypeKey.ecg,
174
+ heartRate: recording.heartRate,
175
+ duration: recording.duration,
176
+ diagramPoints: recording.diagramPoints,
177
+ recordedAt: recordedAtFromName(file.name)
178
+ });
179
+ }
180
+ }
181
+ }
182
+ };
183
+ processDaily = bytes => {
184
+ const records = (0, _checkmeProtocol.parseCheckmeDailyRecords)(bytes);
185
+ records.forEach(record => {
186
+ if (valid(record.heartRate)) {
187
+ this.reportOnce(`${_core.MeasurementTypeKey.heartRate}:${record.recordName}`, {
188
+ measurementTypeKey: _core.MeasurementTypeKey.heartRate,
189
+ heartRate: record.heartRate,
190
+ recordedAt: record.recordedAt
191
+ });
192
+ }
193
+ if (valid(record.bloodOxygen)) {
194
+ this.reportOnce(`${_core.MeasurementTypeKey.bloodOxygenPulseRate}:${record.recordName}`, {
195
+ measurementTypeKey: _core.MeasurementTypeKey.bloodOxygenPulseRate,
196
+ bloodOxygen: record.bloodOxygen,
197
+ recordedAt: record.recordedAt
198
+ });
199
+ }
200
+ if (record.systolic && record.diastolic) {
201
+ this.reportOnce(`${_core.MeasurementTypeKey.bloodPressure}:${record.recordName}`, {
202
+ measurementTypeKey: _core.MeasurementTypeKey.bloodPressure,
203
+ systolic: record.systolic,
204
+ diastolic: record.diastolic,
205
+ recordedAt: record.recordedAt
206
+ });
207
+ }
208
+ });
209
+ };
210
+ filePlan = bytes => {
211
+ const userIds = new Set();
212
+ for (let offset = 0; offset + 27 <= bytes.length; offset += 27) {
213
+ const id = Number.parseInt(bytes[offset] ?? "00", 16);
214
+ if (Number.isInteger(id)) {
215
+ userIds.add(id);
216
+ }
217
+ }
218
+ const ids = [...userIds];
219
+ const plan = [];
220
+ ids.forEach(id => {
221
+ plan.push({
222
+ name: `${id}dlc.dat`,
223
+ kind: "daily"
224
+ });
225
+ plan.push({
226
+ name: `${id}nibp.dat`,
227
+ kind: "blood-pressure"
228
+ });
229
+ });
230
+ plan.push({
231
+ name: "ecg.dat",
232
+ kind: "ecg-list"
233
+ }, {
234
+ name: "oxi.dat",
235
+ kind: "oxygen"
236
+ }, {
237
+ name: "tmp.dat",
238
+ kind: "temperature"
239
+ });
240
+ return plan;
241
+ };
242
+ reportOnce = (key, measurement) => {
243
+ if (this.reported.has(key)) {
244
+ return;
245
+ }
246
+ this.reported.add(key);
247
+ this.params.onResult({
248
+ ...measurement,
249
+ caseType: _caseType.CaseType.RESULT
250
+ });
251
+ };
252
+ }
253
+ exports.CheckmeProSequencer = CheckmeProSequencer;
254
+ const checkmeCommandFor = (write, commandCode) => command(write, (0, _checkmeProtocol.checkmeCommand)(commandCode));
255
+ //# sourceMappingURL=checkme.sequencer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_core","require","_caseType","_checkmeProtocol","READ_TIMEOUT_MS","MAX_RETRIES","le32","bytes","Number","parseInt","command","write","frame","withoutResponse","valid","value","isFinite","recordedAtFromName","name","digits","replace","length","undefined","date","Date","slice","isNaN","getTime","CheckmeProSequencer","phase","queue","content","expectedBytes","sequence","retries","reported","Set","constructor","params","initialCommands","remember","checkmeCommandFor","CheckmeCommand","info","isHistoryTransfer","commandTimeoutMs","onCommandTimeout","lastCommand","terminal","commands","isNormalDisconnect","nextCommand","response","decodeCheckmeResponse","state","kind","startNextFile","checkmeReadContent","finishFile","push","finishCurrentFile","next","shift","current","checkmeReadFileStart","checkmeReadEnd","processFile","file","filePlan","processDaily","unshift","parseCheckmeEcgRecords","map","record","recordName","parseCheckmeOxygenRecords","forEach","reportOnce","MeasurementTypeKey","bloodOxygenPulseRate","measurementTypeKey","bloodOxygen","pulseRate","heartRate","perfusionIndex","recordedAt","parseCheckmeBloodPressureRecords","bloodPressure","systolic","diastolic","parseCheckmeTemperatureRecords","temperature","bodyTemp","recording","decodeCheckmeEcgFile","diagramPoints","ecg","duration","records","parseCheckmeDailyRecords","userIds","offset","id","isInteger","add","ids","plan","key","measurement","has","onResult","caseType","CaseType","RESULT","exports","commandCode","checkmeCommand"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/checkme/checkme.sequencer.ts"],"mappings":"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","ignoreList":[]}
@@ -28,12 +28,14 @@ var _customLepuSequencer = require("./custom-lepu-sequencer.js");
28
28
  */
29
29
  class CustomDevice extends _btManagedDevice.BTManagedDevice {
30
30
  validators = new Map();
31
+ sessionAggregates = new Map();
31
32
  constructor(device, params, definition) {
32
33
  super(device, {
33
34
  ...params,
34
35
  oneReadingPerConnection: params.oneReadingPerConnection ?? definition.oneReadingPerConnection
35
36
  });
36
37
  this.definition = definition;
38
+ this.sessionPolicy = definition.sessionPolicy;
37
39
  this.deviceData.clockSync = definition.clockSync;
38
40
  this.deliveredEcgFileNames = new Set(params.deliveredEcgFileNames ?? []);
39
41
  const selectedLepu = definition.lepu ? (0, _customLepuSequencer.selectLepu)(definition.lepu, device.manufacturerData ?? undefined) : undefined;
@@ -133,6 +135,16 @@ class CustomDevice extends _btManagedDevice.BTManagedDevice {
133
135
  */
134
136
  handleDependentResult = data => {
135
137
  try {
138
+ if (this.sessionPolicy) {
139
+ this.captureSessionSample(data);
140
+ return {
141
+ ...data,
142
+ parsingCase: {
143
+ ...data.parsingCase,
144
+ caseType: _caseType.CaseType.STREAM
145
+ }
146
+ };
147
+ }
136
148
  if (this.shouldReportDependentResult(data)) {
137
149
  this.reportFrame(data);
138
150
  }
@@ -159,6 +171,68 @@ class CustomDevice extends _btManagedDevice.BTManagedDevice {
159
171
  return;
160
172
  }
161
173
 
174
+ /** Emits a completed session before the state machine returns to CONNECTED. */
175
+ handleMeasurementEnd() {
176
+ const policy = this.sessionPolicy;
177
+ if (!policy) {
178
+ return;
179
+ }
180
+ const aggregates = [...this.sessionAggregates.values()];
181
+ this.sessionAggregates.clear();
182
+ const recordedAt = this.sessionStartedAt;
183
+ this.sessionStartedAt = undefined;
184
+ if (!recordedAt || policy.emit === "none") {
185
+ return;
186
+ }
187
+ aggregates.forEach(aggregate => {
188
+ if (aggregate.count < policy.minSamples) {
189
+ return;
190
+ }
191
+ const summary = {
192
+ ...aggregate.sample,
193
+ ...Object.fromEntries([...aggregate.sums.entries()].map(([name, total]) => [name, this.sessionAverage(aggregate.sample.measurementTypeKey, name, total / aggregate.count)])),
194
+ caseType: _caseType.CaseType.RESULT,
195
+ recordedAt
196
+ };
197
+ this.onResult?.(this.decorateReading(summary));
198
+ });
199
+ }
200
+ sessionAverage(measurementTypeKey, name, value) {
201
+ const decimals = this.definition.fields.get(`${measurementTypeKey}:${name}`)?.decimals;
202
+ return decimals === undefined ? Math.trunc(value) : Number(value.toFixed(decimals));
203
+ }
204
+
205
+ /** Collects only complete, physiologically valid readings from one live frame. */
206
+ captureSessionSample(data) {
207
+ const measurements = data.parsingCase.measurements ?? [];
208
+ const frameRecordedAt = this.sessionStartedAt ?? new Date();
209
+ measurements.forEach(measurement => {
210
+ const reading = this.createMeasurement(data.parsedData, measurement);
211
+ const rejection = this.measurementRejection(reading, measurement);
212
+
213
+ // Viatom uses out-of-range markers for values that are not available yet.
214
+ // They are ignored for the session rather than surfaced as decoding errors.
215
+ if (rejection) {
216
+ return;
217
+ }
218
+ const key = String(measurement.measurementTypeKey);
219
+ const existing = this.sessionAggregates.get(key);
220
+ const sums = existing?.sums ?? new Map();
221
+ measurement.fieldNames.forEach(name => {
222
+ const value = reading[name];
223
+ if (typeof value === "number") {
224
+ sums.set(name, (sums.get(name) ?? 0) + value);
225
+ }
226
+ });
227
+ this.sessionAggregates.set(key, {
228
+ count: (existing?.count ?? 0) + 1,
229
+ sample: existing?.sample ?? reading,
230
+ sums
231
+ });
232
+ this.sessionStartedAt ??= frameRecordedAt;
233
+ });
234
+ }
235
+
162
236
  /** Adds protocol-specific metadata to a validated reading before it is emitted. */
163
237
  decorateReading = (reading, frame, recordOffset) => this.definition.decorateReading?.(reading, frame, recordOffset) ?? reading;
164
238
 
@@ -205,6 +279,15 @@ class CustomDevice extends _btManagedDevice.BTManagedDevice {
205
279
  this.onError?.((0, _rejectCustomReading.discardedReadingError)(this.definition.id, reason, parsedData));
206
280
  }
207
281
  reportMeasurement(parsedData, measurement, frame, recordOffset) {
282
+ const reading = this.createMeasurement(parsedData, measurement);
283
+ const rejection = this.measurementRejection(reading, measurement);
284
+ if (rejection) {
285
+ this.discard(rejection, reading);
286
+ return;
287
+ }
288
+ this.onResult?.(this.decorateReading(reading, frame, recordOffset));
289
+ }
290
+ createMeasurement(parsedData, measurement) {
208
291
  const reading = {
209
292
  caseType: parsedData.caseType,
210
293
  measurementTypeKey: measurement.measurementTypeKey
@@ -212,12 +295,10 @@ class CustomDevice extends _btManagedDevice.BTManagedDevice {
212
295
  measurement.fieldNames.forEach(name => {
213
296
  reading[name] = parsedData[name];
214
297
  });
215
- const rejection = measurement.fieldNames.map(name => (0, _rejectCustomReading.rejectCustomReading)(this.definition.fields, measurement.measurementTypeKey, name, reading[name])).find(message => message !== undefined);
216
- if (rejection) {
217
- this.discard(rejection, reading);
218
- return;
219
- }
220
- this.onResult?.(this.decorateReading(reading, frame, recordOffset));
298
+ return reading;
299
+ }
300
+ measurementRejection(reading, measurement) {
301
+ return measurement.fieldNames.map(name => (0, _rejectCustomReading.rejectCustomReading)(this.definition.fields, measurement.measurementTypeKey, name, reading[name])).find(message => message !== undefined);
221
302
  }
222
303
  }
223
304
  exports.CustomDevice = CustomDevice;
@@ -1 +1 @@
1
- {"version":3,"names":["_core","require","_caseType","_createFrameValidator","_parseMeasurement","_rejectCustomReading","_btManagedDevice","_lepuCommandBuilder","_lepuEcgTransfer","_lepuFrameReader","_viatomEcgFiles","_customLepuSequencer","CustomDevice","BTManagedDevice","validators","Map","constructor","device","params","definition","oneReadingPerConnection","deviceData","clockSync","deliveredEcgFileNames","Set","selectedLepu","lepu","selectLepu","manufacturerData","undefined","mainServices","manufacturerDataProtocol","filter","service","uuid","write","serviceUuid","stuckDataTimeout","reportsBondedEvent","preferredMtu","declareLepuProtocol","frames","forEach","frame","set","createFrameValidator","frameReader","LepuFrameReader","startBytes","createCommandSequencer","fileTransfer","LepuEcgTransferSequencer","characteristicUuid","builder","LepuCommandBuilder","expectedDeviceTypes","onIdentified","onRefused","onIdentityRefused","onFile","reportViatomEcgFile","skipFiles","acceptFile","name","ecgFileDecoder","test","afterTransfer","pollCommand","build","onError","reason","Error","onProgress","progress","onConnectionEvent","kind","current","receivedBytes","total","totalBytes","createLepuSequencer","file","decoded","decodeViatomEcgRecording","content","samples","length","onResult","measurementTypeKey","MeasurementTypeKey","ecg","caseType","CaseType","RESULT","diagramPoints","duration","recordedAt","recordedAtFromViatomFileName","recordingId","info","recordLepuIdentity","id","validatePackage","pkg","validate","get","String","toLowerCase","handleDependentResult","data","shouldReportDependentResult","reportFrame","error","parsingCase","OTHER","_data","handleSuccessResult","decorateReading","reading","recordOffset","repeated","repeatedRecords","report","parsedData","records","Math","floor","from","recordBytes","record","parseMeasurement","measurements","discard","measurement","reportMeasurement","discardedReadingError","fieldNames","rejection","map","rejectCustomReading","fields","find","message","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/custom/custom.device.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_core","require","_caseType","_createFrameValidator","_parseMeasurement","_rejectCustomReading","_btManagedDevice","_lepuCommandBuilder","_lepuEcgTransfer","_lepuFrameReader","_viatomEcgFiles","_customLepuSequencer","CustomDevice","BTManagedDevice","validators","Map","sessionAggregates","constructor","device","params","definition","oneReadingPerConnection","sessionPolicy","deviceData","clockSync","deliveredEcgFileNames","Set","selectedLepu","lepu","selectLepu","manufacturerData","undefined","mainServices","manufacturerDataProtocol","filter","service","uuid","write","serviceUuid","stuckDataTimeout","reportsBondedEvent","preferredMtu","declareLepuProtocol","frames","forEach","frame","set","createFrameValidator","frameReader","LepuFrameReader","startBytes","createCommandSequencer","fileTransfer","LepuEcgTransferSequencer","characteristicUuid","builder","LepuCommandBuilder","expectedDeviceTypes","onIdentified","onRefused","onIdentityRefused","onFile","reportViatomEcgFile","skipFiles","acceptFile","name","ecgFileDecoder","test","afterTransfer","pollCommand","build","onError","reason","Error","onProgress","progress","onConnectionEvent","kind","current","receivedBytes","total","totalBytes","createLepuSequencer","file","decoded","decodeViatomEcgRecording","content","samples","length","onResult","measurementTypeKey","MeasurementTypeKey","ecg","caseType","CaseType","RESULT","diagramPoints","duration","recordedAt","recordedAtFromViatomFileName","recordingId","info","recordLepuIdentity","id","validatePackage","pkg","validate","get","String","toLowerCase","handleDependentResult","data","captureSessionSample","parsingCase","STREAM","shouldReportDependentResult","reportFrame","error","OTHER","_data","handleSuccessResult","handleMeasurementEnd","policy","aggregates","values","clear","sessionStartedAt","emit","aggregate","count","minSamples","summary","sample","Object","fromEntries","sums","entries","map","sessionAverage","decorateReading","value","decimals","fields","Math","trunc","Number","toFixed","measurements","frameRecordedAt","Date","measurement","reading","createMeasurement","parsedData","rejection","measurementRejection","key","existing","fieldNames","recordOffset","repeated","repeatedRecords","report","records","floor","from","recordBytes","record","parseMeasurement","discard","reportMeasurement","discardedReadingError","rejectCustomReading","find","message","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/custom/custom.device.ts"],"mappings":"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","ignoreList":[]}
@@ -149,6 +149,9 @@ const lepuDevice = params => {
149
149
  ...(params.clockSync === undefined ? {} : {
150
150
  clockSync: params.clockSync
151
151
  }),
152
+ ...(params.sessionPolicy === undefined ? {} : {
153
+ sessionPolicy: params.sessionPolicy
154
+ }),
152
155
  lepu: {
153
156
  protocol: params.protocol,
154
157
  startBytes: [...(viatomOxygen && params.manufacturerDataProtocol === "viatom-oxygen" ? ["55", "a5"] : [viatomOxygen ? "55" : START_BYTE])],
@@ -1 +1 @@
1
- {"version":3,"names":["_defineCustomDevice","require","STANDARD_SERVICE","STANDARD_WRITE","STANDARD_NOTIFY","AW1_SERVICE","AW1_WRITE","AW1_NOTIFY","DING_SERVICE","DING_WRITE","DING_NOTIFY","AI_TELE_SERVICE","AI_TELE_WRITE","AI_TELE_NOTIFY","PREFERRED_MTU","MINIMUM_MTU","DEFAULT_STUCK_TIMEOUT_MS","START_BYTE","lepuTransports","exports","standard","serviceUuid","notifyUuid","writeUuid","preferredMtu","standardSmallMtu","aw1","ding","aiTele","COMMAND_BYTE","lepuDevice","params","transport","viatomOxygen","protocol","monitor","each","uuid","frame","minLengthBytes","caseSelectorBytes","undefined","cases","services","v2","defineCustomDevice","id","nameMatch","matchByService","stuckDataTimeoutMs","clockSync","lepu","startBytes","manufacturerDataProtocol","requestStartByte","rejectEncryptionAtBytes","write","characteristicUuid","expectedDeviceTypes","fileTransfer","ecgFileDecoder","pollCommand","writeWithoutResponse","setClockBeforeInfo","map","service","decorateReading"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.transports.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_defineCustomDevice","require","STANDARD_SERVICE","STANDARD_WRITE","STANDARD_NOTIFY","AW1_SERVICE","AW1_WRITE","AW1_NOTIFY","DING_SERVICE","DING_WRITE","DING_NOTIFY","AI_TELE_SERVICE","AI_TELE_WRITE","AI_TELE_NOTIFY","PREFERRED_MTU","MINIMUM_MTU","DEFAULT_STUCK_TIMEOUT_MS","START_BYTE","lepuTransports","exports","standard","serviceUuid","notifyUuid","writeUuid","preferredMtu","standardSmallMtu","aw1","ding","aiTele","COMMAND_BYTE","lepuDevice","params","transport","viatomOxygen","protocol","monitor","each","uuid","frame","minLengthBytes","caseSelectorBytes","undefined","cases","services","v2","defineCustomDevice","id","nameMatch","matchByService","stuckDataTimeoutMs","clockSync","sessionPolicy","lepu","startBytes","manufacturerDataProtocol","requestStartByte","rejectEncryptionAtBytes","write","characteristicUuid","expectedDeviceTypes","fileTransfer","ecgFileDecoder","pollCommand","writeWithoutResponse","setClockBeforeInfo","map","service","decorateReading"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/lepu/lepu.transports.ts"],"mappings":"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","ignoreList":[]}
@@ -58,6 +58,7 @@ class MeasurementStateMachine {
58
58
  };
59
59
  stopMeasuring = measurementTypeKey => {
60
60
  this.isMeasuring = false;
61
+ this.callbacks.onMeasurementEnd?.();
61
62
  this.callbacks.onStatusChanged?.(_deviceStatus.DeviceStatus.CONNECTED, measurementTypeKey);
62
63
  };
63
64
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_caseType","require","_deviceStatus","MeasurementStateMachine","isMeasuring","constructor","callbacks","reset","lastCaseValue","undefined","lastFrame","advance","parsingCase","measurementTypeKey","parsedData","frame","isResult","caseType","CaseType","RESULT","isRepeatedResult","caseValue","join","toLowerCase","STREAM","startMeasuring","OTHER","stopMeasuring","keepMeasuring","onResult","onStreamStart","onStatusChanged","DeviceStatus","MEASURING","CONNECTED","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/measurement-state-machine.ts"],"mappings":";;;;;;AAEA,IAAAA,SAAA,GAAAC,OAAA;AAEA,IAAAC,aAAA,GAAAD,OAAA;AAeA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAME,uBAAuB,CAAwB;EAClDC,WAAW,GAAY,KAAK;EAIpCC,WAAWA,CAAkBC,SAAoC,EAAE;IAAA,KAAtCA,SAAoC,GAApCA,SAAoC;EAAG;EAE7DC,KAAK,GAAGA,CAAA,KAAY;IACzB,IAAI,CAACH,WAAW,GAAG,KAAK;IACxB,IAAI,CAACI,aAAa,GAAGC,SAAS;IAC9B,IAAI,CAACC,SAAS,GAAGD,SAAS;EAC5B,CAAC;EAEME,OAAO,GAAGA,CACf;IACEC,WAAW;IACXC,kBAAkB;IAClBC;EAC+B,CAAC,EAClCC,KAAe,KACN;IACT,MAAMC,QAAQ,GAAGJ,WAAW,CAACK,QAAQ,KAAKC,kBAAQ,CAACC,MAAM;IAEzD,MAAMC,gBAAgB,GACpBJ,QAAQ,IACRJ,WAAW,CAACS,SAAS,KAAK,IAAI,CAACb,aAAa,IAC5C,IAAI,CAACE,SAAS,EAAEY,IAAI,CAAC,EAAE,CAAC,CAACC,WAAW,CAAC,CAAC,KAAKR,KAAK,CAACO,IAAI,CAAC,EAAE,CAAC,CAACC,WAAW,CAAC,CAAC;IAEzE,IAAI,CAACf,aAAa,GAAGI,WAAW,CAACS,SAAS;IAC1C,IAAI,CAACX,SAAS,GAAG,CAAC,GAAGK,KAAK,CAAC;IAE3B,IAAIH,WAAW,CAACK,QAAQ,KAAKC,kBAAQ,CAACM,MAAM,IAAI,CAAC,IAAI,CAACpB,WAAW,EAAE;MACjE,IAAI,CAACqB,cAAc,CAACZ,kBAAkB,CAAC;IACzC;IAEA,IAAI,IAAI,CAACT,WAAW,IAAIQ,WAAW,CAACK,QAAQ,KAAKC,kBAAQ,CAACQ,KAAK,EAAE;MAC/D,IAAI,CAACC,aAAa,CAACd,kBAAkB,CAAC;IACxC;IAEA,IAAIO,gBAAgB,EAAE;MACpB;IACF;IAEA,IAAIQ,aAAa,GAAG,KAAK;IAEzB,IAAI,IAAI,CAACxB,WAAW,IAAIY,QAAQ,EAAE;MAChCY,aAAa,GAAG,IAAI,CAACtB,SAAS,CAACuB,QAAQ,GAAGf,UAAU,EAAEC,KAAK,CAAC,IAAI,KAAK;IACvE;IAEA,IAAIC,QAAQ,IAAI,CAACY,aAAa,EAAE;MAC9B,IAAI,CAACD,aAAa,CAACd,kBAAkB,CAAC;IACxC;EACF,CAAC;EAEOY,cAAc,GAAIZ,kBAAuC,IAAW;IAC1E,IAAI,CAACP,SAAS,CAACwB,aAAa,GAAG,CAAC;IAChC,IAAI,CAACxB,SAAS,CAACyB,eAAe,GAAGC,0BAAY,CAACC,SAAS,EAAEpB,kBAAkB,CAAC;IAC5E,IAAI,CAACT,WAAW,GAAG,IAAI;EACzB,CAAC;EAEOuB,aAAa,GAAId,kBAAuC,IAAW;IACzE,IAAI,CAACT,WAAW,GAAG,KAAK;IACxB,IAAI,CAACE,SAAS,CAACyB,eAAe,GAC5BC,0BAAY,CAACE,SAAS,EACtBrB,kBACF,CAAC;EACH,CAAC;AACH;AAACsB,OAAA,CAAAhC,uBAAA,GAAAA,uBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_caseType","require","_deviceStatus","MeasurementStateMachine","isMeasuring","constructor","callbacks","reset","lastCaseValue","undefined","lastFrame","advance","parsingCase","measurementTypeKey","parsedData","frame","isResult","caseType","CaseType","RESULT","isRepeatedResult","caseValue","join","toLowerCase","STREAM","startMeasuring","OTHER","stopMeasuring","keepMeasuring","onResult","onStreamStart","onStatusChanged","DeviceStatus","MEASURING","onMeasurementEnd","CONNECTED","exports"],"sourceRoot":"../../../../../../src","sources":["modules/bt-management/services/devices/measurement-state-machine.ts"],"mappings":";;;;;;AAEA,IAAAA,SAAA,GAAAC,OAAA;AAEA,IAAAC,aAAA,GAAAD,OAAA;AAgBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAME,uBAAuB,CAAwB;EAClDC,WAAW,GAAY,KAAK;EAIpCC,WAAWA,CAAkBC,SAAoC,EAAE;IAAA,KAAtCA,SAAoC,GAApCA,SAAoC;EAAG;EAE7DC,KAAK,GAAGA,CAAA,KAAY;IACzB,IAAI,CAACH,WAAW,GAAG,KAAK;IACxB,IAAI,CAACI,aAAa,GAAGC,SAAS;IAC9B,IAAI,CAACC,SAAS,GAAGD,SAAS;EAC5B,CAAC;EAEME,OAAO,GAAGA,CACf;IACEC,WAAW;IACXC,kBAAkB;IAClBC;EAC+B,CAAC,EAClCC,KAAe,KACN;IACT,MAAMC,QAAQ,GAAGJ,WAAW,CAACK,QAAQ,KAAKC,kBAAQ,CAACC,MAAM;IAEzD,MAAMC,gBAAgB,GACpBJ,QAAQ,IACRJ,WAAW,CAACS,SAAS,KAAK,IAAI,CAACb,aAAa,IAC5C,IAAI,CAACE,SAAS,EAAEY,IAAI,CAAC,EAAE,CAAC,CAACC,WAAW,CAAC,CAAC,KAAKR,KAAK,CAACO,IAAI,CAAC,EAAE,CAAC,CAACC,WAAW,CAAC,CAAC;IAEzE,IAAI,CAACf,aAAa,GAAGI,WAAW,CAACS,SAAS;IAC1C,IAAI,CAACX,SAAS,GAAG,CAAC,GAAGK,KAAK,CAAC;IAE3B,IAAIH,WAAW,CAACK,QAAQ,KAAKC,kBAAQ,CAACM,MAAM,IAAI,CAAC,IAAI,CAACpB,WAAW,EAAE;MACjE,IAAI,CAACqB,cAAc,CAACZ,kBAAkB,CAAC;IACzC;IAEA,IAAI,IAAI,CAACT,WAAW,IAAIQ,WAAW,CAACK,QAAQ,KAAKC,kBAAQ,CAACQ,KAAK,EAAE;MAC/D,IAAI,CAACC,aAAa,CAACd,kBAAkB,CAAC;IACxC;IAEA,IAAIO,gBAAgB,EAAE;MACpB;IACF;IAEA,IAAIQ,aAAa,GAAG,KAAK;IAEzB,IAAI,IAAI,CAACxB,WAAW,IAAIY,QAAQ,EAAE;MAChCY,aAAa,GAAG,IAAI,CAACtB,SAAS,CAACuB,QAAQ,GAAGf,UAAU,EAAEC,KAAK,CAAC,IAAI,KAAK;IACvE;IAEA,IAAIC,QAAQ,IAAI,CAACY,aAAa,EAAE;MAC9B,IAAI,CAACD,aAAa,CAACd,kBAAkB,CAAC;IACxC;EACF,CAAC;EAEOY,cAAc,GAAIZ,kBAAuC,IAAW;IAC1E,IAAI,CAACP,SAAS,CAACwB,aAAa,GAAG,CAAC;IAChC,IAAI,CAACxB,SAAS,CAACyB,eAAe,GAAGC,0BAAY,CAACC,SAAS,EAAEpB,kBAAkB,CAAC;IAC5E,IAAI,CAACT,WAAW,GAAG,IAAI;EACzB,CAAC;EAEOuB,aAAa,GAAId,kBAAuC,IAAW;IACzE,IAAI,CAACT,WAAW,GAAG,KAAK;IACxB,IAAI,CAACE,SAAS,CAAC4B,gBAAgB,GAAG,CAAC;IACnC,IAAI,CAAC5B,SAAS,CAACyB,eAAe,GAC5BC,0BAAY,CAACG,SAAS,EACtBtB,kBACF,CAAC;EACH,CAAC;AACH;AAACuB,OAAA,CAAAjC,uBAAA,GAAAA,uBAAA","ignoreList":[]}
@@ -56,6 +56,10 @@ const declareRecorder = (advertisedName, profile, params) => (0, _lepuTransports
56
56
  nameMatch: params.nameMatch ?? (0, _lepuNameMatch.lepuNameMatch)(advertisedName),
57
57
  transport: profile.transport,
58
58
  clockSync: "supported",
59
+ sessionPolicy: {
60
+ minSamples: 1,
61
+ emit: "none"
62
+ },
59
63
  pollCommand: profile.pollCommand,
60
64
  minLengthBytes: profile.heartRateBytes[1] + 1,
61
65
  caseSelectorBytes: [1],
@@ -1 +1 @@
1
- {"version":3,"names":["_core","require","_lepuNameMatch","_lepuTransports","RT_DATA","ER3_RT_DATA","HEART_RATE_UNIT","ER_HEART_RATE_BYTES","declareRecorder","advertisedName","profile","params","lepuDevice","id","toLowerCase","replace","nameMatch","lepuNameMatch","transport","clockSync","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":[]}
1
+ {"version":3,"names":["_core","require","_lepuNameMatch","_lepuTransports","RT_DATA","ER3_RT_DATA","HEART_RATE_UNIT","ER_HEART_RATE_BYTES","declareRecorder","advertisedName","profile","params","lepuDevice","id","toLowerCase","replace","nameMatch","lepuNameMatch","transport","clockSync","sessionPolicy","minSamples","emit","pollCommand","minLengthBytes","heartRateBytes","caseSelectorBytes","cases","selector","toString","padStart","kind","measurementTypeKey","MeasurementTypeKey","heartRate","description","fields","name","byteIndexes","byteOrder","encoding","unit","expectedDeviceTypes","fileTransfer","RAW_ECG_MODEL_NAMES","has","ecgFileDecoder","er1Recorder","exports","er2Recorder","er3Recorder","ER1_MODEL_NAMES","ER2_MODEL_NAMES","Set","ER3_MODEL_NAMES"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.ecg-recorders.ts"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAGA,IAAAC,cAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAF,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAMG,OAAO,GAAG,IAAI;;AAEpB;AACA,MAAMC,WAAW,GAAG,IAAI;AAExB,MAAMC,eAAe,GAAG,KAAK;AAY7B;AACA,MAAMC,mBAAqC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;AAoBpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,eAAe,GAAGA,CACtBC,cAAsB,EACtBC,OAAmB,EACnBC,MAAuB,KAEvB,IAAAC,0BAAU,EAAC;EACTC,EAAE,EAAEF,MAAM,CAACE,EAAE,IAAI,UAAUJ,cAAc,CAACK,WAAW,CAAC,CAAC,CAACC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,EAAE;EACrFC,SAAS,EAAEL,MAAM,CAACK,SAAS,IAAI,IAAAC,4BAAa,EAACR,cAAc,CAAC;EAC5DS,SAAS,EAAER,OAAO,CAACQ,SAAS;EAC5BC,SAAS,EAAE,WAAW;EACtBC,aAAa,EAAE;IAAEC,UAAU,EAAE,CAAC;IAAEC,IAAI,EAAE;EAAO,CAAC;EAC9CC,WAAW,EAAEb,OAAO,CAACa,WAAW;EAChCC,cAAc,EAAEd,OAAO,CAACe,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC;EAC7CC,iBAAiB,EAAE,CAAC,CAAC,CAAC;EACtBC,KAAK,EAAE,CACL;IACEC,QAAQ,EAAElB,OAAO,CAACa,WAAW,CAACM,QAAQ,CAAC,EAAE,CAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;IAC3DC,IAAI,EAAE,QAAQ;IACdC,kBAAkB,EAAEC,wBAAkB,CAACC,SAAS;IAChDC,WAAW,EAAE,kCAAkC;IAC/CC,MAAM,EAAE,CACN;MACEC,IAAI,EAAE,WAAW;MACjBC,WAAW,EAAE,CAAC,GAAG5B,OAAO,CAACe,cAAc,CAAC;MACxCc,SAAS,EAAE,QAAQ;MACnBC,QAAQ,EAAE,MAAM;MAChBC,IAAI,EAAEnC;IACR,CAAC;EAEL,CAAC,CACF;EACD,IAAIK,MAAM,CAAC+B,mBAAmB,GAC1B;IAAEA,mBAAmB,EAAE/B,MAAM,CAAC+B;EAAoB,CAAC,GACnD,CAAC,CAAC,CAAC;EACPC,YAAY,EAAE,KAAK;EACnB,IAAIC,mBAAmB,CAACC,GAAG,CAACpC,cAAc,CAAC,GACvC;IAAEqC,cAAc,EAAE;EAAqB,CAAC,GACxC,CAAC,CAAC;AACR,CAAC,CAAC;;AAEJ;AACA,MAAMC,WAAW,GAAGA,CAClBtC,cAAsB,EACtBE,MAAuB,KAEvBH,eAAe,CACbC,cAAc,EACd;EACEc,WAAW,EAAEnB,OAAO;EACpBqB,cAAc,EAAElB,mBAAmB;EACnCW,SAAS,EAAE;AACb,CAAC,EACDP,MACF,CAAC;;AAEH;AACA;AACA;AACA;AACA;AACA;AALAqC,OAAA,CAAAD,WAAA,GAAAA,WAAA;AAMA,MAAME,WAAW,GAAGA,CAClBxC,cAAsB,EACtBE,MAAuB,KAEvBH,eAAe,CACbC,cAAc,EACd;EACEc,WAAW,EAAEnB,OAAO;EACpBqB,cAAc,EAAElB,mBAAmB;EACnCW,SAAS,EAAE;AACb,CAAC,EACDP,MACF,CAAC;;AAEH;AAAAqC,OAAA,CAAAC,WAAA,GAAAA,WAAA;AACA,MAAMC,WAAW,GAAGA,CAClBzC,cAAsB,EACtBE,MAAuB,KAEvBH,eAAe,CACbC,cAAc,EACd;EACEc,WAAW,EAAElB,WAAW;EACxBoB,cAAc,EAAElB,mBAAmB;EACnCW,SAAS,EAAE;AACb,CAAC,EACDP,MACF,CAAC;;AAEH;AAAAqC,OAAA,CAAAE,WAAA,GAAAA,WAAA;AACA,MAAMC,eAAkC,GAAAH,OAAA,CAAAG,eAAA,GAAG,CACzC,KAAK,EACL,OAAO,EACP,OAAO,EACP,OAAO,EACP,QAAQ,EACR,OAAO,EACP,MAAM,EACN,MAAM,CACP;;AAED;AACA,MAAMC,eAAkC,GAAAJ,OAAA,CAAAI,eAAA,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC;;AAErF;AACA,MAAMR,mBAAmB,GAAG,IAAIS,GAAG,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;;AAEhE;AACA,MAAMC,eAAkC,GAAAN,OAAA,CAAAM,eAAA,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC","ignoreList":[]}
@@ -95,6 +95,10 @@ const lepodMonitor = (advertisedName, params) => (0, _lepuTransports.lepuDevice)
95
95
  nameMatch: params.nameMatch ?? (0, _lepuNameMatch.lepuNameMatch)(advertisedName),
96
96
  fileTransfer: "ecg",
97
97
  clockSync: "supported",
98
+ sessionPolicy: {
99
+ minSamples: 1,
100
+ emit: "mean"
101
+ },
98
102
  pollCommand: RT_DATA,
99
103
  minLengthBytes: MIN_LENGTH_BYTES,
100
104
  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","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":[]}
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","sessionPolicy","minSamples","emit","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":[]}
@@ -7,6 +7,8 @@ exports.viatomOxyIiMonitor = exports.viatomOximeter = exports.VIATOM_OXYII_NAMES
7
7
  var _core = require("@ovok/core");
8
8
  var _lepuNameMatch = require("../lepu/lepu.name-match.js");
9
9
  var _lepuTransports = require("../lepu/lepu.transports.js");
10
+ /* eslint-disable max-lines */
11
+
10
12
  /**
11
13
  * The Viatom pulse oximeters - the O2Ring, Oxyfit, KidsO2 and BabyO2 ranges.
12
14
  *
@@ -88,6 +90,10 @@ const viatomOximeter = (advertisedName, params) => {
88
90
  },
89
91
  setClockBeforeInfo: advertisedName === "O2Ring",
90
92
  writeWithoutResponse: true,
93
+ sessionPolicy: {
94
+ minSamples: 11,
95
+ emit: "mean"
96
+ },
91
97
  pollCommand: RT_PARAM,
92
98
  minLengthBytes: MIN_LENGTH_BYTES,
93
99
  caseSelectorBytes: CASE_SELECTOR_BYTES,
@@ -134,6 +140,10 @@ const viatomOxyIiMonitor = (advertisedName, params = {}) => (0, _lepuTransports.
134
140
  transport: "aw1",
135
141
  protocol: "v2",
136
142
  writeWithoutResponse: true,
143
+ sessionPolicy: {
144
+ minSamples: 11,
145
+ emit: "mean"
146
+ },
137
147
  pollCommand: 0x02,
138
148
  minLengthBytes: OXYII_MIN_LENGTH_BYTES,
139
149
  caseSelectorBytes: OXYII_CASE_SELECTOR_BYTES,