diff --git a/plugins/getInstantAnswer.js b/plugins/getInstantAnswer.js new file mode 100644 index 0000000..8250fda --- /dev/null +++ b/plugins/getInstantAnswer.js @@ -0,0 +1,40 @@ +var Promise = require('promise'); +var DDG = require('node-ddg-api').DDG; + +module.exports = function(config) { + + var ddg = new DDG('kulmapaikka-ircbot'); + + var getAnswer = function(queryText) { + var promise = new Promise(function(resolve, reject) { + ddg.instantAnswer(queryText, {skip_disambig: '0'}, function(error, response) { + if(!error) { + var str = ''; + if(response.AbstractText !== '') { + var text = ''; + if(response.AbstractText.length > 350) { + text = response.AbstractText.substring(0, 350-response.AbstractURL.length) + '...'; + } else { + text = response.AbstractText; + } + + str = 'Vastaus: ' + text + '" | ' + response.AbstractURL; + resolve(str); + } + else if(response.RelatedTopics.length > 0) { + str = 'Vastaus: "' + response.RelatedTopics[0].Text + '" | ' + response.RelatedTopics[0].FirstURL; + resolve(str); + } else { + reject(); + } + } else { + reject(); + } + }); + + }); + return promise; + }; + + return getAnswer; +}; \ No newline at end of file