Skip to content

AleXr64/Telegram-bot-framework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Telegram-bot-framework Nuget Telegram chat

Framework to simplify writing telegram bots. Register framework as service in DI conatiner:

services.AddTelegramBot();

Inherit from the BotEventHandler class and add new method with specified attributes:

    public class EventHandler:BotEventHandler
    {
        // Answer on "/start" command from private messages
        [Command(InChat.Private, "start")]
        public async Task Start() => await Bot.SendTextMessageAsync(Chat, "Hello! U started me =)");

        //Answer on message with "ban" text
        [Message("ban")]
        public async Task Ban() => await Bot.SendTextMessageAsync(Chat, "I will ban you right now! Just kidding");

        //Answer on message that satisfy provided regex expression
        [Message("^.*?(?i)python$", regex: true)]
        public async Task Task() => await Bot.SendTextMessageAsync(Chat, "I hate snakes");

        //Answer on any update
        [Update(InChat.All, UpdateFlag.All)]
        public async Task Update() => await Bot.SendTextMessageAsync(Chat, "Hello");

        //Answer on message that contains photo or video
        [Message(InChat.All, MessageFlag.HasPhoto | MessageFlag.HasVideo)]
        public async Task PhotoVideo() => await Bot.SendTextMessageAsync(Chat, "Send me more!");
    }

And enjoy =)

Example project can be found here

Requires:

About

Framework to simplify writing telegram bots

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages