pyTelegramBotAPI 4.23.0__tar.gz → 4.24.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/.github/workflows/setup_python.yml +1 -1
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/.travis.yml +1 -1
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/PKG-INFO +5 -6
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/README.md +2 -2
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/conf.py +1 -1
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/custom_states.py +10 -7
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/custom_states.py +10 -7
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/pyproject.toml +3 -3
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/__init__.py +137 -42
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/apihelper.py +60 -18
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/async_telebot.py +143 -42
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/asyncio_helper.py +64 -18
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/asyncio_storage/pickle_storage.py +3 -3
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/storage/pickle_storage.py +3 -3
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/types.py +149 -80
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/version.py +1 -1
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/.github/ISSUE_TEMPLATE +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/.gitignore +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/.readthedocs.yml +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/LICENSE +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/doc_req.txt +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/Makefile +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/_static/logo.png +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/_static/logo2.png +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/async_version/index.rst +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/calldata.rst +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/formatting.rst +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/index.rst +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/install.rst +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/en/LC_MESSAGES/async_version.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/en/LC_MESSAGES/calldata.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/en/LC_MESSAGES/formatting.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/en/LC_MESSAGES/index.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/en/LC_MESSAGES/install.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/en/LC_MESSAGES/quick_start.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/en/LC_MESSAGES/sync_version.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/en/LC_MESSAGES/types.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/en/LC_MESSAGES/util.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/ru/LC_MESSAGES/async_version.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/ru/LC_MESSAGES/calldata.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/ru/LC_MESSAGES/formatting.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/ru/LC_MESSAGES/index.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/ru/LC_MESSAGES/install.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/ru/LC_MESSAGES/quick_start.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/ru/LC_MESSAGES/sync_version.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/ru/LC_MESSAGES/types.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/locales/ru/LC_MESSAGES/util.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/quick_start.rst +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/sync_version/index.rst +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/types.rst +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/docs/source/util.rst +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/anonymous_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/callback_data_examples/advanced_calendar_example/filters.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/callback_data_examples/advanced_calendar_example/keyboards.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/callback_data_examples/advanced_calendar_example/main.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/callback_data_examples/simple_products_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/chat_join_request.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/chat_member_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/continue_handling.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/custom_filters/admin_filter_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/custom_filters/advanced_text_filter.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/custom_filters/general_custom_filters.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/custom_filters/id_filter_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/custom_filters/is_filter_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/custom_filters/text_filter_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/detect_changes.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/download_file_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/echo_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/exception_handler.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/formatting_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/message_reaction_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/middleware/flooding_middleware.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/middleware/i18n.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/middleware/i18n_middleware_example/i18n_base_midddleware.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/middleware/i18n_middleware_example/keyboards.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/middleware/i18n_middleware_example/locales/en/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/middleware/i18n_middleware_example/locales/ru/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/middleware/i18n_middleware_example/locales/uz_Latn/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/middleware/i18n_middleware_example/main.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/mini_app.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/multibot/README.MD +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/multibot/config.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/multibot/handlers.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/multibot/main.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/multibot/nginx_conf.conf +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/register_handler.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/send_file_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/set_command_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/skip_updates_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/timer_bot_async.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/update_listener.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/webhooks/async_webhook_aiohttp_echo_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/webhooks/run_webhooks.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/webhooks/webhook_starlette_echo_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/callback_data_examples/advanced_calendar_example/filters.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/callback_data_examples/advanced_calendar_example/keyboards.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/callback_data_examples/advanced_calendar_example/main.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/callback_data_examples/simple_products_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/chat_join_request.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/chat_member_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/continue_handling.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/create_invite_link.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/custom_filters/admin_filter_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/custom_filters/advanced_text_filter.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/custom_filters/general_custom_filters.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/custom_filters/id_filter_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/custom_filters/is_filter_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/custom_filters/text_filter_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/deep_linking.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/detailed_example/detailed_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/detailed_example/kitten.jpg +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/detailed_example/rooster.jpg +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/detect_changes.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/download_file_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/echo_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/formatting_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/inline_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/inline_keyboard_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/message_reaction_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/README.md +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/class_based/antiflood_middleware.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/class_based/basic_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/class_based/i18n_middleware/i18n_base_middleware.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/class_based/i18n_middleware/keyboards.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/class_based/i18n_middleware/locales/en/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/class_based/i18n_middleware/locales/ru/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/class_based/i18n_middleware/locales/uz_Latn/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/class_based/i18n_middleware/main.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/function_based/i18n.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/function_based/i18n_gettext/i18n_class.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/function_based/i18n_gettext/keyboards.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/function_based/i18n_gettext/locales/en/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/function_based/i18n_gettext/locales/ru/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/function_based/i18n_gettext/locales/uz_Latn/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/function_based/i18n_gettext/main.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/middleware/function_based/session.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/mini_app.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/mini_app_web/index.html +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/mini_app_web/script.js +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/mini_app_web/style.css +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/multibot/README.MD +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/multibot/config.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/multibot/handlers.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/multibot/main.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/multibot/nginx_conf.conf +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/payments_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/poll_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/register_handler.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/reply_keyboard_markup_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/serverless/aws_lambda_function.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/serverless/azure_functions +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/serverless/flask_google_cloud_bot/.gcloudignore +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/serverless/flask_google_cloud_bot/app.yaml +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/serverless/flask_google_cloud_bot/main.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/serverless/flask_google_cloud_bot/requirements.txt +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/set_command_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/skip_updates_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/step_example.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/telebot_bot/telebot_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/timer_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/webhook_examples/README.md +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/webhook_examples/run_webhooks.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/webhook_examples/webhook_aiohttp_echo_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/webhook_examples/webhook_cherrypy_echo_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/webhook_examples/webhook_cpython_echo_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/webhook_examples/webhook_fastapi_echo_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/webhook_examples/webhook_flask_echo_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/webhook_examples/webhook_flask_heroku_echo.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/webhook_examples/webhook_tornado_echo_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/webhook_examples/webhook_twisted_echo_bot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/requirements.txt +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/asyncio_filters.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/asyncio_handler_backends.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/asyncio_storage/__init__.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/asyncio_storage/base_storage.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/asyncio_storage/memory_storage.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/asyncio_storage/redis_storage.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/callback_data.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/custom_filters.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/ext/__init__.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/ext/aio/__init__.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/ext/aio/webhooks.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/ext/reloader.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/ext/sync/__init__.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/ext/sync/webhooks.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/formatting.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/handler_backends.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/service_utils.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/states/__init__.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/states/asyncio/__init__.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/states/asyncio/context.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/states/asyncio/middleware.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/states/sync/__init__.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/states/sync/context.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/states/sync/middleware.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/storage/__init__.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/storage/base_storage.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/storage/memory_storage.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/storage/redis_storage.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/telebot/util.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/tests/__init__.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/tests/test_data/record.mp3 +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/tests/test_data/record.ogg +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/tests/test_data/record.wav +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/tests/test_data/test_video.mp4 +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/tests/test_handler_backends.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/tests/test_telebot.py +0 -0
- {pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/tests/test_types.py +0 -0
|
@@ -20,7 +20,7 @@ jobs:
|
|
|
20
20
|
runs-on: ubuntu-latest
|
|
21
21
|
strategy:
|
|
22
22
|
matrix:
|
|
23
|
-
python-version: [ '3.
|
|
23
|
+
python-version: [ '3.9', '3.10', '3.11', '3.12', '3.13', 'pypy-3.9', 'pypy-3.10']
|
|
24
24
|
name: ${{ matrix.python-version }} and tests
|
|
25
25
|
steps:
|
|
26
26
|
- uses: actions/checkout@v2
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: pyTelegramBotAPI
|
|
3
|
-
Version: 4.
|
|
3
|
+
Version: 4.24.0
|
|
4
4
|
Summary: Python Telegram bot api.
|
|
5
5
|
Project-URL: Homepage, https://github.com/eternnoir/pyTelegramBotAPI
|
|
6
6
|
Project-URL: Documentation, https://pytba.readthedocs.org
|
|
@@ -8,18 +8,17 @@ Project-URL: Repository, https://github.com/eternnoir/pyTelegramBotAPI
|
|
|
8
8
|
Project-URL: Issues, https://github.com/eternnoir/pyTelegramBotAPI/issues
|
|
9
9
|
Author-email: eternnoir <eternnoir@gmail.com>
|
|
10
10
|
License: GPL2
|
|
11
|
-
License-File: LICENSE
|
|
12
11
|
Keywords: api,bot,telegram,tools
|
|
13
12
|
Classifier: Development Status :: 5 - Production/Stable
|
|
14
13
|
Classifier: Environment :: Console
|
|
15
14
|
Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2)
|
|
16
15
|
Classifier: Programming Language :: Python :: 3
|
|
17
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
18
16
|
Classifier: Programming Language :: Python :: 3.9
|
|
19
17
|
Classifier: Programming Language :: Python :: 3.10
|
|
20
18
|
Classifier: Programming Language :: Python :: 3.11
|
|
21
19
|
Classifier: Programming Language :: Python :: 3.12
|
|
22
|
-
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
21
|
+
Requires-Python: >=3.9
|
|
23
22
|
Requires-Dist: requests
|
|
24
23
|
Provides-Extra: aiohttp
|
|
25
24
|
Requires-Dist: aiohttp; extra == 'aiohttp'
|
|
@@ -53,7 +52,7 @@ Description-Content-Type: text/markdown
|
|
|
53
52
|
<p align="center">A simple, but extensible Python implementation for the <a href="https://core.telegram.org/bots/api">Telegram Bot API</a>.</p>
|
|
54
53
|
<p align="center">Both synchronous and asynchronous.</p>
|
|
55
54
|
|
|
56
|
-
## <p align="center">Supported Bot API version: <a href="https://core.telegram.org/bots/api#
|
|
55
|
+
## <p align="center">Supported Bot API version: <a href="https://core.telegram.org/bots/api#october-31-2024"><img src="https://img.shields.io/badge/Bot%20API-7.11-blue?logo=telegram" alt="Supported Bot API version"></a>
|
|
57
56
|
|
|
58
57
|
<h2><a href='https://pytba.readthedocs.io/en/latest/index.html'>Official documentation</a></h2>
|
|
59
58
|
<h2><a href='https://pytba.readthedocs.io/ru/latest/index.html'>Official ru documentation</a></h2>
|
|
@@ -112,7 +111,7 @@ Description-Content-Type: text/markdown
|
|
|
112
111
|
|
|
113
112
|
## Getting started
|
|
114
113
|
|
|
115
|
-
This API is tested with Python 3.
|
|
114
|
+
This API is tested with Python 3.9-3.13 and Pypy 3.
|
|
116
115
|
There are two ways to install the library:
|
|
117
116
|
|
|
118
117
|
* Installation using pip (a Python package manager):
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
<p align="center">A simple, but extensible Python implementation for the <a href="https://core.telegram.org/bots/api">Telegram Bot API</a>.</p>
|
|
11
11
|
<p align="center">Both synchronous and asynchronous.</p>
|
|
12
12
|
|
|
13
|
-
## <p align="center">Supported Bot API version: <a href="https://core.telegram.org/bots/api#
|
|
13
|
+
## <p align="center">Supported Bot API version: <a href="https://core.telegram.org/bots/api#october-31-2024"><img src="https://img.shields.io/badge/Bot%20API-7.11-blue?logo=telegram" alt="Supported Bot API version"></a>
|
|
14
14
|
|
|
15
15
|
<h2><a href='https://pytba.readthedocs.io/en/latest/index.html'>Official documentation</a></h2>
|
|
16
16
|
<h2><a href='https://pytba.readthedocs.io/ru/latest/index.html'>Official ru documentation</a></h2>
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
|
|
70
70
|
## Getting started
|
|
71
71
|
|
|
72
|
-
This API is tested with Python 3.
|
|
72
|
+
This API is tested with Python 3.9-3.13 and Pypy 3.
|
|
73
73
|
There are two ways to install the library:
|
|
74
74
|
|
|
75
75
|
* Installation using pip (a Python package manager):
|
|
@@ -22,7 +22,7 @@ author = 'coder2020official'
|
|
|
22
22
|
copyright = f'2022-{datetime.now().year}, {author}'
|
|
23
23
|
|
|
24
24
|
# The full version, including alpha/beta/rc tags
|
|
25
|
-
release = '4.
|
|
25
|
+
release = '4.24.0'
|
|
26
26
|
|
|
27
27
|
|
|
28
28
|
# -- General configuration ---------------------------------------------------
|
{pytelegrambotapi-4.23.0 → pytelegrambotapi-4.24.0}/examples/asynchronous_telebot/custom_states.py
RENAMED
|
@@ -2,6 +2,7 @@ from telebot import async_telebot, asyncio_filters, types
|
|
|
2
2
|
from telebot.asyncio_storage import StateMemoryStorage
|
|
3
3
|
from telebot.states import State, StatesGroup
|
|
4
4
|
from telebot.states.asyncio.context import StateContext
|
|
5
|
+
from telebot.types import ReplyParameters
|
|
5
6
|
|
|
6
7
|
# Initialize the bot
|
|
7
8
|
state_storage = StateMemoryStorage() # don't use this in production; switch to redis
|
|
@@ -23,7 +24,7 @@ async def start_ex(message: types.Message, state: StateContext):
|
|
|
23
24
|
await bot.send_message(
|
|
24
25
|
message.chat.id,
|
|
25
26
|
"Hello! What is your first name?",
|
|
26
|
-
|
|
27
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
27
28
|
)
|
|
28
29
|
|
|
29
30
|
|
|
@@ -34,7 +35,7 @@ async def any_state(message: types.Message, state: StateContext):
|
|
|
34
35
|
await bot.send_message(
|
|
35
36
|
message.chat.id,
|
|
36
37
|
"Your information has been cleared. Type /start to begin again.",
|
|
37
|
-
|
|
38
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
38
39
|
)
|
|
39
40
|
|
|
40
41
|
|
|
@@ -43,7 +44,8 @@ async def any_state(message: types.Message, state: StateContext):
|
|
|
43
44
|
async def name_get(message: types.Message, state: StateContext):
|
|
44
45
|
await state.set(MyStates.age)
|
|
45
46
|
await bot.send_message(
|
|
46
|
-
message.chat.id, "How old are you?",
|
|
47
|
+
message.chat.id, "How old are you?",
|
|
48
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
47
49
|
)
|
|
48
50
|
await state.add_data(name=message.text)
|
|
49
51
|
|
|
@@ -64,7 +66,7 @@ async def ask_color(message: types.Message, state: StateContext):
|
|
|
64
66
|
message.chat.id,
|
|
65
67
|
"What is your favorite color? Choose from the options below.",
|
|
66
68
|
reply_markup=keyboard,
|
|
67
|
-
|
|
69
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
68
70
|
)
|
|
69
71
|
|
|
70
72
|
|
|
@@ -84,7 +86,7 @@ async def ask_hobby(message: types.Message, state: StateContext):
|
|
|
84
86
|
message.chat.id,
|
|
85
87
|
"What is one of your hobbies? Choose from the options below.",
|
|
86
88
|
reply_markup=keyboard,
|
|
87
|
-
|
|
89
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
88
90
|
)
|
|
89
91
|
|
|
90
92
|
|
|
@@ -123,7 +125,8 @@ async def finish(message: types.Message, state: StateContext):
|
|
|
123
125
|
)
|
|
124
126
|
|
|
125
127
|
await bot.send_message(
|
|
126
|
-
message.chat.id, msg, parse_mode="html",
|
|
128
|
+
message.chat.id, msg, parse_mode="html",
|
|
129
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
127
130
|
)
|
|
128
131
|
await state.delete()
|
|
129
132
|
|
|
@@ -134,7 +137,7 @@ async def age_incorrect(message: types.Message):
|
|
|
134
137
|
await bot.send_message(
|
|
135
138
|
message.chat.id,
|
|
136
139
|
"Please enter a valid number for age.",
|
|
137
|
-
|
|
140
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
138
141
|
)
|
|
139
142
|
|
|
140
143
|
|
|
@@ -3,6 +3,7 @@ from telebot import custom_filters, types
|
|
|
3
3
|
from telebot.states import State, StatesGroup
|
|
4
4
|
from telebot.states.sync.context import StateContext
|
|
5
5
|
from telebot.storage import StateMemoryStorage
|
|
6
|
+
from telebot.types import ReplyParameters
|
|
6
7
|
|
|
7
8
|
# Initialize the bot
|
|
8
9
|
state_storage = StateMemoryStorage() # don't use this in production; switch to redis
|
|
@@ -24,7 +25,7 @@ def start_ex(message: types.Message, state: StateContext):
|
|
|
24
25
|
bot.send_message(
|
|
25
26
|
message.chat.id,
|
|
26
27
|
"Hello! What is your first name?",
|
|
27
|
-
|
|
28
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
28
29
|
)
|
|
29
30
|
|
|
30
31
|
|
|
@@ -35,7 +36,7 @@ def any_state(message: types.Message, state: StateContext):
|
|
|
35
36
|
bot.send_message(
|
|
36
37
|
message.chat.id,
|
|
37
38
|
"Your information has been cleared. Type /start to begin again.",
|
|
38
|
-
|
|
39
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
39
40
|
)
|
|
40
41
|
|
|
41
42
|
|
|
@@ -44,7 +45,8 @@ def any_state(message: types.Message, state: StateContext):
|
|
|
44
45
|
def name_get(message: types.Message, state: StateContext):
|
|
45
46
|
state.set(MyStates.age)
|
|
46
47
|
bot.send_message(
|
|
47
|
-
message.chat.id, "How old are you?",
|
|
48
|
+
message.chat.id, "How old are you?",
|
|
49
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
48
50
|
)
|
|
49
51
|
state.add_data(name=message.text)
|
|
50
52
|
|
|
@@ -65,7 +67,7 @@ def ask_color(message: types.Message, state: StateContext):
|
|
|
65
67
|
message.chat.id,
|
|
66
68
|
"What is your favorite color? Choose from the options below.",
|
|
67
69
|
reply_markup=keyboard,
|
|
68
|
-
|
|
70
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
69
71
|
)
|
|
70
72
|
|
|
71
73
|
|
|
@@ -85,7 +87,7 @@ def ask_hobby(message: types.Message, state: StateContext):
|
|
|
85
87
|
message.chat.id,
|
|
86
88
|
"What is one of your hobbies? Choose from the options below.",
|
|
87
89
|
reply_markup=keyboard,
|
|
88
|
-
|
|
90
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
89
91
|
)
|
|
90
92
|
|
|
91
93
|
|
|
@@ -124,7 +126,8 @@ def finish(message: types.Message, state: StateContext):
|
|
|
124
126
|
)
|
|
125
127
|
|
|
126
128
|
bot.send_message(
|
|
127
|
-
message.chat.id, msg, parse_mode="html",
|
|
129
|
+
message.chat.id, msg, parse_mode="html",
|
|
130
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
128
131
|
)
|
|
129
132
|
state.delete()
|
|
130
133
|
|
|
@@ -135,7 +138,7 @@ def age_incorrect(message: types.Message):
|
|
|
135
138
|
bot.send_message(
|
|
136
139
|
message.chat.id,
|
|
137
140
|
"Please enter a valid number for age.",
|
|
138
|
-
|
|
141
|
+
reply_parameters=ReplyParameters(message_id=message.message_id),
|
|
139
142
|
)
|
|
140
143
|
|
|
141
144
|
|
|
@@ -4,21 +4,21 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "pyTelegramBotAPI"
|
|
7
|
-
version = "4.
|
|
7
|
+
version = "4.24.0"
|
|
8
8
|
description = "Python Telegram bot api."
|
|
9
9
|
authors = [{name = "eternnoir", email = "eternnoir@gmail.com"}]
|
|
10
10
|
license = {text = "GPL2"}
|
|
11
11
|
readme = "README.md"
|
|
12
|
-
requires-python = ">=3.
|
|
12
|
+
requires-python = ">=3.9"
|
|
13
13
|
keywords = ["telegram", "bot", "api", "tools"]
|
|
14
14
|
classifiers = [
|
|
15
15
|
"Development Status :: 5 - Production/Stable",
|
|
16
16
|
"Programming Language :: Python :: 3",
|
|
17
|
-
"Programming Language :: Python :: 3.8",
|
|
18
17
|
"Programming Language :: Python :: 3.9",
|
|
19
18
|
"Programming Language :: Python :: 3.10",
|
|
20
19
|
"Programming Language :: Python :: 3.11",
|
|
21
20
|
"Programming Language :: Python :: 3.12",
|
|
21
|
+
"Programming Language :: Python :: 3.13",
|
|
22
22
|
"Environment :: Console",
|
|
23
23
|
"License :: OSI Approved :: GNU General Public License v2 (GPLv2)"
|
|
24
24
|
]
|