Skip to content

Commit

Permalink
added example
Browse files Browse the repository at this point in the history
  • Loading branch information
tj committed Jul 13, 2011
1 parent c09a1c6 commit 1074b78
Showing 1 changed file with 52 additions and 0 deletions.
52 changes: 52 additions & 0 deletions examples/video.js
@@ -0,0 +1,52 @@

var kue = require('../');

// create our job queue

var jobs = kue.createQueue();

// start redis with $ redis-server

// create some jobs at random,
// usually you would create these
// in your http processes upon
// user input etc.

function create() {
var name = ['tobi', 'loki', 'jane', 'manny'][Math.random() * 4 | 0];
console.log('- creating job for %s', name);
jobs.create('video conversion', {
title: 'converting ' + name + '\'s to avi'
, user: 1
, frames: 200
}).save();
setTimeout(create, Math.random() * 3000 | 0);
}

create();

// process video conversion jobs, 3 at a time.

jobs.process('video conversion', 3, function(job, done){
var frames = job.data.frames;

function next(i) {
// pretend we are doing some work
convertFrame(i, function(err){
if (err) return done(err);
// report progress, i/frames complete
job.progress(i, frames);
if (i == frames) done()
else next(i + 1);
});
}

next(0);
});

function convertFrame(i, fn) {
setTimeout(fn, Math.random() * 100);
}

// start the UI
kue.app.listen(3000);

0 comments on commit 1074b78

Please sign in to comment.