Skip to main content

simple_sender/
simple_sender.rs

1use std::net::{IpAddr, Ipv4Addr, SocketAddr};
2
3use tokio_multicast::MulticastSocket;
4
5#[tokio::main(flavor = "current_thread")]
6async fn main() -> Result<(), Box<dyn std::error::Error>> {
7    // Sends a single datagram to the same group used by simple_receiver.
8    let socket = MulticastSocket::builder()
9        .bind(SocketAddr::from((Ipv4Addr::UNSPECIFIED, 46054)))
10        .join(IpAddr::V4(Ipv4Addr::new(239, 1, 1, 10)))
11        .build()
12        .await?;
13
14    socket
15        .send_to(
16            b"hello multicast",
17            SocketAddr::from((Ipv4Addr::new(239, 1, 1, 10), 46053)),
18        )
19        .await?;
20    Ok(())
21}