|
var popintervalTime=5000;
|
var popintervalID = 1;
|
var messageTd = null;
|
var popcnt=1;
|
var poprecv=0;
|
|
function setMessageInnerHTML(innerHTML ){
|
|
if(innerHTML=='TRY_REQ'||innerHTML=='_NA_') {
|
messageTd.innerHTML="连接成功";
|
messageTd.style.color="#FF4035";
|
return;
|
}
|
if(innerHTML.indexOf('H=t4v1')!=-1){
|
messageTd.innerHTML="实时消息";
|
popCustWin(innerHTML);
|
}
|
else if(innerHTML.indexOf('H=')==0) {
|
messageTd.innerHTML="弹屏信息";
|
popCustWin(innerHTML);
|
}else{
|
if(messageTd!=null){
|
messageTd.innerHTML=innerHTML;
|
messageTd.style.color="#FF4035";
|
}
|
}
|
}
|
|
var pop_http_request=null;
|
var httpcnt=0;
|
|
function sendpopreq(){
|
|
var url='http://'+jshost+':'+jsport+'/v/vack';
|
$.ajax({ //请求登录处理页
|
url: url,
|
dataType: 'jsonp',
|
data: { oper: jsoper,pn:'1',ch:jsch,forward:'API',_secs_:"lcall",vtype:"V",repType:"ackjsp",ackjsp:"/jsp/WriteJsonForAPI.jsp",_log_:"0",cnt:popcnt,inte:popintervalTime,vo_id: "sendpopreq",jsonp:"callback",jsonpCallback:"flightHandler"},
|
success: function (json) {
|
|
if(typeof(json[0].popinfo.msg)!="undefined"){
|
|
poprecv=1;
|
setMessageInnerHTML(json[0].popinfo.msg);
|
|
}else{ //动态登陆模式下,判断登陆是否合法. 只有登陆非法,服务器才会推送t5v1数据包过来.
|
|
var dataArray = json[0].popinfo.split(",");//对数据进行切割
|
|
if(dataArray[0]=='H=t5v1'){
|
|
alert("动态登录注册包:"+json[0].popinfo);//本行可注释
|
|
var rs=dataArray[1].replace("r=","");//解析注册状态
|
|
if(rs==1 || rs==2 || rs==3){
|
|
setMessageInnerHTML("登陆异常,请重试");
|
window.clearInterval(popintervalID);
|
}
|
if(rs==1)
|
{
|
alert("通道不存在,请查证");
|
return false;
|
|
}else if(rs==2){
|
|
alert("其它工号在该通道已经登录,请先注销");
|
return false;
|
|
}else if(rs==3){
|
|
alert("该工号在其它通道登录,请先注销");
|
return false;
|
|
}
|
}
|
}
|
},
|
error: function (str) {
|
setMessageInnerHTML("请求失败");
|
}
|
});
|
}
|
function getpopinfo(){
|
if(poprecv==0)
|
setMessageInnerHTML("连接中..");
|
else
|
setMessageInnerHTML("连接成功");
|
|
sendpopreq();
|
window.clearInterval(popintervalID);
|
popintervalID = window.setInterval(getpopinfo,popintervalTime);
|
popcnt++;
|
}
|
|
|
function webgo(){
|
|
messageTd = document.getElementById("messageTd");
|
if(messageTd==null)
|
alert("获取状态框出错,请关闭浏览器重新登录");
|
|
popintervalID = window.setInterval(getpopinfo,popintervalTime);
|
|
getpopinfo() ;
|
}
|