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

Comment

CommentMessageBody

Bases: BaseMessageBody

Модель тела комментария.

В отличие от тела обычного сообщения не содержит вложений attachments.

Attributes:

Name Type Description
mid str

Уникальный идентификатор комментария.

seq int

Порядковый номер расположения комментария в посте.

text str | None

Текст комментария. Может быть None.

markup list[MarkupUserMention | MarkupLink | MarkupElement] | None

Список элементов разметки. По умолчанию пустой список.

CommentLinkedMessage

Bases: BaseModel

Модель комментария, на который получен ответ.

Attributes:

Name Type Description
type MessageLinkType

Тип связанного сообщения. Для комментариев поддерживается только reply.

sender User | None

Пользователь или бот, отправивший комментарий. Может быть None.

chat_id int | None

Чат или канал, в котором сообщение было изначально опубликовано. Может быть None.

message CommentMessageBody

Тело связанного комментария.

CommentMessage

Bases: BaseModel, BotMixin

Модель комментария к посту в канале.

Возвращается в ответ на запросы группы /comments. В отличие от обычного сообщения не содержит вложений attachments и не поддерживает пересылку комментариев.

Attributes:

Name Type Description
sender User | None

Пользователь, отправивший комментарий. Может быть None, если комментарий опубликован от имени канала.

recipient Recipient

Получатель сообщения: для комментариев — канал.

timestamp int

Время создания комментария в формате Unix timestamp в миллисекундах.

link CommentLinkedMessage | None

Комментарий, на который получен ответ. Может быть None.

body CommentMessageBody

Информация о комментарии.

post_message_id str | None

ID поста (mid), к которому относится комментарий. Заполняется из recipient.post_id, если API его вернул, иначе — библиотекой из контекста запроса, когда комментарий получен через методы бота (get_comments, get_comment, send_comment). Исключается из сериализации.

bot Any | None

Объект бота, исключается из сериализации.

reply(text=None, format=None) async

Отправляет ответ на текущий комментарий (автозаполнение message_id, link).

Parameters:

Name Type Description Default
text str | None

Текст комментария.

None
format TextFormat | None

Режим форматирования текста. В комментариях не поддерживаются упоминания и гиперссылки.

None

Returns:

Name Type Description
SendedComment SendedComment

Результат выполнения метода send_comment бота.

Source code in maxapi/types/comment.py
async def reply(
    self,
    text: str | None = None,
    format: TextFormat | None = None,
) -> SendedComment:
    """
    Отправляет ответ на текущий комментарий
    (автозаполнение message_id, link).

    Args:
        text: Текст комментария.
        format: Режим форматирования текста. В комментариях
            не поддерживаются упоминания и гиперссылки.

    Returns:
        SendedComment: Результат выполнения метода
            send_comment бота.
    """

    return await self._ensure_bot().send_comment(
        message_id=self._ensure_post_message_id(),
        text=text,
        link=NewMessageLink(type=MessageLinkType.REPLY, mid=self.body.mid),
        format=format,
    )

edit(text=None, link=None, format=None) async

Редактирует текущий комментарий (автозаполнение message_id, comment_id).

Parameters:

Name Type Description Default
text str | None

Новый текст комментария.

None
link NewMessageLink | None

Ссылка на комментарий (например, ответ).

None
format TextFormat | None

Режим форматирования текста. В комментариях не поддерживаются упоминания и гиперссылки.

None

Returns:

Name Type Description
EditedComment EditedComment

Результат выполнения метода edit_comment бота.

Source code in maxapi/types/comment.py
async def edit(
    self,
    text: str | None = None,
    link: NewMessageLink | None = None,
    format: TextFormat | None = None,
) -> EditedComment:
    """
    Редактирует текущий комментарий
    (автозаполнение message_id, comment_id).

    Args:
        text: Новый текст комментария.
        link: Ссылка на комментарий (например, ответ).
        format: Режим форматирования текста. В комментариях
            не поддерживаются упоминания и гиперссылки.

    Returns:
        EditedComment: Результат выполнения метода
            edit_comment бота.
    """

    return await self._ensure_bot().edit_comment(
        message_id=self._ensure_post_message_id(),
        comment_id=self.body.mid,
        text=text,
        link=link,
        format=format,
    )

delete() async

Удаляет текущий комментарий (автозаполнение message_id, comment_id).

Returns:

Name Type Description
DeletedComment DeletedComment

Результат выполнения метода delete_comment бота.

Source code in maxapi/types/comment.py
async def delete(self) -> DeletedComment:
    """
    Удаляет текущий комментарий
    (автозаполнение message_id, comment_id).

    Returns:
        DeletedComment: Результат выполнения метода
            delete_comment бота.
    """

    return await self._ensure_bot().delete_comment(
        message_id=self._ensure_post_message_id(),
        comment_id=self.body.mid,
    )

Comments

Bases: BaseModel

Модель списка комментариев к посту.

Attributes:

Name Type Description
messages list[CommentMessage]

Список комментариев.

bot Any | None

Объект бота, исключается из сериализации.