您的位置:首页 > Web前端 > HTML5

基于html5 WebSocket和WebRTC实现IM和视音频呼叫(一)

2012-02-24 00:04 696 查看

半年前Google开源了WebRTC项目,并把其加入到chrome dev版本中,实现浏览器之间无插件的视音频多媒体传输。这个新的技术使用了HTML 5和简单的Javascript API,开发者可以很轻松的创建RTC应用,只要浏览器支持,就可在不安装任何扩展和插件的前提下进行实时音频和视频聊天。


最近工作中需要对WebRTC做一些调研,于是我计划基于WebSocke和WebRTC实现IM和视音频对话的prototype。

在html5 WebSocket出现以前,web版本的IM应用都是基于AJAX轮询的信令传输方式,这种方式的优点是调用rest接口可以实现无状态维护信令传输,server端都有成熟的jsp、php等技术框架支持;缺点不言而喻,就是网络使用浪费server负载过大等等。WebSocket的出现给web端的信令传输提供了新的道路。


WebSocket作为HTML5一种新的协议,实现了浏览器与服务器的双向通讯。在 WebSocket API 中,浏览器和服务器只需要要做一个握手的动作,然后,浏览器和服务器之间就形成了一条快速通道。两者之间就直接可以数据互相传送。


我自然选择了WebSocket作为IM和WebRTC信令传输的媒介,这样就需要搭建一个支持WebSocket协议的server端。

经过一番google后发现有很多解决方案,纯C实现的opensource工程libwebsocket,Node.js实现,新版本的web服务器jetty和netty等也都对websocket提供了支持。鉴于java语言的易操作性我最终选择了jetty + java的实现。

参照这个帖子(/article/5733452.html)搭起了WebSocket server。需要提醒大家的是jetty版本的选择上使用11年10月左右的版本,新版本运行会出初始化错误。

先到这里吧,明天继续写~

相关资料:

/article/5733452.html

http://git.warmcat.com/cgi-bin/cgit/libwebsockets/

http://dev.w3.org/html5/websockets/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐