use std::net::{IpAddr, SocketAddr}; use tokio_stream::StreamExt; use f1_api::packet::Packet::{Event, Lap, Motion, Participants, Session, Setup, Status, Telemetry}; use f1_api::F1; #[tokio::main] async fn main() { let ip_address = IpAddr::from([0, 0, 0, 0]); let port = 20777; let socket = SocketAddr::new(ip_address, port); let mut stream = F1::stream(socket).unwrap(); while let Some(packet) = stream.next().await { match packet { Event(_) => println!("Received an Event packet"), Lap(_) => println!("Received a Lap packet"), Motion(_) => println!("Received a Motion packet"), Participants(_) => println!("Received a Participants packet"), Session(_) => println!("Received a Session packet"), Setup(_) => println!("Received aaSetup packet"), Status(_) => println!("Received a Status packet"), Telemetry(_) => println!("Received a Telemetry packet"), } } }