|
|
|
@ -1,3 +1,405 @@
|
|
|
|
|
Changes in 1.8.0 (29 Dec 2021):
|
|
|
|
|
|
|
|
|
|
* Changed the type of user, basic group and supergroup identifiers from `int32` to `int53`.
|
|
|
|
|
* Simplified chat list loading and removed the ability to misuse the method `getChats`:
|
|
|
|
|
- Renamed the method `getChats` to `loadChats`.
|
|
|
|
|
- Removed the parameters `offset_order` and `offset_chat_id` from the method `loadChats`. Chats are now always loaded
|
|
|
|
|
from the last known chat in the list.
|
|
|
|
|
- Changed the type of the result in the method `loadChats` to `ok`. If no chats were loaded, a 404 error is returned.
|
|
|
|
|
The order of chats in the list must be maintained using the updates `updateChatPosition`, `updateChatLastMessage`,
|
|
|
|
|
and `updateChatDraftMessage`.
|
|
|
|
|
- Added the convenience method `getChats`, which returns the requested number of chats from the beginning of a chat
|
|
|
|
|
list and can be used if the list of chats doesn't need to be maintained in a consistent state.
|
|
|
|
|
* Added the ability to hook TDLib log messages:
|
|
|
|
|
- Added the function `td_set_log_message_callback` to JSON interface.
|
|
|
|
|
- Added the function `set_log_message_callback` to the class `ClientManager`.
|
|
|
|
|
- Added the function `SetLogMessageCallback` to the UWP native wrapper through C++/CX.
|
|
|
|
|
- Deprecated the function `td_set_log_fatal_error_callback` in JSON interface in favor of
|
|
|
|
|
the function `td_set_log_message_callback`.
|
|
|
|
|
- Deprecated the function `Log::set_fatal_error_callback` in favor of
|
|
|
|
|
the function `ClientManager::set_log_message_callback`.
|
|
|
|
|
* Added support for sending messages on behalf of public channels owned by the user:
|
|
|
|
|
- Added the field `message_sender_id` to the class `chat`, containing the identifier of the currently selected
|
|
|
|
|
message sender.
|
|
|
|
|
- Added the update `updateChatMessageSender`.
|
|
|
|
|
- Added the method `getChatAvailableMessageSenders`, returning the list of available message senders for the chat.
|
|
|
|
|
- Added the method `setChatMessageSender`, changing the currently selected message sender.
|
|
|
|
|
- Added the field `need_another_sender` to the class `messageSendingStateFailed`. If it is true, an alert needs
|
|
|
|
|
to be shown to the user that the message will be re-sent on behalf of another sender.
|
|
|
|
|
- Replaced the method `deleteChatMessagesFromUser` with the method `deleteChatMessagesBySender`, expecting
|
|
|
|
|
a `MessageSender` instead of a user identifier.
|
|
|
|
|
- Replaced the update `updateUserChatAction` with the update `updateChatAction`, containing a `MessageSender`
|
|
|
|
|
instead of a user identifier as a source of the chat action.
|
|
|
|
|
* Added the ability to ban supergroups and channels in other supergroups and channels:
|
|
|
|
|
- Replaced the fields `user_id` with the fields `member_id` in the classes `chatMember` and
|
|
|
|
|
`chatEventMemberRestricted`.
|
|
|
|
|
- Replaced the parameters `user_id` with the parameters `member_id` in the methods `setChatMemberStatus` and
|
|
|
|
|
`getChatMember`.
|
|
|
|
|
* Improved support for animated emoji:
|
|
|
|
|
- Added the class `animatedEmoji`, containing information about an animated emoji.
|
|
|
|
|
- Added the class `messageAnimatedEmoji` to the types of message content.
|
|
|
|
|
- Added the method `clickAnimatedEmojiMessage` to be called when an animated emoji is clicked.
|
|
|
|
|
- Added the update `updateAnimatedEmojiMessageClicked`, received when a big animated sticker must be played.
|
|
|
|
|
- Added the class `chatActionWatchingAnimations` to the types of chat action.
|
|
|
|
|
- Added the method `getAnimatedEmoji`, returning an animated emoji corresponding to a given emoji.
|
|
|
|
|
- Added the writable option "disable_animated_emoji".
|
|
|
|
|
- Removed the option "animated_emoji_sticker_set_name".
|
|
|
|
|
* Added support for automatic message deletion in all chat types:
|
|
|
|
|
- Added the field `message_ttl` to the class `chat`.
|
|
|
|
|
- Added the update `updateChatMessageTtl`.
|
|
|
|
|
- Added the method `setChatMessageTtl`.
|
|
|
|
|
- Added the class `chatEventMessageTtlChanged`, representing change of the field `message_ttl` in the chat event log.
|
|
|
|
|
- Removed the field `ttl` from the class `secretChat` in favor of the field `message_ttl` in the class `chat`.
|
|
|
|
|
- Removed the method `sendChatSetTtlMessage` in favor of the method `setChatMessageTtl`.
|
|
|
|
|
* Improved names of the fields of the type `MessageSender`:
|
|
|
|
|
- Renamed the fields `sender` to `sender_id` in the classes `message` and `notificationTypeNewPushMessage`.
|
|
|
|
|
- Renamed the parameter `sender` to `sender_id` in the methods `searchChatMessages`, `addLocalMessage`, and
|
|
|
|
|
`toggleMessageSenderIsBlocked`.
|
|
|
|
|
- Renamed the field `recent_repliers` to `recent_replier_ids` in the class `messageReplyInfo`.
|
|
|
|
|
- Renamed the field `traveler` to `traveler_id` in the class `messageProximityAlertTriggered`.
|
|
|
|
|
- Renamed the field `watcher` to `watcher_id` in the class `messageProximityAlertTriggered`.
|
|
|
|
|
* The field `formatted_phone_number` in the class `phoneNumberInfo` now contains the character '-' at the places of
|
|
|
|
|
expected digits.
|
|
|
|
|
* Added the synchronous method `getPhoneNumberInfoSync` that can be used instead of the method `getPhoneNumberInfo`
|
|
|
|
|
to synchronously receive information about a phone number by its prefix.
|
|
|
|
|
* Replaced the field `user_id` in the class `chatEvent` with the field `member_id` of the type `MessageSender`.
|
|
|
|
|
* Improved support for bot payments:
|
|
|
|
|
- Allowed sending invoices as results of inline queries by allowing bots to use the class `inputMessageInvoice` as
|
|
|
|
|
the value of the field `input_message_content` in the classes `inputInlineQueryResultAnimation`,
|
|
|
|
|
`inputInlineQueryResultArticle`, `inputInlineQueryResultAudio`, `inputInlineQueryResultContact`,
|
|
|
|
|
`inputInlineQueryResultDocument`, `inputInlineQueryResultLocation`, `inputInlineQueryResultPhoto`,
|
|
|
|
|
`inputInlineQueryResultSticker`, `inputInlineQueryResultVenue`, `inputInlineQueryResultVideo`, and
|
|
|
|
|
`inputInlineQueryResultVoiceNote`.
|
|
|
|
|
- Allowed sending invoice messages to basic group, supergroup and channel chats.
|
|
|
|
|
- Allowed bots to send forwardable invoices by specifying an empty field `start_parameter` in
|
|
|
|
|
the class `inputMessageInvoice`.
|
|
|
|
|
- Added the field `invoice_chat_id` to the class `messagePaymentSuccessful`.
|
|
|
|
|
- Added the field `id` to the class `paymentForm`, containing a unique payment form identifier.
|
|
|
|
|
- Added the parameter `payment_form_id` to the method `sendPaymentForm`.
|
|
|
|
|
- Added the field `seller_bot_user_id` to the class `paymentForm`, containing the user identifier of the seller bot.
|
|
|
|
|
- Added the field `payments_provider_user_id` to the class `paymentForm`, containing the user identifier of
|
|
|
|
|
the payment provider bot.
|
|
|
|
|
- Added the fields `title`, `description`, `photo`, and `seller_bot_user_id` to the class `paymentReceipt`.
|
|
|
|
|
- Added the fields `max_tip_amount` and `suggested_tip_amounts` to the class `invoice`.
|
|
|
|
|
- Added the parameter `tip_amount` to the method `sendPaymentForm`.
|
|
|
|
|
- Added the field `tip_amount` to the class `paymentReceipt`.
|
|
|
|
|
- Renamed the class `inputCredentialsAndroidPay` to `inputCredentialsGooglePay`.
|
|
|
|
|
- Added the class `paymentFormTheme`, containing the desired colors for a payment form.
|
|
|
|
|
- Added the parameter `theme` to the method `getPaymentForm`.
|
|
|
|
|
- Removed the field `invoice_message_id` from the class `messagePaymentSuccessfulBot`.
|
|
|
|
|
* Added the method `deleteChat`, which can be used to completely delete a chat along with all messages.
|
|
|
|
|
* Removed the method `deleteSupergroup` in favor of the method `deleteChat`.
|
|
|
|
|
* Changed the type of the result in the method `getProxyLink` to the class `httpUrl` instead of the class `text`.
|
|
|
|
|
* Removed support for secret chat layers before 73.
|
|
|
|
|
* Added support for sponsored messages:
|
|
|
|
|
- Added the class `sponsoredMessage`.
|
|
|
|
|
- Added the method `getChatSponsoredMessage`.
|
|
|
|
|
- Added the ability to pass identifiers of sponsored messages to `viewMessages`. The method must be called when
|
|
|
|
|
the entire text of the sponsored message is shown on the screen (excluding the button).
|
|
|
|
|
* Added support for video chats:
|
|
|
|
|
- Added the class `groupCall`, representing a group call.
|
|
|
|
|
- Added the method `getGroupCall` for fetching information about a group call.
|
|
|
|
|
- Added the update `updateGroupCall`.
|
|
|
|
|
- Added the class `videoChat`, representing a video chat, i.e. group call bound to a chat.
|
|
|
|
|
- Added the field `video_chat` to the class `chat`.
|
|
|
|
|
- Added the update `updateChatVideoChat`.
|
|
|
|
|
- Added the classes `messageVideoChatScheduled`, `messageVideoChatStarted`, and `messageVideoChatEnded` to
|
|
|
|
|
the types of message content.
|
|
|
|
|
- Added the class `messageInviteVideoChatParticipants` to the types of message content.
|
|
|
|
|
- Added the field `can_manage_video_chats` to the class `chatMemberStatusAdministrator`.
|
|
|
|
|
- Added the class `groupCallId`.
|
|
|
|
|
- Added the method `createVideoChat` for video chat creation.
|
|
|
|
|
- Added the method `startScheduledGroupCall`.
|
|
|
|
|
- Added the method `toggleGroupCallEnabledStartNotification`.
|
|
|
|
|
- Added the method `joinGroupCall`.
|
|
|
|
|
- Added the method `leaveGroupCall`.
|
|
|
|
|
- Added the method `endGroupCall`.
|
|
|
|
|
- Added the method `toggleGroupCallIsMyVideoEnabled`.
|
|
|
|
|
- Added the method `toggleGroupCallIsMyVideoPaused`.
|
|
|
|
|
- Added the methods `startGroupCallScreenSharing`, `toggleGroupCallScreenSharingIsPaused`,
|
|
|
|
|
`endGroupCallScreenSharing` for managing screen sharing during group calls.
|
|
|
|
|
- Added the method `setGroupCallTitle`.
|
|
|
|
|
- Added the method `toggleGroupCallMuteNewParticipants`.
|
|
|
|
|
- Added the classes `groupCallVideoSourceGroup` and `groupCallParticipantVideoInfo`, describing available
|
|
|
|
|
video streams.
|
|
|
|
|
- Added the class `groupCallParticipant`.
|
|
|
|
|
- Added the update `updateGroupCallParticipant`.
|
|
|
|
|
- Added the method `loadGroupCallParticipants`.
|
|
|
|
|
- Added the method `toggleGroupCallParticipantIsHandRaised`.
|
|
|
|
|
- Added the method `setGroupCallParticipantIsSpeaking`.
|
|
|
|
|
- Added the methods `toggleGroupCallParticipantIsMuted` and `setGroupCallParticipantVolumeLevel` for managing
|
|
|
|
|
the volume level of group call participants.
|
|
|
|
|
- Added the method `inviteGroupCallParticipants`.
|
|
|
|
|
- Added the method `getGroupCallInviteLink` and `revokeGroupCallInviteLink` for managing group call invite links.
|
|
|
|
|
- Added the methods `startGroupCallRecording` and `endGroupCallRecording` for managing group call recordings.
|
|
|
|
|
- Added the method `getVideoChatAvailableParticipants`, returning the list of participants, on whose behalf
|
|
|
|
|
a video chat in the chat can be joined.
|
|
|
|
|
- Added the method `setVideoChatDefaultParticipant` for changing the default participant on whose behalf a video chat
|
|
|
|
|
will be joined.
|
|
|
|
|
- Added the class `GroupCallVideoQuality` and the method `getGroupCallStreamSegment` for downloading segments of
|
|
|
|
|
live streams.
|
|
|
|
|
- Added the class `groupCallRecentSpeaker`, representing a group call participant that was recently speaking.
|
|
|
|
|
- Added the field `video_chat_changes` to the class `chatEventLogFilters`.
|
|
|
|
|
- Added the class `chatEventVideoChatCreated`, representing a video chat being created in the chat event log.
|
|
|
|
|
- Added the class `chatEventVideoChatEnded`, representing a video chat being ended in the chat event log.
|
|
|
|
|
- Added the class `chatEventVideoChatMuteNewParticipantsToggled`, representing changes of
|
|
|
|
|
the setting `mute_new_participants` of a video chat in the chat event log.
|
|
|
|
|
- Added the class `chatEventVideoChatParticipantIsMutedToggled`, representing a video chat participant being muted or
|
|
|
|
|
unmuted in the chat event log.
|
|
|
|
|
- Added the class `chatEventVideoChatParticipantVolumeLevelChanged`, representing a video chat participant's
|
|
|
|
|
volume level being changed in the chat event log.
|
|
|
|
|
* Added "; pass null" documentation for all TDLib method parameters, for which null is an expected value.
|
|
|
|
|
* Added support for link processing:
|
|
|
|
|
- Added the method `getInternalLinkType`, which can parse internal links and return the exact link type and actions
|
|
|
|
|
to be done when the link is clicked.
|
|
|
|
|
- Added the classes `internalLinkTypeActiveSessions`, `internalLinkTypeAuthenticationCode`,
|
|
|
|
|
`internalLinkTypeBackground`, `internalLinkTypeBotStart`, `internalLinkTypeBotStartInGroup`,
|
|
|
|
|
`internalLinkTypeChangePhoneNumber`, `internalLinkTypeChatInvite`, `internalLinkTypeFilterSettings`,
|
|
|
|
|
`internalLinkTypeGame`, `internalLinkTypeLanguagePack`, `internalLinkTypeMessage`, `internalLinkTypeMessageDraft`,
|
|
|
|
|
`internalLinkTypePassportDataRequest`, `internalLinkTypePhoneNumberConfirmation`, `internalLinkTypeProxy`,
|
|
|
|
|
`internalLinkTypePublicChat`, `internalLinkTypeQrCodeAuthentication`, `internalLinkTypeSettings`,
|
|
|
|
|
`internalLinkTypeStickerSet`, `internalLinkTypeTheme`, `internalLinkTypeThemeSettings`,
|
|
|
|
|
`internalLinkTypeUnknownDeepLink`, `internalLinkTypeUnsupportedProxy`, and `internalLinkTypeVideoChat` to represent
|
|
|
|
|
different types of internal links.
|
|
|
|
|
- Added the method `getExternalLinkInfo`, which needs to be called if the clicked link wasn't recognized as
|
|
|
|
|
an internal link.
|
|
|
|
|
- Added the method `getExternalLink`, which needs to be called after the method `getExternalLinkInfo` if the user
|
|
|
|
|
confirms automatic authorization on the website.
|
|
|
|
|
* Added support for expiring chat invite links:
|
|
|
|
|
- Added the field `is_primary` to the class `chatInviteLink`. The primary invite link can't have a name,
|
|
|
|
|
expiration date, or usage limit. There is exactly one primary invite link for each administrator with
|
|
|
|
|
the can_invite_users right at any given time.
|
|
|
|
|
- Added the field `name` to the class `chatInviteLink`.
|
|
|
|
|
- Added the field `creator_user_id` to the class `chatInviteLink`.
|
|
|
|
|
- Added the field `date` to the class `chatInviteLink`, containing the link creation date.
|
|
|
|
|
- Added the field `edit_date` to the class `chatInviteLink`, containing the date the link was last edited.
|
|
|
|
|
- Added the fields `expiration_date` and `member_limit` to the class `chatInviteLink`, limiting link usage.
|
|
|
|
|
- Added the field `member_count` to the class `chatInviteLink`.
|
|
|
|
|
- Added the field `is_revoked` to the class `chatInviteLink`.
|
|
|
|
|
- Changed the type of the fields `invite_link` in the classes `basicGroupFullInfo` and `supergroupFullInfo` to
|
|
|
|
|
`chatInviteLink`.
|
|
|
|
|
- Added the field `description` to the class `chatInviteLinkInfo`, containing the description of the chat.
|
|
|
|
|
- Replaced the method `generateChatInviteLink` with the method `replacePrimaryChatInviteLink`.
|
|
|
|
|
- Added the method `createChatInviteLink` for creating new invite links.
|
|
|
|
|
- Added the method `editChatInviteLink` for editing non-primary invite links.
|
|
|
|
|
- Added the method `revokeChatInviteLink`.
|
|
|
|
|
- Added the method `deleteRevokedChatInviteLink`.
|
|
|
|
|
- Added the method `deleteAllRevokedChatInviteLink`.
|
|
|
|
|
- Added the method `getChatInviteLink`.
|
|
|
|
|
- Added the class `chatInviteLinks`, containing a list of chat invite links.
|
|
|
|
|
- Added the method `getChatInviteLinks`.
|
|
|
|
|
- Added the classes `chatInviteLinkCount` and `chatInviteLinkCounts`.
|
|
|
|
|
- Added the method `getChatInviteLinkCounts`, returning the number of invite links created by chat administrators.
|
|
|
|
|
- Added the classes `chatInviteLinkMember` and `chatInviteLinkMembers`.
|
|
|
|
|
- Added the method `getChatInviteLinkMembers`.
|
|
|
|
|
- Added the field `invite_link_changes` to the class `chatEventLogFilters`.
|
|
|
|
|
- Added the class `chatEventMemberJoinedByInviteLink`, representing a user joining the chat via invite link in
|
|
|
|
|
the chat event log.
|
|
|
|
|
- Added the class `chatEventInviteLinkEdited` to the types of chat event.
|
|
|
|
|
- Added the class `chatEventInviteLinkRevoked` to the types of chat event.
|
|
|
|
|
- Added the class `chatEventInviteLinkDeleted` to the types of chat event.
|
|
|
|
|
- Added the class `chatActionBarInviteMembers` to the types of chat action bar.
|
|
|
|
|
* Added support for chat invite links that create join requests:
|
|
|
|
|
- Added the class `messageChatJoinByRequest` to the types of message content.
|
|
|
|
|
- Added the class `pushMessageContentChatJoinByRequest` to the types of push message content.
|
|
|
|
|
- Added the field `pending_join_requests` to the class `chat`.
|
|
|
|
|
- Added the class `chatJoinRequestsInfo`, containing basic information about pending join requests for the chat.
|
|
|
|
|
- Added the update `updateChatPendingJoinRequests`.
|
|
|
|
|
- Added the fields `creates_join_request` to the classes `chatInviteLink` and `chatInviteLinkInfo`.
|
|
|
|
|
- Added the field `pending_join_request_count` to the class `chatInviteLink`.
|
|
|
|
|
- Added the class `chatJoinRequest`, describing a user that sent a join request.
|
|
|
|
|
- Added the class `chatJoinRequests`, containing a list of requests to join the chat.
|
|
|
|
|
- Added the method `getChatJoinRequests`.
|
|
|
|
|
- Added the method `processChatJoinRequest` for processing a request to join the chat.
|
|
|
|
|
- Added the method `processChatJoinRequests` for processing all requests to join the chat.
|
|
|
|
|
- Added the class `chatActionBarJoinRequest` to the types of chat action bar.
|
|
|
|
|
- Added the class `chatEventMemberJoinedByRequest`, representing a user approved to join the chat after
|
|
|
|
|
a join request in the chat event log.
|
|
|
|
|
- Added the update `updateNewChatJoinRequest` for bots.
|
|
|
|
|
* Added the ability to see viewers of outgoing messages in small group chats:
|
|
|
|
|
- Added the method `getMessageViewers`.
|
|
|
|
|
- Added the field `can_get_viewers` to the class `message`.
|
|
|
|
|
* Added the parameter `only_preview` to the method `forwardMessages`, which can be used to receive a preview of
|
|
|
|
|
forwarded messages.
|
|
|
|
|
* Added the method `getRecentlyOpenedChats`, returning the list of recently opened chats.
|
|
|
|
|
* Increased number of recently found chats that are stored to 50.
|
|
|
|
|
* Added the ability to get information about chat messages, which are split by days:
|
|
|
|
|
- Added the class `messageCalendarDay`, representing found messages, sent on a specific day.
|
|
|
|
|
- Added the class `messageCalendar`, representing found messages, split by days.
|
|
|
|
|
- Added the writable option "utc_time_offset", which contains a UTC time offset used for splitting messages by days.
|
|
|
|
|
The option is reset automatically on each TDLib instance launch, so it needs to be set manually only if
|
|
|
|
|
the time offset is changed during execution.
|
|
|
|
|
- Added the method `getChatMessageCalendar`, returning information about chat messages, which are split by days.
|
|
|
|
|
* Added the ability to get messages of the specified type in sparse positions for hyper-speed scrolling implementation:
|
|
|
|
|
- Added the class `messagePosition`, containing an identifier and send date of a message in
|
|
|
|
|
a specific chat history position.
|
|
|
|
|
- Added the class `messagePositions`, containing a list of message positions.
|
|
|
|
|
- Added the method `getChatSparseMessagePositions`.
|
|
|
|
|
* Added the field `can_manage_chat` to the class `chatMemberStatusAdministrator` to allow promoting chat administrators
|
|
|
|
|
without additional rights.
|
|
|
|
|
* Improved support for bot commands:
|
|
|
|
|
- Bot command entities in chats without bots are now automatically hidden.
|
|
|
|
|
- Added the class `botCommands`, representing a list of bot commands.
|
|
|
|
|
- Added the field `commands` to the class `userFullInfo`, containing the list of commands to be used in
|
|
|
|
|
the private chat with the bot.
|
|
|
|
|
- Added the fields `bot_commands` to the classes `basicGroupFullInfo` and `supergroupFullInfo`.
|
|
|
|
|
- Removed the class `botInfo`.
|
|
|
|
|
- Removed the fields `bot_info` from the classes `userFullInfo` and `chatMember`.
|
|
|
|
|
- Added the class `BotCommandScope`.
|
|
|
|
|
- Added the methods `setCommands`, `deleteCommands`, `getCommands` for bots.
|
|
|
|
|
* Added the read-only options "suggested_video_note_length", "suggested_video_note_video_bitrate", and
|
|
|
|
|
"suggested_video_note_audio_bitrate", containing suggested video note encoding parameters.
|
|
|
|
|
* Added the read-only option "channel_bot_user_id", containing the identifier of the bot which is shown in
|
|
|
|
|
outdated clients as the sender of messages sent on behalf of channels.
|
|
|
|
|
* Added the ability to fetch the actual value of the option "is_location_visible" using the method `getOption` in case
|
|
|
|
|
the value of the option was changed from another device.
|
|
|
|
|
* Added the field `minithumbnail` to the class `profilePhoto`, representing a profile photo minithumbnail.
|
|
|
|
|
* Added the field `minithumbnail` to the class `chatPhotoInfo`, representing a chat photo minithumbnail.
|
|
|
|
|
* Added support for sticker outlines:
|
|
|
|
|
- Added the field `outline` to the class `sticker`.
|
|
|
|
|
- Added the fields `thumbnail_outline` to the classes `stickerSet` and `stickerSetInfo`.
|
|
|
|
|
- Added the class `closedVectorPath`, representing a closed vector path.
|
|
|
|
|
- Added the class `VectorPathCommand`, representing one edge of a closed vector path.
|
|
|
|
|
- Added the class `point`, representing a point on a Cartesian plane.
|
|
|
|
|
* Added support for chats and messages with protected content:
|
|
|
|
|
- Added the field `has_protected_content` to the class `chat`.
|
|
|
|
|
- Added the update `updateChatHasProtectedContent`.
|
|
|
|
|
- Added the method `toggleChatHasProtectedContent`.
|
|
|
|
|
- Added the class `chatEventHasProtectedContentToggled`, representing a change of the setting `has_protected_content`
|
|
|
|
|
in the chat event log.
|
|
|
|
|
- Added the field `can_be_saved` to the class `message`.
|
|
|
|
|
* Added support for broadcast groups, i.e. supergroups without a limit on the number of members in which
|
|
|
|
|
only administrators can send messages:
|
|
|
|
|
- Added the field `is_broadcast_group` to the class `supergroup`.
|
|
|
|
|
- Added the method `toggleSupergroupIsBroadcastGroup`. Conversion of a supergroup to a broadcast group
|
|
|
|
|
can't be undone.
|
|
|
|
|
- Added the class `suggestedActionConvertToBroadcastGroup`, representing a suggestion to convert a supergroup to
|
|
|
|
|
a broadcast group.
|
|
|
|
|
* Improved chat reports:
|
|
|
|
|
- Added the parameter `text` to the method `reportChat`, allowing to add additional details to all
|
|
|
|
|
chat reporting reasons.
|
|
|
|
|
- Removed the field `text` from the class `chatReportReasonCustom`.
|
|
|
|
|
- Added the method `reportChatPhoto` for reporting chat photos.
|
|
|
|
|
* Added support for users and chats reported as fake:
|
|
|
|
|
- Added the field `is_fake` to the class `user`.
|
|
|
|
|
- Added the field `is_fake` to the class `supergroup`.
|
|
|
|
|
- Added the class `chatReportReasonFake` to the types of chat reporting reasons.
|
|
|
|
|
* Added the class `inlineKeyboardButtonTypeUser` to the types of inline keyboard buttons.
|
|
|
|
|
* Added the field `input_field_placeholder` to the classes `replyMarkupForceReply` and `replyMarkupShowKeyboard`.
|
|
|
|
|
* Added support for media timestamp entities in messages:
|
|
|
|
|
- Added the class `textEntityTypeMediaTimestamp` to the types of text entities.
|
|
|
|
|
- Added the field `has_timestamped_media` to the class `message`, describing whether media timestamp entities refer
|
|
|
|
|
to the message itself or to the replied message.
|
|
|
|
|
- Added the parameter `media_timestamp` to the method `getMessageLink` to support creating message links with
|
|
|
|
|
a given media timestamp.
|
|
|
|
|
- Added the field `can_get_media_timestamp_links` to the class `message`.
|
|
|
|
|
- Added the field `media_timestamp` to the class `messageLinkInfo` for handling of message links with
|
|
|
|
|
a specified media timestamp.
|
|
|
|
|
* Added the ability to change properties of active sessions:
|
|
|
|
|
- Added the field `can_accept_secret_chats` to the class `session`.
|
|
|
|
|
- Added the method `toggleSessionCanAcceptSecretChats`.
|
|
|
|
|
- Added the field `can_accept_calls` to the class `session`.
|
|
|
|
|
- Added the method `toggleSessionCanAcceptCalls`.
|
|
|
|
|
- Added the field `inactive_session_ttl_days` to the class `sessions`.
|
|
|
|
|
- Added the method `setInactiveSessionTtl`.
|
|
|
|
|
* Added new ways for phone number verification:
|
|
|
|
|
- Added the class `authenticationCodeTypeMissedCall`, describing an authentication code delivered by
|
|
|
|
|
a canceled phone call to the given number. The last digits of the phone number that calls are the code that
|
|
|
|
|
must be entered manually by the user.
|
|
|
|
|
- Added the field `allow_missed_call` to the class `phoneNumberAuthenticationSettings`.
|
|
|
|
|
- Added the read-only option "authentication_token", which can be received when logging out and contains
|
|
|
|
|
an authentication token to be used on subsequent authorizations.
|
|
|
|
|
- Added the field `authentication_tokens` to the class `phoneNumberAuthenticationSettings`.
|
|
|
|
|
* Added support for resetting the password from an active session:
|
|
|
|
|
- Added the class `ResetPasswordResult` and the method `resetPassword`.
|
|
|
|
|
- Added the method `cancelPasswordReset`, which can be used to cancel a pending password reset.
|
|
|
|
|
- Added the field `pending_reset_date` to the class `passwordState`.
|
|
|
|
|
* Added the ability to set a new 2-step verification password after recovering a lost password using
|
|
|
|
|
a recovery email address:
|
|
|
|
|
- Added the parameters `new_password` and `new_hint` to the methods `recoverAuthenticationPassword` and
|
|
|
|
|
`recoverPassword`.
|
|
|
|
|
- Added the method `checkAuthenticationPasswordRecoveryCode`.
|
|
|
|
|
- Added the method `checkPasswordRecoveryCode`.
|
|
|
|
|
* Added the class `chatActionChoosingSticker` to the types of chat action.
|
|
|
|
|
* Added the class `backgroundFillFreeformGradient` to the types of background fill.
|
|
|
|
|
* Added the field `is_inverted` to the class `backgroundTypePattern` for inverted patterns for dark themes.
|
|
|
|
|
* Added support for chat themes:
|
|
|
|
|
- Added the field `theme_name` to the class `chat`.
|
|
|
|
|
- Added the method `setChatTheme`.
|
|
|
|
|
- Added the update `updateChatTheme`, received when a theme was changed in a chat.
|
|
|
|
|
- Added the class `messageChatSetTheme` to the types of message content.
|
|
|
|
|
- Added the class `pushMessageContentChatSetTheme` to the types of push message content.
|
|
|
|
|
- Added the class `themeSettings`, representing basic theme settings.
|
|
|
|
|
- Added the class `chatTheme`, representing a chat theme.
|
|
|
|
|
- Added the update `updateChatThemes`, received when the list of available chat themes changes.
|
|
|
|
|
* Added the ability for regular users to create sticker sets:
|
|
|
|
|
- Allowed to use the methods `uploadStickerFile` and `createNewStickerSet` as regular users.
|
|
|
|
|
- Replaced the parameter `png_sticker` in the method `uploadStickerFile` with the parameter `sticker` of
|
|
|
|
|
the type `InputSticker`.
|
|
|
|
|
- Added the parameter `source` to the method `createNewStickerSet`.
|
|
|
|
|
- Added the method `getSuggestedStickerSetName`.
|
|
|
|
|
- Added the class `CheckStickerSetNameResult` and the method `checkStickerSetName` for checking a sticker set name
|
|
|
|
|
before creating a sticker set.
|
|
|
|
|
* Added support for importing chat history from an external source:
|
|
|
|
|
- Added the method `importMessages`.
|
|
|
|
|
- Added the method `getMessageImportConfirmationText`.
|
|
|
|
|
- Added the class `MessageFileType` and the method `getMessageFileType`, which can be used to check whether
|
|
|
|
|
the format of a file with exported message history is supported.
|
|
|
|
|
- Added the class `messageForwardOriginMessageImport` to the types of forwarded message origins for
|
|
|
|
|
imported messages.
|
|
|
|
|
- Added the parameter `for_import` to the method `createNewSupergroupChat`, which needs to be set to true whenever
|
|
|
|
|
the chat is created for a subsequent message history import.
|
|
|
|
|
* Added new types of suggested actions:
|
|
|
|
|
- Added the class `suggestedActionSetPassword`, suggesting the user to set a 2-step verification password to be able
|
|
|
|
|
to log in again before the specified number of days pass.
|
|
|
|
|
- Added the class `suggestedActionCheckPassword`, suggesting the user to check whether they still remember
|
|
|
|
|
their 2-step verification password.
|
|
|
|
|
- Added the class `suggestedActionViewChecksHint`, suggesting the user to see a hint about the meaning of
|
|
|
|
|
one and two check marks on sent messages.
|
|
|
|
|
* Added the method `getSuggestedFileName`, which returns a suggested name for saving a file in a given directory.
|
|
|
|
|
* Added the method `deleteAllCallMessages`.
|
|
|
|
|
* Added the method `deleteChatMessagesByDate`, which can be used to delete all messages between the specified dates in
|
|
|
|
|
a chat.
|
|
|
|
|
* Added the field `unread_message_count` to the class `messageThreadInfo`.
|
|
|
|
|
* Added the field `has_private_forwards` to the class `userFullInfo`.
|
|
|
|
|
* Added the field `description` to the class `userFullInfo`, containing description of the bot.
|
|
|
|
|
* Added the field `emoji` to the class `inputMessageSticker`, allowing to specify the emoji that was used to choose
|
|
|
|
|
the sent sticker.
|
|
|
|
|
* Added the method `banChatMember` that can be used to ban chat members instead of the method `setChatMemberStatus` and
|
|
|
|
|
allows to revoke messages from the banned user in basic groups.
|
|
|
|
|
* Allowed to use the method `setChatMemberStatus` for adding chat members.
|
|
|
|
|
* Removed the parameter `user_id` from the method `reportSupergroupSpam`. Messages from different senders can now
|
|
|
|
|
be reported simultaneously.
|
|
|
|
|
* Added the field `feedback_link` to the class `webPageInstantView`.
|
|
|
|
|
* Added the method `getApplicationDownloadLink`, returning the link for downloading official Telegram applications.
|
|
|
|
|
* Removed unusable search message filters `searchMessagesFilterCall` and `searchMessagesFilterMissedCall`.
|
|
|
|
|
* Removed the method `getChatStatisticsUrl`.
|
|
|
|
|
* Removed the method `getInviteText` in favor of the method `getApplicationDownloadLink`.
|
|
|
|
|
* Added the field `chat_type` to the update `updateNewInlineQuery` for bots.
|
|
|
|
|
* Added the update `updateChatMember` for bots.
|
|
|
|
|
* Improved the appearance of the [TDLib build instructions generator](https://tdlib.github.io/td/build.html).
|
|
|
|
|
* Added support for the illumos operating system.
|
|
|
|
|
* Added support for network access on real watchOS devices.
|
|
|
|
|
* Added support for OpenSSL 3.0.
|
|
|
|
|
* Improved the iOS/watchOS/tvOS build example to generate a universal XCFramework.
|
|
|
|
|
* Added support for ARM64 simulators in the iOS/watchOS/tvOS build example.
|
|
|
|
|
* Added the option `-release_only` to the build script for Universal Windows Platform, allowing to build
|
|
|
|
|
TDLib SDK for Universal Windows Platform in release-only mode.
|
|
|
|
|
* Rewritten the native .NET binding using the new `ClientManager` interface:
|
|
|
|
|
- Replaced the method `Client.send` with a static method that must be called exactly once in a dedicated thread.
|
|
|
|
|
The callbacks `ClientResultHandler` will be called in this thread for all clients.
|
|
|
|
|
- Removed the function `Client.Dispose()` from the C++/CLI native binding. The objects of the type `Client`
|
|
|
|
|
don't need to be explicitly disposed anymore.
|
|
|
|
|
* Rewritten the C binding using the new `ClientManager` interface:
|
|
|
|
|
- Renamed the fields `id` in the structs `TdRequest` and `TdResponse` to `request_id`.
|
|
|
|
|
- Added the field `client_id` to the struct `TdResponse`.
|
|
|
|
|
- Replaced the method `TdCClientCreate` with the method `TdCClientCreateId`.
|
|
|
|
|
- Replaced the parameter `instance` with the parameter `client_id` in the function `TdCClientSend`.
|
|
|
|
|
- Added the methods `TdCClientReceive` and `TdCClientExecute`.
|
|
|
|
|
- Removed the methods `TdCClientSendCommandSync`, `TdCClientDestroy`, and `TdCClientSetVerbosity`.
|
|
|
|
|
|
|
|
|
|
-----------------------------------------------------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
Changes in 1.7.0 (28 Nov 2020):
|
|
|
|
|
|
|
|
|
|
* Added a new simplified JSON interface in which updates and responses to requests from all TDLib instances
|
|
|
|
|