All Versions
46
Latest Version
Avg Release Cycle
46 days
Latest Release
353 days ago

Changelog History
Page 2

  • v16.0.0-alpha.2 Changes

    May 10, 2021

    Bot API 5.2 (April 26, 2021)

    βž• Added

    • ⏱ Property VoiceChatScheduled to the class Message.
    • ⏱ Types VoiceChatScheduled, InputInvoiceMessageContent
    • πŸ†• New MessageType value: VoiceChatScheduled
    • Property ChatType to the class InlineQuery.
    • πŸ†• New ChatType value: Sender
    • πŸ†• New ChatAction values: RecordVoice, UploadVoice
    • Optional parameters maxTipAmount and suggestedTipAmounts to ITelegramBotClient.SendInvoiceAsync
    • Properties MaxTipAmount and SuggestedTipAmounts to SendInvoiceRequest

    πŸ”„ Changed

    • Parameter order in ITelegramBotClient.UnpinChatMessageAsync
    • Parameter startParameter of the method ITelegramBotClient.SendInvoiceAsync became optional
    • ChatAction values RecordAudio and UploadAudio marked as obsolete
    • ReplyToMessageId and AllowSendingWithoutReply in IReplyMessage, CopyMessageRequest, SendLocationRequest, SendAnimationRequest, SendAudioRequest, SendContactRequest, SendDiceRequest, SendDocumentRequest, SendMediaGroupRequest, SendMessageRequest, SendPhotoRequest, SendPollRequest, SendVenueRequest, SendVideoNoteRequest, SendVideoRequest, SendVoiceRequest, SendGameRequest, SendStickerRequest marked as optional

    ⚠ > ⚠️ WARNING! ⚠️ ⚑️ > After the next Bot API update (Bot API 5.3) there will be a one-time change of the value of the field FileUniqueId in objects of the type PhotoSize and of the fields SmallFileUniqueId and BigFileUniqueId in objects of the type ChatPhoto.

    <!-- --> ⚠ > ⚠️ WARNING! ⚠️ ⚑️ > Service messages about non-bot users joining the chat will be soon removed from large groups. We recommend using the β€œchat_member” update as a replacement.

    <!-- --> ⚠ > ⚠️ WARNING! ⚠️ ⚑️ > After one of the upcoming Bot API updates, user identifiers will become bigger than 231 - 1 and it will be no longer possible to store them in a signed 32-bit integer type. User identifiers will have up to 52 significant bits, so a 64-bit integer or double-precision float type would still be safe for storing them. Please make sure that your code can correctly handle such user identifiers.

    πŸ›  Fixed

    • πŸ“„ Align property order and description with official docs

    βœ‚ Removed

    • Parameter startParameter from SendInvoiceRequest constructor
  • v16.0.0-alpha.1 Changes

    May 01, 2021

    Bot API 5.1 (March 9, 2021)

    Bot API 5.0 (November 4, 2020)

    βž• Added

    • The method ITelegramBotClient.CreateChatInviteLinkAsync
    • The method ITelegramBotClient.EditChatInviteLinkAsync
    • The method ITelegramBotClient.RevokeChatInviteLinkAsync
    • Optional parameter revokeMessages to ITelegramBotClient.KickChatMemberAsync
    • Optional parameters canManageChat, canManageVoiceChats to ITelegramBotClient.KickChatMemberAsync
    • Property RevokeMessages to KickChatMemberRequest
    • Properties CanManageChat, CanManageVoiceChats to PromoteChatMemberRequest
    • Properties CanManageChat, CanManageVoiceChats to ChatMember
    • Properties MessageAutoDeleteTimerChanged, VoiceChatStarted, VoiceChatEnded, VoiceChatParticipantsInvited to Message
    • ⚑️ Properties MyChatMember and ChatMember to Update
    • ⚑️ Types CreateChatInviteLinkRequest, EditChatInviteLinkRequest, RevokeChatInviteLinkRequest, ChatInviteLink, ChatMemberUpdated, MessageAutoDeleteTimerChanged, VoiceChatEnded, VoiceChatParticipantsInvited, VoiceChatStarted
    • πŸ†• New enum value Bowling for Emoji
    • πŸ†• New enum values MessageAutoDeleteTimerChanged, ProximityAlertTriggered, VoiceChatStarted, VoiceChatEnded, VoiceChatParticipantsInvited for MessageType
    • πŸ†• New enum values MyChatMember, ChatMember for UpdateType
    • Delegate AsyncEventHandler<T>
    • Methods:
      • ITelegramBotClient.LogOutAsync
      • ITelegramBotClient.CloseAsync
      • ITelegramBotClient.CopyMessageAsync
      • ITelegramBotClient.UnpinAllChatMessages
    • Optional parameter ipAddress to ITelegramBotClient.SetWebhookAsync
    • ⚑️ Optional parameter dropPendingUpdates to ITelegramBotClient.SetWebhookAsync, ITelegramBotClient.DeleteWebhookAsync
    • Optional parameter allowSendingWithoutReply to the methods SendTextMessageAsync, SendPhotoAsync, SendVideoAsync, SendAnimationAsync, SendAudioAsync, SendDocumentAsync, SendStickerAsync, SendVideoNoteAsync, SendVoiceAsync, SendLocationAsync, SendVenueAsync, SendContactAsync, SendPollAsync, SendDiceAsync, SendInvoiceAsync, SendGameAsync, SendMediaGroupAsync
    • Optional parameter captionEntities to SendTextMessageAsync, SendPhotoAsync, SendVideoAsync, SendAnimationAsync, SendAudioAsync, SendDocumentAsync, SendVoiceAsync, SendPollAsync, EditMessageTextAsync, EditMessageCaptionAsync
    • Optional parameter isAnonymous to ITelegramBotClient.PromoteChatMemberAsync
    • Optional parameter messageId to ITelegramBotClient.UnpinChatMessageAsync
    • Optional parameter onlyIfBanned to ITelegramBotClient.UnbanChatMemberAsync
    • Optional parameter disableContentTypeDetection to ITelegramBotClient.SendDocumentAsync
    • Optional parameter heading to ITelegramBotClient.SendLocationAsync, ITelegramBotClient.EditMessageLiveLocationAsync
    • Optional parameter proximityAlertRadius to ITelegramBotClient.SendLocationAsync, ITelegramBotClient.EditMessageLiveLocationAsync
    • Optional parameter horizontalAccuracy to ITelegramBotClient.SendLocationAsync, ITelegramBotClient.EditMessageLiveLocationAsync
    • Optional parameters googlePlaceId, googlePlaceType to ITelegramBotClient.SendVenueAsync
    • Property IpAddress to SetWebhookRequest, WebhookInfo
    • ⚑️ Property DropPendingUpdates to SetWebhookRequest, DeleteWebhookRequest
    • Property AllowSendingWithoutReply to SendMessageRequest, SendPhotoRequest, SendAudioRequest, SendDocumentRequest, SendStickerRequest, SendVideoRequest, SendAnimationRequest, SendVoiceRequest, SendVideoNoteRequest, SendMediaGroupRequest, SendLocationRequest, SendVenueRequest, SendContactRequest, SendPollRequest, SendDiceRequest, SendInvoiceRequest, SendGameRequest
    • Property CaptionEntities to InputMediaBase, InlineQueryResultPhoto, InlineQueryResultGif, InlineQueryResultMpeg4Gif, InlineQueryResultVideo, InlineQueryResultAudio, InlineQueryResultVoice, InlineQueryResultDocument, InlineQueryResultCachedPhoto, InlineQueryResultCachedGif, InlineQueryResultCachedMpeg4Gif, InlineQueryResultCachedVideo, InlineQueryResultCachedAudio, InlineQueryResultCachedVoice, InlineQueryResultCachedDocument
    • Property Entities to InputTextMessageContent
    • Properties SenderChat, AuthorSignature, ProximityAlertTriggered to Message
    • Properties Bio, LinkedChatId, Location to Chat
    • Property IsAnonymous to ChatMember, PromoteChatMemberRequest
    • Property LivePeriod to Location
    • Property ProximityAlertRadius to Location, InlineQueryResultLocation, InputLocationMessageContent, SendLocationRequest, EditMessageLiveLocationRequest, EditInlineMessageLiveLocationRequest
    • Property HorizontalAccuracy to Location, InlineQueryResultLocation, InputLocationMessageContent, SendLocationRequest, EditMessageLiveLocationRequest, EditInlineMessageLiveLocationRequest
    • Property Heading to Location, InlineQueryResultLocation, SendLocationRequest, EditMessageLiveLocationRequest, EditInlineMessageLiveLocationRequest
    • Property MessageId to PinChatMessageRequest
    • Property OnlyIfBanned to UnbanChatMemberRequest
    • Property FileName to Audio, Video
    • Property DisableContentTypeDetection to MakeRequestAsync, InputMediaDocument
    • Properties GooglePlaceId, GooglePlaceType to SendVenueRequest, Venue, InlineQueryResultVenue, InputVenueMessageContent
    • πŸ†• New enum values Football, SlotMachine for Emoji
    • Type ChatLocation
    • Type ProximityAlertTriggered
    • πŸ‘Œ Support for sending and receiving audio and document albums in the method SendMediaGroupAsync

    πŸ”„ Changed

    • Constructor in TelegramBotClient accepts base url for custom Bot API server as optional third parameter, it accepts only URL's with protocol, host and port parts, everything else is ignored
    • Marked constructor for TelegramBotClient accepting IWebProxy as obsolete
    • Property ITelegramBotClient.BotId to long?
    • Event MakingApiRequest renamed to OnMakingApiRequest and it's type is changed to AsyncEventHandler<ApiRequestEventArgs>
    • πŸ‘€ Event ApiResponseReceived renamed to OnApiResponseReceived and it's type is changed to AsyncEventHandler<ApiResponseEventArgs>
    • πŸ“„ Parameters order in following methods (to reflect official docs):
      • SetWebhookAsync, DeleteWebhookAsync, SendTextMessageAsync, SendPhotoAsync, SendAudioAsync, SendDocumentAsync, SendStickerAsync, SendVideoAsync, SendAnimationAsync, SendVoiceAsync, SendVideoNoteAsync, SendMediaGroupAsync, SendLocationAsync, SendVenueAsync, SendContactAsync, SendPollAsync, SendDiceAsync, KickChatMemberAsync, UnbanChatMemberAsync, PromoteChatMemberAsync, EditMessageTextAsync, EditMessageCaptionAsync, EditMessageLiveLocationAsync, SendInvoiceAsync, SendGameAsync
    • πŸ“¦ Polling inside the library is now considered obsolete. The code, related to polling will be removed. It is recommended to use Telegram.Bot.Extensions.Polling package instead.
      • These methods are now obsolete: StartReceiving, StopReceiving
      • These events are now obsolete: OnUpdate, OnMessage, OnMessageEdited, OnInlineQuery, OnInlineResultChosen, OnCallbackQuery, OnReceiveError, OnReceiveGeneralError
      • These fields are now obsolete: IsReceiving, MessageOffset
    • Error 429 Too Many Request is now handled by the client and is thrown as ApiRequestException

    ⚠ >⚠️ WARNING! ⚠️

    After one of the upcoming Bot API updates, some user identifiers will become bigger than 231 - 1 and it will be no longer possible to store them in a signed 32-bit integer type. User identifiers will have up to 52 significant bits, so a 64-bit integer or double-precision float type would still be safe for storing them. Please make sure that your code can correctly handle such user identifiers.

    πŸ›  Fixed

    • Incorrect property name ExplanationCaptionEntities -> ExplanationEntities in SendPollRequest

    βœ‚ Removed

    • Obsolete overload method ITelegramBotClient.DownloadFileAsync
    • Obsolete overload method ITelegramBotClient.SendMediaGroupAsync
    • Obsolete constructor for SendMediaGroupRequest
    • Obsolete constructor for InputMediaPhoto
    • Obsolete constructor for InputMediaVideo
    • Obsolete property AllMembersAreAdministrators from Chat
    • Obsolete property IsForwarded from Message
    • Obsolete value Animation from enum MessageType
  • v15.7.1 Changes

    June 18, 2020

    βž• Added

    • πŸ‘ Source Link support
    • πŸ— Fully deterministic build
  • v15.7.0 Changes

    June 13, 2020

    βž• Added

    • Enum member Emoji.Basketball
    • Property InlineQueryResultGif.ThumbMimeType
    • Property InlineQueryResultMpeg4Gif.ThumbMimeType
    • Property Message.ViaBot
  • v15.6.0 Changes

    May 30, 2020

    βž• Added

    • Enum Emoji
    • πŸ“Š Property Poll.Explanation
    • πŸ“Š Property Poll.ExplanationEntities
    • πŸ“Š Property Poll.OpenPeriod
    • πŸ“Š Property Poll.CloseDate
    • Property Dice.Emoji
    • Following optional properties to SendPollRequest:
      • Explanation
      • ExplanationParseMode
      • OpenPeriod
      • CloseDate
    • Optional property Emoji to SendDiceRequest

    πŸ”„ Changed

    • Following optional parameters to ITelegramBotClient.SendPollAsync:
      • explanation
      • explanationParseMode
      • openPeriod
      • closeDate
    • Optional parameter emoji to ITelegramBotClient.SendDiceAsync
  • v15.5.1 Changes

    April 02, 2020

    πŸ›  Fixed

    • Implementation of ITelegramBotClient.CreateNewAnimatedStickerSetAsync
  • v15.5.0 Changes

    April 02, 2020

    βž• Added

    • Requests
      • GetMyCommandsRequest
      • SetMyCommandsRequest
      • CreateNewAnimatedStickerSetRequest
      • AddNewAnimatedStickerToSetRequest
      • SendDiceRequest
      • SetStickerSetThumbRequest
    • Methods:
      • ITelegramBotClient.SendDiceAsync
      • ITelegramBotClient.CreateNewAnimatedStickerSetAsync
      • ITelegramBotClient.AddNewAnimatedStickerToSetAsync
      • ITelegramBotClient.SetStickerSetThumbAsync
      • ITelegramBotClient.GetMyCommandsAsync
      • ITelegramBotClient.SetMyCommandsAsync
    • Type Dice
    • Type BotCommand
    • Enum member MessageType.Dice
    • Property Message.Dice
    • Property StickerSet.Thumb
  • v15.4.0 Changes

    February 22, 2020

    βž• Added

    • Property SendInvoiceRequest.SendPhoneNumberToProvider
    • Property SendInvoiceRequest.SendEmailToProvider
    • Optional parameter sendPhoneNumberToProvider to method ITelegramBotClient.SendInvoiceAsync
    • Optional parameter sendEmailToProvider to method ITelegramBotClient.SendInvoiceAsync
  • v15.3.0 Changes

    January 31, 2020

    βž• Added

    • Type KeyboardButtonPollType
    • Static method KeyboardButton.WithRequestPoll
    • Type PollAnswer
    • Property KeyboardButton.RequestPoll
    • Enum PollType
    • Property MessageEntity.Language
    • πŸ“Š Following properties to type Poll:
      • bool? IsAnonymous
      • string Type
      • bool? AllowsMultipleAnswers
      • int? CorrectOptionId
    • Following properties to type SendPollRequest:
      • bool? IsAnonymous
      • string Type
      • bool? AllowsMultipleAnswers
      • int? CorrectOptionId
      • bool? IsClosed
    • ⚑️ Property Update.PollAnswer
    • ⚑️ Enum member UpdateType.PollAnswer
    • Following properties to type User:
      • bool? CanJoinGroups
      • bool? CanReadAllGroupMessages
      • bool? SupportsInlineQueries

    πŸ”„ Changed

    • Method ITelegramBotClient.SendPollAsync, added following optional parameters:
      • bool? isAnonymous
      • string type
      • bool? allowsMultipleAnswers
      • int? correctOptionId
      • bool? isClosed
    • Method User.Equals takes into account new properties
  • v15.2.1 Changes

    January 23, 2020

    πŸ”„ Changed

    • All base request classes use explicit opt-in serialization strategy
    • All non Bot API properties in base request classes are annotated by JsonIgnoreAttribute
    • Type ContactRequestException is made obsolete due to Telegram changed it's error message

    πŸ›  Fixed

    • 0️⃣ A bug that prevented requests to be serialized when default JsonSerializerSettings were set