oihso/telegram-bot-api-bundle
A PHP bundle that integrates the Telegram Bot API into your application, offering a convenient wrapper for sending messages, managing chats, and handling bot updates through Telegram's HTTP API.
composer.json constraints first: this release targets Symfony 6.4 and explicitly does not support Symfony 7.0 yet (blocked by irazasyed/telegram-bot-sdk and illuminate/support requirement bumps).illuminate/support constraint before upgrading. If you’re on Symfony 7 components, pin this package to the previous release or wait for the upstream bumps.php artisan vendor:publish --provider=...) and set the bot token/credentials in .env.$defaultName property to the #[AsCommand] attribute, so inspect any existing command classes and align them with the new attribute style.#[AsCommand(name: 'bot:...', description: '...')]. The attribute is now the canonical way to declare command names; keep command classes small and delegate business logic to services.Http::fake()) and assert outgoing Telegram API calls. For command tests, use Laravel’s command tester and assert the AsCommand name resolves correctly.symfony/*:^7.0 alongside this release. If Composer resolves Symfony 7 transitively, constrain to ^6.4 until the upstream packages (irazasyed/telegram-bot-sdk, illuminate/support) publish compatible requirements.$defaultName is deprecated. Any custom command still using protected static $defaultName should move to #[AsCommand]. Watch for duplicate or missing command registration after the migration, and clear the config/route/command cache (php artisan optimize:clear) when testing.#[AsCommand] requires a modern Symfony console version. On Symfony 6.4 this is fine, but if you support older Laravel/Symfony combinations in the same codebase, verify the attribute is actually read by the console kernel.env() directly in package config can break under config:cache. Ensure config files use env() only at the config layer and access values via config() elsewhere.X-Telegram-Bot-Api-Secret-Token header (or your configured secret) and return 200 quickly; retry storms from Telegram are common when handlers are slow or error.429 responses with retry_after.How can I help you explore Laravel packages today?