camstreamerlib 4.0.0-beta.62 → 4.0.0-beta.64
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 +1 -0
- package/cjs/CamOverlayAPI.d.ts +867 -0
- package/cjs/CamOverlayAPI.js +5 -5
- package/cjs/CamScripterAPI.d.ts +46 -0
- package/cjs/CamScripterAPI.js +2 -3
- package/cjs/CamStreamerAPI.d.ts +64 -0
- package/cjs/CamStreamerAPI.js +1 -2
- package/cjs/CamSwitcherAPI.d.ts +167 -0
- package/cjs/CamSwitcherAPI.js +2 -2
- package/cjs/PlaneTrackerAPI.d.ts +229 -0
- package/cjs/PlaneTrackerAPI.js +8 -8
- package/cjs/VapixAPI.d.ts +118 -0
- package/cjs/VapixAPI.js +10 -10
- package/cjs/bin/CreatePackage.d.ts +1 -0
- package/cjs/errors/errors.d.ts +91 -0
- package/cjs/errors/errors.js +32 -26
- package/cjs/index.d.ts +27 -0
- package/cjs/internal/ProxyClient.d.ts +10 -0
- package/cjs/internal/WsEvents.d.ts +37 -0
- package/cjs/internal/constants.d.ts +1 -0
- package/cjs/internal/transformers.d.ts +5 -0
- package/cjs/internal/types.d.ts +47 -0
- package/cjs/internal/utils.d.ts +13 -0
- package/cjs/internal/utils.js +1 -16
- package/cjs/internal/versionCompare.d.ts +6 -0
- package/cjs/node/CamOverlayDrawingAPI.d.ts +41 -0
- package/cjs/node/CamOverlayPainter/Frame.d.ts +67 -0
- package/cjs/node/CamOverlayPainter/Painter.d.ts +32 -0
- package/cjs/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
- package/cjs/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
- package/cjs/node/DefaultClient.d.ts +16 -0
- package/cjs/node/Digest.d.ts +4 -0
- package/cjs/node/Digest.test.d.ts +1 -0
- package/cjs/node/HttpRequestSender.d.ts +29 -0
- package/cjs/node/HttpServer.d.ts +21 -0
- package/cjs/node/TimeZoneDaemon.d.ts +6 -0
- package/cjs/node/TimeZoneDaemon.js +29 -0
- package/cjs/node/VapixEvents.d.ts +16 -0
- package/cjs/node/WsClient.d.ts +30 -0
- package/cjs/node/events/AxisCameraStationEvents.d.ts +12 -0
- package/cjs/node/events/GenetecAgent.d.ts +16 -0
- package/cjs/node/events/GenetecAgent.js +5 -4
- package/cjs/node/index.d.ts +17 -0
- package/cjs/types/CamOverlayAPI/CamOverlayAPI.d.ts +4330 -0
- package/cjs/types/CamOverlayAPI/accuweatherSchema.d.ts +84 -0
- package/cjs/types/CamOverlayAPI/customGraphicsSchema.d.ts +700 -0
- package/cjs/types/CamOverlayAPI/imagesSchema.d.ts +95 -0
- package/cjs/types/CamOverlayAPI/index.d.ts +11 -0
- package/cjs/types/CamOverlayAPI/infotickerSchema.d.ts +96 -0
- package/cjs/types/CamOverlayAPI/pipSchema.d.ts +125 -0
- package/cjs/types/CamOverlayAPI/ptzCompassSchema.d.ts +96 -0
- package/cjs/types/CamOverlayAPI/ptzSchema.d.ts +118 -0
- package/cjs/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
- package/cjs/types/CamOverlayAPI/screenSharingSchema.d.ts +58 -0
- package/cjs/types/CamOverlayAPI/serviceCommonTypes.d.ts +145 -0
- package/cjs/types/CamOverlayAPI/webCameraSharingSchema.d.ts +58 -0
- package/cjs/types/CamOverlayDrawingAPI.d.ts +48 -0
- package/cjs/types/CamOverlayPainter.d.ts +76 -0
- package/cjs/types/CamScripterAPI.d.ts +130 -0
- package/cjs/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
- package/cjs/types/CamStreamerAPI.d.ts +272 -0
- package/cjs/types/CamSwitcherAPI.d.ts +893 -0
- package/cjs/types/GenetecAgent.d.ts +174 -0
- package/cjs/types/PlaneTrackerAPI.d.ts +926 -0
- package/cjs/types/PlaneTrackerAPI.js +4 -1
- package/cjs/types/VapixAPI.d.ts +1865 -0
- package/cjs/types/VapixEvents.d.ts +15 -0
- package/cjs/types/common.d.ts +49 -0
- package/cjs/types/ws/CamOverlayEvents.d.ts +88 -0
- package/cjs/types/ws/CamStreamerEvents.d.ts +249 -0
- package/cjs/types/ws/CamSwitcherEvents.d.ts +568 -0
- package/cjs/types/ws/PlaneTrackerEvents.d.ts +1637 -0
- package/cjs/types/ws/PlaneTrackerEvents.js +2 -0
- package/cjs/web/DefaultClient.d.ts +8 -0
- package/cjs/web/WsClient.d.ts +17 -0
- package/cjs/web/index.d.ts +2 -0
- package/cjs/ws/CamOverlayEvents.d.ts +8 -0
- package/cjs/ws/CamStreamerEvents.d.ts +8 -0
- package/cjs/ws/CamSwitcherEvents.d.ts +8 -0
- package/cjs/ws/PlaneTrackerEvents.d.ts +9 -0
- package/esm/CamOverlayAPI.js +7 -7
- package/esm/CamScripterAPI.js +3 -4
- package/esm/CamStreamerAPI.js +2 -3
- package/esm/CamSwitcherAPI.js +4 -4
- package/esm/PlaneTrackerAPI.js +10 -10
- package/esm/VapixAPI.js +12 -12
- package/esm/errors/errors.js +30 -24
- package/esm/internal/utils.js +0 -11
- package/esm/node/TimeZoneDaemon.js +25 -0
- package/esm/node/events/GenetecAgent.js +6 -5
- package/esm/types/PlaneTrackerAPI.js +3 -0
- package/esm/types/ws/PlaneTrackerEvents.js +2 -0
- package/package.json +1 -1
- package/types/errors/errors.d.ts +17 -22
- package/types/internal/utils.d.ts +1 -13
- package/types/node/TimeZoneDaemon.d.ts +6 -0
- package/types/types/PlaneTrackerAPI.d.ts +8 -0
- package/types/types/ws/PlaneTrackerEvents.d.ts +40 -0
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
/// <reference types="node" />
|
|
4
|
+
import EventEmitter from 'events';
|
|
5
|
+
import { CamOverlayDrawingOptions, TCairoCreateResponse, TCairoResponse, TUploadImageResponse, TWriteTextParams } from '../types/CamOverlayDrawingAPI';
|
|
6
|
+
export declare class CamOverlayDrawingAPI extends EventEmitter {
|
|
7
|
+
private tls;
|
|
8
|
+
private tlsInsecure;
|
|
9
|
+
private ip;
|
|
10
|
+
private port;
|
|
11
|
+
private user;
|
|
12
|
+
private pass;
|
|
13
|
+
private cameraList;
|
|
14
|
+
private zIndex;
|
|
15
|
+
private callId;
|
|
16
|
+
private sendMessages;
|
|
17
|
+
private timeoutCheckTimer;
|
|
18
|
+
private wsConnected;
|
|
19
|
+
private ws;
|
|
20
|
+
constructor(options?: CamOverlayDrawingOptions);
|
|
21
|
+
connect(): void;
|
|
22
|
+
disconnect(): void;
|
|
23
|
+
isConnected(): boolean;
|
|
24
|
+
cairo(command: string, ...params: unknown[]): Promise<TCairoResponse | TCairoCreateResponse>;
|
|
25
|
+
writeText(...params: TWriteTextParams): Promise<TCairoResponse>;
|
|
26
|
+
uploadImageData(imgBuffer: Buffer): Promise<TUploadImageResponse>;
|
|
27
|
+
uploadFontData(fontBuffer: Buffer): Promise<TCairoCreateResponse>;
|
|
28
|
+
showCairoImage(cairoImage: string, posX: number, posY: number): Promise<TCairoResponse>;
|
|
29
|
+
showCairoImageAbsolute(cairoImage: string, posX: number, posY: number, width: number, height: number): Promise<TCairoResponse>;
|
|
30
|
+
removeImage(): Promise<TCairoResponse>;
|
|
31
|
+
private createWsClient;
|
|
32
|
+
private incomingWsMessageHandler;
|
|
33
|
+
private sendMessage;
|
|
34
|
+
private sendBinaryMessage;
|
|
35
|
+
private startMsgsTimeoutCheck;
|
|
36
|
+
private stopMsgsTimeoutCheck;
|
|
37
|
+
private reconnectWithError;
|
|
38
|
+
private reportMessage;
|
|
39
|
+
private reportError;
|
|
40
|
+
private reportClose;
|
|
41
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { EventEmitter } from 'events';
|
|
3
|
+
import { CamOverlayDrawingAPI } from '../CamOverlayDrawingAPI';
|
|
4
|
+
import { TAlign, TCairoCreateResponse, TUploadImageResponse } from '../../types/CamOverlayDrawingAPI';
|
|
5
|
+
import { ResourceManager } from './ResourceManager';
|
|
6
|
+
import { TBg, TBorder, TDrawingCallback, TFrame, TFrameOptions, TObjectFitType, TRgb, TRgba, TText, TTmf } from '../../types/CamOverlayPainter';
|
|
7
|
+
export declare class Frame extends EventEmitter {
|
|
8
|
+
protected enabled: boolean;
|
|
9
|
+
protected posX: number;
|
|
10
|
+
protected posY: number;
|
|
11
|
+
protected width: number;
|
|
12
|
+
protected height: number;
|
|
13
|
+
private text;
|
|
14
|
+
private fontColor;
|
|
15
|
+
private fontName?;
|
|
16
|
+
private font?;
|
|
17
|
+
private align;
|
|
18
|
+
private textType;
|
|
19
|
+
private bgColor?;
|
|
20
|
+
private bgImageName?;
|
|
21
|
+
private bgImage?;
|
|
22
|
+
private bgType?;
|
|
23
|
+
private borderRadius;
|
|
24
|
+
private borderWidth;
|
|
25
|
+
private borderColor;
|
|
26
|
+
private customDraw?;
|
|
27
|
+
private layer;
|
|
28
|
+
protected children: Frame[];
|
|
29
|
+
constructor(opt: TFrameOptions);
|
|
30
|
+
enable(): void;
|
|
31
|
+
disable(): void;
|
|
32
|
+
setFramePosition(x: number, y: number): void;
|
|
33
|
+
setFrameSize(width: number, height: number): void;
|
|
34
|
+
getFrameInfo(): TFrame;
|
|
35
|
+
setText(text: string, align: TAlign, textType?: TTmf, fontColor?: TRgb): void;
|
|
36
|
+
setFontColor(fontColor: TRgb): void;
|
|
37
|
+
setFont(fontName: string): void;
|
|
38
|
+
setFontData(fontData: TCairoCreateResponse): void;
|
|
39
|
+
getTextInfo(): TText;
|
|
40
|
+
setBgColor(color: TRgba): void;
|
|
41
|
+
setBgImage(imageName: string, type?: TObjectFitType): void;
|
|
42
|
+
setBgImageData(imageData: TUploadImageResponse, type?: TObjectFitType): void;
|
|
43
|
+
setBgType(type: TObjectFitType): void;
|
|
44
|
+
getBgInfo(): TBg;
|
|
45
|
+
setBorderRadius(radius: number): void;
|
|
46
|
+
setBorderWidth(width: number): void;
|
|
47
|
+
setBorderColor(color: TRgba): void;
|
|
48
|
+
getBorderInfo(): TBorder;
|
|
49
|
+
setCustomDraw(customDraw: TDrawingCallback): void;
|
|
50
|
+
resetFont(): void;
|
|
51
|
+
resetBgColor(): void;
|
|
52
|
+
resetBgImage(): void;
|
|
53
|
+
resetCustomDraw(): void;
|
|
54
|
+
clear(): void;
|
|
55
|
+
insert(...frames: Frame[]): void;
|
|
56
|
+
getLayers(): Set<number>;
|
|
57
|
+
protected layoutChanged(): void;
|
|
58
|
+
displayImage(cod: CamOverlayDrawingAPI, resourceManager: ResourceManager, cairo: string, ppX: number, ppY: number, scale: number, layer: number): Promise<void>;
|
|
59
|
+
private prepareResources;
|
|
60
|
+
protected displayOwnImage(cod: CamOverlayDrawingAPI, cairo: string, ppX: number, ppY: number, scale: number): Promise<void>;
|
|
61
|
+
private clipDrawing;
|
|
62
|
+
private drawFrame;
|
|
63
|
+
private drawImage;
|
|
64
|
+
private drawText;
|
|
65
|
+
private drawBorder;
|
|
66
|
+
private drawRectPath;
|
|
67
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { CamOverlayDrawingAPI } from '../CamOverlayDrawingAPI';
|
|
2
|
+
import { CamOverlayDrawingOptions } from '../../types/CamOverlayDrawingAPI';
|
|
3
|
+
import { ResourceManager } from './ResourceManager';
|
|
4
|
+
import { Frame } from './Frame';
|
|
5
|
+
import { TCoAlignment, TPainterOptions } from '../../types/CamOverlayPainter';
|
|
6
|
+
export declare class Painter extends Frame {
|
|
7
|
+
private screenWidth;
|
|
8
|
+
private screenHeight;
|
|
9
|
+
private coAlignment;
|
|
10
|
+
private cod;
|
|
11
|
+
private rm;
|
|
12
|
+
private refreshLayers;
|
|
13
|
+
private layers;
|
|
14
|
+
constructor(opt: TPainterOptions, coopt: CamOverlayDrawingOptions);
|
|
15
|
+
get camOverlayDrawingAPI(): CamOverlayDrawingAPI;
|
|
16
|
+
get resourceManager(): ResourceManager;
|
|
17
|
+
connect(): void;
|
|
18
|
+
disconnect(): void;
|
|
19
|
+
isConnected(): boolean;
|
|
20
|
+
registerImage(moniker: string, fileName: string): void;
|
|
21
|
+
registerFont(moniker: string, fileName: string): void;
|
|
22
|
+
setScreenSize(sw: number, sh: number): void;
|
|
23
|
+
setCoAlignment(coAlignment: TCoAlignment): void;
|
|
24
|
+
protected layoutChanged(): void;
|
|
25
|
+
display(scale?: number): Promise<void>;
|
|
26
|
+
hide(): Promise<void>;
|
|
27
|
+
invalidateLayer(layer: number): Promise<void>;
|
|
28
|
+
private prepareLayers;
|
|
29
|
+
private prepareSurface;
|
|
30
|
+
private cleanupSurface;
|
|
31
|
+
private positionConvertor;
|
|
32
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { CamOverlayDrawingAPI } from '../CamOverlayDrawingAPI';
|
|
2
|
+
import { TUploadImageResponse, TCairoCreateResponse } from '../../types/CamOverlayDrawingAPI';
|
|
3
|
+
export declare class ResourceManager {
|
|
4
|
+
private co;
|
|
5
|
+
private imgFileNames;
|
|
6
|
+
private fontFileNames;
|
|
7
|
+
private images;
|
|
8
|
+
private fonts;
|
|
9
|
+
constructor(co: CamOverlayDrawingAPI);
|
|
10
|
+
registerImage(moniker: string, fileName: string): void;
|
|
11
|
+
registerFont(moniker: string, fileName: string): void;
|
|
12
|
+
image(moniker: string): Promise<TUploadImageResponse | undefined>;
|
|
13
|
+
font(moniker: string): Promise<TCairoCreateResponse | undefined>;
|
|
14
|
+
clear(): void;
|
|
15
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import EventEmitter from 'events';
|
|
3
|
+
import { Options } from '../internal/types';
|
|
4
|
+
import { TCamScripterEvent, TEventDeclaration, TEventUndeclaration, TCamScripterResponse } from '../types/CamScripterAPICameraEventsGenerator';
|
|
5
|
+
export declare class CamScripterAPICameraEventsGenerator extends EventEmitter {
|
|
6
|
+
private tls;
|
|
7
|
+
private tlsInsecure;
|
|
8
|
+
private ip;
|
|
9
|
+
private port;
|
|
10
|
+
private user;
|
|
11
|
+
private pass;
|
|
12
|
+
private callId;
|
|
13
|
+
private sendMessages;
|
|
14
|
+
private timeoutCheckTimer;
|
|
15
|
+
private wsConnected;
|
|
16
|
+
private ws;
|
|
17
|
+
constructor(options?: Options);
|
|
18
|
+
connect(): void;
|
|
19
|
+
disconnect(): void;
|
|
20
|
+
declareEvent(eventDeclaration: TEventDeclaration): Promise<TCamScripterResponse>;
|
|
21
|
+
undeclareEvent(eventUndeclaration: TEventUndeclaration): Promise<TCamScripterResponse>;
|
|
22
|
+
sendEvent(event: TCamScripterEvent): Promise<TCamScripterResponse>;
|
|
23
|
+
private createWsClient;
|
|
24
|
+
private incomingWsMessageHandler;
|
|
25
|
+
private sendMessage;
|
|
26
|
+
private startMsgsTimeoutCheck;
|
|
27
|
+
private stopMsgsTimeoutCheck;
|
|
28
|
+
private reconnectWithError;
|
|
29
|
+
private reportErr;
|
|
30
|
+
private reportClose;
|
|
31
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
import { IClient, HttpOptions, TGetParams, TPostParams } from '../internal/types';
|
|
4
|
+
import { FormData as UndiciFormData, Response as UndiciResponse } from 'undici';
|
|
5
|
+
export declare class DefaultClient implements IClient<UndiciResponse, UndiciFormData | Buffer> {
|
|
6
|
+
private tls;
|
|
7
|
+
private ip;
|
|
8
|
+
private port;
|
|
9
|
+
private user;
|
|
10
|
+
private pass;
|
|
11
|
+
private httpRequestSender;
|
|
12
|
+
constructor(opt?: HttpOptions);
|
|
13
|
+
get(params: TGetParams): Promise<UndiciResponse>;
|
|
14
|
+
post(params: TPostParams<UndiciFormData | Buffer>): Promise<UndiciResponse>;
|
|
15
|
+
private getBaseConnectionParams;
|
|
16
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
import { FormData as UndiciFormData, Response as UndiciResponse } from 'undici';
|
|
4
|
+
export type HttpRequestOptions = {
|
|
5
|
+
method?: string;
|
|
6
|
+
protocol: string;
|
|
7
|
+
host: string;
|
|
8
|
+
port: number;
|
|
9
|
+
path: string;
|
|
10
|
+
user?: string;
|
|
11
|
+
pass?: string;
|
|
12
|
+
timeout?: number;
|
|
13
|
+
headers?: Record<string, string>;
|
|
14
|
+
};
|
|
15
|
+
export type AgentOptions = {
|
|
16
|
+
rejectUnaurhorized?: boolean;
|
|
17
|
+
keepAlive?: boolean;
|
|
18
|
+
};
|
|
19
|
+
export declare class HttpRequestSender {
|
|
20
|
+
private agent?;
|
|
21
|
+
private authData?;
|
|
22
|
+
constructor(agentOptions?: AgentOptions);
|
|
23
|
+
sendRequest(options: HttpRequestOptions, postData?: Buffer | string | UndiciFormData): Promise<UndiciResponse>;
|
|
24
|
+
private sendRequestWithAuth;
|
|
25
|
+
private static getURL;
|
|
26
|
+
private getAuthorization;
|
|
27
|
+
private invalidateAuthorization;
|
|
28
|
+
private static getAuthHeader;
|
|
29
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
3
|
+
import http from 'http';
|
|
4
|
+
import EventEmitter from 'events';
|
|
5
|
+
export type HttpServerOptions = {
|
|
6
|
+
host?: string;
|
|
7
|
+
port?: number;
|
|
8
|
+
};
|
|
9
|
+
type TOnRequestCallback = (req: http.IncomingMessage, res: http.ServerResponse) => void;
|
|
10
|
+
export declare class HttpServer extends EventEmitter {
|
|
11
|
+
private host;
|
|
12
|
+
private port;
|
|
13
|
+
private registeredPaths;
|
|
14
|
+
private server;
|
|
15
|
+
private sockets;
|
|
16
|
+
constructor(options?: HttpServerOptions);
|
|
17
|
+
getServer(): http.Server<typeof http.IncomingMessage, typeof http.ServerResponse>;
|
|
18
|
+
onRequest(pathName: string, callback: TOnRequestCallback): void;
|
|
19
|
+
close(): void;
|
|
20
|
+
}
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TimeZoneDaemon = void 0;
|
|
4
|
+
const child_process_1 = require("child_process");
|
|
5
|
+
const util_1 = require("util");
|
|
6
|
+
const execPromise = (0, util_1.promisify)(child_process_1.exec);
|
|
7
|
+
class TimeZoneDaemon {
|
|
8
|
+
checkTimer;
|
|
9
|
+
constructor(checkInterval = 60000) {
|
|
10
|
+
this.checkTimer = setInterval(() => this.checkAndUpdateTimeZone(), checkInterval);
|
|
11
|
+
}
|
|
12
|
+
stop() {
|
|
13
|
+
clearInterval(this.checkTimer);
|
|
14
|
+
}
|
|
15
|
+
async checkAndUpdateTimeZone() {
|
|
16
|
+
try {
|
|
17
|
+
const { stdout } = await execPromise('timedatectl show -p Timezone --value');
|
|
18
|
+
const systemTimezone = stdout.toString().trim();
|
|
19
|
+
const nodeTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
20
|
+
if (systemTimezone !== nodeTimezone) {
|
|
21
|
+
process.env.TZ = systemTimezone;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
console.error('Error checking/updating timezone:', error);
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.TimeZoneDaemon = TimeZoneDaemon;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { EventEmitter2 as EventEmitter } from 'eventemitter2';
|
|
2
|
+
import { Options } from '../internal/types';
|
|
3
|
+
export declare class VapixEvents extends EventEmitter {
|
|
4
|
+
private tls;
|
|
5
|
+
private tlsInsecure;
|
|
6
|
+
private ip;
|
|
7
|
+
private port;
|
|
8
|
+
private user;
|
|
9
|
+
private pass;
|
|
10
|
+
private ws;
|
|
11
|
+
constructor(options?: Options);
|
|
12
|
+
connect(): void;
|
|
13
|
+
disconnect(): void;
|
|
14
|
+
private createWsClient;
|
|
15
|
+
private isReservedEventName;
|
|
16
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { IWsClient, Options } from '../internal/types';
|
|
2
|
+
export type WsClientOptions = Options & {
|
|
3
|
+
address: string;
|
|
4
|
+
headers?: Record<string, string>;
|
|
5
|
+
pingInterval?: number;
|
|
6
|
+
protocol?: string;
|
|
7
|
+
};
|
|
8
|
+
export declare class WsClient implements IWsClient {
|
|
9
|
+
private user;
|
|
10
|
+
private pass;
|
|
11
|
+
private address;
|
|
12
|
+
private protocol?;
|
|
13
|
+
private pingInterval;
|
|
14
|
+
private wsOptions;
|
|
15
|
+
private digestAddress;
|
|
16
|
+
private isAlive;
|
|
17
|
+
private pingTimer?;
|
|
18
|
+
private ws?;
|
|
19
|
+
private isClosed;
|
|
20
|
+
constructor(options: WsClientOptions);
|
|
21
|
+
open(wwwAuthenticateHeader?: string): void;
|
|
22
|
+
onMessage: (_: ArrayBuffer | string) => void;
|
|
23
|
+
onOpen: () => void;
|
|
24
|
+
onClose: () => void;
|
|
25
|
+
onError: (error: Error) => void;
|
|
26
|
+
send(data: ArrayBuffer | string): void;
|
|
27
|
+
destroy(): void;
|
|
28
|
+
reconnect(): void;
|
|
29
|
+
private closeWsConnection;
|
|
30
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { HttpOptions } from '../../internal/types';
|
|
2
|
+
import { ProxyClient } from '../../internal/ProxyClient';
|
|
3
|
+
import { THttpRequestOptions, TProxyParams } from '../../types/common';
|
|
4
|
+
import { DefaultClient } from '../DefaultClient';
|
|
5
|
+
export declare class AxisCameraStationEvents {
|
|
6
|
+
private sourceKey;
|
|
7
|
+
private client;
|
|
8
|
+
constructor(clientOptions: HttpOptions, sourceKey: string);
|
|
9
|
+
getClient(proxyParams?: TProxyParams): DefaultClient | ProxyClient<DefaultClient>;
|
|
10
|
+
sendEvent(data: Record<string, string>, eventType: string, options?: THttpRequestOptions): Promise<void>;
|
|
11
|
+
private getDate;
|
|
12
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { GenetecAgentOptions, TCameraDetail, TCameraGuidsResponse, TParams } from '../../types/GenetecAgent';
|
|
2
|
+
export declare class GenetecAgent {
|
|
3
|
+
private settings;
|
|
4
|
+
private baseUrl;
|
|
5
|
+
private credentials;
|
|
6
|
+
constructor(options?: GenetecAgentOptions);
|
|
7
|
+
checkConnection(): Promise<void>;
|
|
8
|
+
getAllCameraGuids(): Promise<TCameraGuidsResponse>;
|
|
9
|
+
getCameraDetails(guids: {
|
|
10
|
+
Guid: string;
|
|
11
|
+
}[], parameters: TParams): Promise<TCameraDetail[]>;
|
|
12
|
+
sendBookmark(guids: string[], bookmarkText: string): Promise<void>;
|
|
13
|
+
private getRequestOptions;
|
|
14
|
+
private getTimeStamp;
|
|
15
|
+
private fetchWithTimeout;
|
|
16
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.GenetecAgent = void 0;
|
|
4
|
+
const errors_1 = require("../../errors/errors");
|
|
4
5
|
const utils_1 = require("../../internal/utils");
|
|
5
6
|
const GenetecAgent_1 = require("../../types/GenetecAgent");
|
|
6
7
|
class GenetecAgent {
|
|
@@ -25,7 +26,7 @@ class GenetecAgent {
|
|
|
25
26
|
const requestOptions = this.getRequestOptions('GET');
|
|
26
27
|
const res = await this.fetchWithTimeout(new URL(this.baseUrl), requestOptions);
|
|
27
28
|
if (!res.ok) {
|
|
28
|
-
throw new
|
|
29
|
+
throw new errors_1.ErrorWithResponse(res);
|
|
29
30
|
}
|
|
30
31
|
const responseBody = await res.text();
|
|
31
32
|
const result = await GenetecAgent_1.successResponseSchema.safeParseAsync(JSON.parse(responseBody));
|
|
@@ -39,7 +40,7 @@ class GenetecAgent {
|
|
|
39
40
|
url.searchParams.set('q', 'EntityTypes@Camera');
|
|
40
41
|
const res = await this.fetchWithTimeout(url, requestOptions);
|
|
41
42
|
if (!res.ok) {
|
|
42
|
-
throw new
|
|
43
|
+
throw new errors_1.ErrorWithResponse(res);
|
|
43
44
|
}
|
|
44
45
|
const responseBody = await res.text();
|
|
45
46
|
const result = await GenetecAgent_1.cameraGuidsResponseSchema.safeParseAsync(JSON.parse(responseBody));
|
|
@@ -60,7 +61,7 @@ class GenetecAgent {
|
|
|
60
61
|
url.searchParams.set('q', chunk.map((item) => `entity=${item.Guid},${params}`).join(','));
|
|
61
62
|
const res = await this.fetchWithTimeout(url, requestOptions);
|
|
62
63
|
if (!res.ok) {
|
|
63
|
-
throw new
|
|
64
|
+
throw new errors_1.ErrorWithResponse(res);
|
|
64
65
|
}
|
|
65
66
|
const responseBody = await res.text();
|
|
66
67
|
const result = await GenetecAgent_1.cameraDetailsResponseSchema.safeParseAsync(JSON.parse(responseBody));
|
|
@@ -80,7 +81,7 @@ class GenetecAgent {
|
|
|
80
81
|
url.searchParams.set('q', guids.map((guid) => `AddCameraBookmark(${guid},${timeStamp},${bookmarkText})`).join(','));
|
|
81
82
|
const res = await this.fetchWithTimeout(url, requestOptions);
|
|
82
83
|
if (!res.ok) {
|
|
83
|
-
throw new
|
|
84
|
+
throw new errors_1.ErrorWithResponse(res);
|
|
84
85
|
}
|
|
85
86
|
const responseBody = await res.text();
|
|
86
87
|
const result = await GenetecAgent_1.successResponseSchema.safeParseAsync(JSON.parse(responseBody));
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export * from './DefaultClient';
|
|
2
|
+
export * from './WsClient';
|
|
3
|
+
export * from './HttpServer';
|
|
4
|
+
export * from './HttpRequestSender';
|
|
5
|
+
export * from './events/AxisCameraStationEvents';
|
|
6
|
+
export * from './events/GenetecAgent';
|
|
7
|
+
export * from '../types/GenetecAgent';
|
|
8
|
+
export { ResourceManager } from './CamOverlayPainter/ResourceManager';
|
|
9
|
+
export { Painter } from './CamOverlayPainter/Painter';
|
|
10
|
+
export { Frame } from './CamOverlayPainter/Frame';
|
|
11
|
+
export * from '../types/CamOverlayPainter';
|
|
12
|
+
export { CamOverlayDrawingAPI } from './CamOverlayDrawingAPI';
|
|
13
|
+
export * from '../types/CamOverlayDrawingAPI';
|
|
14
|
+
export { CamScripterAPICameraEventsGenerator } from './CamScripterAPICameraEventsGenerator';
|
|
15
|
+
export * from '../types/CamScripterAPICameraEventsGenerator';
|
|
16
|
+
export { VapixEvents } from './VapixEvents';
|
|
17
|
+
export * from '../types/VapixEvents';
|