Table of Contents

Class AgentHttp.Types.StreamPreamble

Namespace
Livekit.Server.Sdk.Dotnet
Assembly
LivekitApi.dll

the first thing on every exchange stream, node -> worker. It carries only what the worker cannot derive from the HTTP bytes that follow and what it must not infer from client-supplied headers - identity above all.

public sealed class AgentHttp.Types.StreamPreamble : IMessage<AgentHttp.Types.StreamPreamble>, IEquatable<AgentHttp.Types.StreamPreamble>, IDeepCloneable<AgentHttp.Types.StreamPreamble>, IBufferMessage, IMessage
Inheritance
AgentHttp.Types.StreamPreamble
Implements
IBufferMessage
Inherited Members

Constructors

StreamPreamble()

public StreamPreamble()

StreamPreamble(StreamPreamble)

public StreamPreamble(AgentHttp.Types.StreamPreamble other)

Parameters

other AgentHttp.Types.StreamPreamble

Properties

Authorized

the caller holds agent-endpoint call permission for this agent and deployment. Always true on a non-public route.

public bool Authorized { get; set; }

Property Value

bool

ClientAddr

end client address, host only

public string ClientAddr { get; set; }

Property Value

string

Kind

what the bytes after this preamble are. A field rather than a framing tag, so a new stream semantic costs no new mechanism.

public AgentHttp.Types.AgentEndpointKind Kind { get; set; }

Property Value

AgentHttp.Types.AgentEndpointKind

RequestId

public string RequestId { get; set; }

Property Value

string

Route

the manifest template that matched, e.g. "/items/{id}"

public string Route { get; set; }

Property Value

string

Scheme

"http" or "https" as the end client saw it; not derivable worker-side

public string Scheme { get; set; }

Property Value

string

TimeoutMs

relative, because node and worker clocks are not synchronized. 0 imposes no deadline.

public uint TimeoutMs { get; set; }

Property Value

uint