mozilla / hotdish

Explorations on being together in the browser
Mozilla Public License 2.0
109 stars 13 forks source link

Integrate voicechatapi #217

Open ianb opened 10 years ago

ianb commented 10 years ago

This seems like a really simple way to get a webrtc conference going: http://voicechatapi.com/

Presumably this doesn't scale for everyone to use, but since we're just prototyping it's no biggie. We can facilitate pieces of the API to make it easy to use too. Ultimately we'd be opening the conference in a content window (unless we did some crazy iframe hackery, since we might have to work around the conference app). Of course if we fork it and host our own server we can do whatever we want.

To host the server you do need a Plivo account for something, no idea what (might not be a big deal).

gregglind commented 10 years ago

This sounds like a great resource and an easy path forward.

I am unsure about about where audio and video chat fit into our flows and goals.

Maybe the room URL and creation time (to know if a new one needs to be made) could go as part of hello / part messages?

Also note that they have a bookmarklet

On Feb 1, 2014, at 10:38 PM, Ian Bicking notifications@github.com wrote:

This seems like a really simple way to get a webrtc conference going: http://voicechatapi.com/

Presumably this doesn't scale for everyone to use, but since we're just prototyping it's no biggie. We can facilitate pieces of the API to make it easy to use too. Ultimately we'd be opening the conference in a content window (unless we did some crazy iframe hackery, since we might have to work around the conference app). Of course if we fork it and host our own server we can do whatever we want.

To host the server you do need a Plivo account for something, no idea what (might not be a big deal).

— Reply to this email directly or view it on GitHub.

aarondruck commented 10 years ago

This is awesome. good find. I guess I was thinking the multi-party/user group chat could start "on" and then the user has the option to toggle it off.

this is based on our observations of using vidyo + hotdish. i think adding a layer for multi-party audio is a must for hotdish to take it to the next level.

here are some other samples to look at?

https://github.com/muaz-khan/WebRTC-Experiment https://npmjs.org/package/webrtc.io

I think having this in the iFrame would be awesome. Is there a hacky way to do that? We can hide everything except for the "on/off" toggle. Or maybe there's a way to quickly send audio recordings back and forth to each other as a hack?

ianb commented 10 years ago

FWIW voicechatapi uses a closed source server and Flash. But since Hotdish isn't a technology demonstration of multi-party voice, I don't really care about those problems, I think it would be nice to just see how it adds to the experience. A background (pinned?) tab might be a very simple way to get started.

aarondruck commented 10 years ago

This looks good

http://tokbox.com/opentok/quick-start/demo.html

ianb commented 10 years ago

Spiffier looking demo: https://opentokrtc.com/

ianb commented 10 years ago

After looking at a bunch of things, voicechatapi seems like the one that actually works. One nuisance is that by turning off getUserMedia permissions we've gotten rid of the opportunity to configure your devices. Also there's a silly ringtone and even hold music, but that's relatively ok.

ianb commented 10 years ago

Maybe use opentokrtc and then turn off our camera permission disabling (which makes it feel weirdly intrusive). We could also try to hack it using a page worker, to work more like we want it to. All of which is kind of silly, but whatever.

ianb commented 10 years ago

Another option that looks good: https://palava.tv/

Like opentokrtc it may be as simple as constructing a link using the groupId, but perhaps more usable.

ianb commented 10 years ago

Or perhaps a Google Hangout – there is an invite link which we could trade around, but it's not clear if there's any good way to get that link, and we wouldn't want to use the explicit invite (as it doesn't fit with our existing group model, and it's actually sent indirectly).

ianb commented 10 years ago

And yet another easy option: https://talky.io/