Browser client for the archive exporter's NATS worker protocol.
The exporter runs on each edge box and listens on
avenars.<site>.<box>.<source>.export.request. The dashboard publishes one JSON
request there over its existing WebSocket connection to central NATS, with a reply
inbox. The exporter answers on that inbox with a sequence of frames, each named by
the Avena-Export-Frame header: meta, one or more chunk frames of raw CSV
bytes, summary, and complete, or an error frame instead. Because core NATS
has no flow control, the client acknowledges each chunk on a separate ack subject,
and the exporter pauses every eight chunks until the acks arrive. To stop an export
early the client publishes a cancel message on the same ack subject.
See docs/src/reference/export-protocol.md for the full protocol.
Browser client for the archive exporter's NATS worker protocol.
The exporter runs on each edge box and listens on
avenars.<site>.<box>.<source>.export.request. The dashboard publishes one JSON request there over its existing WebSocket connection to central NATS, with a reply inbox. The exporter answers on that inbox with a sequence of frames, each named by theAvena-Export-Frameheader:meta, one or morechunkframes of raw CSV bytes,summary, andcomplete, or anerrorframe instead. Because core NATS has no flow control, the client acknowledges each chunk on a separate ack subject, and the exporter pauses every eight chunks until the acks arrive. To stop an export early the client publishes acancelmessage on the same ack subject.See
docs/src/reference/export-protocol.mdfor the full protocol.