Console log activity | By Vijay Pancholi
<p>🟢 Anti-idle + Idle logger started.</p>
<p>✔ Real user activity detected. Timer reset.</p>
<p>✔ Real user activity detected. Timer reset.</p>
<p>🌀 Auto-mouse triggered to prevent 2 min idle detection!</p>
<p>⏳ Logged: You have been idle for 10 minute(s)...</p>
<p>✔ Real user activity detected. Timer reset.</p>
<p>✔ Real user activity detected. Timer reset.</p>
<p>🌀 Auto-mouse triggered to prevent 2 min idle detection!</p>
<p>✔ Real user activity detected. Timer reset.</p>
<p>✔ Real user activity detected. Timer reset.</p>
<p>🌀 Auto-mouse triggered to prevent 2 min idle detection!</p>
<p>🔔 You have accumulated 15 minutes of real idle time (logged).
<p>✔ Real user activity detected. Timer reset.
<p>✔ Real user activity detected. Timer reset.
<p>🌀 Auto-mouse triggered to prevent 2 min idle detection!
<p>⏳ Logged: You have been idle for 16 minute(s)...
<p>🔔 You have accumulated 15 minutes of real idle time (logged).
<p>✔ Real user activity detected. Timer reset.
<p>✔ Real user activity detected. Timer reset.
<p>🌀 Auto-mouse triggered to prevent 2 min idle detection!
<p>🔔 You have accumulated 15 minutes of real idle time (logged).</p>
<p>✔ Real user activity detected. Timer reset.</p>
<p>✔ Real user activity detected. Timer reset.</p>
<p>🌀 Auto-mouse triggered to prevent 2 min idle detection!</p>
<p>⏳ Logged: You have been idle for 20 minute(s)...</p>
<p>🔔 You have accumulated 15 minutes of real idle time (logged).</p>
<p>✔ Real user activity detected. Timer reset.</p>
<p>✔ Real user activity detected. Timer reset.</p>
<p>🌀 Auto-mouse triggered to prevent 2 min idle detection!</p>
<p>🔔 You have accumulated 15 minutes of real idle time (logged).</p>
<p>✔ Real user activity detected. Timer reset.</p>
<p>✔ Real user activity detected. Timer reset.</p>
<p>🌀 Auto-mouse triggered to prevent 2 min idle detection!</p>
<p>⏳ Logged: You have been idle for 24 minute(s)...</p>
<p>🔔 You have...
JavaScript
(function () {
let lastRealActivity = Date.now();
let totalIdleTime = 0;
let lastLogTime = Date.now();
const autoActionInterval = 2 * 60 * 1000; // 2 minutes
const autoTriggerBefore = autoActionInterval - 1000; // 1:59
const totalIdleLimit = 15 * 60 * 1000; // 15 mins example
let isAutoEvent = false; // IMPORTANT FIX
console.log("🟢 Anti-idle + Idle logger started.");
function recordRealActivity(e) {
if (isAutoEvent) return; // Ignore fake events
lastRealActivity = Date.now();
console.log("✔ Real user activity detected. Timer reset.");
}
// Detect REAL user activity only
["mousemove", "mousedown", "keypress", "scroll", "touchstart"]
.forEach(event => window.addEventListener(event, recordRealActivity));
// Fake safely
function fakeMouseMove() {
isAutoEvent = true; // mark: this is auto
const evt = new MouseEvent("mousemove", {
bubbles: true,
cancelable: true,
clientX: Math.floor(Math.random() * window.innerWidth),
clientY: Math.floor(Math.random() * window.innerHeight)
});
document.dispatchEvent(evt);
isAutoEvent = false; // remove flag
console.log("🌀 Auto mouse triggered (anti-idle)");
lastRealActivity = Date.now(); // reset idle timer
}
setInterval(() => {
const now = Date.now();
const realIdle = now - lastRealActivity;
// Accumulate REAL idle time
totalIdleTime += now - lastLogTime;
lastLogTime = now;
// Trigger fake mouse at 1:59
if (realIdle >= autoTriggerBefore) {
fakeMouseMove();
}
// Log every 2 minutes
if (realIdle >= autoActionInterval) {
const minutes = Math.floor(totalIdleTime / 60000);
console.log(`⏳ Logged Idle: ${minutes} minute(s).`);
}
// Final 15-min...
Please Whitelist JSFiddle in your content blocker.
Help keep JSFiddle free for always by one of two ways:
Whitelist JSFiddle in your content blocker (two clicks)
Go PRO and get access to additional PRO features →
Join the 4+ million users, and keep the JSFiddle dream alive.
Ad-free
All ads in the editor and listing pages are turned completely off.
Use pre-released features
You get to try and use features (like the Palette Color Generator) months before everyone else.
Fiddle collections
Sort and categorize your Fiddles into multiple collections.
Private collections and fiddles
You can make as many Private Fiddles, and Private Collections as you wish!
Console
Debug your Fiddle with a minimal built-in JavaScript console.