@camera.ui/sdk / sensor / SecuritySystem
Class: SecuritySystem<TStorage>
Defined in: sensor/securitySystem.ts:58
Security system control. Override setTargetState() to drive hardware and call await super.setTargetState(value) once the hardware confirms. The base implementation updates both targetState and currentState.
Extends
Sensor<SecuritySystemProperties,TStorage,string>
Type Parameters
TStorage
TStorage extends object = Record<string, any>
Constructors
Constructor
new SecuritySystem<
TStorage>(name?,options?):SecuritySystem<TStorage>
Defined in: sensor/securitySystem.ts:62
Parameters
name?
string = 'Security System'
options?
Returns
SecuritySystem<TStorage>
Overrides
Properties
category
readonlycategory:Control=SensorCategory.Control
Defined in: sensor/securitySystem.ts:60
Overrides
name
readonlyname:string
Defined in: sensor/base.ts:223
Inherited from
onAssignmentChanged
readonlyonAssignmentChanged:Observable<readonlystring[]>
Defined in: sensor/base.ts:250
Inherited from
onCapabilitiesChanged
readonlyonCapabilitiesChanged:Observable<string[]>
Defined in: sensor/base.ts:242
Inherited from
onConnectedChanged
readonlyonConnectedChanged:Observable<boolean>
Defined in: sensor/base.ts:252
Inherited from
onPropertyChanged
readonlyonPropertyChanged:Observable<PropertyChangeOf<SecuritySystemProperties>>
Defined in: sensor/base.ts:240
Inherited from
type
readonlytype:SecuritySystem=SensorType.SecuritySystem
Defined in: sensor/securitySystem.ts:59
Overrides
Accessors
assignedCameraIds
Get Signature
get assignedCameraIds(): readonly
string[]
Defined in: sensor/base.ts:293
Returns
readonly string[]
Inherited from
assignmentLocked
Get Signature
get assignmentLocked():
boolean
Defined in: sensor/base.ts:297
Returns
boolean
Inherited from
capabilities
Get Signature
get capabilities():
TCapability[]
Defined in: sensor/base.ts:316
Returns
TCapability[]
Set Signature
set capabilities(
value):void
Defined in: sensor/base.ts:321
Set capabilities, deduplicated, and notify backend plus local listeners.
Parameters
value
TCapability[]
Returns
void
Inherited from
connected
Get Signature
get connected():
boolean
Defined in: sensor/base.ts:289
Returns
boolean
Inherited from
currentState
Get Signature
get currentState():
SecuritySystemState
Defined in: sensor/securitySystem.ts:71
Returns
displayName
Get Signature
get displayName():
string
Defined in: sensor/base.ts:281
Returns
string
Inherited from
id
Get Signature
get id():
string
Defined in: sensor/base.ts:269
Returns
string
Inherited from
isAssigned
Get Signature
get isAssigned():
boolean
Defined in: sensor/base.ts:285
Returns
boolean
Inherited from
nativeId
Get Signature
get nativeId():
string|undefined
Defined in: sensor/base.ts:273
Returns
string | undefined
Inherited from
origin
Get Signature
get origin():
string|undefined
Defined in: sensor/base.ts:277
Returns
string | undefined
Inherited from
pluginId
Get Signature
get pluginId():
string|undefined
Defined in: sensor/base.ts:301
Returns
string | undefined
Inherited from
props
Get Signature
get
protectedprops():Readonly<TProperties>
Defined in: sensor/base.ts:546
Returns
Readonly<TProperties>
Inherited from
storage
Get Signature
get storage():
DeviceStorage<TStorage>
Defined in: sensor/base.ts:305
Returns
DeviceStorage<TStorage>
Inherited from
storageSchema
Get Signature
get storageSchema():
JsonSchema[]
Defined in: sensor/base.ts:312
Returns
Inherited from
targetState
Get Signature
get targetState():
SecuritySystemState
Defined in: sensor/securitySystem.ts:75
Returns
Methods
getValue()
Call Signature
getValue<
K>(property):SecuritySystemProperties[K] |undefined
Defined in: sensor/base.ts:345
Get the current value of a sensor property. Calling the generic overload with a property enum value gives a properly typed result.
Type Parameters
K
K extends keyof SecuritySystemProperties
Parameters
property
K
Returns
SecuritySystemProperties[K] | undefined
Inherited from
Call Signature
getValue(
property):unknown
Defined in: sensor/base.ts:346
Get the current value of a sensor property. Calling the generic overload with a property enum value gives a properly typed result.
Parameters
property
string
Returns
unknown
Inherited from
getValues()
getValues():
Readonly<TProperties>
Defined in: sensor/base.ts:362
Get a read-only snapshot of all property values.
Returns
Readonly<TProperties>
Shallow copy of every property currently held by the sensor.
Example
const snapshot = sensor.getValues();
console.log(snapshot);Inherited from
hasCapability()
hasCapability(
capability):boolean
Defined in: sensor/base.ts:388
Check whether the sensor advertises a capability.
Parameters
capability
string
Capability flag to look for.
Returns
boolean
True if the sensor currently advertises it.
Example
const dimmable = sensor.hasCapability('brightness');Inherited from
onStart()
protectedonStart():void|Promise<void>
Defined in: sensor/base.ts:651
Lifecycle hook, called once the sensor is registered and live (storage and RPC are wired up). Override it to start work whose lifetime matches the sensor's: polling loops, event subscriptions, timers.
Errors thrown here are swallowed, not logged. Handle failures inside the override. Paired 1:1 with onStop, which runs on removal, plugin shutdown or cleanup.
Returns
void | Promise<void>
Example
protected override onStart(): void {
this._timer = setInterval(() => this.poll(), 5_000);
}Inherited from
onStop()
protectedonStop():void|Promise<void>
Defined in: sensor/base.ts:664
Counterpart of onStart: tear down whatever it started, such as timers, subscriptions and external resources.
Returns
void | Promise<void>
Example
protected override onStop(): void {
if (this._timer) clearInterval(this._timer);
}Inherited from
setCurrentState()
setCurrentState(
value):void
Defined in: sensor/securitySystem.ts:113
Publish the actual security system state. Use this for transitions that diverge from the user-requested target: AlarmTriggered when an intruder is detected, or arming-delay intermediate states. Read-only from cross-process consumers (updateValue ignores it).
Parameters
value
Current security system state from SecuritySystemState.
Returns
void
Example
import { SecuritySystemState } from '@camera.ui/sdk';
alarm.setCurrentState(SecuritySystemState.AlarmTriggered);setDisplayName()
setDisplayName(
value):void
Defined in: sensor/base.ts:337
Set the display name (the only mutable identifier on a sensor).
Parameters
value
string
Human-readable label shown in the UI.
Returns
void
Example
sensor.setDisplayName('Front Door Motion');Inherited from
setTargetState()
setTargetState(
value):Promise<void>
Defined in: sensor/securitySystem.ts:92
Set the target state. Override to drive hardware and call await super.setTargetState(value) after success. The base implementation syncs both targetState and currentState to the new value.
Parameters
value
Desired armed/disarmed state from SecuritySystemState.
Returns
Promise<void>
Example
import { SecuritySystemState } from '@camera.ui/sdk';
await alarm.setTargetState(SecuritySystemState.AwayArm);updateModelSpec()
updateModelSpec():
void
Defined in: sensor/base.ts:565
Re-announces the model spec, e.g. once the models finished loading.
The spec a detector reports at registration is what it knows at that moment: models that load in the background are missing from it. Call this after loading, the server replaces its copy.
Returns
void
Example
async onStart(): Promise<void> {
await this.loadModel();
this.updateModelSpec();
}