商务通检测访客在线状态原理

模板网 2014-09-18

商务通是如何判断访客在线状态的呢,为了探究这个问题医疗模板库(www.120muban.com)小编开始对商务通核心代码解密后的代码(使用代码格式化工具)进行了详细的分析,终于在其中找到了如下代码,这个函数就是商务通检测访客在线状态的关键代码。

复制代码 代码如下:
function LR_hcloop() {
    if (!LiveReceptionCode_isonline || !_lr_issupport_track || (LR_visitetime + 1800000) < new Date().getTime()) return;
    if (LR_cookie_test) {
        if (LR_getCookie('LR_mimiwin') != LR_Tick && LR_chatkind == 2) lrminiMin(1);
        var LR_check_data = LR_getCookie('LR_check_data');
        if (LR_check_data != null) {
            var LR_ss = LR_check_data.split("|");
            if (LR_ss.length > 4 && LR_cookie_ctick < parseInt(LR_ss[1])) {
                LR_cookie_ctick = parseInt(LR_ss[1]);
                LR_CheckImgJS1(LR_ss[0], LR_ss[2], LR_ss[3], LR_ss[4]);
                setTimeout('LR_hcloop()', 500);
                return
            }
        }
    }
    if (checkcount == -1 || !LR_inviteimgJS) {
        setTimeout('LR_hcloop()', 500);
        return
    }
    if (LR_istate == -1) {
        LR_istate = -2;
        checkcount = -1;
        LR_inviteimgJS = 0;
        LR_hcloopJS(LR_sysurl + 'JS/RefuseChatjs.aspx', 'id=' + LR_siteid + '&sid=' + LR_sid + '&lng=' + LR_lng);
        setTimeout('LR_hcloop()', 500);
        return
    }
    if (LR_cookie_test && LR_getCookie('lastinvite') != null) LR_lastinvite = LR_getCookie('lastinvite');
    if (LR_lastinvite != null) {
        if (LR_MCount1 < 5000) LR_MCount1 = 5000;
        if ((new Date().getTime() - parseInt(LR_lastinvite)) > LR_MCount1) {
            LR_lastinvite = new Date().getTime();
            LR_SetCookie('lastinvite', LR_lastinvite, 720);
            LR_inviteimgJS = 0;
            LR_hcloopJS(LR_sysurl + 'js/CheckInvitejs.aspx', 'id=' + LR_siteid + '&sid=' + LR_sid + ((LR_GetObj('LRMINIWIN') != null && LR_GetObj('LRMINIWIN').style.display == 'none') ? ('&oid=' + LR_maxoid) : ''))
        }
    }
    setTimeout('LR_hcloop()', 500)
}

通过这段代码我们可以发现,商务通设置了一个定时器,每隔0.5秒运行一次LR_hcloop函数,这个函数的作用是向商务通服务器发送访客当前状态的信息。

通过浏览器的调试功能我们就能一目了然了。

浏览器调试窗口截图:

商务通检测访客在线状态原理

商务通检测访客在线状态原理

相关文章

  1. php商务通跳转代码

    写一段商务通跳转代码,要求: 1)保证打开的是http://lkt.zoosnet.net/LR/chat.aspx?from=LKT33156511 2)保证商务通中记录来源是自己的姓名拼音。 可以使用PHP跳转来实现,/swt/index.php代码如下: 复制代码 代码如下: ?php $from = isset($_GET[from])?$_

  2. 网站商务通访客留言介绍

    访客留言当所有的客服离线以后,如果有访客请求对话,系统会转到留言界面,当客服再次登录软件时,系统会提示客服有多少条留言没有处理,客服点击访客留言的按钮可以处理留言的信息。 如(图1); 图1 可以对留言进行分类查找,如(图2); 图2 也可以对留言

  3. 商务通打开对话窗口容错代码

    在某些情况下,页面加载商务通JS代码失败,导致访客点击咨询按钮无法进入商务通对话窗口,下面医疗模板库为大家整理了一段代码,可以防止因商务通加载失败导致访客无法打开对话窗口这种情况的发生。 完整代码如下: 复制代码 代码如下: script type=text/jav

  4. 关于商务通无轨迹的解决方案

    很久以前做医院网络营销 使用到商务通 经常无法统计到患者的准确来路.今天一个朋友做此行求助于我.我正好也没事就帮他解决了下. 首先分析 通过很多年的医院网络营销经验然后测试后看到 1、商务通给的JS上面点击咨询后都是有来路的 2、你用商务通给你的链接都

  5. 网站商务通LR_RefuseChat函数详解

    前面的文章中已经为大家介绍了 商务通核心函数库解密格式化后的代码 ,那么今天就带大家详细的分析一下商务通中的一个函数LR_RefuseChat,LR_RefuseChat函数的作用是拒绝邀请。 详细代码如下: 复制代码 代码如下: function LR_RefuseChat() { if (LR_gstate

随机推荐

  1. php商务通跳转代码

    写一段商务通跳转代码,要求: 1)保证打开的是http://lkt.zoosnet.net/LR/chat.aspx?from=LKT33156511 2)保证商务通中记录来源是自己的姓名拼音。 可以使用PHP跳转来实现,/swt/index.php代码如下: 复制代码 代码如下: ?php $from = isset($_GET[from])?$_

  2. 网站商务通访客留言介绍

    访客留言当所有的客服离线以后,如果有访客请求对话,系统会转到留言界面,当客服再次登录软件时,系统会提示客服有多少条留言没有处理,客服点击访客留言的按钮可以处理留言的信息。 如(图1); 图1 可以对留言进行分类查找,如(图2); 图2 也可以对留言

  3. 商务通打开对话窗口容错代码

    在某些情况下,页面加载商务通JS代码失败,导致访客点击咨询按钮无法进入商务通对话窗口,下面医疗模板库为大家整理了一段代码,可以防止因商务通加载失败导致访客无法打开对话窗口这种情况的发生。 完整代码如下: 复制代码 代码如下: script type=text/jav

  4. 关于商务通无轨迹的解决方案

    很久以前做医院网络营销 使用到商务通 经常无法统计到患者的准确来路.今天一个朋友做此行求助于我.我正好也没事就帮他解决了下. 首先分析 通过很多年的医院网络营销经验然后测试后看到 1、商务通给的JS上面点击咨询后都是有来路的 2、你用商务通给你的链接都

  5. 网站商务通LR_RefuseChat函数详解

    前面的文章中已经为大家介绍了 商务通核心函数库解密格式化后的代码 ,那么今天就带大家详细的分析一下商务通中的一个函数LR_RefuseChat,LR_RefuseChat函数的作用是拒绝邀请。 详细代码如下: 复制代码 代码如下: function LR_RefuseChat() { if (LR_gstate