Skip to content

@camera.ui/sdk / plugin / PluginAPI

Interface: PluginAPI ​

Defined in: plugin/api.ts:30

The PluginAPI is injected into the plugin at runtime and exposes the system services the plugin is allowed to talk to. It also acts as an EventEmitter for plugin lifecycle events (see API_EVENT).

Example ​

ts
import { BasePlugin } from '@camera.ui/sdk';

export default class MyPlugin extends BasePlugin {
  async configureCameras() {
    const ffmpeg = await this.api.coreManager.getFFmpegPath();
  }
}

Properties ​

coreManager ​

readonly coreManager: CoreManager

Defined in: plugin/api.ts:32

System-level operations: the FFmpeg path and the server addresses used for media URLs (HTTP/RTSP).


deviceManager ​

readonly deviceManager: DeviceManager

Defined in: plugin/api.ts:34

Owns the camera devices assigned to this plugin and publishes camera-state changes.


downloadManager ​

readonly downloadManager: DownloadManager

Defined in: plugin/api.ts:38

Mints token-protected download URLs for files the plugin exposes to the UI (clip exports, snapshots).


notificationManager ​

readonly notificationManager: NotificationManager

Defined in: plugin/api.ts:40

Publishes notifications to every installed notifier and the in-app UI. Requires PluginCapability.PublishNotifications.


sensorManager ​

readonly sensorManager: SensorManager

Defined in: plugin/api.ts:36

Read access to the sensor registry (history). Standalone sensors are adopted by the user, not registered here.


storagePath ​

readonly storagePath: string

Defined in: plugin/api.ts:42

Absolute path to the plugin's writable storage directory, created and cleaned up by the host.

Methods ​

off() ​

off(event, listener): this

Defined in: plugin/api.ts:49

Remove a previously registered listener (alias of removeListener).

Parameters ​

event ​

API_EVENT

listener ​

() => void

Returns ​

this


on() ​

on(event, listener): this

Defined in: plugin/api.ts:45

Subscribe to a lifecycle event. Returns this for chaining.

Parameters ​

event ​

API_EVENT

listener ​

() => void

Returns ​

this


once() ​

once(event, listener): this

Defined in: plugin/api.ts:47

Subscribe to a lifecycle event for one delivery only.

Parameters ​

event ​

API_EVENT

listener ​

() => void

Returns ​

this


removeAllListeners() ​

removeAllListeners(event?): this

Defined in: plugin/api.ts:53

Remove every listener for event, or every listener when no event is given.

Parameters ​

event? ​

API_EVENT

Returns ​

this


removeListener() ​

removeListener(event, listener): this

Defined in: plugin/api.ts:51

Remove a previously registered listener.

Parameters ​

event ​

API_EVENT

listener ​

() => void

Returns ​

this