camstreamerlib 4.0.0-beta.85 → 4.0.0-beta.86
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/cjs/CamStreamerAPI.d.ts +228 -3
- package/cjs/CamStreamerAPI.js +21 -0
- package/cjs/types/CamStreamerAPI/CamStreamerAPI.d.ts +1568 -9
- package/cjs/types/CamStreamerAPI/facebookSchema.d.ts +88 -0
- package/cjs/types/CamStreamerAPI/hlsSchema.d.ts +88 -0
- package/cjs/types/CamStreamerAPI/mpegDvbSchema.d.ts +88 -3
- package/cjs/types/CamStreamerAPI/mpegDvbSchema.js +0 -1
- package/cjs/types/CamStreamerAPI/oldStreamSchema.d.ts +24 -24
- package/cjs/types/CamStreamerAPI/rtmpSchema.d.ts +88 -0
- package/cjs/types/CamStreamerAPI/sdCardSchema.d.ts +88 -0
- package/cjs/types/CamStreamerAPI/streamCommonTypes.d.ts +146 -0
- package/cjs/types/CamStreamerAPI/streamCommonTypes.js +18 -1
- package/cjs/types/CamStreamerAPI/windySchema.d.ts +88 -0
- package/cjs/types/CamStreamerAPI/youtubeSchema.d.ts +88 -0
- package/esm/CamStreamerAPI.js +22 -1
- package/esm/types/CamStreamerAPI/mpegDvbSchema.js +0 -1
- package/esm/types/CamStreamerAPI/streamCommonTypes.js +17 -0
- package/package.json +1 -1
- package/types/CamStreamerAPI.d.ts +228 -3
- package/types/types/CamStreamerAPI/CamStreamerAPI.d.ts +1568 -9
- package/types/types/CamStreamerAPI/facebookSchema.d.ts +88 -0
- package/types/types/CamStreamerAPI/hlsSchema.d.ts +88 -0
- package/types/types/CamStreamerAPI/mpegDvbSchema.d.ts +88 -3
- package/types/types/CamStreamerAPI/oldStreamSchema.d.ts +24 -24
- package/types/types/CamStreamerAPI/rtmpSchema.d.ts +88 -0
- package/types/types/CamStreamerAPI/sdCardSchema.d.ts +88 -0
- package/types/types/CamStreamerAPI/streamCommonTypes.d.ts +146 -0
- package/types/types/CamStreamerAPI/windySchema.d.ts +88 -0
- package/types/types/CamStreamerAPI/youtubeSchema.d.ts +88 -0
package/cjs/CamStreamerAPI.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ProxyClient } from './internal/ProxyClient';
|
|
2
|
-
import { IClient, TResponse } from './internal/types';
|
|
2
|
+
import { IClient, TBlobResponse, TResponse } from './internal/types';
|
|
3
3
|
import { TAudioFile, TAudioFileStorageType, TStream, TStreamList } from './types/CamStreamerAPI/CamStreamerAPI';
|
|
4
4
|
import { THttpRequestOptions, TProxyParams } from './types/common';
|
|
5
5
|
import { TOldStream, TOldStringStream } from './types/CamStreamerAPI/oldStreamSchema';
|
|
@@ -16,12 +16,44 @@ export declare class CamStreamerAPI<Client extends IClient<TResponse, any>> {
|
|
|
16
16
|
id: number;
|
|
17
17
|
active: boolean;
|
|
18
18
|
title: string;
|
|
19
|
+
trigger: {
|
|
20
|
+
type: "manual";
|
|
21
|
+
ioPort: string | null;
|
|
22
|
+
} | {
|
|
23
|
+
type: "onetime";
|
|
24
|
+
startTime: number;
|
|
25
|
+
stopTime: number;
|
|
26
|
+
} | {
|
|
27
|
+
type: "recurrent";
|
|
28
|
+
schedule: {
|
|
29
|
+
day: number;
|
|
30
|
+
startTimeS: number;
|
|
31
|
+
stopTimeS: number;
|
|
32
|
+
isActive: boolean;
|
|
33
|
+
}[];
|
|
34
|
+
};
|
|
19
35
|
} | {
|
|
20
36
|
type: "hls";
|
|
21
37
|
enabled: boolean;
|
|
22
38
|
id: number;
|
|
23
39
|
active: boolean;
|
|
24
40
|
title: string;
|
|
41
|
+
trigger: {
|
|
42
|
+
type: "manual";
|
|
43
|
+
ioPort: string | null;
|
|
44
|
+
} | {
|
|
45
|
+
type: "onetime";
|
|
46
|
+
startTime: number;
|
|
47
|
+
stopTime: number;
|
|
48
|
+
} | {
|
|
49
|
+
type: "recurrent";
|
|
50
|
+
schedule: {
|
|
51
|
+
day: number;
|
|
52
|
+
startTimeS: number;
|
|
53
|
+
stopTimeS: number;
|
|
54
|
+
isActive: boolean;
|
|
55
|
+
}[];
|
|
56
|
+
};
|
|
25
57
|
} | {
|
|
26
58
|
type: "mpeg_dvb";
|
|
27
59
|
port: number;
|
|
@@ -29,6 +61,22 @@ export declare class CamStreamerAPI<Client extends IClient<TResponse, any>> {
|
|
|
29
61
|
id: number;
|
|
30
62
|
active: boolean;
|
|
31
63
|
title: string;
|
|
64
|
+
trigger: {
|
|
65
|
+
type: "manual";
|
|
66
|
+
ioPort: string | null;
|
|
67
|
+
} | {
|
|
68
|
+
type: "onetime";
|
|
69
|
+
startTime: number;
|
|
70
|
+
stopTime: number;
|
|
71
|
+
} | {
|
|
72
|
+
type: "recurrent";
|
|
73
|
+
schedule: {
|
|
74
|
+
day: number;
|
|
75
|
+
startTimeS: number;
|
|
76
|
+
stopTimeS: number;
|
|
77
|
+
isActive: boolean;
|
|
78
|
+
}[];
|
|
79
|
+
};
|
|
32
80
|
ipAddress: string;
|
|
33
81
|
standard: "DVB" | "ATSC";
|
|
34
82
|
nullPacketsPaddingEnabled: boolean;
|
|
@@ -41,7 +89,6 @@ export declare class CamStreamerAPI<Client extends IClient<TResponse, any>> {
|
|
|
41
89
|
pcrPeriodMs: number;
|
|
42
90
|
providerName: string;
|
|
43
91
|
serviceName: string;
|
|
44
|
-
triggerType: "manual" | "onetime" | "recurrent" | "io" | "nonstop";
|
|
45
92
|
statusCameraLed: boolean;
|
|
46
93
|
statusCameraOutput: string;
|
|
47
94
|
saveToSdCard: boolean;
|
|
@@ -51,24 +98,88 @@ export declare class CamStreamerAPI<Client extends IClient<TResponse, any>> {
|
|
|
51
98
|
id: number;
|
|
52
99
|
active: boolean;
|
|
53
100
|
title: string;
|
|
101
|
+
trigger: {
|
|
102
|
+
type: "manual";
|
|
103
|
+
ioPort: string | null;
|
|
104
|
+
} | {
|
|
105
|
+
type: "onetime";
|
|
106
|
+
startTime: number;
|
|
107
|
+
stopTime: number;
|
|
108
|
+
} | {
|
|
109
|
+
type: "recurrent";
|
|
110
|
+
schedule: {
|
|
111
|
+
day: number;
|
|
112
|
+
startTimeS: number;
|
|
113
|
+
stopTimeS: number;
|
|
114
|
+
isActive: boolean;
|
|
115
|
+
}[];
|
|
116
|
+
};
|
|
54
117
|
} | {
|
|
55
118
|
type: "sd_card";
|
|
56
119
|
enabled: boolean;
|
|
57
120
|
id: number;
|
|
58
121
|
active: boolean;
|
|
59
122
|
title: string;
|
|
123
|
+
trigger: {
|
|
124
|
+
type: "manual";
|
|
125
|
+
ioPort: string | null;
|
|
126
|
+
} | {
|
|
127
|
+
type: "onetime";
|
|
128
|
+
startTime: number;
|
|
129
|
+
stopTime: number;
|
|
130
|
+
} | {
|
|
131
|
+
type: "recurrent";
|
|
132
|
+
schedule: {
|
|
133
|
+
day: number;
|
|
134
|
+
startTimeS: number;
|
|
135
|
+
stopTimeS: number;
|
|
136
|
+
isActive: boolean;
|
|
137
|
+
}[];
|
|
138
|
+
};
|
|
60
139
|
} | {
|
|
61
140
|
type: "windy";
|
|
62
141
|
enabled: boolean;
|
|
63
142
|
id: number;
|
|
64
143
|
active: boolean;
|
|
65
144
|
title: string;
|
|
145
|
+
trigger: {
|
|
146
|
+
type: "manual";
|
|
147
|
+
ioPort: string | null;
|
|
148
|
+
} | {
|
|
149
|
+
type: "onetime";
|
|
150
|
+
startTime: number;
|
|
151
|
+
stopTime: number;
|
|
152
|
+
} | {
|
|
153
|
+
type: "recurrent";
|
|
154
|
+
schedule: {
|
|
155
|
+
day: number;
|
|
156
|
+
startTimeS: number;
|
|
157
|
+
stopTimeS: number;
|
|
158
|
+
isActive: boolean;
|
|
159
|
+
}[];
|
|
160
|
+
};
|
|
66
161
|
} | {
|
|
67
162
|
type: "youtube";
|
|
68
163
|
enabled: boolean;
|
|
69
164
|
id: number;
|
|
70
165
|
active: boolean;
|
|
71
166
|
title: string;
|
|
167
|
+
trigger: {
|
|
168
|
+
type: "manual";
|
|
169
|
+
ioPort: string | null;
|
|
170
|
+
} | {
|
|
171
|
+
type: "onetime";
|
|
172
|
+
startTime: number;
|
|
173
|
+
stopTime: number;
|
|
174
|
+
} | {
|
|
175
|
+
type: "recurrent";
|
|
176
|
+
schedule: {
|
|
177
|
+
day: number;
|
|
178
|
+
startTimeS: number;
|
|
179
|
+
stopTimeS: number;
|
|
180
|
+
isActive: boolean;
|
|
181
|
+
}[];
|
|
182
|
+
};
|
|
72
183
|
})[]>;
|
|
73
184
|
setStreamList(streamList: TStreamList['streamList'], options?: THttpRequestOptions): Promise<void>;
|
|
74
185
|
getStream(streamId: number, options?: THttpRequestOptions): Promise<{
|
|
@@ -77,12 +188,44 @@ export declare class CamStreamerAPI<Client extends IClient<TResponse, any>> {
|
|
|
77
188
|
id: number;
|
|
78
189
|
active: boolean;
|
|
79
190
|
title: string;
|
|
191
|
+
trigger: {
|
|
192
|
+
type: "manual";
|
|
193
|
+
ioPort: string | null;
|
|
194
|
+
} | {
|
|
195
|
+
type: "onetime";
|
|
196
|
+
startTime: number;
|
|
197
|
+
stopTime: number;
|
|
198
|
+
} | {
|
|
199
|
+
type: "recurrent";
|
|
200
|
+
schedule: {
|
|
201
|
+
day: number;
|
|
202
|
+
startTimeS: number;
|
|
203
|
+
stopTimeS: number;
|
|
204
|
+
isActive: boolean;
|
|
205
|
+
}[];
|
|
206
|
+
};
|
|
80
207
|
} | {
|
|
81
208
|
type: "hls";
|
|
82
209
|
enabled: boolean;
|
|
83
210
|
id: number;
|
|
84
211
|
active: boolean;
|
|
85
212
|
title: string;
|
|
213
|
+
trigger: {
|
|
214
|
+
type: "manual";
|
|
215
|
+
ioPort: string | null;
|
|
216
|
+
} | {
|
|
217
|
+
type: "onetime";
|
|
218
|
+
startTime: number;
|
|
219
|
+
stopTime: number;
|
|
220
|
+
} | {
|
|
221
|
+
type: "recurrent";
|
|
222
|
+
schedule: {
|
|
223
|
+
day: number;
|
|
224
|
+
startTimeS: number;
|
|
225
|
+
stopTimeS: number;
|
|
226
|
+
isActive: boolean;
|
|
227
|
+
}[];
|
|
228
|
+
};
|
|
86
229
|
} | {
|
|
87
230
|
type: "mpeg_dvb";
|
|
88
231
|
port: number;
|
|
@@ -90,6 +233,22 @@ export declare class CamStreamerAPI<Client extends IClient<TResponse, any>> {
|
|
|
90
233
|
id: number;
|
|
91
234
|
active: boolean;
|
|
92
235
|
title: string;
|
|
236
|
+
trigger: {
|
|
237
|
+
type: "manual";
|
|
238
|
+
ioPort: string | null;
|
|
239
|
+
} | {
|
|
240
|
+
type: "onetime";
|
|
241
|
+
startTime: number;
|
|
242
|
+
stopTime: number;
|
|
243
|
+
} | {
|
|
244
|
+
type: "recurrent";
|
|
245
|
+
schedule: {
|
|
246
|
+
day: number;
|
|
247
|
+
startTimeS: number;
|
|
248
|
+
stopTimeS: number;
|
|
249
|
+
isActive: boolean;
|
|
250
|
+
}[];
|
|
251
|
+
};
|
|
93
252
|
ipAddress: string;
|
|
94
253
|
standard: "DVB" | "ATSC";
|
|
95
254
|
nullPacketsPaddingEnabled: boolean;
|
|
@@ -102,7 +261,6 @@ export declare class CamStreamerAPI<Client extends IClient<TResponse, any>> {
|
|
|
102
261
|
pcrPeriodMs: number;
|
|
103
262
|
providerName: string;
|
|
104
263
|
serviceName: string;
|
|
105
|
-
triggerType: "manual" | "onetime" | "recurrent" | "io" | "nonstop";
|
|
106
264
|
statusCameraLed: boolean;
|
|
107
265
|
statusCameraOutput: string;
|
|
108
266
|
saveToSdCard: boolean;
|
|
@@ -112,24 +270,88 @@ export declare class CamStreamerAPI<Client extends IClient<TResponse, any>> {
|
|
|
112
270
|
id: number;
|
|
113
271
|
active: boolean;
|
|
114
272
|
title: string;
|
|
273
|
+
trigger: {
|
|
274
|
+
type: "manual";
|
|
275
|
+
ioPort: string | null;
|
|
276
|
+
} | {
|
|
277
|
+
type: "onetime";
|
|
278
|
+
startTime: number;
|
|
279
|
+
stopTime: number;
|
|
280
|
+
} | {
|
|
281
|
+
type: "recurrent";
|
|
282
|
+
schedule: {
|
|
283
|
+
day: number;
|
|
284
|
+
startTimeS: number;
|
|
285
|
+
stopTimeS: number;
|
|
286
|
+
isActive: boolean;
|
|
287
|
+
}[];
|
|
288
|
+
};
|
|
115
289
|
} | {
|
|
116
290
|
type: "sd_card";
|
|
117
291
|
enabled: boolean;
|
|
118
292
|
id: number;
|
|
119
293
|
active: boolean;
|
|
120
294
|
title: string;
|
|
295
|
+
trigger: {
|
|
296
|
+
type: "manual";
|
|
297
|
+
ioPort: string | null;
|
|
298
|
+
} | {
|
|
299
|
+
type: "onetime";
|
|
300
|
+
startTime: number;
|
|
301
|
+
stopTime: number;
|
|
302
|
+
} | {
|
|
303
|
+
type: "recurrent";
|
|
304
|
+
schedule: {
|
|
305
|
+
day: number;
|
|
306
|
+
startTimeS: number;
|
|
307
|
+
stopTimeS: number;
|
|
308
|
+
isActive: boolean;
|
|
309
|
+
}[];
|
|
310
|
+
};
|
|
121
311
|
} | {
|
|
122
312
|
type: "windy";
|
|
123
313
|
enabled: boolean;
|
|
124
314
|
id: number;
|
|
125
315
|
active: boolean;
|
|
126
316
|
title: string;
|
|
317
|
+
trigger: {
|
|
318
|
+
type: "manual";
|
|
319
|
+
ioPort: string | null;
|
|
320
|
+
} | {
|
|
321
|
+
type: "onetime";
|
|
322
|
+
startTime: number;
|
|
323
|
+
stopTime: number;
|
|
324
|
+
} | {
|
|
325
|
+
type: "recurrent";
|
|
326
|
+
schedule: {
|
|
327
|
+
day: number;
|
|
328
|
+
startTimeS: number;
|
|
329
|
+
stopTimeS: number;
|
|
330
|
+
isActive: boolean;
|
|
331
|
+
}[];
|
|
332
|
+
};
|
|
127
333
|
} | {
|
|
128
334
|
type: "youtube";
|
|
129
335
|
enabled: boolean;
|
|
130
336
|
id: number;
|
|
131
337
|
active: boolean;
|
|
132
338
|
title: string;
|
|
339
|
+
trigger: {
|
|
340
|
+
type: "manual";
|
|
341
|
+
ioPort: string | null;
|
|
342
|
+
} | {
|
|
343
|
+
type: "onetime";
|
|
344
|
+
startTime: number;
|
|
345
|
+
stopTime: number;
|
|
346
|
+
} | {
|
|
347
|
+
type: "recurrent";
|
|
348
|
+
schedule: {
|
|
349
|
+
day: number;
|
|
350
|
+
startTimeS: number;
|
|
351
|
+
stopTimeS: number;
|
|
352
|
+
isActive: boolean;
|
|
353
|
+
}[];
|
|
354
|
+
};
|
|
133
355
|
}>;
|
|
134
356
|
setStream(streamId: number, streamData: Partial<TStream>, options?: THttpRequestOptions): Promise<void>;
|
|
135
357
|
isStreaming(streamId: number, options?: THttpRequestOptions): Promise<boolean>;
|
|
@@ -147,7 +369,10 @@ export declare class CamStreamerAPI<Client extends IClient<TResponse, any>> {
|
|
|
147
369
|
type: "SD0";
|
|
148
370
|
SD0: string;
|
|
149
371
|
})[]>;
|
|
372
|
+
getFileFromCamera(path: string, options?: THttpRequestOptions): Promise<TBlobResponse<Client>>;
|
|
150
373
|
private _getJson;
|
|
374
|
+
private _getBlob;
|
|
375
|
+
private parseBlobResponse;
|
|
151
376
|
private _postUrlEncoded;
|
|
152
377
|
private _postJsonEncoded;
|
|
153
378
|
private _post;
|
package/cjs/CamStreamerAPI.js
CHANGED
|
@@ -105,6 +105,9 @@ class CamStreamerAPI {
|
|
|
105
105
|
const res = await this._getJson(`${BASE_PATH}/upload_audio.cgi`, { action: 'get_storage' }, options);
|
|
106
106
|
return CamStreamerAPI_1.storageListSchema.parse(res.data);
|
|
107
107
|
}
|
|
108
|
+
async getFileFromCamera(path, options) {
|
|
109
|
+
return await this._getBlob(`${BASE_PATH}/audio.cgi`, { path }, options);
|
|
110
|
+
}
|
|
108
111
|
async _getJson(path, parameters, options) {
|
|
109
112
|
const agent = this.getClient(options?.proxyParams);
|
|
110
113
|
const res = await agent.get({ path, parameters, timeout: options?.timeout });
|
|
@@ -115,6 +118,24 @@ class CamStreamerAPI {
|
|
|
115
118
|
throw new errors_1.ErrorWithResponse(res);
|
|
116
119
|
}
|
|
117
120
|
}
|
|
121
|
+
async _getBlob(path, parameters, options) {
|
|
122
|
+
const agent = this.getClient(options?.proxyParams);
|
|
123
|
+
const res = await agent.get({ path, parameters, timeout: options?.timeout });
|
|
124
|
+
if (res.ok) {
|
|
125
|
+
return await this.parseBlobResponse(res);
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
throw new errors_1.ErrorWithResponse(res);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
async parseBlobResponse(response) {
|
|
132
|
+
try {
|
|
133
|
+
return (await response.blob());
|
|
134
|
+
}
|
|
135
|
+
catch (err) {
|
|
136
|
+
throw new errors_1.ParsingBlobError(err);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
118
139
|
async _postUrlEncoded(path, parameters, options, headers) {
|
|
119
140
|
const data = (0, utils_1.paramToUrl)(parameters);
|
|
120
141
|
const baseHeaders = { 'Content-Type': 'application/x-www-form-urlencoded' };
|