stage.leave () не покидает сцену, созданную с помощью api узла телеграфа - PullRequest
0 голосов
/ 28 мая 2020

В настоящее время я работаю над телеграмм-ботом Node, который принимает различные данные от пользователя и выполняет некоторые действия, но я получаю сообщение об ошибке, которое объясняется приведенным ниже кодом. Пожалуйста, помогите, я использую Telegraf node api.

это мастер, который я создал:

const mkConnection=new WizardScene("make_connection",ctx=>{
    ctx.reply("Enter IP address of the server (External IP):",
                Markup.inlineKeyboard(cross).extra());
    return ctx.wizard.next();
},ctx=>{
        ctx.wizard.state.ipAddress=ctx.message.text;
        ctx.reply(`IP Address:${ctx.wizard.state.ipAddress}\nEnter Username:`,
                    Markup.inlineKeyboard(cross).extra());
        return ctx.wizard.next();

},ctx=>{
        ctx.wizard.state.username=ctx.message.text;
        ctx.reply(`IP Address:${ctx.wizard.state.ipAddress}\nusername:${ctx.wizard.state.username}\nEnter Password:`,
                    Markup.inlineKeyboard(cross).extra());
        return ctx.wizard.next();

},
ctx=>{
        ctx.wizard.state.password=ctx.message.text;
        ctx.reply(`IP Address:${ctx.wizard.state.ipAddress}\nusername:${ctx.wizard.state.username}\nEnter Password:${ctx.wizard.state.password}`,
                  Markup.inlineKeyboard(auth_menu).extra());   
    return ctx.scene.leave();
});

вот макет кнопок, который я создал:

var cross=[
    [Markup.callbackButton("❌ cancel","cancel")]
];

вот как я обрабатываю кнопку с крестиком

var stepHandler=new Composer();
stepHandler.action('cancel',ctx=>{
    console.log("left....");
    ctx.replyWithMarkdown("`process cancelled...`",
                            Markup.keyboard(main_menu).extra());
    ctx.scene.leave("make_connection");             
});

const stage=new Stage([mkConnection]);
bot.use(session());
bot.use(stage.middleware());
bot.startPolling();

когда я нажимаю кнопку отмены, он возвращает следующую ошибку:

TypeError: Cannot read property 'text' of undefined

Failed to process updates. TypeError: Cannot read property 'text' of undefined

ctx.message не определен, но не может понять, что вызывает проблему и как ее исправить.

пожалуйста, помогите.

...