基于html5的多人实时交互平台开题报告
2020-04-15 17:05:27
1. 研究目的与意义(文献综述包含参考文献)
随着web2.0、sns、大数据的发展,传统的web相关技术逐渐难以应对各种需求。与此同时,新的技术层出不穷,而其中最受瞩目的则是html5、node.js、nosql等技术。本设计课题通过对上述技术的综合运用,开发多人的实时交互平台。由于采用了html5相关技术,客户端将无需任何安装程序,一切功能均通过浏览器呈现。通过node.js与nosql数据库的使用,后台开发也将具有更高的开发效率、易部署、易维护,为相关技术的发展与推广提供实现案例。
html5标准是由w3c组织制定的新一代html标准,通常所说的html5技术包括html5,css3,javascript等,html5标准目前依旧处于制定中,相关进展可以在w3c的官方网站浏览。
html5标准大大强化了html的功能与表现力,目前主要的功能有:canvas、svg、audio、video、本地存储、workers、webgl、websocket、设备调用、文件操作、全屏接口、大量的新增表单等。开发人员可以通过canvas标签以及相应的api进行画图操作;可以通过video标签播放视频文件;可以通过文件接口进行本地的文件操作;可以利用webgl技术进行3d绘制;可以利用websocket实现和服务器端的双向通信等。html5的出现使得浏览器的功能更加强大,并将逐步替代flash和silverlight等ria技术。
2. 研究的基本内容、问题解决措施及方案
本课题的设计目标为多人实时交互平台,可供多人即时交互与协作,目标应用场景为多人在线会议。提供文本聊天、视频通讯、同步画板、同步便签、投票表决、数据保存等基本功能,以及文件传送、数据可视化、简易图像处理、角色登录等扩展功能。用户只需通过浏览器即可访问,输入用户名与密码即可登录。用户登录后,客户端与服务器建立websocket连接,为所有的功能提供基础的通讯保证。整个应用为单页面形式,除聊天信息显示与视频信息显示窗口外,其他功能均通过切换子页面的形式使用。
聊天功能提供多人即时文本聊天,类似于基本的qq聊天功能。视频通讯则可以提供多人即时视频交互功能。同步画板使得用户可拖拽上传图片,上传的图片即时同步显示给所有用户,所有用户均可对画板进行基本的画图操作,所有操作同步显示给其他用户。任意用户均可在同步便签页面添加/删除便签,用以添加/取消临时的会议结果。任一用户均可发起投票,在线用户参与投票,投票结果同步显示。后台服务器会对主要操作数据进行保存。
在扩展功能中,任一用户可选择文件传送给其他用户。根据输入的数据自动生成饼图、柱形图、折线图等。对基本功能中同步画板的功能增强后,可以对画板中的图片进行简易的图像处理,如:灰度化、锐化、局部放大等。根据登录的用户的角色,提供不同的权限。主要设置老板、管理员、员工等用户角色。例如:管理员登录时将会进入管理员界面,没有实际的应用功能,主要进行相关的管理,如:添加或删除用户、修改用户的用户名与密码、修改用户角色、查看并操作数据库保存的信息。老板登录时除拥有普通员工的功能外,还有投票一票否决、将员工踢出会议、禁止某位员工发言等特权。