on
متدی برای گوش دادن به رویدادهای مختلف از سمت سرور روبیکا (message, inline).
توضیح
با استفاده از متد on، میتونی برای رویدادهای خاص یک هندلر ثبت کنی. این متد از overload پشتیبانی میکنه و میتونه فیلتر هم بگیره.
ورودی ها
نام | نوع | توضیح |
---|---|---|
type | keyof typeof bot.handlers | نوع رویداد ( "message" ، "inline" ) |
filters | NestedFilter<ContextMap[T]> (اختیاری) | آرایهای از فیلترها برای محدود کردن شرط اجرای هندلر |
handler | (ctx: ContextMap[T]) => Promise<void> | تابعی که هنگام وقوع رویداد اجرا میشود |
مثال ها
⚠ توجه: بسته به نوع رویداد ("message"
یا "inline
)، آرگومان ctx میتونه یک Message یا InlineMessage باشه.
استفاده ساده
const { Bot } = require("rubjs");
const bot = new Bot("YOUR_TOKEN");
bot.on("message", async (ctx) => {
await ctx.reply("شما یک پیام فرستادید!");
});
bot.run();
استفاده با فیلتر
const { Bot, BotFilters } = require("rubjs");
const bot = new Bot("YOUR_TOKEN");
bot.on("message", [BotFilters.isText], async (ctx) => {
await ctx.reply("شما یک پیام متنی فرستادید!");
});
bot.run();