News for hackers. Stuff that matters.
Re:Rtc.io – Open source WebRTC library by kodablah on Sunday January 19, 2014 @03:49PM (#7085927)
Does this have a WebRTC data channel client implementation, or does it solve more rudimentary aspects of WebRTC such as passing offers and answers (i.e. signalling)? This node module [1] is a client for data channels (but sadly no native Windows support yet which is a needed thing [2]). Once more widely adopted, WebRTC will be a great data communication method between users of all sorts of common-user desktop applications, not just browsers, mainly because of it's NAT traversal techniques and encrypted-by-default requirement. In some instances a TURN proxy may be required (and the popular one [3] isn't the easiest to setup, and doesn't have a native-Windows-not-Cygwin install). This is especially true for users behind large corporate/government networks that don't give you a single public IP per machine.

I have done a lot of work w/ WebRTC data channels recently and I am working on a POC for hosting one's own "page" (i.e. facebook-esque profile page) themselves. WebRTC I think is the best technology so far for the decentralization of internet data from hosted servers to users. It still requires some server side things such as signalling (the handshake), STUN servers (external IP discovery behind a network), and TURN servers (proxies for complicated networks). By packaging up those three things into a single server that can be easily deployed by someone you trust (i.e. some kind of regional "manager" of sorts) and having good software to display web content over WebRTC data channels, a neighborhood-level darknet of sorts will be very feasible for even non-technical users.

1 - https://github.com/js-platform/node-webrtc 2 - https://github.com/js-platform/node-webrtc/issues/42 3 - http://code.google.com/p/rfc5766-turn-server/

Re:Rtc.io – Open source WebRTC library by djoehlman on Sunday January 19, 2014 @06:19PM (#7086540)
The client portions are definitely in the library, and as you point out the node-webrtc library is looking really promising for interop with server processes.

If you need any help with the POC that you are currently working on feel free to reach out and I'll see what I can do (I'm the main dev working on rtc.io at the moment). Also, the primary dev on the node-webrtc project (modeswitch) is super helpful so I'm sure he'd be happy to help out also.

Either twitter or github is a good way to get in touch with me - usename is DamonOehlman in both channels...

Re:Rtc.io – Open source WebRTC library by erichocean on Sunday January 19, 2014 @10:30PM (#7087371)
Dear GitHub: Please make it possible to "follow", or at the very least, star an Organization. I want to bookmark https://github.com/rtc-io, not a particular project they are doing.

Organizations, as currently implemented, are the opposite of "social". Spend some of that $100 million and fix it please. Thanks.

Re:Rtc.io – Open source WebRTC library by ricardobeat on Sunday January 19, 2014 @02:50PM (#7085685)
Worth mentioning an even simpler library for newcomers: http://simplewebrtc.com/
Re:Rtc.io – Open source WebRTC library by Sir_Cmpwn on Sunday January 19, 2014 @08:12PM (#7086951)
Worth mentioning that you probably don't even need a library. The WebRTC API is not obtuse.
Re:Rtc.io – Open source WebRTC library by djoehlman on Sunday January 19, 2014 @08:28PM (#7086996)
I agree with that comment, which was one of the reasons rtc.io was created in the first place. A lot of the other libraries hide away the core browser objects through higher-level JS objects, whereas the core rtc.io library (rtc - https://github.com/rtc-io/rtc) encourages direct use of the browser api.

Some of the other modules (rtc-quickconnect, rtc-glue, etc) in the rtc.io suite, however, do take you further away from the metal but if you are comfortable with the core browser APIs then using a combination of rtc-signaller and the connection coupling helper in rtc (https://github.com/rtc-io/rtc/blob/master/couple.js) will probably give the most flexible option for writing a WebRTC application.

Just be aware that there are some bizarre edge cases when working with WebRTC that can leave you scratching your head at times. The rtc/couple module takes care of some, but there are still others that I'm still investigating solutions for, e.g. https://github.com/rtc-io/rtc/issues/14

Re:Rtc.io – Open source WebRTC library by smaddock on Sunday January 19, 2014 @06:02PM (#7086463)
http://peerjs.com/ is the best library I've found for WebRTC thus far. Their documentation is fair, there's decent support for DataChannels and they've also open sourced a signalling server. https://github.com/peers/peerjs-server
Re:Rtc.io – Open source WebRTC library by silviapfeiffer on Sunday January 19, 2014 @07:57PM (#7086895)
Just to be complete: rtc.io has a signalling server at https://github.com/rtc-io/rtc-switchboard . Choice of library is up to you. :-)
Re:Rtc.io – Open source WebRTC library by djoehlman on Sunday January 19, 2014 @08:01PM (#7086911)
It does work best with the signaller from the rtc.io suite:

https://github.com/rtc-io/rtc-signaller

That said, it wouldn't take much to write an signalling client that followed the basics of the messaging format if you did want to roll your own:

https://github.com/rtc-io/rtc-signaller#signaller-message-ha...

Re:Rtc.io – Open source WebRTC library by motyar on Sunday January 19, 2014 @08:59PM (#7087095)
Is there any app or project something like btysnc? I mean data sync using WebRTC? Any thought about speed? Can it be faster than btysnc? Thanks
Re:Rtc.io – Open source WebRTC library by djoehlman on Sunday January 19, 2014 @09:30PM (#7087189)
I think there has been some progress made on implementing BitTorrent like clients using WebRTC data channels:

https://github.com/feross/webtorrent

I haven't done that much investigation myself yet, but I definitely think it's possible. No idea on which will be faster, I imagine it will come down to quantity and quality of peers in both cases...

Re:Rtc.io – Open source WebRTC library by Thiz on Sunday January 19, 2014 @02:04PM (#7085489)
I am new to WebRTC so here is my question: how can you "ring" my browser so I know I have an incoming call without you first telling me to go to a specific url?

I believe WebRTC has great potential to replace facetime and skype with a browser based version.

Re:Rtc.io – Open source WebRTC library by 0x0 on Sunday January 19, 2014 @02:19PM (#7085555)
I've just started looking into it, and as far as I can understand, you can't "push" a call to others. You will have to supply a web page and the javascript to connect to a "meeting room" or whatever (using ajax?) to "find" the other peer, and exchange connection parameters, before the webRTC stuff kicks in. (Correct me if I'm wrong)
Re:Rtc.io – Open source WebRTC library by pfraze on Sunday January 19, 2014 @02:38PM (#7085629)
Yeah, the "signalling" process is implemented by applications, and needs either a WebSocket or SSE stream.
Re:Rtc.io – Open source WebRTC library by Thiz on Sunday January 19, 2014 @11:03PM (#7087487)
So we could use a browser extension to listen in the background to a central phone server for incoming calls while we happily surf the web and then get the "ring" opening the url in a tab for the incoming call to take place?

Interesting...

Re:Rtc.io – Open source WebRTC library by arcameron on Monday January 20, 2014 @05:50PM (#7092235)
Yeah, but why would you want to take calls in your browser? Why not a separate application (node-webkit, Firefox app) that runs as its own process a la Skype clone?
Re:Rtc.io – Open source WebRTC library by higherpurpose on Sunday January 19, 2014 @02:57PM (#7085714)
WebRTC is just a protocol for applications. So you'll need to have Hangouts or Skype or whatever client using WebRTC open, and then it should work when someone calls you through them, on the web.

Take Facebook Chat for example or whatever they are calling that integration with a Java Skype plugin. Instead of using that Java plugin, it could use WebRTC in the future, and it won't even need Skype. It could just work with Facebook users, which is something Facebook might want anyway, or at least until Skype uses WebRTC, too.

Re:Rtc.io – Open source WebRTC library by silviapfeiffer on Sunday January 19, 2014 @05:16PM (#7086284)
Before you can "ring" somebody in their browser, their presence has to get established first. So, they need to have signalled their presence to a signalling server first. That can happen via loading a specific URL, or being logged in to a specific Website. It's not possible to just magically know that they are around without them announcing it.
Re:Rtc.io – Open source WebRTC library by vectorpush on Sunday January 19, 2014 @04:27PM (#7086071)
Does anyone know of any resources (maybe a code example) for establishing a webrtc peer connection between a browser and an arbitrary service?
Re:Rtc.io – Open source WebRTC library by silviapfeiffer on Sunday January 19, 2014 @05:11PM (#7086257)
What does the "arbitrary service" provide? Is it a video conference, audio conference, or data channel end point?
Re:Rtc.io – Open source WebRTC library by vectorpush on Sunday January 19, 2014 @05:15PM (#7086280)
Data channels are what I have in mind, but I can't seem to find any webrtc code that connects a browser to anything other than another browser.
Re:Rtc.io – Open source WebRTC library by djoehlman on Sunday January 19, 2014 @06:06PM (#7086483)
Thanks to a project that has been previously pointed out (node WebRTC bindings - https://github.com/js-platform/node-webrtc) interop between a browser and node applications isn't too far away.

There is this issue which is being worked on at the moment in the node-webrtc library:

https://github.com/js-platform/node-webrtc

Once that's resolved data channel connectivity between a browser and command-line app, server, etc should be reasonably simple. While this bug is outstanding, it is possible to fall back to Rtp data channels in the browser and if that is something that is of interest then we can look at putting together some examples with rtc.io if that would help you out.

Re:Rtc.io – Open source WebRTC library by alecsmart1 on Sunday January 19, 2014 @12:50PM (#7085152)
This is definitely a good and much required resource. You should look at also adding components for iOS and Android as well.
Re:Rtc.io – Open source WebRTC library by badfilesam on Sunday January 19, 2014 @01:16PM (#7085266)
Do you know if it could actually work on iOS and Android? It doesn't seem supported by Safari yet [1]. I'm deeply interested by capturing the microphone on mobile devices with WebRTC.

[1] http://iswebrtcreadyyet.com

Re:Rtc.io – Open source WebRTC library by taterbase on Sunday January 19, 2014 @01:47PM (#7085408)
If you use Bowser (https://labs.ericsson.com/apps/bowser) you can use WebRTC on web pages with iOS. Otherwise you can build the WebRTC library with your app and make use of the technology natively (https://code.google.com/p/webrtc/)
Re:Rtc.io – Open source WebRTC library by alecsmart1 on Sunday January 19, 2014 @01:30PM (#7085338)
Safari doesn't support it. But native apps can support it. I believe Chrome for mobile also supports it.
Re:Rtc.io – Open source WebRTC library by davidcann on Sunday January 19, 2014 @06:32PM (#7086601)
Chrome on iOS does not. Chrome on some Android devices does.
Re:Rtc.io – Open source WebRTC library by yachtintransit on Sunday January 19, 2014 @01:49PM (#7085417)
you should check out http://github.com/mschmulen/webrtc-demo it has web rtc running on iOS .
Re:Rtc.io – Open source WebRTC library by sciurus on Sunday January 19, 2014 @03:07PM (#7085754)
If you're looking to do WebRTC on those platforms check out Phono Mobile. It supports iOS and Android via Phonegap.

http://phono.com/