aboutsummaryrefslogtreecommitdiff
path: root/examples/server.rs
blob: 5e294b02315d30d53c61a974eac511a6c182dfef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
use anyhow::Result;
use log::info;
use sip::{transaction::TransactionUser, transport::tcp::TcpTransport};
use tokio::net::TcpListener;

#[tokio::main]
async fn main() -> Result<()> {
    let listener = TcpListener::bind("0.0.0.0:5060").await?;

    loop {
        let (stream, addr) = listener.accept().await?;
        info!("connection from {addr}");
        let transport = TcpTransport::new(stream).await?;
        let tu = TransactionUser::new(transport);

        let req = tu.process_incoming().await?;
    }

    Ok(())
}