CameraMetaData

@Serializable
data class CameraMetaData(val name: String = "", val resolution: String = "1280x720", val framerate: Int = 15, val rotation: Int = 0, val streamPort: Int = 8443, val enabled: Boolean = true, val error: String = "", val sources: List<NodeIdentity> = emptyList(), val snapshot: Snapshot = Snapshot(), val invocationTriggers: List<InvocationTrigger> = emptyList(), val nodeAction: NodeAction = NodeAction.EXECUTE, val inputs: List<NodeIdentity> = emptyList()) : SourceMetaData(source)

Payload for a Camera node — the editable capture configuration and an enabled toggle.

Constructors

Link copied to clipboard
constructor(name: String = "", resolution: String = "1280x720", framerate: Int = 15, rotation: Int = 0, streamPort: Int = 8443, enabled: Boolean = true, error: String = "", sources: List<NodeIdentity> = emptyList(), snapshot: Snapshot = Snapshot(), invocationTriggers: List<InvocationTrigger> = emptyList(), nodeAction: NodeAction = NodeAction.EXECUTE, inputs: List<NodeIdentity> = emptyList())

Properties

Link copied to clipboard

When false, the server stops capturing to save resources.

Link copied to clipboard
open override val error: String

Last known error message for this node, or empty string when healthy.

Link copied to clipboard

Target frames per second for the MJPEG stream.

Link copied to clipboard
open override val inputs: List<NodeIdentity>

sets the nodes this node reads from to complete its work when invoked

Link copied to clipboard

The set of InvocationTriggers configured to wake this node. The node processor checks the incoming event against this list before doing any work. An empty list means "never auto-fire" — only manual execution.

Link copied to clipboard

Display name; empty string falls back to "Camera" in the UI.

Link copied to clipboard
open override val nodeAction: NodeAction

The action this node performs when it fires. Defaults to NodeAction.EXECUTE on every concrete implementation so that deserialising a payload that predates this field yields the original behaviour unchanged.

Link copied to clipboard

Capture resolution, formatted as "<width>x<height>".

Link copied to clipboard

Image rotation in degrees applied before encoding (0 / 90 / 180 / 270).

Link copied to clipboard
open override val snapshot: Snapshot

Stores the last result of when this node was invoked and is a source of data

Link copied to clipboard
open override val sources: List<NodeIdentity>

Upstream nodes whose values feed this one. For a filter or executor this is the data being read; for a trigger it is the value being watched.

Link copied to clipboard

TCP port on the server that exposes the live stream.