Lite reliable UDP library for Mono and .NET
See the codeLite reliable UDP library for .NET Standard 2.1 (Mono, .NET)
HighLevel API Part: LiteEntitySystem
Matrix chat: Matrix
OLD BRANCH (and examples) for 1.x
( Warning! Master branch can be unstable! )
USDT TRC20: TE5eBgq8SyEeZFKtCgZG9GwL34sANmbc67
USDT BEP20/ERC20: 0x4c0D6DC76c6A6B354f5ec6c9e51893fFC6510d1E
Bitcoin: bc1q269ecs8r5vnrum5qr5j98sdglhnxlulv0f6egd
var listener = new EventBasedNetListener();
var client = new NetManager(listener);
client.Start();
client.Connect("localhost" /* host IP or name */, 9050 /* port */, "SomeConnectionKey" /* text key or NetDataWriter */);
listener.NetworkReceiveEvent += (fromPeer, dataReader, channel, deliveryMethod) =>
{
Console.WriteLine("We got: {0}", dataReader.GetString(100 /* max length of string */));
dataReader.Recycle();
};
while (!Console.KeyAvailable)
{
client.PollEvents();
Thread.Sleep(15);
}
client.Stop();
var listener = new EventBasedNetListener();
var server = new NetManager(listener);
server.Start(9050 /* port */);
listener.ConnectionRequestEvent += request =>
{
if(server.ConnectedPeersCount < 10 /* max connections */)
request.AcceptIfKey("SomeConnectionKey");
else
request.Reject();
};
listener.PeerConnectedEvent += peer =>
{
Console.WriteLine("We got connection: {0}", peer); // Show peer IP
var writer = new NetDataWriter(); // Create writer class
writer.Put("Hello client!"); // Put some string
peer.Send(writer, DeliveryMethod.ReliableOrdered); // Send with reliability
};
while (!Console.KeyAvailable)
{
server.PollEvents();
Thread.Sleep(15);
}
server.Stop();
Overall
Maintained
Code review
NuGet
Latest release
Releases this year
4,141 followers · starred May 2020
32 followers · starred Nov 2022
228 followers · starred Sep 2016
257 followers · starred May 2018
Lite reliable UDP library for Mono and .NET
See the codeLite reliable UDP library for .NET Standard 2.1 (Mono, .NET)
HighLevel API Part: LiteEntitySystem
Matrix chat: Matrix
OLD BRANCH (and examples) for 1.x
( Warning! Master branch can be unstable! )
USDT TRC20: TE5eBgq8SyEeZFKtCgZG9GwL34sANmbc67
USDT BEP20/ERC20: 0x4c0D6DC76c6A6B354f5ec6c9e51893fFC6510d1E
Bitcoin: bc1q269ecs8r5vnrum5qr5j98sdglhnxlulv0f6egd
var listener = new EventBasedNetListener();
var client = new NetManager(listener);
client.Start();
client.Connect("localhost" /* host IP or name */, 9050 /* port */, "SomeConnectionKey" /* text key or NetDataWriter */);
listener.NetworkReceiveEvent += (fromPeer, dataReader, channel, deliveryMethod) =>
{
Console.WriteLine("We got: {0}", dataReader.GetString(100 /* max length of string */));
dataReader.Recycle();
};
while (!Console.KeyAvailable)
{
client.PollEvents();
Thread.Sleep(15);
}
client.Stop();
var listener = new EventBasedNetListener();
var server = new NetManager(listener);
server.Start(9050 /* port */);
listener.ConnectionRequestEvent += request =>
{
if(server.ConnectedPeersCount < 10 /* max connections */)
request.AcceptIfKey("SomeConnectionKey");
else
request.Reject();
};
listener.PeerConnectedEvent += peer =>
{
Console.WriteLine("We got connection: {0}", peer); // Show peer IP
var writer = new NetDataWriter(); // Create writer class
writer.Put("Hello client!"); // Put some string
peer.Send(writer, DeliveryMethod.ReliableOrdered); // Send with reliability
};
while (!Console.KeyAvailable)
{
server.PollEvents();
Thread.Sleep(15);
}
server.Stop();
Overall
Maintained
Code review
NuGet
Latest release
Releases this year
4,141 followers · starred May 2020
32 followers · starred Nov 2022
228 followers · starred Sep 2016
257 followers · starred May 2018