telegraf-command-handler
v1.0.8
Published
just a command handler for Telegraf
Downloads
3
Maintainers
Readme
Telegraf Command Handler
A command handler for Telegraf, which is similar to the command handler for Discord.js and such. The goal is that all commands are not in 1 file... But divided into several different files.
Installation
npm i telegraf-command-handler
# or
yarn add telegraf-command-handler
# or
pnpm add telegraf-command-handler
Usage
/* main file */
const { Telegraf } = require('telegraf');
const { TelegrafCommandHandler } = require('telegraf-command-handler');
const path = require('path');
const bot = new Telegraf('Your bot token');
const CommandHandler = new TelegrafCommandHandler({
path: path.resolve() + "/path/to/dir",
});
bot.use(CommandHandler.load());
// ...bot.launch()
/* command file */
module.exports = {
name: "start",
async execute(ctx) {
ctx.reply("hello world");
}
}
Constructor Options
interface Options {
/* path to your command directory */
path: string;
/* a function that executed when error comes from your command file */
errorHandling: (ctx: Context, error: any) => any | undefined;
}
Command Example
module.exports = {
/* command name (it will executed like /echo) */
name: "echo",
/* optional command aliases (can be string or Array<string>) */
aliases: ["say"],
/* command code */
async execute(ctx, args) {
ctx.reply(args.join(" "))
}
}