forked from Objelisks/lsystembot
/
twitterer.js
53 lines (40 loc) · 1.13 KB
/
twitterer.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
var fs = require('fs');
var path = require('path');
var request = require('request');
var authSettings;
var useCreds = function(creds) {
authSettings = creds;
};
// tweet with pictures
var updateWithMedia = function(status, canvasBuf, reply, callback) {
var form, r, url = 'https://api.twitter.com/1.1/statuses/update_with_media.json';
r = request.post(url, {
oauth: authSettings
}, callback);
form = r.form();
form.append('status', status);
if(reply !== undefined) {
form.append('in_reply_to_status_id', reply);
}
form.append('media[]', canvasBuf);
return form;
};
// get all mentions since last checked
var getMentions = function(sinceId, callback) {
var form, r, url = 'https://api.twitter.com/1.1/statuses/mentions_timeline.json';
var qs = { 'latest_results': true };
if(sinceId !== undefined) {
qs['since_id'] = sinceId;
}
console.log(qs);
r = request.get(url, {
oauth: authSettings,
qs: qs
}, callback);
return form;
};
module.exports = {
useCreds : useCreds,
tweet : updateWithMedia,
getMentions : getMentions
}