Skip to content

Commit

Permalink
Merge pull request mozilla-services#304 from mozilla-services/get_roo…
Browse files Browse the repository at this point in the history
…m_session_token

Get TokBox sessionId for given room tokens.
  • Loading branch information
Natim committed Feb 25, 2015
2 parents 8d017c2 + af1bf07 commit d4caedb
Showing 1 changed file with 49 additions and 0 deletions.
49 changes: 49 additions & 0 deletions tools/get_tokbox_sessionid_for_room_token.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
var readline = require('readline');
var conf = require('../loop/config').conf;
var redis = require('redis');

var storage = conf.get('storage');
var args = process.argv.slice(2);
var verbose = args.indexOf('--verbose') !== -1;

if (storage.engine === 'redis') {
var options = storage.settings;
var client = redis.createClient(
options.port,
options.host,
options.options
);
if (options.db) client.select(options.db);

console.log('Please enter a roomToken per line. Ctrl+D to stop.');

rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
terminal: false
});

var multi = client.multi();
var roomTokens = [];

rl.on('line', function (roomToken) {
roomTokens.push(roomToken);
multi.get('room.' + roomToken);
});

rl.on('close', function() {
multi.exec(function(err, results) {
if (err) throw err;

var output = {};

for (var i=0; i < results.length; i++) {
if (results[i] !== null) {
output[roomTokens[i]] = JSON.parse(results[i]).sessionId;
}
}
console.log(JSON.stringify(output));
process.exit(0);
});
});
}

0 comments on commit d4caedb

Please sign in to comment.