高级用户/员工在线活动跟踪

advanced user/staff online activity tracking?

本文关键字:在线 活动 跟踪 用户 高级      更新时间:2023-09-26

我一直在寻找一个解决方案来跟踪我们网站管理区域的员工。我希望能够可靠地了解每位员工每天、每周、每月在网上(工作)的时间。有几种方法可以做到这一点,但我一直未能找到一个好的解决方案。

  • 使用时间戳和url/filename/page将每个页面加载记录到数据库中

这种方法的问题是,你如何真正知道用户在该页面上是否"活跃"。如果页面加载之间有30分钟,你不知道他们是否加载了页面,花了2分钟看了看,然后在接下来的28分钟里玩了Xbox

  • 使用javascript登录页面加载和页面卸载

这个方法会比以前的方法稍微好一点,因为你应该知道他们是否关闭了浏览器,你就可以在那里结束"会话"。然而,它仍然存在与第一个问题一样的大问题。如果他们打开页面,然后离开电脑

我知道永远不会有100%可靠的方法来跟踪这一点,尤其是如果工作人员故意试图欺骗系统。然而,在这种情况下,我正在努力获得最可靠的跟踪。

我认为使用ajax跟踪鼠标活动的方法是最好的。如果鼠标活动停止X分钟,则可以确定用户已不在。从本质上讲,你需要跟踪它,然后把鼠标在网站上活动的所有时间加起来。

有人对已经制作好的可以做到这一点的脚本有什么建议吗?如果我要建立自己的解决方案,或者建议?

您可以通过AJAX定期向后端发送心跳。此外,您还可以使用javascript记录用户的操作。您可以定义一些与心跳一起发送的规则。

示例:

Javascript AJAX每10秒心跳一次,数据如下:

data: {
    lastAction: { type: 'userMouseMoved', timestamp: 12312312313 }
}