WIP: PHP Telegram Bot API
Простая и гибкая библиотека для создания ботов Telegram на языке PHP.
👷 Установка
$ composer require chipslays/telegram-bot-api
💡 Пример
require 'vendor/autoload.php';
$bot = bot('1234567890:BOT_TOKEN')->webhook();
$bot->hear('Меня зовут {name}', fn ($name) => reply("Привет {$name}!"));
$bot->run();
Больше примеров можно посмотреть здесь.
📌 Команды
После установки библиотеки будут доступны некоторые команды в терминале.
Создать файл конфигурации бота:
$ vendor/bin/bot --config ./
Создать готовую файловую структуру (skeleton):
$ vendor/bin/bot --init ./
Показать список доступных команд:
$ vendor/bin/bot --help
📖 Документация
Подробная документация по использованию находится здесь.
Почему нет отдельных классов для работы с типами обновлений?
Библиотека предоставляет гибкие возможности для работы с Telegram Bot API , поддерживая как текущие методы/ответы, так и будущие используя для этого универсальные методы, например, как request()
и on()
, а так же класс Update
.
Вместо заранее прописанных классов с типами, используется единственный универсальный класс Update
для работы с входящим обновлением.
Например, получим тип User
:
$user = Update::get('message.from');
Получим username
, но так как он не у всех есть, передадим вторым параметром значение по умолчанию:
$username = Update::get('message.from.username', 'Юзернейм не существует 😥');
Доступен короткий синтаксис:
$user = update('message.from'); // вместо Update::get();
$user = update()->get('message.from'); // update() вернет объект `Update`;
Да, первое время, если вы не работали ранее с Bot API, то придется часто держать открытой страницу с документацией и смотреть доступные параметры.
Библиотека создавалась для себя/своих нужд, поэтому как-то так.
🔑 License
Released under the MIT public license. See the enclosed LICENSE
for details.