TelegramMessage::escapeMarkdown by @alies-dev in https://github.com/laravel-notification-channels/telegram/pull/209TelegramFile::file() now strictly normalizes inputs to PSR-7 streams and rejects unsupported types earlier. Passing arbitrary values through to Guzzle is no longer allowed.Laravel 13 support.
New Telegram payload builders and fields:
businessConnectionId(), messageThreadId(), directMessagesTopicId()protectContent(), allowPaidBroadcast(), messageEffectId()replyParameters(), suggestedPostParameters()TelegramLocation enhancements: horizontalAccuracy(), livePeriod(), heading(), proximityAlertRadius().
TelegramMessage: entities(), linkPreviewOptions().
TelegramFile: captionEntities(), showCaptionAboveMedia().
New builders: TelegramDice, TelegramMediaGroup.
Low-level client helpers:
sendDice, sendMediaGroup, sendChatActioneditMessageText, editMessageCaption, editMessageMedia, editMessageReplyMarkupstopPoll, deleteMessage, deleteMessagesMinimum PHP version bumped to 8.3.
Dropped Laravel 11 support.
Codebase now enforces stricter typing (strict_types, improved PHPDoc shapes).
Centralized response decoding via Telegram::decodeResponse() using Guzzle JSON utilities.
Improved Telegram error parsing with safer fallbacks.
Refactored:
TelegramChannel recipient resolution and response handlingTelegramFile upload handling (clear remote vs local distinction)TelegramMessage chunked sending behaviorInteractsWithTelegramMediaonError() now accepts any callable.
HasSharedLogic typing hardened; keyboard layouts normalized for invalid column counts.
TelegramBase now accepts optional Telegram instance (better testability).
TelegramUpdates::get() safely returns empty array on invalid responses.
Config now supports both services.telegram.* and legacy keys.
pest-plugin-laravel 4.level: max with stricter rules enabled.Expanded coverage:
Updated test suite to align with refactored runtime and tooling.
Full Changelog: https://github.com/laravel-notification-channels/telegram/compare/6.0.0...7.0.0
TelegramVenue to support sendVenue method.sticker method to the TelegramFile to send sticker file.sendWhen method to conditionally send a message.buttonWithWebApp method to open web app from a button.onError method to handle exceptions. Based of https://github.com/laravel-notification-channels/telegram/pull/201 by @Hesammousavi.sendFile to support raw data sending.escapedLine method.HasSharedLogic trait.keyboard method parameters to $requestLocation and $requestContact to be consistent.Full Changelog: https://github.com/laravel-notification-channels/telegram/compare/5.0.0...6.0.0
Full Changelog: https://github.com/laravel-notification-channels/telegram/compare/4.0.0...5.0.0
< 8.1.Full Changelog: https://github.com/laravel-notification-channels/telegram/compare/3.0.0...4.0.0
line() method (adapted from a PR) by @llabbasmkhll in https://github.com/laravel-notification-channels/telegram/pull/149.TelegramSender contract to TelegramSenderContracttoArray() method to TelegramUpdates to retrieve payload.Full Changelog: https://github.com/laravel-notification-channels/telegram/compare/2.1.0...3.0.0
when on methods chain. PR #139.< 7.4 and Laravel < 8.chunk($limit)) in cases where the message is too long. Closes #127.disableNotification method.How can I help you explore Laravel packages today?