feat: customizable message for required params

This commit is contained in:
Ali Movahedi 2017-09-12 13:39:58 +04:30
parent 4c841c87e8
commit 88af10a8b4

View File

@ -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;
});