您好, 访客   登录/注册

第三代基于Java的校园即时通讯工具的设计与实现

来源:用户上传      作者:

  摘 要
  当前,高校普遍使用微信、QQ、钉钉等软件作为教学办公联络的通讯工具,但许多功能不能满足高校教学工作的需求,图书馆作为学生的“第二课堂”,有许多譬如查询、预约等需求不能在商业通讯软件得到满足,故本文根据校教学工作及图书馆服务工作中遇到的实际需求设计校园即时通讯系统,以适应高校教学和图书馆服务应用的需要。
  关键词
  高校;高校图书馆;校园即时通讯工具
  中图分类号: G252                     文献标识码: A
  DOI:10.19694/j.cnki.issn2095-2457 . 2020 . 18 . 55
  1 即时通讯
  即时通讯(Instant Messaging,简称IM),是基于互联网的实时通讯系统,支持两人或多人在各类通讯终端上使用网络进行信息传递、语音视频通话、收发图片文件等。在当今时代移动互联网的高度信息化、智能终端的快速普及下,各类IM产品已成为人们生活中的必备品,同时在各高校教学、管理、服务、联络中,IM也承担着不可替代的角色。目前主流的商业IM,如微信、QQ、钉钉等,各自具备不同的特色功能和应用场景,如微信偏向于熟人社交、QQ的用户群体更年轻化、钉钉主打办公协同,其中微信作为目前国内用户数量最多的IM,更是已成长为一个生态型产品。
  但是,这些商业IM用作学校内部通讯时,除了难以确保信息和材料的安全机密,在功能设计方面,商业IM没有能完全贴合高校的教学管理,如需要时常发布通知和文件、学生分组教学等应用环境,微信没有群文件上传功能、QQ有过多的娱乐性功能等等。因此,设计一款以符合高校实际应用需求为核心,同时又尊重用户使用习惯、降低用户学习成本的IM,既可以避免商业IM不必要的附加功能和泄密的隐患,又可以提高办公和沟通效率、提升高校数字化管理水平。
  高校图书馆承担着为教学和科研服务的重要职能,是学生的第二课堂,也是学生汲取知识的重要基地,在网络科技信息高速发展的今天,即时通讯服务工具的重要性更大,可以及时为教师和学生提供优质到位的服务。
  2 校园即时通讯工具功能设计
  本文讨论和设计的校园即时通讯工具,在操作界面、操作流程上将以微信为模板,以帮助教职工和学生尽快上手。功能结构上保留微信的IM核心功能,不再设置如游戏、附近的人、购物等生态型功能。
  2.1 IM软件功能结构
  2.2 特色功能设计
  2.2.1 身份ID绑定
  本人所讨论的校园即时通讯工具,目标用户主要为在校教师和学生。在用户第一次下载注册IM账号时,手机号注册与教工号/学生号进行绑定,自动识别所属岗位/班级,生成IM自身的ID号,在登录或添加好友时,支持以手机号/ID号/教工号/学生号进行操作。为保护教师和学生的个人账号隐私,在未成为好友时,仅可查看到ID号,互为好友后,用户可自行设置是否开放自己的手机号,教工号/学生号仅可自己查看,不会出现好友信息的展示内容中。在用户离退休/毕业等其他原因离校时,不会清除好友信息、群组信息、聊天内容等账号记录,但会根据在校状态对功能进行部分限制,如“我的图书馆”功能中,因毕业离校的用户,不再支持图书馆的查询/预约等服务。
  2.2.2 智能客服助手
  用戶可通过通讯录中“我的图书馆”进入图书馆专项服务,以“智能客服助手”为统一入口,以用户绑定的教工号/学生号关联关系为基础,集成图书查询、借还、预约服务,并具备在图书馆服务中常见问题解答的功能,用户输入关键词可自动回复指定答案,也可点击人工服务,直接转到图书馆服务电话。目前大部分高校图书馆已开通预约座位的服务,多数以嫁接微信平台为主,在基于教工号/学生号关联关系的基础上,将得到更好应用。
  2.2.3 消息已读通知
  校园即时通讯工具的产品定位,是用于高校教学办公和图书馆服务为主,消息已读回执可有效保障各类通知的有效传达。消息已读回执,就是在双方聊天时,如果接收方看到了发送方新发的信息,这条消息在发送方这端就会标为“已读”,否则将是“未读”。接收消息主要有两个场景:会话列表与聊天主界面,因此在发送回执的时候也要根据场景分成两种情况,在会话列表中,不能将消息状态置为已读,只有打开聊天主界面,并且此条消息在屏幕中时,才可以发送回执。因此,在用户打开主界面时,需要判断有哪些消息是处于未读状态并且是处于当前屏幕上的,将这些状态的回执发给对方。在群聊会话中,对于发送方发送的任何一条群消息,不仅需要知道这条消息有多少人已读多少人未读,并且能够查看具体未读用户的列表。
  2.2.4 群主/管理员权限设置
  群聊会话的创建人自动成为群主,群主可以设置管理员,可以转让群主,转让后自动成为普通群员。群主删除退出群聊后,第一个加入群聊/成为管理员的用户,自动成为群主。群主拥有群昵称、群公告、群文件、群相册、群人员管理等等一系列群管理的特殊权限,群主可以设置管理员拥有的权限。
  2.2.5 群文件/群相册上传管理
  在高校的教学工作中,除了通知性的消息内容,还有许多文件下达工作、教学视频的传输,以及大量学生作业的上传下载。在群聊会话中,可以上传群文件及群相册,二者皆可由群主或拥有权限的管理员设置是否全员可上传,或仅限管理权限者上传内容,普通群成员仅可上传/管理自己上传的内容,管理权限者可操作所有群文件/群相册内容。开放关闭上传权限,一方面可避免在非作业收取时间,普通群成员对群文件的错误操作,另一方面可作为作业上传开放和截止时间的控制方式。管理权限者可批量管理群文件/群相册内容,管理权限包括删除、下载、收藏、转发等。   2.2.6 海报功能
  本文所搭建的校园即时通讯工具,主要是以微信为使用模板的消息格式和类型,图片消息与文字消息不能同时发送,在微信中图文消息需要在收藏功能中编辑为“笔记”类型方可发送,并且在聊天页面中无法直接展示全部内容,需要用户点开“笔记”方可查阅。但这种设定在校园活动的应用场景中无法满足“图片+文字+二维码+链接”等多个消息类型复合发送的需求,故在本通讯工具中,增加“图片+文字”、“文字+视频”组合的富文本消息格式,在聊天页面下拉菜单中增加“海报”功能,即创建富文本消息,避免富文本消息与普通图片消息、文字消息的格式冲突。
  2.2.7 收藏功能
  与微信仅可收藏消息内容相区别,扩展收藏类型,实现消息内容、海报内容、朋友圈内容的全渠道收藏,并可在收藏夾内分渠道、分类进行查看。其中富文本消息可在收藏夹内编辑已收藏的海报内容,再进行复制、转发等操作。
  3 系统设计
  IM系统在互联网初期即存在,其基础技术架构随着互联网的发展也不断更新迭代,从早期的CS、P2P架构,到现在后台已经演变为一个复杂的分布式系统,涉及移动端、网络通信、协议、安全、存储和搜索等技术的方方面面。
  3.1 系统架构
  见上图2。
  3.2 架构功能介绍
  使用Google Guice+Netty+Jetty框架,基于Redis+MySQL架构,分库分表支持高并发。对称高机高并发架构,支持1024台对称集群。全面支持注入,实现动态API设置绑定过和文档自动生成。长短链结合,此项技术在微信和QQ中得到了大规模的应用,可极大地提供系统在高负荷下的反应速度。使用PB和JSON为基础的传输编码技术,照顾到传输的效率和灵活性,各种语言开发都比较方便。IM系统中最核心的部分是消息系统,消息系统中最核心的功能是消息的同步、存储和检索,构建基于Tablestore Timeline的现代消息系统,能够同时支持消息系统的众多高级特性,包括“多端同步”、“消息漫游”和“在线检索”。
  4 结语
  人们的生活和工作都具备了数字化的特征,也带来了更多生活和工作方式的重大变化,数字化教学在未来将更加普及。设计开发一款能够更加贴合高校教学生活的即时通讯系统,可以提高校园数字化水平,也具现实使用意义。
  参考文献
  [1]方宣杰,陈文生.校园即时通讯平台的设计与实现[J].信息通信,2014,(3):115-116.
  [2]许元期.数字化校园中即时通信技术的研究与应用[J].科技创业家,2013,(10):38.
转载注明来源:https://www.xzbu.com/8/view-15282728.htm