Перейти к содержанию

Pin_message

maxapi.methods.pin_message.PinMessage(bot, chat_id, message_id, notify=None)

Bases: BaseConnection

Класс для закрепления сообщения в чате.

https://dev.max.ru/docs-api/methods/PUT/chats/-chatId-/pin

Attributes:

Name Type Description
bot Bot

Экземпляр бота для выполнения запроса.

chat_id int

Идентификатор чата, в котором закрепляется сообщение.

message_id str

Идентификатор сообщения для закрепления.

notify bool

Отправлять ли уведомление о закреплении (по умолчанию True).

Source code in maxapi/methods/pin_message.py
def __init__(
    self,
    bot: "Bot",
    chat_id: int,
    message_id: str,
    notify: Optional[bool] = None,
):
    self.bot = bot
    self.chat_id = chat_id
    self.message_id = message_id
    self.notify = notify

fetch() async

Выполняет PUT-запрос для закрепления сообщения в чате.

Формирует тело запроса с ID сообщения и флагом уведомления.

Returns:

Name Type Description
PinnedMessage PinnedMessage

Объект с информацией о закреплённом сообщении.

Source code in maxapi/methods/pin_message.py
async def fetch(self) -> PinnedMessage:
    """
    Выполняет PUT-запрос для закрепления сообщения в чате.

    Формирует тело запроса с ID сообщения и флагом уведомления.

    Returns:
        PinnedMessage: Объект с информацией о закреплённом сообщении.
    """

    bot = self._ensure_bot()

    json: Dict[str, Any] = {}

    json["message_id"] = self.message_id
    json["notify"] = self.notify

    response = await super().request(
        method=HTTPMethod.PUT,
        path=ApiPath.CHATS + "/" + str(self.chat_id) + ApiPath.PIN,
        model=PinnedMessage,
        params=bot.params,
        json=json,
    )

    return cast(PinnedMessage, response)