Skip to content

Custom stream-server

A new experience consists of a spawner in the control plane and a stream-server runtime that implements the media/signaling contract.

  1. Read its injected session ID, room and host token.
  2. Connect to the configured signaling WebSocket as host.
  3. Produce a WebRTC offer and exchange ICE candidates.
  4. Publish video/audio tracks appropriate for the source.
  5. Receive the input DataChannel and forward versioned packets to the application-specific input agent.
  6. Exit cleanly when the session is stopped.
  • Publish a unique string type and a human-readable capability manifest.
  • Validate and normalize source configuration.
  • Create an isolated runtime with session-specific credentials.
  • Return safe public source metadata; never return host secrets.
  • Implement pause, resume, restart and removal when supported.

The SDK accepts (string & {}) for third-party source types. A plugin can therefore ship independently without waiting for a core SDK release.