Voice — outbound originate
let v = voice::Voice::new(voice::Config { base_url: BASE_URL, api_key: KEY,
org_id: Some(ORG.into()) })?;
let call = v.calls().originate(voice::OriginateArgs {
to: "+15551234567", from: Some("+15558675309"),
trunk_id: Some("trunk_main"), agent: Some("healthcare-assistant"),
}).await?;
Streams — record-to-disk viewer
let mut out = tokio::fs::File::create("recording.mp4").await?;
let viewer = streams::BroadcastViewer::open(signed_url, streams::ViewerOpts {
on_chunk: Box::new(move |_init, chunk| {
out.write_all(&chunk).now_or_never();
}),
on_close: Box::new(|_| {}),
}).await?;
Robotics — telemetry publisher
let r = robotics::Robotics::new(robotics::Config {
relay_host: HOST.into(), token: TOK.into(), robot_id: "tb-7".into(),
})?;
let pub_ = r.publish_telemetry(robotics::PublishArgs {
topic: "odom", type_name: "nav_msgs/msg/Odometry",
qos: Some(robotics::QoSProfile {
reliability: robotics::Reliability::Reliable,
depth: Some(10), ..Default::default()
}),
}).await?;
let mut tick = tokio::time::interval(std::time::Duration::from_millis(100));
loop { tick.tick().await; pub_.write(serialize_odom()); }
Games — authoritative server
let g = games::Games::new(games::Config {
relay_host: HOST.into(), token, room_id: "duel-42".into(), player_id: None,
})?;
let state = g.publish_state(games::StateOpts { tick_hz: 30 }).await?;
g.subscribe_inputs(|pid, p| world.apply(pid, p)).await?;
let mut tick = tokio::time::interval(std::time::Duration::from_millis(33));
loop { tick.tick().await; state.write(&world.snapshot()); }
Data — MQTT-style subscribe
let d = data::Data::new(data::Config {
relay_host: HOST.into(), token, client_id: "ingest".into(),
})?;
let sub = d.subscribe(data::SubscribeArgs {
topic_filter: "sensors/+/temperature".into(),
}, |msg: data::Message| {
println!("{} ← {} = {:?}", msg.topic, msg.from_client_id, msg.payload);
}).await?;

