From 88af10a8b42d9441e40de7871d875727c975ae95 Mon Sep 17 00:00:00 2001 From: Ali Movahedi Date: Tue, 12 Sep 2017 13:39:58 +0430 Subject: [PATCH] feat: customizable message for required params --- src/index.js | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/index.js b/src/index.js index 3895f2c..d469ed3 100644 --- a/src/index.js +++ b/src/index.js @@ -117,7 +117,12 @@ export default class Bot extends EventEmitter { * gets the update * @return {object} returns the bot object */ - command(command, listener) { + command(command, customMessage, listener) { + if (!listener) { + listener = customMessage; + customMessage = {}; + } + const regex = /[^\s]+/; const cmd = command.match(regex)[0].trim(); @@ -125,6 +130,7 @@ export default class Bot extends EventEmitter { this._userEvents.push({ pattern: new RegExp(`^/${cmd}`), parse: argumentParser.bind(null, command), + customMessage, listener }); @@ -211,9 +217,16 @@ export default class Bot extends EventEmitter { const bot = this; function* getAnswer() { + const customMessage = ev.customMessage; + for (const param of requiredParams) { - const ga = new Message().to(msg.chat.id) - .text(`Enter value for ${param}`); + let ga; + if (customMessage[param]) { + ga = new Message().to(msg.chat.id).text(customMessage[param]); + } else { + ga = new Message().to(msg.chat.id) + .text(`Enter value for ${param}`); + } yield bot.send(ga).then(answer => { args[param] = answer.text; });