3
0
mirror of https://github.com/reality/dbot.git synced 2024-12-18 08:32:42 +01:00
dbot/modules/words/words.js

47 lines
1.4 KiB
JavaScript
Raw Normal View History

var Wordnik = require('wordnik');
var words = function(dbot) {
this.commands = {
'~define': function(event) {
var query = event.params[1];
2013-07-28 23:26:04 +02:00
this.wn.definitions(encodeURIComponent(query), function(err, defs) {
if(!err && defs[0]) {
event.reply(query + ': ' + defs[0].text);
} else {
event.reply('No definitions found for ' + query);
}
});
2013-07-08 13:02:27 +02:00
},
2013-12-27 17:24:16 +01:00
'~etymology': function(event) {
var query = event.params[1];
2013-12-27 17:38:59 +01:00
this.wn.etymologies(encodeURIComponent(query), {
'format': 'json'
}, function(err, defs) {
2013-12-27 17:24:16 +01:00
if(!err && defs[0]) {
2013-12-27 17:37:37 +01:00
event.reply(query + ' etymology: ' + defs[0]);
2013-12-27 17:24:16 +01:00
} else {
event.reply('No etymology found for ' + query);
}
});
},
2013-07-08 13:02:27 +02:00
'~jimble': function(event) {
event.reply(event.params[1].split('').sort(function() {
return (Math.round(Math.random()) - 0.5);
}).join(''));
}
};
2013-12-29 19:38:24 +01:00
this.commands['~jimble'].regex = [/^jimble (.+)$/, 2];
this.onLoad = function() {
this.wn = new Wordnik({
'api_key': this.config.api_key
});
}.bind(this);
};
exports.fetch = function(dbot) {
return new words(dbot);
};