mod async_helpers; use std::error::Error; use zeromq::prelude::*; #[async_helpers::main] async fn main() -> Result<(), Box> { let mut frontend = zeromq::RouterSocket::new(); frontend.bind("tcp://127.0.0.1:5559").await?; let mut backend = zeromq::DealerSocket::new(); backend.bind("tcp://127.0.0.1:5560").await?; let mut capture = zeromq::PubSocket::new(); capture.bind("tcp://127.0.0.1:9999").await?; zeromq::proxy(frontend, backend, Some(Box::new(capture))).await?; Ok(()) }