Skip to content

Instantly share code, notes, and snippets.

@mattneary
Created November 14, 2015 08:14
Show Gist options
  • Save mattneary/a4110622dd00a29b875a to your computer and use it in GitHub Desktop.
Save mattneary/a4110622dd00a29b875a to your computer and use it in GitHub Desktop.
var http = require('http');
var https = require('https');
var GROUP = '10237173'; // Get from another API call
var record = [];
function getMessages(token, res, offset) {
https.get("https://api.groupme.com/v3/groups/" + GROUP + '/messages?limit=100&token=' + token + (offset ? '&before_id=' + offset : ''), function (apiRes) {
var buffer = [];
apiRes.on('data', function (chunk) {
buffer.push(chunk);
});
apiRes.on('end', function () {
var data = JSON.parse(buffer.join(''));
var render = data.response.messages;
record = record.concat(render);
if (record.length < data.response.count) {
var ms = data.response.messages;
getMessages(token, res, ms[ms.length - 1].id);
} else {
res.write(JSON.stringify(record));
res.end();
}
});
});
}
// Make an app through GroupMe developer which points to localhost:3000
http.createServer(function (req, res) {
if (req.url.indexOf('access_token') != -1) {
var token = req.url.split('=')[1];
res.writeHead(200, {'Content-Type': 'text/plain'});
getMessages(token, res);
} else {
res.end();
}
}).listen(3000);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment