Settings

Theme

Show HN: Create a WebRTC service in less time than it takes to install Skype

vline.com

34 points by bstrong 13 years ago · 13 comments

Reader

navyrain 13 years ago

Nice start, but some criticisms:

- This just seems like a wrapper around webrtc, with some presence stuff thrown in.

- Your website does not mention anywhere that the majority of web users do not support webrtc http://caniuse.com/#feat=stream

- Is this a product? Why would I use this? Are you actually aiming at replacing skype? If not, why target it in your slogan? Do you intend on having users embed it in their site? Make paid chat applications with your platform?

  • bstrongOP 13 years ago

    Good feedback. To address your comments:

    >> This just seems like a wrapper around webrtc, with some presence stuff thrown in.

    It turns out there is quite a bit of server-side infrastructure required to support webrtc apps. The biggest ones being relay, STUN, and signaling servers. Operating these yourself is non-trivial, especially if you want good performance around the world. We also have a pretty full-featured chat service.

    Doing a good job of session management (which is a large part of what our javascript framework does) is also a pretty complex problem, especially doing a good job of handling a single user logged in from multiple devices / browser tabs.

    >> Your website does not mention anywhere that the majority of web users do not support webrtc

    Good point. We should definitely cover supported browsers. Since full WebRTC support will be enabled in Firefox 21, the majority of web users actually will have support soon. Also, I have no data to back this up, but I have strong anecdotal evidence that users who have webcams and do video chat are much more likely to be on a modern browser.

    - Is this a product?

    It's a platform that includes cloud infrastructure (signaling, messaging, STUN, and relay), a javascript framework for using said infrastructure in your own web app, and a pre-built "web client" (a skype-like web app that you can use on its own, in conjunction with your web app, or not at all).

    >> Why would I use this?

    If you are a developer looking to add WebRTC to your app, the answer is that running the cloud infrastructure to support it is hard and costs a lot of money. We take care of those parts.

    > Are you actually aiming at replacing skype?

    As a general-purpose communications network, no. As a tool that businesses use to communicate with their customers, yes. A surprising number of companies, including a lot of startups, are doing skype calls with their customers, which involves walking them through the install process, adding them as contacts, and then coordinating the call. Everyone who is doing this hates it and is looking for a solution that doesn't require an install, doesn't require a permanent "contact" relationship, and has better call quality.

    >> Do you intend on having users embed it in their site?

    Yes, absolutely. One of the most compelling use cases is to have customers placing a call from your site, while your reps/salespeople/stylists/doctors/etc are using the "web client" to answer the calls.

    >> Make paid chat applications with your platform?

    This is certainly possible and is a use-case we want to support, but the bigger problem we're trying to solve is let business communicate more effectively with their customers on their own web sites.

    • drivebyacct2 13 years ago

      Signaling isn't really that hard, and I say that as someone who wrote a signaling and chat server for webrtc. Fortunately, the chat server is no longer necessary and that functionality can ride on webrtc itself. (And I assume you didn't write your own STUN server and are just hosting/running an existing one.)

      Do you run a TURN server?

      • bstrongOP 13 years ago

        Not sure what to say about signaling other than handling all the edge cases takes a non-trivial amount of effort and testing (which is true of most things in software).

        Chat is only possible peer-to-peer if you don't care about histories. Since losing your history every time you reload a page or close a tab isn't a great experience, it's helpful to have a server in the middle keeping the history, unread counts, etc (which we do support today). Presence will always require a server.

        We do run relay and STUN servers in locations around the world. Our STUN server is based on an open source implementation, but it is substantially customized. The relay server is our own.

general_failure 13 years ago

So I measured this. In managed to download and install Skype. I am still entering my email I'd into this website.

  • bstrongOP 13 years ago

    We ran this experiment a few times and it took most people about a minute to install Skype if they already had an account, and at least a couple if they did not. On many machines (such as mine) it can take 30 seconds just to open Skype.

seven_bridges 13 years ago

A bit of a side note, but how does WebRTC integrate with Twilio Client? Twilio Client was modified to use WebRTC as an alternative to the original Twilio Client, which integrated with Flash to connect calls. Introduction here (http://www.twilio.com/blog/2012/11/webrtc-for-twilio-client-...)

And how does your product differ from Twilio Client?

  • bstrongOP 13 years ago

    I can't speak to how the Twilio Client works, but how we're different is easy: We do video. Twilio is only voice.

el-mapache 13 years ago

Does the developer have access to the raw data stream as well? I.e, can I apply filters the audio or record the incoming data?

If not, will I be able to run this concurrently with multiple audio gathering programs? Should probably google if a computer's input source can be multiplexed in that way :)

  • bstrongOP 13 years ago

    We don't provide any special support for doing this, but we do give you access to the browser's MediaStream object. You can attach that to an AudioContext and use the web audio API to do what you're asking for.

mykesmith1 13 years ago

Looks like an interesting product with its use of WebRTC

dandyhighwayman 13 years ago

this could be a great way to deal with the world of pain that is WebRTC

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection