forked from GitHub/dbot
921da917a4
* Command API function to addHook(command, callback) * Commands open to callbacks must return information or indicate failed completion by return false * Hooks to be added in module onLoad * Command loop checks for available hooks and return state, then applies with module scope. * onLoad running moved to end of all module loading to facilitate this without order problems * Added example for ~qadd dent
46 lines
1.2 KiB
JavaScript
46 lines
1.2 KiB
JavaScript
var request = require('request');
|
|
_ = require('underscore')._;
|
|
|
|
var dent = function(dbot) {
|
|
this.dbot = dbot;
|
|
|
|
this.api = {
|
|
'post': function(content) {
|
|
var username = dbot.config.dent.username,
|
|
password = dbot.config.dent.password,
|
|
info,
|
|
auth = "Basic " +
|
|
new Buffer(username + ":" + password).toString("base64");
|
|
|
|
request.post({
|
|
'url': 'http://identi.ca/api/statuses/update.json?status=' +
|
|
content,
|
|
'headers': {
|
|
'Authorization': auth
|
|
}
|
|
},
|
|
function(error, response, body) {
|
|
console.log(body);
|
|
}.bind(this));
|
|
}
|
|
};
|
|
|
|
this.commands = {
|
|
'~dent': function(event) {
|
|
this.api.post(event.input[1]);
|
|
event.reply('Dent posted (probably).');
|
|
}
|
|
};
|
|
this.commands['~dent'].regex = [/^~dent (.+)$/, 2];
|
|
|
|
this.onLoad = function() {
|
|
dbot.api.command.addHook('~qadd', function(key, text) {
|
|
this.api.post(key + ': ' + text);
|
|
}.bind(this));
|
|
}.bind(this);
|
|
};
|
|
|
|
exports.fetch = function(dbot) {
|
|
return new dent(dbot);
|
|
};
|