资讯动态

Nutgram 与 Laravel/Symfony 集成教程:在现有项目中轻松添加 Telegram 机器人

发布时间:2026/8/10 20:55:08 来源:尧图企业网站定制
Nutgram 与 Laravel/Symfony 集成教程在现有项目中轻松添加 Telegram 机器人【免费下载链接】nutgramThe Telegram bot framework that doesnt drive you nuts.项目地址: https://gitcode.com/gh_mirrors/nu/nutgramNutgram 是一个专为 Telegram 机器人开发设计的轻量级 PHP 框架它以简洁的 API 和灵活的架构著称特别适合在现有 Laravel 或 Symfony 项目中快速集成机器人功能。本教程将详细介绍如何在这两个主流 PHP 框架中无缝接入 Nutgram让你无需从零构建即可拥有强大的 Telegram 交互能力。 为什么选择 NutgramNutgram 作为 不抓狂的 Telegram 机器人框架具备以下核心优势框架无关性可独立使用或与任何 PHP 框架集成现代化设计基于 PHP 8.2 特性支持类型提示和枚举丰富生态提供官方 Laravel 包和 Symfony bundle完整功能支持所有 Telegram Bot API 最新特性包括对话管理、键盘交互和消息处理从composer.json可以看到Nutgram 已将 laravel 列为核心关键词并通过illuminate/macroable等依赖确保与 Laravel 生态的兼容性。 Laravel 项目集成步骤1. 安装 Nutgram Laravel 包在 Laravel 项目根目录执行以下命令composer require nutgram/laravel该包会自动注册服务提供者并发布配置文件到config/nutgram.php。2. 配置 Telegram 令牌在.env文件中添加你的 Telegram 机器人令牌NUTGRAM_TOKENyour-telegram-bot-token-here3. 创建第一个命令处理器使用 Artisan 命令生成处理器php artisan make:nutgram-command StartCommand编辑生成的文件app/Nutgram/Commands/StartCommand.phpnamespace App\Nutgram\Commands; use SergiX44\Nutgram\Nutgram; use SergiX44\Nutgram\Handlers\Type\Command; class StartCommand extends Command { protected string $command start; public function handle(Nutgram $bot): void { $bot-sendMessage(欢迎使用 Laravel 集成的 Nutgram 机器人); } }4. 运行机器人通过 Artisan 命令启动机器人php artisan nutgram:run️ Symfony 项目集成步骤1. 安装 Nutgram Symfony Bundle在 Symfony 项目中执行composer require nutgram/symfony-bundle2. 配置令牌编辑config/packages/nutgram.yamlnutgram: token: %env(NUTGRAM_TOKEN)%在.env文件中添加NUTGRAM_TOKENyour-telegram-bot-token-here3. 创建控制器生成一个控制器处理更新php bin/console make:controller BotController修改控制器代码namespace App\Controller; use SergiX44\Nutgram\Nutgram; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Annotation\Route; class BotController extends AbstractController { #[Route(/bot/webhook, name: bot_webhook)] public function webhook(Nutgram $bot): Response { $bot-onCommand(start, function (Nutgram $bot) { $bot-sendMessage(欢迎使用 Symfony 集成的 Nutgram 机器人); }); return $bot-handle(); } }4. 设置 Webhook通过 Symfony 控制台命令设置 Telegram Webhookphp bin/console nutgram:webhook:set https://your-domain.com/bot/webhook 核心功能使用示例处理文本消息无论是 Laravel 还是 Symfony都可以使用相同的语法处理消息$bot-onText(Hello {name}, function (Nutgram $bot, string $name) { $bot-sendMessage(你好$name); });使用键盘交互创建内联键盘Laravel 示例use SergiX44\Nutgram\Telegram\Types\Keyboard\InlineKeyboardButton; use SergiX44\Nutgram\Telegram\Types\Keyboard\InlineKeyboardMarkup; $bot-onCommand(menu, function (Nutgram $bot) { $keyboard InlineKeyboardMarkup::make() -addRow( InlineKeyboardButton::make(点击我, callback_data: clicked) ); $bot-sendMessage(这是一个内联菜单, reply_markup: $keyboard); }); $bot-onCallbackQueryData(clicked, function (Nutgram $bot) { $bot-answerCallbackQuery(你点击了按钮); }); 扩展学习资源官方文档完整的 Nutgram 功能说明和高级用法Laravel 集成源码nutgram/laravelSymfony 集成源码nutgram/symfony-bundle示例项目Starter Kit 提供了基础实现参考 总结通过 Nutgram 提供的官方集成包你可以在几分钟内将 Telegram 机器人功能添加到现有 Laravel 或 Symfony 项目中。其优雅的 API 设计和完善的文档使开发过程变得简单直观无论是简单的命令响应还是复杂的对话流程都能轻松实现。现在就尝试集成 Nutgram为你的应用添加强大的 Telegram 交互能力吧【免费下载链接】nutgramThe Telegram bot framework that doesnt drive you nuts.项目地址: https://gitcode.com/gh_mirrors/nu/nutgram创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价