oa消息管理 实时提醒

想要实现,当我给其他用户发送信息时,对方会实时收到提示音,代码如下:
[code="java"]
dwrCheck.isNewMessage("username","0",callback);

function callback(data){

if (data) {

var bghtml='sound';

bgmusic.document.getElementById("bgmusic").innerHTML=bghtml;

}

else {

}

}

Ext.Msg.alert('成功',"信息发送成功");

[/code]

这样子只能实现发送信息后如果自己有新信息会发出voice.mp3 怎么让对方听到!!!!!!

推模式是不可能的。
有如下两点解释:

1,[color=blue]从HTTP协议来说也是不可能的,因为HTTP协议是无状态(stateless)连接。连接一次后马上断开。下次需要连接再新建一个连接。[/color]

2,[color=blue]从上层来解释:b/s是请求/应答模式,没有请求就没有应答。而且b/s是无连接模式,s无法知道b是否还在线。 [/color]

Ajax每个1分钟(具体看情况而定)从后台获取是非有新消息的标志。如果有,回调函数中调用函数发出声音。

QQ是桌面软件,使用的UDP协议。使用的是socket编程,架构是client\server模式(简称C\S)

而web应用99.9%采用的是TCP协议。架构是browser\server模式(简称B\S)

两者底层的网络编程实现不同。所以在web浏览器不象桌面软件实时。

web QQ只是把时间间隔设的更短而已,其中必有服务器中转。

B\S 模式下一般是Ajax实现。这个是无疑的。