Skip to content

wolfeidau/node-quotas

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

node-quotas Build Status

This module enables management of quotas in redis.

NPM NPM

API

var Quotas = require('quotas');

var config = {
  quotas: {
      emails: {limit: 100}, // limit of 100 emails for the given period
      sms: {limit: 100, expires: 3600} // limit of 100 sms' for the 3600 seconds (5 minutes)
  },
  redisUrl: 'redis://localhost',
  expires: 86400 // default expiry of 1 day
};

var quotas = new Quotas(config);

// initialise and check all the settings.
quotas.initialise();

quotas.check(12345, 'emails', function(err, result) {
    if(err) return cb(err)// do whatever

    // check the result is > 0 and let the operation through
    ...

});

features

  • Set default quotas given a unique user identifier, a type and a default value.

License

Copyright (c) 2014 Mark Wolfe released under the MIT license.

About

Manage quotas using Redis and NodeJS.

Resources

License

Stars

Watchers

Forks

Packages

No packages published