pyTelegramBotAPI 4.17.0__tar.gz → 4.18.1__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.17.0 → pytelegrambotapi-4.18.1}/PKG-INFO +3 -2
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/README.md +2 -1
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/conf.py +72 -72
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/echo_bot.py +25 -27
- pytelegrambotapi-4.18.1/examples/serverless/flask_google_cloud_bot/.gcloudignore +1 -0
- pytelegrambotapi-4.18.1/examples/serverless/flask_google_cloud_bot/app.yaml +4 -0
- pytelegrambotapi-4.18.1/examples/serverless/flask_google_cloud_bot/main.py +65 -0
- pytelegrambotapi-4.18.1/examples/serverless/flask_google_cloud_bot/requirements.txt +4 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/pyproject.toml +1 -1
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/requirements.txt +1 -1
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/__init__.py +8547 -8502
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/apihelper.py +29 -46
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/async_telebot.py +7676 -7637
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/asyncio_filters.py +454 -454
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/asyncio_helper.py +14 -35
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/formatting.py +107 -6
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/types.py +10008 -9712
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/version.py +1 -1
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/tests/test_types.py +11 -1
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/.github/ISSUE_TEMPLATE +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/.github/workflows/setup_python.yml +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/.gitignore +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/.readthedocs.yml +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/.travis.yml +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/LICENSE +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/doc_req.txt +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/Makefile +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/_static/logo.png +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/_static/logo2.png +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/async_version/index.rst +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/calldata.rst +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/formatting.rst +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/index.rst +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/install.rst +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/en/LC_MESSAGES/async_version.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/en/LC_MESSAGES/calldata.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/en/LC_MESSAGES/formatting.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/en/LC_MESSAGES/index.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/en/LC_MESSAGES/install.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/en/LC_MESSAGES/quick_start.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/en/LC_MESSAGES/sync_version.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/en/LC_MESSAGES/types.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/en/LC_MESSAGES/util.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/ru/LC_MESSAGES/async_version.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/ru/LC_MESSAGES/calldata.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/ru/LC_MESSAGES/formatting.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/ru/LC_MESSAGES/index.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/ru/LC_MESSAGES/install.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/ru/LC_MESSAGES/quick_start.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/ru/LC_MESSAGES/sync_version.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/ru/LC_MESSAGES/types.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/locales/ru/LC_MESSAGES/util.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/quick_start.rst +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/sync_version/index.rst +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/types.rst +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/docs/source/util.rst +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/anonymous_bot.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/callback_data_examples/advanced_calendar_example/filters.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/callback_data_examples/advanced_calendar_example/keyboards.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/callback_data_examples/advanced_calendar_example/main.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/callback_data_examples/simple_products_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/chat_join_request.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/chat_member_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/continue_handling.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/custom_filters/admin_filter_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/custom_filters/advanced_text_filter.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/custom_filters/general_custom_filters.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/custom_filters/id_filter_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/custom_filters/is_filter_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/custom_filters/text_filter_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/custom_states.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/detect_changes.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/download_file_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/exception_handler.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/formatting_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/message_reaction_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/middleware/flooding_middleware.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/middleware/i18n.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/middleware/i18n_middleware_example/i18n_base_midddleware.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/middleware/i18n_middleware_example/keyboards.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/middleware/i18n_middleware_example/locales/en/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/middleware/i18n_middleware_example/locales/ru/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/middleware/i18n_middleware_example/locales/uz_Latn/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/middleware/i18n_middleware_example/main.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/multibot/README.MD +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/multibot/config.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/multibot/handlers.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/multibot/main.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/multibot/nginx_conf.conf +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/register_handler.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/send_file_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/set_command_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/skip_updates_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/timer_bot_async.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/update_listener.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/webhooks/async_webhook_aiohttp_echo_bot.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/webhooks/run_webhooks.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/webhooks/webhook_starlette_echo_bot.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/callback_data_examples/advanced_calendar_example/filters.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/callback_data_examples/advanced_calendar_example/keyboards.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/callback_data_examples/advanced_calendar_example/main.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/callback_data_examples/simple_products_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/chat_join_request.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/chat_member_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/continue_handling.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/create_invite_link.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/custom_filters/admin_filter_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/custom_filters/advanced_text_filter.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/custom_filters/general_custom_filters.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/custom_filters/id_filter_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/custom_filters/is_filter_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/custom_filters/text_filter_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/custom_states.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/deep_linking.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/detailed_example/detailed_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/detailed_example/kitten.jpg +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/detailed_example/rooster.jpg +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/detect_changes.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/download_file_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/echo_bot.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/formatting_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/inline_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/inline_keyboard_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/message_reaction_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/README.md +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/class_based/antiflood_middleware.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/class_based/basic_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/class_based/i18n_middleware/i18n_base_middleware.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/class_based/i18n_middleware/keyboards.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/class_based/i18n_middleware/locales/en/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/class_based/i18n_middleware/locales/ru/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/class_based/i18n_middleware/locales/uz_Latn/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/class_based/i18n_middleware/main.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/function_based/i18n.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/function_based/i18n_gettext/i18n_class.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/function_based/i18n_gettext/keyboards.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/function_based/i18n_gettext/locales/en/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/function_based/i18n_gettext/locales/ru/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/function_based/i18n_gettext/locales/uz_Latn/LC_MESSAGES/messages.po +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/function_based/i18n_gettext/main.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/middleware/function_based/session.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/multibot/README.MD +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/multibot/config.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/multibot/handlers.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/multibot/main.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/multibot/nginx_conf.conf +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/payments_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/poll_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/register_handler.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/reply_keyboard_markup_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/serverless/aws_lambda_function.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/serverless/azure_functions +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/set_command_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/skip_updates_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/step_example.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/telebot_bot/telebot_bot.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/timer_bot.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/webhook_examples/README.md +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/webhook_examples/run_webhooks.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/webhook_examples/webhook_aiohttp_echo_bot.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/webhook_examples/webhook_cherrypy_echo_bot.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/webhook_examples/webhook_cpython_echo_bot.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/webhook_examples/webhook_fastapi_echo_bot.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/webhook_examples/webhook_flask_echo_bot.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/webhook_examples/webhook_flask_heroku_echo.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/webhook_examples/webhook_tornado_echo_bot.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/webhook_examples/webhook_twisted_echo_bot.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/asyncio_handler_backends.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/asyncio_storage/__init__.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/asyncio_storage/base_storage.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/asyncio_storage/memory_storage.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/asyncio_storage/pickle_storage.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/asyncio_storage/redis_storage.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/callback_data.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/custom_filters.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/ext/__init__.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/ext/aio/__init__.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/ext/aio/webhooks.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/ext/reloader.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/ext/sync/__init__.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/ext/sync/webhooks.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/handler_backends.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/service_utils.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/storage/__init__.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/storage/base_storage.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/storage/memory_storage.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/storage/pickle_storage.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/storage/redis_storage.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/telebot/util.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/tests/__init__.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/tests/test_data/record.mp3 +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/tests/test_data/record.ogg +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/tests/test_data/record.wav +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/tests/test_data/test_video.mp4 +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/tests/test_handler_backends.py +0 -0
- {pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/tests/test_telebot.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: pyTelegramBotAPI
|
|
3
|
-
Version: 4.
|
|
3
|
+
Version: 4.18.1
|
|
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
|
|
@@ -55,7 +55,7 @@ Description-Content-Type: text/markdown
|
|
|
55
55
|
<p align="center">A simple, but extensible Python implementation for the <a href="https://core.telegram.org/bots/api">Telegram Bot API</a>.</p>
|
|
56
56
|
<p align="center">Both synchronous and asynchronous.</p>
|
|
57
57
|
|
|
58
|
-
## <p align="center">Supported Bot API version: <a href="https://core.telegram.org/bots/api#
|
|
58
|
+
## <p align="center">Supported Bot API version: <a href="https://core.telegram.org/bots/api#may-6-2024">7.3</a>!
|
|
59
59
|
|
|
60
60
|
<h2><a href='https://pytba.readthedocs.io/en/latest/index.html'>Official documentation</a></h2>
|
|
61
61
|
<h2><a href='https://pytba.readthedocs.io/ru/latest/index.html'>Official ru documentation</a></h2>
|
|
@@ -935,5 +935,6 @@ Here are some examples of template:
|
|
|
935
935
|
* [Best Instagram Downloader Bot](https://t.me/Best_Instagram_Downloader_Bot) ([source](https://github.com/arashnm80/best-instagram-downloader)) by [Arashnm80](https://github.com/arashnm80). Free and open source telegram bot to download posts and reels from Instagram.
|
|
936
936
|
* [4K YouTube Downloader](https://github.com/hansanaD/TelegramYTDLBot/) - Youtube Downloader with upto 4K resolution support.
|
|
937
937
|
* [DrinkGenius-Bot](https://t.me/cocktail_recommendation_bot) ([source](https://github.com/Povladarchik/DrinkGenius-Bot)) by [Povladarchik](https://github.com/Povladarchik). Your personal assistant in the world of cocktails.
|
|
938
|
+
* [Pytgpt-Bot](https://t.me/pytgpt_bot) ([source](https://github.com/Simatwa/pytgpt-bot)) by [Smartwa](https://github.com/Simatwa). AI powered bot for chatting, text-to-image and text-to-speech conversions.
|
|
938
939
|
|
|
939
940
|
**Want to have your bot listed here? Just make a pull request. Only bots with public source code are accepted.**
|
|
@@ -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#may-6-2024">7.3</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>
|
|
@@ -890,5 +890,6 @@ Here are some examples of template:
|
|
|
890
890
|
* [Best Instagram Downloader Bot](https://t.me/Best_Instagram_Downloader_Bot) ([source](https://github.com/arashnm80/best-instagram-downloader)) by [Arashnm80](https://github.com/arashnm80). Free and open source telegram bot to download posts and reels from Instagram.
|
|
891
891
|
* [4K YouTube Downloader](https://github.com/hansanaD/TelegramYTDLBot/) - Youtube Downloader with upto 4K resolution support.
|
|
892
892
|
* [DrinkGenius-Bot](https://t.me/cocktail_recommendation_bot) ([source](https://github.com/Povladarchik/DrinkGenius-Bot)) by [Povladarchik](https://github.com/Povladarchik). Your personal assistant in the world of cocktails.
|
|
893
|
+
* [Pytgpt-Bot](https://t.me/pytgpt_bot) ([source](https://github.com/Simatwa/pytgpt-bot)) by [Smartwa](https://github.com/Simatwa). AI powered bot for chatting, text-to-image and text-to-speech conversions.
|
|
893
894
|
|
|
894
895
|
**Want to have your bot listed here? Just make a pull request. Only bots with public source code are accepted.**
|
|
@@ -1,72 +1,72 @@
|
|
|
1
|
-
# Configuration file for the Sphinx documentation builder.
|
|
2
|
-
#
|
|
3
|
-
# This file only contains a selection of the most common options. For a full
|
|
4
|
-
# list see the documentation:
|
|
5
|
-
# https://www.sphinx-doc.org/en/master/usage/configuration.html
|
|
6
|
-
|
|
7
|
-
# -- Path setup --------------------------------------------------------------
|
|
8
|
-
|
|
9
|
-
# If extensions (or modules to document with autodoc) are in another directory,
|
|
10
|
-
# add these directories to sys.path here. If the directory is relative to the
|
|
11
|
-
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
|
12
|
-
#
|
|
13
|
-
# import os
|
|
14
|
-
# import sys
|
|
15
|
-
# sys.path.insert(0, os.path.abspath('.'))
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
# -- Project information -----------------------------------------------------
|
|
19
|
-
|
|
20
|
-
project = 'pyTelegramBotAPI
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
# The full version, including alpha/beta/rc tags
|
|
25
|
-
release = '4.
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
# -- General configuration ---------------------------------------------------
|
|
29
|
-
|
|
30
|
-
# Add any Sphinx extension module names here, as strings. They can be
|
|
31
|
-
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
|
|
32
|
-
# ones.
|
|
33
|
-
extensions = [
|
|
34
|
-
'sphinx.ext.autosectionlabel',
|
|
35
|
-
'sphinx.ext.autodoc',
|
|
36
|
-
"sphinx.ext.autosummary",
|
|
37
|
-
"sphinx.ext.napoleon",
|
|
38
|
-
"sphinx_copybutton",
|
|
39
|
-
|
|
40
|
-
]
|
|
41
|
-
|
|
42
|
-
# Add any paths that contain templates here, relative to this directory.
|
|
43
|
-
templates_path = ['_templates']
|
|
44
|
-
|
|
45
|
-
# List of patterns, relative to source directory, that match files and
|
|
46
|
-
# directories to ignore when looking for source files.
|
|
47
|
-
# This pattern also affects html_static_path and html_extra_path.
|
|
48
|
-
exclude_patterns = []
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
# -- Options for HTML output -------------------------------------------------
|
|
52
|
-
|
|
53
|
-
# The theme to use for HTML and HTML Help pages. See the documentation for
|
|
54
|
-
# a list of builtin themes.
|
|
55
|
-
#
|
|
56
|
-
html_theme = 'furo'
|
|
57
|
-
|
|
58
|
-
# Add any paths that contain custom static files (such as style sheets) here,
|
|
59
|
-
# relative to this directory. They are copied after the builtin static files,
|
|
60
|
-
# so a file named "default.css" will overwrite the builtin "default.css".
|
|
61
|
-
html_static_path = ['_static']
|
|
62
|
-
#html_logo = 'logo.png'
|
|
63
|
-
html_theme_options = {
|
|
64
|
-
"light_css_variables": {
|
|
65
|
-
"color-brand-primary": "#7C4DFF",
|
|
66
|
-
"color-brand-content": "#7C4DFF",
|
|
67
|
-
},
|
|
68
|
-
"light_logo": "logo.png",
|
|
69
|
-
"dark_logo": "logo2.png",
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
locale_dirs = ["locales/"]
|
|
1
|
+
# Configuration file for the Sphinx documentation builder.
|
|
2
|
+
#
|
|
3
|
+
# This file only contains a selection of the most common options. For a full
|
|
4
|
+
# list see the documentation:
|
|
5
|
+
# https://www.sphinx-doc.org/en/master/usage/configuration.html
|
|
6
|
+
|
|
7
|
+
# -- Path setup --------------------------------------------------------------
|
|
8
|
+
|
|
9
|
+
# If extensions (or modules to document with autodoc) are in another directory,
|
|
10
|
+
# add these directories to sys.path here. If the directory is relative to the
|
|
11
|
+
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
|
12
|
+
#
|
|
13
|
+
# import os
|
|
14
|
+
# import sys
|
|
15
|
+
# sys.path.insert(0, os.path.abspath('.'))
|
|
16
|
+
from datetime import datetime
|
|
17
|
+
|
|
18
|
+
# -- Project information -----------------------------------------------------
|
|
19
|
+
|
|
20
|
+
project = 'pyTelegramBotAPI'
|
|
21
|
+
author = 'coder2020official'
|
|
22
|
+
copyright = f'2022-{datetime.now().year}, {author}'
|
|
23
|
+
|
|
24
|
+
# The full version, including alpha/beta/rc tags
|
|
25
|
+
release = '4.18.1'
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
# -- General configuration ---------------------------------------------------
|
|
29
|
+
|
|
30
|
+
# Add any Sphinx extension module names here, as strings. They can be
|
|
31
|
+
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
|
|
32
|
+
# ones.
|
|
33
|
+
extensions = [
|
|
34
|
+
'sphinx.ext.autosectionlabel',
|
|
35
|
+
'sphinx.ext.autodoc',
|
|
36
|
+
"sphinx.ext.autosummary",
|
|
37
|
+
"sphinx.ext.napoleon",
|
|
38
|
+
"sphinx_copybutton",
|
|
39
|
+
|
|
40
|
+
]
|
|
41
|
+
|
|
42
|
+
# Add any paths that contain templates here, relative to this directory.
|
|
43
|
+
templates_path = ['_templates']
|
|
44
|
+
|
|
45
|
+
# List of patterns, relative to source directory, that match files and
|
|
46
|
+
# directories to ignore when looking for source files.
|
|
47
|
+
# This pattern also affects html_static_path and html_extra_path.
|
|
48
|
+
exclude_patterns = []
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
# -- Options for HTML output -------------------------------------------------
|
|
52
|
+
|
|
53
|
+
# The theme to use for HTML and HTML Help pages. See the documentation for
|
|
54
|
+
# a list of builtin themes.
|
|
55
|
+
#
|
|
56
|
+
html_theme = 'furo'
|
|
57
|
+
|
|
58
|
+
# Add any paths that contain custom static files (such as style sheets) here,
|
|
59
|
+
# relative to this directory. They are copied after the builtin static files,
|
|
60
|
+
# so a file named "default.css" will overwrite the builtin "default.css".
|
|
61
|
+
html_static_path = ['_static']
|
|
62
|
+
#html_logo = 'logo.png'
|
|
63
|
+
html_theme_options = {
|
|
64
|
+
"light_css_variables": {
|
|
65
|
+
"color-brand-primary": "#7C4DFF",
|
|
66
|
+
"color-brand-content": "#7C4DFF",
|
|
67
|
+
},
|
|
68
|
+
"light_logo": "logo.png",
|
|
69
|
+
"dark_logo": "logo2.png",
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
locale_dirs = ["locales/"]
|
{pytelegrambotapi-4.17.0 → pytelegrambotapi-4.18.1}/examples/asynchronous_telebot/echo_bot.py
RENAMED
|
@@ -1,27 +1,25 @@
|
|
|
1
|
-
#!/usr/bin/python
|
|
2
|
-
|
|
3
|
-
# This is a simple echo bot using the decorator mechanism.
|
|
4
|
-
# It echoes any incoming text messages.
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
Hi
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
import asyncio
|
|
27
|
-
asyncio.run(bot.polling())
|
|
1
|
+
#!/usr/bin/python
|
|
2
|
+
|
|
3
|
+
# This is a simple echo bot using the decorator mechanism.
|
|
4
|
+
# It echoes any incoming text messages.
|
|
5
|
+
import asyncio
|
|
6
|
+
|
|
7
|
+
from telebot.async_telebot import AsyncTeleBot
|
|
8
|
+
|
|
9
|
+
bot = AsyncTeleBot('TOKEN')
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
# Handle '/start' and '/help'
|
|
13
|
+
@bot.message_handler(commands=['help', 'start'])
|
|
14
|
+
async def send_welcome(message):
|
|
15
|
+
text = 'Hi, I am EchoBot.\nJust write me something and I will repeat it!'
|
|
16
|
+
await bot.reply_to(message, text)
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
# Handle all other messages with content_type 'text' (content_types defaults to ['text'])
|
|
20
|
+
@bot.message_handler(func=lambda message: True)
|
|
21
|
+
async def echo_message(message):
|
|
22
|
+
await bot.reply_to(message, message.text)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
asyncio.run(bot.polling())
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
env/
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
'''
|
|
2
|
+
Simple bot for Google cloud deployment.
|
|
3
|
+
|
|
4
|
+
Docs:
|
|
5
|
+
https://cloud.google.com/run/docs/quickstarts/build-and-deploy/deploy-python-service
|
|
6
|
+
|
|
7
|
+
1. Receive your bot's token from https://t.me/BotFather
|
|
8
|
+
|
|
9
|
+
2. Create a Google Cloud project. https://cloud.google.com/resource-manager/docs/creating-managing-projects
|
|
10
|
+
|
|
11
|
+
3. Install the Google Cloud CLI. https://cloud.google.com/sdk/docs/install
|
|
12
|
+
|
|
13
|
+
4. Move to telegram_google_cloud_bot folder
|
|
14
|
+
|
|
15
|
+
cd telegram_google_cloud_bot/
|
|
16
|
+
|
|
17
|
+
5. Initialize the gcloud CLI:
|
|
18
|
+
|
|
19
|
+
gcloud init
|
|
20
|
+
|
|
21
|
+
6. To set the default project for your Cloud Run service:
|
|
22
|
+
|
|
23
|
+
gcloud config set project PROJECT_ID
|
|
24
|
+
|
|
25
|
+
7. Deploy:
|
|
26
|
+
|
|
27
|
+
gcloud run deploy
|
|
28
|
+
'''
|
|
29
|
+
|
|
30
|
+
import os
|
|
31
|
+
|
|
32
|
+
from flask import Flask, request
|
|
33
|
+
|
|
34
|
+
import telebot
|
|
35
|
+
|
|
36
|
+
TOKEN = 'token_from_botfather'
|
|
37
|
+
|
|
38
|
+
bot = telebot.TeleBot(TOKEN)
|
|
39
|
+
|
|
40
|
+
app = Flask(__name__)
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
@bot.message_handler(commands=['start'])
|
|
44
|
+
def start(message):
|
|
45
|
+
bot.reply_to(message, 'Hello, ' + message.from_user.first_name)
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
@bot.message_handler(func=lambda message: True, content_types=['text'])
|
|
49
|
+
def echo_message(message):
|
|
50
|
+
bot.reply_to(message, message.text)
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
@app.route('/' + TOKEN, methods=['POST'])
|
|
54
|
+
def getMessage():
|
|
55
|
+
json_string = request.get_data().decode('utf-8')
|
|
56
|
+
update = telebot.types.Update.de_json(json_string)
|
|
57
|
+
bot.process_new_updates([update])
|
|
58
|
+
return '!', 200
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
@app.route('/')
|
|
62
|
+
def webhook():
|
|
63
|
+
bot.remove_webhook()
|
|
64
|
+
bot.set_webhook(url='https://mydomain.com/' + TOKEN)
|
|
65
|
+
return '!', 200
|