一种基于web网页的即时通信方法及装置的制造方法

文档序号:9870041阅读:325来源:国知局
一种基于web网页的即时通信方法及装置的制造方法
【技术领域】
[0001] 本发明设及通信技术领域,特别设及一种基于web网页的即时通讯方法及装置。
【背景技术】
[0002] 在现有技术中,服务器端向浏览器端发送通知的运种通讯模式在J2趾(Java 2 Platform化te巧rise Edition,Java2平台企业版)应用中很常见,通常使用采用RMI (Remote Method Invocation,远程接口调用)、C0RBA(Common Object Request Broker Architecture,通用对象请求代理体系结构)或者自定义TCP (Transmission Control Protocol传输控制协议)/IP( Internet Protocol,互联网协议)信息的applet来实现。
[0003] 现有技术的缺点在于:在实现页面刷新、消息收发时需要完全采用applet展示内 容,效率较低。

【发明内容】

[0004] 本发明实施例提供了一种基于web网页的即时通讯方法及装置,W利用化Shlet实 现服务器与浏览器之间的信息交互。
[0005] 第一方面,本发明提供了一种基于web网页的即时通信方法,包括:
[0006] 利用Pushlet中的Servlet接口接收至少一个用户端使用ajax-pushlet-client. js分别发送的监听请求;
[0007] 根据该至少一个用户端的监听请求向response. get0u1:putStream()发送listen_ ack. xml文件,W执行对该至少一个用户端的监听;
[000引在监听到用户发起端发起的消息内容时,response. get0utputStream()根据该消 息内容携带的目的地址,将该消息内容发送给用户接收端。
[0009] 优选地,所述将该消息内容发送给用户接收端,包括:
[0010] 判断用户接收端是否在线,若在线,则将该消息内容发给用户接收端,若不在线, 则存储该消息内容,并将提醒表的状态设置为0,直到监测到该用户接收端在线时,将该消 息内容发送给该用户接收端。
[00川优选地,
[0012] 在所述利用化Shlet中的Servlet接口获取至少一个用户端的监听请求之后,进一 步包括:向每一个用户端的日^'日义-911311161:-(3116]11:〇'3分别发送'6;1^'6 311-日。4.邸11,^使每一 个用户端利用ajax-pushlet-client. js中的SetTimeOut0在达到re打esh-ack.xml中携带 的目标时间段时,向化shlet中的Servlet接口发送刷新请求;
[0013] 所述判断用户接收端是否在线,包括:确定距离接收到该用户接收端发送的刷新 请求的当前时间段与目标时间段的大小,若当前时间段不大于该目标时间段,则确定该用 户接收端在线,若当前时间段大于该目标时间段,则确定该用户接收端不在线。
[0014] 优选地,
[0015] 进一步包括:获取至少一个用户端的联系人列表;
[0016] 在所述将该消息内容发送给用户接收端之前,进一步包括:判断用户接收端是否 在用户发起端的联系人列表中,若在,则执行所述将该消息内容发送给用户接收端,否则, 拒绝发送该用户发起端发送的消息内容。
[0017] 第二方面,本发明还提供了一种基于web网页的即时通信装置,包括:
[001引接收单元,用于利用化shlet中的Servlet接口接收至少一个用户端使用a jax-pushlet-client. js分别发送的监听请求;
[0019] 发送单元,用于根据该至少一个用户端的监听请求向response. getOu化UtStream 0发送listen_ack.xml文件,W执行对该至少一个用户端的监听;
[0020] 第一处理单元,用于在监听到用户发起端发起的消息内容时,利用 response. getOu化utStream()根据该消息内容携带的目的地址,将该消息内容发送给用户 接收端。
[0021] 优选地,所述第一处理单元,具体用于判断用户接收端是否在线,若在线,则将该 消息内容发给用户接收端,若不在线,则存储该消息内容,并将提醒表的状态设置为0,直到 监测到该用户接收端在线时,将该消息内容发送给该用户接收端。
[00剖优选地,
[0023] 进一步包括:第二处理单元,用于向每一个用户端的日^'日义-9113111日1:-(311日]11:〇'3分 别发送 refresh-ack.xml,W 使每一个用户端利用ajax-pushlet-client.js 中的 SetTimeOut0在达到re打esh-ack.xml中携带的目标时间段时,向化shlet中的Servlet接 口发送刷新请求;
[0024] 所述第一处理单元,具体用于确定距离接收到该用户接收端发送的刷新请求的当 前时间段与目标时间段的大小,若当前时间段不大于该目标时间段,则确定该用户接收端 在线,若当前时间段大于该目标时间段,则确定该用户接收端不在线。
[00巧]优选地,进一步包括:
[0026] 获取单元,用于获取至少一个用户端的联系人列表;
[0027] 第=处理单元,用于判断用户接收端是否在用户发起端的联系人列表中,若在,贝U 执行所述将该消息内容发送给用户接收端,否则,拒绝发送该用户发起端发送的消息内容。 [00%]本发明实施例提供了一种基于web网页的即时通讯方法及装置,通过利用化Shlet 实现对浏览器上用户端的监听,并在监听到用户发起端发起消息内容时,无需采用applet 的帮助,直接将消息内容推送给用户接收端,实现了浏览器与服务器端的信息交互,W及提 高了信息交互的效率。
【附图说明】
[0029] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可W根据 运些附图获得其他的附图。
[0030] 图1是本发明一个实施例提供的一种方法流程图;
[0031 ]图2是本发明一个实施例提供的另一种方法流程图;
[0032]图3是本发明一个实施例提供的装置所在设备的硬件架构图;
[0033] 图4是本发明一个实施例提供的一种装置结构示意图;
[0034] 图5是本发明一个实施例提供的另一种装置结构示意图。
【具体实施方式】
[0035] 为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例 中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员 在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036] 如图1所示,本发明实施例提供了一种基于web网页的即时通信方法,该方法可W 包括W下步骤:
[0037] 步骤101:利用化shlet中的Servlet接口接收至少一个用户端使用a jax-pushlet-client. js分别发送的监听请求。
[0038] 步骤102:根据该至少一个用户端的监听请求向response. get0u1:putStream()发 送listen_ack.xml文件,W执行对该至少一个用户端的监听。
[0039] 步骤103:在监听到用户发起端发起的消息内容时,response. getOutputStream() 根据该消息内容携带的目的地址,将该消息内容发送给用户接收端。
[0040] 根据上述实施例方案,通过利用化Shlet实现对浏览器上用户端的监听,并在监听 到用户发起端发起消息内容时,无需采用applet的帮助,直接将消息内容推送给用户接收 端,实现了浏览器与服务器端的信息交互,W及提高了信息交互的效率。
[0041] 在本发明一个实施例中,为了保证用户接收端能够接收到该消息内容,将该消息 内容发送给用户接收端,包括:判断用户接收端是否在线,若在线,则将该消息内容发给用 户接收端,若不在线,则存储该消息内容,并将提醒表的状态设置为0,直到监测到该用户接 收端在线时,将该消息内容发送给该用户接收端。
[0042] 在本发明一个实施例中,可W通过如下方式判断用户接收端是否在线:
[0043] 在所述利用化Shlet中的Servlet接口获取至少一个用户端的监听请求之后,进一 步包括:向每一个用户端的日^'日义-911311161:-(3116]11:〇'3分别发送'6;1^'6 311-日。4.邸11,^使每一 个用户端利用ajax-pushlet-client. js中的SetTimeOut0在达到re打esh-ack.xml中携带 的目标时间段时,向化shlet中的Servlet接口发送刷新请求;
[0044] 所述判断用户接收端是否在线,包括:确定距离接收到该用户接收端发送的刷新 请求的当前时间段与目标时间段的大小,若当前时间段不大于该目标时间段,则确定该用 户接收端在线,若当前时间段大于该目标时间段,则确定该用户接收端不在线。
[0045] 在本发明一个实施例中,由于即时通信聊天是针对好友关系的两个或多个用户端 之间进行通信的,因此,进一步包括:获取至少一个用户端的联系人列表;
[0046] 在所述将该消息内容发送给用户接收端之前,进一步包括:判断用户接收端是否 在用户发起端的联系人列表中,若在,则执行所述将该消息内容发送给用户接收端,否则, 拒绝发送该用户发起端发送的消息内容。
[0047] 为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本 发明作进一步地详细描述。
[0048] 如图2所示,本发明实施例提供了一种基于web网页的即时通信方法,其中,该方法 预先进行如下设计:
[0049] 框架;hibernate<stl: chsdate isrocdate = "False"w: St = "on"year= "1899" day="30"islunardate="False"month="12"
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1