camstreamerlib 4.0.0-beta.7 → 4.0.0-beta.70

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 (302) hide show
  1. package/README.md +143 -38
  2. package/cjs/CamOverlayAPI.d.ts +863 -27
  3. package/cjs/CamOverlayAPI.js +135 -92
  4. package/cjs/CamScripterAPI.d.ts +44 -17
  5. package/cjs/CamScripterAPI.js +52 -42
  6. package/cjs/CamStreamerAPI.d.ts +62 -14
  7. package/cjs/CamStreamerAPI.js +82 -39
  8. package/cjs/CamSwitcherAPI.d.ts +158 -43
  9. package/cjs/CamSwitcherAPI.js +138 -122
  10. package/cjs/PlaneTrackerAPI.d.ts +233 -0
  11. package/cjs/PlaneTrackerAPI.js +247 -0
  12. package/cjs/VapixAPI.d.ts +94 -42
  13. package/cjs/VapixAPI.js +323 -233
  14. package/cjs/{CreatePackage.js → bin/CreatePackage.js} +44 -18
  15. package/cjs/errors/errors.d.ts +61 -4
  16. package/cjs/errors/errors.js +134 -7
  17. package/cjs/index.d.ts +20 -4
  18. package/cjs/index.js +28 -5
  19. package/cjs/internal/ProxyClient.d.ts +8 -9
  20. package/cjs/internal/ProxyClient.js +28 -32
  21. package/cjs/internal/WsEvents.d.ts +37 -0
  22. package/cjs/{CamSwitcherEvents.js → internal/WsEvents.js} +28 -22
  23. package/cjs/internal/types.d.ts +47 -0
  24. package/cjs/internal/types.js +2 -0
  25. package/cjs/internal/utils.d.ts +3 -1
  26. package/cjs/internal/utils.js +15 -3
  27. package/cjs/internal/versionCompare.d.ts +2 -2
  28. package/cjs/node/CamOverlayDrawingAPI.d.ts +41 -0
  29. package/cjs/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +15 -14
  30. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Frame.d.ts +8 -37
  31. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
  32. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.d.ts +5 -21
  33. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +5 -17
  34. package/cjs/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
  35. package/cjs/node/CamOverlayPainter/ResourceManager.js +72 -0
  36. package/cjs/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
  37. package/cjs/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +13 -13
  38. package/cjs/node/DefaultClient.d.ts +6 -5
  39. package/cjs/node/DefaultClient.js +10 -12
  40. package/cjs/{internal → node}/Digest.js +24 -1
  41. package/cjs/node/Digest.test.js +13 -0
  42. package/cjs/node/HttpRequestSender.d.ts +1 -0
  43. package/cjs/node/HttpRequestSender.js +14 -4
  44. package/cjs/node/HttpServer.d.ts +1 -1
  45. package/cjs/node/HttpServer.js +29 -6
  46. package/cjs/node/TimeZoneDaemon.d.ts +6 -0
  47. package/cjs/node/TimeZoneDaemon.js +29 -0
  48. package/cjs/node/VapixEvents.d.ts +16 -0
  49. package/cjs/{VapixEvents.js → node/VapixEvents.js} +10 -10
  50. package/cjs/node/WsClient.d.ts +9 -18
  51. package/cjs/node/WsClient.js +27 -20
  52. package/cjs/node/events/AxisCameraStationEvents.d.ts +12 -0
  53. package/cjs/node/events/AxisCameraStationEvents.js +53 -0
  54. package/cjs/node/events/GenetecAgent.d.ts +16 -0
  55. package/cjs/node/events/GenetecAgent.js +124 -0
  56. package/cjs/node/index.d.ts +18 -2
  57. package/cjs/node/index.js +39 -5
  58. package/cjs/types/CamOverlayAPI/CamOverlayAPI.d.ts +4330 -0
  59. package/cjs/types/CamOverlayAPI/CamOverlayAPI.js +92 -0
  60. package/cjs/types/CamOverlayAPI/accuweatherSchema.d.ts +84 -0
  61. package/cjs/types/CamOverlayAPI/accuweatherSchema.js +47 -0
  62. package/cjs/types/CamOverlayAPI/customGraphicsSchema.d.ts +700 -0
  63. package/cjs/types/CamOverlayAPI/customGraphicsSchema.js +72 -0
  64. package/cjs/types/CamOverlayAPI/imagesSchema.d.ts +95 -0
  65. package/cjs/types/CamOverlayAPI/imagesSchema.js +9 -0
  66. package/cjs/types/CamOverlayAPI/index.d.ts +11 -0
  67. package/cjs/types/CamOverlayAPI/index.js +27 -0
  68. package/cjs/types/CamOverlayAPI/infotickerSchema.d.ts +96 -0
  69. package/cjs/types/CamOverlayAPI/infotickerSchema.js +26 -0
  70. package/cjs/types/CamOverlayAPI/pipSchema.d.ts +125 -0
  71. package/cjs/types/CamOverlayAPI/pipSchema.js +39 -0
  72. package/cjs/types/CamOverlayAPI/ptzCompassSchema.d.ts +96 -0
  73. package/cjs/types/CamOverlayAPI/ptzCompassSchema.js +26 -0
  74. package/cjs/types/CamOverlayAPI/ptzSchema.d.ts +118 -0
  75. package/cjs/types/CamOverlayAPI/ptzSchema.js +12 -0
  76. package/cjs/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
  77. package/cjs/types/CamOverlayAPI/scoreBoardSchema.js +132 -0
  78. package/cjs/types/CamOverlayAPI/screenSharingSchema.d.ts +58 -0
  79. package/cjs/types/CamOverlayAPI/screenSharingSchema.js +8 -0
  80. package/cjs/types/CamOverlayAPI/serviceCommonTypes.d.ts +145 -0
  81. package/cjs/types/CamOverlayAPI/serviceCommonTypes.js +91 -0
  82. package/cjs/types/CamOverlayAPI/webCameraSharingSchema.d.ts +58 -0
  83. package/cjs/types/CamOverlayAPI/webCameraSharingSchema.js +8 -0
  84. package/cjs/types/CamOverlayDrawingAPI.d.ts +48 -0
  85. package/cjs/types/CamOverlayDrawingAPI.js +2 -0
  86. package/cjs/types/CamOverlayPainter.d.ts +76 -0
  87. package/cjs/types/CamOverlayPainter.js +14 -0
  88. package/cjs/types/CamScripterAPI.d.ts +86 -23
  89. package/cjs/types/CamScripterAPI.js +24 -8
  90. package/cjs/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
  91. package/cjs/types/CamScripterAPICameraEventsGenerator.js +2 -0
  92. package/cjs/types/CamStreamerAPI.d.ts +180 -47
  93. package/cjs/types/CamStreamerAPI.js +34 -3
  94. package/cjs/types/CamSwitcherAPI.d.ts +145 -66
  95. package/cjs/types/CamSwitcherAPI.js +38 -1
  96. package/cjs/{events → types}/GenetecAgent.d.ts +47 -47
  97. package/cjs/types/GenetecAgent.js +31 -0
  98. package/cjs/types/PlaneTrackerAPI.d.ts +952 -0
  99. package/cjs/types/PlaneTrackerAPI.js +320 -0
  100. package/cjs/types/VapixAPI.d.ts +254 -164
  101. package/cjs/types/VapixAPI.js +66 -11
  102. package/cjs/types/VapixEvents.d.ts +15 -0
  103. package/cjs/types/VapixEvents.js +2 -0
  104. package/cjs/types/common.d.ts +17 -5
  105. package/cjs/types/common.js +4 -2
  106. package/cjs/types/ws/CamOverlayEvents.d.ts +88 -0
  107. package/cjs/types/ws/CamOverlayEvents.js +19 -0
  108. package/cjs/types/ws/CamStreamerEvents.d.ts +249 -0
  109. package/cjs/types/ws/CamStreamerEvents.js +32 -0
  110. package/cjs/types/ws/PlaneTrackerEvents.d.ts +1637 -0
  111. package/cjs/types/ws/PlaneTrackerEvents.js +196 -0
  112. package/cjs/web/DefaultClient.d.ts +7 -5
  113. package/cjs/web/DefaultClient.js +26 -10
  114. package/cjs/web/WsClient.d.ts +9 -5
  115. package/cjs/web/WsClient.js +16 -18
  116. package/cjs/ws/CamOverlayEvents.d.ts +8 -0
  117. package/cjs/ws/CamOverlayEvents.js +24 -0
  118. package/cjs/ws/CamStreamerEvents.d.ts +8 -0
  119. package/cjs/ws/CamStreamerEvents.js +24 -0
  120. package/cjs/ws/CamSwitcherEvents.d.ts +8 -0
  121. package/cjs/ws/CamSwitcherEvents.js +24 -0
  122. package/cjs/ws/PlaneTrackerEvents.d.ts +9 -0
  123. package/cjs/ws/PlaneTrackerEvents.js +30 -0
  124. package/esm/CamOverlayAPI.js +135 -92
  125. package/esm/CamScripterAPI.js +50 -40
  126. package/esm/CamStreamerAPI.js +81 -39
  127. package/esm/CamSwitcherAPI.js +136 -120
  128. package/esm/PlaneTrackerAPI.js +243 -0
  129. package/esm/VapixAPI.js +323 -233
  130. package/esm/{CreatePackage.js → bin/CreatePackage.js} +16 -16
  131. package/esm/errors/errors.js +116 -6
  132. package/esm/index.js +20 -4
  133. package/esm/internal/ProxyClient.js +28 -32
  134. package/esm/{CamSwitcherEvents.js → internal/WsEvents.js} +26 -20
  135. package/esm/internal/types.js +1 -0
  136. package/esm/internal/utils.js +11 -1
  137. package/esm/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +13 -12
  138. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
  139. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +2 -13
  140. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/ResourceManager.js +7 -5
  141. package/esm/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +11 -11
  142. package/esm/node/DefaultClient.js +10 -12
  143. package/esm/node/Digest.test.js +11 -0
  144. package/esm/node/HttpRequestSender.js +14 -4
  145. package/esm/node/HttpServer.js +1 -1
  146. package/esm/node/TimeZoneDaemon.js +25 -0
  147. package/esm/{VapixEvents.js → node/VapixEvents.js} +10 -10
  148. package/esm/node/WsClient.js +22 -15
  149. package/esm/{events → node/events}/AxisCameraStationEvents.js +18 -13
  150. package/esm/node/events/GenetecAgent.js +120 -0
  151. package/esm/node/index.js +18 -2
  152. package/esm/types/CamOverlayAPI/CamOverlayAPI.js +76 -0
  153. package/esm/types/CamOverlayAPI/accuweatherSchema.js +44 -0
  154. package/esm/types/CamOverlayAPI/customGraphicsSchema.js +69 -0
  155. package/esm/types/CamOverlayAPI/imagesSchema.js +6 -0
  156. package/esm/types/CamOverlayAPI/index.js +11 -0
  157. package/esm/types/CamOverlayAPI/infotickerSchema.js +23 -0
  158. package/esm/types/CamOverlayAPI/pipSchema.js +36 -0
  159. package/esm/types/CamOverlayAPI/ptzCompassSchema.js +23 -0
  160. package/esm/types/CamOverlayAPI/ptzSchema.js +9 -0
  161. package/esm/types/CamOverlayAPI/scoreBoardSchema.js +129 -0
  162. package/esm/types/CamOverlayAPI/screenSharingSchema.js +5 -0
  163. package/esm/types/CamOverlayAPI/serviceCommonTypes.js +88 -0
  164. package/esm/types/CamOverlayAPI/webCameraSharingSchema.js +5 -0
  165. package/esm/types/CamOverlayDrawingAPI.js +1 -0
  166. package/esm/types/CamOverlayPainter.js +11 -0
  167. package/esm/types/CamScripterAPI.js +23 -7
  168. package/esm/types/CamScripterAPICameraEventsGenerator.js +1 -0
  169. package/esm/types/CamStreamerAPI.js +33 -2
  170. package/esm/types/CamSwitcherAPI.js +38 -1
  171. package/esm/types/GenetecAgent.js +28 -0
  172. package/esm/types/PlaneTrackerAPI.js +317 -0
  173. package/esm/types/VapixAPI.js +65 -10
  174. package/esm/types/VapixEvents.js +1 -0
  175. package/esm/types/common.js +3 -1
  176. package/esm/types/ws/CamOverlayEvents.js +16 -0
  177. package/esm/types/ws/CamStreamerEvents.js +29 -0
  178. package/esm/types/ws/PlaneTrackerEvents.js +193 -0
  179. package/esm/web/DefaultClient.js +26 -10
  180. package/esm/web/WsClient.js +16 -18
  181. package/esm/ws/CamOverlayEvents.js +20 -0
  182. package/esm/ws/CamStreamerEvents.js +20 -0
  183. package/esm/ws/CamSwitcherEvents.js +20 -0
  184. package/esm/ws/PlaneTrackerEvents.js +26 -0
  185. package/package.json +44 -11
  186. package/types/CamOverlayAPI.d.ts +867 -0
  187. package/types/CamScripterAPI.d.ts +46 -0
  188. package/types/CamStreamerAPI.d.ts +64 -0
  189. package/types/CamSwitcherAPI.d.ts +167 -0
  190. package/types/PlaneTrackerAPI.d.ts +233 -0
  191. package/types/VapixAPI.d.ts +118 -0
  192. package/types/bin/CreatePackage.d.ts +1 -0
  193. package/types/errors/errors.d.ts +91 -0
  194. package/types/index.d.ts +27 -0
  195. package/types/internal/ProxyClient.d.ts +10 -0
  196. package/types/internal/WsEvents.d.ts +37 -0
  197. package/types/internal/types.d.ts +47 -0
  198. package/{esm → types}/internal/utils.d.ts +3 -1
  199. package/{esm → types}/internal/versionCompare.d.ts +2 -2
  200. package/types/node/CamOverlayDrawingAPI.d.ts +41 -0
  201. package/{esm → types/node}/CamOverlayPainter/Frame.d.ts +8 -37
  202. package/{esm → types/node}/CamOverlayPainter/Painter.d.ts +5 -21
  203. package/types/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
  204. package/types/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
  205. package/types/node/DefaultClient.d.ts +16 -0
  206. package/types/node/Digest.test.d.ts +1 -0
  207. package/{esm → types}/node/HttpRequestSender.d.ts +1 -0
  208. package/{esm → types}/node/HttpServer.d.ts +1 -1
  209. package/types/node/TimeZoneDaemon.d.ts +6 -0
  210. package/types/node/VapixEvents.d.ts +16 -0
  211. package/types/node/WsClient.d.ts +30 -0
  212. package/types/node/events/AxisCameraStationEvents.d.ts +12 -0
  213. package/types/node/events/GenetecAgent.d.ts +16 -0
  214. package/types/node/index.d.ts +18 -0
  215. package/types/types/CamOverlayAPI/CamOverlayAPI.d.ts +4330 -0
  216. package/types/types/CamOverlayAPI/accuweatherSchema.d.ts +84 -0
  217. package/types/types/CamOverlayAPI/customGraphicsSchema.d.ts +700 -0
  218. package/types/types/CamOverlayAPI/imagesSchema.d.ts +95 -0
  219. package/types/types/CamOverlayAPI/index.d.ts +11 -0
  220. package/types/types/CamOverlayAPI/infotickerSchema.d.ts +96 -0
  221. package/types/types/CamOverlayAPI/pipSchema.d.ts +125 -0
  222. package/types/types/CamOverlayAPI/ptzCompassSchema.d.ts +96 -0
  223. package/types/types/CamOverlayAPI/ptzSchema.d.ts +118 -0
  224. package/types/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
  225. package/types/types/CamOverlayAPI/screenSharingSchema.d.ts +58 -0
  226. package/types/types/CamOverlayAPI/serviceCommonTypes.d.ts +145 -0
  227. package/types/types/CamOverlayAPI/webCameraSharingSchema.d.ts +58 -0
  228. package/types/types/CamOverlayDrawingAPI.d.ts +48 -0
  229. package/types/types/CamOverlayPainter.d.ts +76 -0
  230. package/types/types/CamScripterAPI.d.ts +130 -0
  231. package/types/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
  232. package/types/types/CamStreamerAPI.d.ts +272 -0
  233. package/{esm → types}/types/CamSwitcherAPI.d.ts +145 -66
  234. package/{esm/events → types/types}/GenetecAgent.d.ts +47 -47
  235. package/types/types/PlaneTrackerAPI.d.ts +952 -0
  236. package/{esm → types}/types/VapixAPI.d.ts +254 -164
  237. package/types/types/VapixEvents.d.ts +15 -0
  238. package/{esm → types}/types/common.d.ts +17 -5
  239. package/types/types/ws/CamOverlayEvents.d.ts +88 -0
  240. package/types/types/ws/CamStreamerEvents.d.ts +249 -0
  241. package/types/types/ws/PlaneTrackerEvents.d.ts +1637 -0
  242. package/types/web/DefaultClient.d.ts +8 -0
  243. package/types/web/WsClient.d.ts +17 -0
  244. package/types/ws/CamOverlayEvents.d.ts +8 -0
  245. package/types/ws/CamStreamerEvents.d.ts +8 -0
  246. package/types/ws/CamSwitcherEvents.d.ts +8 -0
  247. package/types/ws/PlaneTrackerEvents.d.ts +9 -0
  248. package/cjs/CamOverlayDrawingAPI.d.ts +0 -86
  249. package/cjs/CamOverlayPainter/ResourceManager.d.ts +0 -14
  250. package/cjs/CamOverlayPainter/ResourceManager.js +0 -46
  251. package/cjs/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  252. package/cjs/CamSwitcherEvents.d.ts +0 -18
  253. package/cjs/VapixEvents.d.ts +0 -43
  254. package/cjs/events/AxisCameraStationEvents.d.ts +0 -9
  255. package/cjs/events/AxisCameraStationEvents.js +0 -48
  256. package/cjs/events/GenetecAgent.js +0 -123
  257. package/cjs/internal/common.d.ts +0 -39
  258. package/cjs/internal/common.js +0 -27
  259. package/cjs/node/WsEventClient.d.ts +0 -13
  260. package/cjs/node/WsEventClient.js +0 -22
  261. package/cjs/types/CamOverlayAPI.d.ts +0 -188
  262. package/cjs/types/CamOverlayAPI.js +0 -47
  263. package/esm/CamOverlayAPI.d.ts +0 -31
  264. package/esm/CamOverlayDrawingAPI.d.ts +0 -86
  265. package/esm/CamOverlayPainter/ResourceManager.d.ts +0 -14
  266. package/esm/CamScripterAPI.d.ts +0 -19
  267. package/esm/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  268. package/esm/CamStreamerAPI.d.ts +0 -16
  269. package/esm/CamSwitcherAPI.d.ts +0 -52
  270. package/esm/CamSwitcherEvents.d.ts +0 -18
  271. package/esm/VapixAPI.d.ts +0 -66
  272. package/esm/VapixEvents.d.ts +0 -43
  273. package/esm/errors/errors.d.ts +0 -34
  274. package/esm/events/AxisCameraStationEvents.d.ts +0 -9
  275. package/esm/events/GenetecAgent.js +0 -119
  276. package/esm/index.d.ts +0 -11
  277. package/esm/internal/ProxyClient.d.ts +0 -11
  278. package/esm/internal/common.d.ts +0 -39
  279. package/esm/internal/common.js +0 -20
  280. package/esm/node/DefaultClient.d.ts +0 -15
  281. package/esm/node/WsClient.d.ts +0 -39
  282. package/esm/node/WsEventClient.d.ts +0 -13
  283. package/esm/node/WsEventClient.js +0 -18
  284. package/esm/types/CamOverlayAPI.d.ts +0 -188
  285. package/esm/types/CamOverlayAPI.js +0 -44
  286. package/esm/types/CamScripterAPI.d.ts +0 -67
  287. package/esm/types/CamStreamerAPI.d.ts +0 -139
  288. package/esm/web/DefaultClient.d.ts +0 -6
  289. package/esm/web/WsClient.d.ts +0 -13
  290. package/esm/web/index.d.ts +0 -2
  291. /package/cjs/{CreatePackage.d.ts → bin/CreatePackage.d.ts} +0 -0
  292. /package/cjs/{internal → node}/Digest.d.ts +0 -0
  293. /package/{esm/CreatePackage.d.ts → cjs/node/Digest.test.d.ts} +0 -0
  294. /package/cjs/types/{CamSwitcherEvents.d.ts → ws/CamSwitcherEvents.d.ts} +0 -0
  295. /package/cjs/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
  296. /package/esm/{internal → node}/Digest.js +0 -0
  297. /package/esm/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
  298. /package/{esm → types}/internal/constants.d.ts +0 -0
  299. /package/{esm → types}/internal/transformers.d.ts +0 -0
  300. /package/{esm/internal → types/node}/Digest.d.ts +0 -0
  301. /package/{esm/types → types/types/ws}/CamSwitcherEvents.d.ts +0 -0
  302. /package/{esm/node → types/web}/index.d.ts +0 -0
@@ -0,0 +1,247 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PlaneTrackerAPI = void 0;
4
+ const zod_1 = require("zod");
5
+ const utils_1 = require("./internal/utils");
6
+ const PlaneTrackerAPI_1 = require("./types/PlaneTrackerAPI");
7
+ const errors_1 = require("./errors/errors");
8
+ const ProxyClient_1 = require("./internal/ProxyClient");
9
+ const GenetecAgent_1 = require("./types/GenetecAgent");
10
+ const BASE_PATH = '/local/planetracker';
11
+ class PlaneTrackerAPI {
12
+ client;
13
+ apiUser;
14
+ constructor(client, apiUser) {
15
+ this.client = client;
16
+ this.apiUser = apiUser;
17
+ }
18
+ static getProxyPath = () => `${BASE_PATH}/proxy.cgi`;
19
+ static getWsEventsPath = () => `${BASE_PATH}/package/ws`;
20
+ getClient(proxyParams) {
21
+ return proxyParams ? new ProxyClient_1.ProxyClient(this.client, proxyParams) : this.client;
22
+ }
23
+ async checkCameraTime(options) {
24
+ const res = await this._getJson(`${BASE_PATH}/camera_time.cgi`, undefined, options);
25
+ return zod_1.z.boolean().parse(res.state);
26
+ }
27
+ async serverRunCheck(options) {
28
+ const agent = this.getClient(options?.proxyParams);
29
+ return await agent.get({ path: `${BASE_PATH}/package/serverRunCheck.cgi`, timeout: options?.timeout });
30
+ }
31
+ async getLiveViewAlias(rtspUrl, options) {
32
+ const agent = this.getClient(options?.proxyParams);
33
+ const res = await agent.get({
34
+ path: `${BASE_PATH}/getLiveViewAlias.cgi`,
35
+ parameters: { rtsp_url: rtspUrl },
36
+ timeout: options?.timeout,
37
+ });
38
+ return PlaneTrackerAPI_1.wsAliasResponseSchema.parse(await res.json());
39
+ }
40
+ async resetPtzCalibration(options) {
41
+ const agent = this.getClient(options?.proxyParams);
42
+ const res = await agent.get({
43
+ path: `${BASE_PATH}/package/resetPtzCalibration.cgi`,
44
+ parameters: this.apiUser,
45
+ timeout: options?.timeout,
46
+ });
47
+ if (!res.ok) {
48
+ throw new errors_1.ResetCalibrationError('PTZ', res);
49
+ }
50
+ }
51
+ async resetFocusCalibration(options) {
52
+ const agent = this.getClient(options?.proxyParams);
53
+ const res = await agent.get({
54
+ path: `${BASE_PATH}/package/resetFocusCalibration.cgi`,
55
+ parameters: this.apiUser,
56
+ timeout: options?.timeout,
57
+ });
58
+ if (!res.ok) {
59
+ throw new errors_1.ResetCalibrationError('FOCUS', res);
60
+ }
61
+ }
62
+ async fetchCameraSettings(options) {
63
+ const res = await this._getJson(`${BASE_PATH}/package_camera_settings.cgi`, { action: 'get' }, options);
64
+ return PlaneTrackerAPI_1.cameraSettingsSchema.parse(res);
65
+ }
66
+ async setCameraSettings(settings, options) {
67
+ return await this._postJsonEncoded(`${BASE_PATH}/package_camera_settings.cgi`, settings, {
68
+ action: 'set',
69
+ }, options);
70
+ }
71
+ async fetchServerSettings(options) {
72
+ const res = await this._getJson(`${BASE_PATH}/package_server_settings.cgi`, { action: 'get' }, options);
73
+ return PlaneTrackerAPI_1.serverSettingsSchema.parse(res);
74
+ }
75
+ async exportAppSettings(dataType, options) {
76
+ return await this._getBlob(`${BASE_PATH}/package_data.cgi`, { action: 'EXPORT', dataType }, options);
77
+ }
78
+ async importAppSettings(dataType, formData, options) {
79
+ const agent = this.getClient(options?.proxyParams);
80
+ const res = await agent.post({
81
+ path: `${BASE_PATH}/package_data.cgi`,
82
+ data: formData,
83
+ parameters: { action: 'IMPORT', dataType },
84
+ timeout: options?.timeout,
85
+ });
86
+ if (!res.ok) {
87
+ throw new errors_1.ImportSettingsError(res);
88
+ }
89
+ }
90
+ async fetchFlightInfo(icao, options) {
91
+ const res = await this._getJson(`${BASE_PATH}/package/flightInfo.cgi`, { icao }, options);
92
+ return PlaneTrackerAPI_1.flightInfoSchema.parse(res);
93
+ }
94
+ async getTrackingMode(options) {
95
+ const res = await this._getJson(`${BASE_PATH}/package/getTrackingMode.cgi`, undefined, options);
96
+ return PlaneTrackerAPI_1.trackingModeSchema.parse(res);
97
+ }
98
+ async setTrackingMode(mode, options) {
99
+ await this._postJsonEncoded(`${BASE_PATH}/package/setTrackingMode.cgi`, { mode }, this.apiUser, options);
100
+ }
101
+ async startTrackingPlane(icao, options) {
102
+ const agent = this.getClient(options?.proxyParams);
103
+ await agent.get({
104
+ path: `${BASE_PATH}/package/trackIcao.cgi`,
105
+ parameters: { icao, ...this.apiUser },
106
+ timeout: options?.timeout,
107
+ });
108
+ }
109
+ async stopTrackingPlane(options) {
110
+ const agent = this.getClient(options?.proxyParams);
111
+ await agent.get({
112
+ path: `${BASE_PATH}/package/resetIcao.cgi`,
113
+ parameters: this.apiUser,
114
+ timeout: options?.timeout,
115
+ });
116
+ }
117
+ async getIcao(by, value, options) {
118
+ const res = await this._getJson(`${BASE_PATH}/package/getIcao.cgi`, { [by]: value }, options);
119
+ return PlaneTrackerAPI_1.getIcaoSchema.parse(res).icao;
120
+ }
121
+ async getPriorityList(options) {
122
+ const res = await this._getJson(`${BASE_PATH}/package/getPriorityList.cgi`, undefined, options);
123
+ return PlaneTrackerAPI_1.priorityListSchema.parse(res).priorityList;
124
+ }
125
+ async setPriorityList(priorityList, options) {
126
+ return await this._postJsonEncoded(`${BASE_PATH}/package/setPriorityList.cgi`, { priorityList }, this.apiUser, options);
127
+ }
128
+ async getWhiteList(options) {
129
+ const res = await this._getJson(`${BASE_PATH}/package/getWhiteList.cgi`, undefined, options);
130
+ return PlaneTrackerAPI_1.whiteListSchema.parse(res).whiteList;
131
+ }
132
+ async setWhiteList(whiteList, options) {
133
+ return await this._postJsonEncoded(`${BASE_PATH}/package/setWhiteList.cgi`, { whiteList }, this.apiUser, options);
134
+ }
135
+ async getBlackList(options) {
136
+ const res = await this._getJson(`${BASE_PATH}/package/getBlackList.cgi`, undefined, options);
137
+ return PlaneTrackerAPI_1.blackListSchema.parse(res).blackList;
138
+ }
139
+ async setBlackList(blackList, options) {
140
+ return await this._postJsonEncoded(`${BASE_PATH}/package/setBlackList.cgi`, { blackList }, this.apiUser, options);
141
+ }
142
+ async fetchMapInfo(options) {
143
+ const res = await this._getJson(`${BASE_PATH}/package/getMapInfo.cgi`, undefined, options);
144
+ return PlaneTrackerAPI_1.mapInfoSchema.parse(res);
145
+ }
146
+ async getZones(options) {
147
+ const res = await this._getJson(`${BASE_PATH}/package/getZones.cgi`, undefined, options);
148
+ return PlaneTrackerAPI_1.zonesSchema.parse(res);
149
+ }
150
+ async setZones(zones, options) {
151
+ await this._postJsonEncoded(`${BASE_PATH}/package/setZones.cgi`, zones, this.apiUser, options);
152
+ }
153
+ async goToCoordinates(lat, lon, alt, options) {
154
+ const agent = this.getClient(options?.proxyParams);
155
+ const res = await agent.get({
156
+ path: `${BASE_PATH}/package/goToCoordinates.cgi`,
157
+ parameters: { lat, lon, alt, ...this.apiUser },
158
+ timeout: options?.timeout,
159
+ });
160
+ if (!res.ok) {
161
+ if (res.status === 400 && res.statusText === 'Cannot set coordinates in automatic mode') {
162
+ throw new errors_1.CannotSetCoordsInAutoModeError();
163
+ }
164
+ if (res.status === 400 && res.statusText === 'Invalid lat/lon parameters') {
165
+ throw new errors_1.InvalidLatLngError();
166
+ }
167
+ if (res.status === 400 && res.statusText === 'Invalid alt parameter') {
168
+ throw new errors_1.InvalidAltitudeError();
169
+ }
170
+ if (res.status === 400) {
171
+ throw new errors_1.BadRequestError(res);
172
+ }
173
+ if (res.status === 500) {
174
+ throw new errors_1.ServerError();
175
+ }
176
+ }
177
+ }
178
+ async checkGenetecConnection(params, options) {
179
+ return await this._postUrlEncoded(`${BASE_PATH}/package/checkGenetecConnection.cgi`, params, options);
180
+ }
181
+ async getGenetecCameraList(params, options) {
182
+ const res = await this._postUrlEncoded(`${BASE_PATH}/package/getGenetecCameraList.cgi`, params, options);
183
+ return GenetecAgent_1.cameraListSchema.parse(await res.json());
184
+ }
185
+ async _getJson(path, parameters, options, headers) {
186
+ const agent = this.getClient(options?.proxyParams);
187
+ const res = await agent.get({ path, parameters, timeout: options?.timeout, headers });
188
+ if (res.ok) {
189
+ return await res.json();
190
+ }
191
+ else {
192
+ throw new errors_1.ErrorWithResponse(res);
193
+ }
194
+ }
195
+ async _getBlob(path, parameters, options) {
196
+ const agent = this.getClient(options?.proxyParams);
197
+ const res = await agent.get({ path, parameters, timeout: options?.timeout });
198
+ if (res.ok) {
199
+ return await this.parseBlobResponse(res);
200
+ }
201
+ else {
202
+ throw new errors_1.ErrorWithResponse(res);
203
+ }
204
+ }
205
+ async parseBlobResponse(response) {
206
+ try {
207
+ return (await response.blob());
208
+ }
209
+ catch (err) {
210
+ throw new errors_1.ParsingBlobError(err);
211
+ }
212
+ }
213
+ async _postJsonEncoded(path, data, parameters, options) {
214
+ const agent = this.getClient(options?.proxyParams);
215
+ const jsonData = JSON.stringify(data);
216
+ const res = await agent.post({
217
+ path,
218
+ data: jsonData,
219
+ parameters,
220
+ headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' },
221
+ timeout: options?.timeout,
222
+ });
223
+ if (res.ok) {
224
+ return res;
225
+ }
226
+ else {
227
+ throw new errors_1.ErrorWithResponse(res);
228
+ }
229
+ }
230
+ async _postUrlEncoded(path, params, options) {
231
+ const data = (0, utils_1.paramToUrl)(params);
232
+ const agent = this.getClient(options?.proxyParams);
233
+ const res = await agent.post({
234
+ path,
235
+ data,
236
+ headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
237
+ timeout: options?.timeout,
238
+ });
239
+ if (res.ok) {
240
+ return res;
241
+ }
242
+ else {
243
+ throw new errors_1.ErrorWithResponse(res);
244
+ }
245
+ }
246
+ }
247
+ exports.PlaneTrackerAPI = PlaneTrackerAPI;
package/cjs/VapixAPI.d.ts CHANGED
@@ -1,41 +1,53 @@
1
- import { IClient, TParameters } from './internal/common';
2
- import { TApplication, TAudioSampleRates, TSDCardInfo, TPtzOverview, TCameraPTZItem, TCameraPTZItemData, TAudioDevice } from './types/VapixAPI';
1
+ import { IClient, TParameters, TResponse } from './internal/types';
2
+ import { TAudioDevice, TPortSetSchema, TPortSequenceStateSchema } from './types/VapixAPI';
3
3
  import { ProxyClient } from './internal/ProxyClient';
4
- import { TCameraImageConfig, TProxyParam } from './types/common';
5
- export declare class VapixAPI<Client extends IClient = IClient> {
6
- client: ProxyClient<Client>;
7
- constructor(client: Client, getProxyUrl: () => string);
8
- getUrlEncoded(proxy: TProxyParam, path: string, parameters?: TParameters, headers?: Record<string, string>): Promise<import("./internal/common").TResponse>;
9
- postJson(proxy: TProxyParam, path: string, jsonData: Record<string, any>, headers?: Record<string, string>): Promise<import("./internal/common").TResponse>;
10
- getCameraImage(params: TCameraImageConfig, proxy?: TProxyParam): Promise<import("./internal/common").TResponse>;
11
- getEventDeclarations(proxy?: TProxyParam): Promise<string>;
12
- getSupportedAudioSampleRate(proxy?: TProxyParam): Promise<TAudioSampleRates[]>;
13
- performAutofocus(proxy?: TProxyParam): Promise<void>;
14
- checkSDCard(proxy?: TProxyParam): Promise<TSDCardInfo>;
15
- mountSDCard(proxy?: TProxyParam): Promise<number>;
16
- unmountSDCard(proxy?: TProxyParam): Promise<number>;
4
+ import { TCameraImageConfig, THttpRequestOptions, TProxyParams } from './types/common';
5
+ export declare class VapixAPI<Client extends IClient<TResponse, any>> {
6
+ private client;
7
+ private CustomFormData;
8
+ constructor(client: Client, CustomFormData?: {
9
+ new (form?: HTMLFormElement | undefined, submitter?: HTMLElement | null | undefined): FormData;
10
+ prototype: FormData;
11
+ });
12
+ getClient(proxyParams?: TProxyParams): Client | ProxyClient<Client>;
13
+ postUrlEncoded(path: string, parameters?: TParameters, headers?: Record<string, string>, options?: THttpRequestOptions): Promise<TResponse>;
14
+ postJson(path: string, jsonData: Record<string, any>, headers?: Record<string, string>, options?: THttpRequestOptions): Promise<TResponse>;
15
+ getCameraImage(parameters: TCameraImageConfig, options?: THttpRequestOptions): Promise<ReturnType<Client["get"]>>;
16
+ getEventDeclarations(options?: THttpRequestOptions): Promise<string>;
17
+ getSupportedAudioSampleRate(options?: THttpRequestOptions): Promise<{
18
+ sampleRate: number;
19
+ bitRates: number[];
20
+ }[]>;
21
+ performAutofocus(options?: THttpRequestOptions): Promise<void>;
22
+ checkSDCard(options?: THttpRequestOptions): Promise<{
23
+ status: "OK" | "connected" | "disconnected";
24
+ totalSize: number;
25
+ freeSize: number;
26
+ }>;
27
+ mountSDCard(options?: THttpRequestOptions): Promise<number>;
28
+ unmountSDCard(options?: THttpRequestOptions): Promise<number>;
17
29
  private _doSDCardMountAction;
18
- fetchSDCardJobProgress(jobId: number, proxy?: TProxyParam): Promise<number>;
19
- downloadCameraReport(proxy?: TProxyParam): Promise<import("./internal/common").TResponse>;
20
- getSystemLog(proxy?: TProxyParam): Promise<import("./internal/common").TResponse>;
21
- getMaxFps(channel: number, proxy?: TProxyParam): Promise<number>;
22
- getTimezone(proxy?: TProxyParam): Promise<string>;
23
- getDateTimeInfo(proxy?: TProxyParam): Promise<{
30
+ fetchSDCardJobProgress(jobId: number, options?: THttpRequestOptions): Promise<number>;
31
+ downloadCameraReport(options?: THttpRequestOptions): Promise<TResponse>;
32
+ getSystemLog(options?: THttpRequestOptions): Promise<TResponse>;
33
+ getMaxFps(channel: number, options?: THttpRequestOptions): Promise<number>;
34
+ getTimezone(options?: THttpRequestOptions): Promise<string>;
35
+ getDateTimeInfo(options?: THttpRequestOptions): Promise<{
24
36
  data: {
25
37
  dateTime: string;
26
38
  dstEnabled: boolean;
27
39
  localDateTime: string;
28
40
  posixTimeZone: string;
29
- timeZone: string;
41
+ timeZone?: string | undefined;
30
42
  };
31
43
  }>;
32
- getDevicesSettings(proxy?: TProxyParam): Promise<TAudioDevice[]>;
33
- fetchRemoteDeviceInfo<T extends Record<string, any>>(payload: T, proxy?: TProxyParam): Promise<any>;
34
- getHeaders(proxy?: TProxyParam): Promise<Record<string, string>>;
35
- setHeaders(headers: Record<string, string>, proxy?: TProxyParam): Promise<import("./internal/common").TResponse>;
36
- getParameter(paramNames: string | string[], proxy?: TProxyParam): Promise<Record<string, string>>;
37
- setParameter(params: Record<string, string | number | boolean>, proxy?: TProxyParam): Promise<boolean>;
38
- getGuardTourList(proxy?: TProxyParam): Promise<{
44
+ getDevicesSettings(options?: THttpRequestOptions): Promise<TAudioDevice[]>;
45
+ fetchRemoteDeviceInfo<T extends Record<string, any>>(payload: T, options?: THttpRequestOptions): Promise<any>;
46
+ getHeaders(options?: THttpRequestOptions): Promise<Record<string, string>>;
47
+ setHeaders(headers: Record<string, string>, options?: THttpRequestOptions): Promise<TResponse>;
48
+ getParameter(paramNames: string | string[], options?: THttpRequestOptions): Promise<Record<string, string>>;
49
+ setParameter(params: Record<string, string | number | boolean>, options?: THttpRequestOptions): Promise<void>;
50
+ getGuardTourList(options?: THttpRequestOptions): Promise<{
39
51
  name: string;
40
52
  id: string;
41
53
  running: string;
@@ -49,18 +61,58 @@ export declare class VapixAPI<Client extends IClient = IClient> {
49
61
  camNbr?: unknown;
50
62
  randomEnabled?: unknown;
51
63
  timeBetweenSequences?: unknown;
64
+ }>;
65
+ setGuardTourEnabled(guardTourId: string, enable: boolean, options?: THttpRequestOptions): Promise<void>;
66
+ getPTZPresetList(channel: number, options?: THttpRequestOptions): Promise<string[]>;
67
+ listPTZ(camera: number, options?: THttpRequestOptions): Promise<{
68
+ name: string;
69
+ id: number;
70
+ data: {
71
+ pan?: number | undefined;
72
+ tilt?: number | undefined;
73
+ zoom?: number | undefined;
74
+ };
75
+ }[]>;
76
+ listPtzVideoSourceOverview(options?: THttpRequestOptions): Promise<Record<number, {
77
+ name: string;
78
+ id: number;
79
+ }[]>>;
80
+ goToPreset(channel: number, presetName: string, options?: THttpRequestOptions): Promise<TResponse>;
81
+ getPtzPosition(camera: number, options?: THttpRequestOptions): Promise<{
82
+ pan?: number | undefined;
83
+ tilt?: number | undefined;
84
+ zoom?: number | undefined;
85
+ }>;
86
+ getPorts(options?: THttpRequestOptions): Promise<{
87
+ name: string;
88
+ port: string;
89
+ state: "open" | "closed";
90
+ configurable: boolean;
91
+ usage: string;
92
+ direction: "input" | "output";
93
+ normalState: "open" | "closed";
94
+ readonly?: boolean | undefined;
95
+ }[]>;
96
+ setPorts(ports: TPortSetSchema[], options?: THttpRequestOptions): Promise<void>;
97
+ setPortStateSequence(port: number, sequence: TPortSequenceStateSchema[], options?: THttpRequestOptions): Promise<void>;
98
+ getApplicationList(options?: THttpRequestOptions): Promise<{
99
+ Name: string;
100
+ NiceName: string;
101
+ Vendor: string;
102
+ Version: string;
103
+ License: string;
104
+ Status: string;
105
+ appId: "CamStreamer" | "CamSwitcher" | "CamOverlay" | "CamScripter" | "PlaneTracker" | "Ndihxplugin" | "SportTracker" | null;
106
+ ApplicationID?: string | undefined;
107
+ ConfigurationPage?: string | undefined;
108
+ VendorHomePage?: string | undefined;
109
+ LicenseName?: string | undefined;
52
110
  }[]>;
53
- setGuardTourEnabled(guardTourID: string, enable: boolean, proxy?: TProxyParam): Promise<boolean>;
54
- getPTZPresetList(channel: number, proxy?: TProxyParam): Promise<string[]>;
55
- listPTZ(camera: number, proxy?: TProxyParam): Promise<TCameraPTZItem[]>;
56
- listPtzVideoSourceOverview(proxy?: TProxyParam): Promise<TPtzOverview>;
57
- goToPreset(channel: number, presetName: string, proxy?: TProxyParam): Promise<import("./internal/common").TResponse>;
58
- getPtzPosition(camera: number, proxy?: TProxyParam): Promise<TCameraPTZItemData>;
59
- getInputState(port: number, proxy?: TProxyParam): Promise<boolean>;
60
- setOutputState(port: number, active: boolean, proxy?: TProxyParam): Promise<import("./internal/common").TResponse>;
61
- getApplicationList(proxy?: TProxyParam): Promise<TApplication[]>;
62
- startApplication(applicationID: string, proxy?: TProxyParam): Promise<void>;
63
- restartApplication(applicationID: string, proxy?: TProxyParam): Promise<void>;
64
- stopApplication(applicationID: string, proxy?: TProxyParam): Promise<void>;
65
- installApplication(data: Blob, fileName: string): Promise<void>;
111
+ startApplication(applicationId: string, options?: THttpRequestOptions): Promise<void>;
112
+ restartApplication(applicationId: string, options?: THttpRequestOptions): Promise<void>;
113
+ stopApplication(applicationId: string, options?: THttpRequestOptions): Promise<void>;
114
+ installApplication(data: Parameters<typeof FormData.prototype.append>[1], fileName: string, options?: THttpRequestOptions): Promise<void>;
115
+ private static parseParameters;
116
+ private static parseCameraPtzResponse;
117
+ private static parsePtz;
66
118
  }