green-tmz/laravel-telegram-bot
最新稳定版本:1.1.1
Composer 安装命令:
composer require green-tmz/laravel-telegram-bot
包简介
Telegram Bot Package for Laravel
README 文档
README
Документация
Laravel-telegram-bot
Laravel-telegram-bot пакет для Laravel 12.x
Требования
- PHP >= 8.2
- Laravel 12.x
Установка
Установить через composer, выполнив команду в консоле:
composer require green-tmz/laravel-telegram-bot
Публикация конфигов:
php artisan vendor:publish --provider="Green\TelegramBot\Providers\TelegramServiceProvider"
Откройте ваш .env измените строку APP_URL на APP_URL=https://<ваш_домен>
и добавьте в конец файла
TELEGRAM_BOT_TOKEN=<API_TOKEN_ВАШЕГО_БОТА> TELEGRAM_WEBHOOK_URL=/telegram/webhook
Регистрация веб-хуков:
php artisan telegram:set-webhook
Публикация команд:
Для публикации команд Telegram выполните:
php artisan telegram:publish-commands
В config/telegram.php для команд поменять namespace на
\App\Console\Commands\TelegramBot\<класс_обработки_команды>.
Пример:
'commands' => [ 'start' => \App\Console\Commands\TelegramBot\StartCommand::class, 'set-webhook' => \Green\TelegramBot\Console\Commands\SetupTelegramWebhook::class, ],
Базовое использование
Для работы с ботом добавьте фасад Telegram:
use Green\TelegramBot\Facades\Telegram;
Отправка сообщения:
public function handle(array $update): void { $chatId = $update['message']['chat']['id']; $name = $update['message']['from']['first_name']; Telegram::sendMessage($chatId, "Привет, $name! Добро пожаловать!"); }
Использование клавиатуры:
- reply keyboard
use Green\TelegramBot\Facades\Telegram; use Green\TelegramBot\Services\Keyboard; public function handle(array $update): void { $chatId = $update['message']['chat']['id']; $name = $update['message']['from']['first_name']; $keyboard = Keyboard::make() ->setResizeKeyboard(true) ->setOneTimeKeyboard(true) ->setSelective(false) ->row([ Keyboard::button('Обычная кнопка 1'), Keyboard::button('Обычная кнопка 2'), ]) ->row([ Keyboard::button('Отправить мой контакт')->requestContact(), ]) ->row([ Keyboard::button('Отправить мою локацию')->requestLocation(), ]) ->row([ Keyboard::button('Специальная кнопка') ->callbackData('action=special_action&user_id=123'), ]); Telegram::sendMessage($chatId, "Привет, $name! Добро пожаловать!", [ 'reply_markup' => $keyboard->toJson() ]); }
Лицензия
Лицензия MIT. Пожалуйста прочитайте Файл лицензии для получения дополнительной информации.
统计信息
- 总下载量: 7
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-06-19