@ovok/native 1.6.42 → 1.6.44

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 (228) hide show
  1. package/lib/commonjs/modules/bt-device/constants/device-instruction-pdfs.js +9 -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-devices.js +61 -0
  4. package/lib/commonjs/modules/bt-device/constants/supported-devices.js.map +1 -1
  5. package/lib/commonjs/modules/bt-management/constants/integrated-devices-map.js +1 -1
  6. package/lib/commonjs/modules/bt-management/constants/integrated-devices-map.js.map +1 -1
  7. package/lib/commonjs/modules/bt-management/services/device-creator.js +16 -1
  8. package/lib/commonjs/modules/bt-management/services/device-creator.js.map +1 -1
  9. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.device-names.js +1 -1
  10. package/lib/commonjs/modules/bt-management/services/devices/lepu/lepu.device-names.js.map +1 -1
  11. package/lib/commonjs/modules/bt-management/services/devices/viatom/ap20.device.js +51 -0
  12. package/lib/commonjs/modules/bt-management/services/devices/viatom/ap20.device.js.map +1 -0
  13. package/lib/commonjs/modules/bt-management/services/devices/viatom/bioland.bgm.device.js +50 -0
  14. package/lib/commonjs/modules/bt-management/services/devices/viatom/bioland.bgm.device.js.map +1 -0
  15. package/lib/commonjs/modules/bt-management/services/devices/viatom/bioland.bgm.protocol.js +115 -0
  16. package/lib/commonjs/modules/bt-management/services/devices/viatom/bioland.bgm.protocol.js.map +1 -0
  17. package/lib/commonjs/modules/bt-management/services/devices/viatom/bioland.bgm.sequencer.js +58 -0
  18. package/lib/commonjs/modules/bt-management/services/devices/viatom/bioland.bgm.sequencer.js.map +1 -0
  19. package/lib/commonjs/modules/bt-management/services/devices/viatom/pc68b.device.js +51 -0
  20. package/lib/commonjs/modules/bt-management/services/devices/viatom/pc68b.device.js.map +1 -0
  21. package/lib/commonjs/modules/bt-management/services/devices/viatom/poctor.m3102.device.js +41 -0
  22. package/lib/commonjs/modules/bt-management/services/devices/viatom/poctor.m3102.device.js.map +1 -0
  23. package/lib/commonjs/modules/bt-management/services/devices/viatom/poctor.m3102.protocol.js +61 -0
  24. package/lib/commonjs/modules/bt-management/services/devices/viatom/poctor.m3102.protocol.js.map +1 -0
  25. package/lib/commonjs/modules/bt-management/services/devices/viatom/poctor.m3102.sequencer.js +41 -0
  26. package/lib/commonjs/modules/bt-management/services/devices/viatom/poctor.m3102.sequencer.js.map +1 -0
  27. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom-aa55.protocol.js +122 -0
  28. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom-aa55.protocol.js.map +1 -0
  29. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom-aa55.sequencer.js +79 -0
  30. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom-aa55.sequencer.js.map +1 -0
  31. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js +9 -1
  32. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js.map +1 -1
  33. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bpm188.device.js +50 -0
  34. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bpm188.device.js.map +1 -0
  35. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bpm188.protocol.js +141 -0
  36. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bpm188.protocol.js.map +1 -0
  37. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bpm188.sequencer.js +76 -0
  38. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.bpm188.sequencer.js.map +1 -0
  39. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.pc100.device.js +50 -0
  40. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.pc100.device.js.map +1 -0
  41. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.pc100.protocol.js +149 -0
  42. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.pc100.protocol.js.map +1 -0
  43. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.pc100.sequencer.js +81 -0
  44. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.pc100.sequencer.js.map +1 -0
  45. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.pc300.device.js +50 -0
  46. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.pc300.device.js.map +1 -0
  47. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.pc300.protocol.js +228 -0
  48. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.pc300.protocol.js.map +1 -0
  49. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.pc300.sequencer.js +122 -0
  50. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.pc300.sequencer.js.map +1 -0
  51. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.vtm20f.frame-reader.js +50 -0
  52. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.vtm20f.frame-reader.js.map +1 -0
  53. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.vtm20f.js +60 -0
  54. package/lib/commonjs/modules/bt-management/services/devices/viatom/viatom.vtm20f.js.map +1 -0
  55. package/lib/commonjs/modules/bt-management/types/integrated-devices.js +8 -0
  56. package/lib/commonjs/modules/bt-management/types/integrated-devices.js.map +1 -1
  57. package/lib/commonjs/modules/bt-management/utils/calculate-crc-8-pc.js +22 -0
  58. package/lib/commonjs/modules/bt-management/utils/calculate-crc-8-pc.js.map +1 -0
  59. package/lib/module/modules/bt-device/constants/device-instruction-pdfs.js +9 -1
  60. package/lib/module/modules/bt-device/constants/device-instruction-pdfs.js.map +1 -1
  61. package/lib/module/modules/bt-device/constants/supported-devices.js +62 -1
  62. package/lib/module/modules/bt-device/constants/supported-devices.js.map +1 -1
  63. package/lib/module/modules/bt-management/constants/integrated-devices-map.js +1 -1
  64. package/lib/module/modules/bt-management/constants/integrated-devices-map.js.map +1 -1
  65. package/lib/module/modules/bt-management/services/device-creator.js +16 -1
  66. package/lib/module/modules/bt-management/services/device-creator.js.map +1 -1
  67. package/lib/module/modules/bt-management/services/devices/lepu/lepu.device-names.js +1 -1
  68. package/lib/module/modules/bt-management/services/devices/lepu/lepu.device-names.js.map +1 -1
  69. package/lib/module/modules/bt-management/services/devices/viatom/ap20.device.js +46 -0
  70. package/lib/module/modules/bt-management/services/devices/viatom/ap20.device.js.map +1 -0
  71. package/lib/module/modules/bt-management/services/devices/viatom/bioland.bgm.device.js +45 -0
  72. package/lib/module/modules/bt-management/services/devices/viatom/bioland.bgm.device.js.map +1 -0
  73. package/lib/module/modules/bt-management/services/devices/viatom/bioland.bgm.protocol.js +106 -0
  74. package/lib/module/modules/bt-management/services/devices/viatom/bioland.bgm.protocol.js.map +1 -0
  75. package/lib/module/modules/bt-management/services/devices/viatom/bioland.bgm.sequencer.js +53 -0
  76. package/lib/module/modules/bt-management/services/devices/viatom/bioland.bgm.sequencer.js.map +1 -0
  77. package/lib/module/modules/bt-management/services/devices/viatom/pc68b.device.js +46 -0
  78. package/lib/module/modules/bt-management/services/devices/viatom/pc68b.device.js.map +1 -0
  79. package/lib/module/modules/bt-management/services/devices/viatom/poctor.m3102.device.js +36 -0
  80. package/lib/module/modules/bt-management/services/devices/viatom/poctor.m3102.device.js.map +1 -0
  81. package/lib/module/modules/bt-management/services/devices/viatom/poctor.m3102.protocol.js +55 -0
  82. package/lib/module/modules/bt-management/services/devices/viatom/poctor.m3102.protocol.js.map +1 -0
  83. package/lib/module/modules/bt-management/services/devices/viatom/poctor.m3102.sequencer.js +36 -0
  84. package/lib/module/modules/bt-management/services/devices/viatom/poctor.m3102.sequencer.js.map +1 -0
  85. package/lib/module/modules/bt-management/services/devices/viatom/viatom-aa55.protocol.js +113 -0
  86. package/lib/module/modules/bt-management/services/devices/viatom/viatom-aa55.protocol.js.map +1 -0
  87. package/lib/module/modules/bt-management/services/devices/viatom/viatom-aa55.sequencer.js +74 -0
  88. package/lib/module/modules/bt-management/services/devices/viatom/viatom-aa55.sequencer.js.map +1 -0
  89. package/lib/module/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js +7 -1
  90. package/lib/module/modules/bt-management/services/devices/viatom/viatom.bp-monitors.js.map +1 -1
  91. package/lib/module/modules/bt-management/services/devices/viatom/viatom.bpm188.device.js +45 -0
  92. package/lib/module/modules/bt-management/services/devices/viatom/viatom.bpm188.device.js.map +1 -0
  93. package/lib/module/modules/bt-management/services/devices/viatom/viatom.bpm188.protocol.js +130 -0
  94. package/lib/module/modules/bt-management/services/devices/viatom/viatom.bpm188.protocol.js.map +1 -0
  95. package/lib/module/modules/bt-management/services/devices/viatom/viatom.bpm188.sequencer.js +71 -0
  96. package/lib/module/modules/bt-management/services/devices/viatom/viatom.bpm188.sequencer.js.map +1 -0
  97. package/lib/module/modules/bt-management/services/devices/viatom/viatom.pc100.device.js +45 -0
  98. package/lib/module/modules/bt-management/services/devices/viatom/viatom.pc100.device.js.map +1 -0
  99. package/lib/module/modules/bt-management/services/devices/viatom/viatom.pc100.protocol.js +136 -0
  100. package/lib/module/modules/bt-management/services/devices/viatom/viatom.pc100.protocol.js.map +1 -0
  101. package/lib/module/modules/bt-management/services/devices/viatom/viatom.pc100.sequencer.js +76 -0
  102. package/lib/module/modules/bt-management/services/devices/viatom/viatom.pc100.sequencer.js.map +1 -0
  103. package/lib/module/modules/bt-management/services/devices/viatom/viatom.pc300.device.js +45 -0
  104. package/lib/module/modules/bt-management/services/devices/viatom/viatom.pc300.device.js.map +1 -0
  105. package/lib/module/modules/bt-management/services/devices/viatom/viatom.pc300.protocol.js +209 -0
  106. package/lib/module/modules/bt-management/services/devices/viatom/viatom.pc300.protocol.js.map +1 -0
  107. package/lib/module/modules/bt-management/services/devices/viatom/viatom.pc300.sequencer.js +117 -0
  108. package/lib/module/modules/bt-management/services/devices/viatom/viatom.pc300.sequencer.js.map +1 -0
  109. package/lib/module/modules/bt-management/services/devices/viatom/viatom.vtm20f.frame-reader.js +45 -0
  110. package/lib/module/modules/bt-management/services/devices/viatom/viatom.vtm20f.frame-reader.js.map +1 -0
  111. package/lib/module/modules/bt-management/services/devices/viatom/viatom.vtm20f.js +56 -0
  112. package/lib/module/modules/bt-management/services/devices/viatom/viatom.vtm20f.js.map +1 -0
  113. package/lib/module/modules/bt-management/types/device-measurement-map.js.map +1 -1
  114. package/lib/module/modules/bt-management/types/integrated-devices.js +8 -0
  115. package/lib/module/modules/bt-management/types/integrated-devices.js.map +1 -1
  116. package/lib/module/modules/bt-management/utils/calculate-crc-8-pc.js +17 -0
  117. package/lib/module/modules/bt-management/utils/calculate-crc-8-pc.js.map +1 -0
  118. package/lib/typescript/commonjs/src/modules/bt-device/constants/device-instruction-pdfs.d.ts.map +1 -1
  119. package/lib/typescript/commonjs/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
  120. package/lib/typescript/commonjs/src/modules/bt-management/constants/integrated-devices-map.d.ts.map +1 -1
  121. package/lib/typescript/commonjs/src/modules/bt-management/services/device-creator.d.ts.map +1 -1
  122. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/lepu/lepu.device-names.d.ts.map +1 -1
  123. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/ap20.device.d.ts +16 -0
  124. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/ap20.device.d.ts.map +1 -0
  125. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/bioland.bgm.device.d.ts +16 -0
  126. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/bioland.bgm.device.d.ts.map +1 -0
  127. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/bioland.bgm.protocol.d.ts +26 -0
  128. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/bioland.bgm.protocol.d.ts.map +1 -0
  129. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/bioland.bgm.sequencer.d.ts +24 -0
  130. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/bioland.bgm.sequencer.d.ts.map +1 -0
  131. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/pc68b.device.d.ts +16 -0
  132. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/pc68b.device.d.ts.map +1 -0
  133. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/poctor.m3102.device.d.ts +15 -0
  134. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/poctor.m3102.device.d.ts.map +1 -0
  135. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/poctor.m3102.protocol.d.ts +16 -0
  136. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/poctor.m3102.protocol.d.ts.map +1 -0
  137. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/poctor.m3102.sequencer.d.ts +17 -0
  138. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/poctor.m3102.sequencer.d.ts.map +1 -0
  139. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom-aa55.protocol.d.ts +33 -0
  140. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom-aa55.protocol.d.ts.map +1 -0
  141. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom-aa55.sequencer.d.ts +23 -0
  142. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom-aa55.sequencer.d.ts.map +1 -0
  143. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.bp-monitors.d.ts +5 -1
  144. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.bp-monitors.d.ts.map +1 -1
  145. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.bpm188.device.d.ts +16 -0
  146. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.bpm188.device.d.ts.map +1 -0
  147. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.bpm188.protocol.d.ts +36 -0
  148. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.bpm188.protocol.d.ts.map +1 -0
  149. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.bpm188.sequencer.d.ts +26 -0
  150. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.bpm188.sequencer.d.ts.map +1 -0
  151. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.pc100.device.d.ts +16 -0
  152. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.pc100.device.d.ts.map +1 -0
  153. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.pc100.protocol.d.ts +43 -0
  154. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.pc100.protocol.d.ts.map +1 -0
  155. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.pc100.sequencer.d.ts +26 -0
  156. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.pc100.sequencer.d.ts.map +1 -0
  157. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.pc300.device.d.ts +16 -0
  158. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.pc300.device.d.ts.map +1 -0
  159. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.pc300.protocol.d.ts +73 -0
  160. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.pc300.protocol.d.ts.map +1 -0
  161. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.pc300.sequencer.d.ts +25 -0
  162. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.pc300.sequencer.d.ts.map +1 -0
  163. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.vtm20f.d.ts +8 -0
  164. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.vtm20f.d.ts.map +1 -0
  165. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.vtm20f.frame-reader.d.ts +7 -0
  166. package/lib/typescript/commonjs/src/modules/bt-management/services/devices/viatom/viatom.vtm20f.frame-reader.d.ts.map +1 -0
  167. package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts +8 -0
  168. package/lib/typescript/commonjs/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
  169. package/lib/typescript/commonjs/src/modules/bt-management/types/integrated-devices.d.ts +9 -1
  170. package/lib/typescript/commonjs/src/modules/bt-management/types/integrated-devices.d.ts.map +1 -1
  171. package/lib/typescript/commonjs/src/modules/bt-management/utils/calculate-crc-8-pc.d.ts +3 -0
  172. package/lib/typescript/commonjs/src/modules/bt-management/utils/calculate-crc-8-pc.d.ts.map +1 -0
  173. package/lib/typescript/module/src/modules/bt-device/constants/device-instruction-pdfs.d.ts.map +1 -1
  174. package/lib/typescript/module/src/modules/bt-device/constants/supported-devices.d.ts.map +1 -1
  175. package/lib/typescript/module/src/modules/bt-management/constants/integrated-devices-map.d.ts.map +1 -1
  176. package/lib/typescript/module/src/modules/bt-management/services/device-creator.d.ts.map +1 -1
  177. package/lib/typescript/module/src/modules/bt-management/services/devices/lepu/lepu.device-names.d.ts.map +1 -1
  178. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/ap20.device.d.ts +16 -0
  179. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/ap20.device.d.ts.map +1 -0
  180. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/bioland.bgm.device.d.ts +16 -0
  181. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/bioland.bgm.device.d.ts.map +1 -0
  182. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/bioland.bgm.protocol.d.ts +26 -0
  183. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/bioland.bgm.protocol.d.ts.map +1 -0
  184. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/bioland.bgm.sequencer.d.ts +24 -0
  185. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/bioland.bgm.sequencer.d.ts.map +1 -0
  186. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/pc68b.device.d.ts +16 -0
  187. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/pc68b.device.d.ts.map +1 -0
  188. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/poctor.m3102.device.d.ts +15 -0
  189. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/poctor.m3102.device.d.ts.map +1 -0
  190. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/poctor.m3102.protocol.d.ts +16 -0
  191. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/poctor.m3102.protocol.d.ts.map +1 -0
  192. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/poctor.m3102.sequencer.d.ts +17 -0
  193. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/poctor.m3102.sequencer.d.ts.map +1 -0
  194. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom-aa55.protocol.d.ts +33 -0
  195. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom-aa55.protocol.d.ts.map +1 -0
  196. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom-aa55.sequencer.d.ts +23 -0
  197. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom-aa55.sequencer.d.ts.map +1 -0
  198. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.bp-monitors.d.ts +5 -1
  199. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.bp-monitors.d.ts.map +1 -1
  200. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.bpm188.device.d.ts +16 -0
  201. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.bpm188.device.d.ts.map +1 -0
  202. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.bpm188.protocol.d.ts +36 -0
  203. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.bpm188.protocol.d.ts.map +1 -0
  204. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.bpm188.sequencer.d.ts +26 -0
  205. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.bpm188.sequencer.d.ts.map +1 -0
  206. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.pc100.device.d.ts +16 -0
  207. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.pc100.device.d.ts.map +1 -0
  208. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.pc100.protocol.d.ts +43 -0
  209. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.pc100.protocol.d.ts.map +1 -0
  210. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.pc100.sequencer.d.ts +26 -0
  211. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.pc100.sequencer.d.ts.map +1 -0
  212. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.pc300.device.d.ts +16 -0
  213. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.pc300.device.d.ts.map +1 -0
  214. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.pc300.protocol.d.ts +73 -0
  215. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.pc300.protocol.d.ts.map +1 -0
  216. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.pc300.sequencer.d.ts +25 -0
  217. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.pc300.sequencer.d.ts.map +1 -0
  218. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.vtm20f.d.ts +8 -0
  219. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.vtm20f.d.ts.map +1 -0
  220. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.vtm20f.frame-reader.d.ts +7 -0
  221. package/lib/typescript/module/src/modules/bt-management/services/devices/viatom/viatom.vtm20f.frame-reader.d.ts.map +1 -0
  222. package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts +8 -0
  223. package/lib/typescript/module/src/modules/bt-management/types/device-measurement-map.d.ts.map +1 -1
  224. package/lib/typescript/module/src/modules/bt-management/types/integrated-devices.d.ts +9 -1
  225. package/lib/typescript/module/src/modules/bt-management/types/integrated-devices.d.ts.map +1 -1
  226. package/lib/typescript/module/src/modules/bt-management/utils/calculate-crc-8-pc.d.ts +3 -0
  227. package/lib/typescript/module/src/modules/bt-management/utils/calculate-crc-8-pc.d.ts.map +1 -0
  228. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_frameReadStatus","require","_hexToByte","BIOLAND_SERVICE","exports","BIOLAND_WRITE","BIOLAND_NOTIFY","BiolandCommand","info","data","byte","value","toString","padStart","checksum","frame","sum","slice","reduce","total","hexToByte","command","commandType","now","Date","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","length","biolandGetInfo","biolandGetData","decodeBiolandResponse","bytes","undefined","at","content","parseBiolandGlucoseResult","year","month","day","hour","minute","bloodGlucose","recordedAt","BiolandFrameReader","readFrame","buffer","start","indexOf","status","FrameReadStatus","INCOMPLETE","consumedBytes","Math","max","CORRUPT","COMPLETE"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/bioland.bgm.protocol.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,58 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.BiolandBgmSequencer = void 0;
7
+ var _core = require("@ovok/core");
8
+ var _caseType = require("../../../types/case-type.js");
9
+ var _biolandBgmProtocol = require("./bioland.bgm.protocol.js");
10
+ const command = (write, frame) => ({
11
+ ...write,
12
+ frame,
13
+ withoutResponse: true
14
+ });
15
+
16
+ /** Reads the timestamped glucose result from a Bioland BGM. */
17
+ class BiolandBgmSequencer {
18
+ phase = "info";
19
+ constructor(params) {
20
+ this.params = params;
21
+ }
22
+ initialCommands = () => [this.write((0, _biolandBgmProtocol.biolandGetInfo)(this.params.now?.()))];
23
+ isHistoryTransfer = () => true;
24
+ isNormalDisconnect = () => this.phase === "done";
25
+ commandTimeoutMs = () => this.phase === "done" ? undefined : 5_000;
26
+ onCommandTimeout = () => {
27
+ this.phase = "done";
28
+ return {
29
+ terminal: true
30
+ };
31
+ };
32
+ nextCommand = frame => {
33
+ const response = (0, _biolandBgmProtocol.decodeBiolandResponse)(frame);
34
+ if (!response || this.phase === "done") {
35
+ return undefined;
36
+ }
37
+ if (this.phase === "info" && response.command === _biolandBgmProtocol.BiolandCommand.info) {
38
+ this.phase = "data";
39
+ return [this.write((0, _biolandBgmProtocol.biolandGetData)(this.params.now?.()))];
40
+ }
41
+ if (this.phase === "data" && response.command === _biolandBgmProtocol.BiolandCommand.data) {
42
+ const result = (0, _biolandBgmProtocol.parseBiolandGlucoseResult)(response.content);
43
+ if (result) {
44
+ this.params.onResult({
45
+ caseType: _caseType.CaseType.RESULT,
46
+ measurementTypeKey: _core.MeasurementTypeKey.bloodGlucose,
47
+ bloodGlucose: result.bloodGlucose,
48
+ recordedAt: result.recordedAt
49
+ });
50
+ }
51
+ this.phase = "done";
52
+ }
53
+ return undefined;
54
+ };
55
+ write = frame => command(this.params.write, frame);
56
+ }
57
+ exports.BiolandBgmSequencer = BiolandBgmSequencer;
58
+ //# sourceMappingURL=bioland.bgm.sequencer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_core","require","_caseType","_biolandBgmProtocol","command","write","frame","withoutResponse","BiolandBgmSequencer","phase","constructor","params","initialCommands","biolandGetInfo","now","isHistoryTransfer","isNormalDisconnect","commandTimeoutMs","undefined","onCommandTimeout","terminal","nextCommand","response","decodeBiolandResponse","BiolandCommand","info","biolandGetData","data","result","parseBiolandGlucoseResult","content","onResult","caseType","CaseType","RESULT","measurementTypeKey","MeasurementTypeKey","bloodGlucose","recordedAt","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/bioland.bgm.sequencer.ts"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAD,OAAA;AAQA,IAAAE,mBAAA,GAAAF,OAAA;AAgBA,MAAMG,OAAO,GAAGA,CACdC,KAAmC,EACnCC,KAAwB,MACL;EAAE,GAAGD,KAAK;EAAEC,KAAK;EAAEC,eAAe,EAAE;AAAK,CAAC,CAAC;;AAEhE;AACO,MAAMC,mBAAmB,CAA6B;EACnDC,KAAK,GAA6B,MAAM;EAEzCC,WAAWA,CAAkBC,MAA8B,EAAE;IAAA,KAAhCA,MAA8B,GAA9BA,MAA8B;EAAG;EAE9DC,eAAe,GAAGA,CAAA,KAAgC,CACvD,IAAI,CAACP,KAAK,CAAC,IAAAQ,kCAAc,EAAC,IAAI,CAACF,MAAM,CAACG,GAAG,GAAG,CAAC,CAAC,CAAC,CAChD;EAEMC,iBAAiB,GAAGA,CAAA,KAAe,IAAI;EAEvCC,kBAAkB,GAAGA,CAAA,KAAe,IAAI,CAACP,KAAK,KAAK,MAAM;EAEzDQ,gBAAgB,GAAGA,CAAA,KACxB,IAAI,CAACR,KAAK,KAAK,MAAM,GAAGS,SAAS,GAAG,KAAK;EAEpCC,gBAAgB,GAAGA,CAAA,KAA4B;IACpD,IAAI,CAACV,KAAK,GAAG,MAAM;IAEnB,OAAO;MAAEW,QAAQ,EAAE;IAAK,CAAC;EAC3B,CAAC;EAEMC,WAAW,GAChBf,KAAwB,IACiB;IACzC,MAAMgB,QAAQ,GAAG,IAAAC,yCAAqB,EAACjB,KAAK,CAAC;IAE7C,IAAI,CAACgB,QAAQ,IAAI,IAAI,CAACb,KAAK,KAAK,MAAM,EAAE;MACtC,OAAOS,SAAS;IAClB;IAEA,IAAI,IAAI,CAACT,KAAK,KAAK,MAAM,IAAIa,QAAQ,CAAClB,OAAO,KAAKoB,kCAAc,CAACC,IAAI,EAAE;MACrE,IAAI,CAAChB,KAAK,GAAG,MAAM;MAEnB,OAAO,CAAC,IAAI,CAACJ,KAAK,CAAC,IAAAqB,kCAAc,EAAC,IAAI,CAACf,MAAM,CAACG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IAC1D;IAEA,IAAI,IAAI,CAACL,KAAK,KAAK,MAAM,IAAIa,QAAQ,CAAClB,OAAO,KAAKoB,kCAAc,CAACG,IAAI,EAAE;MACrE,MAAMC,MAAM,GAAG,IAAAC,6CAAyB,EAACP,QAAQ,CAACQ,OAAO,CAAC;MAE1D,IAAIF,MAAM,EAAE;QACV,IAAI,CAACjB,MAAM,CAACoB,QAAQ,CAAC;UACnBC,QAAQ,EAAEC,kBAAQ,CAACC,MAAM;UACzBC,kBAAkB,EAAEC,wBAAkB,CAACC,YAAY;UACnDA,YAAY,EAAET,MAAM,CAACS,YAAY;UACjCC,UAAU,EAAEV,MAAM,CAACU;QACrB,CAAC,CAAC;MACJ;MAEA,IAAI,CAAC7B,KAAK,GAAG,MAAM;IACrB;IAEA,OAAOS,SAAS;EAClB,CAAC;EAEOb,KAAK,GAAIC,KAAwB,IACvCF,OAAO,CAAC,IAAI,CAACO,MAAM,CAACN,KAAK,EAAEC,KAAK,CAAC;AACrC;AAACiC,OAAA,CAAA/B,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.pc68bMainServices = exports.Pc68bDevice = void 0;
7
+ var _btManagedDevice = require("../bt-managed-device.js");
8
+ var _viatomAa55Protocol = require("./viatom-aa55.protocol.js");
9
+ var _viatomAa55Sequencer = require("./viatom-aa55.sequencer.js");
10
+ /* eslint-disable import/group-exports */
11
+
12
+ const acceptNothing = {
13
+ caseValuePosition: [],
14
+ cases: []
15
+ };
16
+ const pc68bMainServices = exports.pc68bMainServices = [{
17
+ uuid: _viatomAa55Protocol.VIATOM_AA55_SERVICE,
18
+ monitorUuids: [{
19
+ uuid: _viatomAa55Protocol.VIATOM_AA55_NOTIFY,
20
+ parsingModel: acceptNothing
21
+ }],
22
+ writeUuid: {
23
+ uuid: _viatomAa55Protocol.VIATOM_AA55_WRITE,
24
+ mainCommandUuid: "aa55"
25
+ }
26
+ }];
27
+
28
+ /** Viatom PC-68B realtime oximeter driver. */
29
+ class Pc68bDevice extends _btManagedDevice.BTManagedDevice {
30
+ mainServices = pc68bMainServices;
31
+ stuckDataTimeout = 60_000;
32
+ onStreamStart = undefined;
33
+ preferredMtu = 247;
34
+ constructor(device, params) {
35
+ super(device, params);
36
+ this.frameReader = new _viatomAa55Protocol.ViatomAa55FrameReader();
37
+ this.createCommandSequencer = () => new _viatomAa55Sequencer.ViatomAa55Sequencer({
38
+ write: {
39
+ serviceUuid: _viatomAa55Protocol.VIATOM_AA55_SERVICE,
40
+ characteristicUuid: _viatomAa55Protocol.VIATOM_AA55_WRITE
41
+ },
42
+ perfusionScale: 0.1,
43
+ onResult: result => this.onResult?.(result)
44
+ });
45
+ }
46
+ handleSuccessResult() {
47
+ return;
48
+ }
49
+ }
50
+ exports.Pc68bDevice = Pc68bDevice;
51
+ //# sourceMappingURL=pc68b.device.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_btManagedDevice","require","_viatomAa55Protocol","_viatomAa55Sequencer","acceptNothing","caseValuePosition","cases","pc68bMainServices","exports","uuid","VIATOM_AA55_SERVICE","monitorUuids","VIATOM_AA55_NOTIFY","parsingModel","writeUuid","VIATOM_AA55_WRITE","mainCommandUuid","Pc68bDevice","BTManagedDevice","mainServices","stuckDataTimeout","onStreamStart","undefined","preferredMtu","constructor","device","params","frameReader","ViatomAa55FrameReader","createCommandSequencer","ViatomAa55Sequencer","write","serviceUuid","characteristicUuid","perfusionScale","onResult","result","handleSuccessResult"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/pc68b.device.ts"],"mappings":";;;;;;AASA,IAAAA,gBAAA,GAAAC,OAAA;AAEA,IAAAC,mBAAA,GAAAD,OAAA;AAMA,IAAAE,oBAAA,GAAAF,OAAA;AAjBA;;AAmBA,MAAMG,aAAa,GAAG;EAAEC,iBAAiB,EAAE,EAAE;EAAEC,KAAK,EAAE;AAAG,CAAC;AAEnD,MAAMC,iBAA6B,GAAAC,OAAA,CAAAD,iBAAA,GAAG,CAC3C;EACEE,IAAI,EAAEC,uCAAmB;EACzBC,YAAY,EAAE,CAAC;IAAEF,IAAI,EAAEG,sCAAkB;IAAEC,YAAY,EAAET;EAAc,CAAC,CAAC;EACzEU,SAAS,EAAE;IACTL,IAAI,EAAEM,qCAAiB;IACvBC,eAAe,EAAE;EACnB;AACF,CAAC,CACF;;AAED;AACO,MAAMC,WAAW,SAASC,gCAAe,CAA0B;EAC9DC,YAAY,GAAGZ,iBAAiB;EAChCa,gBAAgB,GAAG,MAAM;EACzBC,aAAa,GAAGC,SAAS;EAChBC,YAAY,GAAG,GAAG;EAE9BC,WAAWA,CAChBC,MAAc,EACdC,MAAmD,EACnD;IACA,KAAK,CAACD,MAAM,EAAEC,MAAM,CAAC;IACrB,IAAI,CAACC,WAAW,GAAG,IAAIC,yCAAqB,CAAC,CAAC;IAC9C,IAAI,CAACC,sBAAsB,GAAG,MAC5B,IAAIC,wCAAmB,CAAC;MACtBC,KAAK,EAAE;QACLC,WAAW,EAAEtB,uCAAmB;QAChCuB,kBAAkB,EAAElB;MACtB,CAAC;MACDmB,cAAc,EAAE,GAAG;MACnBC,QAAQ,EAAGC,MAAM,IACf,IAAI,CAACD,QAAQ,GACXC,MAGF;IACJ,CAAC,CAAC;EACN;EAEUC,mBAAmBA,CAAA,EAAS;IACpC;EACF;AACF;AAAC7B,OAAA,CAAAS,WAAA,GAAAA,WAAA","ignoreList":[]}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.poctorM3102MainServices = exports.PoctorM3102Device = void 0;
7
+ var _btManagedDevice = require("../bt-managed-device.js");
8
+ var _poctorM3102Protocol = require("./poctor.m3102.protocol.js");
9
+ var _poctorM3102Sequencer = require("./poctor.m3102.sequencer.js");
10
+ /* eslint-disable import/group-exports */
11
+
12
+ const acceptNothing = {
13
+ caseValuePosition: [],
14
+ cases: []
15
+ };
16
+ const poctorM3102MainServices = exports.poctorM3102MainServices = [{
17
+ uuid: _poctorM3102Protocol.POCTOR_SERVICE,
18
+ monitorUuids: [{
19
+ uuid: _poctorM3102Protocol.POCTOR_NOTIFY,
20
+ parsingModel: acceptNothing
21
+ }]
22
+ }];
23
+
24
+ /** Poctor M3102 unsolicited glucose and uric-acid records. */
25
+ class PoctorM3102Device extends _btManagedDevice.BTManagedDevice {
26
+ mainServices = poctorM3102MainServices;
27
+ stuckDataTimeout = 60_000;
28
+ onStreamStart = undefined;
29
+ constructor(device, params) {
30
+ super(device, params);
31
+ this.frameReader = new _poctorM3102Protocol.PoctorFrameReader();
32
+ this.createCommandSequencer = () => new _poctorM3102Sequencer.PoctorSequencer({
33
+ onResult: result => this.onResult?.(result)
34
+ });
35
+ }
36
+ handleSuccessResult() {
37
+ return;
38
+ }
39
+ }
40
+ exports.PoctorM3102Device = PoctorM3102Device;
41
+ //# sourceMappingURL=poctor.m3102.device.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_btManagedDevice","require","_poctorM3102Protocol","_poctorM3102Sequencer","acceptNothing","caseValuePosition","cases","poctorM3102MainServices","exports","uuid","POCTOR_SERVICE","monitorUuids","POCTOR_NOTIFY","parsingModel","PoctorM3102Device","BTManagedDevice","mainServices","stuckDataTimeout","onStreamStart","undefined","constructor","device","params","frameReader","PoctorFrameReader","createCommandSequencer","PoctorSequencer","onResult","result","handleSuccessResult"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/poctor.m3102.device.ts"],"mappings":";;;;;;AASA,IAAAA,gBAAA,GAAAC,OAAA;AAEA,IAAAC,oBAAA,GAAAD,OAAA;AAKA,IAAAE,qBAAA,GAAAF,OAAA;AAhBA;;AAkBA,MAAMG,aAAa,GAAG;EAAEC,iBAAiB,EAAE,EAAE;EAAEC,KAAK,EAAE;AAAG,CAAC;AAEnD,MAAMC,uBAAmC,GAAAC,OAAA,CAAAD,uBAAA,GAAG,CACjD;EACEE,IAAI,EAAEC,mCAAc;EACpBC,YAAY,EAAE,CAAC;IAAEF,IAAI,EAAEG,kCAAa;IAAEC,YAAY,EAAET;EAAc,CAAC;AACrE,CAAC,CACF;;AAED;AACO,MAAMU,iBAAiB,SAASC,gCAAe,CAAiC;EAC3EC,YAAY,GAAGT,uBAAuB;EACtCU,gBAAgB,GAAG,MAAM;EACzBC,aAAa,GAAGC,SAAS;EAE5BC,WAAWA,CAChBC,MAAc,EACdC,MAA0D,EAC1D;IACA,KAAK,CAACD,MAAM,EAAEC,MAAM,CAAC;IACrB,IAAI,CAACC,WAAW,GAAG,IAAIC,sCAAiB,CAAC,CAAC;IAC1C,IAAI,CAACC,sBAAsB,GAAG,MAC5B,IAAIC,qCAAe,CAAC;MAClBC,QAAQ,EAAGC,MAAM,IACf,IAAI,CAACD,QAAQ,GACXC,MAGF;IACJ,CAAC,CAAC;EACN;EAEUC,mBAAmBA,CAAA,EAAS;IACpC;EACF;AACF;AAACrB,OAAA,CAAAM,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.parsePoctorResult = exports.PoctorFrameReader = exports.POCTOR_WRITE = exports.POCTOR_SERVICE = exports.POCTOR_NOTIFY = void 0;
7
+ var _frameReadStatus = require("../../../types/frame-read-status.js");
8
+ var _hexToByte = require("../../../utils/hex-to-byte.js");
9
+ /* eslint-disable import/group-exports */
10
+
11
+ const POCTOR_SERVICE = exports.POCTOR_SERVICE = "00010203-0405-0607-0809-0a0b0c0d1910";
12
+ const POCTOR_WRITE = exports.POCTOR_WRITE = "00010203-0405-0607-0809-0a0b0c0d2b11";
13
+ const POCTOR_NOTIFY = exports.POCTOR_NOTIFY = "00010203-0405-0607-0809-0a0b0c0d2b10";
14
+ const fromHex = value => (0, _hexToByte.hexToByte)(value);
15
+ const fromAscii = bytes => bytes.map(value => String.fromCharCode(fromHex(value))).join("");
16
+ const parsePoctorResult = frame => {
17
+ const text = fromAscii(frame).trim();
18
+ const fields = text.split(",");
19
+ if (fields.length < 7) {
20
+ return undefined;
21
+ }
22
+ const type = Number.parseInt(fields[0] ?? "", 10);
23
+ const yearValue = Number.parseInt(fields[1] ?? "", 10);
24
+ const month = Number.parseInt(fields[2] ?? "", 10);
25
+ const day = Number.parseInt(fields[3] ?? "", 10);
26
+ const hour = Number.parseInt(fields[4] ?? "", 10);
27
+ const minute = Number.parseInt(fields[5] ?? "", 10);
28
+ const rawValue = Number.parseInt(fields[6] ?? "", 10);
29
+ const year = yearValue < 100 ? yearValue + 2_000 : yearValue;
30
+ const recordedAt = new Date(year, month - 1, day, hour, minute);
31
+ if (type !== 0 && type !== 1 || !Number.isFinite(rawValue) || month < 1 || month > 12 || day < 1 || day > 31 || hour < 0 || hour > 23 || minute < 0 || minute > 59 || recordedAt.getFullYear() !== year || recordedAt.getMonth() !== month - 1 || recordedAt.getDate() !== day) {
32
+ return undefined;
33
+ }
34
+ return {
35
+ type: type,
36
+ value: type === 0 ? rawValue / 10 : rawValue,
37
+ recordedAt
38
+ };
39
+ };
40
+
41
+ /** Reads CRLF-terminated Poctor M3102 ASCII records. */
42
+ exports.parsePoctorResult = parsePoctorResult;
43
+ class PoctorFrameReader {
44
+ readFrame(buffer) {
45
+ const carriageReturn = buffer.indexOf("0d");
46
+ if (carriageReturn < 0 || buffer[carriageReturn + 1] !== "0a") {
47
+ return {
48
+ status: _frameReadStatus.FrameReadStatus.INCOMPLETE,
49
+ consumedBytes: 0
50
+ };
51
+ }
52
+ const end = carriageReturn + 2;
53
+ return {
54
+ status: _frameReadStatus.FrameReadStatus.COMPLETE,
55
+ consumedBytes: end,
56
+ frame: buffer.slice(0, end)
57
+ };
58
+ }
59
+ }
60
+ exports.PoctorFrameReader = PoctorFrameReader;
61
+ //# sourceMappingURL=poctor.m3102.protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_frameReadStatus","require","_hexToByte","POCTOR_SERVICE","exports","POCTOR_WRITE","POCTOR_NOTIFY","fromHex","value","hexToByte","fromAscii","bytes","map","String","fromCharCode","join","parsePoctorResult","frame","text","trim","fields","split","length","undefined","type","Number","parseInt","yearValue","month","day","hour","minute","rawValue","year","recordedAt","Date","isFinite","getFullYear","getMonth","getDate","PoctorFrameReader","readFrame","buffer","carriageReturn","indexOf","status","FrameReadStatus","INCOMPLETE","consumedBytes","end","COMPLETE","slice"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/poctor.m3102.protocol.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.PoctorSequencer = void 0;
7
+ var _core = require("@ovok/core");
8
+ var _caseType = require("../../../types/case-type.js");
9
+ var _poctorM3102Protocol = require("./poctor.m3102.protocol.js");
10
+ /** Listens for Poctor's unsolicited CRLF records; it has no safe poll command. */
11
+ class PoctorSequencer {
12
+ constructor(params) {
13
+ this.params = params;
14
+ }
15
+ initialCommands = () => [];
16
+ nextCommand = frame => {
17
+ const result = (0, _poctorM3102Protocol.parsePoctorResult)(frame);
18
+ if (!result) {
19
+ return undefined;
20
+ }
21
+ if (result.type === 0) {
22
+ this.params.onResult({
23
+ caseType: _caseType.CaseType.RESULT,
24
+ measurementTypeKey: _core.MeasurementTypeKey.bloodGlucose,
25
+ bloodGlucose: result.value,
26
+ recordedAt: result.recordedAt
27
+ });
28
+ } else {
29
+ this.params.onResult({
30
+ caseType: _caseType.CaseType.RESULT,
31
+ measurementTypeKey: _core.MeasurementTypeKey.uricAcid,
32
+ uro: result.value,
33
+ urineValues: [],
34
+ recordedAt: result.recordedAt
35
+ });
36
+ }
37
+ return undefined;
38
+ };
39
+ }
40
+ exports.PoctorSequencer = PoctorSequencer;
41
+ //# sourceMappingURL=poctor.m3102.sequencer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_core","require","_caseType","_poctorM3102Protocol","PoctorSequencer","constructor","params","initialCommands","nextCommand","frame","result","parsePoctorResult","undefined","type","onResult","caseType","CaseType","RESULT","measurementTypeKey","MeasurementTypeKey","bloodGlucose","value","recordedAt","uricAcid","uro","urineValues","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/poctor.m3102.sequencer.ts"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAMA,IAAAC,SAAA,GAAAD,OAAA;AAKA,IAAAE,oBAAA,GAAAF,OAAA;AAQA;AACO,MAAMG,eAAe,CAA6B;EAChDC,WAAWA,CAAkBC,MAA6B,EAAE;IAAA,KAA/BA,MAA6B,GAA7BA,MAA6B;EAAG;EAE7DC,eAAe,GAAGA,CAAA,KAAgC,EAAE;EAEpDC,WAAW,GAAIC,KAAwB,IAAgB;IAC5D,MAAMC,MAAM,GAAG,IAAAC,sCAAiB,EAACF,KAAK,CAAC;IAEvC,IAAI,CAACC,MAAM,EAAE;MACX,OAAOE,SAAS;IAClB;IAEA,IAAIF,MAAM,CAACG,IAAI,KAAK,CAAC,EAAE;MACrB,IAAI,CAACP,MAAM,CAACQ,QAAQ,CAAC;QACnBC,QAAQ,EAAEC,kBAAQ,CAACC,MAAM;QACzBC,kBAAkB,EAAEC,wBAAkB,CAACC,YAAY;QACnDA,YAAY,EAAEV,MAAM,CAACW,KAAK;QAC1BC,UAAU,EAAEZ,MAAM,CAACY;MACrB,CAAC,CAAC;IACJ,CAAC,MAAM;MACL,IAAI,CAAChB,MAAM,CAACQ,QAAQ,CAAC;QACnBC,QAAQ,EAAEC,kBAAQ,CAACC,MAAM;QACzBC,kBAAkB,EAAEC,wBAAkB,CAACI,QAAQ;QAC/CC,GAAG,EAAEd,MAAM,CAACW,KAAK;QACjBI,WAAW,EAAE,EAAE;QACfH,UAAU,EAAEZ,MAAM,CAACY;MACrB,CAAC,CAAC;IACJ;IAEA,OAAOV,SAAS;EAClB,CAAC;AACH;AAACc,OAAA,CAAAtB,eAAA,GAAAA,eAAA","ignoreList":[]}
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.viatomAa55SetTime = exports.viatomAa55Command = exports.parseViatomAa55OximeterReading = exports.decodeViatomAa55Response = exports.ViatomAa55FrameReader = exports.VIATOM_AA55_WRITE = exports.VIATOM_AA55_SERVICE = exports.VIATOM_AA55_NOTIFY = void 0;
7
+ var _frameReadStatus = require("../../../types/frame-read-status.js");
8
+ var _calculateCrc8Pc = require("../../../utils/calculate-crc-8-pc.js");
9
+ var _hexToByte = require("../../../utils/hex-to-byte.js");
10
+ /* eslint-disable import/group-exports */
11
+
12
+ const VIATOM_AA55_SERVICE = exports.VIATOM_AA55_SERVICE = "14839ac4-7d7e-415c-9a42-167340cf2339";
13
+ const VIATOM_AA55_WRITE = exports.VIATOM_AA55_WRITE = "8b00ace7-eb0b-49b0-bbe9-9aee0a26e1a3";
14
+ const VIATOM_AA55_NOTIFY = exports.VIATOM_AA55_NOTIFY = "0734594a-a8e7-4b1a-a6b1-cd5243059a57";
15
+ const byte = value => (value & 0xff).toString(16).padStart(2, "0");
16
+ const littleEndian32 = value => [byte(value), byte(value >>> 8), byte(value >>> 16), byte(value >>> 24)];
17
+
18
+ /**
19
+ * Builds the AA 55 command used by the Viatom AP-20 and PC-68B interfaces.
20
+ * The length byte includes the command and checksum, as in the vendor library.
21
+ */
22
+ const viatomAa55Command = (token, command, payload = []) => {
23
+ const frame = ["aa", "55", byte(token), byte(payload.length + 2), byte(command), ...payload, "00"];
24
+ frame[frame.length - 1] = byte((0, _calculateCrc8Pc.calculateCrc8Pc)(frame));
25
+ return frame;
26
+ };
27
+
28
+ /** The vendor's TimeData: local epoch and timezone offset, both little-endian. */
29
+ exports.viatomAa55Command = viatomAa55Command;
30
+ const viatomAa55SetTime = (now = new Date()) => {
31
+ const offsetSeconds = -now.getTimezoneOffset() * 60;
32
+ const localEpochSeconds = Math.floor(now.getTime() / 1000) - offsetSeconds;
33
+ return viatomAa55Command(0x0f, 0x87, [...littleEndian32(localEpochSeconds), ...littleEndian32(offsetSeconds), "00", "00"]);
34
+ };
35
+ exports.viatomAa55SetTime = viatomAa55SetTime;
36
+ const decodeViatomAa55Response = frame => {
37
+ if ((0, _hexToByte.hexToByte)(frame[0] ?? "00") !== 0xaa || (0, _hexToByte.hexToByte)(frame[1] ?? "00") !== 0x55) {
38
+ return undefined;
39
+ }
40
+ const length = (0, _hexToByte.hexToByte)(frame[3] ?? "00");
41
+ if (length < 2 || frame.length !== length + 4) {
42
+ return undefined;
43
+ }
44
+ if ((0, _calculateCrc8Pc.calculateCrc8Pc)(frame) !== (0, _hexToByte.hexToByte)(frame.at(-1) ?? "00")) {
45
+ return undefined;
46
+ }
47
+ return {
48
+ token: (0, _hexToByte.hexToByte)(frame[2] ?? "00"),
49
+ type: (0, _hexToByte.hexToByte)(frame[4] ?? "00"),
50
+ content: frame.slice(5, frame.length - 1)
51
+ };
52
+ };
53
+ exports.decodeViatomAa55Response = decodeViatomAa55Response;
54
+ /** Decodes the six-byte realtime parameter payload shared by both products. */
55
+ const parseViatomAa55OximeterReading = (content, perfusionScale) => {
56
+ if (content.length < 6) {
57
+ return undefined;
58
+ }
59
+ const flags = (0, _hexToByte.hexToByte)(content[4] ?? "00");
60
+ return {
61
+ bloodOxygen: (0, _hexToByte.hexToByte)(content[0] ?? "00"),
62
+ pulseRate: (0, _hexToByte.hexToByte)(content[1] ?? "00") | (0, _hexToByte.hexToByte)(content[2] ?? "00") << 8,
63
+ perfusionIndex: (0, _hexToByte.hexToByte)(content[3] ?? "00") * perfusionScale,
64
+ probeOff: (flags & 0x02) !== 0,
65
+ pulseSearching: (flags & 0x04) !== 0
66
+ };
67
+ };
68
+
69
+ /** Reads split and concatenated AA55 frames with the vendor CRC-8/PC checksum. */
70
+ exports.parseViatomAa55OximeterReading = parseViatomAa55OximeterReading;
71
+ class ViatomAa55FrameReader {
72
+ readFrame(buffer) {
73
+ const start = this.findHeader(buffer);
74
+ if (start < 0) {
75
+ return {
76
+ status: _frameReadStatus.FrameReadStatus.INCOMPLETE,
77
+ consumedBytes: Math.max(0, buffer.length - 1)
78
+ };
79
+ }
80
+ if (start + 4 > buffer.length) {
81
+ return {
82
+ status: _frameReadStatus.FrameReadStatus.INCOMPLETE,
83
+ consumedBytes: start
84
+ };
85
+ }
86
+ const frameLength = (0, _hexToByte.hexToByte)(buffer[start + 3] ?? "00") + 4;
87
+ if (frameLength < 6) {
88
+ return {
89
+ status: _frameReadStatus.FrameReadStatus.CORRUPT,
90
+ consumedBytes: start + 2
91
+ };
92
+ }
93
+ if (start + frameLength > buffer.length) {
94
+ return {
95
+ status: _frameReadStatus.FrameReadStatus.INCOMPLETE,
96
+ consumedBytes: start
97
+ };
98
+ }
99
+ const frame = buffer.slice(start, start + frameLength);
100
+ if ((0, _calculateCrc8Pc.calculateCrc8Pc)(frame) !== (0, _hexToByte.hexToByte)(frame.at(-1) ?? "00")) {
101
+ return {
102
+ status: _frameReadStatus.FrameReadStatus.CORRUPT,
103
+ consumedBytes: start + 2
104
+ };
105
+ }
106
+ return {
107
+ status: _frameReadStatus.FrameReadStatus.COMPLETE,
108
+ consumedBytes: start + frameLength,
109
+ frame
110
+ };
111
+ }
112
+ findHeader = buffer => {
113
+ for (let index = 0; index < buffer.length - 1; index += 1) {
114
+ if ((0, _hexToByte.hexToByte)(buffer[index] ?? "00") === 0xaa && (0, _hexToByte.hexToByte)(buffer[index + 1] ?? "00") === 0x55) {
115
+ return index;
116
+ }
117
+ }
118
+ return -1;
119
+ };
120
+ }
121
+ exports.ViatomAa55FrameReader = ViatomAa55FrameReader;
122
+ //# sourceMappingURL=viatom-aa55.protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_frameReadStatus","require","_calculateCrc8Pc","_hexToByte","VIATOM_AA55_SERVICE","exports","VIATOM_AA55_WRITE","VIATOM_AA55_NOTIFY","byte","value","toString","padStart","littleEndian32","viatomAa55Command","token","command","payload","frame","length","calculateCrc8Pc","viatomAa55SetTime","now","Date","offsetSeconds","getTimezoneOffset","localEpochSeconds","Math","floor","getTime","decodeViatomAa55Response","hexToByte","undefined","at","type","content","slice","parseViatomAa55OximeterReading","perfusionScale","flags","bloodOxygen","pulseRate","perfusionIndex","probeOff","pulseSearching","ViatomAa55FrameReader","readFrame","buffer","start","findHeader","status","FrameReadStatus","INCOMPLETE","consumedBytes","max","frameLength","CORRUPT","COMPLETE","index"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom-aa55.protocol.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ViatomAa55Sequencer = void 0;
7
+ var _core = require("@ovok/core");
8
+ var _caseType = require("../../../types/case-type.js");
9
+ var _viatomAa55Protocol = require("./viatom-aa55.protocol.js");
10
+ /* eslint-disable import/group-exports */
11
+
12
+ const command = (write, frame) => ({
13
+ ...write,
14
+ frame,
15
+ withoutResponse: true
16
+ });
17
+ const validOxygen = value => Number.isFinite(value) && value >= 50 && value <= 100;
18
+ const validPulse = value => Number.isFinite(value) && value > 0 && value <= 300;
19
+
20
+ /** Drives the clock, realtime-parameter and realtime-wave exchange used by AP-20 and PC-68B. */
21
+ class ViatomAa55Sequencer {
22
+ phase = "clock";
23
+ constructor(params) {
24
+ this.params = params;
25
+ }
26
+ initialCommands = () => [this.write((0, _viatomAa55Protocol.viatomAa55SetTime)(this.params.now?.() ?? new Date()))];
27
+ nextCommand = frame => {
28
+ const response = (0, _viatomAa55Protocol.decodeViatomAa55Response)(frame);
29
+ if (!response || response.token !== 0x0f) {
30
+ return undefined;
31
+ }
32
+ if (response.type === 1) {
33
+ if (this.phase === "ready") {
34
+ this.report(response);
35
+ }
36
+ return undefined;
37
+ }
38
+ if (this.phase === "clock" && response.type === 7) {
39
+ this.phase = "parameters";
40
+ return [this.write((0, _viatomAa55Protocol.viatomAa55Command)(0x0f, 0x84, ["01"]))];
41
+ }
42
+ if (this.phase === "parameters" && response.type === 4) {
43
+ this.phase = "wave";
44
+ return [this.write((0, _viatomAa55Protocol.viatomAa55Command)(0x0f, 0x85, ["01"]))];
45
+ }
46
+ if (this.phase === "wave" && response.type === 5) {
47
+ this.phase = "ready";
48
+ }
49
+ return undefined;
50
+ };
51
+ write = frame => command(this.params.write, frame);
52
+ report = response => {
53
+ const reading = (0, _viatomAa55Protocol.parseViatomAa55OximeterReading)(response.content, this.params.perfusionScale);
54
+ if (!reading || reading.probeOff || reading.pulseSearching) {
55
+ return;
56
+ }
57
+ const hasOxygen = validOxygen(reading.bloodOxygen);
58
+ const hasPulse = validPulse(reading.pulseRate);
59
+ if (!hasOxygen && !hasPulse) {
60
+ return;
61
+ }
62
+ this.params.onResult({
63
+ caseType: _caseType.CaseType.RESULT,
64
+ measurementTypeKey: _core.MeasurementTypeKey.bloodOxygenPulseRate,
65
+ ...(hasOxygen ? {
66
+ bloodOxygen: reading.bloodOxygen
67
+ } : {}),
68
+ ...(hasPulse ? {
69
+ pulseRate: reading.pulseRate
70
+ } : {}),
71
+ ...(reading.perfusionIndex > 0 ? {
72
+ perfusionIndex: reading.perfusionIndex
73
+ } : {}),
74
+ recordedAt: this.params.now?.() ?? new Date()
75
+ });
76
+ };
77
+ }
78
+ exports.ViatomAa55Sequencer = ViatomAa55Sequencer;
79
+ //# sourceMappingURL=viatom-aa55.sequencer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_core","require","_caseType","_viatomAa55Protocol","command","write","frame","withoutResponse","validOxygen","value","Number","isFinite","validPulse","ViatomAa55Sequencer","phase","constructor","params","initialCommands","viatomAa55SetTime","now","Date","nextCommand","response","decodeViatomAa55Response","token","undefined","type","report","viatomAa55Command","reading","parseViatomAa55OximeterReading","content","perfusionScale","probeOff","pulseSearching","hasOxygen","bloodOxygen","hasPulse","pulseRate","onResult","caseType","CaseType","RESULT","measurementTypeKey","MeasurementTypeKey","bloodOxygenPulseRate","perfusionIndex","recordedAt","exports"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom-aa55.sequencer.ts"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.viatomBpMonitor = exports.tmbBpMonitor = exports.bp2wMonitor = exports.bp2tMonitor = exports.bp2aMonitor = exports.TMB_MODEL_NAMES = exports.BP3_MODEL_NAMES = void 0;
6
+ exports.viatomBpMonitor = exports.tmbBpMonitor = exports.lpBp2wMonitor = exports.bp2wMonitor = exports.bp2vMonitor = exports.bp2tMonitor = exports.bp2aMonitor = exports.TMB_MODEL_NAMES = exports.BP3_MODEL_NAMES = void 0;
7
7
  var _le32FromHex = require("../../../utils/le-32-from-hex.js");
8
8
  var _defineCustomDevice = require("../../custom/define-custom-device.js");
9
9
  var _bp2Files = require("../bp2/bp2.files.js");
@@ -94,7 +94,15 @@ const bp2tMonitor = params => viatomBpMonitor("BP2T", params);
94
94
  /** BP2W. Documented in its own section, but decoding the same realtime struct. */
95
95
  exports.bp2tMonitor = bp2tMonitor;
96
96
  const bp2wMonitor = params => viatomBpMonitor("BP2W", params);
97
+
98
+ /** BP2V, the WiFi variant that uses the BP2 realtime layout without ECG frames. */
97
99
  exports.bp2wMonitor = bp2wMonitor;
100
+ const bp2vMonitor = params => viatomBpMonitor("BP2V", params);
101
+
102
+ /** LP-BP2W, the Lepu-branded WiFi variant of the BP2 family. */
103
+ exports.bp2vMonitor = bp2vMonitor;
104
+ const lpBp2wMonitor = params => viatomBpMonitor("LP-BP2W", params);
105
+ exports.lpBp2wMonitor = lpBp2wMonitor;
98
106
  const TMB_SERVICE = "0000a610-0000-1000-8000-00805f9b34fb";
99
107
  const TMB_WRITE = "0000a624-0000-1000-8000-00805f9b34fb";
100
108
  const TMB_ACK = "0000a622-0000-1000-8000-00805f9b34fb";
@@ -1 +1 @@
1
- {"version":3,"names":["_le32FromHex","require","_defineCustomDevice","_bp2Files","_lepuNameMatch","_lepuTransports","_tmbBpHandler","_viatomBpEcgHandler","_viatomBpMonitorCases","RT_DATA","CASE_SELECTOR_BYTES","MIN_LENGTH_BYTES","RESULT_CODE_INDEX","DEVICE_TIME_INDEX","rejectFailedResult","reading","frame","resultCode","Number","parseInt","Error","toString","padStart","recordedAt","length","recordedAtFromLocalSeconds","le32FromHex","undefined","viatomBpMonitor","advertisedName","params","isBp3","BP3_MODEL_NAMES","includes","hasEcg","lepuDevice","id","toLowerCase","replace","nameMatch","lepuNameMatch","clockSync","clockSyncProtocol","fileTransfer","rejectEncryptionAtBytes","pollCommand","pollIntervalMs","minLengthBytes","caseSelectorBytes","cases","BP3_ECG_CASES","BP3_CASES","BP2_CASES","BP2_ECG_CASES","map","each","decorateReading","createFrameHandler","createViatomFrameHandler","expectedDeviceTypes","exports","bp2aMonitor","bp2tMonitor","bp2wMonitor","TMB_SERVICE","TMB_WRITE","TMB_ACK","TMB_NOTIFY","TMB_INDICATE","tmbBpMonitor","defineCustomDevice","stuckDataTimeoutMs","preferredMtu","tmb","serviceUuid","writeUuid","ackUuid","services","uuid","monitor","selector","kind","createTmbBloodPressureFrameHandler","TMB_MODEL_NAMES"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.bp-monitors.ts"],"mappings":";;;;;;AAIA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,mBAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,eAAA,GAAAJ,OAAA;AACA,IAAAK,aAAA,GAAAL,OAAA;AAEA,IAAAM,mBAAA,GAAAN,OAAA;AACA,IAAAO,qBAAA,GAAAP,OAAA;AAOA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,MAAMQ,OAAO,GAAG,IAAI;;AAEpB;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,mBAAmB,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;;AAElC;AACA,MAAMC,gBAAgB,GAAG,EAAE;AAC3B,MAAMC,iBAAiB,GAAG,EAAE;AAC5B,MAAMC,iBAAiB,GAAG,EAAE;AAE5B,MAAMC,kBAA0C,GAAGA,CAACC,OAAO,EAAEC,KAAK,KAAK;EACrE,MAAMC,UAAU,GAAGC,MAAM,CAACC,QAAQ,CAACH,KAAK,GAAGJ,iBAAiB,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC;EAE1E,IAAIK,UAAU,KAAK,CAAC,EAAE;IACpB,MAAM,IAAIG,KAAK,CACb,+DAA+DH,UAAU,CACtEI,QAAQ,CAAC,EAAE,CAAC,CACZC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EACrB,CAAC;EACH;EAEA,MAAMC,UAAU,GACdP,KAAK,IAAIA,KAAK,CAACQ,MAAM,IAAIX,iBAAiB,GAAG,CAAC,GAC1C,IAAAY,oCAA0B,EAAC,IAAAC,wBAAW,EAAC,CAAC,GAAGV,KAAK,CAAC,EAAEH,iBAAiB,CAAC,CAAC,GACtEc,SAAS;EAEf,OAAOJ,UAAU,GAAG;IAAE,GAAGR,OAAO;IAAEQ;EAAW,CAAC,GAAGR,OAAO;AAC1D,CAAC;AAkBD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMa,eAAe,GAAGA,CACtBC,cAAsB,EACtBC,MAAsB,KACK;EAC3B,MAAMC,KAAK,GAAGC,eAAe,CAACC,QAAQ,CAACJ,cAAc,CAAC;EACtD,MAAMK,MAAM,GAAGL,cAAc,KAAK,MAAM,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAACI,QAAQ,CAACJ,cAAc,CAAC;EAEtF,OAAO,IAAAM,0BAAU,EAAC;IAChBC,EAAE,EACAN,MAAM,CAACM,EAAE,IACT,UAAUP,cAAc,CAACQ,WAAW,CAAC,CAAC,CAACC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,EAAE;IACtEC,SAAS,EAAET,MAAM,CAACS,SAAS,IAAI,IAAAC,4BAAa,EAACX,cAAc,CAAC;IAC5DY,SAAS,EAAE,WAAW;IACtBC,iBAAiB,EAAEV,eAAe,CAACC,QAAQ,CAACJ,cAAc,CAAC,GACvD,KAAK,GACL,KAAK;IACTc,YAAY,EAAEX,eAAe,CAACC,QAAQ,CAACJ,cAAc,CAAC,GAAG,KAAK,GAAG,KAAK;IACtEe,uBAAuB,EAAE,CAAC,CAAC,CAAC;IAC5BC,WAAW,EAAEpC,OAAO;IACpBqC,cAAc,EAAE,GAAG;IACnBC,cAAc,EAAEpC,gBAAgB;IAChCqC,iBAAiB,EAAEjB,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAGrB,mBAAmB;IAC3DuC,KAAK,EAAE,CAAClB,KAAK,GACTG,MAAM,GACJgB,mCAAa,GACbC,+BAAS,GACX,CACE,GAAGC,+BAAS,EACZ,IAAIvB,cAAc,KAAK,MAAM,GAAGwB,mCAAa,GAAG,EAAE,CAAC,CACpD,EACHC,GAAG,CAAEC,IAAI,KAAM;MAAE,GAAGA;IAAK,CAAC,CAAC,CAAC;IAC9BC,eAAe,EAAE1C,kBAAkB;IACnC2C,kBAAkB,EAAEC,4CAAwB;IAC5C,IAAI5B,MAAM,CAAC6B,mBAAmB,GAC1B;MAAEA,mBAAmB,EAAE7B,MAAM,CAAC6B;IAAoB,CAAC,GACnD,CAAC,CAAC;EACR,CAAC,CAAC;AACJ,CAAC;;AAED;AAAAC,OAAA,CAAAhC,eAAA,GAAAA,eAAA;AACA,MAAMiC,WAAW,GAAI/B,MAAsB,IACzCF,eAAe,CAAC,MAAM,EAAEE,MAAM,CAAC;;AAEjC;AAAA8B,OAAA,CAAAC,WAAA,GAAAA,WAAA;AACA,MAAMC,WAAW,GAAIhC,MAAsB,IACzCF,eAAe,CAAC,MAAM,EAAEE,MAAM,CAAC;;AAEjC;AAAA8B,OAAA,CAAAE,WAAA,GAAAA,WAAA;AACA,MAAMC,WAAW,GAAIjC,MAAsB,IACzCF,eAAe,CAAC,MAAM,EAAEE,MAAM,CAAC;AAAC8B,OAAA,CAAAG,WAAA,GAAAA,WAAA;AAElC,MAAMC,WAAW,GAAG,sCAAsC;AAC1D,MAAMC,SAAS,GAAG,sCAAsC;AACxD,MAAMC,OAAO,GAAG,sCAAsC;AACtD,MAAMC,UAAU,GAAG,sCAAsC;AACzD,MAAMC,YAAY,GAAG,sCAAsC;;AAE3D;AACA,MAAMC,YAAY,GAAGA,CACnBxC,cAAsB,EACtBC,MAAsB,KAEtB,IAAAwC,sCAAkB,EAChB;EACElC,EAAE,EACAN,MAAM,CAACM,EAAE,IACT,cAAcP,cAAc,CAACQ,WAAW,CAAC,CAAC,CAACC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,EAAE;EAC1EC,SAAS,EAAET,MAAM,CAACS,SAAS,IAAI,IAAAC,4BAAa,EAACX,cAAc,CAAC;EAC5DY,SAAS,EAAE,WAAW;EACtB8B,kBAAkB,EAAE,OAAO;EAC3BC,YAAY,EAAE,GAAG;EACjBC,GAAG,EAAE;IACHC,WAAW,EAAEV,WAAW;IACxBW,SAAS,EAAEV,SAAS;IACpBW,OAAO,EAAEV;EACX,CAAC;EACDW,QAAQ,EAAE,CACR;IACEC,IAAI,EAAEd,WAAW;IACjBe,OAAO,EAAE,CACP;MACED,IAAI,EAAEX,UAAU;MAChBnB,iBAAiB,EAAE,CAAC,CAAC,CAAC;MACtBhC,KAAK,EAAE;QAAE+B,cAAc,EAAE;MAAE,CAAC;MAC5BE,KAAK,EAAE,CAAC;QAAE+B,QAAQ,EAAE,GAAG;QAAEC,IAAI,EAAE;MAAQ,CAAC;IAC1C,CAAC,EACD;MACEH,IAAI,EAAEV,YAAY;MAClBpB,iBAAiB,EAAE,CAAC,CAAC,CAAC;MACtBhC,KAAK,EAAE;QAAE+B,cAAc,EAAE;MAAE,CAAC;MAC5BE,KAAK,EAAE,CAAC;QAAE+B,QAAQ,EAAE,GAAG;QAAEC,IAAI,EAAE;MAAQ,CAAC;IAC1C,CAAC;EAEL,CAAC;AAEL,CAAC,EACD;EAAExB,kBAAkB,EAAEyB;AAAmC,CAC3D,CAAC;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAXAtB,OAAA,CAAAS,YAAA,GAAAA,YAAA;AAYA,MAAMrC,eAAkC,GAAA4B,OAAA,CAAA5B,eAAA,GAAG,CACzC,KAAK,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,MAAM,EACN,OAAO,EACP,OAAO,CACR;AAED,MAAMmD,eAAkC,GAAAvB,OAAA,CAAAuB,eAAA,GAAG,CACzC,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,UAAU,EACV,UAAU,CACX","ignoreList":[]}
1
+ {"version":3,"names":["_le32FromHex","require","_defineCustomDevice","_bp2Files","_lepuNameMatch","_lepuTransports","_tmbBpHandler","_viatomBpEcgHandler","_viatomBpMonitorCases","RT_DATA","CASE_SELECTOR_BYTES","MIN_LENGTH_BYTES","RESULT_CODE_INDEX","DEVICE_TIME_INDEX","rejectFailedResult","reading","frame","resultCode","Number","parseInt","Error","toString","padStart","recordedAt","length","recordedAtFromLocalSeconds","le32FromHex","undefined","viatomBpMonitor","advertisedName","params","isBp3","BP3_MODEL_NAMES","includes","hasEcg","lepuDevice","id","toLowerCase","replace","nameMatch","lepuNameMatch","clockSync","clockSyncProtocol","fileTransfer","rejectEncryptionAtBytes","pollCommand","pollIntervalMs","minLengthBytes","caseSelectorBytes","cases","BP3_ECG_CASES","BP3_CASES","BP2_CASES","BP2_ECG_CASES","map","each","decorateReading","createFrameHandler","createViatomFrameHandler","expectedDeviceTypes","exports","bp2aMonitor","bp2tMonitor","bp2wMonitor","bp2vMonitor","lpBp2wMonitor","TMB_SERVICE","TMB_WRITE","TMB_ACK","TMB_NOTIFY","TMB_INDICATE","tmbBpMonitor","defineCustomDevice","stuckDataTimeoutMs","preferredMtu","tmb","serviceUuid","writeUuid","ackUuid","services","uuid","monitor","selector","kind","createTmbBloodPressureFrameHandler","TMB_MODEL_NAMES"],"sourceRoot":"../../../../../../../src","sources":["modules/bt-management/services/devices/viatom/viatom.bp-monitors.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.bpm188MainServices = exports.Bpm188Device = void 0;
7
+ var _btManagedDevice = require("../bt-managed-device.js");
8
+ var _viatomBpm188Protocol = require("./viatom.bpm188.protocol.js");
9
+ var _viatomBpm188Sequencer = require("./viatom.bpm188.sequencer.js");
10
+ /* eslint-disable import/group-exports */
11
+
12
+ const acceptNothing = {
13
+ caseValuePosition: [],
14
+ cases: []
15
+ };
16
+ const bpm188MainServices = exports.bpm188MainServices = [{
17
+ uuid: _viatomBpm188Protocol.BPM188_SERVICE,
18
+ monitorUuids: [{
19
+ uuid: _viatomBpm188Protocol.BPM188_NOTIFY,
20
+ parsingModel: acceptNothing
21
+ }],
22
+ writeUuid: {
23
+ uuid: _viatomBpm188Protocol.BPM188_WRITE,
24
+ mainCommandUuid: "0240dc"
25
+ }
26
+ }];
27
+
28
+ /** Viatom B02T/B02S blood-pressure history, exposed as BPM-188. */
29
+ class Bpm188Device extends _btManagedDevice.BTManagedDevice {
30
+ mainServices = bpm188MainServices;
31
+ stuckDataTimeout = 180_000;
32
+ onStreamStart = undefined;
33
+ preferredMtu = 247;
34
+ constructor(device, params) {
35
+ super(device, params);
36
+ this.frameReader = new _viatomBpm188Protocol.Bpm188FrameReader();
37
+ this.createCommandSequencer = () => new _viatomBpm188Sequencer.Bpm188Sequencer({
38
+ write: {
39
+ serviceUuid: _viatomBpm188Protocol.BPM188_SERVICE,
40
+ characteristicUuid: _viatomBpm188Protocol.BPM188_WRITE
41
+ },
42
+ onResult: result => this.onResult?.(result)
43
+ });
44
+ }
45
+ handleSuccessResult() {
46
+ return;
47
+ }
48
+ }
49
+ exports.Bpm188Device = Bpm188Device;
50
+ //# sourceMappingURL=viatom.bpm188.device.js.map