Skip to content

v0.3.0-alpha

Choose a tag to compare

@CrazyAngelm CrazyAngelm released this 25 Nov 04:44
· 76 commits to main since this release

Added

  • Полная синхронизация типов Update с официальной документацией Max API.
  • Расширение UpdateType enum: добавлены все 16 официальных типов обновлений (MessageCreated, MessageCallback, MessageEdited, MessageRemoved, BotAdded, BotRemoved, BotStarted, BotStopped, DialogMuted, DialogUnmuted, DialogCleared, DialogRemoved, UserAdded, UserRemoved, ChatTitleChanged, MessageChatCreated).
  • Типизированные обёртки для всех типов update: MessageEditedUpdate, MessageRemovedUpdate, BotAddedUpdate, BotRemovedUpdate, BotStartedUpdate, BotStoppedUpdate, UserAddedUpdate, UserRemovedUpdate, ChatTitleChangedUpdate, MessageChatCreatedUpdate и другие.
  • Свойство Update.Callback для доступа к callback-запросам (соответствует API полю callback).
  • Свойства Update.Chat, Update.User, Update.InviterId, Update.ChatId, Update.IsMuted для различных типов обновлений.
  • Свойство Chat.ChatId как основное поле, соответствующее API полю chat_id.
  • Свойство Message.Sender как основное поле, соответствующее API полю sender.
  • Класс LinkedMessage для представления связанных сообщений (forward/reply).
  • Unit-тесты для всех новых типов update с примерами из реального API.

Changed

  • UpdateType.Message и UpdateType.CallbackQuery помечены как устаревшие (используйте MessageCreated и MessageCallback).
  • Update.CallbackQuery помечено как устаревшее (используйте Update.Callback).
  • Message.From помечено как устаревшее (используйте Message.Sender).
  • Chat.Id теперь read-only свойство-алиас для Chat.ChatId (для обратной совместимости).
  • ChatType.Private и ChatType.Group помечены как устаревшие (используйте Dialog и Chat соответственно).
  • Значения ChatType enum приведены в соответствие с API: Dialog (вместо Private), Chat (вместо Group).
  • UpdateJsonConverter обновлён для корректной десериализации всех типов update и их специфичных полей.
  • UpdateHandlerExecutor обновлён для использования новых значений UpdateType.MessageCreated и UpdateType.MessageCallback.
  • Все примеры и тесты обновлены для использования новых API-совместимых имён полей.

Fixed

  • Исправлена десериализация ChatType enum: добавлен JsonStringEnumConverter для корректного преобразования строковых значений API.
  • Исправлена десериализация Update объектов: все поля теперь корректно парсятся в зависимости от update_type.
  • Исправлены тесты для соответствия новой структуре API (использование chat_id вместо id, sender вместо from, dialog/chat вместо private/group).

Full Changelog: v0.2.6-alpha...v0.3.0-alpha