Neurologically Paralyzing Mouseovers

    actively

    1.0.1 • Public • Published

    Actively

    Actively track user engagement and know when they move away from your page.

    npm version

    Install

    npm install --save actively
    

    Example - basic

    import Actively from 'actively';
    const active = new Actively({
      timeIntervalEllapsedCallbacks: [],
      absoluteTimeEllapsedCallbacks: [],
      browserTabInactiveCallbacks: [],
      browserTabActiveCallbacks: [],
      idleTimeoutMs: 3000,
      checkCallbacksIntervalMs: 250
    })
     
    window.addEventListener('mousemove', active.startTimer)
    window.addEventListener('beforeunload', active.stopTimer)

    Example - Advanced

    import Actively from 'actively';
    const active = new Actively({
      timeIntervalEllapsedCallbacks: [],
      absoluteTimeEllapsedCallbacks: [],
      browserTabInactiveCallbacks: [],
      browserTabActiveCallbacks: [],
      idleTimeoutMs: 3000,
      checkCallbacksIntervalMs: 250
    })
     
    window.addEventListener('mousemove', active.startTimer)
    window.addEventListener('beforeunload', active.stopTimer)
     
    const cb = {
      multiplier: time => time + (60 * 5 * 1000), // Every 5 minutes
      timeInMilliseconds: 0,
      callback: () => {
        console.log("Doing Something every 5 minutes")
      }
    }
    active.addTimeIntervalEllapsedCallback(cb)
     
    const callback = () => console.log('Browser going inactive');
    active.addBrowserTabInactiveCallback(callback)
     
    var ActiveTimeIntervals = active.times; // array of time periods with user activity

    API

    Public methods

    running Bool

    Shows is user is active on current webpage and the timer is running.

    times Array

    Array of timeDurations when the user was active.

    Each time duration is

     Object({
          start: Date,
          stop: Date
        })

    idle Bool

    True when the user is inactive on current webpage and the timer is stopped.

    currentIdleTimeMs Integer

    Time elapsed(in miliseconds) since the user was last active.

    idleTimeoutMs Integer

    The idle time for a user after which timer stops and user is marked as inactive.

    Public Demo

    Demo coming soon!

    Used in production by Gratia

    License

    MIT © Gaurav Koley, 2020

    Keywords

    none

    Install

    npm i actively

    DownloadsWeekly Downloads

    2

    Version

    1.0.1

    License

    MIT

    Unpacked Size

    10.6 kB

    Total Files

    4

    Last publish

    Collaborators

    • arkokoley