Skip to content

eufy-mega / model/capabilities / DeviceActionMap

Interface: DeviceActionMap

The typed action surface, keyed by the camelCased capability id (the fluent accessor name).

THE projection point for actions: adding a capability with an actions() factory = add its typed-actions import above + one line here. device.ts and the client stay capability-agnostic — the fluent dev.ptz() accessors are derived from this map (CapabilityAccessors), so nothing outside a capability file names a capability.

A key here MUST match camelCase(module.capability) for the runtime accessor install to line up with the type. (Only capabilities whose module defines actions() appear.)

Properties

arming

ts
arming: ArmingActions;

Guard mode: setMode(ArmingMode) + setAlarmDelayConfig(mode, config). Of the 8 ArmingMode values only away/home/disarmed are confirmed on-device.


audio

ts
audio: AudioActions;

Audio/volume (family-gated): mic, speaker + volume, in-video recording, doorbell ringtone, HomeBase alarm/prompt.


battery

ts
battery: BatteryActions;

Battery/power: power source, working mode, and the custom-mode clip/interval/auto-stop settings.


camera

ts
camera: CameraActions;

Camera: on/off, privacy, status LED; snapshot/live/record when bound to a live client.


co

ts
co: CoActions;

CO-detector reads (read-only): coDetected, lastSeen.


contact

ts
contact: ContactActions;

Entry (door/window) sensor reads (read-only): open, lastSeen, rssi.


doorbell

ts
doorbell: DoorbellActions;

Doorbell: playQuickResponse(voiceId) (the canned voice replies).


fanSpeed

ts
fanSpeed: FanSpeedActions;

RoboVac fan-speed reads (read-only): fanSpeed, boostIq.


info

ts
info: DeviceInfo;

Identity metadata (read-only): { manufacturer, model, serialNumber, name, deviceType?, firmwareVersion?, hardwareVersion? } for a host's device registry / device-info surface.


keypad

ts
keypad: KeypadActions;

Security-keypad reads (read-only): rssi.


leak

ts
leak: LeakActions;

Water-leak / freeze sensor reads (read-only): leakDetected, lastSeen.


light

ts
light: LightActions;

Floodlight/spotlight: on/off/set, setBrightness/setColorTemp/setEnabled, setAutoSpotlight.


lock

ts
lock: LockActions;

Smart lock: lock()/unlock() + verified setRainMode/setAutoLock. The 6 source-confirmed-but-uncaptured setting toggles are ABSENT until captured (present method ⇒ wire verified).


motion

ts
motion: MotionActions;

Motion/PIR: setDetection(on) (sensitivity is read-only until its write wire is captured).


personDetection

ts
personDetection: PersonDetectionActions;

Person-detection reads (read-only): detectionEnabled, detected.


ptz

ts
ptz: PtzActions;

Pan/tilt/zoom control: rotate(dir, step) + left/right/up/down, zoom, preset() namespace (goto/preview/save/setDefault/delete/list/image).


siren

ts
siren: SirenActions;

Siren: read-only on mega (active). The switch wire is unverified, so on()/off() are absent until confirmed on-device (present method ⇒ wire verified).


smartLight

ts
smartLight: SmartLightActions;

eufy_life smart light (T8L0x): on/off, setBrightness, setEffect(lightId).


smoke

ts
smoke: SmokeActions;

Smoke-detector reads (read-only): smokeDetected, lastSeen.


storage

ts
storage: StorageActions;

Local-storage reads (read-only): sdCard, free, total.


vacuumClean

ts
vacuumClean: VacuumCleanActions;

RoboVac core reads (read-only): power, activity (WorkStatus), volume, battery.

Independent and unofficial. Not affiliated with, endorsed by, or sponsored by Anker Innovations or eufy. "eufy" and "Anker" are trademarks of their respective owners. Use responsibly — rapid or failed logins can trigger captcha or temporary cooldowns.