- axum 0.8
- Added types:
RemoveChatVerification
,RemoveUserVerification
,VerifyChat
,VerifyUser
. - Added fields:
Gift
:upgrade_star_count
.
- Added methods:
Gift
:with_upgrade_star_count
.SendGift
:with_pay_for_upgrade
.
- Removed methods:
InlineQueryResultArticle
:with_hide_url
.
- bytes 1.9
- tokio 1.42
- Added types:
AffiliateInfo
,TransactionPartnerAffiliateProgramParameters
. - Added fields:
TransactionPartnerUserParameters
:affiliate
.
- Added enum variants:
TransactionPartner
:AffiliateProgram
.
- Added methods:
StarTransaction
:with_nanostar_amount
.TransactionPartnerUserParameters
:with_affiliate
.
- Added types:
EditUserStarSubscription
,GetAvailableGifts
,Gift
,Gifts
,PreparedInlineMessage
,SavePreparedInlineMessage
,SendGift
,SetUserEmojiStatus
,TransactionPartnerUserParameters
. - Added fields:
SuccessfulPayment
:is_first_recurring
,is_recurring
,subscription_expiration_date
.
- Added methods:
CreateInvoiceLink
:with_business_connection_id
,with_subscription_period
.SuccessfulPayment
:with_is_first_recurring
,with_is_recurring
,with_subscription_expiration_date
.
- Changed enum variants:
TransactionPartner::User
: Move all fields toTransactionPartnerUserParameters
with additionalgift
andsubscription_period
fields introduced in Bot API 8.0.
- bytes 1.8
- tokio 1.41
- Added enum variants:
InlineKeyboardButtonType
:CopyText
.TransactionPartner
:TelegramApi
.
- Added methods:
CopyMessage
:allow_paid_broadcast
.InlineKeyboardButton
:for_copy_text
.SendAnimation
:allow_paid_broadcast
.SendAudio
:allow_paid_broadcast
.SendContact
:allow_paid_broadcast
.SendDice
:allow_paid_broadcast
.SendDocument
:allow_paid_broadcast
.SendInvoice
:allow_paid_broadcast
.SendPhoto
:allow_paid_broadcast
.SendVoice
:allow_paid_broadcast
.SendGame
:allow_paid_broadcast
.SendLocation
:allow_paid_broadcast
.SendMediaGroup
:allow_paid_broadcast
.SendMessage
:allow_paid_broadcast
.SendPaidMedia
:allow_paid_broadcast
.SendPoll
:allow_paid_broadcast
.SendQuiz
:allow_paid_broadcast
.SendSticker
:allow_paid_broadcast
.SendVideo
:allow_paid_broadcast
.SendVideoNote
:allow_paid_broadcast
.SendVenue
:allow_paid_broadcast
.
- tokio 1.40
- Added fields:
ChatBoostSourceGiveaway
:prize_star_count
.Giveaway
:prize_star_count
.GiveawayCompleted
:is_star_giveaway
.GiveawayWinners
:prize_star_count
.TransactionPartner::User
:paid_media_payload
.
- Added methods:
ChatBoostSourceGiveaway
:with_prize_star_count
.Giveaway
:with_prize_star_count
.GiveawayCompleted
:with_is_star_giveaway
.GiveawayWinners
:with_prize_star_count
.SendPaidMedia
:with_payload
.
- Added types:
GiveawayCreated
.PaidMediaPurchased
.
- Added enum variants:
AllowedUpdate
:PurchasedPaidMedia
.UpdateType
:PurchasedPaidMedia
.
- Changed enum variants:
MessageData
:GiveawayCreated
toGiveawayCreated(GiveawayCreated)
.
- derive_more 1.0
- Added fields:
TransactionPartner::User
:paid_media
.
- Added methods:
SendPaidMedia
:with_business_connection_id
.
- Added types:
CreateChatSubscriptionInviteLink
.EditChatSubscriptionInviteLink
.
- Added enum variants:
ReactionType::Paid
.
- Changed enum variants:
ChatMember::Member
:Member { user: User, until_date: Option<Integer> }
.
- Updated tokio version to 1.39.
- Updated bytes version to 1.7.
- Added fields:
Bot
:has_main_web_app
.
- Added methods:
PinChatMessage
:with_business_connection_id
.UnpinChatMessage
:with_business_connection_id
.
- Added types:
RefundedPayment
. - Added enum variants:
MessageData::RefundedPayment
.
- Added types:
InputPaidMediaGroup
,InputPaidMediaGroupError
,InputPaidMediaGroupItem
,InputPaidMediaVideo
,PaidMedia
,PaidMediaInfo
,PaidMediaPreview
,SendPaidMedia
. - Added enum variants:
ExternalReplyData::PaidMedia
,MessageData::PaidMedia
,TransactionPartner::TelegramAds
. - Added fields:
ChatFullInfo
:can_send_paid_media
.
- Changed enum variants:
TransactionPartner
:User(User)
toUser { user: User, invoice_payload: Option<String> }
.
- Updated tokio version to 1.38.
- Added types:
GetStarTransactions
,RevenueWithdrawalState
,StarTransaction
,StarTransactions
,TransactionPartner
. - Added methods:
EditMessageCaption
:with_business_connection_id
.EditMessageLiveLocation
:with_business_connection_id
.EditMessageMedia
:with_business_connection_id
.EditMessageReplyMarkup
:with_business_connection_id
.EditMessageText
:with_business_connection_id
.StopMessageLiveLocation
:with_business_connection_id
.StopPoll
:with_business_connection_id
.
- Added types:
RefundStarPayment
. - Added enum variants:
TextEntity::ExpandableBlockQuote
. - Added fields:
InvoiceParameters
:provider_token
.Message
:effect_id
,show_caption_above_media
.
- Added methods:
CopyMessage
:with_show_caption_above_media
.EditMessageCaption
:with_show_caption_above_media
.InlineQueryResultGif
:with_show_caption_above_media
.InlineQueryResultMpeg4Gif
:with_show_caption_above_media
.InlineQueryResultPhoto
:with_show_caption_above_media
.InlineQueryResultVideo
:with_show_caption_above_media
.InlineQueryResultCachedGif
:with_show_caption_above_media
.InlineQueryResultCachedMpeg4Gif
:with_show_caption_above_media
.InlineQueryResultCachedPhoto
:with_show_caption_above_media
.InlineQueryResultCachedVideo
:with_show_caption_above_media
.InputMediaAnimation
:with_show_caption_above_media
.InputMediaPhoto
:with_show_caption_above_media
.InputMediaVideo
:with_show_caption_above_media
.InputMessageContentInvoice
:with_provider_token
.InvoiceParameters
:with_provider_token
.Message
:with_effect_id
,with_show_caption_above_media
.SendAnimation
:with_message_effect_id
,with_show_caption_above_media
.SendAudio
:with_message_effect_id
.SendContact
:with_message_effect_id
.SendDice
:with_message_effect_id
.SendDocument
:with_message_effect_id
.SendGame
:with_message_effect_id
.SendInvoice
:with_message_effect_id
.SendLocation
:with_message_effect_id
.SendMediaGroup
:with_message_effect_id
.SendMessage
:with_message_effect_id
.SendPhoto
:with_message_effect_id
,with_show_caption_above_media
.SendPoll
:with_message_effect_id
.SendSticker
:with_message_effect_id
.SendVenue
:with_message_effect_id
.SendVideo
:with_message_effect_id
,with_show_caption_above_media
.SendVideoNote
:with_message_effect_id
.SendVoice
:with_message_effect_id
.TextEntity
:expandable_blockquote
.
- Changed signature:
CreateInvoiceLink::new
to(title: Into<String>, description: Into<String>, payload: Into<String>, currency: Into<String>, prices: IntoIterator<Item=LabeledPrice>)
.SendInvoice::new
to(chat_id: Into<ChatId>, title: Into<String>, description: Into<String>, payload: Into<String>, currency: Into<String>, prices: IntoIterator<Item=LabeledPrice>)
.InputMessageContentInvoice::new
to(currency: Into<String>, description: Into<String>, payload: Into<String>, prices: IntoIterator<Item=LabeledPrice>, title: Into<String>)
.
- Added types:
BackgroundFill
,BackgroundType
,ChatBackground
,ChatFullInfo
,ChatFullInfoType
,InputPollOption
. - Added enum variatns:
MessageData
::ChatBackgroundSet
. - Added fields:
ChatMemberUpdated
:via_join_request
.
- Added methods:
ChatMemberUpdated
:with_via_join_request
.EditMessageLiveLocation
:with_live_period
.SendPoll
:with_question_entities
,with_question_parse_mode
.SendQuiz
:with_question_entities
,with_question_parse_mode
.
- Changed fields:
RegularPoll
:question
fromString
toText
.Quiz
:question
fromString
toText
.PollOption
:text
fromString
toText
.
- Changed signature:
SendPoll::new
:options
fromIntoIterator<Item=Into<String>>
toIntoIterator<Item=Into<InputPollOption>>
.SendQuiz::new
:options
fromIntoIterator<Item=Into<String>>
toIntoIterator<Item=Into<InputPollOption>>
.
- Changed return type:
GetChat
: fromChat
toChatFullInfo
.
- Removed methods:
ChannelChat
:accent_color
,active_usernames
,available_reactions
,background_custom_emoji_id
,description
,emoji_status_custom_emoji_id
,emoji_status_expiration_date
,has_protected_content
,invite_link
,linked_chat_id
,message_auto_delete_time
,photo
,pinned_message
,profile_accent_color
,profile_background_custom_emoji_id
.GroupChat
:accent_color
,available_reactions
,background_custom_emoji_id
,emoji_status_custom_emoji_id
,emoji_status_expiration_date
,has_hidden_members
,has_protected_content
,has_visible_history
,invite_link
,message_auto_delete_time
,permissions
,photo
,pinned_message
,profile_accent_color
,profile_background_custom_emoji_id
.PrivateChat
:accent_color
,active_usernames
,background_custom_emoji_id
,bio
,birthdate
,business_intro
,business_location
,business_opening_hours
,emoji_status_custom_emoji_id
,emoji_status_expiration_date
,has_private_forwards
,has_restricted_voice_and_video_messages
,last_name
,message_auto_delete_time
,personal_chat
,photo
,pinned_message
,profile_accent_color
,profile_background_custom_emoji_id
.SupergroupChat
:accent_color
,active_usernames
,available_reactions
,background_custom_emoji_id
,can_set_sticker_set
,custom_emoji_sticker_set_name
,description
,emoji_status_custom_emoji_id
,emoji_status_expiration_date
,has_aggressive_anti_spam_enabled
,has_hidden_members
,has_protected_content
,has_visible_history
,invite_link
,is_forum
,join_by_request
,join_to_send_messages
,linked_chat_id
,location
,message_auto_delete_time
,permissions
,photo
,pinned_message
,profile_accent_color
,profile_background_custom_emoji_id
,slow_mode_delay
,sticker_set_name
,unrestrict_boost_count
.
- Removed fields:
ChannelChat
:with_accent_color
,with_active_usernames
,with_available_reactions
,with_background_custom_emoji_id
,with_description
,with_emoji_status_custom_emoji_id
,with_emoji_status_expiration_date
,with_has_protected_content
,with_invite_link
,with_linked_chat_id
,with_message_auto_delete_time
,with_photo
,with_pinned_message
,with_profile_accent_color
,with_profile_background_custom_emoji_id
.GroupChat
:with_accent_color
,with_available_reactions
,with_background_custom_emoji_id
,with_emoji_status_custom_emoji_id
,with_emoji_status_expiration_date
,with_has_hidden_members
,with_has_protected_content
,with_has_visible_history
,with_invite_link
,with_message_auto_delete_time
,with_permissions
,with_photo
,with_pinned_message
,with_profile_accent_color
,with_profile_background_custom_emoji_id
.PrivateChat
:with_accent_color
,with_active_usernames
,with_background_custom_emoji_id
,with_bio
,with_birthdate
,with_business_intro
,with_business_location
,with_business_opening_hours
,with_emoji_status_custom_emoji_id
,with_emoji_status_expiration_date
,with_has_private_forwards
,with_has_restricted_voice_and_video_messages
,with_last_name
,with_message_auto_delete_time
,with_personal_chat
,with_photo
,with_pinned_message
,with_profile_accent_color
,with_profile_background_custom_emoji_id
.SupergroupChat
:with_accent_color
,with_active_usernames
,with_available_reactions
,with_background_custom_emoji_id
,with_can_set_sticker_set
,with_custom_emoji_sticker_set_name
,with_description
,with_emoji_status_custom_emoji_id
,with_emoji_status_expiration_date
,with_has_aggressive_anti_spam_enabled
,with_has_hidden_members
,with_has_protected_content
,with_has_visible_history
,with_invite_link
,with_is_forum
,with_join_by_request
,with_join_to_send_messages
,with_linked_chat_id
,with_location
,with_message_auto_delete_time
,with_permissions
,with_photo
,with_pinned_message
,with_profile_accent_color
,with_profile_background_custom_emoji_id
,with_slow_mode_delay
,with_sticker_set_name
,with_unrestrict_boost_count
.
- Updated bytes version to 1.6.
- Updated reqwest version to 0.12.
- Updated tokio version to 1.37.
- Added types:
Birthdate
,BusinessConnection
,BusinessMessagesDeleted
,BusinessIntro
,BusinessLocation
,BusinessOpeningHours
,BusinessOpeningHoursInterval
,GetBusinessConnection
,ReplaceStickerInSet
,SharedUser
. - Added enum variants:
UpdateType
:BusinessConnection
,BusinessMessage
,EditedBusinessMessage
,DeletedBusinessMessages
.AllowedUpdate
:BusinessConnection
,BusinessMessage
,EditedBusinessMessage
,DeletedBusinessMessages
.
- Added fields:
Bot
:can_connect_to_business
.Message
:business_connection_id
,is_from_offline
,sender_business_bot
.MessageDataChatShared
:photo
,title
,username
.MessageDataUsersShared
:users
.PrivateChat
:birthdate
,business_intro
,business_location
,business_opening_hours
,personal_chat
.
- Added methods:
Bot
:with_can_connect_to_business
.KeyboardButtonRequestChat
:with_request_photo
,with_request_title
,with_request_username
.KeyboardButtonRequestUsers
:with_request_name
,with_request_photo
,with_request_username
.Message
:with_business_connection_id
,with_is_from_offline
,with_sender_business_bot
.MessageDataChatShared
:with_photo
,with_title
,with_username
.PrivateChat
:with_birthdate
,with_business_intro
,with_business_location
,with_business_opening_hours
,with_personal_chat
.SendAnimation
:with_business_connection_id
.SendAudio
:with_business_connection_id
.SendChatAction
:with_business_connection_id
.SendContact
:with_business_connection_id
.SendDice
:with_business_connection_id
.SendDocument
:with_business_connection_id
.SendGame
:with_business_connection_id
.SendLocation
:with_business_connection_id
.SendMediaGroup
:with_business_connection_id
.SendMessage
:with_business_connection_id
.SendPhoto
:with_business_connection_id
.SendPoll
:with_business_connection_id
.SendQuiz
:with_business_connection_id
.SendSticker
:with_business_connection_id
.SendVenue
:with_business_connection_id
.SendVideo
:with_business_connection_id
.SendVideoNote
:with_business_connection_id
.SendVoice
:with_business_connection_id
.
- Changed signature:
CreateNewStickerSet::new
to(user_id: Integer, name: Into<String>, title: Into<String>, stickers: InputStickers) -> Result<Self, InputStickerError>
InputSticker::new
to(sticker: Into<InputFile>, emoji_list: IntoIterator<Item=Into<String>>, format: StickerFormat) -> Self
SetStickerSetThumbnail::new
to(name: Into<String>, user_id: Integer, format: StickerFormat) -> Self
- Removed fields:
MessageDataUsersShared
:user_ids
.StickerSet
:is_animated
,is_video
.
- Removed methods:
StickerSet
:with_is_animated
,with_is_video
.
- Updated tokio version to 1.36.
- Added types:
ReplyTo
,Story
. - Added enum variants:
MessageData
:BoostAdded
.
- Added fields:
Message
:sender_boost_count
.SupergroupChat
:custom_emoji_sticker_set_name
,unrestrict_boost_count
.
- Changed enum variants:
ExternalReplyInfo
:Story
toStory(Story)
.MessageData
:Story
toStory(Story)
.
- Changed fields:
Message
:reply_to
fromOption<Box<Message>>
toOption<ReplyTo>
.
- Updated tokio version to 1.35.
Client::with_client
method renamed toClient::with_http_client
.
- Removed
Future
associated type fromUpdateHandler
trait.
- Added types:
AccentColor
,ChatBoost
,ChatBoostRemoved
,ChatBoostSource
,ChatBoostSourceGiveaway
,ChatBoostUpdated
,CopyMessages
,DeleteMessages
,ExternalReplyData
,ExternalReplyInfo
,ForwardMessages
,GetUserChatBoosts
,Giveaway
,GiveawayCompleted
,GiveawayWinners
,InaccessibleMessage
,LinkPreviewOptions
,MaybeInaccessibleMessage
,MessageOrigin
,MessageOriginChannel
,MessageOriginChat
,MessageOriginHiddenUser
,MessageOriginUser
,MessageReactionCountUpdated
,MessageReactionUpdated
,ProfileAccentColor
,ReactionCount
,ReactionType
,ReplyParameters
,ReplyQuote
,SetMessageReaction
,TextQuote
,UserChatBoosts
. - Added enum variants:
AllowedUpdate
:ChatBoostRemoved
,ChatBoostUpdated
,MessageReaction
,MessageReactionCount
.MessageData
:Giveaway
,GiveawayCreated
,GiveawayCompleted
,GiveawayWinners
.TextEntity
:Blockquote
.UpdateType
:ChatBoostRemoved
,ChatBoostUpdated
,MessageReaction
,MessageReactionCount
.
- Added fields:
ChannelChat
:accent_color
,available_reactions
,background_custom_emoji_id
,emoji_status_custom_emoji_id
,emoji_status_expiration_date
,profile_accent_color
,profile_background_custom_emoji_id
.GroupChat
:accent_color
,available_reactions
,background_custom_emoji_id
,emoji_status_custom_emoji_id
,emoji_status_expiration_date
,has_visible_history
,profile_accent_color
,profile_background_custom_emoji_id
.Message
:external_reply
,forward_origin
,link_preview_options
,quote
.MessageDataUsersShared
:user_ids
.PrivateChat
:accent_color
,background_custom_emoji_id
,profile_accent_color
,profile_background_custom_emoji_id
.SupergroupChat
:accent_color
,available_reactions
,background_custom_emoji_id
,emoji_status_custom_emoji_id
,emoji_status_expiration_date
,has_visible_history
,profile_accent_color
,profile_background_custom_emoji_id
.
- Added methods:
ChannelChat
:with_accent_color
,with_available_reactions
,with_background_custom_emoji_id
,with_emoji_status_custom_emoji_id
,with_emoji_status_expiration_date
,with_profile_accent_color
,with_profile_background_custom_emoji_id
.CopyMessage
:with_reply_parameters
.EditMessageText
:with_link_preview_options
.GroupChat
:with_accent_color
,with_available_reactions
,with_background_custom_emoji_id
,with_emoji_status_custom_emoji_id
,with_emoji_status_expiration_date
,with_has_visible_history
,with_profile_accent_color
,with_profile_background_custom_emoji_id
.InputMessageContentText
:with_link_preview_options
.KeyboardButtonRequestUsers
:with_max_quantity
.Message
:with_external_reply
,with_forward_origin
,with_link_preview_options
,with_quote
.PrivateChat
:with_accent_color
,with_background_custom_emoji_id
,with_profile_accent_color
,with_profile_background_custom_emoji_id
.SendAnimation
:with_reply_parameters
.SendAudio
:with_reply_parameters
.SendContact
:with_reply_parameters
.SendDice
:with_reply_parameters
.SendDocument
:with_reply_parameters
.SendGame
:with_reply_parameters
.SendInvoice
:with_reply_parameters
.SendLocation
:with_reply_parameters
.SendMediaGroup
:with_reply_parameters
.SendMessage
:with_link_preview_options
,with_reply_parameters
.SendPhoto
:with_reply_parameters
.SendPoll
:with_reply_parameters
.SendQuiz
:with_reply_parameters
.SendSticker
:with_reply_parameters
.SendVenue
:with_reply_parameters
.SendVideo
:with_reply_parameters
.SendVideoNote
:with_reply_parameters
.SendVoice
:with_reply_parameters
.SupergroupChat
:with_accent_color
,with_available_reactions
,with_background_custom_emoji_id
,with_emoji_status_custom_emoji_id
,with_emoji_status_expiration_date
,with_has_visible_history
,with_profile_accent_color
,with_profile_background_custom_emoji_id
.TextEntity
:blockquote
- Changed enum variants:
MessageData
:PinnedMessage(Box<Message>)
toPinnedMessage(MaybeInaccessibleMessage)
.
- Changed fields:
CallbackQuery
: type ofmessage
fromMessage
toMaybeInaccessibleMessage
.
- Renamed types:
KeyboardButtonRequestUser
toKeyboardButtonRequestUsers
,MessageDataUserShared
toMessageDataUsersShared
. - Renamed enum variants:
MessageData
:UserShared
toUsersShared
.
- Renamed methods:
KeyboardButton
:with_request_user
towith_request_users
.
- Removed types:
Forward
,ForwardFrom
. - Removed fields:
Message
:forward
.MessageDataUsersShared
:user_id
.
- Removed methods:
CopyMessage
:with_allow_sending_without_reply
,with_reply_to_message_id
.EditMessageText
:with_disable_web_page_preview
.InputMessageContentText
:with_disable_web_page_preview
.Message
:with_forward
.SendAnimation
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendAudio
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendContact
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendDice
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendDocument
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendGame
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendInvoice
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendLocation
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendMediaGroup
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendPhoto
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendMessage
:with_disable_web_page_preview
.SendMessage
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendPoll
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendQuiz
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendSticker
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendVenue
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendVideo
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendVideoNote
:with_allow_sending_without_reply
,with_reply_to_message_id
.SendVoice
:with_allow_sending_without_reply
,with_reply_to_message_id
.
- Updated tokio version to 1.34.
- Updated bytes version to 1.5.
- Removed vec1 dependency.
Api
struct renamed toapi::Client
.ApiError
,DownloadFileError
,ExecuteError
moved toapi
module.
- Merged
UpdateHandler
,longpoll
andwebhook
intohandler
module. - Webhooks:
- Migrated from hyper to axum.
webhook::run_server
andwebhook::SyncedUpdateHandler
replaced byhandler::WebhookServer
type.- Webhooks support is disabled by default and can be enabled using
webhook
feature.
- Long polling:
- Added
#[must_use]
attribute toLongPoll::get_handle
. - Renamed
LongPoll::options
toLongPoll::with_options
. - Renamed methods of
LongPollOptions
:allowed_update
towith_allowed_update
,error_timeout
towith_error_timeout
,limit
towith_limit
,poll_timeout
towith_poll_timeout
.
- Added
- Merged
methods
module intotypes
module. serde::Deserialize
andserde::Serialize
are implemented for all types.- Moved
mime
reexport totypes
module. Vec<TextEntity>
andVec1<TextEntity>
replaced with a newTextEntities
struct.
- Added types:
AnswerWebAppQuery
,ChatAdministratorRights
,GetBotDefaultAdministratorRights
,GetChatMenuButton
,MenuButton
,SentWebAppMessage
,SetBotDefaultAdministratorRights
,SetChatMenuButton
,WebAppInfo
,WebAppData
. - Added enum variants:
InlineKeyboardButtonKind
:WebApp
MessageData
:WebAppData
.
- Added fields:
WebhookInfo
:last_synchronization_error_date
.
- Added methods:
KeyboardButton
:with_web_app
InlineKeyboardButton
:with_web_app
.
- Renamed enum variants:
MessageData
:VoiceChatScheduled
toVideoChatScheduled
,VoiceChatStarted
toVideoChatStarted
,VoiceChatEnded
toVideoChatEnded
,VoiceChatParticipantsInvited
toVideoChatParticipantsInvited
.
- Renamed fields:
ChatMemberAdministrator
:can_manage_voice_chats
tocan_manage_video_chats
.
- Renamed methods:
PromoteChatMember
:can_manage_voice_chats
tocan_manage_video_chats
.
- Added types:
CreateInvoiceLink
. - Added fields:
SupergroupChat
:join_to_send_messages
,join_by_request
.User
:is_premium
.Sticker
:premium_animation
.
- Added methods:
SetWebhook
:with_secret_token
.
- Common fields from
CreateInvoiceLink
andSendInvoice
extracted toInvoiceParameters
.
- Added types:
GetCustomEmojiStickers
. - Added enum variants:
TextEntity
:CustomEmoji
.
- Added fields:
Sticker
:custom_emoji_id
.StickerSet
:sticker_type
.PrivateChat
:has_restricted_voice_and_video_messages
.
- Added methods:
TextEntity
:custom_emoji
.CreateNewStickerSet
:with_sticker_type
.
- Removed fields:
StickerSet
:contains_masks
.
- Removed methods:
CreateNewStickerSet
:contains_masks
.
- Added types:
MessageDataForumTopicCreated
,CloseForumTopic
,CreateForumTopic
,DeleteForumTopic
,EditForumTopic
,GetForumTopicIconStickers
,ReopenForumTopic
,UnpinAllForumTopicMessages
. - Added enum variants:
MessageData
:ForumTopicClosed
,ForumTopicCreated
,ForumTopicReopened
. - Added fields:
ChatMemberAdministrator
:can_manage_topics
.ChatMemberRestricted
:can_manage_topics
.ChatPermissions
:can_manage_topics
.ChannelChat
:active_usernames
.SupergroupChat
:active_usernames
,is_forum
.Message
:is_topic_message
,message_thread_id
.PrivateChat
:active_usernames
,emoji_status_custom_emoji_id
.
- Added methods:
CopyMessage
:with_message_thread_id
.ForwardMessage
:with_message_thread_id
.PromoteChatMember
:with_can_manage_topics
.SendAnimation
:with_message_thread_id
.SendAudio
:with_message_thread_id
.SendContact
:with_message_thread_id
.SendDice
:with_message_thread_id
.SendGame
:with_message_thread_id
.SendDocument
:with_message_thread_id
.SendInvoice
:with_message_thread_id
.SendLocation
:with_message_thread_id
.SendMediaGroup
:with_message_thread_id
.SendMessage
:with_message_thread_id
.SendPhoto
:with_message_thread_id
.SendPoll
:with_message_thread_id
.SendQuiz
:with_message_thread_id
.SendSticker
:with_message_thread_id
.SendVenue
:with_message_thread_id
.SendVideo
:with_message_thread_id
.SendVideoNote
:with_message_thread_id
.SendVoice
:with_message_thread_id
.
- Added types:
CloseGeneralForumTopic
,EditGeneralForumTopic
,MessageDataForumTopicEdited
,HideGeneralForumTopic
,ReopenGeneralForumTopic
,UnhideGeneralForumTopic
,MessageDataWriteAccess
. - Added enum variants:
MessageData
:ForumTopicEdited
,GeneralForumTopicHidden
,GeneralForumTopicUnhidden
,WriteAccessAllowed
.
- Added fields:
GroupChat
:has_hidden_members
.InputMediaAnimation
:has_spoiler
.InputMediaPhoto
:has_spoiler
.InputMediaVideo
:has_spoiler
.Message
:has_media_spoiler
.SupergroupChat
:has_aggressive_anti_spam_enabled
,has_hidden_members
.
- Added methods:
ReplyKeyboardMarkup
:with_is_persistent
.SendAnimation
:with_has_spoiler
.SendChatAction
:with_message_thread_id
.SendPhoto
:with_has_spoiler
.SendVideo
:with_has_spoiler
.
- Added types:
KeyboardButtonRequestChat
,KeyboardButtonRequestUser
,MessageDataChatShared
,MessageDataUserShared
. - Added enum variants:
MessageData
:ChatShared
,UserShared
.
- Added fields:
ChatJoinRequest
:user_chat_id
.ChatMemberRestricted
:can_send_audios
,can_send_documents
,can_send_photos
,can_send_videos
,can_send_video_notes
,can_send_voice_notes
.ChatPermissions
:can_send_audios
,can_send_documents
,can_send_photos
,can_send_videos
,can_send_video_notes
,can_send_voice_notes
.
- Added methods:
KeyboardButton
:wiht_request_chat
,with_request_user
.RestrictChatMember
:with_use_independent_chat_permissions
.SetChatPermissions
with_use_independent_chat_permissions
.
- Removed fields:
ChatMemberRestricted
:can_send_media_messages
.ChatPermissions
:can_send_media_messages
.
- Added types:
BotDescription
,BotShortDescription
,GetBotDescription
,GetBotShortDescription
,SetBotDescription
,SetBotShortDescription
,StickerFormat
,InputSticker
,InputStickers
,DeleteStickerSet
,SetCustomEmojiStickerSetThumbnail
,SetStickerSetTitle
,SetStickerEmojiList
,SetStickerKeywords
,SetStickerMaskPosition
. - Added fields:
Sticker
:sticker_type
,needs_repainting
.
- Added methods:
CreateNewStickerSet
:with_needs_repainting
.SendSticker
:with_emoji
.
- Renamed fields:
Animation
:thumb
tothumbnail
.Audio
:thumb
tothumbnail
.Document
:thumb
tothumbnail
.InlineQueryResultArticle
:thumb_url
tothumbnail_url
,thumb_width
tothumbnail_width
,thumb_height
tothumbnail_height
.InlineQueryResultContact
:thumb_url
tothumbnail_url
,thumb_width
tothumbnail_width
,thumb_height
tothumbnail_height
.InlineQueryResultDocument
:thumb_url
tothumbnail_url
,thumb_width
tothumbnail_width
,thumb_height
tothumbnail_height
.InlineQueryResultGif
:thumb_mime_type
tothumbnail_mime_type
,thumb_url
tothumbnail_url
.InlineQueryResultLocation
:thumb_url
tothumbnail_url
,thumb_width
tothumbnail_width
,thumb_height
tothumbnail_height
.InlineQueryResultMpeg4Gif
:thumb_mime_type
tothumbnail_mime_type
,thumb_url
tothumbnail_url
.InlineQueryResultPhoto
:thumb_url
tothumbnail_url
.InlineQueryResultVenue
:thumb_url
tothumbnail_url
,thumb_width
tothumbnail_width
,thumb_height
tothumbnail_height
.InlineQueryResultVideo
:thumb_url
tothumbnail_url
.Sticker
:thumb
tothumbnail
.Video
:thumb
tothumbnail
.VideoNote
:thumb
tothumbnail
.
- Renamed methods:
InputMedia
:with_thumb
towith_thumbnail
.MediaGroupItem
:with_thumb
towith_thumbnail
.SendAnimation
:thumb
towith_thumbnail
.SendAudio
:thumb
towith_thumbnail
.SendDocument
:thumb
towith_thumbnail
.SendVideo
:thumb
towith_thumbnail
.SendVideoNote
:thumb
towith_thumbnail
.
- Changed signature:
AddStickerToSet::new
to(user_id: Integer, name: Into<String>, sticker: InputSticker)
.CreateNewStickerSet::new
to(user_id: Integer, name: Into<String>, title: Into<String>, InputStickers, StickerFormat)
.UploadStickerFile::new
to(user_id: Integer, sticker: T, sticker_format: StickerFormat)
.
- Removed types:
NewSticker
. - Removed methods:
AddStickerToSet
:mask_position
.InputMediaAnimation
:thumb
.
- Added types:
InlineQueryResultsButton
,SwitchInlineQueryChosenChat
,BotName
,GetBotName
,SetBotName
. - Added enum variants:
InlineKeyboardButtonKind
:SwitchInlineQueryChosenChat
.
- Added fields:
ChatMemberUpdated
:via_chat_folder_invite_link
.
- Added methods:
AnswerInlineQuery
:with_button
.InlineKeyboardButton
:for_switch_inline_query_chosen_chat
.
- Removed methods:
AnswerInlineQuery
:switch_pm_text
,switch_pm_parameters
.
- Added types:
PollAnswerVoter
,Story
. - Added enum variants:
MessageData
:Story
.
- Added fields:
PollAnswer
:voter
.PrivateChat
:emoji_status_expiration_date
.
- Removed fields:
PollAnswer
:user
.
- Added fields:
ChatMemberAdministrator
:can_post_stories
,can_edit_stories
,can_delete_stories
.
- Added methods:
PromoteChatMember
:with_can_post_stories
,with_can_edit_stories
,with_can_delete_stories
.
Message
:sender
,chat
,author_signature
.
Animation
, Audio
, Bot
, BotCommand
, ChannelChat
, ChatInviteLink
, ChatJoinRequest
, ChatLocation
,
ChatMemberAdministrator
, ChatMemberCreator
, ChatMemberKicked
, ChatMemberRestricted
, ChatMemberUpdated
,
ChatPhoto
, ChosenInlineResult
, Contact
, Document
, EncryptedCredentials
, EncryptedPassportElementAddress
,
EncryptedPassportElementBankStatement
, EncryptedPassportElementDriverLicense
, EncryptedPassportElementEmail
,
EncryptedPassportElementIdentityCard
, EncryptedPassportElementInternalPassport
,
EncryptedPassportElementInternalPassport
, EncryptedPassportElementPassport
,
EncryptedPassportElementPassportRegistration
, EncryptedPassportElementPersonalDetails
,
EncryptedPassportElementPersonalDetails
, EncryptedPassportElementPhoneNumber
,
EncryptedPassportElementRentalAgreement
, EncryptedPassportElementTemporaryRegistration
,
EncryptedPassportElementUtilityBill
, File
, Forward
, Game
, GameHighScore
, GroupChat
, InlineQuery
,
Invoice
, Location
, MaskPosition
, Message
, OrderInfo
, PassportData
, PassportFile
, PhotoSize
,
PollAnswer
, PollOption
, PreCheckoutQuery
, PrivateChat
, ProximityAlertTriggered
, Quiz
, RegularPoll
,
ShippingAddress
, ShippingQuery
, Sticker
, StickerSet
, SuccessfulPayment
, SupergroupChat
, Text
, Update
,
User
, UserProfilePhotos
, Venue
, Video
, VideoNote
, Voice
, WebhookInfo
.
bool
forForceReply
.[[InlineKeyboardButton; B]; A]
forReplyMarkup
.[[KeyboardButton; B]; A]
forReplyMarkup
.Contact
,Location
,Venue
,Text
,String
,&str
forInputMessageContent
.
MediaGroup
:new
.Update
:get_chat
.InputFileReader
:with_file_name
,file_name
,with_mime_type
,mime_type
.InputMedia
:default
.
Me
toBot
.GetMe
toGetBot
.DeleteMyCommands
toDeleteBotCommands
.GetMyCommands
toGetBotCommands
.SetMyCommands
toSetBotCommands
.DiceKind
toDiceType
.PollKind
toPollType
.UpdateKind
toUpdateType
.ProximityAlertTriggered
toMessageDataProximityAlert
.EncryptedPassportElementKind
toEncryptedPassportElementType
.UnexpectedEncryptedPassportElementKind
toUnexpectedEncryptedPassportElementType
.InlineKeyboardButtonKind
toInlineKeyboardButtonType
.
AllowedUpdate::ChatMember
toAllowedUpdate::UserStatus
.
Update
:kind
toupdate_type
.InlineKeyboardButton
:kind
tobutton_type
.
MediaGroupItem
enum replaced with a newMediaGroupItem
struct and documented.InputMediaKind
replaced with a newInputMediaType
enum and documented.InputFile
converted into enum.
ChatId
:Id(ChatPeerId)
,Username(ChatUsername)
.MessageData
:AutoDeleteTimerChanged(MessageDataAutoDeleteTimer)
,VideoChatEnded(MessageDataVideoChatEnded)
,VideoChatParticipantsInvited(MessageDataVideoChatParticipantsInvited)
,VideoChatScheduled(MessageDataVideoChatScheduled)
,Audio(MessageDataAudio)
,Document(MessageDataDocument)
,Photo(MessageDataPhoto)
,Video(MessageDataVideo)
,Voice(MessageDataVoice)
,Empty
toUnknown(serde_json::Value)
.UserId
:Id(UserPeerId)
,Username(UserUsername)
.
DeleteBotCommands
:scope
towith_scope
,language_code
towith_language_code
.GetBotCommands
:scope
towith_scope
,language_code
towith_language_code
.SetBotCommands
:scope
towith_scope
,language_code
towith_language_code
.CreateChatInviteLink
:name
towith_name
,expire_date
towith_expire_date
,member_limit
towith_member_limit
,create_join_request
towith_create_join_request
.EditChatInviteLink
:name
towith_name
,expire_date
towith_expire_date
,member_limit
towith_member_limit
,creates_join_request
towith_creates_join_request
.BanChatMember
:until_date
towith_until_date
,revoke_messages
towith_revoke_messages
.PromoteChatMember
:is_anonymous
towith_is_anonymous
,can_change_info
towith_can_change_info
can_delete_messages
towith_can_delete_messages
,can_edit_messages
towith_can_edit_messages
,can_invite_users
towith_can_invite_users
,can_manage_chat
towith_can_manage_chat
,can_manage_video_chat
towith_can_manage_video_chat
,can_pin_messages
towith_can_pin_messages
,can_post_messages
towith_can_post_messages
,can_promote_members
towith_can_promote_members
,can_restrict_members
towith_can_restrict_members
,can_manage_topics
towith_can_manage_topics
,can_post_stories
towith_can_post_stories
,can_edit_stories
towith_can_edit_stories
,can_delete_stories
towith_can_delete_stories
.RestrictChatMember
:until_date
towith_until_date
.UnbanChatMember
:only_if_banned
towith_only_if_banned
.PinChatMessage
:disable_notification
towith_disable_notification
.UnpinChatMessage
:message_id
towith_message_id
.ChatPermissions
:with_send_messages
towith_can_send_messages
,with_send_polls
towith_can_send_polls
,with_send_other_messages
towith_can_send_other_messages
,with_add_web_page_previews
towith_can_add_web_page_previews
,with_change_info
towith_can_change_info
,with_invite_users
towith_can_invite_users
,with_pin_messages
towith_can_pin_messages
.SetChatDescription
:description
towith_description
.SendContact
:allow_sending_without_reply
towith_allow_sending_without_reply
,disable_notification
towith_disable_notification
,last_name
towith_last_name
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
,vcard
towith_vcard
.SendDice
:allow_sending_without_reply
towith_allow_sending_without_reply
,disable_notification
towith_disable_notification
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.SendAnimation
:allow_sending_without_reply
towith_allow_sending_without_reply
,caption
towith_caption
,caption_entities
towith_caption_entities
,disable_notification
towith_disable_notification
,duration
towith_duration
,height
towith_height
,parse_mode
towith_caption_parse_mode
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.SendAudio
:allow_sending_without_reply
towith_allow_sending_without_reply
,caption
towith_caption
,caption_entities
towith_caption_entities
,disable_notification
towith_disable_notification
,duration
towith_duration
,parse_mode
towith_caption_parse_mode
,performer
towith_performer
,protect_content
towith_protect_content
,title
towith_title
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.SendDocument
:allow_sending_without_reply
towith_allow_sending_without_reply
,caption
towith_caption
,caption_entities
towith_caption_entities
,disable_content_type_detection
towith_disable_content_type_detection
,disable_notification
towith_disable_notification
,parse_mode
towith_caption_parse_mode
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.SendPhoto
:allow_sending_without_reply
towith_allow_sending_without_reply
,caption
towith_caption
,caption_entities
towith_caption_entities
,disable_notification
towith_disable_notification
,parse_mode
towith_caption_parse_mode
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.SendVideo
:allow_sending_without_reply
towith_allow_sending_without_reply
,caption
towith_caption
,caption_entities
towith_caption_entities
,disable_notification
towith_disable_notification
,duration
towith_duration
,height
towith_height
,parse_mode
towith_caption_parse_mode
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
,supports_streaming
towith_supports_streaming
.SendVideoNote
:allow_sending_without_reply
towith_allow_sending_without_reply
,disable_notification
towith_disable_notification
,duration
towith_duration
,length
towith_length
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.SendVoice
:allow_sending_without_reply
towith_allow_sending_without_reply
,caption
towith_caption
,caption_entities
towith_caption_entities
,disable_notification
towith_disable_notification
,duration
towith_duration
,parse_mode
towith_caption_parse_mode
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.InputMessageContentContact
:last_name
towith_last_name
,vcard
towith_vcard
.InputMessageContentInvoice
:is_flexible
towith_is_flexible
,max_tip_amount
towith_max_tip_amount
,need_email
towith_need_email
,need_name
towith_need_name
,need_phone_number
towith_need_phone_number
,need_shipping_address
towith_need_shipping_address
,photo_height
towith_photo_height
,photo_size
towith_photo_size
,photo_width
towith_photo_width
,photo_url
towith_photo_url
,provider_data
towith_provider_data
,send_email_to_provider
towith_send_email_to_provider
,send_phone_number_to_provider
towith_send_phone_number_to_provider
,suggested_tip_amounts
towith_suggested_tip_amounts
.InputMessageContentLocation
:heading
towith_heading
,horizontal_accuracy
towith_horizontal_accuracy
,live_period
towith_live_period
,proximity_alert_radius
towith_proximity_alert_radius
.InputMessageContentText
:disable_web_page_preview
towith_disable_web_page_preview
,entities
towith_entities
,parse_mode
towith_parse_mode
.InputMessageContentVenue
:foursquare_id
towith_foursquare_id
,foursquare_type
towith_foursquare_type
,google_place_id
towith_google_place_id
,google_place_type
towith_google_place_type
.AnswerInlineQuery
:button
towith_button
,cache_time
towith_cache_time
,is_personal
towith_is_personal
,next_offset
towith_next_offset
.InlineQueryResultArticle
:description
towith_description
,hide_url
towith_hide_url
,reply_markup
towith_reply_markup
,url
towith_url
.InlineQueryResultAudio
:audio_duration
towith_audio_duration
,caption
towith_caption
,caption_entities
towith_caption_entities
,input_message_content
towith_input_message_content
,parse_mode
towith_caption_parse_mode
,performer
towith_performer
,reply_markup
towith_reply_markup
.InlineQueryResultCachedAudio
:caption
towith_caption
,caption_entities
towith_caption_entities
,input_message_content
towith_input_message_content
,parse_mode
towith_caption_parse_mode
,reply_markup
towith_reply_markup
.InlineQueryResultContact
:input_message_content
towith_input_message_content
,last_name
towith_last_name
,reply_markup
towith_reply_markup
,vcard
towith_vcard
.InlineQueryResultDocument
:caption
towith_caption
,caption_entities
towith_caption_entities
,description
towith_description
,input_message_content
towith_input_message_content
,parse_mode
towith_caption_parse_mode
,reply_markup
towith_reply_markup
.InlineQueryResultCachedDocument
:caption
towith_caption
,caption_entities
towith_caption_entities
,description
towith_description
,input_message_content
towith_input_message_content
,parse_mode
towith_caption_parse_mode
,reply_markup
towith_reply_markup
.InlineQueryResultGame
:reply_markup
towith_reply_markup
.InlineQueryResultGif
:caption
towith_caption
,caption_entities
towith_caption_entities
,gif_duration
towith_gif_duration
,gif_height
towith_gif_height
,gif_width
towith_gif_width
,input_message_content
towith_input_message_content
,parse_mode
towith_caption_parse_mode
,reply_markup
towith_reply_markup
,title
towith_title
.InlineQueryResultCachedGif
:caption
towith_caption
,caption_entities
towith_caption_entities
,input_message_content
towith_input_message_content
,parse_mode
towith_caption_parse_mode
,reply_markup
towith_reply_markup
,title
towith_title
.InlineQueryResultLocation
:heading
towith_heading
,horizontal_accuracy
towith_horizontal_accuracy
,input_message_content
towith_input_message_content
,live_period
towith_live_period
,proximity_alert_radius
towith_proximity_alert_radius
,reply_markup
towith_reply_markup
.InlineQueryResultMpeg4Gif
:caption
towith_caption
,caption_entities
towith_caption_entities
,input_message_content
towith_input_message_content
,mpeg4_duration
towith_mpeg4_duration
,mpeg4_height
towith_mpeg4_height
,mpeg4_width
towith_mpeg4_width
,parse_mode
towith_caption_parse_mode
,reply_markup
towith_reply_markup
,title
towith_title
.InlineQueryResultCachedMpeg4Gif
:caption
towith_caption
,caption_entities
towith_caption_entities
,input_message_content
towith_input_message_content
,parse_mode
towith_caption_parse_mode
,reply_markup
towith_reply_markup
,title
towith_title
.InlineQueryResultPhoto
:caption
towith_caption
,caption_entities
towith_caption_entities
,description
towith_description
,input_message_content
towith_input_message_content
,parse_mode
towith_caption_parse_mode
,photo_height
towith_photo_height
,photo_width
towith_photo_width
,reply_markup
towith_reply_markup
,title
towith_title
.InlineQueryResultCachedPhoto
:caption
towith_caption
,caption_entities
towith_caption_entities
,description
towith_description
,input_message_content
towith_input_message_content
,parse_mode
towith_caption_parse_mode
,reply_markup
towith_reply_markup
,title
towith_title
.InlineQueryResultCachedSticker
:input_message_content
towith_input_message_content
,reply_markup
towith_reply_markup
.InlineQueryResultVenue
:foursquare_id
towith_foursquare_id
,foursquare_type
towith_foursquare_type
,google_place_id
towith_google_place_id
,google_place_type
towith_google_place_type
,input_message_content
towith_input_message_content
,reply_markup
towith_reply_markup
.InlineQueryResultVideo
:caption
towith_caption
,caption_entities
towith_caption_entities
,description
towith_description
,input_message_content
towith_input_message_content
,parse_mode
towith_caption_parse_mode
,reply_markup
towith_reply_markup
,video_duration
towith_video_duration
,video_height
towith_video_height
,video_width
towith_video_width
.InlineQueryResultCachedVideo
:caption
towith_caption
,caption_entities
towith_caption_entities
,description
towith_description
,input_message_content
towith_input_message_content
,parse_mode
towith_caption_parse_mode
,reply_markup
towith_reply_markup
.InlineQueryResultVoice
:caption
towith_caption
,caption_entities
towith_caption_entities
,input_message_content
towith_input_message_content
,parse_mode
towith_caption_parse_mode
,reply_markup
towith_reply_markup
,voice_duration
towith_voice_duration
.InlineQueryResultCachedVoice
:caption
towith_caption
,caption_entities
towith_caption_entities
,parse_mode
towith_caption_parse_mode
,reply_markup
towith_reply_markup
,input_message_content
towith_input_message_content
.GetGameHighScores
:new
tofor_chat_message
,with_inline_message_id
tofor_inline_message
.SendGame
:allow_sending_without_reply
towith_allow_sending_without_reply
,disable_notification
towith_disable_notification
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.SetGameScore
:new
tofor_chat_message
,with_inline_message_id
tofor_inline_message
,disable_edit_message
towith_disable_edit_message
,force
towith_force
.InputMediaAnimation
:caption
towith_caption
,caption_entities
towith_caption_entities
,duration
towith_duration
,height
towith_height
,parse_mode
towith_caption_parse_mode
,width
towith_width
.InputMediaAudio
:caption
towith_caption
,caption_entities
towith_caption_entities
,duration
towith_duration
,parse_mode
towith_caption_parse_mode
,performer
towith_performer
,title
towith_title
.InputMediaDocument
:caption
towith_caption
,caption_entities
towith_caption_entities
,disable_content_type_detection
towith_disable_content_type_detection
,parse_mode
towith_caption_parse_mode
.InputMediaPhoto
:caption
towith_caption
,caption_entities
towith_caption_entities
,parse_mode
towith_caption_parse_mode
.InputMediaVideo
:caption
towith_caption
,caption_entities
towith_caption_entities
,duration
towith_duration
,height
towith_height
,parse_mode
towith_caption_parse_mode
,supports_streaming
towith_supports_streaming
,width
towith_width
.SendLocation
:allow_sending_without_reply
towith_allow_sending_without_reply
,disable_notification
towith_disable_notification
,heading
towith_heading
,horizontal_accuracy
towith_horizontal_accuracy
,live_period
towith_live_period
,proximity_alert_radius
towith_proximity_alert_radius
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.MediaGroupItem
:audio
tofor_audio
,document
tofor_document
,photo
tofor_photo
,video
tofor_video
.SendMediaGroup
:allow_sending_without_reply
towith_allow_sending_without_reply
,disable_notification
towith_disable_notification
,protect_content
towith_protect_content
,reply_to_message_id
towith_reply_to_message_id
.InlineKeyboardMarkup
:row
toadd_row
.InlineKeyboardButton
:callback_data
tofor_callback_data
,callback_data_struct
tofor_callback_data_struct
,callback_game
tofor_callback_game
,login_url
tofor_login_url
,pay
tofor_pay
,url
tofor_url
,web_app
tofor_web_app
.DeleteWebhook
:drop_pending_updates
towith_drop_pending_updates
.SetWebhook
:allowed_updates
towith_allowed_updates
,certificate
towith_certificate
,drop_pending_updates
towith_drop_pending_updates
,ip_address
towith_ip_address
,max_connections
towith_max_connections
.SendVenue
:allow_sending_without_reply
towith_allow_sending_without_reply
,disable_notification
towith_disable_notification
,foursquare_id
towith_foursquare_id
,foursquare_type
towith_foursquare_type
,google_place_id
towith_google_place_id
,google_place_type
towith_google_place_type
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.GetUserProfilePhotos
:limit
towith_limit
,offset
towith_offset
.GetUpdates
:allowed_updates
towith_allowed_updates
,limit
towith_limit
,offset
towith_offset
,timeout
towith_timeout
.SendSticker
:allow_sending_without_reply
towith_allow_sending_without_reply
,disable_notification
towith_disable_notification
,emoji
towith_emoji
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.SetStickerMaskPosition
:mask_position
towith_mask_position
.ReplyKeyboardMarkup
:row
toadd_row
,input_field_placeholder
towith_input_field_placeholder
,one_time_keyboard
towith_one_time_keyboard
,resize_keyboard
towith_resize_keyboard
,selective
towith_selective
.KeyboardButton
:request_contact
towith_request_contact
,request_location
towith_request_location
,request_poll
towith_request_poll
,web_app
towith_web_app
.ReplyKeyboardRemove
:selective
towith_selective
.LoginUrl
:bot_username
towith_bot_username
,forward_text
towith_forward_text
,request_write_access
towith_request_write_access
.ForceReply
:input_field_placeholder
towith_input_field_placeholder
,selective
towith_selective
.SendQuiz
:allow_sending_without_reply
towith_allow_sending_without_reply
,close_date
towith_close_date
,disable_notification
towith_disable_notification
,explanation
towith_explanation
,explanation_entities
towith_explanation_entities
,explanation_parse_mode
towith_explanation_parse_mode
,is_anonymous
towith_is_anonymous
,is_closed
towith_is_closed
,open_period
towith_open_period
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.SendPoll
:allow_sending_without_reply
towith_allow_sending_without_reply
,allows_multiple_answers
towith_allows_multiple_answers
,close_date
towith_close_date
,disable_notification
towith_disable_notification
,is_anonymous
towith_is_anonymous
,is_closed
towith_is_closed
,open_period
towith_open_period
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.StopPoll
:reply_markup
towith_reply_markup
.CreateInvoiceLink
:parameters
towith_parameters
.SendInvoice
:allow_sending_without_reply
towith_allow_sending_without_reply
,disable_notification
towith_disable_notification
,parameters
towith_parameters
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
,start_parameter
towith_start_parameter
.CopyMessage
:allow_sending_without_reply
towith_allow_sending_without_reply
,caption
towith_caption
,caption_entities
towith_caption_entities
,disable_notification
towith_disable_notification
,parse_mode
towith_caption_parse_mode
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.EditMessageCaption
:new
tofor_chat_message
,with_inline_message_id
tofor_inline_message
,caption
towith_caption
,caption_entities
towith_caption_entities
,parse_mode
towith_caption_parse_mode
,reply_markup
towith_reply_markup
.EditMessageLiveLocation
:new
tofor_chat_message
,with_inline_message_id
tofor_inline_message
,horizontal_accuracy
towith_horizontal_accuracy
,heading
towith_heading
,proximity_alert_radius
towith_proximity_alert_radius
,reply_markup
towith_reply_markup
.EditMessageMedia
:new
tofor_chat_message
,with_inline_message_id
tofor_inline_message
,reply_markup
towith_reply_markup
EditMessageReplyMarkup
:new
tofor_chat_message
,with_inline_message_id
tofor_inline_message
,reply_markup
towith_reply_markup
.EditMessageText
:new
tofor_chat_message
,with_inline_message_id
tofor_inline_message
,disable_web_page_preview
towith_disable_web_page_preview
,entities
towith_entities
,parse_mode
towith_parse_mode
,reply_markup
towith_reply_markup
,ForwardMessage
:disable_notification
towith_disable_notification
,protect_content
towith_protect_content
.SendMessage
:allow_sending_without_reply
towith_allow_sending_without_reply
,disable_notification
towith_disable_notification
,disable_web_page_preview
towith_disable_web_page_preview
,entities
towith_entities
,parse_mode
towith_parse_mode
,protect_content
towith_protect_content
,reply_markup
towith_reply_markup
,reply_to_message_id
towith_reply_to_message_id
.StopMessageLiveLocation
:new
tofor_chat_message
,with_inline_message_id
tofor_inline_message
,reply_markup
towith_reply_markup
.Dice
:kind
todice_type
.
MessageDataError
- unused.InputFileInfo
- useInputFileReader::file_name
andInputFileReader::mime_type
methods instead.MessageKind
- useMessage.chat
,Message.sender
andMessage.author_signature
fields instead.
FormError::Io
- unused.InlineKeyboardError::UnexpectedButtonKind
- unused.
ReplyKeyboardMarkup
:from_vec
- useFrom
/Into
instead.
InlineKeyboardMarkup
:from_vec
- useFrom
/Into
insteadinto_vec
- useFrom
/Into
instead.
Message
:get_user
,get_user_id
,get_user_username
- useMessage.sender
field instead.get_chat
,get_chat_id
,get_chat_username
- useMessage.chat
field instead.
InputFileReader
:info
- useInputFileReader::file_name
andInputFileReader::mime_type
instead.
InputFile
:reader
- useFrom
/Into
instead.
Animation::new
, SendContact::new
, InputMessageContentContact::new
, InputMessageContentInvoice::new
,
InputMessageContentVenue::new
, AnswerInlineQuery::new
, AnswerWebAppQuery::new
, InlineQueryResultArticle::new
,
InlineQueryResultAudio::new
, InlineQueryResultCachedAudio::new
, InlineQueryResultContact::new
,
InlineQueryResultDocument::new
, InlineQueryResultCachedDocument::new
, InlineQueryResultGame::new
,
InlineQueryResultGif::new
, InlineQueryResultCachedGif::new
, InlineQueryResultVenue::new
,
InlineQueryResultVideo::new
, InlineQueryResultCachedVideo::new
, InlineQueryResultVoice::new
,
InlineQueryResultCachedVoice::new
, InputMedia::new
, InputMedia::with_thumbnail
, SetPassportDataErrors::new
,
LabeledPrice::new
, ShippingOption::new
, AnswerShippingQuery::ok
, AnswerShippingQuery::error
, SendQuiz::new
,
SendPoll::new
.
InlineKeyboardButton::new
method to private.MediaGroup::add_item
method to private.
- Use different type parameters for strings in
PassportElementError
factory methods andSendContact::new
method. - Added missing variants to the
AllowedUpdate
enum:BotStatus
,ChatJoinRequest
.
- Updated tokio version to 1.16.
- Added Bot API 5.7 support.
- Added
NewSticker::video
method. - Added
StickerSet.is_video
field. - Added
Sticker.is_video
field.
- Added
Update::get_user_username()
now returnsOption<&str>
instead ofOption<String>
.Update::get_message()
now includes a message fromCallbackQuery
.- Added
Message::get_user_id()
andMessage::get_user_username()
methods.
- Removed
Config
. - Added
Api::with_client
method. - Spawn a new task for each incoming update in
LongPoll
. - Retry a request on timeout error.
- Added
message_auto_delete_time
field to chat-related structs.
- Added
Update::get_user_id
andUpdate::get_user_username
methods. - Added Bot API 5.6 support.
- Added
protect_content
parameter tosend*
methods. - Added spoiler text entity support.
- Added
- Rust 2021 edition.
- Updated tokio version to 1.15.
- Added Bot API 5.5 support.
- Add
has_protected_content
parameter toChannelChat
,GroupChat
,SupergroupChat
andMessage
structs. - Add
has_private_forwards
parameter toPrivateChat
struct. - Added
BanChatSenderChat
method. - Added
UnbanChatSenderChat
method.
- Add
- Added Bot API 5.4 support.
- Added
ChatJoinRequest
struct. - Added
ApproveChatJoinRequest
method. - Added
DeclineChatJoinRequest
method. - Added
name
parameter toEditChatInviteLink
,CreateChatInviteLink
methods andChatInviteLink
struct. - Added
pending_join_request_count
parameter toCharInviteLink
struct. - Added
creates_join_request
parameter toEditChatInviteLink
,CreateChatInviteLink
methods andChatInviteLink
struct. - Added
ChooseSticker
variant toChatAction
enum.
- Added
- Added Bot API 5.3 support.
- Added
BotCommandScope
enum. - Added
scope
andlanguage_code
parameters toSet/GetMyCommands
methods. - Added
DeleteMyCommands
method. - Added
input_field_placeholder
parameter toReplyKeyboardMarkup
struct. - Added
input_field_placeholder
parameter toForceReply
struct. - Renamed
KickChatMember
method toBanChatMember
. - Renamed
GetChatMembersCount
toGetChatMemberCount
.
- Added
- Added Bot API 5.2 support.
- Added
InputMessageContentInvoice
struct. - Changed type of
chat_id
argument fromInteger
toChatId
inSendInvoice
method. - Added
max_tip_amount
andsuggested_tip_amounts
parameters toSendInvoice
method. - Changed
SendInvoice::provider_data
method to accept a&Serialize
type. SendInvoice.start_parameter
is optional now.- Added
InlineQuery.chat_type
field. - Added
MessageData::VoiceChatScheduled
variant. - Renamed
ChatAction::{RecordAudio, UploadAudio}
toChatAction::{RecordVoice, UploadVoice}
.
- Added
- Fixed parsing of command arguments when bot name is a part of the command.
- Added Bot API 5.1 support.
- Added
ChatMemberUpdated
struct. - Added
ChatInviteLink
struct. - Added
CreateChatInviteLink
,EditChatInviteLink
andRevokeChatInviteLink
methods. - Added voice chat service messages support.
MessageData::VoiceChatStarted
.MessageData::VoiceChatEnded
.MessageData::VoiceChatParticipantsInvited
.
- Added
AutoDeleteTimerChanged
service message support. - Added
ChatMemberAdministrator.can_manage_voice_chats
field. - Added
can_manage_voice_chats
parameter toPromoteChatMember
method. - Added
revoke_messages
parameter toKickChatMember
method. - Added
can_manage_chat
field toChatMemberAdministrator
struct. - Added
can_manage_chat
parameter toPromoteChatMember
method. - Added
Bowling
dice.
- Added
- New
UpdateHandler
API.- Removed
async_trait
dependency. handle
method now takes an immutable reference toself
.- Added
SyncedUpdateHandler
wrapper for non-sync handlers.
- Removed
- New
TextEntity
API.- Use
Vec1
instead ofVec
to guarantee that entities are not empty. TextEntityPosition
now containsu32
values instead ofi64
.- You can convert ranges into
TextEntityPosition
.
- Use
- Added
Text::as_ref()
method to get data as&str
. - Implemented
String
toText
conversion. - Added
UpdateKind::Unknown
for updates introduced in new Bot API versions. - Added
Chat::get_id()
andChat::get_username()
methods. - async-stream updated to 0.3 version.
- tokio updated to 1.3 version.
- Fixed error timeout in longpoll.
- Fixed a panic when getting a list of bot commands.
- Tokio 1.0 support
- Added Bot API 5.0 support.
- Allowed to specify text entities instead of specifying the
parse_mode
.- Added
entities
parameter toSendMessage
andEditMessageText
methods. - Added
explanation_entities
parameter toSendQuiz
method - Added
caption_entities
parameter toEditMessageCaption
,SendAnimation
,SendAudio
,SendDocument
,SendPhoto
,SendVideo
andSendVoice
methods. - Added
caption_entities
field toInlineQueryResultAudio
,InlineQueryResultDocument
,InlineQueryResultGif
,InlineQueryResultMpeg4Gif
,InlineQueryResultPhoto
,InlineQueryResultVideo
,InlineQueryResultVoice
,InlineQueryResultCachedAudio
,InlineQueryResultCachedDocument
,InlineQueryResultCachedMpeg4Gif
,InlineQueryResultCachedPhoto
,InlineQueryResultCachedMpeg4Gif
,InlineQueryResultCachedVideo
,InlineQueryResultCachedVoice
,InputMediaAnimation
,InputMediaAudio
,InputMediaDocument
,InputMediaPhoto
andInputMediaVideo
structs. - Added
entities
field toInputMessageContentText
struct.
- Added
- Added football and slot machine dices.
- Added
allow_sending_without_reply
parameter. Affected methods:SendMessage
SendPhoto
SendGame
SendPoll
SendAnimation
SendAudio
SendContact
SendDice
SendDocument
SendInvoice
SendLocation
SendMediaGroup
SendVenue
SendVideo
SendVideoNote
SendVoice
SendSticker
- Added
google_place_id
andgoogle_place_type
fields. Affected structs and methods:SendVenue
method.Venue
struct.InlineQueryResultVenue
struct.InputMessageContentVenue
struct.
- Maximum poll question length increased to 300 characters.
- Added
CopyMessage
method. - Reworked
TextEntity
.- Removed
Message.commands
field, useText::get_bot_commands()
instead. - Removed
TextEntityData
,TextEntityMention
andTextEntityLink
structs. - Added
TextEntityPosition
struct. - Added support of serializing
TextEntity
. - Added
Text::get_bot_commands()
method. User
struct now implementsserde::Serialize
- Removed
- Added
author_signature
to message kinds for group chats. - Added
is_anonymous
parameterPromoteChatMember
method. - Added
is_anonymous
field toChatMemberAdministrator
andChatMemberCreator
structs. - Added
sender_chat
field toMessage
struct. - Added horizontal accuracy support for location.
- Added
horizontal_accuracy
field toLocation
,InlineQueryResultLocation
andInputMessageContentLocation
struct. - Added
horizontal_accuracy
parameter toSendLocation
andEditMessageLiveLocation
method.
- Added
- Added proximity alert support for location.
- Added
proximity_alert_radius
field toLocation
,InlineQueryResultLocation
andInputMessageContentLocation
struct. - Added
proximity_alert_radius
parameter toSendLocation
andEditMessageLiveLocation
method. - Added
ProximityAlertTriggered
service message.
- Added
- Added heading support for location.
- Added
heading
field toLocation
,InlineQueryResultLocation
andInputMessageContentLocation
struct. - Added
heading
parameter toSendLocation
andEditMessageLiveLocation
method.
- Added
- Added
live_location
field toLocation
struct. - Added support for
Audio
andVideo
toMediaGroup
. - Added
UnpinAllChatMessages
method. - Added
message_id
parameter toUnpinChatMessage
method. - Added
disable_content_type_detection
field toInputMediaDocument
struct. - Added
disable_content_type_detection
parameter toSendDocument
method. - Added
file_name
toAudio
andVideo
structs. - Added
only_if_banned
parameter toUnbanChatMember
method. - Updated chat-related structs.
- Added
ChatLocation
struct. - Added
linked_chat_id
field toChannelChat
. - Removed
all_members_are_administrators
field fromGroupChat
. - Added
bio
andpinned_message
fields toPrivateChat
. - Added
linked_chat_id
andlocation
fields toSupergroupChat
.
- Added
- Added
drop_pending_updates
parameter toSetWebhook
andDeleteWebhook
methods. - Added information about IP address in webhooks.
- Added
ip_address
parameter toSetWebhook
method. - Added
ip_address
field toWebhookInfo
struct.
- Added
- Added
close
method. - Added
LogOut
method.
- Allowed to specify text entities instead of specifying the
- Added Bot API 4.9 support.
- Added
via_bot
field toMessage
struct. - Added
thumb_mime_type
toInlineQueryResultGif
andInlineQueryResultMpeg4Gif
structs. - Added basketball dice.
DiceKind
is non-exhaustive now.
- Added
- Fixed a bug with proxy without username/password.
- Added Bot API 4.8 support
Poll
converted to enum.- Added support for quiz explanation.
- Added
open_period
andclose_date
to poll/quiz. Dice.value
field is private now, usevalue()
method instead.- Added DiceKind enum and
kind()
method toDice
.
- Public access to InlineKeyboard data.
- Added Bot API 4.7 support
- Added
SendDice
method. - Added
MessageData::Dice
variant withDice
type. - Added
BotCommand
type. - Added
SetMyCommands
andGetMyCommands
methods. - Added TGS stickers support.
- Added
thumb
field toStickerSet
struct. - Added
SetStickerSetThumb
method.
- Added
- Renamed some message entity structs
BotCommand
->TextEntityBotCommand
TextLink
->TextEntityLink
TextMention
->TextEntityMention
- Added some missing trait derives
- Impl
Eq
forChatId
andUserId
.
ChatId
type implementsDisplay
trait instead ofToString
.- Added
Display
andSerialize
trait implementations forUserId
type. ResponseError
fields are private now andResponseParameters
struct was removed, use corresponding methods instead.- Added
Copy
,Hash
,PartialEq
andPartialOrd
trait implementations for several types. - Reduced memory usage when sending files.
InputFileReader
now takestokio::io::AsyncRead
instead ofstd::io::Read
.InputFile::path
is async and returns atokio::io::Result
. download_file
method now returns a stream of bytes.- Added
Command
type.
- Added Bot API 4.6 support.
- Added
ResponseError::can_retry()
method. - Added
ParseMode::escape()
method. - Added
get_full_name
,get_link
andget_mention
methods toUser
type. - Removed deprecated
RestrictChatMember
methods.
- Return socks proxy support.
- Deprecate some
RestrictChatMember
methods (to be removed in 0.6.0).
- Added async/await support.
- Added Bot API 4.5 support.
- Added rustls support.
- Fixed some errors when parsing update.
- Temporarily disabled socks proxy support.
- Added Bot API 4.4 support.
- Added information about response data to poll request error.
RestrictChatMember
methods:can_send_messages
,can_send_media_messages
,can_send_other_messages
,can_add_web_page_previews
are now deprecated and will be removed in 0.5.0. Usewith_permissions
method instead.
- Ignore invalid updates in webhook handler.
- Added Bot API 4.3 support.
- Fixed ChatMemberAdministrator parsing.
- Added Bot API 4.2 support.
- Added
prelude
module. - Added
ChatMember::is_member()
method. - Added
UpdatesStream::should_retry()
method. - Added
Api::download_file()
method. - Added option to set custom base url for Telegram API (see
Config
struct). - Added multipart support (you can upload files using multipart/form-data now).
- Added
UserId
type. - You can (de)serialize callback data using
serde_json
(seeCallbackQuery
andInlineKeyboardButton
types). Api::new()
now takes aConfig
object.Api::execute()
takes a method by value instead of reference.Method::get_request(&self)
replaced byMethod::into_request(self)
RequestBuilder
is now private.WebhookServiceFactory
is now private.- Removed use of
Mutex
inWebhookService
. - Removed
WebhookServiceFactoryError
. - Removed
InlineKeyboardButton::new()
method as the user must use exactly one of the option fields.
- Dispatcher moved to carapax.
- Added
Update::get_chat_id()
,Update::get_chat_username()
andUpdate::get_user()
methods. - Added
Message::is_edited()
andMessage::get_chat_username()
methods. - Added
Message.commands
property. - Added
UpdatesStreamOptions
. - Removed
Api::create()
andApi::with_proxy()
in favor ofApi::new()
. - Removed
Api::get_updates()
, usetgbot::handle_updates()
instead. WebhookService
is public now.- Respect
retry_after
parameter on polling error.
- Migrated from curl to hyper.
- Added dispatcher.
- Added webhooks support.
- First release.