From e036c111525c351f162625e59fbe37d1af3c60b9 Mon Sep 17 00:00:00 2001 From: Mahdi Dibaiee Date: Sun, 5 Jul 2015 15:38:07 +0430 Subject: [PATCH] Fix long-polling --- build/index.js | 6 +++--- build/poll.js | 12 ++---------- lib/poll.js | 13 ++----------- package.json | 2 +- 4 files changed, 8 insertions(+), 25 deletions(-) diff --git a/build/index.js b/build/index.js index fd5c228..736862c 100644 --- a/build/index.js +++ b/build/index.js @@ -188,13 +188,13 @@ var Bot = (function (_EventEmitter) { update.forEach(function (res) { var text = res.message.text; - if (text.startsWith('/')) { + var selfUsername = '@' + _this2.info.username; + + if (text.startsWith('/') && text.indexOf(selfUsername) > -1) { // Commands are sent in /command@thisusername format in groups var regex = new RegExp('(/.*)@' + _this2.info.username); text = text.replace(regex, '$1'); res.message.text = text; - - console.log(res.message.text); } var ev = _this2._userEvents.find(function (_ref) { diff --git a/build/poll.js b/build/poll.js index c080f47..89e41a7 100644 --- a/build/poll.js +++ b/build/poll.js @@ -7,21 +7,13 @@ exports['default'] = poll; function poll(bot) { return bot.api.getUpdates(bot.update).then(function (response) { - var again = wait(bot.update.timeout * 1000, bot).then(poll); if (!response.result.length) { - return again; + return poll(bot); } bot.emit('update', response.result); - return again; + return poll(bot); }); } -var wait = function wait(miliseconds, value) { - return new Promise(function (resolve) { - setTimeout(function () { - resolve(value); - }, miliseconds); - }); -}; module.exports = exports['default']; diff --git a/lib/poll.js b/lib/poll.js index a530e7b..8ff964d 100644 --- a/lib/poll.js +++ b/lib/poll.js @@ -1,19 +1,10 @@ export default function poll(bot) { return bot.api.getUpdates(bot.update).then(response => { - const again = wait(bot.update.timeout * 1000, bot).then(poll); if (!response.result.length) { - return again; + return poll(bot); } bot.emit('update', response.result); - return again; + return poll(bot); }); } - -const wait = (miliseconds, value) => { - return new Promise(resolve => { - setTimeout(() => { - resolve(value); - }, miliseconds); - }); -}; diff --git a/package.json b/package.json index 3036faa..b9a5f16 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "telegram-api", - "version": "0.4.62", + "version": "0.4.63", "description": "Control Telegram bots easily using the new Telegram API", "main": "index.js", "scripts": {