28 lines
840 B
TypeScript
28 lines
840 B
TypeScript
import { Bot, InputFile } from 'grammy';
|
|
|
|
import { cmdStart, cmdHelp } from './src/commands';
|
|
import { menu } from './src/menu';
|
|
|
|
import { choice } from './src/utils';
|
|
|
|
import pkg from './package.json';
|
|
|
|
const bot = new Bot(process.env.TOKEN);
|
|
bot.use(menu);
|
|
|
|
bot.command('start', cmdStart);
|
|
bot.command('help', cmdHelp);
|
|
bot.command('menu', async (ctx) => {
|
|
const photoFile = new InputFile(`./assets/images/road_${choice([1, 2, 3])}.jpg`);
|
|
await ctx.replyWithPhoto(photoFile, {
|
|
caption: '🛣️ \*Навигация, меню или что\\-то такое\\.\\.\\.\*',
|
|
reply_markup: menu,
|
|
parse_mode: 'MarkdownV2',
|
|
});
|
|
});
|
|
bot.command('version', (ctx) => ctx.reply(`Версия: ${pkg.version}`));
|
|
|
|
bot.on('message', (ctx) => ctx.reply('Ээ, нет, вызови /menu и будет счастье'));
|
|
|
|
bot.start();
|