westacks/telebot

Easy way to create Telegram-bots in PHP


README

Stand With Ukraine

Project Logo

Latest Stable Version Total Downloads License Pest

TeleBot is a PHP library for telegram bots development. Rich Laravel support out of the box. Has an easy, clean, and extendable way to handle telegram Updates.

Documentation

Documentation for the library can be found on the website.

Features

Bot Manager

Work easily with multiple bots using BotManager:

$manager->getMe(); // Fired by default bot specified in BotManager
$manager->bot('bot2')->getMe(); // Fired by `bot2` specified in BotManager

Object oriented and functional handlers

// Functional handler
$handler = function(TeleBot $bot, Update $update, $next) {
    if ($update->message->text === '/start') {
        return $bot->sendMessage([
            'chat_id' => $update->chat()->id,
            'text' => 'Hello, World!'
        ]);
    }

    return $next();
};


// Object oriented handler
class YourUpdateHandler extends CommandHandler
{
    protected static function aliases(): string
    {
        return ['/start'];
    }

    protected static function description(?string $locale = null)
    {
        return 'Start command';
    }

    public function handle()
    {
        return $this->sendMessage([
            'text' => 'Hello, World!'
        ]);
    }
}

Laravel Support

Check out Laravel Adapter for TeleBot

Changelog

Please see CHANGELOG for more information what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Credits

License

The MIT License (MIT). Please see License File for more information.

FOSSA Status