Module fanout

Module fanout 

Source
Expand description

Fan-out engine for voice frames.

The reflector’s job on every inbound voice packet is to re-send the same bytes to every other client currently linked to the originator’s module. This file implements that “encode once, send N times” loop.

This function handles same-protocol fan-out only — it re-sends the raw inbound bytes verbatim to every peer on the same module. Cross-protocol forwarding (re-encoding bytes from one protocol into another via super::transcode::transcode_voice) is handled separately by the endpoint run loop’s broadcast-channel subscriber path in super::endpoint::ProtocolEndpoint::run.

Structs§

FanOutReport
Report from a completed fan_out_voice call.

Functions§

fan_out_voice
Fan out the raw wire bytes of a voice frame to every other client on the same module.
fan_out_voice_at
Same as fan_out_voice, but takes an injected now: Instant for deterministic rate-limiter testing.