Size: a a a

Боты на Telegraf 3.38

2021 June 09

V

Viktor in Боты на Telegraf 3.38
И где-то там должна очищаться сессия?
источник

V

Viktor in Боты на Telegraf 3.38
У меня в сессии повисло
источник

V

Viktor in Боты на Telegraf 3.38
Видать в этом проблема. Как это должно очищаться?
источник

V

Viktor in Боты на Telegraf 3.38
Автоматом вот здесь?
startScene.leave(async ctx => {
 console.log('---------- Leave', ctx.session.__scenes);
 return ctx.reply(cnt.strings.welcome);
});

Или какой-то вызов очистки нужен?
источник

V

Viktor in Боты на Telegraf 3.38
Уже убрал
источник

V

Viktor in Боты на Telegraf 3.38
если очистить сессию, то не прыгает
источник

V

Viktor in Боты на Telegraf 3.38
Но тогда вопрос, а если я хочу по какому-то условию преждевременно выйти из сцены?
источник

V

Viktor in Боты на Telegraf 3.38
Нет, задача совсем простая
Если пользователь с условиями, то его просто сразу пускать в бот, а если это новый пользователь, заставить его нажать кнопку Я согласен
источник

V

Viktor in Боты на Telegraf 3.38
Может я просто не так эту задачу решаю?
источник

V

Viktor in Боты на Telegraf 3.38
Я просто первый раз пишу бота сложнее чем 3 команды и эхо
источник

JD

Johnny Doe in Боты на Telegraf 3.38
сцены тут не нужны очевидно
источник

С

Сергей in Боты на Telegraf 3.38
Ребят, подскажите как мне сделать return Markup?

Return type of public static method from exported class has or is using name 'Markup' from external module «…/node_modules/telegraf/typings/markup" but cannot be named.
источник

V

Viktor in Боты на Telegraf 3.38
не трудно будет подсказать механизм?
источник

V

Viktor in Боты на Telegraf 3.38
Т.е. не выходить из этой сцены, а сразу переходить в другую?
источник

V

Viktor in Боты на Telegraf 3.38
Давайте так. Сейчас вопрос не в том сцены или нет.
Мне не понятно другое.
Я вошел в сцену, в сессию записалось, что я в нее вошел. Данные из сессии о входе в сцену должны удалиться самостоятельно при вызове метода leave или нужно еще что-то вызвать?
источник

ee

ȩ̵̢̢̤̬͔̱̟͙͓̈̆n̸̼͉̤͛... in Боты на Telegraf 3.38
бот может генерировать стикерпаки?
источник

V

Viktor in Боты на Telegraf 3.38
Вы меня натолкнули на ответ, почему сразу в leave - потому, что в сессии сохранилось, что я уже в сцене. Поэтому она сначала выходила из нее, а потом заходила заново.
источник

V

Viktor in Боты на Telegraf 3.38
Здесь все понятно.
источник

V

Viktor in Боты на Telegraf 3.38
Ладно, я в целом направление понял кажется. Спасибо за подсказку. Сейчас дальше покопаю
источник

JD

Johnny Doe in Боты на Telegraf 3.38
const users  = {}
bot.action('confirm', async ctx => {
 users['id'+ctx.from.id] = 1
 await ctx.answerCbQuery('Молодец!',true)  
 return ctx.deleteMessage()
})
bot.use((ctx,next) => {
 if (!ctx.from || users['id'+ctx.from.id]) return next()
 return ctx.reply('Нажми кнопку согласен',{reply_markup:{inline_keyboard:[[{text:'Согласен', callback_data:'confirm'}]]}})
})
источник