Skip to main content

Crate robot_bus

Crate robot_bus 

Source
Expand description

ZeroMQ message bus: broker routing and participant SDK.

Re-exports§

pub use typed::Action;
pub use typed::ActionOutcome;
pub use typed::Service;
pub use action_bus::ActionClient;
pub use action_bus::ActionKind;
pub use action_bus::ActionMessage;
pub use action_bus::ActionWorker;
pub use broker::ActionPeer;
pub use broker::DiscoveryConfig;
pub use broker::FederationPeerEndpoints;
pub use broker::MessagePeer;
pub use broker::RobotBusBroker;
pub use broker::RobotBusConfig;
pub use broker::ServicePeer;
pub use broker::apply_api_peers;
pub use broker::apply_federation_opts;
pub use broker::parse_robot_bus_config;
pub use broker::resolve_peer_from_api;
pub use broker::robot_bus_broker_help;
pub use discovery::BrokerAnnouncement;
pub use discovery::DEFAULT_API_DISCOVER_PATH;
pub use discovery::DEFAULT_WS_RPC_PATH;
pub use discovery::DiscoverOpts;
pub use discovery::DiscoverResponse;
pub use discovery::MAGIC as DISCOVERY_MAGIC;
pub use discovery::SCHEMA_VERSION as DISCOVERY_SCHEMA_VERSION;
pub use discovery::decode_announce;
pub use discovery::encode_announce;
pub use discovery::fetch_discover;
pub use discovery::wait as discover_wait;
pub use discovery::with_ws_rpc_path;
pub use tank::CMD_VEL_TOPIC;
pub use tank::MULTI_WAYPOINT_NAV_ACTION;
pub use tank::POINT_NAV_ACTION;
pub use tank::POSE_TOPIC;
pub use tank::RESET_SERVICE;
pub use tank::TankEndpoints;
pub use tank::TankHandle;
pub use tank::TankManager;
pub use tank::TankSession;
pub use tank::TankStatus;
pub use tank::WORLD_SIZE;
pub use discovery::DEFAULT_DISCOVERY_PORT;Deprecated
pub use discovery::DEFAULT_MULTICAST_ADDR;Deprecated
pub use broker::WsConfig;
pub use broker::ConsoleBrokerConfig;
pub use errors::BusError;
pub use errors::Result;
pub use errors::parse_error_body;
pub use lazy_subscribe::CONSOLE_DETECT_TIMEOUT;
pub use lazy_subscribe::should_enable_ros_subscription;
pub use message_bus::Publisher;
pub use message_bus::Subscriber;
pub use runtime::ActionGoalContext;
pub use runtime::ActionGoalHandler;
pub use runtime::ActionGoalLiveHandler;
pub use runtime::CallbackGroup;
pub use runtime::CallbackGroupType;
pub use runtime::ConnectionState;
pub use runtime::Context;
pub use runtime::Executor;
pub use runtime::ExecutorHandle;
pub use runtime::GoalHandle;
pub use runtime::ListParametersResult;
pub use runtime::MessageCallback;
pub use runtime::MultiThreadedExecutor;
pub use runtime::Node;
pub use runtime::NodeActionClient;
pub use runtime::NodeActionClientRaw;
pub use runtime::NodeActionServer;
pub use runtime::NodeOptions;
pub use runtime::NodeService;
pub use runtime::NodeServiceClient;
pub use runtime::NodeServiceClientRaw;
pub use runtime::PARAMETER_DEPTH_RECURSIVE;
pub use runtime::Parameter;
pub use runtime::ParameterValue;
pub use runtime::QOS_PROFILE_DEFAULT;
pub use runtime::QosProfile;
pub use runtime::RawActionFeedbackCallback;
pub use runtime::RawGoalHandle;
pub use runtime::ServiceHandler;
pub use runtime::ShutdownHandle;
pub use runtime::SingleThreadedExecutor;
pub use runtime::SubscriptionHandle;
pub use runtime::SubscriptionOverflowPolicy;
pub use runtime::TimerCallback;
pub use runtime::TimerHandle;
pub use runtime::TopicPublisher;
pub use runtime::TopicPublisherRaw;
pub use service_bus::ServiceClient;
pub use service_bus::ServiceWorker;
pub use transports::BindAllOpts;
pub use transports::DEFAULT_API_PORT;
pub use transports::action_backend_endpoint;
pub use transports::action_frontend_endpoint;
pub use transports::bind_all;
pub use transports::bind_tcp;
pub use transports::format_endpoints;
pub use transports::inproc_endpoint;
pub use transports::ipc_endpoint;
pub use transports::message_xpub_endpoint;
pub use transports::message_xsub_endpoint;
pub use transports::service_backend_endpoint;
pub use transports::service_frontend_endpoint;
pub use zmq_helpers::HighWaterMark;

Modules§

ackermann_msgs
action
action_bus
Action bus participant API (DEALER client / DEALER worker).
action_msgs
apriltag_msgs
broker
Broker routing processes (message / service / action bus).
builtin_interfaces
console
Embedded Web console: static assets + monitoring API (same port as gRPC / WS).
console_topics
Fixed system topic names for broker console introspection.
control_msgs
diagnostic_msgs
discovery
HTTP API broker discovery (control plane).
errors
Broker-side error body conventions.
example_interfaces
ROS 2–aligned tutorial interfaces (example_interfaces).
foxglove_msgs
geometry_msgs
lazy_subscribe
Shared predicate for opt-in ROS2→bus topic lazy subscribe.
lifecycle_msgs
map_msgs
message_bus
Message bus participant API (PUB / SUB).
nav2_msgs
nav_msgs
robot_bus_interfaces
robot-bus interface messages (robot_bus_interfaces.msg.v1).
runtime
Unified poll loop runtime (ROS 2–style executor / node).
sensor_msgs
service_bus
Service bus participant API (REQ client / DEALER worker).
shape_msgs
shutdown
Shared SIGINT/SIGTERM handling for multi-bus processes.
std_msgs
std_srvs
stereo_msgs
tank
In-process differential-drive tank simulation (tank).
tf2_msgs
trajectory_msgs
transports
Multi-transport endpoints: TCP (remote), inproc (same process), ipc (local machine).
typed
ROS 2–style service / action type bindings for typed Node APIs.
unique_identifier_msgs
vision_msgs
visualization_msgs
worker_thread
Background worker runner for tests and simple deployments.
ws
WebSocket communication: multiplexed RPC, framing, and server-side bus integration.
zmq_helpers
Shared ZeroMQ socket helpers.