eufy-security-client 2.4.2 → 2.4.4

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 (87) hide show
  1. package/README.md +12 -0
  2. package/build/error.d.ts +57 -57
  3. package/build/error.js +155 -155
  4. package/build/eufysecurity.d.ts +162 -161
  5. package/build/eufysecurity.js +2104 -2091
  6. package/build/eufysecurity.js.map +1 -1
  7. package/build/http/api.d.ts +90 -90
  8. package/build/http/api.js +1407 -1407
  9. package/build/http/api.js.map +1 -1
  10. package/build/http/cache.d.ts +8 -8
  11. package/build/http/cache.js +33 -33
  12. package/build/http/const.d.ts +3 -3
  13. package/build/http/const.js +8545 -8545
  14. package/build/http/device.d.ts +360 -360
  15. package/build/http/device.js +2793 -2793
  16. package/build/http/device.js.map +1 -1
  17. package/build/http/error.d.ts +28 -28
  18. package/build/http/error.js +76 -76
  19. package/build/http/index.d.ts +10 -10
  20. package/build/http/index.js +29 -29
  21. package/build/http/interfaces.d.ts +202 -202
  22. package/build/http/interfaces.js +2 -2
  23. package/build/http/models.d.ts +561 -561
  24. package/build/http/models.js +2 -2
  25. package/build/http/parameter.d.ts +5 -5
  26. package/build/http/parameter.js +75 -75
  27. package/build/http/station.d.ts +292 -292
  28. package/build/http/station.js +6780 -6780
  29. package/build/http/station.js.map +1 -1
  30. package/build/http/types.d.ts +945 -945
  31. package/build/http/types.js +6070 -6070
  32. package/build/http/utils.d.ts +37 -37
  33. package/build/http/utils.js +370 -370
  34. package/build/index.d.ts +7 -7
  35. package/build/index.js +25 -25
  36. package/build/interfaces.d.ts +113 -113
  37. package/build/interfaces.js +2 -2
  38. package/build/mqtt/interface.d.ts +6 -6
  39. package/build/mqtt/interface.js +2 -2
  40. package/build/mqtt/model.d.ts +24 -24
  41. package/build/mqtt/model.js +2 -2
  42. package/build/mqtt/service.d.ts +30 -30
  43. package/build/mqtt/service.js +168 -168
  44. package/build/mqtt/service.js.map +1 -1
  45. package/build/p2p/ble.d.ts +47 -47
  46. package/build/p2p/ble.js +188 -188
  47. package/build/p2p/ble.js.map +1 -1
  48. package/build/p2p/error.d.ts +24 -24
  49. package/build/p2p/error.js +67 -67
  50. package/build/p2p/index.d.ts +8 -8
  51. package/build/p2p/index.js +27 -27
  52. package/build/p2p/interfaces.d.ts +162 -162
  53. package/build/p2p/interfaces.js +2 -2
  54. package/build/p2p/models.d.ts +146 -146
  55. package/build/p2p/models.js +2 -2
  56. package/build/p2p/session.d.ts +168 -168
  57. package/build/p2p/session.js +2087 -2087
  58. package/build/p2p/session.js.map +1 -1
  59. package/build/p2p/talkback.d.ts +10 -10
  60. package/build/p2p/talkback.js +22 -22
  61. package/build/p2p/types.d.ts +923 -923
  62. package/build/p2p/types.js +957 -957
  63. package/build/p2p/utils.d.ts +56 -56
  64. package/build/p2p/utils.js +653 -653
  65. package/build/push/client.d.ts +51 -51
  66. package/build/push/client.js +311 -311
  67. package/build/push/client.js.map +1 -1
  68. package/build/push/index.d.ts +5 -5
  69. package/build/push/index.js +24 -24
  70. package/build/push/interfaces.d.ts +19 -19
  71. package/build/push/interfaces.js +2 -2
  72. package/build/push/models.d.ts +292 -292
  73. package/build/push/models.js +30 -30
  74. package/build/push/parser.d.ts +28 -28
  75. package/build/push/parser.js +215 -215
  76. package/build/push/parser.js.map +1 -1
  77. package/build/push/service.d.ts +45 -45
  78. package/build/push/service.js +643 -643
  79. package/build/push/service.js.map +1 -1
  80. package/build/push/types.d.ts +176 -176
  81. package/build/push/types.js +192 -192
  82. package/build/push/utils.d.ts +7 -7
  83. package/build/push/utils.js +102 -102
  84. package/build/utils.d.ts +16 -13
  85. package/build/utils.js +207 -191
  86. package/build/utils.js.map +1 -1
  87. package/package.json +10 -10
@@ -1,28 +1,28 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.getLocalIpAddress = exports.isPrivateIp = void 0;
18
- __exportStar(require("./interfaces"), exports);
19
- __exportStar(require("./models"), exports);
20
- __exportStar(require("./session"), exports);
21
- __exportStar(require("./types"), exports);
22
- __exportStar(require("./talkback"), exports);
23
- __exportStar(require("./ble"), exports);
24
- __exportStar(require("./error"), exports);
25
- var utils_1 = require("./utils");
26
- Object.defineProperty(exports, "isPrivateIp", { enumerable: true, get: function () { return utils_1.isPrivateIp; } });
27
- Object.defineProperty(exports, "getLocalIpAddress", { enumerable: true, get: function () { return utils_1.getLocalIpAddress; } });
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.getLocalIpAddress = exports.isPrivateIp = void 0;
18
+ __exportStar(require("./interfaces"), exports);
19
+ __exportStar(require("./models"), exports);
20
+ __exportStar(require("./session"), exports);
21
+ __exportStar(require("./types"), exports);
22
+ __exportStar(require("./talkback"), exports);
23
+ __exportStar(require("./ble"), exports);
24
+ __exportStar(require("./error"), exports);
25
+ var utils_1 = require("./utils");
26
+ Object.defineProperty(exports, "isPrivateIp", { enumerable: true, get: function () { return utils_1.isPrivateIp; } });
27
+ Object.defineProperty(exports, "getLocalIpAddress", { enumerable: true, get: function () { return utils_1.getLocalIpAddress; } });
28
28
  //# sourceMappingURL=index.js.map
@@ -1,162 +1,162 @@
1
- /// <reference types="node" />
2
- /// <reference types="node" />
3
- /// <reference types="node" />
4
- import * as NodeRSA from "node-rsa";
5
- import { Readable } from "stream";
6
- import { SortedMap } from "sweet-collections";
7
- import { AlarmMode } from "../http/types";
8
- import { Address, CmdCameraInfoResponse, CommandResult, CustomData } from "./models";
9
- import { TalkbackStream } from "./talkback";
10
- import { AlarmEvent, AudioCodec, ChargingType, CommandType, IndoorSoloSmartdropCommandType, P2PDataType, SmartSafeAlarm911Event, SmartSafeShakeAlarmEvent, VideoCodec } from "./types";
11
- export interface P2PClientProtocolEvents {
12
- "alarm mode": (mode: AlarmMode) => void;
13
- "camera info": (cameraInfo: CmdCameraInfoResponse) => void;
14
- "connect": (address: Address) => void;
15
- "close": () => void;
16
- "command": (result: CommandResult) => void;
17
- "download started": (channel: number, metadata: StreamMetadata, videoStream: Readable, audioStream: Readable) => void;
18
- "download finished": (channel: number) => void;
19
- "livestream started": (channel: number, metadata: StreamMetadata, videoStream: Readable, audioStream: Readable) => void;
20
- "livestream stopped": (channel: number) => void;
21
- "livestream error": (channel: number, error: Error) => void;
22
- "wifi rssi": (channel: number, rssi: number) => void;
23
- "rtsp url": (channel: number, rtspUrl: string) => void;
24
- "parameter": (channel: number, param: number, value: string) => void;
25
- "timeout": () => void;
26
- "runtime state": (channel: number, batteryLevel: number, temperature: number) => void;
27
- "charging state": (channel: number, chargeType: ChargingType, batteryLevel: number) => void;
28
- "rtsp livestream started": (channel: number) => void;
29
- "rtsp livestream stopped": (channel: number) => void;
30
- "floodlight manual switch": (channel: number, enabled: boolean) => void;
31
- "alarm delay": (alarmDelayEvent: AlarmEvent, alarmDelay: number) => void;
32
- "alarm armed": () => void;
33
- "alarm event": (alarmEvent: AlarmEvent) => void;
34
- "talkback started": (channel: number, talkbackStream: TalkbackStream) => void;
35
- "talkback stopped": (channel: number) => void;
36
- "talkback error": (channel: number, error: Error) => void;
37
- "secondary command": (result: CommandResult) => void;
38
- "jammed": (channel: number) => void;
39
- "low battery": (channel: number) => void;
40
- "shake alarm": (channel: number, detail: SmartSafeShakeAlarmEvent) => void;
41
- "911 alarm": (channel: number, detail: SmartSafeAlarm911Event) => void;
42
- "wrong try-protect alarm": (channel: number) => void;
43
- "sd info ex": (sdStatus: number, sdCapacity: number, sdCapacityAvailable: number) => void;
44
- }
45
- export interface P2PQueueMessage {
46
- commandType: CommandType;
47
- nestedCommandType?: CommandType;
48
- channel: number;
49
- payload: Buffer;
50
- timestamp: number;
51
- customData?: CustomData;
52
- }
53
- export interface P2PMessageState {
54
- sequence: number;
55
- commandType: CommandType;
56
- nestedCommandType?: CommandType | IndoorSoloSmartdropCommandType;
57
- channel: number;
58
- data: Buffer;
59
- retries: number;
60
- acknowledged: boolean;
61
- returnCode: number;
62
- retryTimeout?: NodeJS.Timeout;
63
- timeout?: NodeJS.Timeout;
64
- customData?: CustomData;
65
- }
66
- export interface P2PMessageParts {
67
- [index: number]: Buffer;
68
- }
69
- export interface P2PMessage {
70
- bytesToRead: number;
71
- type: P2PDataType;
72
- seqNo: number;
73
- data: Buffer;
74
- }
75
- export interface P2PDataHeader {
76
- commandId: number;
77
- bytesToRead: number;
78
- channel: number;
79
- signCode: number;
80
- type: number;
81
- }
82
- export interface P2PDataMessage extends P2PDataHeader {
83
- seqNo: number;
84
- dataType: P2PDataType;
85
- data: Buffer;
86
- }
87
- export interface P2PDataMessageBuilder {
88
- header: P2PDataHeader;
89
- bytesRead: number;
90
- messages: P2PMessageParts;
91
- }
92
- export interface P2PDataMessageState {
93
- leftoverData: Buffer;
94
- queuedData: SortedMap<number, P2PMessage>;
95
- rsaKey: NodeRSA | null;
96
- videoStream: Readable | null;
97
- audioStream: Readable | null;
98
- invalidStream: boolean;
99
- p2pStreaming: boolean;
100
- p2pStreamNotStarted: boolean;
101
- p2pStreamChannel: number;
102
- p2pStreamFirstAudioDataReceived: boolean;
103
- p2pStreamFirstVideoDataReceived: boolean;
104
- p2pStreamMetadata: StreamMetadata;
105
- p2pStreamingTimeout?: NodeJS.Timeout;
106
- rtspStream: {
107
- [index: number]: boolean;
108
- };
109
- rtspStreaming: {
110
- [index: number]: boolean;
111
- };
112
- waitForSeqNoTimeout?: NodeJS.Timeout;
113
- waitForAudioData?: NodeJS.Timeout;
114
- receivedFirstIFrame: boolean;
115
- preFrameVideoData: Buffer;
116
- p2pTalkback: boolean;
117
- p2pTalkbackChannel: number;
118
- }
119
- export interface P2PDataMessageVideo {
120
- streamType: number;
121
- videoSeqNo: number;
122
- videoFPS: number;
123
- videoWidth: number;
124
- videoHeight: number;
125
- videoTimestamp: number;
126
- videoDataLength: number;
127
- aesKey: string;
128
- }
129
- export interface P2PDataMessageAudio {
130
- audioType: number;
131
- audioSeqNo: number;
132
- audioTimestamp: number;
133
- audioDataLength: number;
134
- }
135
- export interface StreamMetadata {
136
- videoCodec: VideoCodec;
137
- videoFPS: number;
138
- videoWidth: number;
139
- videoHeight: number;
140
- audioCodec: AudioCodec;
141
- }
142
- export interface DeviceSerial {
143
- [index: number]: {
144
- sn: string;
145
- adminUserId: string;
146
- };
147
- }
148
- export interface P2PCommand {
149
- commandType: CommandType;
150
- value?: number | string;
151
- valueSub?: number;
152
- strValue?: string;
153
- strValueSub?: string;
154
- channel?: number;
155
- }
156
- export interface P2PVideoMessageState {
157
- sequence: number;
158
- channel: number;
159
- data: Buffer;
160
- retries: number;
161
- timeout?: NodeJS.Timeout;
162
- }
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ /// <reference types="node" />
4
+ import * as NodeRSA from "node-rsa";
5
+ import { Readable } from "stream";
6
+ import { SortedMap } from "sweet-collections";
7
+ import { AlarmMode } from "../http/types";
8
+ import { Address, CmdCameraInfoResponse, CommandResult, CustomData } from "./models";
9
+ import { TalkbackStream } from "./talkback";
10
+ import { AlarmEvent, AudioCodec, ChargingType, CommandType, IndoorSoloSmartdropCommandType, P2PDataType, SmartSafeAlarm911Event, SmartSafeShakeAlarmEvent, VideoCodec } from "./types";
11
+ export interface P2PClientProtocolEvents {
12
+ "alarm mode": (mode: AlarmMode) => void;
13
+ "camera info": (cameraInfo: CmdCameraInfoResponse) => void;
14
+ "connect": (address: Address) => void;
15
+ "close": () => void;
16
+ "command": (result: CommandResult) => void;
17
+ "download started": (channel: number, metadata: StreamMetadata, videoStream: Readable, audioStream: Readable) => void;
18
+ "download finished": (channel: number) => void;
19
+ "livestream started": (channel: number, metadata: StreamMetadata, videoStream: Readable, audioStream: Readable) => void;
20
+ "livestream stopped": (channel: number) => void;
21
+ "livestream error": (channel: number, error: Error) => void;
22
+ "wifi rssi": (channel: number, rssi: number) => void;
23
+ "rtsp url": (channel: number, rtspUrl: string) => void;
24
+ "parameter": (channel: number, param: number, value: string) => void;
25
+ "timeout": () => void;
26
+ "runtime state": (channel: number, batteryLevel: number, temperature: number) => void;
27
+ "charging state": (channel: number, chargeType: ChargingType, batteryLevel: number) => void;
28
+ "rtsp livestream started": (channel: number) => void;
29
+ "rtsp livestream stopped": (channel: number) => void;
30
+ "floodlight manual switch": (channel: number, enabled: boolean) => void;
31
+ "alarm delay": (alarmDelayEvent: AlarmEvent, alarmDelay: number) => void;
32
+ "alarm armed": () => void;
33
+ "alarm event": (alarmEvent: AlarmEvent) => void;
34
+ "talkback started": (channel: number, talkbackStream: TalkbackStream) => void;
35
+ "talkback stopped": (channel: number) => void;
36
+ "talkback error": (channel: number, error: Error) => void;
37
+ "secondary command": (result: CommandResult) => void;
38
+ "jammed": (channel: number) => void;
39
+ "low battery": (channel: number) => void;
40
+ "shake alarm": (channel: number, detail: SmartSafeShakeAlarmEvent) => void;
41
+ "911 alarm": (channel: number, detail: SmartSafeAlarm911Event) => void;
42
+ "wrong try-protect alarm": (channel: number) => void;
43
+ "sd info ex": (sdStatus: number, sdCapacity: number, sdCapacityAvailable: number) => void;
44
+ }
45
+ export interface P2PQueueMessage {
46
+ commandType: CommandType;
47
+ nestedCommandType?: CommandType;
48
+ channel: number;
49
+ payload: Buffer;
50
+ timestamp: number;
51
+ customData?: CustomData;
52
+ }
53
+ export interface P2PMessageState {
54
+ sequence: number;
55
+ commandType: CommandType;
56
+ nestedCommandType?: CommandType | IndoorSoloSmartdropCommandType;
57
+ channel: number;
58
+ data: Buffer;
59
+ retries: number;
60
+ acknowledged: boolean;
61
+ returnCode: number;
62
+ retryTimeout?: NodeJS.Timeout;
63
+ timeout?: NodeJS.Timeout;
64
+ customData?: CustomData;
65
+ }
66
+ export interface P2PMessageParts {
67
+ [index: number]: Buffer;
68
+ }
69
+ export interface P2PMessage {
70
+ bytesToRead: number;
71
+ type: P2PDataType;
72
+ seqNo: number;
73
+ data: Buffer;
74
+ }
75
+ export interface P2PDataHeader {
76
+ commandId: number;
77
+ bytesToRead: number;
78
+ channel: number;
79
+ signCode: number;
80
+ type: number;
81
+ }
82
+ export interface P2PDataMessage extends P2PDataHeader {
83
+ seqNo: number;
84
+ dataType: P2PDataType;
85
+ data: Buffer;
86
+ }
87
+ export interface P2PDataMessageBuilder {
88
+ header: P2PDataHeader;
89
+ bytesRead: number;
90
+ messages: P2PMessageParts;
91
+ }
92
+ export interface P2PDataMessageState {
93
+ leftoverData: Buffer;
94
+ queuedData: SortedMap<number, P2PMessage>;
95
+ rsaKey: NodeRSA | null;
96
+ videoStream: Readable | null;
97
+ audioStream: Readable | null;
98
+ invalidStream: boolean;
99
+ p2pStreaming: boolean;
100
+ p2pStreamNotStarted: boolean;
101
+ p2pStreamChannel: number;
102
+ p2pStreamFirstAudioDataReceived: boolean;
103
+ p2pStreamFirstVideoDataReceived: boolean;
104
+ p2pStreamMetadata: StreamMetadata;
105
+ p2pStreamingTimeout?: NodeJS.Timeout;
106
+ rtspStream: {
107
+ [index: number]: boolean;
108
+ };
109
+ rtspStreaming: {
110
+ [index: number]: boolean;
111
+ };
112
+ waitForSeqNoTimeout?: NodeJS.Timeout;
113
+ waitForAudioData?: NodeJS.Timeout;
114
+ receivedFirstIFrame: boolean;
115
+ preFrameVideoData: Buffer;
116
+ p2pTalkback: boolean;
117
+ p2pTalkbackChannel: number;
118
+ }
119
+ export interface P2PDataMessageVideo {
120
+ streamType: number;
121
+ videoSeqNo: number;
122
+ videoFPS: number;
123
+ videoWidth: number;
124
+ videoHeight: number;
125
+ videoTimestamp: number;
126
+ videoDataLength: number;
127
+ aesKey: string;
128
+ }
129
+ export interface P2PDataMessageAudio {
130
+ audioType: number;
131
+ audioSeqNo: number;
132
+ audioTimestamp: number;
133
+ audioDataLength: number;
134
+ }
135
+ export interface StreamMetadata {
136
+ videoCodec: VideoCodec;
137
+ videoFPS: number;
138
+ videoWidth: number;
139
+ videoHeight: number;
140
+ audioCodec: AudioCodec;
141
+ }
142
+ export interface DeviceSerial {
143
+ [index: number]: {
144
+ sn: string;
145
+ adminUserId: string;
146
+ };
147
+ }
148
+ export interface P2PCommand {
149
+ commandType: CommandType;
150
+ value?: number | string;
151
+ valueSub?: number;
152
+ strValue?: string;
153
+ strValueSub?: string;
154
+ channel?: number;
155
+ }
156
+ export interface P2PVideoMessageState {
157
+ sequence: number;
158
+ channel: number;
159
+ data: Buffer;
160
+ retries: number;
161
+ timeout?: NodeJS.Timeout;
162
+ }
@@ -1,3 +1,3 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  //# sourceMappingURL=interfaces.js.map