Giter Site home page Giter Site logo

simple_peer_flutter's Introduction

Simple WebRTC. Wraps flutter_webrtc similar to simple-peer

IMPORTANT: Right now this library only supports data channels (and not media). Contributions welcome!

Getting started

Read more about how to get started with webrtc in flutter_webrtc or the javascript simple-peer

Roadmap

  • Support media (in addition to currently supported data channels)
  • Support batching large data (such as sending files byte by byte)

Usage

var peer1 = Peer(initiator: true);
var peer2 = Peer();

peer1.onSignal = (data) async {
  // When peer1 has signaling data, give it to peer2 somehow
  // https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API/Signaling_and_video_calling#the_signaling_server
  await peer2.signal(data);
};

peer2.onSignal = (data) async {
  // When peer2 has signaling data, give it to peer1 somehow
  // https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API/Signaling_and_video_calling#the_signaling_server
  await peer1.signal(data);
};

peer2.onData = (data) async {
  print(data); // hello!
};

peer2.connect();
await peer1.connect();

await peer1.send('hello!');

Release guide (for contributors)

  • Test by opening example and check logs that it works
  • Update CHANGELOG.md + pubspec.yml version
  • Run flutter pub publish

simple_peer_flutter's People

Contributors

simonbengtsson avatar herlinmatos avatar

Stargazers

Lê Anh Quốc avatar LÊ VĨNH NHÂN ĐỨC avatar  avatar Can Arslan avatar  avatar Cephas Arowolo avatar leeyi avatar Andres Garcia avatar  avatar Jaeyoun Nam avatar  avatar Hosein Haqiqian avatar Tuan Nguyen avatar  avatar

Watchers

James Cloos avatar  avatar  avatar

Forkers

herlinmatos

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.