@apocaliss92/nodelink-js 0.4.12 → 0.4.13

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/dist/index.d.ts CHANGED
@@ -447,6 +447,17 @@ export declare interface AutoFocusConfig {
447
447
  };
448
448
  }
449
449
 
450
+ /** AutoReboot schedule (cmdId=100/101). */
451
+ export declare interface AutoRebootConfig {
452
+ enable: 0 | 1;
453
+ weekDay: DayOfWeek;
454
+ hour: number;
455
+ minute: number;
456
+ second: number;
457
+ }
458
+
459
+ export declare type AutoRebootConfigPatch = Partial<AutoRebootConfig>;
460
+
450
461
  export declare type BaichuanCachedPush<T> = {
451
462
  updatedAtMs: number;
452
463
  value: T;
@@ -2212,6 +2223,8 @@ export declare const BC_CMD_ID_GET_AUDIO_TASK = 232;
2212
2223
 
2213
2224
  export declare const BC_CMD_ID_GET_AUTO_FOCUS = 224;
2214
2225
 
2226
+ export declare const BC_CMD_ID_GET_AUTO_REBOOT = 101;
2227
+
2215
2228
  export declare const BC_CMD_ID_GET_BATTERY_INFO = 253;
2216
2229
 
2217
2230
  export declare const BC_CMD_ID_GET_BATTERY_INFO_LIST = 252;
@@ -2226,6 +2239,10 @@ export declare const BC_CMD_ID_GET_DING_DONG_LIST = 484;
2226
2239
 
2227
2240
  export declare const BC_CMD_ID_GET_DING_DONG_SILENT = 609;
2228
2241
 
2242
+ export declare const BC_CMD_ID_GET_DST = 106;
2243
+
2244
+ export declare const BC_CMD_ID_GET_EMAIL = 42;
2245
+
2229
2246
  export declare const BC_CMD_ID_GET_EMAIL_TASK = 217;
2230
2247
 
2231
2248
  export declare const BC_CMD_ID_GET_ENC = 56;
@@ -2240,6 +2257,8 @@ export declare const BC_CMD_ID_GET_LED_STATE = 208;
2240
2257
 
2241
2258
  export declare const BC_CMD_ID_GET_MOTION_ALARM = 46;
2242
2259
 
2260
+ export declare const BC_CMD_ID_GET_NTP = 38;
2261
+
2243
2262
  export declare const BC_CMD_ID_GET_ONLINE_USER_LIST = 120;
2244
2263
 
2245
2264
  export declare const BC_CMD_ID_GET_OSD_DATETIME = 44;
@@ -2327,12 +2346,18 @@ export declare const BC_CMD_ID_SET_AUDIO_TASK = 231;
2327
2346
 
2328
2347
  export declare const BC_CMD_ID_SET_AUTO_FOCUS = 225;
2329
2348
 
2349
+ export declare const BC_CMD_ID_SET_AUTO_REBOOT = 100;
2350
+
2330
2351
  export declare const BC_CMD_ID_SET_DAY_NIGHT_THRESHOLD = 297;
2331
2352
 
2332
2353
  export declare const BC_CMD_ID_SET_DING_DONG_CFG = 487;
2333
2354
 
2334
2355
  export declare const BC_CMD_ID_SET_DING_DONG_SILENT = 610;
2335
2356
 
2357
+ export declare const BC_CMD_ID_SET_DST = 107;
2358
+
2359
+ export declare const BC_CMD_ID_SET_EMAIL = 43;
2360
+
2336
2361
  export declare const BC_CMD_ID_SET_EMAIL_TASK = 216;
2337
2362
 
2338
2363
  export declare const BC_CMD_ID_SET_ENC = 57;
@@ -2341,6 +2366,8 @@ export declare const BC_CMD_ID_SET_LED_STATE = 209;
2341
2366
 
2342
2367
  export declare const BC_CMD_ID_SET_MOTION_ALARM = 47;
2343
2368
 
2369
+ export declare const BC_CMD_ID_SET_NTP = 39;
2370
+
2344
2371
  export declare const BC_CMD_ID_SET_OSD_DATETIME = 45;
2345
2372
 
2346
2373
  export declare const BC_CMD_ID_SET_PIR_INFO = 213;
@@ -2353,6 +2380,8 @@ export declare const BC_CMD_ID_SET_RECORD = 82;
2353
2380
 
2354
2381
  export declare const BC_CMD_ID_SET_RECORD_CFG = 55;
2355
2382
 
2383
+ export declare const BC_CMD_ID_SET_SYSTEM_GENERAL = 105;
2384
+
2356
2385
  export declare const BC_CMD_ID_SET_VIDEO_INPUT = 25;
2357
2386
 
2358
2387
  export declare const BC_CMD_ID_SET_WHITE_LED_STATE = 288;
@@ -2371,6 +2400,8 @@ export declare const BC_CMD_ID_TALK_CONFIG = 201;
2371
2400
 
2372
2401
  export declare const BC_CMD_ID_TALK_RESET = 11;
2373
2402
 
2403
+ export declare const BC_CMD_ID_TEST_EMAIL = 141;
2404
+
2374
2405
  export declare const BC_CMD_ID_UDP_KEEP_ALIVE = 234;
2375
2406
 
2376
2407
  /**
@@ -4088,6 +4119,9 @@ export declare interface DayNightThresholdConfig {
4088
4119
  };
4089
4120
  }
4090
4121
 
4122
+ /** Day-of-week labels accepted by Dst and AutoReboot blocks. */
4123
+ export declare type DayOfWeek = "Sunday" | "Monday" | "Tuesday" | "Wednesday" | "Thursday" | "Friday" | "Saturday" | "everyday";
4124
+
4091
4125
  export declare type DebugConfig = {
4092
4126
  general: boolean;
4093
4127
  debugRtsp: boolean;
@@ -4492,6 +4526,30 @@ export declare interface DownloadRecordingParams {
4492
4526
  timeoutMs?: number;
4493
4527
  }
4494
4528
 
4529
+ /** Daylight Saving Time configuration (cmdId=106/107). */
4530
+ export declare interface DstConfig {
4531
+ enable: 0 | 1;
4532
+ /** Offset in hours (typically 1). */
4533
+ offset: number;
4534
+ startMonth: number;
4535
+ /** Week-of-month index (1..5). 5 = "last week of the month". */
4536
+ startWeekIndex: number;
4537
+ startWeekday: DayOfWeek;
4538
+ startHour: number;
4539
+ startMinute: number;
4540
+ startSecond: number;
4541
+ endMonth: number;
4542
+ endWeekIndex: number;
4543
+ endWeekday: DayOfWeek;
4544
+ endHour: number;
4545
+ endMinute: number;
4546
+ endSecond: number;
4547
+ /** Schema version (returned by camera, defaults to 0). */
4548
+ version?: number;
4549
+ }
4550
+
4551
+ export declare type DstConfigPatch = Partial<DstConfig>;
4552
+
4495
4553
  export declare const DUAL_LENS_DUAL_MOTION_MODELS: Set<string>;
4496
4554
 
4497
4555
  export declare const DUAL_LENS_MODELS: Set<string>;
@@ -4566,19 +4624,73 @@ export declare interface DualLensChannelInfo {
4566
4624
  };
4567
4625
  }
4568
4626
 
4627
+ /** Image vs video attachment for motion alert emails. */
4628
+ export declare type EmailAttachmentType = "picture" | "video" | "none";
4629
+
4569
4630
  /**
4570
- * Email task configuration.
4571
- */
4631
+ * Email SMTP server configuration. Returned by GetEmail (cmdId=42) and
4632
+ * accepted by SetEmail (cmdId=43) and TestEmail (cmdId=141).
4633
+ *
4634
+ * Read-only fields (only present on GET): `senderMaxLen`, `pwdMaxLen`,
4635
+ * `emailAttachAbility` — the camera-reported capability bitmap.
4636
+ */
4637
+ export declare interface EmailConfig {
4638
+ smtpServer: string;
4639
+ /** Sender email address / SMTP username. Empty when unconfigured. */
4640
+ userName: string;
4641
+ /** SMTP password. Always sent in cleartext — camera limitation. */
4642
+ password: string;
4643
+ /** Recipient 1. */
4644
+ address1: string;
4645
+ /** Recipient 2 (optional). */
4646
+ address2: string;
4647
+ /** Recipient 3 (optional). */
4648
+ address3: string;
4649
+ smtpPort: number;
4650
+ sendNickname: string;
4651
+ /** 1 = attach picture/video, 0 = text-only. */
4652
+ attachment: 0 | 1;
4653
+ attachmentType: EmailAttachmentType;
4654
+ textType: EmailTextType;
4655
+ /** 1 = SSL/TLS, 0 = plain SMTP. */
4656
+ ssl: 0 | 1;
4657
+ /** Throttle between successive motion mails in seconds. Ignored on battery cams. */
4658
+ interval: number;
4659
+ senderMaxLen?: number;
4660
+ pwdMaxLen?: number;
4661
+ /** Bitmap of supported attachment combinations. */
4662
+ emailAttachAbility?: number;
4663
+ }
4664
+
4665
+ /** Patch payload accepted by SetEmail. All fields optional — only supplied ones are written. */
4666
+ export declare type EmailConfigPatch = Partial<Omit<EmailConfig, "senderMaxLen" | "pwdMaxLen" | "emailAttachAbility">>;
4667
+
4668
+ /** Email schedule configuration (cmdId=216/217). */
4572
4669
  export declare interface EmailTaskConfig {
4573
- body?: {
4574
- EmailTask?: {
4575
- channelId?: number | undefined;
4576
- enable?: number | undefined;
4577
- [key: string]: unknown;
4578
- };
4579
- };
4670
+ channelId: number;
4671
+ enable: 0 | 1;
4672
+ typeScheduleList: EmailTaskScheduleItem[];
4580
4673
  }
4581
4674
 
4675
+ /**
4676
+ * Single entry in the EmailTask `typeScheduleList`. `valueTable` is a
4677
+ * 168-char string of '0'/'1' representing the 7-days × 24-hours grid.
4678
+ */
4679
+ export declare interface EmailTaskScheduleItem {
4680
+ /**
4681
+ * Trigger type. Known: "MD" (motion), "Normal" (continuous record),
4682
+ * "people", "vehicle", "dog_cat", "face", "package", "cry", "visitor",
4683
+ * "doorbell", "none" (placeholder slot).
4684
+ * Treated as string to cover firmware-specific extensions.
4685
+ */
4686
+ type: string;
4687
+ /** 168-char 0/1 schedule bitmap. */
4688
+ valueTable: string;
4689
+ }
4690
+
4691
+ /** Whether the alert body carries the standard human-readable text. */
4692
+ export declare type EmailTextType = "withText" | "noText";
4693
+
4582
4694
  /**
4583
4695
  * Encoding configuration (getEnc response).
4584
4696
  * cmdId=56 (GetEnc) — payload is wrapped in `Compression`, not `Enc`.
@@ -4775,7 +4887,7 @@ export declare interface FloodlightTaskConfig {
4775
4887
  * Parse FloodlightTask XML to extract floodlight-on-motion state.
4776
4888
  * Returns the alarmMode (1 = floodlight turns on when motion detected, 0 = off)
4777
4889
  */
4778
- declare interface FloodlightTaskState {
4890
+ export declare interface FloodlightTaskState {
4779
4891
  /** Whether floodlight turns on when motion is detected (alarmMode) */
4780
4892
  floodlightOnMotion: boolean;
4781
4893
  /** Whether the task is enabled */
@@ -5835,6 +5947,20 @@ export declare function normalizeOpenClose(input: string): string;
5835
5947
  */
5836
5948
  export declare function normalizeUid(uid?: string): string | undefined;
5837
5949
 
5950
+ /** NTP server configuration (cmdId=38/39). */
5951
+ export declare interface NtpConfig {
5952
+ /** 1 = NTP sync enabled, 0 = disabled. */
5953
+ enable: 0 | 1;
5954
+ /** Hostname or IP of the NTP server. */
5955
+ server: string;
5956
+ /** Sync interval in minutes. */
5957
+ synchronizeInterval: number;
5958
+ /** UDP port. Default 123. */
5959
+ port: number;
5960
+ }
5961
+
5962
+ export declare type NtpConfigPatch = Partial<NtpConfig>;
5963
+
5838
5964
  /**
5839
5965
  * Exact type values that indicate NVR/Hub devices.
5840
5966
  * These are checked with exact case-insensitive match.
@@ -5902,6 +6028,9 @@ export declare interface OsdConfig {
5902
6028
  bgcolor?: number;
5903
6029
  }
5904
6030
 
6031
+ /** OSD date format. */
6032
+ export declare type OsdDateFormat = "DMY" | "MDY" | "YMD";
6033
+
5905
6034
  export declare interface OsdTime {
5906
6035
  enable: number;
5907
6036
  pos: string;
@@ -8641,6 +8770,178 @@ export declare class ReolinkBaichuanApi {
8641
8770
  getEmailTask(channel?: number, options?: {
8642
8771
  timeoutMs?: number;
8643
8772
  }): Promise<EmailTaskConfig>;
8773
+ /**
8774
+ * SetEmailTask via Baichuan (cmdId=216). Updates the email alarm schedule
8775
+ * (per-event-type 7×24 valueTable + master enable).
8776
+ *
8777
+ * Reolink expects the FULL `typeScheduleList` — pass the array from a prior
8778
+ * GET and only flip the entries you care about. Slots you don't track must
8779
+ * be sent back unchanged to avoid the camera dropping them.
8780
+ */
8781
+ setEmailTask(channel: number | undefined, task: EmailTaskConfig, options?: {
8782
+ timeoutMs?: number;
8783
+ }): Promise<void>;
8784
+ /**
8785
+ * Convenience wrapper that patches the schedule of one or more trigger
8786
+ * types on the camera's EmailTask without touching the others.
8787
+ *
8788
+ * Pass a high-level schedule spec (`always` / `never` / explicit windows)
8789
+ * and the trigger types it should apply to. The method:
8790
+ *
8791
+ * 1. Reads the current EmailTask via GET (so we keep every existing slot).
8792
+ * 2. Builds the new `valueTable` once from `schedule`.
8793
+ * 3. Replaces the `valueTable` of every matching `type` in the list.
8794
+ * 4. Appends entries for any requested type not already present.
8795
+ * 5. Writes the merged list back via SET.
8796
+ *
8797
+ * Returns the list of types that were actually touched.
8798
+ */
8799
+ patchEmailSchedule(channel: number | undefined, spec: {
8800
+ types: string[];
8801
+ schedule: {
8802
+ kind: "always";
8803
+ } | {
8804
+ kind: "never";
8805
+ } | {
8806
+ kind: "windows";
8807
+ windows: Array<{
8808
+ days: number[];
8809
+ startHour: number;
8810
+ endHour: number;
8811
+ }>;
8812
+ };
8813
+ /** When provided, also flips the EmailTask master `enable` flag. */
8814
+ enable?: 0 | 1;
8815
+ }, options?: {
8816
+ timeoutMs?: number;
8817
+ }): Promise<{
8818
+ touchedTypes: string[];
8819
+ }>;
8820
+ /**
8821
+ * Read the SMTP email configuration (cmdId=42). Returns the full `<Email>`
8822
+ * block including capability hints (`senderMaxLen`, `pwdMaxLen`,
8823
+ * `emailAttachAbility`).
8824
+ */
8825
+ getEmail(options?: {
8826
+ timeoutMs?: number;
8827
+ }): Promise<EmailConfig>;
8828
+ /**
8829
+ * Patch the SMTP email configuration (cmdId=43). Reads the current config
8830
+ * first then merges the patch — Reolink rejects partial `<Email>` blocks.
8831
+ */
8832
+ setEmail(patch: EmailConfigPatch, options?: {
8833
+ timeoutMs?: number;
8834
+ }): Promise<void>;
8835
+ /**
8836
+ * Send a test email using either the current config or an override patch
8837
+ * (cmdId=141). Returns true when the camera reports 200 (test succeeded),
8838
+ * false when it reports 482 (test failed — server unreachable / bad creds).
8839
+ * Other non-200 codes propagate as exceptions via `sendXml`.
8840
+ */
8841
+ testEmail(patch?: EmailConfigPatch, options?: {
8842
+ timeoutMs?: number;
8843
+ }): Promise<boolean>;
8844
+ /**
8845
+ * Read the NTP server configuration (cmdId=38).
8846
+ */
8847
+ getNtp(options?: {
8848
+ timeoutMs?: number;
8849
+ }): Promise<NtpConfig>;
8850
+ /**
8851
+ * Patch the NTP server configuration (cmdId=39). Reads the current state
8852
+ * first and merges the patch — Reolink rejects partial `<Ntp>` blocks.
8853
+ */
8854
+ setNtp(patch: NtpConfigPatch, options?: {
8855
+ timeoutMs?: number;
8856
+ }): Promise<void>;
8857
+ /**
8858
+ * Patch SystemGeneral (cmdId=105). Supports partial payloads: include only
8859
+ * the fields you want to change. By default the builder emits `<year>0</year>`
8860
+ * as the "do not set manual clock" marker; pass `manualTime` to actually
8861
+ * set the date/time. Setting only `deviceName` automatically uses the
8862
+ * Reolink Client's `deviceNameOnly=1` shape.
8863
+ */
8864
+ setSystemGeneral(patch: SystemGeneralPatch, options?: {
8865
+ timeoutMs?: number;
8866
+ }): Promise<void>;
8867
+ /**
8868
+ * Read the Daylight Saving Time configuration (cmdId=106).
8869
+ */
8870
+ getDst(options?: {
8871
+ timeoutMs?: number;
8872
+ }): Promise<DstConfig>;
8873
+ /**
8874
+ * Patch the DST configuration (cmdId=107). Reads the current state first
8875
+ * and merges the patch.
8876
+ */
8877
+ setDst(patch: DstConfigPatch, options?: {
8878
+ timeoutMs?: number;
8879
+ }): Promise<void>;
8880
+ /**
8881
+ * Read the auto-reboot schedule (cmdId=101).
8882
+ */
8883
+ getAutoReboot(options?: {
8884
+ timeoutMs?: number;
8885
+ }): Promise<AutoRebootConfig>;
8886
+ /**
8887
+ * Patch the auto-reboot schedule (cmdId=100).
8888
+ */
8889
+ setAutoReboot(patch: AutoRebootConfigPatch, options?: {
8890
+ timeoutMs?: number;
8891
+ }): Promise<void>;
8892
+ /**
8893
+ * High-level helper that configures the camera to deliver motion alerts via
8894
+ * SMTP to the local nodelink manager. Orchestrates `setEmail` + `setEmailTask`
8895
+ * in a single call so UI code can offer "auto-configure" without juggling
8896
+ * the underlying commands.
8897
+ *
8898
+ * Pass `runTest: true` to also send a test email (cmdId=141). Returns a
8899
+ * structured result describing each leg of the flow so the caller can show
8900
+ * granular feedback.
8901
+ *
8902
+ * @param params Auto-configuration parameters
8903
+ * @param channel Logical channel (default 0). Used for the EmailTask SET.
8904
+ */
8905
+ setupEmailPushToManager(params: {
8906
+ /** Manager hostname or IP reachable from the camera's network. */
8907
+ managerHost: string;
8908
+ /** Manager SMTP port. Default 2525. */
8909
+ managerPort?: number;
8910
+ /** Per-camera recipient local-part — typically `cam-<cameraId>`. */
8911
+ recipientLocalPart: string;
8912
+ /** Virtual mail domain (must match the server-side setting). */
8913
+ domain?: string;
8914
+ /** Attachment kind on motion. Default "picture". */
8915
+ attachmentType?: "picture" | "video" | "none";
8916
+ /** Optional sender nickname shown in the From header. */
8917
+ sendNickname?: string;
8918
+ /** Interval throttle in seconds (ignored on battery cams). Default 30. */
8919
+ interval?: number;
8920
+ /** Optional SMTP auth — required when the server's `requireAuth` is on. */
8921
+ authUsername?: string;
8922
+ authPassword?: string;
8923
+ /**
8924
+ * Trigger types to enable in the email schedule. Must match the types
8925
+ * already present in the current EmailTask (we patch their schedule to
8926
+ * full-week 24/7, leaving any other slot untouched).
8927
+ */
8928
+ triggerTypes?: string[];
8929
+ /** Send a test email after the SET. Default false. */
8930
+ runTest?: boolean;
8931
+ }, channel?: number, options?: {
8932
+ timeoutMs?: number;
8933
+ }): Promise<{
8934
+ setEmail: {
8935
+ applied: true;
8936
+ };
8937
+ setEmailTask: {
8938
+ applied: true;
8939
+ touchedTypes: string[];
8940
+ };
8941
+ testEmail?: {
8942
+ success: boolean;
8943
+ };
8944
+ }>;
8644
8945
  /**
8645
8946
  * Get siren-on-motion state via AudioTask (cmdId=232).
8646
8947
  *
@@ -10686,21 +10987,55 @@ export declare interface SupportItem {
10686
10987
  }
10687
10988
 
10688
10989
  /**
10689
- * System general configuration.
10690
- * cmdId=77 (GetSystemGeneral)
10990
+ * Full SystemGeneral block returned by cmdId=104. SET (cmdId=105) accepts a
10991
+ * subset (any combination of these fields) plus the mandatory `<year>0</year>`
10992
+ * marker that signals "do not set the manual clock". When you DO want to set
10993
+ * the manual clock, pass year/month/day/hour/minute/second together.
10691
10994
  */
10692
10995
  export declare interface SystemGeneralConfig {
10693
- body?: {
10694
- SystemGeneral?: {
10695
- timeZone?: number | undefined;
10696
- deviceName?: string | undefined;
10697
- language?: string | undefined;
10698
- dstMode?: number | undefined;
10699
- [key: string]: unknown;
10700
- };
10701
- Norm?: {
10702
- [key: string]: unknown;
10703
- };
10996
+ /** Timezone offset in seconds. POSIX convention: UTC+1 → -3600. */
10997
+ timeZone: number;
10998
+ osdFormat: OsdDateFormat;
10999
+ year: number;
11000
+ month: number;
11001
+ day: number;
11002
+ hour: number;
11003
+ minute: number;
11004
+ second: number;
11005
+ deviceId: number;
11006
+ timeFormat: TimeFormat;
11007
+ language: string;
11008
+ deviceName: string;
11009
+ loginLock: 0 | 1;
11010
+ lockTime: number;
11011
+ allowedTimes: number;
11012
+ /** 1 when DST is currently active (camera-side). Read-only on most firmwares. */
11013
+ isDst: 0 | 1;
11014
+ }
11015
+
11016
+ /**
11017
+ * Patch accepted by SetSystemGeneral. When `manualTime` is provided, the
11018
+ * year/month/day/hour/minute/second fields are sent as-is. When omitted, the
11019
+ * builder injects `<year>0</year>` to skip the manual clock even when other
11020
+ * fields are present. Setting only `deviceName` triggers the
11021
+ * `<deviceNameOnly>1</deviceNameOnly>` flag automatically.
11022
+ */
11023
+ export declare interface SystemGeneralPatch {
11024
+ timeZone?: number;
11025
+ osdFormat?: OsdDateFormat;
11026
+ timeFormat?: TimeFormat;
11027
+ language?: string;
11028
+ deviceName?: string;
11029
+ loginLock?: 0 | 1;
11030
+ lockTime?: number;
11031
+ allowedTimes?: number;
11032
+ manualTime?: {
11033
+ year: number;
11034
+ month: number;
11035
+ day: number;
11036
+ hour: number;
11037
+ minute: number;
11038
+ second: number;
10704
11039
  };
10705
11040
  }
10706
11041
 
@@ -10764,6 +11099,9 @@ export declare function testChannelStreams(params: {
10764
11099
  logger?: Logger;
10765
11100
  }): Promise<Record<string, unknown>>;
10766
11101
 
11102
+ /** 24h (0) or 12h (1) clock format. */
11103
+ export declare type TimeFormat = 0 | 1;
11104
+
10767
11105
  /**
10768
11106
  * Timelapse configuration.
10769
11107
  */
@@ -11051,13 +11389,13 @@ export declare function xmlEscape(text: string | undefined | null): string;
11051
11389
  */
11052
11390
  export declare function xmlIndicatesFloodlight(xml: string): boolean;
11053
11391
 
11054
- declare type XmlJsonObject = {
11392
+ export declare type XmlJsonObject = {
11055
11393
  [key: string]: XmlJsonValue;
11056
11394
  };
11057
11395
 
11058
- declare type XmlJsonPrimitive = string | number | boolean | null;
11396
+ export declare type XmlJsonPrimitive = string | number | boolean | null;
11059
11397
 
11060
- declare type XmlJsonValue = XmlJsonPrimitive | XmlJsonObject | XmlJsonValue[];
11398
+ export declare type XmlJsonValue = XmlJsonPrimitive | XmlJsonObject | XmlJsonValue[];
11061
11399
 
11062
11400
  export declare function zipDirectory(params: {
11063
11401
  sourceDir: string;
package/dist/index.js CHANGED
@@ -45,7 +45,7 @@ import {
45
45
  parseSupportXml,
46
46
  setGlobalLogger,
47
47
  xmlIndicatesFloodlight
48
- } from "./chunk-ND73IJIB.js";
48
+ } from "./chunk-R5AJV73A.js";
49
49
  import {
50
50
  ReolinkCgiApi,
51
51
  ReolinkHttpClient,
@@ -92,7 +92,7 @@ import {
92
92
  upsertXmlTag,
93
93
  xmlEscape,
94
94
  zipDirectory
95
- } from "./chunk-IJG45AOT.js";
95
+ } from "./chunk-2JNXKT3C.js";
96
96
  import {
97
97
  AesStreamDecryptor,
98
98
  BC_AES_IV,
@@ -138,6 +138,7 @@ import {
138
138
  BC_CMD_ID_GET_AUDIO_CFG,
139
139
  BC_CMD_ID_GET_AUDIO_TASK,
140
140
  BC_CMD_ID_GET_AUTO_FOCUS,
141
+ BC_CMD_ID_GET_AUTO_REBOOT,
141
142
  BC_CMD_ID_GET_BATTERY_INFO,
142
143
  BC_CMD_ID_GET_BATTERY_INFO_LIST,
143
144
  BC_CMD_ID_GET_DAY_NIGHT_THRESHOLD,
@@ -145,6 +146,8 @@ import {
145
146
  BC_CMD_ID_GET_DING_DONG_CFG,
146
147
  BC_CMD_ID_GET_DING_DONG_LIST,
147
148
  BC_CMD_ID_GET_DING_DONG_SILENT,
149
+ BC_CMD_ID_GET_DST,
150
+ BC_CMD_ID_GET_EMAIL,
148
151
  BC_CMD_ID_GET_EMAIL_TASK,
149
152
  BC_CMD_ID_GET_ENC,
150
153
  BC_CMD_ID_GET_FTP_TASK,
@@ -152,6 +155,7 @@ import {
152
155
  BC_CMD_ID_GET_KIT_AP_CFG,
153
156
  BC_CMD_ID_GET_LED_STATE,
154
157
  BC_CMD_ID_GET_MOTION_ALARM,
158
+ BC_CMD_ID_GET_NTP,
155
159
  BC_CMD_ID_GET_ONLINE_USER_LIST,
156
160
  BC_CMD_ID_GET_OSD_DATETIME,
157
161
  BC_CMD_ID_GET_PIR_INFO,
@@ -192,19 +196,24 @@ import {
192
196
  BC_CMD_ID_SET_AUDIO_CFG,
193
197
  BC_CMD_ID_SET_AUDIO_TASK,
194
198
  BC_CMD_ID_SET_AUTO_FOCUS,
199
+ BC_CMD_ID_SET_AUTO_REBOOT,
195
200
  BC_CMD_ID_SET_DAY_NIGHT_THRESHOLD,
196
201
  BC_CMD_ID_SET_DING_DONG_CFG,
197
202
  BC_CMD_ID_SET_DING_DONG_SILENT,
203
+ BC_CMD_ID_SET_DST,
204
+ BC_CMD_ID_SET_EMAIL,
198
205
  BC_CMD_ID_SET_EMAIL_TASK,
199
206
  BC_CMD_ID_SET_ENC,
200
207
  BC_CMD_ID_SET_LED_STATE,
201
208
  BC_CMD_ID_SET_MOTION_ALARM,
209
+ BC_CMD_ID_SET_NTP,
202
210
  BC_CMD_ID_SET_OSD_DATETIME,
203
211
  BC_CMD_ID_SET_PIR_INFO,
204
212
  BC_CMD_ID_SET_PRIVACY_MASK,
205
213
  BC_CMD_ID_SET_PUSH_TASK,
206
214
  BC_CMD_ID_SET_RECORD,
207
215
  BC_CMD_ID_SET_RECORD_CFG,
216
+ BC_CMD_ID_SET_SYSTEM_GENERAL,
208
217
  BC_CMD_ID_SET_VIDEO_INPUT,
209
218
  BC_CMD_ID_SET_WHITE_LED_STATE,
210
219
  BC_CMD_ID_SET_WHITE_LED_TASK,
@@ -214,6 +223,7 @@ import {
214
223
  BC_CMD_ID_TALK_ABILITY,
215
224
  BC_CMD_ID_TALK_CONFIG,
216
225
  BC_CMD_ID_TALK_RESET,
226
+ BC_CMD_ID_TEST_EMAIL,
217
227
  BC_CMD_ID_UDP_KEEP_ALIVE,
218
228
  BC_CMD_ID_VIDEO,
219
229
  BC_CMD_ID_VIDEO_STOP,
@@ -252,7 +262,7 @@ import {
252
262
  parseBcMedia,
253
263
  splitAnnexBToNalPayloads,
254
264
  splitAnnexBToNalPayloads2
255
- } from "./chunk-W2ANCJVM.js";
265
+ } from "./chunk-C57QV7IL.js";
256
266
 
257
267
  // src/reolink/baichuan/HlsSessionManager.ts
258
268
  var withTimeout = async (p, ms, label) => {
@@ -8296,6 +8306,7 @@ export {
8296
8306
  BC_CMD_ID_GET_AUDIO_CFG,
8297
8307
  BC_CMD_ID_GET_AUDIO_TASK,
8298
8308
  BC_CMD_ID_GET_AUTO_FOCUS,
8309
+ BC_CMD_ID_GET_AUTO_REBOOT,
8299
8310
  BC_CMD_ID_GET_BATTERY_INFO,
8300
8311
  BC_CMD_ID_GET_BATTERY_INFO_LIST,
8301
8312
  BC_CMD_ID_GET_DAY_NIGHT_THRESHOLD,
@@ -8303,6 +8314,8 @@ export {
8303
8314
  BC_CMD_ID_GET_DING_DONG_CFG,
8304
8315
  BC_CMD_ID_GET_DING_DONG_LIST,
8305
8316
  BC_CMD_ID_GET_DING_DONG_SILENT,
8317
+ BC_CMD_ID_GET_DST,
8318
+ BC_CMD_ID_GET_EMAIL,
8306
8319
  BC_CMD_ID_GET_EMAIL_TASK,
8307
8320
  BC_CMD_ID_GET_ENC,
8308
8321
  BC_CMD_ID_GET_FTP_TASK,
@@ -8310,6 +8323,7 @@ export {
8310
8323
  BC_CMD_ID_GET_KIT_AP_CFG,
8311
8324
  BC_CMD_ID_GET_LED_STATE,
8312
8325
  BC_CMD_ID_GET_MOTION_ALARM,
8326
+ BC_CMD_ID_GET_NTP,
8313
8327
  BC_CMD_ID_GET_ONLINE_USER_LIST,
8314
8328
  BC_CMD_ID_GET_OSD_DATETIME,
8315
8329
  BC_CMD_ID_GET_PIR_INFO,
@@ -8350,19 +8364,24 @@ export {
8350
8364
  BC_CMD_ID_SET_AUDIO_CFG,
8351
8365
  BC_CMD_ID_SET_AUDIO_TASK,
8352
8366
  BC_CMD_ID_SET_AUTO_FOCUS,
8367
+ BC_CMD_ID_SET_AUTO_REBOOT,
8353
8368
  BC_CMD_ID_SET_DAY_NIGHT_THRESHOLD,
8354
8369
  BC_CMD_ID_SET_DING_DONG_CFG,
8355
8370
  BC_CMD_ID_SET_DING_DONG_SILENT,
8371
+ BC_CMD_ID_SET_DST,
8372
+ BC_CMD_ID_SET_EMAIL,
8356
8373
  BC_CMD_ID_SET_EMAIL_TASK,
8357
8374
  BC_CMD_ID_SET_ENC,
8358
8375
  BC_CMD_ID_SET_LED_STATE,
8359
8376
  BC_CMD_ID_SET_MOTION_ALARM,
8377
+ BC_CMD_ID_SET_NTP,
8360
8378
  BC_CMD_ID_SET_OSD_DATETIME,
8361
8379
  BC_CMD_ID_SET_PIR_INFO,
8362
8380
  BC_CMD_ID_SET_PRIVACY_MASK,
8363
8381
  BC_CMD_ID_SET_PUSH_TASK,
8364
8382
  BC_CMD_ID_SET_RECORD,
8365
8383
  BC_CMD_ID_SET_RECORD_CFG,
8384
+ BC_CMD_ID_SET_SYSTEM_GENERAL,
8366
8385
  BC_CMD_ID_SET_VIDEO_INPUT,
8367
8386
  BC_CMD_ID_SET_WHITE_LED_STATE,
8368
8387
  BC_CMD_ID_SET_WHITE_LED_TASK,
@@ -8372,6 +8391,7 @@ export {
8372
8391
  BC_CMD_ID_TALK_ABILITY,
8373
8392
  BC_CMD_ID_TALK_CONFIG,
8374
8393
  BC_CMD_ID_TALK_RESET,
8394
+ BC_CMD_ID_TEST_EMAIL,
8375
8395
  BC_CMD_ID_UDP_KEEP_ALIVE,
8376
8396
  BC_CMD_ID_VIDEO,
8377
8397
  BC_CMD_ID_VIDEO_STOP,