Skip to content

@camera.ui/sdk / plugin / PluginRole

Enumeration: PluginRole

Defined in: plugin/contract.ts:14

Role a plugin plays in the system. The role decides which lifecycle hooks the host invokes and which contract validations apply (see helper.ts).

Enumeration Members

CameraAndSensorProvider

CameraAndSensorProvider: "cameraAndSensorProvider"

Defined in: plugin/contract.ts:42

Combined role: plugin both manages cameras and exposes sensors (its own cameras and, when consumes is set, also foreign cameras). Used by integrations that ship a complete camera + detection stack.


CameraController

CameraController: "cameraController"

Defined in: plugin/contract.ts:36

Manages cameras and their media streams (ONVIF, RTSP, generic IP, ...). The plugin is responsible for stream URLs, PTZ, snapshots, and the lifecycle hooks in BasePlugin. It does not produce sensors for foreign cameras.


Hub

Hub: "hub"

Defined in: plugin/contract.ts:23

System-wide aggregator that attaches to cameras owned by other plugins to provide a cross-camera service (e.g. bridging cameras and sensors into a smart-home platform, or recording and notifications). A hub creates no cameras of its own and provides no sensors (provides must be empty); it attaches to cameras via the hub assignment and typically reads camera and sensor state through consumes.


SensorProvider

SensorProvider: "sensorProvider"

Defined in: plugin/contract.ts:29

Adds sensors to existing cameras without owning the camera itself. Typical use: a detection plugin that consumes another plugin's video frames and emits motion / object / face detections back into the system.