aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/server.rs20
1 files changed, 20 insertions, 0 deletions
diff --git a/examples/server.rs b/examples/server.rs
new file mode 100644
index 0000000..5e294b0
--- /dev/null
+++ b/examples/server.rs
@@ -0,0 +1,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(())
+}