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
@@ -1,160 +1,118 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CamOverlayAPI = exports.BASE_URL = void 0;
3
+ exports.CamOverlayAPI = void 0;
4
4
  const utils_1 = require("./internal/utils");
5
- const CamOverlayAPI_1 = require("./types/CamOverlayAPI");
6
5
  const errors_1 = require("./errors/errors");
7
6
  const common_1 = require("./types/common");
8
7
  const zod_1 = require("zod");
9
- const widgetsSchema_1 = require("./models/CamOverlayAPI/widgetsSchema");
10
- const fileSchema_1 = require("./models/CamOverlayAPI/fileSchema");
11
- exports.BASE_URL = '/local/camoverlay/api';
8
+ const ProxyClient_1 = require("./internal/ProxyClient");
9
+ const CamOverlayAPI_1 = require("./types/CamOverlayAPI");
10
+ const BASE_PATH = '/local/camoverlay/api';
12
11
  class CamOverlayAPI {
13
12
  client;
14
13
  constructor(client) {
15
14
  this.client = client;
16
15
  }
17
- static getProxyUrlPath = () => `${exports.BASE_URL}/proxy.cgi`;
18
- static getFilePreviewPath = (path) => `${exports.BASE_URL}/image.cgi?path=${encodeURIComponent(path)}`;
19
- async checkCameraTime() {
20
- const responseSchema = zod_1.z.discriminatedUnion('state', [
21
- zod_1.z.object({
22
- state: zod_1.z.literal(true),
23
- code: zod_1.z.number(),
24
- }),
25
- zod_1.z.object({
26
- state: zod_1.z.literal(false),
27
- code: zod_1.z.number(),
28
- reason: zod_1.z.union([
29
- zod_1.z.literal('INVALID_TIME'),
30
- zod_1.z.literal('COULDNT_RESOLVE_HOST'),
31
- zod_1.z.literal('CONNECTION_ERROR'),
32
- ]),
33
- message: zod_1.z.string(),
34
- }),
35
- ]);
36
- const response = await this._get(`${exports.BASE_URL}/camera_time.cgi`);
37
- const cameraTime = responseSchema.parse(response);
38
- if (!cameraTime.state) {
39
- console.error(`Camera time check failed: ${cameraTime.reason} - ${cameraTime.message}`);
40
- }
41
- return cameraTime.state;
16
+ static getBasePath = () => BASE_PATH;
17
+ static getProxyPath = () => `${BASE_PATH}/proxy.cgi`;
18
+ static getFilePreviewPath = (path) => `${BASE_PATH}/image.cgi?path=${encodeURIComponent(path)}`;
19
+ getClient(proxyParams) {
20
+ return proxyParams ? new ProxyClient_1.ProxyClient(this.client, proxyParams) : this.client;
42
21
  }
43
- async getNetworkCameraList() {
44
- const response = await this._get(`${exports.BASE_URL}/network_camera_list.cgi`);
45
- return common_1.networkCameraListSchema.parse(response.camera_list);
22
+ async checkAPIAvailable(options) {
23
+ await this._getJson(`${BASE_PATH}/api_check.cgi`, undefined, options);
46
24
  }
47
- async wsAuthorization() {
48
- const responseSchema = zod_1.z.object({
49
- status: zod_1.z.number(),
50
- message: zod_1.z.string(),
51
- data: zod_1.z.string(),
52
- });
53
- const response = await this._get(`${exports.BASE_URL}/ws_authorization.cgi`);
54
- return responseSchema.parse(response).data;
25
+ async checkCameraTime(options) {
26
+ const res = await this._getJson(`${BASE_PATH}/camera_time.cgi`, undefined, options);
27
+ return zod_1.z.boolean().parse(res.state);
55
28
  }
56
- async getMjpegStreamImage(mjpegUrl) {
57
- return await this._getBlob(`${exports.BASE_URL}/fetch_mjpeg_image.cgi?mjpeg_url=${encodeURIComponent(decodeURIComponent(mjpegUrl))}`);
29
+ async getNetworkCameraList(options) {
30
+ const res = await this._getJson(`${BASE_PATH}/network_camera_list.cgi`, undefined, options);
31
+ return common_1.networkCameraListSchema.parse(res.camera_list);
58
32
  }
59
- async listFiles(fileType) {
60
- const fileDataSchema = zod_1.z.object({
61
- code: zod_1.z.number(),
62
- list: fileSchema_1.fileListSchema,
63
- });
64
- const files = await this._get(`${exports.BASE_URL}/upload_${fileType}.cgi`, {
65
- action: 'list',
66
- });
67
- return fileSchema_1.fileListSchema.parse(files.list);
33
+ async wsAuthorization(options) {
34
+ const res = await this._getJson(`${BASE_PATH}/ws_authorization.cgi`, undefined, options);
35
+ return CamOverlayAPI_1.wsResponseSchema.parse(res).message;
68
36
  }
69
- async uploadFile(fileType, formData, storage) {
70
- const path = `${exports.BASE_URL}/upload_${fileType}.cgi`;
71
- await this._post(path, formData, {
37
+ async getMjpegStreamImage(mjpegUrl, options) {
38
+ return await this._getBlob(`${BASE_PATH}/fetch_mjpeg_image.cgi`, { mjpeg_url: decodeURIComponent(mjpegUrl) }, options);
39
+ }
40
+ async listFiles(fileType, options) {
41
+ const res = await this._getJson(`${BASE_PATH}/upload_${fileType}.cgi`, { action: 'list' }, options);
42
+ return (0, CamOverlayAPI_1.getFileListSchema)(fileType).parse(res.list);
43
+ }
44
+ async uploadFile(fileType, formData, storage, options) {
45
+ await this._post(`${BASE_PATH}/upload_${fileType}.cgi`, formData, {
72
46
  action: 'upload',
73
47
  storage: storage,
74
- });
48
+ }, options);
75
49
  }
76
- async removeFile(fileType, fileParams) {
77
- const path = `${exports.BASE_URL}/upload_${fileType}.cgi`;
78
- await this._postUrlEncoded(path, {
50
+ async removeFile(fileType, fileParams, options) {
51
+ await this._postUrlEncoded(`${BASE_PATH}/upload_${fileType}.cgi`, {
79
52
  action: 'remove',
80
53
  ...fileParams,
81
- });
54
+ }, options, undefined);
82
55
  }
83
- async getFileStorage(fileType) {
84
- const storageDataListSchema = zod_1.z.array(zod_1.z.object({
85
- type: fileSchema_1.storageSchema,
86
- state: zod_1.z.string(),
87
- }));
88
- const responseSchema = zod_1.z.object({
89
- code: zod_1.z.number(),
90
- list: storageDataListSchema,
91
- });
92
- const data = await this._get(`${exports.BASE_URL}/upload_${fileType}.cgi`, {
93
- action: 'get_storage',
94
- });
95
- if (data.code !== 200) {
96
- throw new Error('Error occured while fetching file storage data');
56
+ async getFileStorage(fileType, options) {
57
+ const res = await this._getJson(`${BASE_PATH}/upload_${fileType}.cgi`, { action: 'get_storage' }, options);
58
+ if (res.code !== 200) {
59
+ throw new errors_1.StorageDataFetchError(res);
97
60
  }
98
- return storageDataListSchema.parse(data.list);
61
+ return (0, CamOverlayAPI_1.getStorageDataListSchema)(fileType).parse(res.list);
99
62
  }
100
- async getFilePreviewFromCamera(path) {
101
- return await this._getBlob(CamOverlayAPI.getFilePreviewPath(path));
63
+ async getFilePreviewFromCamera(path, options) {
64
+ return await this._getBlob(CamOverlayAPI.getFilePreviewPath(path), undefined, options);
102
65
  }
103
- async updateInfoticker(serviceID, text) {
104
- await this._get(`${exports.BASE_URL}/infoticker.cgi?service_id=${serviceID}&text=${text}`);
66
+ async updateInfoticker(serviceId, text, options) {
67
+ await this._getJson(`${BASE_PATH}/infoticker.cgi`, { service_id: serviceId, text: text }, options);
105
68
  }
106
- async setEnabled(serviceID, enabled) {
107
- await this._post(`${exports.BASE_URL}/enabled.cgi?id_${serviceID}=${enabled ? 1 : 0}`, '');
69
+ async setEnabled(serviceId, enabled, options) {
70
+ await this._post(`${BASE_PATH}/enabled.cgi`, '', { [`id_${serviceId}`]: enabled ? 1 : 0 }, options);
108
71
  }
109
- async isEnabled(serviceID) {
110
- const res = await this.client.get(`${exports.BASE_URL}/services.cgi?action=get`);
72
+ async isEnabled(serviceId, options) {
73
+ const agent = this.getClient(options?.proxyParams);
74
+ const res = await agent.get({
75
+ path: `${BASE_PATH}/services.cgi`,
76
+ parameters: { action: 'get' },
77
+ timeout: options?.timeout,
78
+ });
111
79
  if (res.ok) {
112
80
  const data = JSON.parse(await res.text());
113
81
  for (const service of data.services) {
114
- if (service.id === serviceID) {
82
+ if (service.id === serviceId) {
115
83
  return service.enabled === 1;
116
84
  }
117
85
  }
118
86
  throw new errors_1.ServiceNotFoundError();
119
87
  }
120
88
  else {
121
- throw new Error(await (0, utils_1.responseStringify)(res));
89
+ throw new errors_1.ErrorWithResponse(res);
122
90
  }
123
91
  }
124
- async getSingleWidget(serviceId) {
125
- const data = await this._get(`${exports.BASE_URL}/services.cgi`, {
92
+ async getSingleService(serviceId, options) {
93
+ const res = await this._getJson(`${BASE_PATH}/services.cgi`, {
126
94
  action: 'get',
127
- service_id: serviceId.toString(),
128
- });
129
- return widgetsSchema_1.widgetsSchema.parse(data);
95
+ service_id: serviceId,
96
+ }, options);
97
+ return CamOverlayAPI_1.servicesSchema.parse(res);
130
98
  }
131
- async getWidgets() {
132
- const widgetList = await this._get(`${exports.BASE_URL}/services.cgi`, {
133
- action: 'get',
134
- });
135
- const widgets = widgetList.services;
136
- widgets.forEach((widget) => {
137
- const parsedWidget = widgetsSchema_1.widgetsSchema.safeParse(widget);
138
- if (!parsedWidget.success) {
139
- console.warn(`[SERVICE SCHEMA MISMATCH]: Service ${widget.name} (${widget.id}) does not match the current schema, or is a hidden service.`);
140
- }
141
- });
142
- return widgets;
99
+ async getServices(options) {
100
+ const res = await this._getJson(`${BASE_PATH}/services.cgi`, { action: 'get' }, options);
101
+ const services = CamOverlayAPI_1.serviceListSchema.parse(res).services;
102
+ return services;
143
103
  }
144
- async updateSingleWidget(widget) {
145
- const path = `${exports.BASE_URL}/services.cgi`;
146
- await this._postJsonEncoded(path, JSON.stringify(widget), {
104
+ async updateSingleService(service, options) {
105
+ await this._postJsonEncoded(`${BASE_PATH}/services.cgi`, JSON.stringify(service), {
147
106
  action: 'set',
148
- service_id: widget.id.toString(),
149
- });
107
+ service_id: service.id,
108
+ }, options, undefined);
150
109
  }
151
- async updateWidgets(widgets) {
152
- const path = `${exports.BASE_URL}/services.cgi`;
153
- await this._postJsonEncoded(path, JSON.stringify({ services: widgets }), {
110
+ async updateServices(services, options) {
111
+ await this._postJsonEncoded(`${BASE_PATH}/services.cgi`, JSON.stringify({ services: services }), {
154
112
  action: 'set',
155
- });
113
+ }, options, undefined);
156
114
  }
157
- updateCGText(serviceID, fields) {
115
+ updateCGText(serviceId, fields, options) {
158
116
  const params = {};
159
117
  for (const field of fields) {
160
118
  const name = field.field_name;
@@ -163,74 +121,84 @@ class CamOverlayAPI {
163
121
  params[`${name}_color`] = field.color;
164
122
  }
165
123
  }
166
- return this.promiseCGUpdate(serviceID, 'update_text', params);
124
+ return this.promiseCGUpdate(serviceId, 'update_text', params, undefined, undefined, options);
167
125
  }
168
- updateCGImagePos(serviceID, coordinates = '', x = 0, y = 0) {
126
+ updateCGImagePos(serviceId, coordinates = '', x = 0, y = 0, options) {
169
127
  const params = {
170
128
  coord_system: coordinates,
171
129
  pos_x: x,
172
130
  pos_y: y,
173
131
  };
174
- return this.promiseCGUpdate(serviceID, 'update_image', params);
132
+ return this.promiseCGUpdate(serviceId, 'update_image', params, undefined, undefined, options);
175
133
  }
176
- updateCGImage(serviceID, path, coordinates = '', x = 0, y = 0) {
134
+ updateCGImage(serviceId, path, coordinates = '', x = 0, y = 0, options) {
177
135
  const params = {
178
136
  coord_system: coordinates,
179
137
  pos_x: x,
180
138
  pos_y: y,
181
139
  image: path,
182
140
  };
183
- return this.promiseCGUpdate(serviceID, 'update_image', params);
141
+ return this.promiseCGUpdate(serviceId, 'update_image', params, undefined, undefined, options);
184
142
  }
185
- updateCGImageFromData(serviceID, imageType, imageData, coordinates = '', x = 0, y = 0) {
143
+ updateCGImageFromData(serviceId, imageType, imageData, coordinates = '', x = 0, y = 0, options) {
186
144
  const contentType = imageType === CamOverlayAPI_1.ImageType.PNG ? 'image/png' : 'image/jpeg';
187
145
  const params = {
188
146
  coord_system: coordinates,
189
147
  pos_x: x,
190
148
  pos_y: y,
191
149
  };
192
- return this.promiseCGUpdate(serviceID, 'update_image', params, contentType, imageData);
150
+ return this.promiseCGUpdate(serviceId, 'update_image', params, contentType, imageData, options);
193
151
  }
194
- async promiseCGUpdate(serviceID, action, params = {}, contentType, data) {
195
- const path = `${exports.BASE_URL}/customGraphics.cgi`;
152
+ async promiseCGUpdate(serviceId, action, params = {}, contentType, data, options) {
153
+ const path = `${BASE_PATH}/customGraphics.cgi`;
196
154
  let headers = {};
197
- if (contentType !== undefined && data) {
155
+ if (contentType !== undefined && data !== undefined) {
198
156
  headers = { 'Content-Type': contentType };
199
157
  }
200
- const res = await this.client.post(path, data ?? '', {
201
- action: action,
202
- service_id: serviceID.toString(),
203
- ...params,
204
- }, headers);
158
+ const agent = this.getClient(options?.proxyParams);
159
+ const res = await agent.post({
160
+ path,
161
+ data: data ?? '',
162
+ parameters: {
163
+ action: action,
164
+ service_id: serviceId.toString(),
165
+ ...params,
166
+ },
167
+ headers,
168
+ timeout: options?.timeout,
169
+ });
205
170
  if (!res.ok) {
206
- throw new Error(await (0, utils_1.responseStringify)(res));
171
+ throw new errors_1.ErrorWithResponse(res);
207
172
  }
208
173
  }
209
- async _get(...args) {
210
- const res = await this.client.get(...args);
174
+ async _getJson(path, parameters, options) {
175
+ const agent = this.getClient(options?.proxyParams);
176
+ const res = await agent.get({ path, parameters, timeout: options?.timeout });
211
177
  if (res.ok) {
212
- return (await res.json());
178
+ return await res.json();
213
179
  }
214
180
  else {
215
- throw new Error(await (0, utils_1.responseStringify)(res));
181
+ throw new errors_1.ErrorWithResponse(res);
216
182
  }
217
183
  }
218
- async _post(...args) {
219
- const res = await this.client.post(...args);
184
+ async _post(path, data, parameters, options, headers) {
185
+ const agent = this.getClient(options?.proxyParams);
186
+ const res = await agent.post({ path, data, parameters, headers, timeout: options?.timeout });
220
187
  if (res.ok) {
221
- return (await res.json());
188
+ return await res.json();
222
189
  }
223
190
  else {
224
- throw new Error(await (0, utils_1.responseStringify)(res));
191
+ throw new errors_1.ErrorWithResponse(res);
225
192
  }
226
193
  }
227
- async _getBlob(...args) {
228
- const res = await this.client.get(...args);
194
+ async _getBlob(path, parameters, options) {
195
+ const agent = this.getClient(options?.proxyParams);
196
+ const res = await agent.get({ path, parameters, timeout: options?.timeout });
229
197
  if (res.ok) {
230
198
  return await this.parseBlobResponse(res);
231
199
  }
232
200
  else {
233
- throw new Error(await (0, utils_1.responseStringify)(res));
201
+ throw new errors_1.ErrorWithResponse(res);
234
202
  }
235
203
  }
236
204
  async parseBlobResponse(response) {
@@ -241,15 +209,14 @@ class CamOverlayAPI {
241
209
  throw new errors_1.ParsingBlobError(err);
242
210
  }
243
211
  }
244
- async _postUrlEncoded(path, params, headers) {
245
- const data = (0, utils_1.paramToUrl)(params);
212
+ async _postUrlEncoded(path, parameters, options, headers) {
213
+ const data = (0, utils_1.paramToUrl)(parameters);
246
214
  const baseHeaders = { 'Content-Type': 'application/x-www-form-urlencoded' };
247
- return this._post(path, data, {}, { ...baseHeaders, ...headers });
215
+ return this._post(path, data, undefined, options, { ...baseHeaders, ...headers });
248
216
  }
249
- async _postJsonEncoded(...args) {
250
- const [path, data, params, headers] = args;
217
+ async _postJsonEncoded(path, data, parameters, options, headers) {
251
218
  const baseHeaders = { 'Accept': 'application/json', 'Content-Type': 'application/json' };
252
- return this._post(path, data, params, { ...baseHeaders, ...headers });
219
+ return this._post(path, data, parameters, options, { ...baseHeaders, ...headers });
253
220
  }
254
221
  }
255
222
  exports.CamOverlayAPI = CamOverlayAPI;
@@ -1,19 +1,47 @@
1
+ import { ProxyClient } from './internal/ProxyClient';
1
2
  import { IClient, TResponse } from './internal/types';
2
- import { TNodeState, TPackageInfoList, TStorage, TStorageType } from './types/CamScripterAPI';
3
- import { TNetworkCamera } from './types/common';
4
- export declare class CamOverlayAPI<Client extends IClient<TResponse>> {
5
- client: Client;
3
+ import { THttpRequestOptions, TProxyParams, TStorageType } from './types/common';
4
+ export declare class CamScripterAPI<Client extends IClient<TResponse, any>> {
5
+ private client;
6
6
  constructor(client: Client);
7
- checkCameraTime(): Promise<boolean>;
8
- getStorageInfo(): Promise<TStorage>;
9
- getNetworkCameraList(): Promise<TNetworkCamera[]>;
10
- getPackageList(): Promise<TPackageInfoList>;
11
- installPackages(formData: FormData, storage: TStorageType): Promise<void>;
12
- uninstallPackage(packageId: string): Promise<void>;
13
- importSettings(packageId: string, formData: FormData): Promise<void>;
14
- exportSettings(packageId: string, formData: FormData): Promise<void>;
15
- getNodejsStatus(): Promise<TNodeState>;
16
- installNodejs(storage: TStorageType): Promise<void>;
17
- private get;
18
- private post;
7
+ static getProxyPath: () => string;
8
+ getClient(proxyParams?: TProxyParams): Client | ProxyClient<Client>;
9
+ checkAPIAvailable(options?: THttpRequestOptions): Promise<void>;
10
+ checkCameraTime(options?: THttpRequestOptions): Promise<boolean>;
11
+ getNetworkCameraList(options?: THttpRequestOptions): Promise<{
12
+ name: string;
13
+ ip: string;
14
+ }[]>;
15
+ getStorageInfo(options?: THttpRequestOptions): Promise<[{
16
+ type: "FLASH";
17
+ capacity_mb: number;
18
+ }, {
19
+ type: "SD_DISK";
20
+ capacity_mb: number;
21
+ }] | [{
22
+ type: "FLASH";
23
+ capacity_mb: number;
24
+ }]>;
25
+ getPackageList(options?: THttpRequestOptions): Promise<{
26
+ storage: "FLASH" | "SD_DISK";
27
+ manifest: {
28
+ package_name: string;
29
+ package_menu_name: string;
30
+ package_version: string;
31
+ vendor: string;
32
+ ui_link: string;
33
+ required_camscripter_version?: string | undefined;
34
+ required_camscripter_rbi_version?: string | undefined;
35
+ };
36
+ }[]>;
37
+ installPackages(formData: Parameters<Client['post']>[0]['data'], storage: TStorageType, options?: THttpRequestOptions): Promise<void>;
38
+ uninstallPackage(packageId: string, options?: THttpRequestOptions): Promise<void>;
39
+ importSettings(packageId: string, formData: Parameters<Client['post']>[0]['data'], options?: THttpRequestOptions): Promise<void>;
40
+ exportSettings(packageId: string, formData: Parameters<Client['post']>[0]['data'], options?: THttpRequestOptions): Promise<void>;
41
+ getNodejsStatus(options?: THttpRequestOptions): Promise<{
42
+ node_state: "OK" | "NOT_INSTALLED" | "NOT_FOUND";
43
+ }>;
44
+ installNodejs(storage: TStorageType, options?: THttpRequestOptions): Promise<void>;
45
+ private _getJson;
46
+ private _post;
19
47
  }
@@ -1,64 +1,83 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CamOverlayAPI = void 0;
4
- const utils_1 = require("./internal/utils");
3
+ exports.CamScripterAPI = void 0;
4
+ const errors_1 = require("./errors/errors");
5
+ const ProxyClient_1 = require("./internal/ProxyClient");
5
6
  const CamScripterAPI_1 = require("./types/CamScripterAPI");
6
7
  const common_1 = require("./types/common");
7
- class CamOverlayAPI {
8
+ const BASE_PATH = '/local/camscripter';
9
+ class CamScripterAPI {
8
10
  client;
9
11
  constructor(client) {
10
12
  this.client = client;
11
13
  }
12
- async checkCameraTime() {
13
- return (await this.get('/local/camscripter/camera_time.cgi')).state;
14
+ static getProxyPath = () => `${BASE_PATH}/proxy.cgi`;
15
+ getClient(proxyParams) {
16
+ return proxyParams ? new ProxyClient_1.ProxyClient(this.client, proxyParams) : this.client;
14
17
  }
15
- async getStorageInfo() {
16
- const data = await this.get(`/local/camscripter/package/get_storage.cgi`);
17
- return CamScripterAPI_1.storageSchema.parse(data);
18
+ async checkAPIAvailable(options) {
19
+ await this._getJson(`${BASE_PATH}/api_check.cgi`, undefined, options);
18
20
  }
19
- async getNetworkCameraList() {
20
- const response = await this.get('/local/camscripter/network_camera_list.cgi');
21
- return common_1.networkCameraListSchema.parse(response.camera_list);
21
+ async checkCameraTime(options) {
22
+ const res = await this._getJson(`${BASE_PATH}/camera_time.cgi`, undefined, options);
23
+ return CamScripterAPI_1.cameraTimeResponseSchema.parse(res).state;
22
24
  }
23
- async getPackageList() {
24
- const data = await this.get('/local/camscripter/package/list.cgi');
25
- return CamScripterAPI_1.packageInfoListSchema.parse(data);
25
+ async getNetworkCameraList(options) {
26
+ const res = await this._getJson(`${BASE_PATH}/network_camera_list.cgi`, undefined, options);
27
+ return common_1.networkCameraListSchema.parse(res.camera_list);
26
28
  }
27
- async installPackages(formData, storage) {
28
- await this.post(`/local/camscripter/package/install.cgi?storage=${storage}`, formData);
29
+ async getStorageInfo(options) {
30
+ const res = await this._getJson(`${BASE_PATH}/package/get_storage.cgi`, undefined, options);
31
+ return CamScripterAPI_1.cameraStorageSchema.parse(res);
29
32
  }
30
- async uninstallPackage(packageId) {
31
- await this.get(`/local/camscripter/package/remove.cgi?package_name=${packageId}`);
33
+ async getPackageList(options) {
34
+ const res = await this._getJson(`${BASE_PATH}/package/list.cgi`, undefined, options);
35
+ return CamScripterAPI_1.packageInfoListSchema.parse(res);
32
36
  }
33
- async importSettings(packageId, formData) {
34
- await this.post(`/local/camscripter/package/data.cgi?action=IMPORT&package_name=${packageId}`, formData);
37
+ async installPackages(formData, storage, options) {
38
+ await this._post(`${BASE_PATH}/package/install.cgi`, formData, { storage: storage }, options);
35
39
  }
36
- async exportSettings(packageId, formData) {
37
- await this.post(`/local/camscripter/package/data.cgi?action=EXPORT&package_name=${packageId}`, formData);
40
+ async uninstallPackage(packageId, options) {
41
+ await this._getJson(`${BASE_PATH}/package/remove.cgi`, { package_name: packageId }, options);
38
42
  }
39
- async getNodejsStatus() {
40
- return (await this.get('/local/camscripter/diagnostics.cgi')).node_state;
43
+ async importSettings(packageId, formData, options) {
44
+ await this._post(`${BASE_PATH}/package/data.cgi`, formData, {
45
+ action: 'IMPORT',
46
+ package_name: packageId,
47
+ }, options);
41
48
  }
42
- async installNodejs(storage) {
43
- await this.get(`/local/camscripter/node_update.cgi?storage=${storage}`);
49
+ async exportSettings(packageId, formData, options) {
50
+ await this._post(`${BASE_PATH}/package/data.cgi`, formData, {
51
+ action: 'EXPORT',
52
+ package_name: packageId,
53
+ }, options);
44
54
  }
45
- async get(path, params) {
46
- const res = await this.client.get(path, params);
55
+ async getNodejsStatus(options) {
56
+ const res = await this._getJson(`${BASE_PATH}/diagnostics.cgi`, undefined, options);
57
+ return CamScripterAPI_1.nodeStateSchema.parse(res);
58
+ }
59
+ async installNodejs(storage, options) {
60
+ await this._getJson(`${BASE_PATH}/node_update.cgi`, { storage: storage }, options);
61
+ }
62
+ async _getJson(path, parameters, options) {
63
+ const agent = this.getClient(options?.proxyParams);
64
+ const res = await agent.get({ path, parameters, timeout: options?.timeout });
47
65
  if (res.ok) {
48
66
  return await res.json();
49
67
  }
50
68
  else {
51
- throw new Error(await (0, utils_1.responseStringify)(res));
69
+ throw new errors_1.ErrorWithResponse(res);
52
70
  }
53
71
  }
54
- async post(path, data, params) {
55
- const res = await this.client.post(path, data, params);
72
+ async _post(path, data, parameters, options, headers) {
73
+ const agent = this.getClient(options?.proxyParams);
74
+ const res = await agent.post({ path, data, parameters, headers, timeout: options?.timeout });
56
75
  if (res.ok) {
57
76
  return await res.json();
58
77
  }
59
78
  else {
60
- throw new Error(await (0, utils_1.responseStringify)(res));
79
+ throw new errors_1.ErrorWithResponse(res);
61
80
  }
62
81
  }
63
82
  }
64
- exports.CamOverlayAPI = CamOverlayAPI;
83
+ exports.CamScripterAPI = CamScripterAPI;