camstreamerlib 4.0.0-beta.6 → 4.0.0-beta.61
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.
- package/README.md +142 -38
- package/cjs/CamOverlayAPI.js +135 -92
- package/cjs/CamScripterAPI.js +52 -42
- package/cjs/CamStreamerAPI.js +83 -39
- package/cjs/CamSwitcherAPI.js +142 -124
- package/cjs/PlaneTrackerAPI.js +247 -0
- package/cjs/VapixAPI.js +323 -233
- package/cjs/{CreatePackage.js → bin/CreatePackage.js} +22 -19
- package/cjs/errors/errors.js +113 -1
- package/cjs/index.js +28 -5
- package/cjs/internal/ProxyClient.js +28 -32
- package/cjs/{CamSwitcherEvents.js → internal/WsEvents.js} +28 -22
- package/cjs/internal/types.js +2 -0
- package/cjs/internal/utils.js +22 -3
- package/cjs/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +17 -14
- package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
- package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +5 -17
- package/cjs/node/CamOverlayPainter/ResourceManager.js +72 -0
- package/cjs/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +16 -13
- package/cjs/node/DefaultClient.js +10 -12
- package/cjs/{internal → node}/Digest.js +8 -5
- package/cjs/node/Digest.test.js +13 -0
- package/cjs/node/HttpRequestSender.js +14 -4
- package/cjs/node/HttpServer.js +15 -12
- package/cjs/{VapixEvents.js → node/VapixEvents.js} +10 -10
- package/cjs/node/WsClient.js +30 -20
- package/cjs/node/events/AxisCameraStationEvents.js +53 -0
- package/cjs/node/events/GenetecAgent.js +123 -0
- package/cjs/node/index.js +38 -5
- package/cjs/types/CamOverlayAPI/CamOverlayAPI.js +92 -0
- package/cjs/types/CamOverlayAPI/accuweatherSchema.js +47 -0
- package/cjs/types/CamOverlayAPI/customGraphicsSchema.js +72 -0
- package/cjs/types/CamOverlayAPI/imagesSchema.js +9 -0
- package/cjs/types/CamOverlayAPI/index.js +27 -0
- package/cjs/types/CamOverlayAPI/infotickerSchema.js +26 -0
- package/cjs/types/CamOverlayAPI/pipSchema.js +39 -0
- package/cjs/types/CamOverlayAPI/ptzCompassSchema.js +26 -0
- package/cjs/types/CamOverlayAPI/ptzSchema.js +12 -0
- package/cjs/types/CamOverlayAPI/scoreBoardSchema.js +132 -0
- package/cjs/types/CamOverlayAPI/screenSharingSchema.js +8 -0
- package/cjs/types/CamOverlayAPI/serviceCommonTypes.js +91 -0
- package/cjs/types/CamOverlayAPI/webCameraSharingSchema.js +8 -0
- package/cjs/types/CamOverlayDrawingAPI.js +2 -0
- package/cjs/types/CamOverlayPainter.js +14 -0
- package/cjs/types/CamScripterAPI.js +24 -8
- package/cjs/types/CamScripterAPICameraEventsGenerator.js +2 -0
- package/cjs/types/CamStreamerAPI.js +34 -3
- package/cjs/types/CamSwitcherAPI.js +38 -1
- package/cjs/types/GenetecAgent.js +31 -0
- package/cjs/types/PlaneTrackerAPI.js +310 -0
- package/cjs/types/VapixAPI.js +71 -13
- package/cjs/types/VapixEvents.js +2 -0
- package/cjs/types/common.js +4 -2
- package/cjs/types/ws/CamOverlayEvents.js +19 -0
- package/cjs/types/ws/CamStreamerEvents.js +32 -0
- package/cjs/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +8 -0
- package/cjs/types/ws/PlaneTrackerEvents.js +194 -0
- package/cjs/web/DefaultClient.js +26 -10
- package/cjs/web/WsClient.js +16 -18
- package/cjs/ws/CamOverlayEvents.js +24 -0
- package/cjs/ws/CamStreamerEvents.js +24 -0
- package/cjs/ws/CamSwitcherEvents.js +24 -0
- package/cjs/ws/PlaneTrackerEvents.js +30 -0
- package/esm/CamOverlayAPI.js +131 -88
- package/esm/CamScripterAPI.js +48 -38
- package/esm/CamStreamerAPI.js +81 -38
- package/esm/CamSwitcherAPI.js +138 -120
- package/esm/PlaneTrackerAPI.js +243 -0
- package/esm/VapixAPI.js +315 -225
- package/esm/{CreatePackage.js → bin/CreatePackage.js} +3 -3
- package/esm/errors/errors.js +96 -0
- package/esm/index.js +20 -4
- package/esm/internal/ProxyClient.js +28 -32
- package/esm/{CamSwitcherEvents.js → internal/WsEvents.js} +26 -20
- package/esm/internal/utils.js +17 -1
- package/esm/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +12 -12
- package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
- package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +2 -13
- package/esm/{CamOverlayPainter → node/CamOverlayPainter}/ResourceManager.js +7 -5
- package/esm/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +11 -11
- package/esm/node/DefaultClient.js +10 -12
- package/esm/{internal → node}/Digest.js +1 -1
- package/esm/node/Digest.test.js +11 -0
- package/esm/node/HttpRequestSender.js +14 -4
- package/esm/node/HttpServer.js +5 -5
- package/esm/{VapixEvents.js → node/VapixEvents.js} +10 -10
- package/esm/node/WsClient.js +22 -15
- package/esm/{events → node/events}/AxisCameraStationEvents.js +18 -13
- package/esm/node/events/GenetecAgent.js +119 -0
- package/esm/node/index.js +17 -2
- package/esm/types/CamOverlayAPI/CamOverlayAPI.js +76 -0
- package/esm/types/CamOverlayAPI/accuweatherSchema.js +44 -0
- package/esm/types/CamOverlayAPI/customGraphicsSchema.js +69 -0
- package/esm/types/CamOverlayAPI/imagesSchema.js +6 -0
- package/esm/types/CamOverlayAPI/index.js +11 -0
- package/esm/types/CamOverlayAPI/infotickerSchema.js +23 -0
- package/esm/types/CamOverlayAPI/pipSchema.js +36 -0
- package/esm/types/CamOverlayAPI/ptzCompassSchema.js +23 -0
- package/esm/types/CamOverlayAPI/ptzSchema.js +9 -0
- package/esm/types/CamOverlayAPI/scoreBoardSchema.js +129 -0
- package/esm/types/CamOverlayAPI/screenSharingSchema.js +5 -0
- package/esm/types/CamOverlayAPI/serviceCommonTypes.js +88 -0
- package/esm/types/CamOverlayAPI/webCameraSharingSchema.js +5 -0
- package/esm/types/CamOverlayPainter.js +11 -0
- package/esm/types/CamScripterAPI.js +23 -7
- package/esm/types/CamScripterAPICameraEventsGenerator.js +1 -0
- package/esm/types/CamStreamerAPI.js +33 -2
- package/esm/types/CamSwitcherAPI.js +38 -1
- package/esm/types/GenetecAgent.js +28 -0
- package/esm/types/PlaneTrackerAPI.js +307 -0
- package/esm/types/VapixAPI.js +70 -12
- package/esm/types/VapixEvents.js +1 -0
- package/esm/types/common.js +3 -1
- package/esm/types/ws/CamOverlayEvents.js +16 -0
- package/esm/types/ws/CamStreamerEvents.js +29 -0
- package/esm/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +8 -0
- package/esm/types/ws/PlaneTrackerEvents.js +191 -0
- package/esm/web/DefaultClient.js +26 -10
- package/esm/web/WsClient.js +16 -18
- package/esm/ws/CamOverlayEvents.js +20 -0
- package/esm/ws/CamStreamerEvents.js +20 -0
- package/esm/ws/CamSwitcherEvents.js +20 -0
- package/esm/ws/PlaneTrackerEvents.js +26 -0
- package/package.json +29 -11
- package/types/CamOverlayAPI.d.ts +867 -0
- package/types/CamScripterAPI.d.ts +46 -0
- package/types/CamStreamerAPI.d.ts +64 -0
- package/types/CamSwitcherAPI.d.ts +167 -0
- package/types/PlaneTrackerAPI.d.ts +229 -0
- package/types/VapixAPI.d.ts +118 -0
- package/types/bin/CreatePackage.d.ts +1 -0
- package/types/errors/errors.d.ts +83 -0
- package/types/index.d.ts +27 -0
- package/types/internal/ProxyClient.d.ts +10 -0
- package/types/internal/WsEvents.d.ts +37 -0
- package/types/internal/types.d.ts +47 -0
- package/{cjs → types}/internal/utils.d.ts +4 -1
- package/{cjs → types}/internal/versionCompare.d.ts +2 -2
- package/types/node/CamOverlayDrawingAPI.d.ts +41 -0
- package/{esm → types/node}/CamOverlayPainter/Frame.d.ts +8 -37
- package/{cjs → types/node}/CamOverlayPainter/Painter.d.ts +5 -21
- package/types/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
- package/types/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
- package/types/node/DefaultClient.d.ts +16 -0
- package/types/node/Digest.test.d.ts +1 -0
- package/{esm → types}/node/HttpRequestSender.d.ts +1 -0
- package/{cjs → types}/node/HttpServer.d.ts +2 -2
- package/types/node/VapixEvents.d.ts +16 -0
- package/types/node/WsClient.d.ts +30 -0
- package/types/node/events/AxisCameraStationEvents.d.ts +12 -0
- package/types/node/events/GenetecAgent.d.ts +16 -0
- package/types/node/index.d.ts +17 -0
- package/types/types/CamOverlayAPI/CamOverlayAPI.d.ts +4330 -0
- package/types/types/CamOverlayAPI/accuweatherSchema.d.ts +84 -0
- package/types/types/CamOverlayAPI/customGraphicsSchema.d.ts +700 -0
- package/types/types/CamOverlayAPI/imagesSchema.d.ts +95 -0
- package/types/types/CamOverlayAPI/index.d.ts +11 -0
- package/types/types/CamOverlayAPI/infotickerSchema.d.ts +96 -0
- package/types/types/CamOverlayAPI/pipSchema.d.ts +125 -0
- package/types/types/CamOverlayAPI/ptzCompassSchema.d.ts +96 -0
- package/types/types/CamOverlayAPI/ptzSchema.d.ts +118 -0
- package/types/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
- package/types/types/CamOverlayAPI/screenSharingSchema.d.ts +58 -0
- package/types/types/CamOverlayAPI/serviceCommonTypes.d.ts +145 -0
- package/types/types/CamOverlayAPI/webCameraSharingSchema.d.ts +58 -0
- package/types/types/CamOverlayDrawingAPI.d.ts +48 -0
- package/types/types/CamOverlayPainter.d.ts +76 -0
- package/types/types/CamScripterAPI.d.ts +130 -0
- package/types/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
- package/types/types/CamStreamerAPI.d.ts +272 -0
- package/{esm → types}/types/CamSwitcherAPI.d.ts +145 -66
- package/{esm/events → types/types}/GenetecAgent.d.ts +47 -47
- package/types/types/PlaneTrackerAPI.d.ts +918 -0
- package/{cjs → types}/types/VapixAPI.d.ts +647 -465
- package/types/types/VapixEvents.d.ts +15 -0
- package/{cjs → types}/types/common.d.ts +17 -5
- package/types/types/ws/CamOverlayEvents.d.ts +88 -0
- package/types/types/ws/CamStreamerEvents.d.ts +249 -0
- package/{cjs/types → types/types/ws}/CamSwitcherEvents.d.ts +77 -0
- package/types/types/ws/PlaneTrackerEvents.d.ts +1597 -0
- package/types/web/DefaultClient.d.ts +8 -0
- package/types/web/WsClient.d.ts +17 -0
- package/types/ws/CamOverlayEvents.d.ts +8 -0
- package/types/ws/CamStreamerEvents.d.ts +8 -0
- package/types/ws/CamSwitcherEvents.d.ts +8 -0
- package/types/ws/PlaneTrackerEvents.d.ts +9 -0
- package/cjs/CamOverlayAPI.d.ts +0 -31
- package/cjs/CamOverlayDrawingAPI.d.ts +0 -86
- package/cjs/CamOverlayPainter/Frame.d.ts +0 -96
- package/cjs/CamOverlayPainter/ResourceManager.d.ts +0 -14
- package/cjs/CamOverlayPainter/ResourceManager.js +0 -46
- package/cjs/CamScripterAPI.d.ts +0 -19
- package/cjs/CamScripterAPICameraEventsGenerator.d.ts +0 -74
- package/cjs/CamStreamerAPI.d.ts +0 -16
- package/cjs/CamSwitcherAPI.d.ts +0 -48
- package/cjs/CamSwitcherEvents.d.ts +0 -18
- package/cjs/VapixAPI.d.ts +0 -66
- package/cjs/VapixEvents.d.ts +0 -43
- package/cjs/errors/errors.d.ts +0 -34
- package/cjs/events/AxisCameraStationEvents.d.ts +0 -9
- package/cjs/events/AxisCameraStationEvents.js +0 -48
- package/cjs/events/GenetecAgent.d.ts +0 -174
- package/cjs/events/GenetecAgent.js +0 -123
- package/cjs/index.d.ts +0 -11
- package/cjs/internal/ProxyClient.d.ts +0 -11
- package/cjs/internal/common.d.ts +0 -39
- package/cjs/internal/common.js +0 -27
- package/cjs/node/DefaultClient.d.ts +0 -15
- package/cjs/node/HttpRequestSender.d.ts +0 -28
- package/cjs/node/WsClient.d.ts +0 -39
- package/cjs/node/WsEventClient.d.ts +0 -13
- package/cjs/node/WsEventClient.js +0 -22
- package/cjs/types/CamOverlayAPI.d.ts +0 -188
- package/cjs/types/CamOverlayAPI.js +0 -47
- package/cjs/types/CamScripterAPI.d.ts +0 -67
- package/cjs/types/CamStreamerAPI.d.ts +0 -139
- package/cjs/types/CamSwitcherAPI.d.ts +0 -814
- package/cjs/web/DefaultClient.d.ts +0 -6
- package/cjs/web/WsClient.d.ts +0 -13
- package/cjs/web/index.d.ts +0 -2
- package/esm/CamOverlayAPI.d.ts +0 -31
- package/esm/CamOverlayDrawingAPI.d.ts +0 -86
- package/esm/CamOverlayPainter/Painter.d.ts +0 -48
- package/esm/CamOverlayPainter/ResourceManager.d.ts +0 -14
- package/esm/CamScripterAPI.d.ts +0 -19
- package/esm/CamScripterAPICameraEventsGenerator.d.ts +0 -74
- package/esm/CamStreamerAPI.d.ts +0 -16
- package/esm/CamSwitcherAPI.d.ts +0 -48
- package/esm/CamSwitcherEvents.d.ts +0 -18
- package/esm/VapixAPI.d.ts +0 -66
- package/esm/VapixEvents.d.ts +0 -43
- package/esm/errors/errors.d.ts +0 -34
- package/esm/events/AxisCameraStationEvents.d.ts +0 -9
- package/esm/events/GenetecAgent.js +0 -119
- package/esm/index.d.ts +0 -11
- package/esm/internal/Digest.d.ts +0 -4
- package/esm/internal/ProxyClient.d.ts +0 -11
- package/esm/internal/common.d.ts +0 -39
- package/esm/internal/common.js +0 -20
- package/esm/internal/constants.d.ts +0 -1
- package/esm/internal/transformers.d.ts +0 -5
- package/esm/internal/utils.d.ts +0 -11
- package/esm/internal/versionCompare.d.ts +0 -6
- package/esm/node/DefaultClient.d.ts +0 -15
- package/esm/node/HttpServer.d.ts +0 -21
- package/esm/node/WsClient.d.ts +0 -39
- package/esm/node/WsEventClient.d.ts +0 -13
- package/esm/node/WsEventClient.js +0 -18
- package/esm/node/index.d.ts +0 -2
- package/esm/types/CamOverlayAPI.d.ts +0 -188
- package/esm/types/CamOverlayAPI.js +0 -44
- package/esm/types/CamScripterAPI.d.ts +0 -67
- package/esm/types/CamStreamerAPI.d.ts +0 -139
- package/esm/types/CamSwitcherEvents.d.ts +0 -491
- package/esm/types/VapixAPI.d.ts +0 -1683
- package/esm/types/common.d.ts +0 -37
- package/esm/web/DefaultClient.d.ts +0 -6
- package/esm/web/WsClient.d.ts +0 -13
- package/esm/web/index.d.ts +0 -2
- /package/{cjs/CreatePackage.d.ts → esm/internal/types.js} +0 -0
- /package/esm/{CreatePackage.d.ts → types/CamOverlayDrawingAPI.js} +0 -0
- /package/{cjs → types}/internal/constants.d.ts +0 -0
- /package/{cjs → types}/internal/transformers.d.ts +0 -0
- /package/{cjs/internal → types/node}/Digest.d.ts +0 -0
- /package/{cjs/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', await (0, utils_1.responseStringify)(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', await (0, utils_1.responseStringify)(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(await (0, utils_1.responseStringify)(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(await (0, utils_1.responseStringify)(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 Error(await (0, utils_1.responseStringify)(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 Error(await (0, utils_1.responseStringify)(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 Error(await (0, utils_1.responseStringify)(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 Error(await (0, utils_1.responseStringify)(res));
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
exports.PlaneTrackerAPI = PlaneTrackerAPI;
|