Skip to content

Голосовое в polling: message_created без message, обновление дропается #191

Description

@MrFunyFirst

Симптом

Бот (maxapi 1.2.2, long polling via dp.start_polling) не отвечает на голосовые.
В логе:

  WARNING:maxapi.methods.types.getted_updates:Получен неизвестный тип обновления: message_created.

Сырое обновление из polling:

  {"timestamp": 1786966682795, "user_locale": "ru", "update_type": "message_created"}

То есть update приходит БЕЗ поля message. Валидатор MessageCreated его отклоняет
(поле обязательное) и update молча пропускается в process_update_request.

Что работает в том же polling

  • Текст -> message_created c message.body.text — OK
  • Картинка -> message_created c message + Image в attachments — OK
  • Голос -> message_created БЕЗ message — дропается

Вопросы (прошу уточнить, т.к. в доках ответа нет)

  1. Должно ли голосовое приходить через GET /updates как полный message_created
    с Audio в attachments (включая поле transcription)? Или медиа-вложения в polling
    не передаются в принципе (тогда это ожидаемое поведение, и надо просто документировать)?
  2. Если медиа в polling передаются — тогда почему у голосового нет message:
    это баг обработки на стороне maxapi или сервер отдаёт такой update?
  3. Нужно ли подписываться на какой-то дополнительный update_type, чтобы получать голосовые?
  4. Для диагностики: что должен отдать сервер на голосовое в polling по ожиданиям
    авторов maxapi (пример raw update JSON)?

Воспроизведение

  1. dp.start_polling(bot)
  2. Отправить голосовое в приватный чат
  3. Бот молчит, лог выше

Контекст

  • maxapi 1.2.2, Python 3.12
  • Long polling официально ограничен (скорость/хранение), webhook рекомендуется —
    но в доках Update не сказано про медиа в polling.

Возможно связанное

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions