local_websocket 0.0.1 copy "local_websocket: ^0.0.1" to clipboard
local_websocket: ^0.0.1 copied to clipboard

A pure Dart library for local network WebSocket communication with automatic server discovery and scanning capabilities.

example/main.dart

import 'package:local_websocket/local_websocket.dart';

void main(List<String> args) async {
  final server = Server(
    echo: false,
    details: {
      'name': 'Test Server',
    },
  );
  server.messageStream.listen((message) {
    print('Server received message: $message');
  });

  print('Starting server...');
  await server.start('127.0.0.1');
  print('Server started');

  print('Scanning for servers...');
  final result = await Scanner.scan("127.0.0.1").first;
  final path = result.firstOrNull?.path;
  if (path == null) {
    print('No servers found');
    return;
  }
  print('Found server at $path');

  final client1 = Client(
    details: {
      'name': 'Client 1',
    },
  );
  client1.messageStream.listen((message) {
    print('Client 1 received message: $message');
  });
  await client1.connect(path);
  print('Client 1 connected to server');

  final client2 = Client(
    details: {
      'name': 'Client 2',
    },
  );
  client2.messageStream.listen((message) {
    print('Client 2 received message: $message');
  });
  await client2.connect(path);
  print('Client 2 connected to server');

  await Future.delayed(Duration(seconds: 3));

  server.send('Hello from Server');
  await Future.delayed(Duration(seconds: 1));
  client1.send('Hello from Client 1');
  await Future.delayed(Duration(seconds: 1));
  client2.send('Hello from Client 2');
}
4
likes
0
points
269
downloads

Publisher

unverified uploader

Weekly Downloads

A pure Dart library for local network WebSocket communication with automatic server discovery and scanning capabilities.

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

dio, shelf, shelf_router, shelf_web_socket, uuid, web_socket_channel

More

Packages that depend on local_websocket