Подскажите пожалуйста. Что я хочу сделать, следующий сценарий.
driverScene.js
const WizardScene = require('telegraf/scenes/wizard');
const Scene = require('telegraf/scenes/base');
const Markup = require('telegraf/markup');
const Stage = require('telegraf/stage');
const {enter , leave} = Stage;
const driverScene = new WizardScene (
'driver',
(ctx) => {
let keyboard_buttons = Markup.keyboard(['Я водитель']).oneTime().resize().extra();
ctx.reply('Кто вы?', keyboard_buttons);
return ctx.wizard.next();
},
(ctx) => {
ctx.wizard.state.role = ctx.message.text;
ctx.reply(`Я ${ctx.wizard.state.role}`);
return leave();
});
module.exports = driverScene ;
passagerScene.js
const WizardScene = require('telegraf/scenes/wizard');
const Markup = require('telegraf/markup');
const {enter} = require('telegraf/stage');
const passagerScene = new WizardScene (
'passager',
(ctx) => {
let keyboard_buttons = Markup.keyboard(['Я пассажир']).oneTime().resize().extra();
ctx.reply('Кто вы ?', keyboard_buttons);
return ctx.wizard.next();
},
(ctx) => {
ctx.wizard.state.role = ctx.message.text;
ctx.reply(`Вы ${ctx.wizard.state.role}`);
return ctx.scene.leave();
});
module.exports = passagerScene ;
welcomeScene.js
const WizardScene = require('telegraf/scenes/wizard');
const Markup = require('telegraf/markup');
const {leave} = require('telegraf/stage');
const welcomeSetting = new WizardScene (
'welcome',
(ctx) => {
let keyboard_buttons = Markup.keyboard(['Водитель'],['Пассажир']).oneTime().resize().extra();
ctx.reply('welcome!', keyboard_buttons);
return ctx.wizard.next();
},
(ctx) => {
ctx.reply(`leave main scene`);
return leave();
});
module.exports = welcomeSetting ;
index.js
const Telegraf = require('telegraf');
const session = require('telegraf/session');
const Stage = require('telegraf/stage');
const { enter , leave} = Stage;
const passagerScene = require('./controllers/passager');
const driverScene = require('./controllers/driver');
const welcomeScene = require('./controllers/welcome');
const stage = new Stage([passagerScene,driverScene,welcomeScene]);
const bot = new Telegraf('TOKEN');
bot.use(Telegraf.log());
bot.use(session());
bot.use(stage.middleware());
bot.hears('order',(ctx) => enter('order'));
bot.hears('setting',(ctx) => enter('setting'));
bot.launch()
Помогите пожалуйста. Уже неделю не могу найти ответ. В официальной документации, некоторые примеры не рабочие.
Продвижение своими сайтами как стратегия роста и независимости