基于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/
相关文章推荐
- 基于html5 WebSocket和WebRTC实现IM和视音频呼叫(一)
- 基于html5 WebSocket和WebRTC实现IM和视音频呼叫(二)
- 基于html5 WebSocket和WebRTC实现IM和视音频呼叫(二)
- 【微信支付】分享一个失败的案例 跨域405(Method Not Allowed)问题 关于IM的一些思考与实践 基于WebSocketSharp 的IM 简单实现 【css3】旋转倒计时 【Html5】-- 塔台管制 H5情景意识 --飞机 谈谈转行
- 通过(Node Js||.Net)基于HTML5的WebSocket实现实时视频文字传输(上)
- 通过(Node Js||.Net)基于HTML5的WebSocket实现实时视频文字传输1
- 基于html5websocket java实现简单通讯(虽然通了但是...你懂得)
- 基于html5 websocket API简单实现断点上传文件
- 基于Chrome、Java、WebSocket、WebRTC实现浏览器视频通话
- 基于HTML5和Tomcat WebSocketServlet的聊天室简单实现
- [转]通过(Node Js||.Net)基于HTML5的WebSocket实现实时视频文字传输(上)
- 基于Chrome、Java、WebSocket、WebRTC实现浏览器视频通话
- 基于Chrome、Java、WebSocket、WebRTC实现浏览器视频通话
- 基于HTML5 WebSocket的Web实时通信机制的研究与实现
- HTML5基于Tomcat 7.0实现WebSocket连接并实现简单的实时聊天
- php+html5基于websocket实现聊天室的方法
- 基于Chrome、Java、WebSocket、WebRTC实现浏览器视频通话
- 基于html5和nodejs相结合实现websocket即使通讯
- 基于webRTC技术 音频和视频,IM解
- 使用 HTML5, javascript, webrtc, websockets, Jetty 和 OpenCV 实现基于 Web 的人脸识别