chrome-historian

1.8.0 • Public • Published

Chrome Historian

A better wrapper for the Chrome History API that also merges in downloads from the Chrome Download API.

This is the secret sauce behind Better History

NPM version Build Status

Managing a day's history

The Chrome History API has been known to return visits that do not fall between the requested dates and visits that are out of order. Querying a day's history via Chrome Historian will guarantee all returned visits occured on the requested day and are in descending order.

  dayHistorian = new Historian.Day(new Date())
 
  dayHistorian.fetch (visits) ->
    if visits
      console.log(visits)
    else
      console.log('Feature is not supported in your browser version')
 
  dayHistorian.destroy()
 
  dayHistorian.destroyHour(22)

Searching history

The Chrome History API has been known to return very generous matches (not in a good way). Searching via Chrome Historian will guarantee all returned visits have a title or url that partially matches the query.

  searchHistorian = new Historian.Search('gmail')
 
  searchHistorian.fetch maxResults: 10000(visits) ->
    console.log(visits)
 
  # The search historian caches the last search via chrome's local storage api 
  searchHistorian.expireCache()
 
  # It's important to use these to delete because they both update the 
  # previous search cache to reflect the removals 
  searchHistorian.deleteUrl()
  searchHistorian.destroy()

Device Sessions

Easily interaction with Device browser sessions that are logged into the same Google account

  historian = new Historian.Devices()
 
  historian.fetch (devices) ->
    if devices
      console.log(devices) # ['Nexus 5', 'Desktop', 'Nexus 7'] 
    else
      console.log('Feature is not supported in your browser version')
 
    # ...a bit later 
 
    if devices
      historian.fetchSessions(devices[0](sessions) ->
        console.log(sessions)
        # [{ 
        #   sessionId: 'session_sync43908482591051-257446.1' 
        #   sites: [] 
        # }] 

Simple deleting

  Historian.deleteUrl('http://google.com')
 
  Historian.deleteDownload('http://google.com/file.zip')
 
  Historian.deleteRange
    startTime: new Date('Aug 20, 2014')
    endTime: new Date('Aug 30, 2014')
 
  Historian.deleteAll()

Readme

Keywords

none

Package Sidebar

Install

npm i chrome-historian

Weekly Downloads

1

Version

1.8.0

License

MIT

Last publish

Collaborators

  • roykolak