Skip to content

Получение присылаемых файлов не работает, вообще, в принципе #20

Closed

Description

@LyohaLyoha

Модель для десериализации - ДАЖЕ РЯДОМ НЕ СТОЯЛА с тем что приходит от max.
В модели - PhotoAttachment, с полем Photo, у которого в свойствах Id, FileId, Width, Height...

ОТКУДА у вас это? Этого и близко никогда не было в максе, вы хоть в документацию-то его заглядывали?
Вот какой json приходит при отправке картинки боту

           {
              "payload": {
                "photo_id": 9290792871,
                "token": "...",
                "url": "..."
              },
              "type": "image"
            }

ВСЕ.

А у вас - груда полей тупо из протокола телеги...

Такое выкладывать, и болдом писать о полной совместимости с api max покрытой и проверенной сотнями тестов - это шутка такая?

Activity

  1. CrazyAngelm commented on Oct 11, 2026

    @CrazyAngelm
    Contributor

    Спасибо за отчёт. Разбор PhotoAttachment из формата {"type":"image","payload":{"photo_id","token","url"}} был исправлен ещё в 0.6.2-alpha, но модель называла токен FileId, и это сбивало с толку.

    В MaxMessenger.Bot 0.7.0-alpha:

    • у фото, видео, аудио и файлов появилось свойство Token (FileId оставлен для обратной совместимости и содержит тот же токен);
    • photo_id попадает в Id, url — в Url;
    • данные из payload и корня вложения объединяются, поэтому у файлов заполняются FileName/FileSize (filename/size), а у видео — длительность и превью;
    • добавлены типы StickerAttachment и ShareAttachment.
    if (attachment is PhotoAttachment photo)
    {
        Console.WriteLine($"{photo.Id} {photo.Url}");
        // переслать то же фото:
        await client.Messages.SendMessageWithAttachmentAsync(AttachmentRequest.Image(photo.Token!), chatId: chatId);
    }

    Каждый формат закреплён тестом на реальном JSON. Закрываю.


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions