Terminology and Status
When an unfamiliar ID or state appears, first decide whether it is an identity, a process state, or deletion semantics. Do not infer meaning from the name alone.
flowchart LR
A[Device DeviceId] --> B[Channel ChannelId]
B --> C[Media node mediaServerId]
C --> D[Stream vhost/app/stream]
D --> E[Recording sessionId / fileId]
Identity
| Name | Meaning |
|---|---|
| ClusterId | Business cluster isolation key; do not modify once deployed in production |
| NodeId | Stable identity of the AKStream.Next node |
| ZlmNodeId | MediaServer connection key used in configuration |
| mediaServerId | The actual identity returned by the MediaServer itself |
| DeviceId | Stable ID of the protocol device |
| ChannelId | Unified video channel ID, which may differ from the original protocol ID |
ZlmNodeId and mediaServerId are not the same field and are not interchangeable.
Device, Channel, and Stream
- Device: A collection of protocol endpoints and capabilities.
- Channel: A stable business resource for user viewing, control, and recording.
- Stream: A dynamic media session that actually exists on the MediaServer at a given moment.
- Recording Session: An ongoing recording action managed by the control plane.
- Recording File: The actual file stored on the media node disk.
- Recording Index: A database record used for retrieval and authorized access.
Enabled and Online
Enabled=true represents management intent; "online" represents the operational result. A channel can be enabled but have no stream because the device is offline, or it can be temporarily disabled while still retaining historical recordings.
Node Health
Common statuses include Online, Offline, Unknown, Maintenance, and Degraded. Scheduling must not rely on a single string; it must combine heartbeats, MediaServer status, capabilities, disk status, and maintenance mode.
Command Status
Common process statuses are Pending, WaitingDependency, Dispatched, and Running; terminal states are Succeeded, Failed, TimedOut, and Cancelled. Queued and Running do not indicate final success.
Machine states use a stable failureCode; localized reason/message is for display only and should not drive automatic retries or alarm recovery.
Protocol Direction
- GB28181 Server: Downstream devices or platforms connect to this system.
- GB28181 Client: This system registers to an upstream platform.
- RTC publishers typically use WHIP, and subscribers typically use WHEP.
Deletion and Stopping
- Stop Stream: Ends the current session without deleting the channel.
- Disable Channel: Prevents new business usage but retains data.
- Soft Delete: Hides the resource but retains recovery options and historical relationships.
- Physical Delete: Irreversibly deletes files or data; requires specific permissions and confirmation.
- Delete Protocol Inventory: Should not be forced while unified channels are still bound or active sessions exist.
Configuration Status
HotReload: Takes effect during runtime.ZlmReload: Controlled reload of the MediaServer.ZlmRestart: Requires draining and restarting the MediaServer.AkStreamRestart: Requires restarting the NodeAgent/host orchestration main service.
A set of changes is executed based on the final release action of the highest impact level.