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() ; }