changes-stream

    2.2.0 • Public • Published

    changes-stream

    build status

    A fault tolerant changes stream with builtin retry HEAVILY inspired by follow. This module is a Readable Stream with all of the fun stream methods that you would expect.

    install

    npm install changes-stream --save

    Options

    So changes-stream can take a fair bit of options in order so that you can fully customize your _changes request. They include the following:

    {
      db: 'http://localhost:5984/my_db', // full database URL
      feed: 'continuous', // Can also be longpoll technically but not currently implemented
      filter: 'docs/whatever', // Can be a defined couchdb view, a local filter function or an array of IDs
      inactivity_ms: 60 * 60 * 1000, // time allow inactivity before retrying request
      timeout: undefined, // How long couchdb should wait for a change to show up before closing the feed. in milliseconds
      requestTimeout: 2 * 60 * 1000, // http timeout
      agent: undefined, // http agent
      since: 0, // update sequence to start from, 'now' will start it from latest
      heartbeat: 30 * 1000, // how often we want couchdb to send us a heartbeat message
      style: 'main_only', // specifies how many revisions returned all_docs would return leaf revs
      include_docs: false, // whether or not we want to return the full document as a property
      query_params: {}, // custom arbitrary params to send in request e.g. { hello: 'world' }
      use_post: false // switch the default HTTP method to POST (cannot be used with a filter array)
    }

    Example

    var ChangesStream = require('changes-stream');
     
    var changes = new ChangesStream('http://localhost:5984/my_database');
     
    changes.on('readable', function () {
      var change = changes.read();
    });
     

    Install

    npm i changes-stream

    DownloadsWeekly Downloads

    2,098

    Version

    2.2.0

    License

    MIT

    Last publish

    Collaborators

    • mmalecki
    • jcrugzz