pub(crate) struct ExportRequest {
pub(crate) asset: u32,
pub(crate) channels: Vec<u8>,
pub(crate) start: String,
pub(crate) end: String,
pub(crate) format: ExportFormat,
pub(crate) download_name: Option<String>,
pub(crate) ack_subject: Option<String>,
pub(crate) filters: Option<Value>,
}Expand description
Export request accepted by both WebSocket and NATS worker modes.
Sent as a JSON object with snake_case field names, for example:
{"asset":1,"channels":[0,1],"start":"2026-09-21T14:00:00Z",
"end":"2026-09-21T15:00:00Z","format":"csv",
"download_name":"run.csv","ack_subject":"_INBOX.abc.ack"}Validation (in process_nats_request and serve_export_request) rejects an
empty channel list, unparseable timestamps, end before start, and any format
other than CSV.
Fields§
§asset: u32Asset number; selects the assetNNN directory under the Parquet root.
channels: Vec<u8>LabJack channel numbers to export. Sorted and deduplicated before use, and exported one channel after another in that order. Must not be empty.
start: StringStart of the range, RFC 3339 (any offset, converted to UTC). Inclusive.
end: StringEnd of the range, RFC 3339 (any offset, converted to UTC). Inclusive, and
may equal start.
format: ExportFormatOutput format. Default: csv.
download_name: Option<String>File name reported in the meta frame. Default:
labjack_asset<NNN>_<start>_<end>.csv with times as %Y%m%dT%H%M%S in UTC.
ack_subject: Option<String>Worker mode only. Subject on which the client publishes one message per received chunk; the worker subscribes to it and pauses every 8 chunks until the acks arrive. Missing or blank disables backpressure. Ignored in direct mode.
filters: Option<Value>Noise filters per channel, keyed by channel number as a string, in the shape
of the config’s sensor_settings.filters (see filters). When a requested
channel has any filter on, every row gets a filtered_value column. Absent,
empty or all off: the CSV is exactly as without this field.
Trait Implementations§
Source§impl Clone for ExportRequest
impl Clone for ExportRequest
Source§fn clone(&self) -> ExportRequest
fn clone(&self) -> ExportRequest
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more