camstreamerlib 4.0.0-beta.11 → 4.0.0-beta.110

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 (409) hide show
  1. package/README.md +143 -38
  2. package/cjs/CamOverlayAPI.d.ts +543 -311
  3. package/cjs/CamOverlayAPI.js +112 -145
  4. package/cjs/CamScripterAPI.d.ts +44 -16
  5. package/cjs/CamScripterAPI.js +52 -33
  6. package/cjs/CamStreamerAPI.d.ts +2167 -14
  7. package/cjs/CamStreamerAPI.js +184 -37
  8. package/cjs/CamSwitcherAPI.d.ts +158 -42
  9. package/cjs/CamSwitcherAPI.js +143 -177
  10. package/cjs/PlaneTrackerAPI.d.ts +242 -0
  11. package/cjs/PlaneTrackerAPI.js +257 -0
  12. package/cjs/VapixAPI.d.ts +82 -42
  13. package/cjs/VapixAPI.js +283 -210
  14. package/cjs/{CreatePackage.js → bin/CreatePackage.js} +44 -18
  15. package/cjs/errors/errors.d.ts +70 -4
  16. package/cjs/errors/errors.js +140 -7
  17. package/cjs/index.d.ts +20 -6
  18. package/cjs/index.js +28 -8
  19. package/cjs/internal/ProxyClient.d.ts +8 -9
  20. package/cjs/internal/ProxyClient.js +28 -34
  21. package/cjs/internal/WsEvents.d.ts +38 -0
  22. package/cjs/{CamSwitcherEvents.js → internal/WsEvents.js} +33 -22
  23. package/cjs/internal/constants.d.ts +1 -0
  24. package/cjs/internal/constants.js +2 -1
  25. package/cjs/internal/convertors.d.ts +6 -0
  26. package/cjs/internal/convertors.js +115 -0
  27. package/cjs/internal/types.d.ts +32 -20
  28. package/cjs/internal/utils.d.ts +1 -3
  29. package/cjs/internal/utils.js +1 -12
  30. package/cjs/node/CamOverlayDrawingAPI.d.ts +41 -0
  31. package/cjs/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +28 -20
  32. package/{esm → cjs/node}/CamOverlayPainter/Frame.d.ts +8 -37
  33. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
  34. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.d.ts +5 -21
  35. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +5 -17
  36. package/cjs/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
  37. package/cjs/node/CamOverlayPainter/ResourceManager.js +72 -0
  38. package/cjs/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
  39. package/cjs/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +13 -13
  40. package/cjs/node/DefaultClient.d.ts +6 -6
  41. package/cjs/node/DefaultClient.js +12 -16
  42. package/cjs/{internal → node}/Digest.js +24 -1
  43. package/cjs/node/Digest.test.js +13 -0
  44. package/cjs/node/HttpRequestSender.d.ts +1 -0
  45. package/cjs/node/HttpRequestSender.js +14 -4
  46. package/cjs/node/HttpServer.d.ts +1 -1
  47. package/cjs/node/HttpServer.js +29 -6
  48. package/cjs/node/TimeZoneDaemon.d.ts +6 -0
  49. package/cjs/node/TimeZoneDaemon.js +29 -0
  50. package/cjs/node/VapixEvents.d.ts +16 -0
  51. package/cjs/{VapixEvents.js → node/VapixEvents.js} +10 -10
  52. package/cjs/node/WsClient.d.ts +9 -18
  53. package/cjs/node/WsClient.js +27 -20
  54. package/cjs/node/events/AxisCameraStationEvents.d.ts +12 -0
  55. package/cjs/{events → node/events}/AxisCameraStationEvents.js +18 -13
  56. package/cjs/node/events/GenetecAgent.d.ts +16 -0
  57. package/cjs/node/events/GenetecAgent.js +124 -0
  58. package/cjs/node/index.d.ts +18 -2
  59. package/cjs/node/index.js +39 -5
  60. package/cjs/{models/CamOverlayAPI/widgetsSchema.d.ts → types/CamOverlayAPI/CamOverlayAPI.d.ts} +2387 -599
  61. package/cjs/types/CamOverlayAPI/CamOverlayAPI.js +131 -0
  62. package/cjs/{models → types}/CamOverlayAPI/accuweatherSchema.d.ts +12 -12
  63. package/cjs/{models → types}/CamOverlayAPI/accuweatherSchema.js +7 -8
  64. package/cjs/{models → types}/CamOverlayAPI/customGraphicsSchema.d.ts +83 -82
  65. package/cjs/{models → types}/CamOverlayAPI/customGraphicsSchema.js +5 -6
  66. package/{esm/models → cjs/types}/CamOverlayAPI/imagesSchema.d.ts +10 -10
  67. package/cjs/types/CamOverlayAPI/imagesSchema.js +9 -0
  68. package/cjs/{models → types}/CamOverlayAPI/index.d.ts +2 -4
  69. package/cjs/{models → types}/CamOverlayAPI/index.js +2 -4
  70. package/cjs/{models → types}/CamOverlayAPI/infotickerSchema.d.ts +20 -20
  71. package/cjs/{models → types}/CamOverlayAPI/infotickerSchema.js +6 -7
  72. package/{esm/models → cjs/types}/CamOverlayAPI/pipSchema.d.ts +14 -14
  73. package/cjs/{models → types}/CamOverlayAPI/pipSchema.js +5 -6
  74. package/{esm/models → cjs/types}/CamOverlayAPI/ptzCompassSchema.d.ts +13 -10
  75. package/cjs/{models → types}/CamOverlayAPI/ptzCompassSchema.js +5 -5
  76. package/{esm/models → cjs/types}/CamOverlayAPI/ptzSchema.d.ts +16 -16
  77. package/cjs/types/CamOverlayAPI/ptzSchema.js +12 -0
  78. package/cjs/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
  79. package/cjs/types/CamOverlayAPI/scoreBoardSchema.js +132 -0
  80. package/cjs/{models → types}/CamOverlayAPI/screenSharingSchema.d.ts +8 -8
  81. package/cjs/types/CamOverlayAPI/screenSharingSchema.js +8 -0
  82. package/{esm/models/CamOverlayAPI/widgetCommonSchema.d.ts → cjs/types/CamOverlayAPI/serviceCommonTypes.d.ts} +67 -48
  83. package/cjs/{models/CamOverlayAPI/widgetCommonSchema.js → types/CamOverlayAPI/serviceCommonTypes.js} +33 -18
  84. package/{esm/models → cjs/types}/CamOverlayAPI/webCameraSharingSchema.d.ts +8 -8
  85. package/cjs/types/CamOverlayAPI/webCameraSharingSchema.js +8 -0
  86. package/cjs/types/CamOverlayDrawingAPI.d.ts +48 -0
  87. package/cjs/types/CamOverlayDrawingAPI.js +2 -0
  88. package/cjs/types/CamOverlayPainter.d.ts +76 -0
  89. package/cjs/types/CamOverlayPainter.js +14 -0
  90. package/cjs/types/CamScripterAPI.d.ts +86 -23
  91. package/cjs/types/CamScripterAPI.js +24 -8
  92. package/cjs/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
  93. package/cjs/types/CamScripterAPICameraEventsGenerator.js +2 -0
  94. package/cjs/types/CamStreamerAPI/CamStreamerAPI.d.ts +14570 -0
  95. package/cjs/types/CamStreamerAPI/CamStreamerAPI.js +154 -0
  96. package/cjs/types/CamStreamerAPI/churchSchema.d.ts +288 -0
  97. package/cjs/types/CamStreamerAPI/churchSchema.js +11 -0
  98. package/cjs/types/CamStreamerAPI/daCastSchema.d.ts +288 -0
  99. package/cjs/types/CamStreamerAPI/daCastSchema.js +11 -0
  100. package/cjs/types/CamStreamerAPI/dailymotionSchema.d.ts +288 -0
  101. package/cjs/types/CamStreamerAPI/dailymotionSchema.js +11 -0
  102. package/cjs/types/CamStreamerAPI/facebookSchema.d.ts +340 -0
  103. package/cjs/types/CamStreamerAPI/facebookSchema.js +27 -0
  104. package/cjs/types/CamStreamerAPI/gameChangerSchema.d.ts +307 -0
  105. package/cjs/types/CamStreamerAPI/gameChangerSchema.js +11 -0
  106. package/cjs/types/CamStreamerAPI/hlsPullSchema.d.ts +288 -0
  107. package/cjs/types/CamStreamerAPI/hlsPullSchema.js +11 -0
  108. package/cjs/types/CamStreamerAPI/hlsPushSchema.d.ts +288 -0
  109. package/cjs/types/CamStreamerAPI/hlsPushSchema.js +11 -0
  110. package/cjs/types/CamStreamerAPI/ibmSchema.d.ts +288 -0
  111. package/cjs/types/CamStreamerAPI/ibmSchema.js +11 -0
  112. package/cjs/types/CamStreamerAPI/index.d.ts +9 -0
  113. package/cjs/types/CamStreamerAPI/index.js +25 -0
  114. package/cjs/types/CamStreamerAPI/microsoftAzureSchema.d.ts +288 -0
  115. package/cjs/types/CamStreamerAPI/microsoftAzureSchema.js +11 -0
  116. package/cjs/types/CamStreamerAPI/microsoftStreamSchema.d.ts +288 -0
  117. package/cjs/types/CamStreamerAPI/microsoftStreamSchema.js +11 -0
  118. package/cjs/types/CamStreamerAPI/mpegDvbSchema.d.ts +336 -0
  119. package/cjs/types/CamStreamerAPI/mpegDvbSchema.js +27 -0
  120. package/cjs/types/{CamStreamerAPI.d.ts → CamStreamerAPI/oldStreamSchema.d.ts} +108 -39
  121. package/cjs/types/CamStreamerAPI/oldStreamSchema.js +53 -0
  122. package/cjs/types/CamStreamerAPI/rtmpSchema.d.ts +609 -0
  123. package/cjs/types/CamStreamerAPI/rtmpSchema.js +19 -0
  124. package/cjs/types/CamStreamerAPI/sdCardSchema.d.ts +288 -0
  125. package/cjs/types/CamStreamerAPI/sdCardSchema.js +11 -0
  126. package/cjs/types/CamStreamerAPI/srtSchema.d.ts +288 -0
  127. package/cjs/types/CamStreamerAPI/srtSchema.js +11 -0
  128. package/cjs/types/CamStreamerAPI/streamCommonTypes.d.ts +583 -0
  129. package/cjs/types/CamStreamerAPI/streamCommonTypes.js +118 -0
  130. package/cjs/types/CamStreamerAPI/twitchSchema.d.ts +288 -0
  131. package/cjs/types/CamStreamerAPI/twitchSchema.js +11 -0
  132. package/cjs/types/CamStreamerAPI/vimeoSchema.d.ts +288 -0
  133. package/cjs/types/CamStreamerAPI/vimeoSchema.js +11 -0
  134. package/cjs/types/CamStreamerAPI/windySchema.d.ts +288 -0
  135. package/cjs/types/CamStreamerAPI/windySchema.js +11 -0
  136. package/cjs/types/CamStreamerAPI/wowzaSchema.d.ts +288 -0
  137. package/cjs/types/CamStreamerAPI/wowzaSchema.js +11 -0
  138. package/cjs/types/CamStreamerAPI/youtubeSchema.d.ts +330 -0
  139. package/cjs/types/CamStreamerAPI/youtubeSchema.js +25 -0
  140. package/cjs/types/CamSwitcherAPI.d.ts +127 -67
  141. package/cjs/types/CamSwitcherAPI.js +31 -1
  142. package/cjs/{events → types}/GenetecAgent.d.ts +47 -47
  143. package/cjs/types/GenetecAgent.js +31 -0
  144. package/cjs/types/PlaneTrackerAPI.d.ts +980 -0
  145. package/cjs/types/PlaneTrackerAPI.js +333 -0
  146. package/cjs/types/VapixAPI.d.ts +255 -15
  147. package/cjs/types/VapixAPI.js +66 -3
  148. package/cjs/types/VapixEvents.d.ts +15 -0
  149. package/cjs/types/VapixEvents.js +2 -0
  150. package/cjs/types/common.d.ts +43 -3
  151. package/cjs/types/common.js +17 -2
  152. package/cjs/types/ws/CamOverlayEvents.d.ts +88 -0
  153. package/cjs/types/ws/CamOverlayEvents.js +19 -0
  154. package/cjs/types/ws/CamStreamerEvents.d.ts +282 -0
  155. package/cjs/types/ws/CamStreamerEvents.js +36 -0
  156. package/cjs/types/ws/PlaneTrackerEvents.d.ts +1703 -0
  157. package/cjs/types/ws/PlaneTrackerEvents.js +207 -0
  158. package/cjs/web/DefaultClient.d.ts +7 -5
  159. package/cjs/web/DefaultClient.js +25 -11
  160. package/cjs/web/WsClient.d.ts +9 -5
  161. package/cjs/web/WsClient.js +16 -18
  162. package/cjs/ws/CamOverlayEvents.d.ts +8 -0
  163. package/cjs/ws/CamOverlayEvents.js +24 -0
  164. package/cjs/ws/CamStreamerEvents.d.ts +8 -0
  165. package/cjs/ws/CamStreamerEvents.js +24 -0
  166. package/cjs/ws/CamSwitcherEvents.d.ts +8 -0
  167. package/cjs/ws/CamSwitcherEvents.js +24 -0
  168. package/cjs/ws/PlaneTrackerEvents.d.ts +9 -0
  169. package/cjs/ws/PlaneTrackerEvents.js +30 -0
  170. package/esm/CamOverlayAPI.js +113 -146
  171. package/esm/CamScripterAPI.js +51 -32
  172. package/esm/CamStreamerAPI.js +183 -37
  173. package/esm/CamSwitcherAPI.js +146 -180
  174. package/esm/PlaneTrackerAPI.js +253 -0
  175. package/esm/VapixAPI.js +285 -212
  176. package/esm/{CreatePackage.js → bin/CreatePackage.js} +16 -16
  177. package/esm/errors/errors.js +122 -6
  178. package/esm/index.js +20 -6
  179. package/esm/internal/ProxyClient.js +28 -34
  180. package/esm/{CamSwitcherEvents.js → internal/WsEvents.js} +31 -20
  181. package/esm/internal/constants.js +1 -0
  182. package/esm/internal/convertors.js +108 -0
  183. package/esm/internal/utils.js +0 -9
  184. package/esm/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +26 -18
  185. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
  186. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +2 -13
  187. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/ResourceManager.js +7 -5
  188. package/esm/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +11 -11
  189. package/esm/node/DefaultClient.js +12 -16
  190. package/esm/node/Digest.test.js +11 -0
  191. package/esm/node/HttpRequestSender.js +14 -4
  192. package/esm/node/HttpServer.js +1 -1
  193. package/esm/node/TimeZoneDaemon.js +25 -0
  194. package/esm/{VapixEvents.js → node/VapixEvents.js} +10 -10
  195. package/esm/node/WsClient.js +22 -15
  196. package/esm/{events → node/events}/AxisCameraStationEvents.js +18 -13
  197. package/esm/node/events/GenetecAgent.js +120 -0
  198. package/esm/node/index.js +18 -2
  199. package/esm/types/CamOverlayAPI/CamOverlayAPI.js +110 -0
  200. package/esm/{models → types}/CamOverlayAPI/accuweatherSchema.js +3 -4
  201. package/esm/{models → types}/CamOverlayAPI/customGraphicsSchema.js +3 -4
  202. package/esm/types/CamOverlayAPI/imagesSchema.js +6 -0
  203. package/esm/{models → types}/CamOverlayAPI/index.js +2 -4
  204. package/esm/{models → types}/CamOverlayAPI/infotickerSchema.js +3 -4
  205. package/esm/{models → types}/CamOverlayAPI/pipSchema.js +4 -5
  206. package/esm/{models → types}/CamOverlayAPI/ptzCompassSchema.js +4 -4
  207. package/esm/types/CamOverlayAPI/ptzSchema.js +9 -0
  208. package/esm/types/CamOverlayAPI/scoreBoardSchema.js +129 -0
  209. package/esm/types/CamOverlayAPI/screenSharingSchema.js +5 -0
  210. package/esm/{models/CamOverlayAPI/widgetCommonSchema.js → types/CamOverlayAPI/serviceCommonTypes.js} +32 -17
  211. package/esm/types/CamOverlayAPI/webCameraSharingSchema.js +5 -0
  212. package/esm/types/CamOverlayDrawingAPI.js +1 -0
  213. package/esm/types/CamOverlayPainter.js +11 -0
  214. package/esm/types/CamScripterAPI.js +23 -7
  215. package/esm/types/CamScripterAPICameraEventsGenerator.js +1 -0
  216. package/esm/types/CamStreamerAPI/CamStreamerAPI.js +132 -0
  217. package/esm/types/CamStreamerAPI/churchSchema.js +5 -0
  218. package/esm/types/CamStreamerAPI/daCastSchema.js +5 -0
  219. package/esm/types/CamStreamerAPI/dailymotionSchema.js +5 -0
  220. package/esm/types/CamStreamerAPI/facebookSchema.js +21 -0
  221. package/esm/types/CamStreamerAPI/gameChangerSchema.js +5 -0
  222. package/esm/types/CamStreamerAPI/hlsPullSchema.js +5 -0
  223. package/esm/types/CamStreamerAPI/hlsPushSchema.js +5 -0
  224. package/esm/types/CamStreamerAPI/ibmSchema.js +5 -0
  225. package/esm/types/CamStreamerAPI/index.js +9 -0
  226. package/esm/types/CamStreamerAPI/microsoftAzureSchema.js +5 -0
  227. package/esm/types/CamStreamerAPI/microsoftStreamSchema.js +5 -0
  228. package/esm/types/CamStreamerAPI/mpegDvbSchema.js +21 -0
  229. package/esm/types/CamStreamerAPI/oldStreamSchema.js +50 -0
  230. package/esm/types/CamStreamerAPI/rtmpSchema.js +13 -0
  231. package/esm/types/CamStreamerAPI/sdCardSchema.js +5 -0
  232. package/esm/types/CamStreamerAPI/srtSchema.js +5 -0
  233. package/esm/types/CamStreamerAPI/streamCommonTypes.js +115 -0
  234. package/esm/types/CamStreamerAPI/twitchSchema.js +5 -0
  235. package/esm/types/CamStreamerAPI/vimeoSchema.js +5 -0
  236. package/esm/types/CamStreamerAPI/windySchema.js +5 -0
  237. package/esm/types/CamStreamerAPI/wowzaSchema.js +5 -0
  238. package/esm/types/CamStreamerAPI/youtubeSchema.js +19 -0
  239. package/esm/types/CamSwitcherAPI.js +31 -1
  240. package/esm/types/GenetecAgent.js +28 -0
  241. package/esm/types/PlaneTrackerAPI.js +330 -0
  242. package/esm/types/VapixAPI.js +65 -2
  243. package/esm/types/VapixEvents.js +1 -0
  244. package/esm/types/common.js +16 -1
  245. package/esm/types/ws/CamOverlayEvents.js +16 -0
  246. package/esm/types/ws/CamStreamerEvents.js +33 -0
  247. package/esm/types/ws/PlaneTrackerEvents.js +204 -0
  248. package/esm/web/DefaultClient.js +25 -11
  249. package/esm/web/WsClient.js +16 -18
  250. package/esm/ws/CamOverlayEvents.js +20 -0
  251. package/esm/ws/CamStreamerEvents.js +20 -0
  252. package/esm/ws/CamSwitcherEvents.js +20 -0
  253. package/esm/ws/PlaneTrackerEvents.js +26 -0
  254. package/package.json +43 -9
  255. package/{esm → types}/CamOverlayAPI.d.ts +543 -311
  256. package/types/CamScripterAPI.d.ts +47 -0
  257. package/types/CamStreamerAPI.d.ts +2169 -0
  258. package/types/CamSwitcherAPI.d.ts +168 -0
  259. package/types/PlaneTrackerAPI.d.ts +242 -0
  260. package/types/VapixAPI.d.ts +118 -0
  261. package/types/bin/CreatePackage.d.ts +1 -0
  262. package/types/errors/errors.d.ts +103 -0
  263. package/types/index.d.ts +28 -0
  264. package/types/internal/ProxyClient.d.ts +10 -0
  265. package/types/internal/WsEvents.d.ts +38 -0
  266. package/{esm → types}/internal/constants.d.ts +1 -0
  267. package/types/internal/convertors.d.ts +6 -0
  268. package/types/internal/types.d.ts +47 -0
  269. package/{esm → types}/internal/utils.d.ts +1 -3
  270. package/types/node/CamOverlayDrawingAPI.d.ts +41 -0
  271. package/{cjs → types/node}/CamOverlayPainter/Frame.d.ts +8 -37
  272. package/{esm → types/node}/CamOverlayPainter/Painter.d.ts +5 -21
  273. package/types/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
  274. package/types/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
  275. package/types/node/DefaultClient.d.ts +16 -0
  276. package/types/node/Digest.test.d.ts +1 -0
  277. package/{esm → types}/node/HttpRequestSender.d.ts +1 -0
  278. package/{esm → types}/node/HttpServer.d.ts +1 -1
  279. package/types/node/TimeZoneDaemon.d.ts +6 -0
  280. package/types/node/VapixEvents.d.ts +16 -0
  281. package/types/node/WsClient.d.ts +30 -0
  282. package/types/node/events/AxisCameraStationEvents.d.ts +12 -0
  283. package/types/node/events/GenetecAgent.d.ts +16 -0
  284. package/types/node/index.d.ts +18 -0
  285. package/{esm/models/CamOverlayAPI/widgetsSchema.d.ts → types/types/CamOverlayAPI/CamOverlayAPI.d.ts} +2387 -599
  286. package/{esm/models → types/types}/CamOverlayAPI/accuweatherSchema.d.ts +12 -12
  287. package/{esm/models → types/types}/CamOverlayAPI/customGraphicsSchema.d.ts +83 -82
  288. package/{cjs/models → types/types}/CamOverlayAPI/imagesSchema.d.ts +10 -10
  289. package/{esm/models → types/types}/CamOverlayAPI/index.d.ts +2 -4
  290. package/{esm/models → types/types}/CamOverlayAPI/infotickerSchema.d.ts +20 -20
  291. package/{cjs/models → types/types}/CamOverlayAPI/pipSchema.d.ts +14 -14
  292. package/{cjs/models → types/types}/CamOverlayAPI/ptzCompassSchema.d.ts +13 -10
  293. package/{cjs/models → types/types}/CamOverlayAPI/ptzSchema.d.ts +16 -16
  294. package/types/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
  295. package/{esm/models → types/types}/CamOverlayAPI/screenSharingSchema.d.ts +8 -8
  296. package/{cjs/models/CamOverlayAPI/widgetCommonSchema.d.ts → types/types/CamOverlayAPI/serviceCommonTypes.d.ts} +67 -48
  297. package/{cjs/models → types/types}/CamOverlayAPI/webCameraSharingSchema.d.ts +8 -8
  298. package/types/types/CamOverlayDrawingAPI.d.ts +48 -0
  299. package/types/types/CamOverlayPainter.d.ts +76 -0
  300. package/types/types/CamScripterAPI.d.ts +130 -0
  301. package/types/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
  302. package/types/types/CamStreamerAPI/CamStreamerAPI.d.ts +14570 -0
  303. package/types/types/CamStreamerAPI/churchSchema.d.ts +288 -0
  304. package/types/types/CamStreamerAPI/daCastSchema.d.ts +288 -0
  305. package/types/types/CamStreamerAPI/dailymotionSchema.d.ts +288 -0
  306. package/types/types/CamStreamerAPI/facebookSchema.d.ts +340 -0
  307. package/types/types/CamStreamerAPI/gameChangerSchema.d.ts +307 -0
  308. package/types/types/CamStreamerAPI/hlsPullSchema.d.ts +288 -0
  309. package/types/types/CamStreamerAPI/hlsPushSchema.d.ts +288 -0
  310. package/types/types/CamStreamerAPI/ibmSchema.d.ts +288 -0
  311. package/types/types/CamStreamerAPI/index.d.ts +9 -0
  312. package/types/types/CamStreamerAPI/microsoftAzureSchema.d.ts +288 -0
  313. package/types/types/CamStreamerAPI/microsoftStreamSchema.d.ts +288 -0
  314. package/types/types/CamStreamerAPI/mpegDvbSchema.d.ts +336 -0
  315. package/{esm/types/CamStreamerAPI.d.ts → types/types/CamStreamerAPI/oldStreamSchema.d.ts} +108 -39
  316. package/types/types/CamStreamerAPI/rtmpSchema.d.ts +609 -0
  317. package/types/types/CamStreamerAPI/sdCardSchema.d.ts +288 -0
  318. package/types/types/CamStreamerAPI/srtSchema.d.ts +288 -0
  319. package/types/types/CamStreamerAPI/streamCommonTypes.d.ts +583 -0
  320. package/types/types/CamStreamerAPI/twitchSchema.d.ts +288 -0
  321. package/types/types/CamStreamerAPI/vimeoSchema.d.ts +288 -0
  322. package/types/types/CamStreamerAPI/windySchema.d.ts +288 -0
  323. package/types/types/CamStreamerAPI/wowzaSchema.d.ts +288 -0
  324. package/types/types/CamStreamerAPI/youtubeSchema.d.ts +330 -0
  325. package/{esm → types}/types/CamSwitcherAPI.d.ts +127 -67
  326. package/{esm/events → types/types}/GenetecAgent.d.ts +47 -47
  327. package/types/types/PlaneTrackerAPI.d.ts +980 -0
  328. package/{esm → types}/types/VapixAPI.d.ts +255 -15
  329. package/types/types/VapixEvents.d.ts +15 -0
  330. package/types/types/common.d.ts +77 -0
  331. package/types/types/ws/CamOverlayEvents.d.ts +88 -0
  332. package/types/types/ws/CamStreamerEvents.d.ts +282 -0
  333. package/types/types/ws/PlaneTrackerEvents.d.ts +1703 -0
  334. package/types/web/DefaultClient.d.ts +8 -0
  335. package/types/web/WsClient.d.ts +17 -0
  336. package/types/ws/CamOverlayEvents.d.ts +8 -0
  337. package/types/ws/CamStreamerEvents.d.ts +8 -0
  338. package/types/ws/CamSwitcherEvents.d.ts +8 -0
  339. package/types/ws/PlaneTrackerEvents.d.ts +9 -0
  340. package/cjs/CamOverlayDrawingAPI.d.ts +0 -86
  341. package/cjs/CamOverlayPainter/ResourceManager.d.ts +0 -14
  342. package/cjs/CamOverlayPainter/ResourceManager.js +0 -46
  343. package/cjs/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  344. package/cjs/CamSwitcherEvents.d.ts +0 -18
  345. package/cjs/VapixEvents.d.ts +0 -43
  346. package/cjs/events/AxisCameraStationEvents.d.ts +0 -10
  347. package/cjs/events/GenetecAgent.js +0 -123
  348. package/cjs/models/CamOverlayAPI/constants.d.ts +0 -11
  349. package/cjs/models/CamOverlayAPI/constants.js +0 -14
  350. package/cjs/models/CamOverlayAPI/fileSchema.d.ts +0 -28
  351. package/cjs/models/CamOverlayAPI/fileSchema.js +0 -17
  352. package/cjs/models/CamOverlayAPI/imagesSchema.js +0 -10
  353. package/cjs/models/CamOverlayAPI/ptzSchema.js +0 -13
  354. package/cjs/models/CamOverlayAPI/screenSharingSchema.js +0 -9
  355. package/cjs/models/CamOverlayAPI/webCameraSharingSchema.js +0 -9
  356. package/cjs/models/CamOverlayAPI/widgetsSchema.js +0 -27
  357. package/cjs/node/WsEventClient.d.ts +0 -13
  358. package/cjs/node/WsEventClient.js +0 -22
  359. package/cjs/types/CamOverlayAPI.d.ts +0 -328
  360. package/cjs/types/CamOverlayAPI.js +0 -26
  361. package/cjs/types/CamStreamerAPI.js +0 -28
  362. package/esm/CamOverlayDrawingAPI.d.ts +0 -86
  363. package/esm/CamOverlayPainter/ResourceManager.d.ts +0 -14
  364. package/esm/CamScripterAPI.d.ts +0 -19
  365. package/esm/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  366. package/esm/CamStreamerAPI.d.ts +0 -16
  367. package/esm/CamSwitcherAPI.d.ts +0 -52
  368. package/esm/CamSwitcherEvents.d.ts +0 -18
  369. package/esm/VapixAPI.d.ts +0 -78
  370. package/esm/VapixEvents.d.ts +0 -43
  371. package/esm/errors/errors.d.ts +0 -37
  372. package/esm/events/AxisCameraStationEvents.d.ts +0 -10
  373. package/esm/events/GenetecAgent.js +0 -119
  374. package/esm/index.d.ts +0 -14
  375. package/esm/internal/ProxyClient.d.ts +0 -11
  376. package/esm/internal/types.d.ts +0 -35
  377. package/esm/models/CamOverlayAPI/constants.d.ts +0 -11
  378. package/esm/models/CamOverlayAPI/constants.js +0 -11
  379. package/esm/models/CamOverlayAPI/fileSchema.d.ts +0 -28
  380. package/esm/models/CamOverlayAPI/fileSchema.js +0 -14
  381. package/esm/models/CamOverlayAPI/imagesSchema.js +0 -7
  382. package/esm/models/CamOverlayAPI/ptzSchema.js +0 -10
  383. package/esm/models/CamOverlayAPI/screenSharingSchema.js +0 -6
  384. package/esm/models/CamOverlayAPI/webCameraSharingSchema.js +0 -6
  385. package/esm/models/CamOverlayAPI/widgetsSchema.js +0 -24
  386. package/esm/node/DefaultClient.d.ts +0 -16
  387. package/esm/node/WsClient.d.ts +0 -39
  388. package/esm/node/WsEventClient.d.ts +0 -13
  389. package/esm/node/WsEventClient.js +0 -18
  390. package/esm/types/CamOverlayAPI.d.ts +0 -328
  391. package/esm/types/CamOverlayAPI.js +0 -14
  392. package/esm/types/CamScripterAPI.d.ts +0 -67
  393. package/esm/types/CamStreamerAPI.js +0 -25
  394. package/esm/types/common.d.ts +0 -37
  395. package/esm/web/DefaultClient.d.ts +0 -6
  396. package/esm/web/WsClient.d.ts +0 -13
  397. package/esm/web/index.d.ts +0 -2
  398. /package/cjs/{CreatePackage.d.ts → bin/CreatePackage.d.ts} +0 -0
  399. /package/cjs/{internal → node}/Digest.d.ts +0 -0
  400. /package/{esm/CreatePackage.d.ts → cjs/node/Digest.test.d.ts} +0 -0
  401. /package/cjs/types/{CamSwitcherEvents.d.ts → ws/CamSwitcherEvents.d.ts} +0 -0
  402. /package/cjs/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
  403. /package/esm/{internal → node}/Digest.js +0 -0
  404. /package/esm/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
  405. /package/{esm → types}/internal/transformers.d.ts +0 -0
  406. /package/{esm → types}/internal/versionCompare.d.ts +0 -0
  407. /package/{esm/internal → types/node}/Digest.d.ts +0 -0
  408. /package/{esm/types → types/types/ws}/CamSwitcherEvents.d.ts +0 -0
  409. /package/{esm/node → types/web}/index.d.ts +0 -0
@@ -3,13 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CamSwitcherAPI = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const errors_1 = require("./errors/errors");
6
+ const convertors_1 = require("./internal/convertors");
6
7
  const utils_1 = require("./internal/utils");
7
8
  const CamSwitcherAPI_1 = require("./types/CamSwitcherAPI");
8
9
  const common_1 = require("./types/common");
9
10
  const VapixAPI_1 = require("./VapixAPI");
10
- const versionCompare_1 = require("./internal/versionCompare");
11
- const constants_1 = require("./internal/constants");
12
- const baseUrl = '/local/camswitcher/api';
11
+ const ProxyClient_1 = require("./internal/ProxyClient");
12
+ const BASE_PATH = '/local/camswitcher/api';
13
13
  class CamSwitcherAPI {
14
14
  client;
15
15
  CustomFormData;
@@ -17,112 +17,137 @@ class CamSwitcherAPI {
17
17
  constructor(client, CustomFormData = FormData) {
18
18
  this.client = client;
19
19
  this.CustomFormData = CustomFormData;
20
- this.vapixAgent = new VapixAPI_1.VapixAPI(client, () => '');
21
- }
22
- static getProxyUrlPath = () => `${baseUrl}/proxy.cgi`;
23
- static getWsEventsUrlPath = () => `/local/camswitcher/events`;
24
- static getClipPreviewUrlPath = (id, storage) => `${baseUrl}/clip_preview.cgi?clip_name=${id}&storage=${storage}`;
25
- async generateSilence(sampleRate, channels) {
26
- await this.client.get(`${baseUrl}/generate_silence.cgi`, {
27
- sample_rate: sampleRate.toString(),
28
- channels,
20
+ this.vapixAgent = new VapixAPI_1.VapixAPI(client);
21
+ }
22
+ static getProxyPath = () => `${BASE_PATH}/proxy.cgi`;
23
+ static getWsEventsPath = () => `/local/camswitcher/events`;
24
+ static getClipPreviewPath = (clipId, storage) => `${BASE_PATH}/clip_preview.cgi?clip_name=${clipId}&storage=${storage}`;
25
+ getClient(proxyParams) {
26
+ return proxyParams ? new ProxyClient_1.ProxyClient(this.client, proxyParams) : this.client;
27
+ }
28
+ async checkAPIAvailable(options) {
29
+ await this._getJson(`${BASE_PATH}/api_check.cgi`, undefined, options);
30
+ }
31
+ async checkCameraTime(options) {
32
+ const res = await this._getJson(`${BASE_PATH}/camera_time.cgi`, undefined, options);
33
+ return zod_1.z.boolean().parse(res.data);
34
+ }
35
+ async getNetworkCameraList(options) {
36
+ const res = await this._getJson(`${BASE_PATH}/network_camera_list.cgi`, undefined, options);
37
+ return common_1.networkCameraListSchema.parse(res.data);
38
+ }
39
+ async generateSilence(sampleRate, channels, options) {
40
+ const agent = this.getClient(options?.proxyParams);
41
+ await agent.get({
42
+ path: `${BASE_PATH}/generate_silence.cgi`,
43
+ parameters: {
44
+ sample_rate: sampleRate.toString(),
45
+ channels,
46
+ },
47
+ timeout: options?.timeout,
29
48
  });
30
49
  }
31
- async checkCameraTime() {
32
- const data = await this.get(`${baseUrl}/camera_time.cgi`);
33
- return zod_1.z.boolean().parse(data);
34
- }
35
- async getIpListFromNetworkCheck() {
36
- const data = await this.get(`${baseUrl}/network_camera_list.cgi`);
37
- return common_1.networkCameraListSchema.parse(data);
50
+ async getMaxFps(source, options) {
51
+ const res = await this._getJson(`${BASE_PATH}/get_max_framerate.cgi`, {
52
+ video_source: source,
53
+ }, options);
54
+ return zod_1.z.number().parse(res.data);
38
55
  }
39
- async getMaxFps(source) {
40
- const data = await this.get(`${baseUrl}/get_max_framerate.cgi`, {
41
- video_source: source.toString(),
42
- });
43
- return zod_1.z.number().parse(data);
56
+ async getStorageInfo(options) {
57
+ const res = await this._getJson(`${BASE_PATH}/get_storage.cgi`, undefined, options);
58
+ return CamSwitcherAPI_1.storageInfoListSchema.parse(res.data);
44
59
  }
45
- async getStorageInfo() {
46
- const data = await this.get(`${baseUrl}/get_storage.cgi`);
47
- return CamSwitcherAPI_1.storageInfoListSchema.parse(data);
60
+ async wsAuthorization(options) {
61
+ const res = await this._getJson(`${BASE_PATH}/ws_authorization.cgi`, undefined, options);
62
+ return zod_1.z.string().parse(res.data);
48
63
  }
49
- async wsAuthorization() {
50
- const data = await this.get(`${baseUrl}/ws_authorization.cgi`);
51
- return zod_1.z.string().parse(data);
64
+ async getOutputInfo(options) {
65
+ const res = await this._getJson(`${BASE_PATH}/output_info.cgi`, undefined, options);
66
+ return CamSwitcherAPI_1.outputInfoSchema.parse(res.data);
52
67
  }
53
- async getOutputInfo() {
54
- const data = await this.get(`${baseUrl}/output_info.cgi`);
55
- return CamSwitcherAPI_1.outputInfoSchema.parse(data);
68
+ async getAudioPushInfo(options) {
69
+ const res = await this._getJson(`${BASE_PATH}/audio_push_info.cgi`, undefined, options);
70
+ return CamSwitcherAPI_1.audioPushInfoSchema.parse(res.data);
56
71
  }
57
- async getAudioPushInfo() {
58
- const data = await this.get(`${baseUrl}/audio_push_info.cgi`);
59
- return CamSwitcherAPI_1.audioPushInfoSchema.parse(data);
72
+ async getStreamSaveList(options) {
73
+ const res = await this._getJson(`${BASE_PATH}/streams.cgi`, { action: 'get' }, options);
74
+ return CamSwitcherAPI_1.streamSaveLoadSchema.parse(res.data);
60
75
  }
61
- async getStreamSaveList() {
62
- const data = await this.get(`${baseUrl}/streams.cgi`, { action: 'get' });
63
- return CamSwitcherAPI_1.streamSaveLoadSchema.parse(data);
76
+ async getClipSaveList(options) {
77
+ const res = await this._getJson(`${BASE_PATH}/clips.cgi`, { action: 'get' }, options);
78
+ return CamSwitcherAPI_1.clipSaveLoadSchema.parse(res.data);
64
79
  }
65
- async getClipSaveList() {
66
- const data = await this.get(`${baseUrl}/clips.cgi`, { action: 'get' });
67
- return CamSwitcherAPI_1.clipSaveLoadSchema.parse(data);
80
+ async getPlaylistSaveList(options) {
81
+ const res = await this._getJson(`${BASE_PATH}/playlists.cgi`, { action: 'get' }, options);
82
+ return CamSwitcherAPI_1.playlistSaveLoadSchema.parse(res.data);
68
83
  }
69
- async getPlaylistSaveList() {
70
- const data = await this.get(`${baseUrl}/playlists.cgi`, { action: 'get' });
71
- return CamSwitcherAPI_1.playlistSaveLoadSchema.parse(data);
84
+ async getTrackerSaveList(options) {
85
+ const res = await this._getJson(`${BASE_PATH}/trackers.cgi`, { action: 'get' }, options);
86
+ return CamSwitcherAPI_1.trackerSaveLoadSchema.parse(res.data);
72
87
  }
73
- async getTrackerSaveList() {
74
- const data = await this.get(`${baseUrl}/trackers.cgi`, { action: 'get' });
75
- return CamSwitcherAPI_1.trackerSaveLoadSchema.parse(data);
88
+ async setStreamSaveList(data, options) {
89
+ await this._post(`${BASE_PATH}/streams.cgi`, JSON.stringify(data), { action: 'set' }, options);
76
90
  }
77
- async setStreamSaveList(data) {
78
- return await this.set(`${baseUrl}/streams.cgi`, data, { action: 'set' });
91
+ async setClipSaveList(data, options) {
92
+ await this._post(`${BASE_PATH}/clips.cgi`, JSON.stringify(data), { action: 'set' }, options);
79
93
  }
80
- async setClipSaveList(data) {
81
- return await this.set(`${baseUrl}/clips.cgi`, data, { action: 'set' });
94
+ async setPlaylistSaveList(data, options) {
95
+ await this._post(`${BASE_PATH}/playlists.cgi`, JSON.stringify(data), { action: 'set' }, options);
82
96
  }
83
- async setPlaylistSaveList(data) {
84
- return await this.set(`${baseUrl}/playlists.cgi`, data, { action: 'set' });
97
+ async setTrackerSaveList(data, options) {
98
+ await this._post(`${BASE_PATH}/trackers.cgi`, JSON.stringify(data), { action: 'set' }, options);
85
99
  }
86
- async setTrackerSaveList(data) {
87
- return await this.set(`${baseUrl}/trackers.cgi`, data, { action: 'set' });
100
+ async playlistSwitch(playlistName, options) {
101
+ await this._getJson(`${BASE_PATH}/playlist_switch.cgi`, { playlist_name: playlistName }, options);
88
102
  }
89
- async playlistSwitch(playlistName) {
90
- await this.get(`${baseUrl}/playlist_switch.cgi?playlist_name=${playlistName}`);
103
+ async playlistQueuePush(playlistName, options) {
104
+ await this._getJson(`${BASE_PATH}/playlist_queue_push.cgi`, { playlist_name: playlistName }, options);
91
105
  }
92
- async playlistQueuePush(playlistName) {
93
- await this.get(`${baseUrl}/playlist_queue_push.cgi?playlist_name=${playlistName}`);
106
+ async playlistQueueClear(options) {
107
+ await this._getJson(`${BASE_PATH}/playlist_queue_clear.cgi`, undefined, options);
94
108
  }
95
- async playlistQueueClear() {
96
- await this.get(`${baseUrl}/playlist_queue_clear.cgi`);
109
+ async playlistQueueList(options) {
110
+ const res = await this._getJson(`${BASE_PATH}/playlist_queue_list.cgi`, undefined, options);
111
+ return CamSwitcherAPI_1.playlistQueueSchema.parse(res.data).playlistQueueList;
97
112
  }
98
- async playlistQueueList() {
99
- const data = await this.get(`${baseUrl}/playlist_queue_list.cgi`);
100
- return CamSwitcherAPI_1.playlistQueueSchema.parse(data).playlistQueueList;
113
+ async playlistQueuePlayNext(options) {
114
+ await this._getJson(`${BASE_PATH}/playlist_queue_play_next.cgi`, undefined, options);
101
115
  }
102
- async playlistQueuePlayNext() {
103
- await this.get(`${baseUrl}/playlist_queue_play_next.cgi`);
104
- }
105
- async addNewClip(file, clipType, storage, id, fileName) {
116
+ async addNewClip(file, clipType, storage, clipId, fileName, options) {
117
+ const path = `${BASE_PATH}/clip_upload.cgi`;
106
118
  const formData = new this.CustomFormData();
107
- formData.append('clip_name', id);
119
+ formData.append('clip_name', clipId);
108
120
  formData.append('clip_type', clipType);
109
121
  formData.append('file', file, fileName);
110
- const path = `${baseUrl}/clip_upload.cgi?storage=${storage}`;
111
- const res = await this.client.post(path, formData);
122
+ const agent = this.getClient(options?.proxyParams);
123
+ const res = await agent.post({
124
+ path,
125
+ data: formData,
126
+ parameters: {
127
+ storage: storage,
128
+ },
129
+ timeout: options?.timeout,
130
+ });
112
131
  const output = (await res.json());
113
132
  if (output.status !== 200) {
114
133
  throw new errors_1.AddNewClipError(output.message);
115
134
  }
116
135
  }
117
- removeClip(id, storage) {
118
- return this.get(`${baseUrl}/clip_remove.cgi`, { clip_name: id, storage });
136
+ async removeClip(clipId, storage, options) {
137
+ await this._getJson(`${BASE_PATH}/clip_remove.cgi`, { clip_name: clipId, storage }, options);
119
138
  }
120
- async getClipList() {
121
- const data = await this.get(`${baseUrl}/clip_list.cgi`);
122
- return CamSwitcherAPI_1.clipListSchema.parse(data).clip_list;
139
+ async getClipList(options) {
140
+ const res = await this._getJson(`${BASE_PATH}/clip_list.cgi`, undefined, options);
141
+ return CamSwitcherAPI_1.clipListSchema.parse(res.data).clip_list;
123
142
  }
124
- setCamSwitchOptions(data, cameraFWVersion) {
125
- const bitrateVapixParams = parseBitrateOptionsToBitrateVapixParams(cameraFWVersion, data.bitrateMode, data);
143
+ setCamSwitchOptions(data, cameraFWVersion, options) {
144
+ const bitrateData = {
145
+ bitrateMode: data.bitrateMode,
146
+ maximumBitRate: data.maximumBitRate,
147
+ retentionTime: data.retentionTime,
148
+ bitRateLimit: data.bitRateLimit,
149
+ };
150
+ const bitrateVapixParams = (0, convertors_1.parseBitrateOptionsToVapixParams)(cameraFWVersion, data.bitrateMode, bitrateData);
126
151
  const saveData = {
127
152
  video: {
128
153
  resolution: data.resolution,
@@ -139,9 +164,9 @@ class CamSwitcherAPI {
139
164
  },
140
165
  keyboard: data.keyboard,
141
166
  };
142
- return this.setParamFromCameraJSON(CSW_PARAM_NAMES.SETTINGS, saveData);
167
+ return this.setParamFromCameraJSON(CSW_PARAM_NAMES.SETTINGS, saveData, options);
143
168
  }
144
- setGlobalAudioSettings(settings) {
169
+ setGlobalAudioSettings(settings, options) {
145
170
  let acceptedType = 'NONE';
146
171
  if (settings.type === 'source' && settings.source) {
147
172
  if ((0, utils_1.isClip)(settings.source)) {
@@ -157,9 +182,9 @@ class CamSwitcherAPI {
157
182
  clip_name: settings.source,
158
183
  storage: settings.storage,
159
184
  };
160
- return this.setParamFromCameraJSON(CSW_PARAM_NAMES.MASTER_AUDIO, data);
185
+ return this.setParamFromCameraJSON(CSW_PARAM_NAMES.MASTER_AUDIO, data, options);
161
186
  }
162
- setSecondaryAudioSettings(settings) {
187
+ setSecondaryAudioSettings(settings, options) {
163
188
  const data = {
164
189
  type: settings.type,
165
190
  stream_name: settings.streamName ?? '',
@@ -168,24 +193,24 @@ class CamSwitcherAPI {
168
193
  secondary_audio_level: settings.secondaryAudioLevel,
169
194
  master_audio_level: settings.masterAudioLevel,
170
195
  };
171
- return this.setParamFromCameraJSON(CSW_PARAM_NAMES.SECONDARY_AUDIO, data);
196
+ return this.setParamFromCameraJSON(CSW_PARAM_NAMES.SECONDARY_AUDIO, data, options);
172
197
  }
173
- setDefaultPlaylist(id) {
174
- const value = JSON.stringify({ default_playlist_id: id });
198
+ setDefaultPlaylist(playlistId, options) {
199
+ const value = JSON.stringify({ default_playlist_id: playlistId });
175
200
  return this.vapixAgent.setParameter({
176
201
  [CSW_PARAM_NAMES.DEFAULT_PLAYLIST]: value,
177
- }, null);
202
+ }, options);
178
203
  }
179
- setPermanentRtspUrlToken(token) {
180
- return this.vapixAgent.setParameter({ [CSW_PARAM_NAMES.RTSP_TOKEN]: token }, null);
204
+ setPermanentRtspUrlToken(token, options) {
205
+ return this.vapixAgent.setParameter({ [CSW_PARAM_NAMES.RTSP_TOKEN]: token }, options);
181
206
  }
182
- async getCamSwitchOptions() {
183
- const saveData = await this.getParamFromCameraAndJSONParse(CSW_PARAM_NAMES.SETTINGS);
207
+ async getCamSwitchOptions(options) {
208
+ const saveData = await this.getParamFromCameraAndJSONParse(CSW_PARAM_NAMES.SETTINGS, options);
184
209
  if ((0, utils_1.isNullish)(saveData.video)) {
185
210
  return saveData;
186
211
  }
187
212
  if (!(0, utils_1.isNullish)(saveData.video?.bitrateVapixParams)) {
188
- const bitrateOptions = parseVapixParamsToBitrateOptions(saveData.video.bitrateVapixParams);
213
+ const bitrateOptions = (0, convertors_1.parseVapixParamsToBitrateOptions)(saveData.video.bitrateVapixParams);
189
214
  saveData.video.bitrateMode = bitrateOptions.bitrateMode;
190
215
  saveData.video.maximumBitRate = bitrateOptions.maximumBitRate;
191
216
  saveData.video.retentionTime = bitrateOptions.retentionTime;
@@ -205,12 +230,12 @@ class CamSwitcherAPI {
205
230
  keyboard: saveData.keyboard,
206
231
  };
207
232
  }
208
- async getGlobalAudioSettings() {
233
+ async getGlobalAudioSettings(options) {
209
234
  const settings = {
210
235
  type: 'fromSource',
211
236
  source: 'fromSource',
212
237
  };
213
- const res = await this.getParamFromCameraAndJSONParse(CSW_PARAM_NAMES.MASTER_AUDIO);
238
+ const res = await this.getParamFromCameraAndJSONParse(CSW_PARAM_NAMES.MASTER_AUDIO, options);
214
239
  if (res.type === 'STREAM') {
215
240
  settings.type = 'source';
216
241
  settings.source = res.stream_name;
@@ -220,52 +245,52 @@ class CamSwitcherAPI {
220
245
  settings.source = res.clip_name;
221
246
  settings.storage = res.storage;
222
247
  }
223
- return settings;
248
+ return CamSwitcherAPI_1.globalAudioSettingsSchema.parse(settings);
224
249
  }
225
- async getSecondaryAudioSettings() {
226
- const res = await this.getParamFromCameraAndJSONParse(CSW_PARAM_NAMES.SECONDARY_AUDIO);
250
+ async getSecondaryAudioSettings(options) {
251
+ const res = await this.getParamFromCameraAndJSONParse(CSW_PARAM_NAMES.SECONDARY_AUDIO, options);
227
252
  const settings = {
228
253
  type: res.type ?? 'NONE',
229
254
  streamName: res.stream_name,
230
255
  clipName: res.clip_name,
231
- storage: res.storage,
256
+ storage: res.storage ?? 'SD_DISK',
232
257
  secondaryAudioLevel: res.secondary_audio_level ?? 1,
233
258
  masterAudioLevel: res.master_audio_level ?? 1,
234
259
  };
235
- return settings;
260
+ return CamSwitcherAPI_1.secondaryAudioSettingsSchema.parse(settings);
236
261
  }
237
- async getPermanentRtspUrlToken() {
262
+ async getPermanentRtspUrlToken(options) {
238
263
  const paramName = CSW_PARAM_NAMES.RTSP_TOKEN;
239
- const res = await this.vapixAgent.getParameter([paramName], null);
240
- return res[paramName] ?? '';
264
+ const res = await this.vapixAgent.getParameter([paramName], options);
265
+ return zod_1.z.string().parse(res[paramName] ?? '');
241
266
  }
242
- async get(path, parameters = {}) {
243
- const res = await this.client.get(path, parameters);
267
+ async _getJson(path, parameters, options) {
268
+ const agent = this.getClient(options?.proxyParams);
269
+ const res = await agent.get({ path, parameters, timeout: options?.timeout });
244
270
  if (res.ok) {
245
- const d = (await res.json());
246
- return d.data;
271
+ return await res.json();
247
272
  }
248
273
  else {
249
- throw new Error(await (0, utils_1.responseStringify)(res));
274
+ throw new errors_1.ErrorWithResponse(res);
250
275
  }
251
276
  }
252
- async set(path, data, parameters = {}) {
253
- const res = await this.client.post(path, JSON.stringify(data), parameters);
277
+ async _post(path, data, parameters, options, headers) {
278
+ const agent = this.getClient(options?.proxyParams);
279
+ const res = await agent.post({ path, data, parameters, timeout: options?.timeout, headers });
254
280
  if (res.ok) {
255
- const parsed = await res.json();
256
- return parsed.message === 'OK';
281
+ return await res.json();
257
282
  }
258
283
  else {
259
- throw new Error(await (0, utils_1.responseStringify)(res));
284
+ throw new errors_1.ErrorWithResponse(res);
260
285
  }
261
286
  }
262
- setParamFromCameraJSON(paramName, data) {
287
+ setParamFromCameraJSON(paramName, data, options) {
263
288
  const params = {};
264
289
  params[paramName] = JSON.stringify(data);
265
- return this.vapixAgent.setParameter(params, null);
290
+ return this.vapixAgent.setParameter(params, options);
266
291
  }
267
- async getParamFromCameraAndJSONParse(paramName) {
268
- const data = await this.vapixAgent.getParameter([paramName], null);
292
+ async getParamFromCameraAndJSONParse(paramName, options) {
293
+ const data = await this.vapixAgent.getParameter([paramName], options);
269
294
  if (data[paramName] !== undefined) {
270
295
  try {
271
296
  if (data[paramName] === '') {
@@ -276,10 +301,10 @@ class CamSwitcherAPI {
276
301
  }
277
302
  }
278
303
  catch {
279
- throw new Error('Error: in JSON parsing of ' + paramName + '. Cannot parse: ' + data[paramName]);
304
+ throw new errors_1.JsonParseError(paramName, data[paramName]);
280
305
  }
281
306
  }
282
- throw new Error("Error: no parametr '" + paramName + "' was found");
307
+ throw new errors_1.ParameterNotFoundError(paramName);
283
308
  }
284
309
  }
285
310
  exports.CamSwitcherAPI = CamSwitcherAPI;
@@ -290,62 +315,3 @@ const CSW_PARAM_NAMES = {
290
315
  RTSP_TOKEN: 'Camswitcher.RTSPAccessToken',
291
316
  DEFAULT_PLAYLIST: 'Camswitcher.DefaultPlaylist',
292
317
  };
293
- const parseBitrateOptionsToBitrateVapixParams = (firmWareVersion, bitrateMode, cameraOptions) => {
294
- if (!(0, versionCompare_1.isFirmwareVersionAtLeast)(firmWareVersion, constants_1.FIRMWARE_WITH_BITRATE_MODES_SUPPORT)) {
295
- return `videomaxbitrate=${cameraOptions.maximumBitRate}`;
296
- }
297
- if (bitrateMode === null) {
298
- return '';
299
- }
300
- const data = {
301
- VBR: 'videobitratemode=vbr',
302
- MBR: `videobitratemode=mbr&videomaxbitrate=${cameraOptions.maximumBitRate}`,
303
- ABR: `videobitratemode=abr&videoabrtargetbitrate=${cameraOptions.maximumBitRate}&videoabrretentiontime=${cameraOptions.retentionTime}&videoabrmaxbitrate=${cameraOptions.bitRateLimit}`,
304
- };
305
- return data[bitrateMode];
306
- };
307
- const parseVapixParamsToBitrateOptions = (bitrateVapixParams) => {
308
- const params = {};
309
- const searchParams = new URLSearchParams(bitrateVapixParams);
310
- searchParams.forEach((value, key) => {
311
- params[key] = value;
312
- });
313
- const bitrateMode = params['videobitratemode'] !== undefined ? params['videobitratemode'].toUpperCase() : undefined;
314
- const hasLowerFw = bitrateMode === undefined && params['videomaxbitrate'] !== undefined;
315
- if (hasLowerFw) {
316
- const maximumBitRate = parseInt(params['videomaxbitrate'] ?? '0', 10);
317
- return {
318
- bitrateMode: 'MBR',
319
- maximumBitRate: maximumBitRate,
320
- retentionTime: 1,
321
- bitRateLimit: Math.floor(maximumBitRate * 1.1),
322
- };
323
- }
324
- if (bitrateMode === 'ABR') {
325
- const maximumBitRate = parseInt(params['videoabrtargetbitrate'] ?? '0', 10);
326
- const retentionTime = parseInt(params['videoabrretentiontime'] ?? '0', 10);
327
- const bitRateLimit = parseInt(params['videoabrmaxbitrate'] ?? '0', 10);
328
- return {
329
- bitrateMode,
330
- maximumBitRate,
331
- retentionTime,
332
- bitRateLimit,
333
- };
334
- }
335
- else if (bitrateMode === 'MBR') {
336
- const maximumBitRate = params['videomaxbitrate'] !== undefined ? parseInt(params['videomaxbitrate'], 10) : null;
337
- const oldMaximumBitrateParamValue = parseInt(params['videombrmaxbitrate'] ?? '0', 10);
338
- return {
339
- bitrateMode: bitrateMode,
340
- maximumBitRate: maximumBitRate ?? oldMaximumBitrateParamValue,
341
- retentionTime: 1,
342
- bitRateLimit: Math.floor(maximumBitRate ?? oldMaximumBitrateParamValue * 1.1),
343
- };
344
- }
345
- return {
346
- bitrateMode: bitrateMode,
347
- retentionTime: 1,
348
- maximumBitRate: 0,
349
- bitRateLimit: 0,
350
- };
351
- };