From d6ef1f9d97ee4d22c979895ed112d9419768ac11 Mon Sep 17 00:00:00 2001 From: icdevin Date: Mon, 25 Apr 2016 16:03:36 +0900 Subject: [PATCH] Fixes stream end event never being called For writable streams, like `http.ClientRequest`, there is no `end` event, only `finish`. Thus, `req.end` was never called and never sending a response. This resulted in a nasty bug for WebHook users that basically rendered the library useless because if Telegram doesn't receive a response from the bot server, it will continue to queue and send requests until it does, or until 24 hours have passed. --- src/telegramWebHook.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/telegramWebHook.js b/src/telegramWebHook.js index 6bf265f..19c209d 100644 --- a/src/telegramWebHook.js +++ b/src/telegramWebHook.js @@ -71,7 +71,7 @@ class TelegramBotWebHook { } else if (req.method === 'POST') { req .pipe(bl(this._parseBody)) - .on('end', () => res.end('OK')); + .on('finish', () => res.end('OK')); } else { // Authorized but not a POST debug('WebHook request isn\'t a POST');