Added full support of Bot API 7.8 (#1551)

* Added full support of Bot API 7.8

* Added changelog

* Try to fix tests on Windows

* scope=session?

* Try another way

* Just try to set custom event loop policy manually

* Revert "Just try to set custom event loop policy manually"

This reverts commit 04ee60d878.

* Just try to set custom event loop policy manually
This commit is contained in:
Alex Root Junior 2024-08-09 19:10:39 +03:00 committed by GitHub
parent 3ba724e2fa
commit cf3a6c3d59
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
20 changed files with 132 additions and 30 deletions

View file

@ -19,6 +19,8 @@ class PinChatMessage(TelegramMethod[bool]):
"""Unique identifier for the target chat or username of the target channel (in the format :code:`@channelusername`)"""
message_id: int
"""Identifier of a message to pin"""
business_connection_id: Optional[str] = None
"""Unique identifier of the business connection on behalf of which the message will be pinned"""
disable_notification: Optional[bool] = None
"""Pass :code:`True` if it is not necessary to send a notification to all chat members about the new pinned message. Notifications are always disabled in channels and private chats."""
@ -31,6 +33,7 @@ class PinChatMessage(TelegramMethod[bool]):
*,
chat_id: Union[int, str],
message_id: int,
business_connection_id: Optional[str] = None,
disable_notification: Optional[bool] = None,
**__pydantic_kwargs: Any,
) -> None:
@ -41,6 +44,7 @@ class PinChatMessage(TelegramMethod[bool]):
super().__init__(
chat_id=chat_id,
message_id=message_id,
business_connection_id=business_connection_id,
disable_notification=disable_notification,
**__pydantic_kwargs,
)

View file

@ -23,7 +23,7 @@ class SetStickerSetThumbnail(TelegramMethod[bool]):
format: str
"""Format of the thumbnail, must be one of 'static' for a **.WEBP** or **.PNG** image, 'animated' for a **.TGS** animation, or 'video' for a **WEBM** video"""
thumbnail: Optional[Union[InputFile, str]] = None
"""A **.WEBP** or **.PNG** image with the thumbnail, must be up to 128 kilobytes in size and have a width and height of exactly 100px, or a **.TGS** animation with a thumbnail up to 32 kilobytes in size (see `https://core.telegram.org/stickers#animated-sticker-requirements <https://core.telegram.org/stickers#animated-sticker-requirements>`_`https://core.telegram.org/stickers#animated-sticker-requirements <https://core.telegram.org/stickers#animated-sticker-requirements>`_ for animated sticker technical requirements), or a **WEBM** video with the thumbnail up to 32 kilobytes in size; see `https://core.telegram.org/stickers#video-sticker-requirements <https://core.telegram.org/stickers#video-sticker-requirements>`_`https://core.telegram.org/stickers#video-sticker-requirements <https://core.telegram.org/stickers#video-sticker-requirements>`_ for video sticker technical requirements. Pass a *file_id* as a String to send a file that already exists on the Telegram servers, pass an HTTP URL as a String for Telegram to get a file from the Internet, or upload a new one using multipart/form-data. :ref:`More information on Sending Files » <sending-files>`. Animated and video sticker set thumbnails can't be uploaded via HTTP URL. If omitted, then the thumbnail is dropped and the first sticker is used as the thumbnail."""
"""A **.WEBP** or **.PNG** image with the thumbnail, must be up to 128 kilobytes in size and have a width and height of exactly 100px, or a **.TGS** animation with a thumbnail up to 32 kilobytes in size (see `https://core.telegram.org/stickers#animation-requirements <https://core.telegram.org/stickers#animation-requirements>`_`https://core.telegram.org/stickers#animation-requirements <https://core.telegram.org/stickers#animation-requirements>`_ for animated sticker technical requirements), or a **WEBM** video with the thumbnail up to 32 kilobytes in size; see `https://core.telegram.org/stickers#video-requirements <https://core.telegram.org/stickers#video-requirements>`_`https://core.telegram.org/stickers#video-requirements <https://core.telegram.org/stickers#video-requirements>`_ for video sticker technical requirements. Pass a *file_id* as a String to send a file that already exists on the Telegram servers, pass an HTTP URL as a String for Telegram to get a file from the Internet, or upload a new one using multipart/form-data. :ref:`More information on Sending Files » <sending-files>`. Animated and video sticker set thumbnails can't be uploaded via HTTP URL. If omitted, then the thumbnail is dropped and the first sticker is used as the thumbnail."""
if TYPE_CHECKING:
# DO NOT EDIT MANUALLY!!!

View file

@ -17,8 +17,10 @@ class UnpinChatMessage(TelegramMethod[bool]):
chat_id: Union[int, str]
"""Unique identifier for the target chat or username of the target channel (in the format :code:`@channelusername`)"""
business_connection_id: Optional[str] = None
"""Unique identifier of the business connection on behalf of which the message will be unpinned"""
message_id: Optional[int] = None
"""Identifier of a message to unpin. If not specified, the most recent pinned message (by sending date) will be unpinned."""
"""Identifier of the message to unpin. Required if *business_connection_id* is specified. If not specified, the most recent pinned message (by sending date) will be unpinned."""
if TYPE_CHECKING:
# DO NOT EDIT MANUALLY!!!
@ -28,6 +30,7 @@ class UnpinChatMessage(TelegramMethod[bool]):
__pydantic__self__,
*,
chat_id: Union[int, str],
business_connection_id: Optional[str] = None,
message_id: Optional[int] = None,
**__pydantic_kwargs: Any,
) -> None:
@ -35,4 +38,9 @@ class UnpinChatMessage(TelegramMethod[bool]):
# This method was auto-generated via `butcher`
# Is needed only for type checking and IDE support without any additional plugins
super().__init__(chat_id=chat_id, message_id=message_id, **__pydantic_kwargs)
super().__init__(
chat_id=chat_id,
business_connection_id=business_connection_id,
message_id=message_id,
**__pydantic_kwargs,
)