UNPKG

eufy-security-ws

Version:

Node WebSocket server implementation to integrate Eufy Security devices

186 lines 7.09 kB
import { Device, DeviceType } from "eufy-security-client"; import { Modify } from "../state.js"; export interface DeviceStateSchema0 { name: string; model: string; serialNumber: string; hardwareVersion: string; softwareVersion: string; stationSerialNumber: string; state?: number; battery?: number; batteryTemperature?: number; batteryLow?: boolean; lastChargingDays?: number; lastChargingTotalEvents?: number; lastChargingRecordedEvents?: number; lastChargingFalseEvents?: number; batteryUsageLastWeek?: number; motionDetected?: boolean; personDetected?: boolean; personName?: string; soundDetected?: boolean; petDetected?: boolean; cryingDetected?: boolean; ringing?: boolean; locked?: boolean; sensorOpen?: boolean; sensorChangeTime?: number; enabled: boolean; antitheftDetection?: boolean; autoNightvision?: boolean; ledStatus?: boolean; motionDetection?: boolean; soundDetection?: boolean; petDetection?: boolean; rtspStream?: boolean; watermark?: number; lockStatus?: number; motionSensorPIREvent?: number; wifiRSSI?: number; pictureUrl?: string; } type DeviceStateSchema1 = Modify<DeviceStateSchema0, { type: DeviceType; }>; type DeviceStateSchema3 = Modify<DeviceStateSchema1, { motionDetectionType?: number; motionDetectionSensivity?: number; motionTracking?: boolean; soundDetectionType?: number; soundDetectionSensivity?: number; light?: boolean; microphone?: boolean; speaker?: boolean; speakerVolume?: number; ringtoneVolume?: number; audioRecording?: boolean; powerSource?: number; powerWorkingMode?: number; recordingEndClipMotionStops?: boolean; recordingClipLength?: number; recordingRetriggerInterval?: number; videoStreamingQuality?: number; videoRecordingQuality?: number; videoWDR?: boolean; lightSettingsEnable?: boolean; lightSettingsBrightnessManual?: number; lightSettingsBrightnessMotion?: number; lightSettingsBrightnessSchedule?: number; lightSettingsMotionTriggered?: boolean; lightSettingsMotionTriggeredDistance?: number; lightSettingsMotionTriggeredTimer?: number; chimeIndoor?: boolean; chimeHomebase?: boolean; chimeHomebaseRingtoneVolume?: number; chimeHomebaseRingtoneType?: number; notificationType?: number; rotationSpeed?: number; notificationPerson?: boolean; notificationPet?: boolean; notificationAllOtherMotion?: boolean; notificationCrying?: boolean; notificationAllSound?: boolean; notificationIntervalTime?: boolean; notificationRing?: boolean; notificationMotion?: boolean; }>; type DeviceStateSchema4 = Omit<Modify<DeviceStateSchema3, { chirpVolume?: number; chirpTone?: number; motionDetectionSensitivity?: number; soundDetectionSensitivity?: number; videoHdr?: boolean; videoDistortionCorrection?: boolean; videoRingRecord?: number; statusLed?: boolean; rtspStreamUrl?: string; chargingStatus?: number; wifiSignalLevel?: number; }>, "motionDetectionSensivity" | "soundDetectionSensivity" | "ledStatus">; type DeviceStateSchema5 = Modify<DeviceStateSchema4, { batteryIsCharging?: boolean; nightvision?: number; }>; type DeviceStateSchema6 = Modify<DeviceStateSchema5, { motionDetectionRange?: boolean; motionDetectionRangeStandardSensitivity?: number; motionDetectionRangeAdvancedLeftSensitivity?: number; motionDetectionRangeAdvancedMiddleSensitivity?: number; motionDetectionRangeAdvancedRightSensitivity?: number; motionDetectionTestMode?: boolean; motionTrackingSensitivity?: number; motionAutoCruise?: boolean; motionOutOfViewDetection?: boolean; lightSettingsColorTemperatureManual?: number; lightSettingsColorTemperatureMotion?: number; lightSettingsColorTemperatureSchedule?: number; lightSettingsMotionActivationMode?: number; videoNightvisionImageAdjustment?: boolean; videoColorNightvision?: boolean; autoCalibration?: boolean; }>; type DeviceStateSchema7 = Modify<DeviceStateSchema6, { lockSettingsAutoLock?: boolean; lockSettingsAutoLockTimer?: number; lockSettingsAutoLockSchedule?: boolean; lockSettingsAutoLockScheduleStartTime?: string; lockSettingsAutoLockScheduleEndTime?: string; lockSettingsOneTouchLocking?: boolean; lockSettingsWrongTryProtection?: boolean; lockSettingsWrongTryAttempts?: number; lockSettingsWrongTryLockdownTime?: number; lockSettingsScramblePasscode?: boolean; lockSettingsSound?: number; lockSettingsNotification?: boolean; lockSettingsNotificationUnlocked?: boolean; lockSettingsNotificationLocked?: boolean; }>; type DeviceStateSchema8 = Modify<DeviceStateSchema7, { notificationRadarDetector?: boolean; continuousRecording?: boolean; continuousRecordingType?: number; loiteringDetection?: boolean; loiteringDetectionRange?: number; loiteringDetectionLength?: number; motionDetectionSensitivityMode?: number; motionDetectionSensitivityStandard?: number; motionDetectionSensitivityAdvancedA?: number; motionDetectionSensitivityAdvancedB?: number; motionDetectionSensitivityAdvancedC?: number; motionDetectionSensitivityAdvancedD?: number; motionDetectionSensitivityAdvancedE?: number; motionDetectionSensitivityAdvancedF?: number; motionDetectionSensitivityAdvancedG?: number; motionDetectionSensitivityAdvancedH?: number; loiteringCustomResponsePhoneNotification?: boolean; loiteringCustomResponseAutoVoiceResponse?: boolean; loiteringCustomResponseAutoVoiceResponseVoice?: number; loiteringCustomResponseHomeBaseNotification?: boolean; loiteringCustomResponseTimeFrom?: string; loiteringCustomResponseTimeTo?: string; deliveryGuard?: boolean; deliveryGuardPackageGuarding?: boolean; deliveryGuardPackageGuardingVoiceResponseVoice?: number; deliveryGuardPackageGuardingActivatedTimeFrom?: string; deliveryGuardPackageGuardingActivatedTimeTo?: string; deliveryGuardUncollectedPackageAlert?: boolean; deliveryGuardUncollectedPackageAlertTimeToCheck?: string; deliveryGuardPackageLiveCheckAssistance?: boolean; dualCamWatchViewMode?: number; ringAutoResponse?: boolean; ringAutoResponseVoiceResponse?: boolean; ringAutoResponseVoiceResponseVoice?: number; ringAutoResponseTimeFrom?: string; ringAutoResponseTimeTo?: string; defaultAngle?: boolean; defaultAngleIdleTime?: number; soundDetectionRoundLook?: boolean; }>; type DeviceStateSchema9 = Modify<DeviceStateSchema8, { imageMirrored?: boolean; }>; export type DeviceState = DeviceStateSchema0 | DeviceStateSchema1 | DeviceStateSchema3 | DeviceStateSchema4 | DeviceStateSchema5 | DeviceStateSchema6 | DeviceStateSchema7 | DeviceStateSchema8 | DeviceStateSchema9; export declare const dumpDevice: (device: Device, schemaVersion: number) => DeviceState; export {}; //# sourceMappingURL=state.d.ts.map