fishjam-platform
Installation
SKILL.md
Fishjam Platform
Software Mansion's hosted WebRTC streaming toolkit. Fishjam takes care of media servers, peer networking, and codec negotiation so applications can build video conferencing, audio chat, and one-to-many livestreaming with sub-second latency.
This sub-skill defines the domain model, auth, room types, and notifications that every SDK builds on. Read it first; then drop into the SDK sub-skill you need.
A production Fishjam app always has a backend (server SDK) + a client (client SDK). The backend mints peer tokens; the client uses them to connect. For prototyping you can skip the backend with the Sandbox API — see sandbox-vs-production.md.
Key concepts at a glance
- Room — a collection of peers exchanging tracks. Three primary room types:
conference(default, bidirectional),audio_only(75% cheaper, video silently dropped),livestream(one streamer, many viewers, <300 ms).audio_only_livestreamcombines the audio-only and livestream discounts. - Peer — a participant in a room. Can be a
webrtcclient, anagent(server-side program), or avapivoice agent. - Track — one audio or video stream from a peer (camera, mic, screen share, etc.). One peer can publish multiple tracks.
- Streamer / Viewer — livestream-room-specific peer roles (one streamer, many viewers).
- Fishjam ID — your instance identifier; goes in both backend and client config.
- Management Token — long-lived admin secret; backend only.
- Peer Token — 24h, scoped to one peer in one room; safe for clients.
Full definitions: glossary.md.