The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
Exclamation symbols (:exclamation:) note something of importance e.g. breaking changes. Click them to learn more.
Note: After updating to this version, you will need to execute the SQL migration script on your database.
- Documents can be sent by providing its contents via Psr7 stream (as opposed to passing a file path).
- Allow setting a custom Guzzle HTTP Client for requests (#511).
- First implementations towards Bots API 3.0.
- ❗
Request::sendToActiveChats
andDB::selectChats
now accept parameters as an options array and allow selecting of channels.
- Deprecated
Message::getNewChatMember()
(UseMessage::getNewChatMembers()
instead to get an array of all newly added members).
- ❗ Upload and download directories are not set any more by default and must be set manually.
- ❗ Completely removed
Telegram::getBotName()
andEntity::getBotName()
(Use::getBotUsername()
instead). - ❗ Completely removed deprecated
Telegram::unsetWebhook()
(UseTelegram::deleteWebhook()
instead).
- ID fields are now typed with
PARAM_STR
PDO data type, to allow huge numbers. - Message type data type for PDO corrected.
- Indexed table columns now have a fitting length.
- Take
custom_input
into account when using getUpdates method (mainly for testing). - Request limiter has been fixed to correctly support channels.
- Erroneous exception when using webhook without a database connection.
- Proper standalone
scrutinizer.yml
config. - Human-readable last error date for debug command.
- Bot username no longer required for object instantiation.
- All examples have been moved to a dedicated repository.
- ❗ Format of Update content type using
$update->getUpdateContent()
.
- Travis CI webhook for Support Bot.
- Interval for request limiter.
isRunCommands()
method to check if called viarunCommands()
.- Ensure coding standards for
tests
folder withphpcs
.
- Move default commands to
examples
folder. - All links point to new organisation repo.
- Add PHP 7.1 support and update dependencies.
- Prevent handling the same Telegram updates multiple times, throw exception instead.
- Added
getBotId()
to directly access bot ID.
- Rename
bot_name
tobot_username
everywhere.
- Deprecated
Telegram::getBotName()
(UseTelegram::getBotUsername()
instead).
- Tests are more reliable now, using a properly formatted API key.
$show_in_help
attribute for commands, to set if it should be displayed in the/help
command.- Link to new Telegram group:
https://telegram.me/PHP_Telegram_Bot_Support
- Introduce change log.
- Infinite message loop, caused by incorrect Entity variable.
- Request limiter for incoming requests.
- Faulty formatting in logger.
- Newest bot API changes.
- Allow direct access to PDO object (
DB::getPdo()
). - Simple
/debug
command that displays various system information to help debugging. - Crontab-friendly script.
- Botan integration improvements.
- Make logger more flexible.
- Various bugs and recommendations by Scrutinizer.
- Usage of self-signed certificates in conjunction with the new
allowed_updates
webhook parameter.
- New
switch_inline_query_current_chat
option for inline keyboard. - Support for
channel_post
andedited_channel_post
. - New alias
deleteWebhook
(forunsetWebhook
).
- Update WebhookInfo entity and
setWebhook
to allow passing of new arguments.
- Keyboards that are built without using the KeyboardButton objects.
- Commands that are called via
/command@botname
by correctly passing them the bot name.
- Logging improvements to Botan integration.
- Move
hideKeyboard
toremoveKeyboard
.