diff --git a/data/web/corefork.telegram.org/api/action-bar.html b/data/web/corefork.telegram.org/api/action-bar.html index 603a04d0e5..143254cdf7 100644 --- a/data/web/corefork.telegram.org/api/action-bar.html +++ b/data/web/corefork.telegram.org/api/action-bar.html @@ -48,7 +48,7 @@

Schema:

peerSettings#a518110d flags:# report_spam:flags.0?true add_contact:flags.1?true block_contact:flags.2?true share_contact:flags.3?true need_contacts_exception:flags.4?true report_geo:flags.5?true autoarchived:flags.7?true invite_members:flags.8?true request_chat_broadcast:flags.10?true geo_distance:flags.6?int request_chat_title:flags.9?string request_chat_date:flags.9?int = PeerSettings;
 
-userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull;
+userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true wallpaper_overridden:flags.28?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull;
 
 updatePeerSettings#6a7e7366 peer:Peer settings:PeerSettings = Update;
 
diff --git a/data/web/corefork.telegram.org/api/bots/commands.html b/data/web/corefork.telegram.org/api/bots/commands.html
index 9cbd0dd1b0..7cc5b68a02 100644
--- a/data/web/corefork.telegram.org/api/bots/commands.html
+++ b/data/web/corefork.telegram.org/api/bots/commands.html
@@ -52,9 +52,9 @@
 botInfo#8f300b57 flags:# user_id:flags.0?long description:flags.1?string description_photo:flags.4?Photo description_document:flags.5?Document commands:flags.2?Vector<BotCommand> menu_button:flags.3?BotMenuButton = BotInfo;
 
 channelFull#723027bd flags:# can_view_participants:flags.3?true can_set_username:flags.6?true can_set_stickers:flags.7?true hidden_prehistory:flags.10?true can_set_location:flags.16?true has_scheduled:flags.19?true can_view_stats:flags.20?true blocked:flags.22?true flags2:# can_delete_channel:flags2.0?true antispam:flags2.1?true participants_hidden:flags2.2?true translations_disabled:flags2.3?true stories_pinned_available:flags2.5?true view_forum_as_messages:flags2.6?true id:long about:string participants_count:flags.0?int admins_count:flags.1?int kicked_count:flags.2?int banned_count:flags.2?int online_count:flags.13?int read_inbox_max_id:int read_outbox_max_id:int unread_count:int chat_photo:Photo notify_settings:PeerNotifySettings exported_invite:flags.23?ExportedChatInvite bot_info:Vector<BotInfo> migrated_from_chat_id:flags.4?long migrated_from_max_id:flags.4?int pinned_msg_id:flags.5?int stickerset:flags.8?StickerSet available_min_id:flags.9?int folder_id:flags.11?int linked_chat_id:flags.14?long location:flags.15?ChannelLocation slowmode_seconds:flags.17?int slowmode_next_send_date:flags.18?int stats_dc:flags.12?int pts:int call:flags.21?InputGroupCall ttl_period:flags.24?int pending_suggestions:flags.25?Vector<string> groupcall_default_join_as:flags.26?Peer theme_emoticon:flags.27?string requests_pending:flags.28?int recent_requesters:flags.28?Vector<long> default_send_as:flags.29?Peer available_reactions:flags.30?ChatReactions stories:flags2.4?PeerStories = ChatFull;
-userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull;
+userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true wallpaper_overridden:flags.28?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull;
 
-user#abb5f120 flags:# self:flags.10?true contact:flags.11?true mutual_contact:flags.12?true deleted:flags.13?true bot:flags.14?true bot_chat_history:flags.15?true bot_nochats:flags.16?true verified:flags.17?true restricted:flags.18?true min:flags.20?true bot_inline_geo:flags.21?true support:flags.23?true scam:flags.24?true apply_min_photo:flags.25?true fake:flags.26?true bot_attach_menu:flags.27?true premium:flags.28?true attach_menu_enabled:flags.29?true flags2:# bot_can_edit:flags2.1?true close_friend:flags2.2?true stories_hidden:flags2.3?true stories_unavailable:flags2.4?true id:long access_hash:flags.0?long first_name:flags.1?string last_name:flags.2?string username:flags.3?string phone:flags.4?string photo:flags.5?UserProfilePhoto status:flags.6?UserStatus bot_info_version:flags.14?int restriction_reason:flags.18?Vector<RestrictionReason> bot_inline_placeholder:flags.19?string lang_code:flags.22?string emoji_status:flags.30?EmojiStatus usernames:flags2.0?Vector<Username> stories_max_id:flags2.5?int = User;
+user#215c4438 flags:# self:flags.10?true contact:flags.11?true mutual_contact:flags.12?true deleted:flags.13?true bot:flags.14?true bot_chat_history:flags.15?true bot_nochats:flags.16?true verified:flags.17?true restricted:flags.18?true min:flags.20?true bot_inline_geo:flags.21?true support:flags.23?true scam:flags.24?true apply_min_photo:flags.25?true fake:flags.26?true bot_attach_menu:flags.27?true premium:flags.28?true attach_menu_enabled:flags.29?true flags2:# bot_can_edit:flags2.1?true close_friend:flags2.2?true stories_hidden:flags2.3?true stories_unavailable:flags2.4?true id:long access_hash:flags.0?long first_name:flags.1?string last_name:flags.2?string username:flags.3?string phone:flags.4?string photo:flags.5?UserProfilePhoto status:flags.6?UserStatus bot_info_version:flags.14?int restriction_reason:flags.18?Vector<RestrictionReason> bot_inline_placeholder:flags.19?string lang_code:flags.22?string emoji_status:flags.30?EmojiStatus usernames:flags2.0?Vector<Username> stories_max_id:flags2.5?int color:flags2.8?PeerColor profile_color:flags2.9?PeerColor = User;

The botInfo constructors contained in the userFull, chatFull, channelFull contain a list of commands, and for groups, the ID and a description of each bot.

In graphical clients, when users begin a message with a /, a list of commands supported by all bots present in the current chat should be shown; the same should be done for one-to-one chats with the bot itself.

If the command list of a bot changes, the bot_info_version contained in the user constructor received in updates will change; this indicates that the client should refetch full bot information using users.getFullUser.

diff --git a/data/web/corefork.telegram.org/api/bots/games.html b/data/web/corefork.telegram.org/api/bots/games.html index 1afb8182ff..f625076994 100644 --- a/data/web/corefork.telegram.org/api/bots/games.html +++ b/data/web/corefork.telegram.org/api/bots/games.html @@ -58,7 +58,7 @@ ---functions--- -messages.sendMedia#72ccc23d flags:# silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true peer:InputPeer reply_to:flags.0?InputReplyTo media:InputMedia message:string random_id:long reply_markup:flags.2?ReplyMarkup entities:flags.3?Vector<MessageEntity> schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates; +messages.sendMedia#72ccc23d flags:# silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true invert_media:flags.16?true peer:InputPeer reply_to:flags.0?InputReplyTo media:InputMedia message:string random_id:long reply_markup:flags.2?ReplyMarkup entities:flags.3?Vector<MessageEntity> schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates;

Bots can directly send a game using messages.sendMedia, providing:

Schema

-
userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull;
+
dialog#d58a08c6 flags:# pinned:flags.2?true unread_mark:flags.3?true view_forum_as_messages:flags.6?true peer:Peer top_message:int read_inbox_max_id:int read_outbox_max_id:int unread_count:int unread_mentions_count:int unread_reactions_count:int notify_settings:PeerNotifySettings pts:flags.0?int draft:flags.1?DraftMessage folder_id:flags.4?int ttl_period:flags.5?int = Dialog;
+inputPeerNotifySettings#cacb6ae2 flags:# show_previews:flags.0?Bool silent:flags.1?Bool mute_until:flags.2?int sound:flags.3?NotificationSound stories_muted:flags.6?Bool stories_hide_sender:flags.7?Bool stories_sound:flags.8?NotificationSound = InputPeerNotifySettings;
+peerNotifySettings#99622c0c flags:# show_previews:flags.0?Bool silent:flags.1?Bool mute_until:flags.2?int ios_sound:flags.3?NotificationSound android_sound:flags.4?NotificationSound other_sound:flags.5?NotificationSound stories_muted:flags.6?Bool stories_hide_sender:flags.7?Bool stories_ios_sound:flags.8?NotificationSound stories_android_sound:flags.9?NotificationSound stories_other_sound:flags.10?NotificationSound = PeerNotifySettings;
+userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull; updateNewAuthorization#8951abef flags:# unconfirmed:flags.0?true hash:long date:flags.0?int device:flags.0?string location:flags.0?string = Update;
+messageMediaDocument#4cf4d72d flags:# nopremium:flags.3?true spoiler:flags.4?true document:flags.0?Document alt_document:flags.5?Document ttl_seconds:flags.2?int = MessageMedia;
+documentAttributeVideo#d38ff1c2 flags:# round_message:flags.0?true supports_streaming:flags.1?true nosound:flags.3?true duration:double w:int h:int preload_prefix_size:flags.2?int = DocumentAttribute;
authorization#ad01d61d flags:# current:flags.0?true official_app:flags.1?true password_pending:flags.2?true encrypted_requests_disabled:flags.3?true call_requests_disabled:flags.4?true unconfirmed:flags.5?true hash:long device_model:string platform:string system_version:string api_id:int app_name:string app_version:string date_created:int date_active:int ip:string country:string region:string = Authorization;
-updateReadMessagesContents#f8227181 flags:# messages:Vector<int> pts:int pts_count:int date:flags.0?int = Update;
+updateReadMessagesContents#f8227181 flags:# messages:Vector<int> pts:int pts_count:int date:flags.0?int = Update; +user#abb5f120 flags:# self:flags.10?true contact:flags.11?true mutual_contact:flags.12?true deleted:flags.13?true bot:flags.14?true bot_chat_history:flags.15?true bot_nochats:flags.16?true verified:flags.17?true restricted:flags.18?true min:flags.20?true bot_inline_geo:flags.21?true support:flags.23?true scam:flags.24?true apply_min_photo:flags.25?true fake:flags.26?true bot_attach_menu:flags.27?true premium:flags.28?true attach_menu_enabled:flags.29?true flags2:# bot_can_edit:flags2.1?true close_friend:flags2.2?true stories_hidden:flags2.3?true stories_unavailable:flags2.4?true id:long access_hash:flags.0?long first_name:flags.1?string last_name:flags.2?string username:flags.3?string phone:flags.4?string photo:flags.5?UserProfilePhoto status:flags.6?UserStatus bot_info_version:flags.14?int restriction_reason:flags.18?Vector<RestrictionReason> bot_inline_placeholder:flags.19?string lang_code:flags.22?string emoji_status:flags.30?EmojiStatus usernames:flags2.0?Vector<Username> stories_max_id:flags2.5?int = User;
channel#94f592db flags:# creator:flags.0?true left:flags.2?true broadcast:flags.5?true verified:flags.7?true megagroup:flags.8?true restricted:flags.9?true signatures:flags.11?true min:flags.12?true scam:flags.19?true has_link:flags.20?true has_geo:flags.21?true slowmode_enabled:flags.22?true call_active:flags.23?true call_not_empty:flags.24?true fake:flags.25?true gigagroup:flags.26?true noforwards:flags.27?true join_to_send:flags.28?true join_request:flags.29?true forum:flags.30?true flags2:# stories_hidden:flags2.1?true stories_hidden_min:flags2.2?true stories_unavailable:flags2.3?true id:long access_hash:flags.13?long title:string username:flags.6?string photo:ChatPhoto date:int restriction_reason:flags.9?Vector<RestrictionReason> admin_rights:flags.14?ChatAdminRights banned_rights:flags.15?ChatBannedRights default_banned_rights:flags.18?ChatBannedRights participants_count:flags.17?int usernames:flags2.0?Vector<Username> stories_max_id:flags2.4?int = Chat; channelFull#723027bd flags:# can_view_participants:flags.3?true can_set_username:flags.6?true can_set_stickers:flags.7?true hidden_prehistory:flags.10?true can_set_location:flags.16?true has_scheduled:flags.19?true can_view_stats:flags.20?true blocked:flags.22?true flags2:# can_delete_channel:flags2.0?true antispam:flags2.1?true participants_hidden:flags2.2?true translations_disabled:flags2.3?true stories_pinned_available:flags2.5?true view_forum_as_messages:flags2.6?true id:long about:string participants_count:flags.0?int admins_count:flags.1?int kicked_count:flags.2?int banned_count:flags.2?int online_count:flags.13?int read_inbox_max_id:int read_outbox_max_id:int unread_count:int chat_photo:Photo notify_settings:PeerNotifySettings exported_invite:flags.23?ExportedChatInvite bot_info:Vector<BotInfo> migrated_from_chat_id:flags.4?long migrated_from_max_id:flags.4?int pinned_msg_id:flags.5?int stickerset:flags.8?StickerSet available_min_id:flags.9?int folder_id:flags.11?int linked_chat_id:flags.14?long location:flags.15?ChannelLocation slowmode_seconds:flags.17?int slowmode_next_send_date:flags.18?int stats_dc:flags.12?int pts:int call:flags.21?InputGroupCall ttl_period:flags.24?int pending_suggestions:flags.25?Vector<string> groupcall_default_join_as:flags.26?Peer theme_emoticon:flags.27?string requests_pending:flags.28?int recent_requesters:flags.28?Vector<long> default_send_as:flags.29?Peer available_reactions:flags.30?ChatReactions stories:flags2.4?PeerStories = ChatFull;
invoice#5db95a15 flags:# test:flags.0?true name_requested:flags.1?true phone_requested:flags.2?true email_requested:flags.3?true shipping_address_requested:flags.4?true flexible:flags.5?true phone_to_provider:flags.6?true email_to_provider:flags.7?true recurring:flags.9?true currency:string prices:Vector<LabeledPrice> max_tip_amount:flags.8?long suggested_tip_amounts:flags.8?Vector<long> terms_url:flags.10?string = Invoice;
messageActionBotAllowed#c516d679 flags:# attach_menu:flags.1?true from_request:flags.3?true domain:flags.0?string app:flags.2?BotApp = MessageAction;
chatAdminRights#5fb224d5 flags:# change_info:flags.0?true post_messages:flags.1?true edit_messages:flags.2?true delete_messages:flags.3?true ban_users:flags.4?true invite_users:flags.5?true pin_messages:flags.7?true add_admins:flags.9?true anonymous:flags.10?true manage_call:flags.11?true other:flags.12?true manage_topics:flags.13?true post_stories:flags.14?true edit_stories:flags.15?true delete_stories:flags.16?true = ChatAdminRights;
+autoDownloadSettings#baa57628 flags:# disabled:flags.0?true video_preload_large:flags.1?true audio_preload_next:flags.2?true phonecalls_less_data:flags.3?true stories_preload:flags.4?true photo_size_max:int video_size_max:long file_size_max:long video_upload_maxbitrate:int small_queue_active_operations_max:int large_queue_active_operations_max:int = AutoDownloadSettings;
+globalPrivacySettings#734c4ccb flags:# archive_and_mute_new_noncontact_peers:flags.0?true keep_archived_unmuted:flags.1?true keep_archived_folders:flags.2?true = GlobalPrivacySettings;
updatePeerBlocked#ebe07752 flags:# blocked:flags.0?true blocked_my_stories_from:flags.1?true peer_id:Peer = Update;
attachMenuBot#d90d8dfe flags:# inactive:flags.0?true has_settings:flags.1?true request_write_access:flags.2?true show_in_attach_menu:flags.3?true show_in_side_menu:flags.4?true side_menu_disclaimer_needed:flags.5?true bot_id:long short_name:string peer_types:flags.3?Vector<AttachMenuPeerType> icons:Vector<AttachMenuBotIcon> = AttachMenuBot;
messages.botApp#eb50adf5 flags:# inactive:flags.0?true request_write_access:flags.1?true has_settings:flags.2?true app:BotApp = messages.BotApp;
storyViews#8d595cd6 flags:# has_viewers:flags.1?true views_count:int forwards_count:flags.2?int reactions:flags.3?Vector<ReactionCount> reactions_count:flags.4?int recent_viewers:flags.0?Vector<long> = StoryViews; +storyItemDeleted#51e6ee4f id:int = StoryItem; +storyItemSkipped#ffadc913 flags:# close_friends:flags.8?true id:int date:int expire_date:int = StoryItem; storyItem#44c457ce flags:# pinned:flags.5?true public:flags.7?true close_friends:flags.8?true min:flags.9?true noforwards:flags.10?true edited:flags.11?true contacts:flags.12?true selected_contacts:flags.13?true out:flags.16?true id:int date:int expire_date:int caption:flags.0?string entities:flags.1?Vector<MessageEntity> media:MessageMedia media_areas:flags.14?Vector<MediaArea> privacy:flags.2?Vector<PrivacyRule> views:flags.3?StoryViews sent_reaction:flags.15?Reaction = StoryItem;
updateStory#75b3b798 peer:Peer story:StoryItem = Update; updateReadStories#f74e932b peer:Peer max_id:int = Update;
stories.allStoriesNotModified#1158fe3e flags:# state:string stealth_mode:StoriesStealthMode = stories.AllStories; stories.allStories#6efc5e81 flags:# has_more:flags.0?true count:int state:string peer_stories:Vector<PeerStories> chats:Vector<Chat> users:Vector<User> stealth_mode:StoriesStealthMode = stories.AllStories; -stories.stories#5dd8c3c8 count:int stories:Vector<StoryItem> chats:Vector<Chat> users:Vector<User> = stories.Stories; +stories.stories#5dd8c3c8 count:int stories:Vector<StoryItem> chats:Vector<Chat> users:Vector<User> = stories.Stories;
+inputPrivacyValueAllowCloseFriends#2f453e49 = InputPrivacyRule;
+privacyValueAllowCloseFriends#f7e8d89b = PrivacyRule;
storyView#b0bdeac5 flags:# blocked:flags.0?true blocked_my_stories_from:flags.1?true user_id:long date:int reaction:flags.2?Reaction = StoryView; -stories.storyViewsList#46e9b9ec flags:# count:int reactions_count:int views:Vector<StoryView> users:Vector<User> next_offset:flags.0?string = stories.StoryViewsList;
+stories.storyViewsList#46e9b9ec flags:# count:int reactions_count:int views:Vector<StoryView> users:Vector<User> next_offset:flags.0?string = stories.StoryViewsList; +stories.storyViews#de9eed1d views:Vector<StoryViews> users:Vector<User> = stories.StoryViews;
+inputReplyToMessage#9c5386e4 flags:# reply_to_msg_id:int top_msg_id:flags.0?int = InputReplyTo; +inputReplyToStory#15b0f283 user_id:InputUser story_id:int = InputReplyTo;
+messageReplyStoryHeader#9c98bfc1 user_id:long story_id:int = MessageReplyHeader;
+updateStoryID#1bf335b9 id:int random_id:long = Update;
+exportedStoryLink#3fc9053b link:string = ExportedStoryLink;
inputMediaStory#89fdd778 peer:InputPeer id:int = InputMedia;
messageMediaStory#68cb6283 flags:# via_mention:flags.1?true peer:Peer id:int story:flags.0?StoryItem = MessageMedia;
webPageAttributeStory#2e94c3e7 flags:# peer:Peer id:int story:flags.0?StoryItem = WebPageAttribute;
@@ -518,16 +557,27 @@ contacts.block#2e2e8734 flags:# my_stories_from:flags.0?true id:InputPeer = Bool; contacts.unblock#b550d328 flags:# my_stories_from:flags.0?true id:InputPeer = Bool; contacts.getBlocked#9a868f80 flags:# my_stories_from:flags.0?true offset:int limit:int = contacts.Blocked;
+messages.sendMessage#280d096f flags:# no_webpage:flags.1?true silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true peer:InputPeer reply_to:flags.0?InputReplyTo message:string random_id:long reply_markup:flags.2?ReplyMarkup entities:flags.3?Vector<MessageEntity> schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates; +messages.sendMedia#72ccc23d flags:# silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true peer:InputPeer reply_to:flags.0?InputReplyTo media:InputMedia message:string random_id:long reply_markup:flags.2?ReplyMarkup entities:flags.3?Vector<MessageEntity> schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates; +messages.sendInlineBotResult#f7bc68ba flags:# silent:flags.5?true background:flags.6?true clear_draft:flags.7?true hide_via:flags.11?true peer:InputPeer reply_to:flags.0?InputReplyTo random_id:long query_id:long id:string schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates; +messages.sendScreenshotNotification#a1405817 peer:InputPeer reply_to:InputReplyTo random_id:long = Updates; +messages.sendMultiMedia#456e8987 flags:# silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true peer:InputPeer reply_to:flags.0?InputReplyTo multi_media:Vector<InputSingleMedia> schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates;
+account.getNotifyExceptions#53577479 flags:# compare_sound:flags.1?true compare_stories:flags.2?true peer:flags.0?InputNotifyPeer = Updates; account.changeAuthorizationSettings#40f48462 flags:# confirmed:flags.3?true hash:long encrypted_requests_disabled:flags.0?Bool call_requests_disabled:flags.1?Bool = Bool;
+messages.requestWebView#269dc2c1 flags:# from_bot_menu:flags.4?true silent:flags.5?true peer:InputPeer bot:InputUser url:flags.1?string start_param:flags.3?string theme_params:flags.2?DataJSON platform:string reply_to:flags.0?InputReplyTo send_as:flags.13?InputPeer = WebViewResult; +messages.prolongWebView#b0d81a83 flags:# silent:flags.5?true peer:InputPeer bot:InputUser query_id:long reply_to:flags.0?InputReplyTo send_as:flags.13?InputPeer = Bool; messages.requestSimpleWebView#1a46500a flags:# from_switch_webview:flags.1?true from_side_menu:flags.2?true bot:InputUser url:flags.3?string start_param:flags.4?string theme_params:flags.0?DataJSON platform:string = SimpleWebViewResult;
+contacts.editCloseFriends#ba6705f0 id:Vector<long> = Bool;
stories.canSendStory#c7dfdfdd peer:InputPeer = Bool; stories.sendStory#bcb73644 flags:# pinned:flags.2?true noforwards:flags.4?true peer:InputPeer media:InputMedia media_areas:flags.5?Vector<MediaArea> caption:flags.0?string entities:flags.1?Vector<MessageEntity> privacy_rules:Vector<InputPrivacyRule> random_id:long period:flags.3?int = Updates; stories.editStory#b583ba46 flags:# peer:InputPeer id:int media:flags.0?InputMedia media_areas:flags.3?Vector<MediaArea> caption:flags.1?string entities:flags.1?Vector<MessageEntity> privacy_rules:flags.2?Vector<InputPrivacyRule> = Updates; stories.deleteStories#ae59db5f peer:InputPeer id:Vector<int> = Vector<int>; stories.togglePinned#9a75a1ef peer:InputPeer id:Vector<int> pinned:Bool = Vector<int>; +stories.getAllStories#eeb0d625 flags:# next:flags.1?true hidden:flags.2?true state:flags.0?string = stories.AllStories; stories.getPinnedStories#5821a5dc peer:InputPeer offset_id:int limit:int = stories.Stories; stories.getStoriesArchive#b4352016 peer:InputPeer offset_id:int limit:int = stories.Stories; stories.getStoriesByID#5774ca74 peer:InputPeer id:Vector<int> = stories.Stories; +stories.toggleAllStoriesHidden#7c2557c4 hidden:Bool = Bool; stories.readStories#a556dac8 peer:InputPeer max_id:int = Vector<int>; stories.incrementStoryViews#b2028afb peer:InputPeer id:Vector<int> = Bool; stories.getStoryViewsList#7ed23c57 flags:# just_contacts:flags.0?true reactions_first:flags.2?true peer:InputPeer q:flags.1?string id:int offset:string limit:int = stories.StoryViewsList; @@ -549,150 +599,6 @@ stories.getBoostersList#337ef980 peer:InputPeer offset:string limit:int = stories.BoostersList; stories.canApplyBoost#db05c1bd peer:InputPeer = stories.CanApplyBoostResult; stories.applyBoost#f29d7c2b peer:InputPeer = Bool;
-

Layer 160

-

Schema changes

-
New Methods
- -
Changed Methods
- -
New Constructors
- -
Changed Constructors
-
    -
  • Added view_forum_as_messages parameter in dialog
  • -
  • Added stories_muted, stories_hide_sender, stories_sound parameters in inputPeerNotifySettings
  • -
  • Added stories_muted, stories_hide_sender, stories_ios_sound, stories_android_sound, stories_other_sound parameters in peerNotifySettings
  • -
  • Added stories_pinned_available, stories parameters in userFull
  • -
  • Added alt_document parameter in messageMediaDocument
  • -
  • Added nosound, preload_prefix_size parameters, changed type of duration from int to double in documentAttributeVideo
  • -
  • Added close_friend, stories_hidden, stories_unavailable, stories_max_id parameters in user
  • -
  • Added stories_preload parameter in autoDownloadSettings
  • -
  • Added keep_archived_unmuted, keep_archived_folders parameters, changed type of archive_and_mute_new_noncontact_peers from flags.0?Bool to flags.0?true in globalPrivacySettings
  • -
-
Deleted Constructors
-
    -
  • Removed messageEntityBlockquote
  • -
-

Schema

-
dialog#d58a08c6 flags:# pinned:flags.2?true unread_mark:flags.3?true view_forum_as_messages:flags.6?true peer:Peer top_message:int read_inbox_max_id:int read_outbox_max_id:int unread_count:int unread_mentions_count:int unread_reactions_count:int notify_settings:PeerNotifySettings pts:flags.0?int draft:flags.1?DraftMessage folder_id:flags.4?int ttl_period:flags.5?int = Dialog;
-inputPeerNotifySettings#cacb6ae2 flags:# show_previews:flags.0?Bool silent:flags.1?Bool mute_until:flags.2?int sound:flags.3?NotificationSound stories_muted:flags.6?Bool stories_hide_sender:flags.7?Bool stories_sound:flags.8?NotificationSound = InputPeerNotifySettings;
-peerNotifySettings#99622c0c flags:# show_previews:flags.0?Bool silent:flags.1?Bool mute_until:flags.2?int ios_sound:flags.3?NotificationSound android_sound:flags.4?NotificationSound other_sound:flags.5?NotificationSound stories_muted:flags.6?Bool stories_hide_sender:flags.7?Bool stories_ios_sound:flags.8?NotificationSound stories_android_sound:flags.9?NotificationSound stories_other_sound:flags.10?NotificationSound = PeerNotifySettings;
-userFull#4fe1cc86 flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?UserStories = UserFull;
-messageMediaDocument#4cf4d72d flags:# nopremium:flags.3?true spoiler:flags.4?true document:flags.0?Document alt_document:flags.5?Document ttl_seconds:flags.2?int = MessageMedia;
-documentAttributeVideo#d38ff1c2 flags:# round_message:flags.0?true supports_streaming:flags.1?true nosound:flags.3?true duration:double w:int h:int preload_prefix_size:flags.2?int = DocumentAttribute;
-user#abb5f120 flags:# self:flags.10?true contact:flags.11?true mutual_contact:flags.12?true deleted:flags.13?true bot:flags.14?true bot_chat_history:flags.15?true bot_nochats:flags.16?true verified:flags.17?true restricted:flags.18?true min:flags.20?true bot_inline_geo:flags.21?true support:flags.23?true scam:flags.24?true apply_min_photo:flags.25?true fake:flags.26?true bot_attach_menu:flags.27?true premium:flags.28?true attach_menu_enabled:flags.29?true flags2:# bot_can_edit:flags2.1?true close_friend:flags2.2?true stories_hidden:flags2.3?true stories_unavailable:flags2.4?true id:long access_hash:flags.0?long first_name:flags.1?string last_name:flags.2?string username:flags.3?string phone:flags.4?string photo:flags.5?UserProfilePhoto status:flags.6?UserStatus bot_info_version:flags.14?int restriction_reason:flags.18?Vector<RestrictionReason> bot_inline_placeholder:flags.19?string lang_code:flags.22?string emoji_status:flags.30?EmojiStatus usernames:flags2.0?Vector<Username> stories_max_id:flags2.5?int = User;
-autoDownloadSettings#baa57628 flags:# disabled:flags.0?true video_preload_large:flags.1?true audio_preload_next:flags.2?true phonecalls_less_data:flags.3?true stories_preload:flags.4?true photo_size_max:int video_size_max:long file_size_max:long video_upload_maxbitrate:int small_queue_active_operations_max:int large_queue_active_operations_max:int = AutoDownloadSettings;
-globalPrivacySettings#734c4ccb flags:# archive_and_mute_new_noncontact_peers:flags.0?true keep_archived_unmuted:flags.1?true keep_archived_folders:flags.2?true = GlobalPrivacySettings;
-storyViews#d36760cf flags:# views_count:int recent_viewers:flags.0?Vector<long> = StoryViews; -storyItemDeleted#51e6ee4f id:int = StoryItem; -storyItemSkipped#ffadc913 flags:# close_friends:flags.8?true id:int date:int expire_date:int = StoryItem; -storyItem#562aa637 flags:# pinned:flags.5?true public:flags.7?true close_friends:flags.8?true min:flags.9?true noforwards:flags.10?true edited:flags.11?true contacts:flags.12?true selected_contacts:flags.13?true id:int date:int expire_date:int caption:flags.0?string entities:flags.1?Vector<MessageEntity> media:MessageMedia privacy:flags.2?Vector<PrivacyRule> views:flags.3?StoryViews = StoryItem;
-userStories#8611a200 flags:# user_id:long max_read_id:flags.0?int stories:Vector<StoryItem> = UserStories; -updateStory#205a4133 user_id:long story:StoryItem = Update; -updateReadStories#feb5345a user_id:long max_id:int = Update;
-stories.allStoriesNotModified#47e0a07e state:string = stories.AllStories; -stories.allStories#839e0428 flags:# has_more:flags.0?true count:int state:string user_stories:Vector<UserStories> users:Vector<User> = stories.AllStories; -stories.stories#4fe57df1 count:int stories:Vector<StoryItem> users:Vector<User> = stories.Stories; -stories.userStories#37a6ff5f stories:UserStories users:Vector<User> = stories.UserStories;
-inputPrivacyValueAllowCloseFriends#2f453e49 = InputPrivacyRule;
-privacyValueAllowCloseFriends#f7e8d89b = PrivacyRule;
-storyView#a71aacc2 user_id:long date:int = StoryView; -stories.storyViewsList#fb3f77ac count:int views:Vector<StoryView> users:Vector<User> = stories.StoryViewsList; -stories.storyViews#de9eed1d views:Vector<StoryViews> users:Vector<User> = stories.StoryViews;
-inputReplyToMessage#9c5386e4 flags:# reply_to_msg_id:int top_msg_id:flags.0?int = InputReplyTo; -inputReplyToStory#15b0f283 user_id:InputUser story_id:int = InputReplyTo;
-messageReplyStoryHeader#9c98bfc1 user_id:long story_id:int = MessageReplyHeader;
-updateStoryID#1bf335b9 id:int random_id:long = Update;
-exportedStoryLink#3fc9053b link:string = ExportedStoryLink;
-inputMediaStory#9a86b58f user_id:InputUser id:int = InputMedia;
-messageMediaStory#cbb20d88 flags:# via_mention:flags.1?true user_id:long id:int story:flags.0?StoryItem = MessageMedia;
-webPageAttributeStory#939a4671 flags:# user_id:long id:int story:flags.0?StoryItem = WebPageAttribute;
----functions---
-messages.sendMessage#280d096f flags:# no_webpage:flags.1?true silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true peer:InputPeer reply_to:flags.0?InputReplyTo message:string random_id:long reply_markup:flags.2?ReplyMarkup entities:flags.3?Vector<MessageEntity> schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates; -messages.sendMedia#72ccc23d flags:# silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true peer:InputPeer reply_to:flags.0?InputReplyTo media:InputMedia message:string random_id:long reply_markup:flags.2?ReplyMarkup entities:flags.3?Vector<MessageEntity> schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates; -messages.sendInlineBotResult#f7bc68ba flags:# silent:flags.5?true background:flags.6?true clear_draft:flags.7?true hide_via:flags.11?true peer:InputPeer reply_to:flags.0?InputReplyTo random_id:long query_id:long id:string schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates; -messages.sendScreenshotNotification#a1405817 peer:InputPeer reply_to:InputReplyTo random_id:long = Updates; -messages.sendMultiMedia#456e8987 flags:# silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true peer:InputPeer reply_to:flags.0?InputReplyTo multi_media:Vector<InputSingleMedia> schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates;
-account.getNotifyExceptions#53577479 flags:# compare_sound:flags.1?true compare_stories:flags.2?true peer:flags.0?InputNotifyPeer = Updates;
-messages.requestWebView#269dc2c1 flags:# from_bot_menu:flags.4?true silent:flags.5?true peer:InputPeer bot:InputUser url:flags.1?string start_param:flags.3?string theme_params:flags.2?DataJSON platform:string reply_to:flags.0?InputReplyTo send_as:flags.13?InputPeer = WebViewResult; -messages.prolongWebView#b0d81a83 flags:# silent:flags.5?true peer:InputPeer bot:InputUser query_id:long reply_to:flags.0?InputReplyTo send_as:flags.13?InputPeer = Bool;
-contacts.editCloseFriends#ba6705f0 id:Vector<long> = Bool; -contacts.toggleStoriesHidden#753fb865 id:InputUser hidden:Bool = Bool;
-stories.canSendStory#b100d45d = Bool; -stories.sendStory#424cd47a flags:# pinned:flags.2?true noforwards:flags.4?true media:InputMedia caption:flags.0?string entities:flags.1?Vector<MessageEntity> privacy_rules:Vector<InputPrivacyRule> random_id:long period:flags.3?int = Updates; -stories.editStory#2aae7a41 flags:# id:int media:flags.0?InputMedia caption:flags.1?string entities:flags.1?Vector<MessageEntity> privacy_rules:flags.2?Vector<InputPrivacyRule> = Updates; -stories.deleteStories#b5d501d7 id:Vector<int> = Vector<int>; -stories.togglePinned#51602944 id:Vector<int> pinned:Bool = Vector<int>; -stories.getAllStories#eeb0d625 flags:# next:flags.1?true hidden:flags.2?true state:flags.0?string = stories.AllStories; -stories.getUserStories#96d528e0 user_id:InputUser = stories.UserStories; -stories.getPinnedStories#0b471137 user_id:InputUser offset_id:int limit:int = stories.Stories; -stories.getStoriesArchive#1f5bc5d2 offset_id:int limit:int = stories.Stories; -stories.getStoriesByID#6a15cf46 user_id:InputUser id:Vector<int> = stories.Stories; -stories.toggleAllStoriesHidden#7c2557c4 hidden:Bool = Bool; -stories.getAllReadUserStories#729c562c = Updates; -stories.readStories#edc5105b user_id:InputUser max_id:int = Vector<int>; -stories.incrementStoryViews#22126127 user_id:InputUser id:Vector<int> = Bool; -stories.getStoryViewsList#4b3b5e97 id:int offset_date:int offset_id:long limit:int = stories.StoryViewsList; -stories.getStoriesViews#9a75d6a6 id:Vector<int> = stories.StoryViews; -stories.exportStoryLink#16e443ce user_id:InputUser id:int = ExportedStoryLink; -stories.report#c95be06a user_id:InputUser id:Vector<int> reason:ReportReason message:string = Bool;
-users.getStoriesMaxIDs#ca1cb9ab id:Vector<InputUser> = Vector<int>;

Layer 159

Introducing privacy settings for user bios, improved login code invalidation, improved chat invites, improved update handling, sponsored websites and click reporting for sponsored messages.

Also, anonymous channel admins can now vote in polls.

diff --git a/data/web/corefork.telegram.org/api/mentions.html b/data/web/corefork.telegram.org/api/mentions.html index 6bbb027cfd..695be2bd34 100644 --- a/data/web/corefork.telegram.org/api/mentions.html +++ b/data/web/corefork.telegram.org/api/mentions.html @@ -49,13 +49,13 @@ messageEntityMentionName#dc7b1140 offset:int length:int user_id:long = MessageEntity; inputMessageEntityMentionName#208e68c9 offset:int length:int user_id:InputUser = MessageEntity; -message#38116ee0 flags:# out:flags.1?true mentioned:flags.4?true media_unread:flags.5?true silent:flags.13?true post:flags.14?true from_scheduled:flags.18?true legacy:flags.19?true edit_hide:flags.21?true pinned:flags.24?true noforwards:flags.26?true id:int from_id:flags.8?Peer peer_id:Peer fwd_from:flags.2?MessageFwdHeader via_bot_id:flags.11?long reply_to:flags.3?MessageReplyHeader date:int message:string media:flags.9?MessageMedia reply_markup:flags.6?ReplyMarkup entities:flags.7?Vector<MessageEntity> views:flags.10?int forwards:flags.10?int replies:flags.23?MessageReplies edit_date:flags.15?int post_author:flags.16?string grouped_id:flags.17?long reactions:flags.20?MessageReactions restriction_reason:flags.22?Vector<RestrictionReason> ttl_period:flags.25?int = Message; +message#38116ee0 flags:# out:flags.1?true mentioned:flags.4?true media_unread:flags.5?true silent:flags.13?true post:flags.14?true from_scheduled:flags.18?true legacy:flags.19?true edit_hide:flags.21?true pinned:flags.24?true noforwards:flags.26?true invert_media:flags.27?true id:int from_id:flags.8?Peer peer_id:Peer fwd_from:flags.2?MessageFwdHeader via_bot_id:flags.11?long reply_to:flags.3?MessageReplyHeader date:int message:string media:flags.9?MessageMedia reply_markup:flags.6?ReplyMarkup entities:flags.7?Vector<MessageEntity> views:flags.10?int forwards:flags.10?int replies:flags.23?MessageReplies edit_date:flags.15?int post_author:flags.16?string grouped_id:flags.17?long reactions:flags.20?MessageReactions restriction_reason:flags.22?Vector<RestrictionReason> ttl_period:flags.25?int = Message; channelParticipantsMentions#e04b5ceb flags:# q:flags.0?string top_msg_id:flags.1?int = ChannelParticipantsFilter; ---functions--- -messages.sendMessage#280d096f flags:# no_webpage:flags.1?true silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true peer:InputPeer reply_to:flags.0?InputReplyTo message:string random_id:long reply_markup:flags.2?ReplyMarkup entities:flags.3?Vector<MessageEntity> schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates; +messages.sendMessage#280d096f flags:# no_webpage:flags.1?true silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true invert_media:flags.16?true peer:InputPeer reply_to:flags.0?InputReplyTo message:string random_id:long reply_markup:flags.2?ReplyMarkup entities:flags.3?Vector<MessageEntity> schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates; channels.getParticipants#77ced9d0 channel:InputChannel filter:ChannelParticipantsFilter offset:int limit:int hash:long = channels.ChannelParticipants;

Mentions are implemented as message entities, passed to the messages.sendMessage method:

diff --git a/data/web/corefork.telegram.org/api/pin.html b/data/web/corefork.telegram.org/api/pin.html index e14f85af88..6bc6d4fbce 100644 --- a/data/web/corefork.telegram.org/api/pin.html +++ b/data/web/corefork.telegram.org/api/pin.html @@ -45,7 +45,7 @@

Telegram allows pinning multiple messages on top of a specific chat.

-
message#38116ee0 flags:# out:flags.1?true mentioned:flags.4?true media_unread:flags.5?true silent:flags.13?true post:flags.14?true from_scheduled:flags.18?true legacy:flags.19?true edit_hide:flags.21?true pinned:flags.24?true noforwards:flags.26?true id:int from_id:flags.8?Peer peer_id:Peer fwd_from:flags.2?MessageFwdHeader via_bot_id:flags.11?long reply_to:flags.3?MessageReplyHeader date:int message:string media:flags.9?MessageMedia reply_markup:flags.6?ReplyMarkup entities:flags.7?Vector<MessageEntity> views:flags.10?int forwards:flags.10?int replies:flags.23?MessageReplies edit_date:flags.15?int post_author:flags.16?string grouped_id:flags.17?long reactions:flags.20?MessageReactions restriction_reason:flags.22?Vector<RestrictionReason> ttl_period:flags.25?int = Message;
+
message#38116ee0 flags:# out:flags.1?true mentioned:flags.4?true media_unread:flags.5?true silent:flags.13?true post:flags.14?true from_scheduled:flags.18?true legacy:flags.19?true edit_hide:flags.21?true pinned:flags.24?true noforwards:flags.26?true invert_media:flags.27?true id:int from_id:flags.8?Peer peer_id:Peer fwd_from:flags.2?MessageFwdHeader via_bot_id:flags.11?long reply_to:flags.3?MessageReplyHeader date:int message:string media:flags.9?MessageMedia reply_markup:flags.6?ReplyMarkup entities:flags.7?Vector<MessageEntity> views:flags.10?int forwards:flags.10?int replies:flags.23?MessageReplies edit_date:flags.15?int post_author:flags.16?string grouped_id:flags.17?long reactions:flags.20?MessageReactions restriction_reason:flags.22?Vector<RestrictionReason> ttl_period:flags.25?int = Message;
 
 updatePinnedMessages#ed85eab5 flags:# pinned:flags.0?true peer:Peer messages:Vector<int> pts:int pts_count:int = Update;
 updatePinnedChannelMessages#5bb98608 flags:# pinned:flags.0?true channel_id:long messages:Vector<int> pts:int pts_count:int = Update;
@@ -63,7 +63,7 @@ The unpin flags specifies whether to unpin or pin the message, and
 

When (un)pinning messages, a updatePinnedMessages or updatePinnedChannelMessages update will be emitted, containing IDs of pinned or unpinned messages.

Pinned messages will also have the will also have the pinned flag of message set.

Getting pinned messages

-
userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull;
+
userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true wallpaper_overridden:flags.28?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull;
 chatFull#c9d31138 flags:# can_set_username:flags.7?true has_scheduled:flags.8?true translations_disabled:flags.19?true id:long about:string participants:ChatParticipants chat_photo:flags.2?Photo notify_settings:PeerNotifySettings exported_invite:flags.13?ExportedChatInvite bot_info:flags.3?Vector<BotInfo> pinned_msg_id:flags.6?int folder_id:flags.11?int call:flags.12?InputGroupCall ttl_period:flags.14?int groupcall_default_join_as:flags.15?Peer theme_emoticon:flags.16?string requests_pending:flags.17?int recent_requesters:flags.17?Vector<long> available_reactions:flags.18?ChatReactions = ChatFull;
 channelFull#723027bd flags:# can_view_participants:flags.3?true can_set_username:flags.6?true can_set_stickers:flags.7?true hidden_prehistory:flags.10?true can_set_location:flags.16?true has_scheduled:flags.19?true can_view_stats:flags.20?true blocked:flags.22?true flags2:# can_delete_channel:flags2.0?true antispam:flags2.1?true participants_hidden:flags2.2?true translations_disabled:flags2.3?true stories_pinned_available:flags2.5?true view_forum_as_messages:flags2.6?true id:long about:string participants_count:flags.0?int admins_count:flags.1?int kicked_count:flags.2?int banned_count:flags.2?int online_count:flags.13?int read_inbox_max_id:int read_outbox_max_id:int unread_count:int chat_photo:Photo notify_settings:PeerNotifySettings exported_invite:flags.23?ExportedChatInvite bot_info:Vector<BotInfo> migrated_from_chat_id:flags.4?long migrated_from_max_id:flags.4?int pinned_msg_id:flags.5?int stickerset:flags.8?StickerSet available_min_id:flags.9?int folder_id:flags.11?int linked_chat_id:flags.14?long location:flags.15?ChannelLocation slowmode_seconds:flags.17?int slowmode_next_send_date:flags.18?int stats_dc:flags.12?int pts:int call:flags.21?InputGroupCall ttl_period:flags.24?int pending_suggestions:flags.25?Vector<string> groupcall_default_join_as:flags.26?Peer theme_emoticon:flags.27?string requests_pending:flags.28?int recent_requesters:flags.28?Vector<long> default_send_as:flags.29?Peer available_reactions:flags.30?ChatReactions stories:flags2.4?PeerStories = ChatFull;
 
diff --git a/data/web/corefork.telegram.org/api/poll.html b/data/web/corefork.telegram.org/api/poll.html
index 4df6287ec4..f78589efbe 100644
--- a/data/web/corefork.telegram.org/api/poll.html
+++ b/data/web/corefork.telegram.org/api/poll.html
@@ -54,7 +54,7 @@
 
 ---functions---
 
-messages.sendMedia#72ccc23d flags:# silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true peer:InputPeer reply_to:flags.0?InputReplyTo media:InputMedia message:string random_id:long reply_markup:flags.2?ReplyMarkup entities:flags.3?Vector<MessageEntity> schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates;
+messages.sendMedia#72ccc23d flags:# silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true invert_media:flags.16?true peer:InputPeer reply_to:flags.0?InputReplyTo media:InputMedia message:string random_id:long reply_markup:flags.2?ReplyMarkup entities:flags.3?Vector<MessageEntity> schedule_date:flags.10?int send_as:flags.13?InputPeer = Updates;

To send a poll in a chat, call messages.sendMedia, providing an inputMediaPoll:

There is also a store-based subscription flow based on payments.assignAppStoreTransaction/payments.assignPlayMarketTransaction, but it's currently not available to third-party apps (unlike the flow described above, which can be used by all clients).

Gifting Telegram Premium

-
userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull;
+
userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true wallpaper_overridden:flags.28?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull;
 
 premiumGiftOption#74c34319 flags:# months:int currency:string amount:long bot_url:string store_product:flags.0?string = PremiumGiftOption;
 
diff --git a/data/web/corefork.telegram.org/api/privacy.html b/data/web/corefork.telegram.org/api/privacy.html
index 5dac841539..7b789739ea 100644
--- a/data/web/corefork.telegram.org/api/privacy.html
+++ b/data/web/corefork.telegram.org/api/privacy.html
@@ -67,7 +67,7 @@
 privacyValueDisallowChatParticipants#41c87565 chats:Vector<long> = PrivacyRule;
 privacyValueAllowCloseFriends#f7e8d89b = PrivacyRule;
 
-user#abb5f120 flags:# self:flags.10?true contact:flags.11?true mutual_contact:flags.12?true deleted:flags.13?true bot:flags.14?true bot_chat_history:flags.15?true bot_nochats:flags.16?true verified:flags.17?true restricted:flags.18?true min:flags.20?true bot_inline_geo:flags.21?true support:flags.23?true scam:flags.24?true apply_min_photo:flags.25?true fake:flags.26?true bot_attach_menu:flags.27?true premium:flags.28?true attach_menu_enabled:flags.29?true flags2:# bot_can_edit:flags2.1?true close_friend:flags2.2?true stories_hidden:flags2.3?true stories_unavailable:flags2.4?true id:long access_hash:flags.0?long first_name:flags.1?string last_name:flags.2?string username:flags.3?string phone:flags.4?string photo:flags.5?UserProfilePhoto status:flags.6?UserStatus bot_info_version:flags.14?int restriction_reason:flags.18?Vector<RestrictionReason> bot_inline_placeholder:flags.19?string lang_code:flags.22?string emoji_status:flags.30?EmojiStatus usernames:flags2.0?Vector<Username> stories_max_id:flags2.5?int = User;
+user#215c4438 flags:# self:flags.10?true contact:flags.11?true mutual_contact:flags.12?true deleted:flags.13?true bot:flags.14?true bot_chat_history:flags.15?true bot_nochats:flags.16?true verified:flags.17?true restricted:flags.18?true min:flags.20?true bot_inline_geo:flags.21?true support:flags.23?true scam:flags.24?true apply_min_photo:flags.25?true fake:flags.26?true bot_attach_menu:flags.27?true premium:flags.28?true attach_menu_enabled:flags.29?true flags2:# bot_can_edit:flags2.1?true close_friend:flags2.2?true stories_hidden:flags2.3?true stories_unavailable:flags2.4?true id:long access_hash:flags.0?long first_name:flags.1?string last_name:flags.2?string username:flags.3?string phone:flags.4?string photo:flags.5?UserProfilePhoto status:flags.6?UserStatus bot_info_version:flags.14?int restriction_reason:flags.18?Vector<RestrictionReason> bot_inline_placeholder:flags.19?string lang_code:flags.22?string emoji_status:flags.30?EmojiStatus usernames:flags2.0?Vector<Username> stories_max_id:flags2.5?int color:flags2.8?PeerColor profile_color:flags2.9?PeerColor = User;
 
 ---functions---
 
diff --git a/data/web/corefork.telegram.org/api/reactions.html b/data/web/corefork.telegram.org/api/reactions.html
index c1ebcbaa39..66225f866b 100644
--- a/data/web/corefork.telegram.org/api/reactions.html
+++ b/data/web/corefork.telegram.org/api/reactions.html
@@ -55,7 +55,7 @@
 
 messageReactions#4f2b9479 flags:# min:flags.0?true can_see_list:flags.2?true results:Vector<ReactionCount> recent_reactions:flags.1?Vector<MessagePeerReaction> = MessageReactions;
 
-message#38116ee0 flags:# out:flags.1?true mentioned:flags.4?true media_unread:flags.5?true silent:flags.13?true post:flags.14?true from_scheduled:flags.18?true legacy:flags.19?true edit_hide:flags.21?true pinned:flags.24?true noforwards:flags.26?true id:int from_id:flags.8?Peer peer_id:Peer fwd_from:flags.2?MessageFwdHeader via_bot_id:flags.11?long reply_to:flags.3?MessageReplyHeader date:int message:string media:flags.9?MessageMedia reply_markup:flags.6?ReplyMarkup entities:flags.7?Vector<MessageEntity> views:flags.10?int forwards:flags.10?int replies:flags.23?MessageReplies edit_date:flags.15?int post_author:flags.16?string grouped_id:flags.17?long reactions:flags.20?MessageReactions restriction_reason:flags.22?Vector<RestrictionReason> ttl_period:flags.25?int = Message;
+message#38116ee0 flags:# out:flags.1?true mentioned:flags.4?true media_unread:flags.5?true silent:flags.13?true post:flags.14?true from_scheduled:flags.18?true legacy:flags.19?true edit_hide:flags.21?true pinned:flags.24?true noforwards:flags.26?true invert_media:flags.27?true id:int from_id:flags.8?Peer peer_id:Peer fwd_from:flags.2?MessageFwdHeader via_bot_id:flags.11?long reply_to:flags.3?MessageReplyHeader date:int message:string media:flags.9?MessageMedia reply_markup:flags.6?ReplyMarkup entities:flags.7?Vector<MessageEntity> views:flags.10?int forwards:flags.10?int replies:flags.23?MessageReplies edit_date:flags.15?int post_author:flags.16?string grouped_id:flags.17?long reactions:flags.20?MessageReactions restriction_reason:flags.22?Vector<RestrictionReason> ttl_period:flags.25?int = Message;
 
 updateMessageReactions#5e1b3cb8 flags:# peer:Peer msg_id:int top_msg_id:flags.0?int reactions:MessageReactions = Update;
 
diff --git a/data/web/corefork.telegram.org/api/translation.html b/data/web/corefork.telegram.org/api/translation.html
index 372100781c..19d288578e 100644
--- a/data/web/corefork.telegram.org/api/translation.html
+++ b/data/web/corefork.telegram.org/api/translation.html
@@ -56,7 +56,7 @@
 

messages.translateText can be used to translate a list of chat messages (by populating the peer and id flags), or a generic list of messages (by populating the text flag, for example when translating instant view articles).

The method will return a vector of textWithEntities constructors, containing the translated text, and, only for Telegram Premium users, the corresponding styled text entities (i.e. correctly repositioned bold, italic, link entities for the translated message, corresponding to the same entities in the original message).

Real-time translation

-
userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull;
+
userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true wallpaper_overridden:flags.28?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull;
 
 chatFull#c9d31138 flags:# can_set_username:flags.7?true has_scheduled:flags.8?true translations_disabled:flags.19?true id:long about:string participants:ChatParticipants chat_photo:flags.2?Photo notify_settings:PeerNotifySettings exported_invite:flags.13?ExportedChatInvite bot_info:flags.3?Vector<BotInfo> pinned_msg_id:flags.6?int folder_id:flags.11?int call:flags.12?InputGroupCall ttl_period:flags.14?int groupcall_default_join_as:flags.15?Peer theme_emoticon:flags.16?string requests_pending:flags.17?int recent_requesters:flags.17?Vector<long> available_reactions:flags.18?ChatReactions = ChatFull;
 
diff --git a/data/web/corefork.telegram.org/constructor/chatInvite.html b/data/web/corefork.telegram.org/constructor/chatInvite.html
index 3ec475b6ae..22941824b6 100644
--- a/data/web/corefork.telegram.org/constructor/chatInvite.html
+++ b/data/web/corefork.telegram.org/constructor/chatInvite.html
@@ -136,6 +136,11 @@
 flags.4?Vector<User>
 A few of the participants that are in the group
 
+
+color
+int
+ 
+
 
 
 

Type

diff --git a/data/web/corefork.telegram.org/constructor/inputReplyToMessage.html b/data/web/corefork.telegram.org/constructor/inputReplyToMessage.html index 9c711c8ae3..95d946a8b4 100644 --- a/data/web/corefork.telegram.org/constructor/inputReplyToMessage.html +++ b/data/web/corefork.telegram.org/constructor/inputReplyToMessage.html @@ -4,30 +4,10 @@ inputReplyToMessage - + - + @@ -101,10 +81,33 @@ The message…"> flags.0?int This field must contain the topic ID only when replying to messages in forum topics different from the "General" topic (i.e. reply_to_msg_id is set and reply_to_msg_id != topicID and topicID != 1).
If the replied-to message is deleted before the method finishes execution, the value in this field will be used to send the message to the correct topic, instead of the "General" topic. + +reply_to_peer_id +flags.1?InputPeer +  + + +quote_text +flags.2?string +  + + +quote_entities +flags.3?Vector<MessageEntity> +Message entities for styled text + + +quote_offset +flags.4?int +  +

Type

-

InputReplyTo

+

InputReplyTo

+

Related pages

+

Styled text with message entities

+

How to create styled text with message entities

diff --git a/data/web/corefork.telegram.org/constructor/message.html b/data/web/corefork.telegram.org/constructor/message.html index 73a7c43287..18df82da74 100644 --- a/data/web/corefork.telegram.org/constructor/message.html +++ b/data/web/corefork.telegram.org/constructor/message.html @@ -122,6 +122,11 @@ Whether this message is protected and thus cannot be forwarded; clients should also prevent users from saving attached media (i.e. videos should only be streamed, photos should be kept in RAM, et cetera). +invert_media +flags.27?true +  + + id int ID of the message diff --git a/data/web/corefork.telegram.org/constructor/sponsoredMessage.html b/data/web/corefork.telegram.org/constructor/sponsoredMessage.html index 283afc8973..d3b6d664c9 100644 --- a/data/web/corefork.telegram.org/constructor/sponsoredMessage.html +++ b/data/web/corefork.telegram.org/constructor/sponsoredMessage.html @@ -117,6 +117,11 @@ Sponsored website +app +flags.10?BotApp +  + + message string Sponsored message @@ -127,6 +132,11 @@ Message entities for styled text +button_text +flags.11?string +  + + sponsor_info flags.7?string If set, contains additional information about the sponsor to be shown along with the message. diff --git a/data/web/corefork.telegram.org/constructor/stories.boostersList.html b/data/web/corefork.telegram.org/constructor/stories.boostersList.html index 04c883095e..fae456a2c3 100644 --- a/data/web/corefork.telegram.org/constructor/stories.boostersList.html +++ b/data/web/corefork.telegram.org/constructor/stories.boostersList.html @@ -94,7 +94,7 @@

Type

-

stories.BoostersList

+

 

Related pages

Pagination in the API

How to fetch results from large lists of objects.

diff --git a/data/web/corefork.telegram.org/constructor/stories.boostsStatus.html b/data/web/corefork.telegram.org/constructor/stories.boostsStatus.html index a59ac9b567..ed2fc8c4c6 100644 --- a/data/web/corefork.telegram.org/constructor/stories.boostsStatus.html +++ b/data/web/corefork.telegram.org/constructor/stories.boostsStatus.html @@ -104,7 +104,7 @@

Type

-

stories.BoostsStatus

+

 

Related pages

Channel boosts

Telegram Premium users can grant their favorite channels additional features like the ability to post stories by giving them boosts.

diff --git a/data/web/corefork.telegram.org/constructor/stories.canApplyBoostOk.html b/data/web/corefork.telegram.org/constructor/stories.canApplyBoostOk.html index 40de756949..5332135d88 100644 --- a/data/web/corefork.telegram.org/constructor/stories.canApplyBoostOk.html +++ b/data/web/corefork.telegram.org/constructor/stories.canApplyBoostOk.html @@ -59,7 +59,7 @@

Parameters

This constructor does not require any parameters.

Type

-

stories.CanApplyBoostResult

+

 

diff --git a/data/web/corefork.telegram.org/constructor/stories.canApplyBoostReplace.html b/data/web/corefork.telegram.org/constructor/stories.canApplyBoostReplace.html index 711a568c9b..98b9cb7e1c 100644 --- a/data/web/corefork.telegram.org/constructor/stories.canApplyBoostReplace.html +++ b/data/web/corefork.telegram.org/constructor/stories.canApplyBoostReplace.html @@ -79,7 +79,7 @@

Type

-

stories.CanApplyBoostResult

+

 

diff --git a/data/web/corefork.telegram.org/constructor/storyItem.html b/data/web/corefork.telegram.org/constructor/storyItem.html index c186c3a2c9..1a9c3b764f 100644 --- a/data/web/corefork.telegram.org/constructor/storyItem.html +++ b/data/web/corefork.telegram.org/constructor/storyItem.html @@ -127,6 +127,11 @@ When was the story posted. +fwd_from +flags.17?StoryFwdHeader +  + + expire_date int When does the story expire. diff --git a/data/web/corefork.telegram.org/method/messages.sendMedia.html b/data/web/corefork.telegram.org/method/messages.sendMedia.html index 40eae40785..3894629377 100644 --- a/data/web/corefork.telegram.org/method/messages.sendMedia.html +++ b/data/web/corefork.telegram.org/method/messages.sendMedia.html @@ -105,6 +105,11 @@ Whether to move used stickersets to top, see here for more info on this flag » +invert_media +flags.16?true +  + + peer InputPeer Destination diff --git a/data/web/corefork.telegram.org/method/messages.sendMultiMedia.html b/data/web/corefork.telegram.org/method/messages.sendMultiMedia.html index d41e461084..52c7aa7d1f 100644 --- a/data/web/corefork.telegram.org/method/messages.sendMultiMedia.html +++ b/data/web/corefork.telegram.org/method/messages.sendMultiMedia.html @@ -105,6 +105,11 @@ Whether to move used stickersets to top, see here for more info on this flag » +invert_media +flags.16?true +  + + peer InputPeer The destination chat diff --git a/data/web/corefork.telegram.org/method/stories.canApplyBoost.html b/data/web/corefork.telegram.org/method/stories.canApplyBoost.html index 4c8d848fbc..c04b48a1a7 100644 --- a/data/web/corefork.telegram.org/method/stories.canApplyBoost.html +++ b/data/web/corefork.telegram.org/method/stories.canApplyBoost.html @@ -74,7 +74,7 @@

Result

-

stories.CanApplyBoostResult

+

 

Possible errors

diff --git a/data/web/corefork.telegram.org/method/stories.getBoostersList.html b/data/web/corefork.telegram.org/method/stories.getBoostersList.html index 305ce86ccd..18ebd50724 100644 --- a/data/web/corefork.telegram.org/method/stories.getBoostersList.html +++ b/data/web/corefork.telegram.org/method/stories.getBoostersList.html @@ -84,7 +84,7 @@

Result

-

stories.BoostersList

+

 

Possible errors

diff --git a/data/web/corefork.telegram.org/method/stories.getBoostsStatus.html b/data/web/corefork.telegram.org/method/stories.getBoostsStatus.html index 08f996f6f0..29b44eb0ae 100644 --- a/data/web/corefork.telegram.org/method/stories.getBoostsStatus.html +++ b/data/web/corefork.telegram.org/method/stories.getBoostsStatus.html @@ -74,7 +74,7 @@

Result

-

stories.BoostsStatus

+

 

Possible errors

diff --git a/data/web/corefork.telegram.org/method/stories.sendStory.html b/data/web/corefork.telegram.org/method/stories.sendStory.html index 701cd8d190..89e8913350 100644 --- a/data/web/corefork.telegram.org/method/stories.sendStory.html +++ b/data/web/corefork.telegram.org/method/stories.sendStory.html @@ -90,6 +90,11 @@ + + + + + @@ -129,6 +134,16 @@ + + + + + + + + + +
If set, disables forwards, screenshots, and downloads.
fwd_modifiedflags.7?true 
peer InputPeer The peer to send the story as.flags.3?int Period after which the story is moved to archive (and to the profile if pinned is set), in seconds; must be one of 6 * 3600, 12 * 3600, 86400, or 2 * 86400 for Telegram Premium users, and 86400 otherwise.
fwd_from_idflags.6?InputPeer 
fwd_from_storyflags.6?int 

Result

diff --git a/data/web/corefork.telegram.org/methods.html b/data/web/corefork.telegram.org/methods.html index 09359cfb94..5412d4939c 100644 --- a/data/web/corefork.telegram.org/methods.html +++ b/data/web/corefork.telegram.org/methods.html @@ -533,33 +533,6 @@ Look for updates of telegram's terms of service…"> -

Working with channel boosts

- - - - - - - - - - - - - - - - - - - - - - - - - -
NameDescription
stories.getBoostsStatusGet the current boost status of a channel, see here » for more info on boosts.
stories.getBoostersListObtain info about the users currently boosting a channel, see here » for more info about boosts.
stories.canApplyBoostCheck whether a channel can be boosted, see here for more info ».
stories.applyBoostBoost » a channel, leveling it up and granting it permission to post stories ».

Working with channels/supergroups/geogroups

@@ -2995,6 +2968,97 @@ Look for updates of telegram's terms of service…"> +
Resolve a @username to get peer info
+

Other

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescription
payments.getPremiumGiftCodeOptions 
payments.checkGiftCode 
payments.applyGiftCode 
payments.getGiveawayInfo 
payments.launchPrepaidGiveaway 
account.updateColor 
channels.updateColor 
account.getDefaultBackgroundEmojis 
premium.getBoostsList 
premium.getMyBoosts 
premium.applyBoost 
premium.getBoostsStatus 
premium.getUserBoosts 
channels.toggleViewForumAsMessages 
messages.searchEmojiStickerSets 
channels.getChannelRecommendations 
stats.getStoryStats 
stats.getStoryPublicForwards 
help.getPeerColors 
help.getPeerProfileColors 
diff --git a/data/web/corefork.telegram.org/mtproto/samples-auth_key.html b/data/web/corefork.telegram.org/mtproto/samples-auth_key.html index 1c267f19c7..8c1dae42e9 100644 --- a/data/web/corefork.telegram.org/mtproto/samples-auth_key.html +++ b/data/web/corefork.telegram.org/mtproto/samples-auth_key.html @@ -53,9 +53,9 @@
1) Client sends query to server

Sent payload (excluding transport headers/trailers):

-
0000 | 00 00 00 00 00 00 00 00 74 5F 02 00 46 E5 70 65
-0010 | 14 00 00 00 F1 8E 7E BE 0A 95 A3 0D D1 75 4A BF
-0020 | 28 3B CE 96 F3 B3 EB 42
+
0000 | 00 00 00 00 00 00 00 00 98 3F 04 00 A3 F9 70 65
+0010 | 14 00 00 00 F1 8E 7E BE 33 5E 99 59 32 B9 7A B0
+0020 | F4 99 8B 49 79 A9 8A B8

Payload (de)serialization:

req_pq_multi#be7e8ef1 nonce:int128 = ResPQ;
@@ -77,7 +77,7 @@ - + @@ -95,7 +95,7 @@ - + @@ -104,11 +104,11 @@
2) Server sends response of the form

Received payload (excluding transport headers/trailers):

-
0000 | 00 00 00 00 00 00 00 00 01 94 7D A2 46 E5 70 65
-0010 | 54 00 00 00 63 24 16 05 0A 95 A3 0D D1 75 4A BF
-0020 | 28 3B CE 96 F3 B3 EB 42 14 B7 7C B9 1E FB E6 D3
-0030 | F5 CF 06 3E 93 8C 11 B7 08 1C 18 DE 9B 76 56 E9
-0040 | AD 00 00 00 15 C4 B5 1C 03 00 00 00 A5 B7 F7 09
+
0000 | 00 00 00 00 00 00 00 00 01 B4 69 C6 A3 F9 70 65
+0010 | 94 00 00 00 63 24 16 05 33 5E 99 59 32 B9 7A B0
+0020 | F4 99 8B 49 79 A9 8A B8 1D 2A 19 43 39 EB D2 05
+0030 | 03 B5 CB 18 9E DE 22 74 08 16 08 6A F8 56 4E 3E
+0040 | 97 00 00 00 15 C4 B5 1C 03 00 00 00 A5 B7 F7 09
 0050 | 35 5F C3 0B 21 6B E8 6C 02 2B B4 C3 85 FD 64 DE
 0060 | 85 1D 9D D0

Payload (de)serialization:

@@ -132,13 +132,13 @@
- + - + @@ -150,19 +150,19 @@ - + - + - + @@ -208,22 +208,22 @@

Proof of work

3) Client decomposes pq into prime factors such that p < q.
-
pq = 2024612791789742509
-

Decompose into 2 prime cofactors p < q: 2024612791789742509 = 1071870773 * 1888859033

-
p = 1071870773
-q = 1888859033
+
pq = 1587636483480501911
+

Decompose into 2 prime cofactors p < q: 1587636483480501911 = 1073677151 * 1478690761

+
p = 1073677151
+q = 1478690761

Presenting proof of work; Server authentication

4) encrypted_data payload generation

First of all, generate an encrypted_data payload as follows:

Generated payload (excluding transport headers/trailers):

-
0000 | 95 5F F5 A9 08 1C 18 DE 9B 76 56 E9 AD 00 00 00
-0010 | 04 3F E3 73 35 00 00 00 04 70 95 B3 99 00 00 00
-0020 | 0A 95 A3 0D D1 75 4A BF 28 3B CE 96 F3 B3 EB 42
-0030 | 14 B7 7C B9 1E FB E6 D3 F5 CF 06 3E 93 8C 11 B7
-0040 | B4 35 80 BF E4 FC 5A 8D 68 30 18 B4 12 26 6D 99
-0050 | 62 6F 04 7B 3C 57 0B C2 CE E5 69 91 45 E8 78 0B
+
0000 | 95 5F F5 A9 08 16 08 6A F8 56 4E 3E 97 00 00 00
+0010 | 04 3F FF 03 5F 00 00 00 04 58 23 07 C9 00 00 00
+0020 | 33 5E 99 59 32 B9 7A B0 F4 99 8B 49 79 A9 8A B8
+0030 | 1D 2A 19 43 39 EB D2 05 03 B5 CB 18 9E DE 22 74
+0040 | 16 88 B5 70 21 F1 B7 54 78 B1 AF 42 01 EF 0C 39
+0050 | B3 A0 08 7D BF DB 4E E9 E8 B3 64 43 6F 91 E0 19
 0060 | 02 00 00 00

Payload (de)serialization:

p_q_inner_data_dc#a9f55f95 pq:string p:string q:string nonce:int128 server_nonce:int128 new_nonce:int256 dc:int = P_Q_inner_data;
@@ -246,37 +246,37 @@ q = 1888859033
- + - + - + - + - + - + @@ -291,39 +291,39 @@ q = 1888859033

The serialization of P_Q_inner_data produces data, which is used to generate encrypted_data as specified in step 4.1.
These are the inputs to the algorithm specified in step 4.1:

-
data = 955FF5A9081C18DE9B7656E9AD000000043FE37335000000047095B3990000000A95A30DD1754ABF283BCE96F3B3EB4214B77CB91EFBE6D3F5CF063E938C11B7B43580BFE4FC5A8D683018B412266D99626F047B3C570BC2CEE5699145E8780B02000000
-random_padding_bytes = DEF43E9633F3C629CCDB795626418EC6E43810811311F9D038ACCE99AF060EDDF11A098AD4758A294E5366B5E0589387F4696C92E1C4A57F5F30877C7C3C1444DBE0E4F3AA1A0094AA605D830A6A225ED7EB9702729C54A29D11F333
+
data = 955FF5A90816086AF8564E3E97000000043FFF035F00000004582307C9000000335E995932B97AB0F4998B4979A98AB81D2A194339EBD20503B5CB189EDE22741688B57021F1B75478B1AF4201EF0C39B3A0087DBFDB4EE9E8B364436F91E01902000000
+random_padding_bytes = 03C3525F2E8094596546A1360C6AB351EEACC6530CB815E42FCAFB26E832F1F80339BCA128975C48984B2FAF137E4F0E1AD265155E78E2886FDD0FDBB5E96E2A6314725020837EBF1CDE644D45513BE477569CBA041DE7779AD5B536

And this is the output:

-
encrypted_data = 211A7F48B2502585FDD2FF0908E06F547EC7A78373635DD8EBEF7D4791133E7BCD5380BF1324F78544718922D6981E98B494CA72DA974B0AFFEAF3703FF6B52B16747175F69FF81DC83AA37F2730915FF2AD834A575768080B921DAE23E0B5A7F07E7B1D605EB991473B702BBCF184A8F9D757F85C215195DCF089422572FEF35B9375F449EDDE40E487C6974AF39699ACB7569C311871003E921683360FF316E5792ABEC630D64FA5D684831801A329EA1A192ED520776DC55D918E454B12CAE4D9D67300B5A1D743DA9DF32AD9E61B051BB11CAB7B5AE8A680B757AD64F5529A1BFC85B0EC08872E4BD3A7FCF5239610423EDBEF1BFFFA53FC1C105ED89479
+
encrypted_data = 2729BF829FFFB5D06241439874A5AE5CE5F7F6E22DBD98E60566E2AEA4B43793BAF98CD5A35FAF3C9EF5BD9D9B2DFF7BD3B58C08EE9D6F382260822C2B45C918E03B51A855FD16F29B81476B56F36507EE92DFF1603BAFA739A8109F5C0244471BAFD3F62DA29804E346A031DC0BEAC6D66300677CCF6ECD76D26B42A3029B079BA94693E16A04EB9CA7507A0423CA26DB77212970D41B76904935E79AC7458A7BC8F0262ED81292BAA715C69A86F255EA22EE777E243866E5D61BE5921DA6369EF6417450829278AA020E5B1D2182B5BFB9A1E9ED8F526109FCAE381B684AD0936371E09088FBF399AF804FC7A45191EFCE78EE75F8B615F6A60D53D1D15275

The length of the final string is 256 bytes.

5) Send req_DH_params query with generated encrypted_data

Sent payload (excluding transport headers/trailers):

-
0000 | 00 00 00 00 00 00 00 00 44 A8 0B 00 46 E5 70 65
-0010 | 40 01 00 00 BE E4 12 D7 0A 95 A3 0D D1 75 4A BF
-0020 | 28 3B CE 96 F3 B3 EB 42 14 B7 7C B9 1E FB E6 D3
-0030 | F5 CF 06 3E 93 8C 11 B7 04 3F E3 73 35 00 00 00
-0040 | 04 70 95 B3 99 00 00 00 85 FD 64 DE 85 1D 9D D0
-0050 | FE 00 01 00 21 1A 7F 48 B2 50 25 85 FD D2 FF 09
-0060 | 08 E0 6F 54 7E C7 A7 83 73 63 5D D8 EB EF 7D 47
-0070 | 91 13 3E 7B CD 53 80 BF 13 24 F7 85 44 71 89 22
-0080 | D6 98 1E 98 B4 94 CA 72 DA 97 4B 0A FF EA F3 70
-0090 | 3F F6 B5 2B 16 74 71 75 F6 9F F8 1D C8 3A A3 7F
-00A0 | 27 30 91 5F F2 AD 83 4A 57 57 68 08 0B 92 1D AE
-00B0 | 23 E0 B5 A7 F0 7E 7B 1D 60 5E B9 91 47 3B 70 2B
-00C0 | BC F1 84 A8 F9 D7 57 F8 5C 21 51 95 DC F0 89 42
-00D0 | 25 72 FE F3 5B 93 75 F4 49 ED DE 40 E4 87 C6 97
-00E0 | 4A F3 96 99 AC B7 56 9C 31 18 71 00 3E 92 16 83
-00F0 | 36 0F F3 16 E5 79 2A BE C6 30 D6 4F A5 D6 84 83
-0100 | 18 01 A3 29 EA 1A 19 2E D5 20 77 6D C5 5D 91 8E
-0110 | 45 4B 12 CA E4 D9 D6 73 00 B5 A1 D7 43 DA 9D F3
-0120 | 2A D9 E6 1B 05 1B B1 1C AB 7B 5A E8 A6 80 B7 57
-0130 | AD 64 F5 52 9A 1B FC 85 B0 EC 08 87 2E 4B D3 A7
-0140 | FC F5 23 96 10 42 3E DB EF 1B FF FA 53 FC 1C 10
-0150 | 5E D8 94 79
+
0000 | 00 00 00 00 00 00 00 00 9C 3F 04 00 A3 F9 70 65
+0010 | 40 01 00 00 BE E4 12 D7 33 5E 99 59 32 B9 7A B0
+0020 | F4 99 8B 49 79 A9 8A B8 1D 2A 19 43 39 EB D2 05
+0030 | 03 B5 CB 18 9E DE 22 74 04 3F FF 03 5F 00 00 00
+0040 | 04 58 23 07 C9 00 00 00 85 FD 64 DE 85 1D 9D D0
+0050 | FE 00 01 00 27 29 BF 82 9F FF B5 D0 62 41 43 98
+0060 | 74 A5 AE 5C E5 F7 F6 E2 2D BD 98 E6 05 66 E2 AE
+0070 | A4 B4 37 93 BA F9 8C D5 A3 5F AF 3C 9E F5 BD 9D
+0080 | 9B 2D FF 7B D3 B5 8C 08 EE 9D 6F 38 22 60 82 2C
+0090 | 2B 45 C9 18 E0 3B 51 A8 55 FD 16 F2 9B 81 47 6B
+00A0 | 56 F3 65 07 EE 92 DF F1 60 3B AF A7 39 A8 10 9F
+00B0 | 5C 02 44 47 1B AF D3 F6 2D A2 98 04 E3 46 A0 31
+00C0 | DC 0B EA C6 D6 63 00 67 7C CF 6E CD 76 D2 6B 42
+00D0 | A3 02 9B 07 9B A9 46 93 E1 6A 04 EB 9C A7 50 7A
+00E0 | 04 23 CA 26 DB 77 21 29 70 D4 1B 76 90 49 35 E7
+00F0 | 9A C7 45 8A 7B C8 F0 26 2E D8 12 92 BA A7 15 C6
+0100 | 9A 86 F2 55 EA 22 EE 77 7E 24 38 66 E5 D6 1B E5
+0110 | 92 1D A6 36 9E F6 41 74 50 82 92 78 AA 02 0E 5B
+0120 | 1D 21 82 B5 BF B9 A1 E9 ED 8F 52 61 09 FC AE 38
+0130 | 1B 68 4A D0 93 63 71 E0 90 88 FB F3 99 AF 80 4F
+0140 | C7 A4 51 91 EF CE 78 EE 75 F8 B6 15 F6 A6 0D 53
+0150 | D1 D1 52 75

Payload (de)serialization:

req_DH_params#d712e4be nonce:int128 server_nonce:int128 p:string q:string public_key_fingerprint:long encrypted_data:string = Server_DH_Params;
message_id 8, 8745F020046E57065983F0400A3F97065 Message ID generated as specified here » (unixtime() << 32) + (N*4)
nonce 24, 160A95A30DD1754ABF283BCE96F3B3EB42335E995932B97AB0F4998B4979A98AB8 Random number
message_id 8, 801947DA246E5706501B469C6A3F97065 Message ID generated as specified here » (unixtime() << 32) + (N*4)
message_length 16, 454000000 (84 in decimal)94000000 (148 in decimal) Message body length
nonce 24, 160A95A30DD1754ABF283BCE96F3B3EB42335E995932B97AB0F4998B4979A98AB8 Value generated by client in Step 1
server_nonce 40, 1614B77CB91EFBE6D3F5CF063E938C11B71D2A194339EBD20503B5CB189EDE2274 Server-generated random number
pq 56, 12081C18DE9B7656E9AD000000
TL byte deserialization
=> bigendian conversion to decimal
=> 2024612791789742509
0816086AF8564E3E97000000
TL byte deserialization
=> bigendian conversion to decimal
=> 1587636483480501911
Single-byte prefix denoting length, an 8-byte string, and three bytes of padding
pq 4, 12081C18DE9B7656E9AD000000
TL byte deserialization
=> bigendian conversion to decimal
=> 2024612791789742509
0816086AF8564E3E97000000
TL byte deserialization
=> bigendian conversion to decimal
=> 1587636483480501911
Single-byte prefix denoting length, 8-byte string, and three bytes of padding
p 16, 8043FE37335000000
TL byte deserialization
=> bigendian conversion to decimal
=> 1071870773
043FFF035F000000
TL byte deserialization
=> bigendian conversion to decimal
=> 1073677151
First prime cofactor: single-byte prefix denoting length, 4-byte string, and three bytes of padding
q 24, 8047095B399000000
TL byte deserialization
=> bigendian conversion to decimal
=> 1888859033
04582307C9000000
TL byte deserialization
=> bigendian conversion to decimal
=> 1478690761
Second prime cofactor: single-byte prefix denoting length, 4-byte string, and three bytes of padding
nonce 32, 160A95A30DD1754ABF283BCE96F3B3EB42335E995932B97AB0F4998B4979A98AB8 Value generated by client in Step 1
server_nonce 48, 1614B77CB91EFBE6D3F5CF063E938C11B71D2A194339EBD20503B5CB189EDE2274 Value received from server in Step 2
new_nonce 64, 32B43580BFE4FC5A8D683018B412266D99 626F047B3C570BC2CEE5699145E8780B1688B57021F1B75478B1AF4201EF0C39 B3A0087DBFDB4EE9E8B364436F91E019 Client-generated random number
@@ -345,7 +345,7 @@ random_padding_bytes = DEF43E9633F3C629CCDB795626418EC6E43810811311F9D038ACCE99A - + @@ -363,25 +363,25 @@ random_padding_bytes = DEF43E9633F3C629CCDB795626418EC6E43810811311F9D038ACCE99A - + - + - + - + @@ -393,7 +393,7 @@ random_padding_bytes = DEF43E9633F3C629CCDB795626418EC6E43810811311F9D038ACCE99A - + @@ -402,47 +402,47 @@ random_padding_bytes = DEF43E9633F3C629CCDB795626418EC6E43810811311F9D038ACCE99A
6) Server responds with:

Received payload (excluding transport headers/trailers):

-
0000 | 00 00 00 00 00 00 00 00 01 08 1B 63 47 E5 70 65
-0010 | C0 02 00 00 5C 07 E8 D0 0A 95 A3 0D D1 75 4A BF
-0020 | 28 3B CE 96 F3 B3 EB 42 14 B7 7C B9 1E FB E6 D3
-0030 | F5 CF 06 3E 93 8C 11 B7 FE 50 02 00 7C E4 65 BC
-0040 | 91 5E B0 CD 93 47 2D 2C 20 35 63 D7 64 25 D5 AC
-0050 | B9 FB 41 50 17 47 DD 7F B0 CC BB 12 97 AE 28 12
-0060 | D1 5D 3A 67 E0 AF DD D7 D7 78 35 2D AD 8C 74 82
-0070 | 3A 39 A5 66 94 A5 31 1A 04 1B C9 6F 52 49 B9 BC
-0080 | 63 31 F0 FF 90 02 13 C9 BE 6C 88 D2 B1 61 94 CA
-0090 | CD A2 A1 A7 30 EE ED 93 77 42 D4 7A CB 3F 6F 15
-00A0 | 74 75 ED 09 3A 1D 50 98 F7 9E ED C5 14 61 AB EC
-00B0 | BA 88 D1 19 A1 E7 BA F7 C2 59 3E DE CE 66 69 38
-00C0 | 8F 80 D3 F5 C2 99 C3 90 D3 AD E1 3F E4 22 23 1B
-00D0 | 71 6D 3E 1C 69 91 5B 70 17 CD 6E 14 A8 5B 86 58
-00E0 | C4 34 4A 23 8E 5F C8 73 EE 64 CE 68 D6 FB AF 07
-00F0 | C8 2D E0 EC E4 D8 9C 9E 26 68 B6 FA B1 BA D5 A2
-0100 | 63 DD 6D 17 14 94 6B C8 42 7A 8F 82 A1 D4 61 D7
-0110 | 9E 78 BE 3A 22 0D BF 54 84 3E B8 E2 27 80 E5 34
-0120 | C7 67 87 18 E9 BA 00 19 A9 D7 06 B5 E9 04 A8 C6
-0130 | 5C 57 25 67 D4 7F CB 94 9F 93 B4 FA E7 AB 5D 6E
-0140 | 6B 91 DE E1 7C BB 40 20 40 92 23 C8 67 FD 77 B3
-0150 | 36 59 96 49 1B 26 6A 9C FC 9D BA 86 5D 8E 20 60
-0160 | 37 0F AF 5C 66 DD 7F F9 8C BE E4 EB 76 CB C6 63
-0170 | 80 9B 41 36 82 BE FC 21 03 22 05 E0 82 23 50 AA
-0180 | 06 69 0E 89 C0 66 1F 3F B5 88 A6 18 61 48 48 12
-0190 | A9 96 B8 24 78 71 DF 17 24 EE 98 DA D1 3F 3F AC
-01A0 | D6 FB 1A 28 56 01 B0 92 61 8A BB 19 0F 2B 8D 8A
-01B0 | 40 52 68 5B 6F 4A 3C DE F0 01 0F BE 49 97 52 6D
-01C0 | 50 B9 14 5F 05 0A 0C 02 54 28 BA 27 4B 85 55 8E
-01D0 | 10 CE 85 6C 61 89 04 2E A8 D1 E8 22 64 FB F1 06
-01E0 | C2 5D F5 94 08 CE 45 B9 AE F2 A9 E4 FA 23 84 FE
-01F0 | 48 85 EB F7 4E 44 D1 7B 2E 3B 58 B4 6B F6 AB 02
-0200 | E8 9F 5A 56 F8 FB 54 89 C6 11 AA 12 42 49 7B 4D
-0210 | 13 AD DD 3D 30 C3 8F FF A1 AA 62 FC 03 50 28 8D
-0220 | 29 93 14 A3 48 BB 53 17 AD F6 59 1D A5 02 5F CC
-0230 | A3 5C FA A0 D4 BF B4 0A 9B 31 0A BB 10 E8 0B 97
-0240 | 4D AC 3C 3A 62 87 C2 47 1B D9 7D 68 D2 B7 46 9D
-0250 | 02 85 E8 1E 47 3B 46 0B C3 53 8E 2A E5 25 51 42
-0260 | EA 8D 13 A7 64 C7 40 F9 3C 5A 5F A6 4E 9C 0A F0
-0270 | A4 2D 7C 27 DF FC 86 A2 92 57 B8 6E E4 D8 CC 77
-0280 | 90 E0 E8 03 F3 48 49 6F A1 AA BB B0
+
0000 | 00 00 00 00 00 00 00 00 01 74 0C 57 A4 F9 70 65
+0010 | C8 02 00 00 5C 07 E8 D0 33 5E 99 59 32 B9 7A B0
+0020 | F4 99 8B 49 79 A9 8A B8 1D 2A 19 43 39 EB D2 05
+0030 | 03 B5 CB 18 9E DE 22 74 FE 50 02 00 4B A8 5D EB
+0040 | AA D7 29 5D 89 25 71 4C FD A1 C2 6B F6 96 07 54
+0050 | A4 CF AB 54 B5 25 C4 ED 4C 61 85 67 E5 47 47 2D
+0060 | 60 B6 F2 E7 91 62 42 A3 E6 B6 83 A2 A9 FF EB A0
+0070 | 61 00 F5 B3 C2 A8 FE 0B EF A3 E4 CF 63 F3 7D 91
+0080 | 1F 80 F1 FF 95 CD 1D 2D 0A 1A EF B4 F2 69 97 B0
+0090 | 92 80 C9 54 01 A6 AE 10 35 16 76 32 06 12 22 8B
+00A0 | 03 62 03 E0 64 4A BA 17 87 40 96 ED 5A 6A 0D DB
+00B0 | AA 42 0A C6 D0 D4 43 16 B7 9A 8A D4 A0 F3 AD 8F
+00C0 | E5 8A 8D 39 B1 3A 91 E5 A4 22 BC 1D F1 06 D7 AF
+00D0 | D6 A4 58 0A 26 46 3F 79 33 3D A8 24 79 87 79 03
+00E0 | 63 31 11 81 03 AB AC CB 76 8D A5 1C AF FA B7 AD
+00F0 | 96 6E 79 FA C3 95 F1 6F A2 C7 5F A5 57 75 E7 8F
+0100 | CF 2C 37 C8 1A 5A 6D D7 6B 27 91 80 38 F7 F9 6A
+0110 | 38 20 C9 51 78 59 6F 95 86 D5 00 43 EC 98 CE 01
+0120 | F7 7F E2 8D 7F 58 70 16 A9 51 E6 33 C9 2D 3F FE
+0130 | D7 61 EE A2 68 F2 40 88 F7 E9 43 48 09 D0 4D 58
+0140 | 64 7D 5A AA B1 DB 10 F1 B7 0E 06 9D 9F DB 1F DB
+0150 | 1B 4A 99 3F CA 5E 40 C3 E4 68 28 9C 63 F4 7E 75
+0160 | 7C 30 63 52 12 7B D7 56 EF E0 F5 C0 6C DC 5B 0E
+0170 | C0 C4 BD 1A B7 13 E5 FA B4 3B 0A EA 24 8F 0F DB
+0180 | 5F 79 D9 90 A4 37 32 DE 0B 13 A9 7B 4D C1 D5 B7
+0190 | EF 82 82 F0 32 D0 1D 03 FD B1 41 41 FF E4 E5 54
+01A0 | 5E EA 5C 26 CF D3 23 4A BC C0 7D 0A F3 18 76 90
+01B0 | D9 B1 E7 8D 7F E0 E2 75 CF 64 EB 43 6D E7 E6 7C
+01C0 | EE C5 63 BD 9B 1B 60 4E CD AE 34 60 EC 34 DD A2
+01D0 | 4F 15 BE 19 11 BA 47 58 17 31 39 68 FA 9F D7 3D
+01E0 | 4A A6 C0 E1 50 4C 77 6A 84 99 7A 64 85 D7 55 4F
+01F0 | 90 3C CB 73 B6 12 2A 5D 22 82 72 8D 75 7E 3B B1
+0200 | B1 34 2C AF EC B6 F2 AF B3 3A F6 C2 D8 49 D6 91
+0210 | F9 2F 9E 06 F1 F0 1F A2 A4 6D 52 A6 AA 96 F4 E3
+0220 | 7B 1E DF EB 5B CE C6 E6 3B 5B 0C 34 BE 19 1A AF
+0230 | 20 57 08 AD 29 55 28 E5 22 AD D2 39 2B 8E 98 66
+0240 | 34 19 A3 87 1E 0A F5 72 98 46 5A 19 33 14 EC D8
+0250 | 87 02 7B 37 91 2C 7D 9D 72 4A A1 9B AF 6D 56 CB
+0260 | 66 1C 51 47 D1 A8 B0 73 0A DE 8F B9 AA C8 18 D2
+0270 | 4B E8 C8 34 D2 1F 47 7F 46 04 56 A3 EE 3C F3 EA
+0280 | FC 5E 58 E9 E2 23 95 19 58 70 41 68

Payload (de)serialization:

server_DH_params_ok#d0e8075c nonce:int128 server_nonce:int128 encrypted_answer:string = Server_DH_Params;
message_id 8, 844A80B0046E570659C3F0400A3F97065 Message ID generated as specified here » (unixtime() << 32) + (N*4)
nonce 24, 160A95A30DD1754ABF283BCE96F3B3EB42335E995932B97AB0F4998B4979A98AB8 Value generated by client in Step 1
server_nonce 40, 1614B77CB91EFBE6D3F5CF063E938C11B71D2A194339EBD20503B5CB189EDE2274 Value received from server in Step 2
p 56, 8043FE37335000000
TL byte deserialization
=> bigendian conversion to decimal
=> 1071870773
043FFF035F000000
TL byte deserialization
=> bigendian conversion to decimal
=> 1073677151
First prime cofactor: single-byte prefix denoting length, 4-byte string, and three bytes of padding
q 64, 8047095B399000000
TL byte deserialization
=> bigendian conversion to decimal
=> 1888859033
04582307C9000000
TL byte deserialization
=> bigendian conversion to decimal
=> 1478690761
Second prime cofactor: single-byte prefix denoting length, 4-byte string, and three bytes of padding
encrypted_data 80, 260FE000100211A7F48B2502585FDD2FF09 08E06F547EC7A78373635DD8EBEF7D47 91133E7BCD5380BF1324F78544718922 D6981E98B494CA72DA974B0AFFEAF370 3FF6B52B16747175F69FF81DC83AA37F 2730915FF2AD834A575768080B921DAE 23E0B5A7F07E7B1D605EB991473B702B BCF184A8F9D757F85C215195DCF08942 2572FEF35B9375F449EDDE40E487C697 4AF39699ACB7569C311871003E921683 360FF316E5792ABEC630D64FA5D68483 1801A329EA1A192ED520776DC55D918E 454B12CAE4D9D67300B5A1D743DA9DF3 2AD9E61B051BB11CAB7B5AE8A680B757 AD64F5529A1BFC85B0EC08872E4BD3A7 FCF5239610423EDBEF1BFFFA53FC1C10
5ED89479
FE0001002729BF829FFFB5D062414398 74A5AE5CE5F7F6E22DBD98E60566E2AE A4B43793BAF98CD5A35FAF3C9EF5BD9D 9B2DFF7BD3B58C08EE9D6F382260822C 2B45C918E03B51A855FD16F29B81476B 56F36507EE92DFF1603BAFA739A8109F 5C0244471BAFD3F62DA29804E346A031 DC0BEAC6D66300677CCF6ECD76D26B42 A3029B079BA94693E16A04EB9CA7507A 0423CA26DB77212970D41B76904935E7 9AC7458A7BC8F0262ED81292BAA715C6 9A86F255EA22EE777E243866E5D61BE5 921DA6369EF6417450829278AA020E5B 1D2182B5BFB9A1E9ED8F526109FCAE38 1B684AD0936371E09088FBF399AF804F C7A45191EFCE78EE75F8B615F6A60D53
D1D15275
Value generated above
@@ -464,13 +464,13 @@ random_padding_bytes = DEF43E9633F3C629CCDB795626418EC6E43810811311F9D038ACCE99A - + - + @@ -482,19 +482,19 @@ random_padding_bytes = DEF43E9633F3C629CCDB795626418EC6E43810811311F9D038ACCE99A - + - + - + @@ -502,20 +502,20 @@ random_padding_bytes = DEF43E9633F3C629CCDB795626418EC6E43810811311F9D038ACCE99A

Decrypt encrypted_answer using the reverse of the process specified in step 6:

-
encrypted_answer = 7CE465BC915EB0CD93472D2C203563D76425D5ACB9FB41501747DD7FB0CCBB1297AE2812D15D3A67E0AFDDD7D778352DAD8C74823A39A56694A5311A041BC96F5249B9BC6331F0FF900213C9BE6C88D2B16194CACDA2A1A730EEED937742D47ACB3F6F157475ED093A1D5098F79EEDC51461ABECBA88D119A1E7BAF7C2593EDECE6669388F80D3F5C299C390D3ADE13FE422231B716D3E1C69915B7017CD6E14A85B8658C4344A238E5FC873EE64CE68D6FBAF07C82DE0ECE4D89C9E2668B6FAB1BAD5A263DD6D1714946BC8427A8F82A1D461D79E78BE3A220DBF54843EB8E22780E534C7678718E9BA0019A9D706B5E904A8C65C572567D47FCB949F93B4FAE7AB5D6E6B91DEE17CBB4020409223C867FD77B3365996491B266A9CFC9DBA865D8E2060370FAF5C66DD7FF98CBEE4EB76CBC663809B413682BEFC21032205E0822350AA06690E89C0661F3FB588A61861484812A996B8247871DF1724EE98DAD13F3FACD6FB1A285601B092618ABB190F2B8D8A4052685B6F4A3CDEF0010FBE4997526D50B9145F050A0C025428BA274B85558E10CE856C6189042EA8D1E82264FBF106C25DF59408CE45B9AEF2A9E4FA2384FE4885EBF74E44D17B2E3B58B46BF6AB02E89F5A56F8FB5489C611AA1242497B4D13ADDD3D30C38FFFA1AA62FC0350288D299314A348BB5317ADF6591DA5025FCCA35CFAA0D4BFB40A9B310ABB10E80B974DAC3C3A6287C2471BD97D68D2B7469D0285E81E473B460BC3538E2AE5255142EA8D13A764C740F93C5A5FA64E9C0AF0A42D7C27DFFC86A29257B86EE4D8CC7790E0E803F348496FA1AABBB0
-tmp_aes_key = 2328CFB62740758C72875FFA9F28954B0F484F3F8F08BA1D9777B83D72EAE49F
-tmp_aes_iv = B245F332C793EA0B889E6B792A56842E15EF79E8ACCA8AA4589FC64DB43580BF
+
encrypted_answer = 4BA85DEBAAD7295D8925714CFDA1C26BF6960754A4CFAB54B525C4ED4C618567E547472D60B6F2E7916242A3E6B683A2A9FFEBA06100F5B3C2A8FE0BEFA3E4CF63F37D911F80F1FF95CD1D2D0A1AEFB4F26997B09280C95401A6AE10351676320612228B036203E0644ABA17874096ED5A6A0DDBAA420AC6D0D44316B79A8AD4A0F3AD8FE58A8D39B13A91E5A422BC1DF106D7AFD6A4580A26463F79333DA824798779036331118103ABACCB768DA51CAFFAB7AD966E79FAC395F16FA2C75FA55775E78FCF2C37C81A5A6DD76B27918038F7F96A3820C95178596F9586D50043EC98CE01F77FE28D7F587016A951E633C92D3FFED761EEA268F24088F7E9434809D04D58647D5AAAB1DB10F1B70E069D9FDB1FDB1B4A993FCA5E40C3E468289C63F47E757C306352127BD756EFE0F5C06CDC5B0EC0C4BD1AB713E5FAB43B0AEA248F0FDB5F79D990A43732DE0B13A97B4DC1D5B7EF8282F032D01D03FDB14141FFE4E5545EEA5C26CFD3234ABCC07D0AF3187690D9B1E78D7FE0E275CF64EB436DE7E67CEEC563BD9B1B604ECDAE3460EC34DDA24F15BE1911BA475817313968FA9FD73D4AA6C0E1504C776A84997A6485D7554F903CCB73B6122A5D2282728D757E3BB1B1342CAFECB6F2AFB33AF6C2D849D691F92F9E06F1F01FA2A46D52A6AA96F4E37B1EDFEB5BCEC6E63B5B0C34BE191AAF205708AD295528E522ADD2392B8E98663419A3871E0AF57298465A193314ECD887027B37912C7D9D724AA19BAF6D56CB661C5147D1A8B0730ADE8FB9AAC818D24BE8C834D21F477F460456A3EE3CF3EAFC5E58E9E223951958704168
+tmp_aes_key = 9A4E3B9FFC93395AEF3A1A3D980C65B346AD55239764095BCE4CE82EF7D7B188
+tmp_aes_iv = 080199AE9E1B3CB91C6AECDD853F64F0A82A203CC088FA0F2D8F19D71688B570

Yielding:

-
answer_with_hash = 046C206B00FE2C32D4702997F69F6D333230EBD4BA0D89B50A95A30DD1754ABF283BCE96F3B3EB4214B77CB91EFBE6D3F5CF063E938C11B703000000FE000100C71CAEB9C6B1C9048E6C522F70F13F73980D40238E3E21C14934D037563D930F48198A0AA7C14058229493D22530F4DBFA336F6E0AC925139543AED44CCE7C3720FD51F69458705AC68CD4FE6B6B13ABDC9746512969328454F18FAF8C595F642477FE96BB2A941D5BCD1D4AC8CC49880708FA9B378E3C4F3A9060BEE67CF9A4A4A695811051907E162753B56B0F6B410DBA74D8A84B2A14B3144E0EF1284754FD17ED950D5965B4B9DD46582DB1178D169C6BC465B0D6FF9CA3928FEF5B9AE4E418FC15E83EBEA0F87FA9FF5EED70050DED2849F47BF959D956850CE929851F0D8115F635B105EE2E4E15D04B2454BF6F4FADF034B10403119CD8E3B92FCC5BFE000100568755DD212BB5081F78AB938D3E0A63F12D552D0F83FD9794E027AC2590D514CD86BEF1B089E2F78311BB7DA0573C13DF3CE3FE0794F5D6F414D53C8F45F4549251DF16123793B80F11322C5DCE6007E4C62FA7713776BEEEC5DC9E48307495146854F60B3BB7052ABC300C46E57B212E59D6F6C2D2FF704D98888D71CAF958813BED9D916E439AD02A9FA70678454E0C92885E3193FCA553181EE515721688AFAFF9E7527B467B45A0A45A6F3BB0A8616646B6D5B7C71406C3D7AE232E7A5F78B0CDF39A9EC8E3651733A351C6EECA792C58A02C6AC2077714CDB322A50CAD2F28FF307F658DABF2EDA874E65D5A7361F6D779D52F87B08DA77D0D82DAFAE647E5706584CA5D5CFB33E47E
-answer = BA0D89B50A95A30DD1754ABF283BCE96F3B3EB4214B77CB91EFBE6D3F5CF063E938C11B703000000FE000100C71CAEB9C6B1C9048E6C522F70F13F73980D40238E3E21C14934D037563D930F48198A0AA7C14058229493D22530F4DBFA336F6E0AC925139543AED44CCE7C3720FD51F69458705AC68CD4FE6B6B13ABDC9746512969328454F18FAF8C595F642477FE96BB2A941D5BCD1D4AC8CC49880708FA9B378E3C4F3A9060BEE67CF9A4A4A695811051907E162753B56B0F6B410DBA74D8A84B2A14B3144E0EF1284754FD17ED950D5965B4B9DD46582DB1178D169C6BC465B0D6FF9CA3928FEF5B9AE4E418FC15E83EBEA0F87FA9FF5EED70050DED2849F47BF959D956850CE929851F0D8115F635B105EE2E4E15D04B2454BF6F4FADF034B10403119CD8E3B92FCC5BFE000100568755DD212BB5081F78AB938D3E0A63F12D552D0F83FD9794E027AC2590D514CD86BEF1B089E2F78311BB7DA0573C13DF3CE3FE0794F5D6F414D53C8F45F4549251DF16123793B80F11322C5DCE6007E4C62FA7713776BEEEC5DC9E48307495146854F60B3BB7052ABC300C46E57B212E59D6F6C2D2FF704D98888D71CAF958813BED9D916E439AD02A9FA70678454E0C92885E3193FCA553181EE515721688AFAFF9E7527B467B45A0A45A6F3BB0A8616646B6D5B7C71406C3D7AE232E7A5F78B0CDF39A9EC8E3651733A351C6EECA792C58A02C6AC2077714CDB322A50CAD2F28FF307F658DABF2EDA874E65D5A7361F6D779D52F87B08DA77D0D82DAFAE647E5706584CA5D5CFB33E47E
+
answer_with_hash = 4F41A8F58B280F61F9863375C4A4600B8026DA08BA0D89B5335E995932B97AB0F4998B4979A98AB81D2A194339EBD20503B5CB189EDE227403000000FE000100C71CAEB9C6B1C9048E6C522F70F13F73980D40238E3E21C14934D037563D930F48198A0AA7C14058229493D22530F4DBFA336F6E0AC925139543AED44CCE7C3720FD51F69458705AC68CD4FE6B6B13ABDC9746512969328454F18FAF8C595F642477FE96BB2A941D5BCD1D4AC8CC49880708FA9B378E3C4F3A9060BEE67CF9A4A4A695811051907E162753B56B0F6B410DBA74D8A84B2A14B3144E0EF1284754FD17ED950D5965B4B9DD46582DB1178D169C6BC465B0D6FF9CA3928FEF5B9AE4E418FC15E83EBEA0F87FA9FF5EED70050DED2849F47BF959D956850CE929851F0D8115F635B105EE2E4E15D04B2454BF6F4FADF034B10403119CD8E3B92FCC5BFE00010061DEE10F675855ACEFA2B2CA3A0D3354652CB75AD6A4D7CF83F8C62E667ACCA6F039DBA4E8B692A7441CC327A6E7ECF65ECE1F383DE9AB38A7439AE73EC90B02A824F1D64C9FA19C057875AF619621147B5B05A0DB1B0B27A74070C45E30042D2AA455DFA899DFA163C5E0F42F90C94F5BD2E4F689D42EBD1ABF7AB843DEBA27C14060ABCAF569D5B517444B900B1428C8986E46F4985C30C50CEC973F6C2A91AE8EE830E9F4931E84D237872700E547A2424BFDFA35D897ACDD78B6B137A5FCE31FD5A3228575204798E40CD545D309EB82222F3C9EA9568ABF70A5209CF379AC9B1669D6708938A47161F1FE51C48014183D2354953CC6897175B60AC1F191A4F97065B17BBA6E0D1ADED0
+answer = BA0D89B5335E995932B97AB0F4998B4979A98AB81D2A194339EBD20503B5CB189EDE227403000000FE000100C71CAEB9C6B1C9048E6C522F70F13F73980D40238E3E21C14934D037563D930F48198A0AA7C14058229493D22530F4DBFA336F6E0AC925139543AED44CCE7C3720FD51F69458705AC68CD4FE6B6B13ABDC9746512969328454F18FAF8C595F642477FE96BB2A941D5BCD1D4AC8CC49880708FA9B378E3C4F3A9060BEE67CF9A4A4A695811051907E162753B56B0F6B410DBA74D8A84B2A14B3144E0EF1284754FD17ED950D5965B4B9DD46582DB1178D169C6BC465B0D6FF9CA3928FEF5B9AE4E418FC15E83EBEA0F87FA9FF5EED70050DED2849F47BF959D956850CE929851F0D8115F635B105EE2E4E15D04B2454BF6F4FADF034B10403119CD8E3B92FCC5BFE00010061DEE10F675855ACEFA2B2CA3A0D3354652CB75AD6A4D7CF83F8C62E667ACCA6F039DBA4E8B692A7441CC327A6E7ECF65ECE1F383DE9AB38A7439AE73EC90B02A824F1D64C9FA19C057875AF619621147B5B05A0DB1B0B27A74070C45E30042D2AA455DFA899DFA163C5E0F42F90C94F5BD2E4F689D42EBD1ABF7AB843DEBA27C14060ABCAF569D5B517444B900B1428C8986E46F4985C30C50CEC973F6C2A91AE8EE830E9F4931E84D237872700E547A2424BFDFA35D897ACDD78B6B137A5FCE31FD5A3228575204798E40CD545D309EB82222F3C9EA9568ABF70A5209CF379AC9B1669D6708938A47161F1FE51C48014183D2354953CC6897175B60AC1F191A4F97065B17BBA6E0D1ADED0

Generated payload (excluding transport headers/trailers):

-
0000 | BA 0D 89 B5 0A 95 A3 0D D1 75 4A BF 28 3B CE 96
-0010 | F3 B3 EB 42 14 B7 7C B9 1E FB E6 D3 F5 CF 06 3E
-0020 | 93 8C 11 B7 03 00 00 00 FE 00 01 00 C7 1C AE B9
+
0000 | BA 0D 89 B5 33 5E 99 59 32 B9 7A B0 F4 99 8B 49
+0010 | 79 A9 8A B8 1D 2A 19 43 39 EB D2 05 03 B5 CB 18
+0020 | 9E DE 22 74 03 00 00 00 FE 00 01 00 C7 1C AE B9
 0030 | C6 B1 C9 04 8E 6C 52 2F 70 F1 3F 73 98 0D 40 23
 0040 | 8E 3E 21 C1 49 34 D0 37 56 3D 93 0F 48 19 8A 0A
 0050 | A7 C1 40 58 22 94 93 D2 25 30 F4 DB FA 33 6F 6E
@@ -532,23 +532,23 @@ answer = BA0D89B50A95A30DD1754ABF283BCE96F3B3EB4214B77CB91EFBE6D3F5CF063E938C11B
 0100 | F4 7B F9 59 D9 56 85 0C E9 29 85 1F 0D 81 15 F6
 0110 | 35 B1 05 EE 2E 4E 15 D0 4B 24 54 BF 6F 4F AD F0
 0120 | 34 B1 04 03 11 9C D8 E3 B9 2F CC 5B FE 00 01 00
-0130 | 56 87 55 DD 21 2B B5 08 1F 78 AB 93 8D 3E 0A 63
-0140 | F1 2D 55 2D 0F 83 FD 97 94 E0 27 AC 25 90 D5 14
-0150 | CD 86 BE F1 B0 89 E2 F7 83 11 BB 7D A0 57 3C 13
-0160 | DF 3C E3 FE 07 94 F5 D6 F4 14 D5 3C 8F 45 F4 54
-0170 | 92 51 DF 16 12 37 93 B8 0F 11 32 2C 5D CE 60 07
-0180 | E4 C6 2F A7 71 37 76 BE EE C5 DC 9E 48 30 74 95
-0190 | 14 68 54 F6 0B 3B B7 05 2A BC 30 0C 46 E5 7B 21
-01A0 | 2E 59 D6 F6 C2 D2 FF 70 4D 98 88 8D 71 CA F9 58
-01B0 | 81 3B ED 9D 91 6E 43 9A D0 2A 9F A7 06 78 45 4E
-01C0 | 0C 92 88 5E 31 93 FC A5 53 18 1E E5 15 72 16 88
-01D0 | AF AF F9 E7 52 7B 46 7B 45 A0 A4 5A 6F 3B B0 A8
-01E0 | 61 66 46 B6 D5 B7 C7 14 06 C3 D7 AE 23 2E 7A 5F
-01F0 | 78 B0 CD F3 9A 9E C8 E3 65 17 33 A3 51 C6 EE CA
-0200 | 79 2C 58 A0 2C 6A C2 07 77 14 CD B3 22 A5 0C AD
-0210 | 2F 28 FF 30 7F 65 8D AB F2 ED A8 74 E6 5D 5A 73
-0220 | 61 F6 D7 79 D5 2F 87 B0 8D A7 7D 0D 82 DA FA E6
-0230 | 47 E5 70 65
+0130 | 61 DE E1 0F 67 58 55 AC EF A2 B2 CA 3A 0D 33 54 +0140 | 65 2C B7 5A D6 A4 D7 CF 83 F8 C6 2E 66 7A CC A6 +0150 | F0 39 DB A4 E8 B6 92 A7 44 1C C3 27 A6 E7 EC F6 +0160 | 5E CE 1F 38 3D E9 AB 38 A7 43 9A E7 3E C9 0B 02 +0170 | A8 24 F1 D6 4C 9F A1 9C 05 78 75 AF 61 96 21 14 +0180 | 7B 5B 05 A0 DB 1B 0B 27 A7 40 70 C4 5E 30 04 2D +0190 | 2A A4 55 DF A8 99 DF A1 63 C5 E0 F4 2F 90 C9 4F +01A0 | 5B D2 E4 F6 89 D4 2E BD 1A BF 7A B8 43 DE BA 27 +01B0 | C1 40 60 AB CA F5 69 D5 B5 17 44 4B 90 0B 14 28 +01C0 | C8 98 6E 46 F4 98 5C 30 C5 0C EC 97 3F 6C 2A 91 +01D0 | AE 8E E8 30 E9 F4 93 1E 84 D2 37 87 27 00 E5 47 +01E0 | A2 42 4B FD FA 35 D8 97 AC DD 78 B6 B1 37 A5 FC +01F0 | E3 1F D5 A3 22 85 75 20 47 98 E4 0C D5 45 D3 09 +0200 | EB 82 22 2F 3C 9E A9 56 8A BF 70 A5 20 9C F3 79 +0210 | AC 9B 16 69 D6 70 89 38 A4 71 61 F1 FE 51 C4 80 +0220 | 14 18 3D 23 54 95 3C C6 89 71 75 B6 0A C1 F1 91 +0230 | A4 F9 70 65

Payload (de)serialization:

server_DH_inner_data#b5890dba nonce:int128 server_nonce:int128 g:int dh_prime:string g_a:string server_time:int = Server_DH_inner_data;
message_id 8, 801081B6347E5706501740C57A4F97065 Message ID generated as specified here » (unixtime() << 32) + (N*4)
message_length 16, 4C0020000 (704 in decimal)C8020000 (712 in decimal) Message body length
nonce 24, 160A95A30DD1754ABF283BCE96F3B3EB42335E995932B97AB0F4998B4979A98AB8 Value generated by client in Step 1
server_nonce 40, 1614B77CB91EFBE6D3F5CF063E938C11B71D2A194339EBD20503B5CB189EDE2274 Value received from server in Step 2
encrypted_answer 56, 596FE5002007CE465BC915EB0CD93472D2C 203563D76425D5ACB9FB41501747DD7F B0CCBB1297AE2812D15D3A67E0AFDDD7 D778352DAD8C74823A39A56694A5311A 041BC96F5249B9BC6331F0FF900213C9 BE6C88D2B16194CACDA2A1A730EEED93 7742D47ACB3F6F157475ED093A1D5098 F79EEDC51461ABECBA88D119A1E7BAF7 C2593EDECE6669388F80D3F5C299C390 D3ADE13FE422231B716D3E1C69915B70 17CD6E14A85B8658C4344A238E5FC873 EE64CE68D6FBAF07C82DE0ECE4D89C9E 2668B6FAB1BAD5A263DD6D1714946BC8 427A8F82A1D461D79E78BE3A220DBF54 843EB8E22780E534C7678718E9BA0019 A9D706B5E904A8C65C572567D47FCB94 9F93B4FAE7AB5D6E6B91DEE17CBB4020 409223C867FD77B3365996491B266A9C FC9DBA865D8E2060370FAF5C66DD7FF9 8CBEE4EB76CBC663809B413682BEFC21 032205E0822350AA06690E89C0661F3F B588A61861484812A996B8247871DF17 24EE98DAD13F3FACD6FB1A285601B092 618ABB190F2B8D8A4052685B6F4A3CDE F0010FBE4997526D50B9145F050A0C02 5428BA274B85558E10CE856C6189042E A8D1E82264FBF106C25DF59408CE45B9 AEF2A9E4FA2384FE4885EBF74E44D17B 2E3B58B46BF6AB02E89F5A56F8FB5489 C611AA1242497B4D13ADDD3D30C38FFF A1AA62FC0350288D299314A348BB5317 ADF6591DA5025FCCA35CFAA0D4BFB40A 9B310ABB10E80B974DAC3C3A6287C247 1BD97D68D2B7469D0285E81E473B460B C3538E2AE5255142EA8D13A764C740F9 3C5A5FA64E9C0AF0A42D7C27DFFC86A2 9257B86EE4D8CC7790E0E803F348496F
A1AABBB0
FE5002004BA85DEBAAD7295D8925714C FDA1C26BF6960754A4CFAB54B525C4ED 4C618567E547472D60B6F2E7916242A3 E6B683A2A9FFEBA06100F5B3C2A8FE0B EFA3E4CF63F37D911F80F1FF95CD1D2D 0A1AEFB4F26997B09280C95401A6AE10 351676320612228B036203E0644ABA17 874096ED5A6A0DDBAA420AC6D0D44316 B79A8AD4A0F3AD8FE58A8D39B13A91E5 A422BC1DF106D7AFD6A4580A26463F79 333DA824798779036331118103ABACCB 768DA51CAFFAB7AD966E79FAC395F16F A2C75FA55775E78FCF2C37C81A5A6DD7 6B27918038F7F96A3820C95178596F95 86D50043EC98CE01F77FE28D7F587016 A951E633C92D3FFED761EEA268F24088 F7E9434809D04D58647D5AAAB1DB10F1 B70E069D9FDB1FDB1B4A993FCA5E40C3 E468289C63F47E757C306352127BD756 EFE0F5C06CDC5B0EC0C4BD1AB713E5FA B43B0AEA248F0FDB5F79D990A43732DE 0B13A97B4DC1D5B7EF8282F032D01D03 FDB14141FFE4E5545EEA5C26CFD3234A BCC07D0AF3187690D9B1E78D7FE0E275 CF64EB436DE7E67CEEC563BD9B1B604E CDAE3460EC34DDA24F15BE1911BA4758 17313968FA9FD73D4AA6C0E1504C776A 84997A6485D7554F903CCB73B6122A5D 2282728D757E3BB1B1342CAFECB6F2AF B33AF6C2D849D691F92F9E06F1F01FA2 A46D52A6AA96F4E37B1EDFEB5BCEC6E6 3B5B0C34BE191AAF205708AD295528E5 22ADD2392B8E98663419A3871E0AF572 98465A193314ECD887027B37912C7D9D 724AA19BAF6D56CB661C5147D1A8B073 0ADE8FB9AAC818D24BE8C834D21F477F 460456A3EE3CF3EAFC5E58E9E2239519
58704168
See below
@@ -570,13 +570,13 @@ answer = BA0D89B50A95A30DD1754ABF283BCE96F3B3EB4214B77CB91EFBE6D3F5CF063E938C11B - + - + @@ -594,13 +594,13 @@ answer = BA0D89B50A95A30DD1754ABF283BCE96F3B3EB4214B77CB91EFBE6D3F5CF063E938C11B - + - + @@ -609,34 +609,34 @@ answer = BA0D89B50A95A30DD1754ABF283BCE96F3B3EB4214B77CB91EFBE6D3F5CF063E938C11B
7) Client computes random 2048-bit number b (using a sufficient amount of entropy) and sends the server a message

First, generate a secure random 2048-bit number b:

-
b = 9033A9A81291FB69C8DE4F177AFF575EE3A18859009E9A9A5FA3DE161B05494A3578967746425F8A4499CF2088104E2E1DABDED50EB4E84F1CAB7D6F2412AC86F9CE0EC1F41DA233CFA6104F4D1B0992FF9BDDC12E1164CC59DAA74850792A1EFD145DC7975FC9D7DD2CF58613EEB482553A896C6E2B44A9A0D74C356BD5441C3E655FDCE84C5EADF7CC7CE418B67AABFE7513960742D1D43EE4CB57EDDE8D0A04DA31D4D715582194A055EC1F7869291C2C8AE5F335918B611EEB905C03084C47B355A7C0228533DABBC6C98FEB97B28A9200A3649F0BFB049632BC8278F0EEAAF39DA2DACA23C23B963F9ED61076A20B0E94B545E058CECF374053ED0CC1B4
+
b = 63CC5ECAEEEBD95B30776FD9AA8B616AD00CF1C6A68EB385433B30B9A15127F9402790A5F9E682AEB58F93D025B2F68989336B717B6EF35F648ABC8AC9D74491F287E05F0E598B2F37903063EE8982FD504F1C55E8852ECF511D80A5DB28E355A37490520AF3D941B790F6F29B4CF38EAE7D34B3CC87261C89706DF7D12758CD85E08DBFF2E2092319F53D37B623EB67941D00C743C46B4D61EAED4C1278A5F6F996B2C05F680D19DC37219C72EDCCFD29FA98E28B3D56B8C8EC6E6AC54B870BAE93923B2D9044690D3CA0B01CB75A9533484676677EDA1DB1E27DEC6AB00F8623B3FFDF8A592EFB4D83B032BD98B12278A9969CA7BAF766E190858CC480C24F

Then compute g_b = pow(g, b) mod dh_prime

-
g_b = B58BB862D3E785E98B302A637B5C17DD2F96979B87B93A6A28EC84162007ED36643D42EBF3ECD230CEF3AC57C1E56DB0102392F189B29A9D1EFF5EEE439C6251256A6B174D9182C03490DA9E0EC92AA6524909083CAA8BDBE7F3B34D13E5F6E9C1A4839D68D0A3B480FBB0279AF1A6B1E6BE422BC356A4D01DFBBE25A868295CADF41E1DACFCCC15FACC872AA0A14B2430509A6D33ADD1150BC839AD21854CF348F29D33BF6D86ED5BDB01ED51144150CE17983668E451DC2A0CA1040932095751D609B10F3F634626B5EA0FA6FE1F6E02372B4697A87910A4834A460ECB7F661D25CC139C5913A8E54618C7FC410D41525E5DCAA534D920C74CBD8D8D8663D5
+
g_b = 8D8BCF4B7E8CACB39C31454E2924A64BFD988D4A156175EBB0279F44E3D1FC9A142E635DCE46B2F10063EEB2AEC4BE6C041F0435D672AE4E72D9E73C87DF37245BE30C3008AEA1306062C60CF5299AFD9A06C9E03EA758CD2E627D65499E4D5F44A3D81AD4222EE77C04B0B4D776F69D2C3B5292C220B4415530B3C5BE6A8837B7F3C324AABBE97952958E2E66D36465AA52A7B47F3A1013387D024DFE924046F2E9AA1BEB1D730FB3F433558ADE52758AC7C307AEE0AA9623570836B922B650E0B1C295EC500007A6B9032D3CDD10B8EE065B2D4A962F518EA46C6897CBA5B36411A61FB826EE6FA48AC9CD4DDF59A9E7BADCEC44BA470C6BAC78354F3CEC0C
7.1) generation of encrypted_data

Generated payload (excluding transport headers/trailers):

-
0000 | 54 B6 43 66 0A 95 A3 0D D1 75 4A BF 28 3B CE 96
-0010 | F3 B3 EB 42 14 B7 7C B9 1E FB E6 D3 F5 CF 06 3E
-0020 | 93 8C 11 B7 00 00 00 00 00 00 00 00 FE 00 01 00
-0030 | B5 8B B8 62 D3 E7 85 E9 8B 30 2A 63 7B 5C 17 DD
-0040 | 2F 96 97 9B 87 B9 3A 6A 28 EC 84 16 20 07 ED 36
-0050 | 64 3D 42 EB F3 EC D2 30 CE F3 AC 57 C1 E5 6D B0
-0060 | 10 23 92 F1 89 B2 9A 9D 1E FF 5E EE 43 9C 62 51
-0070 | 25 6A 6B 17 4D 91 82 C0 34 90 DA 9E 0E C9 2A A6
-0080 | 52 49 09 08 3C AA 8B DB E7 F3 B3 4D 13 E5 F6 E9
-0090 | C1 A4 83 9D 68 D0 A3 B4 80 FB B0 27 9A F1 A6 B1
-00A0 | E6 BE 42 2B C3 56 A4 D0 1D FB BE 25 A8 68 29 5C
-00B0 | AD F4 1E 1D AC FC CC 15 FA CC 87 2A A0 A1 4B 24
-00C0 | 30 50 9A 6D 33 AD D1 15 0B C8 39 AD 21 85 4C F3
-00D0 | 48 F2 9D 33 BF 6D 86 ED 5B DB 01 ED 51 14 41 50
-00E0 | CE 17 98 36 68 E4 51 DC 2A 0C A1 04 09 32 09 57
-00F0 | 51 D6 09 B1 0F 3F 63 46 26 B5 EA 0F A6 FE 1F 6E
-0100 | 02 37 2B 46 97 A8 79 10 A4 83 4A 46 0E CB 7F 66
-0110 | 1D 25 CC 13 9C 59 13 A8 E5 46 18 C7 FC 41 0D 41
-0120 | 52 5E 5D CA A5 34 D9 20 C7 4C BD 8D 8D 86 63 D5
+
0000 | 54 B6 43 66 33 5E 99 59 32 B9 7A B0 F4 99 8B 49
+0010 | 79 A9 8A B8 1D 2A 19 43 39 EB D2 05 03 B5 CB 18
+0020 | 9E DE 22 74 00 00 00 00 00 00 00 00 FE 00 01 00
+0030 | 8D 8B CF 4B 7E 8C AC B3 9C 31 45 4E 29 24 A6 4B
+0040 | FD 98 8D 4A 15 61 75 EB B0 27 9F 44 E3 D1 FC 9A
+0050 | 14 2E 63 5D CE 46 B2 F1 00 63 EE B2 AE C4 BE 6C
+0060 | 04 1F 04 35 D6 72 AE 4E 72 D9 E7 3C 87 DF 37 24
+0070 | 5B E3 0C 30 08 AE A1 30 60 62 C6 0C F5 29 9A FD
+0080 | 9A 06 C9 E0 3E A7 58 CD 2E 62 7D 65 49 9E 4D 5F
+0090 | 44 A3 D8 1A D4 22 2E E7 7C 04 B0 B4 D7 76 F6 9D
+00A0 | 2C 3B 52 92 C2 20 B4 41 55 30 B3 C5 BE 6A 88 37
+00B0 | B7 F3 C3 24 AA BB E9 79 52 95 8E 2E 66 D3 64 65
+00C0 | AA 52 A7 B4 7F 3A 10 13 38 7D 02 4D FE 92 40 46
+00D0 | F2 E9 AA 1B EB 1D 73 0F B3 F4 33 55 8A DE 52 75
+00E0 | 8A C7 C3 07 AE E0 AA 96 23 57 08 36 B9 22 B6 50
+00F0 | E0 B1 C2 95 EC 50 00 07 A6 B9 03 2D 3C DD 10 B8
+0100 | EE 06 5B 2D 4A 96 2F 51 8E A4 6C 68 97 CB A5 B3
+0110 | 64 11 A6 1F B8 26 EE 6F A4 8A C9 CD 4D DF 59 A9
+0120 | E7 BA DC EC 44 BA 47 0C 6B AC 78 35 4F 3C EC 0C

Payload (de)serialization:

client_DH_inner_data#6643b654 nonce:int128 server_nonce:int128 retry_id:long g_b:string = Client_DH_Inner_Data;
nonce 4, 160A95A30DD1754ABF283BCE96F3B3EB42335E995932B97AB0F4998B4979A98AB8 Value generated by client in Step 1
server_nonce 20, 1614B77CB91EFBE6D3F5CF063E938C11B71D2A194339EBD20503B5CB189EDE2274 Value received from server in Step 2
g_a 300, 260FE000100568755DD212BB5081F78AB93 8D3E0A63F12D552D0F83FD9794E027AC 2590D514CD86BEF1B089E2F78311BB7D A0573C13DF3CE3FE0794F5D6F414D53C 8F45F4549251DF16123793B80F11322C 5DCE6007E4C62FA7713776BEEEC5DC9E 48307495146854F60B3BB7052ABC300C 46E57B212E59D6F6C2D2FF704D98888D 71CAF958813BED9D916E439AD02A9FA7 0678454E0C92885E3193FCA553181EE5 15721688AFAFF9E7527B467B45A0A45A 6F3BB0A8616646B6D5B7C71406C3D7AE 232E7A5F78B0CDF39A9EC8E3651733A3 51C6EECA792C58A02C6AC2077714CDB3 22A50CAD2F28FF307F658DABF2EDA874 E65D5A7361F6D779D52F87B08DA77D0D
82DAFAE6
FE00010061DEE10F675855ACEFA2B2CA 3A0D3354652CB75AD6A4D7CF83F8C62E 667ACCA6F039DBA4E8B692A7441CC327 A6E7ECF65ECE1F383DE9AB38A7439AE7 3EC90B02A824F1D64C9FA19C057875AF 619621147B5B05A0DB1B0B27A74070C4 5E30042D2AA455DFA899DFA163C5E0F4 2F90C94F5BD2E4F689D42EBD1ABF7AB8 43DEBA27C14060ABCAF569D5B517444B 900B1428C8986E46F4985C30C50CEC97 3F6C2A91AE8EE830E9F4931E84D23787 2700E547A2424BFDFA35D897ACDD78B6 B137A5FCE31FD5A3228575204798E40C D545D309EB82222F3C9EA9568ABF70A5 209CF379AC9B1669D6708938A47161F1 FE51C48014183D2354953CC6897175B6
0AC1F191
g_a diffie-hellman parameter
server_time 560, 447E57065 (1701897543 in decimal)A4F97065 (1701902756 in decimal) Server time
@@ -658,19 +658,19 @@ answer = BA0D89B50A95A30DD1754ABF283BCE96F3B3EB4214B77CB91EFBE6D3F5CF063E938C11B - + - + - + @@ -684,47 +684,47 @@ answer = BA0D89B50A95A30DD1754ABF283BCE96F3B3EB4214B77CB91EFBE6D3F5CF063E938C11B

The serialization of Client_DH_Inner_Data produces a string data. This is used to generate encrypted_data as specified in step 6, using the following inputs:

-
data = 54B643660A95A30DD1754ABF283BCE96F3B3EB4214B77CB91EFBE6D3F5CF063E938C11B70000000000000000FE000100B58BB862D3E785E98B302A637B5C17DD2F96979B87B93A6A28EC84162007ED36643D42EBF3ECD230CEF3AC57C1E56DB0102392F189B29A9D1EFF5EEE439C6251256A6B174D9182C03490DA9E0EC92AA6524909083CAA8BDBE7F3B34D13E5F6E9C1A4839D68D0A3B480FBB0279AF1A6B1E6BE422BC356A4D01DFBBE25A868295CADF41E1DACFCCC15FACC872AA0A14B2430509A6D33ADD1150BC839AD21854CF348F29D33BF6D86ED5BDB01ED51144150CE17983668E451DC2A0CA1040932095751D609B10F3F634626B5EA0FA6FE1F6E02372B4697A87910A4834A460ECB7F661D25CC139C5913A8E54618C7FC410D41525E5DCAA534D920C74CBD8D8D8663D5
-padding = C9204C19F21688A1A9847BE8
-tmp_aes_key = 2328CFB62740758C72875FFA9F28954B0F484F3F8F08BA1D9777B83D72EAE49F
-tmp_aes_iv = B245F332C793EA0B889E6B792A56842E15EF79E8ACCA8AA4589FC64DB43580BF
+
data = 54B64366335E995932B97AB0F4998B4979A98AB81D2A194339EBD20503B5CB189EDE22740000000000000000FE0001008D8BCF4B7E8CACB39C31454E2924A64BFD988D4A156175EBB0279F44E3D1FC9A142E635DCE46B2F10063EEB2AEC4BE6C041F0435D672AE4E72D9E73C87DF37245BE30C3008AEA1306062C60CF5299AFD9A06C9E03EA758CD2E627D65499E4D5F44A3D81AD4222EE77C04B0B4D776F69D2C3B5292C220B4415530B3C5BE6A8837B7F3C324AABBE97952958E2E66D36465AA52A7B47F3A1013387D024DFE924046F2E9AA1BEB1D730FB3F433558ADE52758AC7C307AEE0AA9623570836B922B650E0B1C295EC500007A6B9032D3CDD10B8EE065B2D4A962F518EA46C6897CBA5B36411A61FB826EE6FA48AC9CD4DDF59A9E7BADCEC44BA470C6BAC78354F3CEC0C
+padding = 33608B65B675EDEB574612F3
+tmp_aes_key = 9A4E3B9FFC93395AEF3A1A3D980C65B346AD55239764095BCE4CE82EF7D7B188
+tmp_aes_iv = 080199AE9E1B3CB91C6AECDD853F64F0A82A203CC088FA0F2D8F19D71688B570

Process:

data_with_hash := SHA1(data) + data + padding (0-15 random bytes such that total length is divisible by 16)
 encrypted_data := AES256_ige_encrypt (data_with_hash, tmp_aes_key, tmp_aes_iv);

Output:

-
encrypted_data = D874C3A771BE5DC70A8D423F8A392667BBAA03B18144023E3CDA8C58435DFFAA68EB22C0506A55EA8692CB1F651F03FE633A1897E072952B54683FF338BCDBBBCFB362B40B72CA7B9FA52D7A31960ECADE9437895500024F1DCB1A7C7350B1A320ED6E6B57345A22AE0BC3ED46664C9D6684D0DA4BFFB168C98AA0936C59354B9AC8B93578CB707FAFB64F75A80E0D8DC3B4E0B25A9837EDC4689A35C8EF8FDD78BEAEE01DA389F91DE89CA4827F0C794098065A0881DFF2FE2A914663A67D37FCDFDE1A783E468D86577010923CA99085495685FEC1D88A7F73C34F54DFB1A89931C46A166BFF7CF13DAA7D17E3688029624DA4EEA9113264590FEED35C505A345BD47451237A666CEE49E4A2FA740A1F54E463B63D5E5F2C4899AB3994A5493E36BF21ED968D7AD1B45CC22CA533B947E410BE0419CCCF08639FE72A207A88495BB6EAB0B39AF09B878D1B7EE94E0C
+
encrypted_data = E938CDA17FCE9A820D24122C19BFEED33DBA6CB395EA0F4759590F95AF2FCD55BCD8F63083DABE9D16967CC1B452B0ED9D5091FF0F3EA9E17238D8963D6DA168E43BB6C0532CB78F8ECB32F090752D81EB51DD609BF573E7E69F99FDAD0EFCDF98233261403D91FB9D9BBC599B97F0549FCD00D4B97495284836BB0B57F8AE87CB406EF0FB61FCCADAF34275400D36FFE12D7F194D2571CCC4CF60415A54ED0FA91C14B12F5B38217B041D3CA397AD9BEE46D19CC9A0B4BDEEC487586C9BD8D84D3AE7E5DB284233BFF5B15A1404DFB9756A277ECB218C22C5575CCE58F3A10A85ADD9A49C65CFC1D22BB2A9242FC119C1CBC6BC8DED37B2C67AB0B0DCC39C885067AD502891449410C37402D129528F5ECA6F60C170F91709D10A538D9568F816E14923E319D59E413558619EC7CB5648428C8475097941C0E35D50F039620DB8260D430AE5BDA4823798D3EB8F5FCF

The length of the final string is 336 bytes.

7.2) set_client_DH_params query

Sent payload (excluding transport headers/trailers):

-
0000 | 00 00 00 00 00 00 00 00 F0 C4 00 00 47 E5 70 65
-0010 | 78 01 00 00 1F 5F 04 F5 0A 95 A3 0D D1 75 4A BF
-0020 | 28 3B CE 96 F3 B3 EB 42 14 B7 7C B9 1E FB E6 D3
-0030 | F5 CF 06 3E 93 8C 11 B7 FE 50 01 00 D8 74 C3 A7
-0040 | 71 BE 5D C7 0A 8D 42 3F 8A 39 26 67 BB AA 03 B1
-0050 | 81 44 02 3E 3C DA 8C 58 43 5D FF AA 68 EB 22 C0
-0060 | 50 6A 55 EA 86 92 CB 1F 65 1F 03 FE 63 3A 18 97
-0070 | E0 72 95 2B 54 68 3F F3 38 BC DB BB CF B3 62 B4
-0080 | 0B 72 CA 7B 9F A5 2D 7A 31 96 0E CA DE 94 37 89
-0090 | 55 00 02 4F 1D CB 1A 7C 73 50 B1 A3 20 ED 6E 6B
-00A0 | 57 34 5A 22 AE 0B C3 ED 46 66 4C 9D 66 84 D0 DA
-00B0 | 4B FF B1 68 C9 8A A0 93 6C 59 35 4B 9A C8 B9 35
-00C0 | 78 CB 70 7F AF B6 4F 75 A8 0E 0D 8D C3 B4 E0 B2
-00D0 | 5A 98 37 ED C4 68 9A 35 C8 EF 8F DD 78 BE AE E0
-00E0 | 1D A3 89 F9 1D E8 9C A4 82 7F 0C 79 40 98 06 5A
-00F0 | 08 81 DF F2 FE 2A 91 46 63 A6 7D 37 FC DF DE 1A
-0100 | 78 3E 46 8D 86 57 70 10 92 3C A9 90 85 49 56 85
-0110 | FE C1 D8 8A 7F 73 C3 4F 54 DF B1 A8 99 31 C4 6A
-0120 | 16 6B FF 7C F1 3D AA 7D 17 E3 68 80 29 62 4D A4
-0130 | EE A9 11 32 64 59 0F EE D3 5C 50 5A 34 5B D4 74
-0140 | 51 23 7A 66 6C EE 49 E4 A2 FA 74 0A 1F 54 E4 63
-0150 | B6 3D 5E 5F 2C 48 99 AB 39 94 A5 49 3E 36 BF 21
-0160 | ED 96 8D 7A D1 B4 5C C2 2C A5 33 B9 47 E4 10 BE
-0170 | 04 19 CC CF 08 63 9F E7 2A 20 7A 88 49 5B B6 EA
-0180 | B0 B3 9A F0 9B 87 8D 1B 7E E9 4E 0C
+
0000 | 00 00 00 00 00 00 00 00 50 D4 0C 00 A4 F9 70 65
+0010 | 78 01 00 00 1F 5F 04 F5 33 5E 99 59 32 B9 7A B0
+0020 | F4 99 8B 49 79 A9 8A B8 1D 2A 19 43 39 EB D2 05
+0030 | 03 B5 CB 18 9E DE 22 74 FE 50 01 00 E9 38 CD A1
+0040 | 7F CE 9A 82 0D 24 12 2C 19 BF EE D3 3D BA 6C B3
+0050 | 95 EA 0F 47 59 59 0F 95 AF 2F CD 55 BC D8 F6 30
+0060 | 83 DA BE 9D 16 96 7C C1 B4 52 B0 ED 9D 50 91 FF
+0070 | 0F 3E A9 E1 72 38 D8 96 3D 6D A1 68 E4 3B B6 C0
+0080 | 53 2C B7 8F 8E CB 32 F0 90 75 2D 81 EB 51 DD 60
+0090 | 9B F5 73 E7 E6 9F 99 FD AD 0E FC DF 98 23 32 61
+00A0 | 40 3D 91 FB 9D 9B BC 59 9B 97 F0 54 9F CD 00 D4
+00B0 | B9 74 95 28 48 36 BB 0B 57 F8 AE 87 CB 40 6E F0
+00C0 | FB 61 FC CA DA F3 42 75 40 0D 36 FF E1 2D 7F 19
+00D0 | 4D 25 71 CC C4 CF 60 41 5A 54 ED 0F A9 1C 14 B1
+00E0 | 2F 5B 38 21 7B 04 1D 3C A3 97 AD 9B EE 46 D1 9C
+00F0 | C9 A0 B4 BD EE C4 87 58 6C 9B D8 D8 4D 3A E7 E5
+0100 | DB 28 42 33 BF F5 B1 5A 14 04 DF B9 75 6A 27 7E
+0110 | CB 21 8C 22 C5 57 5C CE 58 F3 A1 0A 85 AD D9 A4
+0120 | 9C 65 CF C1 D2 2B B2 A9 24 2F C1 19 C1 CB C6 BC
+0130 | 8D ED 37 B2 C6 7A B0 B0 DC C3 9C 88 50 67 AD 50
+0140 | 28 91 44 94 10 C3 74 02 D1 29 52 8F 5E CA 6F 60
+0150 | C1 70 F9 17 09 D1 0A 53 8D 95 68 F8 16 E1 49 23
+0160 | E3 19 D5 9E 41 35 58 61 9E C7 CB 56 48 42 8C 84
+0170 | 75 09 79 41 C0 E3 5D 50 F0 39 62 0D B8 26 0D 43
+0180 | 0A E5 BD A4 82 37 98 D3 EB 8F 5F CF

Payload (de)serialization:

set_client_DH_params#f5045f1f nonce:int128 server_nonce:int128 encrypted_data:string = Set_client_DH_params_answer;
nonce 4, 160A95A30DD1754ABF283BCE96F3B3EB42335E995932B97AB0F4998B4979A98AB8 Value generated by client in Step 1
server_nonce 20, 1614B77CB91EFBE6D3F5CF063E938C11B71D2A194339EBD20503B5CB189EDE2274 Value received from server in Step 2
g_b 36, 260FE000100B58BB862D3E785E98B302A63 7B5C17DD2F96979B87B93A6A28EC8416 2007ED36643D42EBF3ECD230CEF3AC57 C1E56DB0102392F189B29A9D1EFF5EEE 439C6251256A6B174D9182C03490DA9E 0EC92AA6524909083CAA8BDBE7F3B34D 13E5F6E9C1A4839D68D0A3B480FBB027 9AF1A6B1E6BE422BC356A4D01DFBBE25 A868295CADF41E1DACFCCC15FACC872A A0A14B2430509A6D33ADD1150BC839AD 21854CF348F29D33BF6D86ED5BDB01ED 51144150CE17983668E451DC2A0CA104 0932095751D609B10F3F634626B5EA0F A6FE1F6E02372B4697A87910A4834A46 0ECB7F661D25CC139C5913A8E54618C7 FC410D41525E5DCAA534D920C74CBD8D
8D8663D5
FE0001008D8BCF4B7E8CACB39C31454E 2924A64BFD988D4A156175EBB0279F44 E3D1FC9A142E635DCE46B2F10063EEB2 AEC4BE6C041F0435D672AE4E72D9E73C 87DF37245BE30C3008AEA1306062C60C F5299AFD9A06C9E03EA758CD2E627D65 499E4D5F44A3D81AD4222EE77C04B0B4 D776F69D2C3B5292C220B4415530B3C5 BE6A8837B7F3C324AABBE97952958E2E 66D36465AA52A7B47F3A1013387D024D FE924046F2E9AA1BEB1D730FB3F43355 8ADE52758AC7C307AEE0AA9623570836 B922B650E0B1C295EC500007A6B9032D 3CDD10B8EE065B2D4A962F518EA46C68 97CBA5B36411A61FB826EE6FA48AC9CD 4DDF59A9E7BADCEC44BA470C6BAC7835
4F3CEC0C
Single-byte prefix denoting length, a 256-byte (2048-bit) string, and zero bytes of padding
@@ -746,7 +746,7 @@ encrypted_data := AES256_ige_encrypt (data_with_hash, tmp_aes_key, tmp_aes_iv);< - + @@ -764,19 +764,19 @@ encrypted_data := AES256_ige_encrypt (data_with_hash, tmp_aes_key, tmp_aes_iv);< - + - + - + @@ -785,17 +785,17 @@ encrypted_data := AES256_ige_encrypt (data_with_hash, tmp_aes_key, tmp_aes_iv);<
8) Auth key generation

The client computes the auth_key using formula g_a^b mod dh_prime:

-
auth_key = BEF72B1A5FD2E0C6A22B264A130572011FC90012F8B29BD1ED755B7F1BEA352CC190D6044E2E7553473849BC1B52389FE0548EA7E678F0070ECF54831639954F5AFBA8A7B5CE0C9E7FB3B0551B1C83A543DE5F99B316DCD8C6CE211975DD3DED84899944EE4643E9D11E1F2C123DE0162FC2C47EFBC5736DB15C134E98581C6EE1A7C93CFEC52DAC6548D4F62706E28F4268BE2BCF9BD343D1F5EB882F246390008E4CEFD3B713A0CD683ACDBA5361B92402AD6E3A6EE91C40915E5C33CC1B7295FF00479CDC5821951B896A6D984FFD03746FE1679EDC1F188B71D620810DD22656E1CB0B8ED287AF8805BDCA2D44092309FA4831760121986B314FF620EA0C
+
auth_key = A4230DDD3A80A925774E23CFB272A8C4B6CD40C989561A6E8397B01785D9367B3B21A75155B3ADE1D2292ACB565A635AC34FBD077CE68C71A8E5B8AD494655916B3BF1941F51EB1E75122648BB1587CD18D570187902BA47EB5DBA8EA3D63243FFE8431EC4C0AB4DE7AE26CDE9E2D1D946BEEA55DDAC2730CC89BE17F68295ABD5906EC873EA7566FA0E8B734DA862B0F6AB876796A9F36C2DB2654288EEE2032CDAAF6AC156FFA5004DDB377E3D8E0659079DFA41D622935C1E36B897EE2F571503A8EA19F6B2E0AC31D18FC09AA7E8727531008F77B5A91DFE2540CE236F27177113E7B2B865B9F9BD90483D36E836938621D69AA9B66217FE2306B56408F0
9) Final server reply

The server verifies and confirms that auth_key_hash is unique: since it's unique, it replies with the following:

Received payload (excluding transport headers/trailers):

-
0000 | 00 00 00 00 00 00 00 00 01 D8 70 AC 47 E5 70 65
-0010 | 58 00 00 00 34 F7 CB 3B 0A 95 A3 0D D1 75 4A BF
-0020 | 28 3B CE 96 F3 B3 EB 42 14 B7 7C B9 1E FB E6 D3
-0030 | F5 CF 06 3E 93 8C 11 B7 CD 07 4D D7 BF 66 CE 04
-0040 | 2E 10 24 B3 D8 7E AC 36
+
0000 | 00 00 00 00 00 00 00 00 01 74 C3 A2 A4 F9 70 65
+0010 | 6C 00 00 00 34 F7 CB 3B 33 5E 99 59 32 B9 7A B0
+0020 | F4 99 8B 49 79 A9 8A B8 1D 2A 19 43 39 EB D2 05
+0030 | 03 B5 CB 18 9E DE 22 74 EE 44 DE 65 D0 70 EE 2F
+0040 | 4A 60 F9 09 59 D9 15 C9

Payload (de)serialization:

dh_gen_ok#3bcbf734 nonce:int128 server_nonce:int128 new_nonce_hash1:int128 = Set_client_DH_params_answer;
message_id 8, 8F0C4000047E5706550D40C00A4F97065 Message ID generated as specified here » (unixtime() << 32) + (N*4)
nonce 24, 160A95A30DD1754ABF283BCE96F3B3EB42335E995932B97AB0F4998B4979A98AB8 Value generated by client in Step 1
server_nonce 40, 1614B77CB91EFBE6D3F5CF063E938C11B71D2A194339EBD20503B5CB189EDE2274 Value received from server in Step 2
encrypted_data 56, 340FE500100D874C3A771BE5DC70A8D423F 8A392667BBAA03B18144023E3CDA8C58 435DFFAA68EB22C0506A55EA8692CB1F 651F03FE633A1897E072952B54683FF3 38BCDBBBCFB362B40B72CA7B9FA52D7A 31960ECADE9437895500024F1DCB1A7C 7350B1A320ED6E6B57345A22AE0BC3ED 46664C9D6684D0DA4BFFB168C98AA093 6C59354B9AC8B93578CB707FAFB64F75 A80E0D8DC3B4E0B25A9837EDC4689A35 C8EF8FDD78BEAEE01DA389F91DE89CA4 827F0C794098065A0881DFF2FE2A9146 63A67D37FCDFDE1A783E468D86577010 923CA99085495685FEC1D88A7F73C34F 54DFB1A89931C46A166BFF7CF13DAA7D 17E3688029624DA4EEA9113264590FEE D35C505A345BD47451237A666CEE49E4 A2FA740A1F54E463B63D5E5F2C4899AB 3994A5493E36BF21ED968D7AD1B45CC2 2CA533B947E410BE0419CCCF08639FE7 2A207A88495BB6EAB0B39AF09B878D1B
7EE94E0C
FE500100E938CDA17FCE9A820D24122C 19BFEED33DBA6CB395EA0F4759590F95 AF2FCD55BCD8F63083DABE9D16967CC1 B452B0ED9D5091FF0F3EA9E17238D896 3D6DA168E43BB6C0532CB78F8ECB32F0 90752D81EB51DD609BF573E7E69F99FD AD0EFCDF98233261403D91FB9D9BBC59 9B97F0549FCD00D4B97495284836BB0B 57F8AE87CB406EF0FB61FCCADAF34275 400D36FFE12D7F194D2571CCC4CF6041 5A54ED0FA91C14B12F5B38217B041D3C A397AD9BEE46D19CC9A0B4BDEEC48758 6C9BD8D84D3AE7E5DB284233BFF5B15A 1404DFB9756A277ECB218C22C5575CCE 58F3A10A85ADD9A49C65CFC1D22BB2A9 242FC119C1CBC6BC8DED37B2C67AB0B0 DCC39C885067AD502891449410C37402 D129528F5ECA6F60C170F91709D10A53 8D9568F816E14923E319D59E41355861 9EC7CB5648428C8475097941C0E35D50 F039620DB8260D430AE5BDA4823798D3
EB8F5FCF
Encrypted client_DH_inner_data generated previously, serialized as a TL byte string
@@ -817,13 +817,13 @@ encrypted_data := AES256_ige_encrypt (data_with_hash, tmp_aes_key, tmp_aes_iv);< - + - + @@ -835,19 +835,19 @@ encrypted_data := AES256_ige_encrypt (data_with_hash, tmp_aes_key, tmp_aes_iv);< - + - + - + diff --git a/data/web/corefork.telegram.org/type/Bool.html b/data/web/corefork.telegram.org/type/Bool.html index 72a5bf1d34..58b6d3044d 100644 --- a/data/web/corefork.telegram.org/type/Bool.html +++ b/data/web/corefork.telegram.org/type/Bool.html @@ -848,8 +848,8 @@ - - + +
message_id 8, 801D870AC47E570650174C3A2A4F97065 Message ID generated as specified here » (unixtime() << 32) + (N*4)
message_length 16, 458000000 (88 in decimal)6C000000 (108 in decimal) Message body length
nonce 24, 160A95A30DD1754ABF283BCE96F3B3EB42335E995932B97AB0F4998B4979A98AB8 Value generated by client in Step 1
server_nonce 40, 1614B77CB91EFBE6D3F5CF063E938C11B71D2A194339EBD20503B5CB189EDE2274 Value received from server in Step 2
new_nonce_hash1 56, 16CD074DD7BF66CE042E1024B3D87EAC36EE44DE65D070EE2F4A60F90959D915C9 The 128 lower-order bits of SHA1 of the byte string derived from the new_nonce string by adding a single byte with the value of 1, 2, or 3, and followed by another 8 bytes with auth_key_aux_hash. Different values are required to prevent an intruder from changing server response dh_gen_ok into dh_gen_retry.
Hide the active stories of a user, preventing them from being displayed on the action bar on the homescreen, see here » for more info.
stories.applyBoostBoost » a channel, leveling it up and granting it permission to post stories ».account.updateColor 
diff --git a/data/web/corefork.telegram.org/type/Booster.html b/data/web/corefork.telegram.org/type/Booster.html index 7454346c45..781217219c 100644 --- a/data/web/corefork.telegram.org/type/Booster.html +++ b/data/web/corefork.telegram.org/type/Booster.html @@ -56,21 +56,6 @@

-

Constructors

- - - - - - - - - - - - - -
ConstructorDescription
boosterInfo about a boost made by a specific user.

Related pages

Channel boosts

Telegram Premium users can grant their favorite channels additional features like the ability to post stories by giving them boosts.

diff --git a/data/web/corefork.telegram.org/type/ChannelAdminLogEventAction.html b/data/web/corefork.telegram.org/type/ChannelAdminLogEventAction.html index 9b8d216c7b..2e07664bf9 100644 --- a/data/web/corefork.telegram.org/type/ChannelAdminLogEventAction.html +++ b/data/web/corefork.telegram.org/type/ChannelAdminLogEventAction.html @@ -281,6 +281,14 @@ channelAdminLogEventActionToggleAntiSpam Native antispam functionality was enabled or disabled. + +channelAdminLogEventActionChangeColor +  + + +channelAdminLogEventActionChangeBackgroundEmoji +  + diff --git a/data/web/corefork.telegram.org/type/InputMedia.html b/data/web/corefork.telegram.org/type/InputMedia.html index 09c2f79ba7..ce3ee9be49 100644 --- a/data/web/corefork.telegram.org/type/InputMedia.html +++ b/data/web/corefork.telegram.org/type/InputMedia.html @@ -145,6 +145,10 @@ inputMediaStory Forwarded story + +inputMediaWebPage +  + diff --git a/data/web/corefork.telegram.org/type/MessageAction.html b/data/web/corefork.telegram.org/type/MessageAction.html index cf119d253b..2c857915b9 100644 --- a/data/web/corefork.telegram.org/type/MessageAction.html +++ b/data/web/corefork.telegram.org/type/MessageAction.html @@ -258,8 +258,16 @@ The wallpaper » of the current chat was changed. -messageActionSetSameChatWallPaper -The user applied a wallpaper » previously sent by the other user in a messageActionSetChatWallPaper message. +messageActionGiftCode +  + + +messageActionGiveawayLaunch +  + + +messageActionGiveawayResults +  diff --git a/data/web/corefork.telegram.org/type/MessageEntity.html b/data/web/corefork.telegram.org/type/MessageEntity.html index dc55815254..c161459cb2 100644 --- a/data/web/corefork.telegram.org/type/MessageEntity.html +++ b/data/web/corefork.telegram.org/type/MessageEntity.html @@ -165,6 +165,10 @@ messageEntityCustomEmoji Represents a custom emoji.
Note that this entity must wrap exactly one regular emoji (the one contained in documentAttributeCustomEmoji.alt) in the related text, otherwise the server will ignore it. + +messageEntityBlockquote +Message entity representing a block quote. + diff --git a/data/web/corefork.telegram.org/type/MessageMedia.html b/data/web/corefork.telegram.org/type/MessageMedia.html index d330c6bc79..d3ac7adf6f 100644 --- a/data/web/corefork.telegram.org/type/MessageMedia.html +++ b/data/web/corefork.telegram.org/type/MessageMedia.html @@ -141,6 +141,10 @@ messageMediaStory Represents a forwarded story or a story mention. + +messageMediaGiveaway +  +

Methods

diff --git a/data/web/corefork.telegram.org/type/PublicForward.html b/data/web/corefork.telegram.org/type/PublicForward.html index 8d8cd99b01..993e58130a 100644 --- a/data/web/corefork.telegram.org/type/PublicForward.html +++ b/data/web/corefork.telegram.org/type/PublicForward.html @@ -2,12 +2,24 @@ - Page not found + PublicForward - - + + - + @@ -39,10 +51,42 @@
- -

Page not found

+ +

PublicForward

-
The page has not been saved
+

+ +
+
publicForwardMessage#1f2bf4a message:Message = PublicForward;
+publicForwardStory#edf3add0 peer:Peer story:StoryItem = PublicForward;

+

Constructors

+ + + + + + + + + + + + + + + + + +
ConstructorDescription
publicForwardMessage 
publicForwardStory 
diff --git a/data/web/corefork.telegram.org/type/WebPage.html b/data/web/corefork.telegram.org/type/WebPage.html index da6d74b559..61b5618190 100644 --- a/data/web/corefork.telegram.org/type/WebPage.html +++ b/data/web/corefork.telegram.org/type/WebPage.html @@ -85,21 +85,6 @@ The preview of the webpage hasn't changed - -

Methods

- - - - - - - - - - - - -
MethodDescription
messages.getWebPageGet instant view page
diff --git a/data/web/corefork.telegram.org/type/messages.Chats.html b/data/web/corefork.telegram.org/type/messages.Chats.html index 92a82f090d..9934870a83 100644 --- a/data/web/corefork.telegram.org/type/messages.Chats.html +++ b/data/web/corefork.telegram.org/type/messages.Chats.html @@ -126,6 +126,10 @@ stories.getChatsToSend Obtain a list of channels where the user can post stories + +channels.getChannelRecommendations +  + diff --git a/data/web/corefork.telegram.org/type/messages.FoundStickerSets.html b/data/web/corefork.telegram.org/type/messages.FoundStickerSets.html index dc60afbbd9..6d847bdc80 100644 --- a/data/web/corefork.telegram.org/type/messages.FoundStickerSets.html +++ b/data/web/corefork.telegram.org/type/messages.FoundStickerSets.html @@ -94,6 +94,10 @@ messages.searchStickerSets Search for stickersets + +messages.searchEmojiStickerSets +  + diff --git a/data/web/corefork.telegram.org/type/messages.WebPage.html b/data/web/corefork.telegram.org/type/messages.WebPage.html index 8d8cd99b01..387f66fac8 100644 --- a/data/web/corefork.telegram.org/type/messages.WebPage.html +++ b/data/web/corefork.telegram.org/type/messages.WebPage.html @@ -2,12 +2,30 @@ - Page not found + Messages.WebPage - - + + - + @@ -39,10 +57,56 @@
- -

Page not found

+ +

Messages.WebPage

-
The page has not been saved
+

+ +
+
messages.webPage#fd5e12bd webpage:WebPage chats:Vector<Chat> users:Vector<User> = messages.WebPage;
+
+---functions---
+
+messages.getWebPage#8d9692a3 url:string hash:int = messages.WebPage;

+

Constructors

+ + + + + + + + + + + + + +
ConstructorDescription
messages.webPage 
+

Methods

+ + + + + + + + + + + + + +
MethodDescription
messages.getWebPageGet instant view page
diff --git a/data/web/corefork.telegram.org/type/payments.CheckedGiftCode.html b/data/web/corefork.telegram.org/type/payments.CheckedGiftCode.html index 8d8cd99b01..6f083062d4 100644 --- a/data/web/corefork.telegram.org/type/payments.CheckedGiftCode.html +++ b/data/web/corefork.telegram.org/type/payments.CheckedGiftCode.html @@ -2,12 +2,30 @@ - Page not found + Payments.CheckedGiftCode - - + + - + @@ -39,10 +57,56 @@
- -

Page not found

+ +

Payments.CheckedGiftCode

-
The page has not been saved
+

+ +
+
payments.checkedGiftCode#b722f158 flags:# via_giveaway:flags.2?true from_id:Peer giveaway_msg_id:flags.3?int to_id:flags.0?long date:int months:int used_date:flags.1?int chats:Vector<Chat> users:Vector<User> = payments.CheckedGiftCode;
+
+---functions---
+
+payments.checkGiftCode#8e51b4c1 slug:string = payments.CheckedGiftCode;

+

Constructors

+ + + + + + + + + + + + + +
ConstructorDescription
payments.checkedGiftCode 
+

Methods

+ + + + + + + + + + + + + +
MethodDescription
payments.checkGiftCode 
diff --git a/data/web/corefork.telegram.org/type/payments.GiveawayInfo.html b/data/web/corefork.telegram.org/type/payments.GiveawayInfo.html index 8d8cd99b01..de9beb4020 100644 --- a/data/web/corefork.telegram.org/type/payments.GiveawayInfo.html +++ b/data/web/corefork.telegram.org/type/payments.GiveawayInfo.html @@ -2,12 +2,30 @@ - Page not found + Payments.GiveawayInfo - - + + - + @@ -39,10 +57,61 @@
- -

Page not found

+ +

Payments.GiveawayInfo

-
The page has not been saved
+

+ +
+
payments.giveawayInfo#4367daa0 flags:# participating:flags.0?true preparing_results:flags.3?true start_date:int joined_too_early_date:flags.1?int admin_disallowed_chat_id:flags.2?long disallowed_country:flags.4?string = payments.GiveawayInfo;
+payments.giveawayInfoResults#cd5570 flags:# winner:flags.0?true refunded:flags.1?true start_date:int gift_code_slug:flags.0?string finish_date:int winners_count:int activated_count:int = payments.GiveawayInfo;
+
+---functions---
+
+payments.getGiveawayInfo#f4239425 peer:InputPeer msg_id:int = payments.GiveawayInfo;

+

Constructors

+ + + + + + + + + + + + + + + + + +
ConstructorDescription
payments.giveawayInfo 
payments.giveawayInfoResults 
+

Methods

+ + + + + + + + + + + + + +
MethodDescription
payments.getGiveawayInfo 
diff --git a/data/web/corefork.telegram.org/type/premium.BoostsList.html b/data/web/corefork.telegram.org/type/premium.BoostsList.html index 8d8cd99b01..b8243c9b3e 100644 --- a/data/web/corefork.telegram.org/type/premium.BoostsList.html +++ b/data/web/corefork.telegram.org/type/premium.BoostsList.html @@ -2,12 +2,32 @@ - Page not found + Premium.BoostsList - - + + - + @@ -39,10 +59,61 @@
- -

Page not found

+ +

Premium.BoostsList

-
The page has not been saved
+

+ +
+
premium.boostsList#86f8613c flags:# count:int boosts:Vector<Boost> next_offset:flags.0?string users:Vector<User> = premium.BoostsList;
+
+---functions---
+
+premium.getBoostsList#60f67660 flags:# gifts:flags.0?true peer:InputPeer offset:string limit:int = premium.BoostsList;
+premium.getUserBoosts#39854d1f peer:InputPeer user_id:InputUser = premium.BoostsList;

+

Constructors

+ + + + + + + + + + + + + +
ConstructorDescription
premium.boostsList 
+

Methods

+ + + + + + + + + + + + + + + + + +
MethodDescription
premium.getBoostsList 
premium.getUserBoosts 
diff --git a/data/web/corefork.telegram.org/type/premium.BoostsStatus.html b/data/web/corefork.telegram.org/type/premium.BoostsStatus.html index 8d8cd99b01..d4fff0fa1a 100644 --- a/data/web/corefork.telegram.org/type/premium.BoostsStatus.html +++ b/data/web/corefork.telegram.org/type/premium.BoostsStatus.html @@ -2,12 +2,30 @@ - Page not found + Premium.BoostsStatus - - + + - + @@ -39,10 +57,56 @@
- -

Page not found

+ +

Premium.BoostsStatus

-
The page has not been saved
+

+ +
+
premium.boostsStatus#4959427a flags:# my_boost:flags.2?true level:int current_level_boosts:int boosts:int gift_boosts:flags.4?int next_level_boosts:flags.0?int premium_audience:flags.1?StatsPercentValue boost_url:string prepaid_giveaways:flags.3?Vector<PrepaidGiveaway> my_boost_slots:flags.2?Vector<int> = premium.BoostsStatus;
+
+---functions---
+
+premium.getBoostsStatus#42f1f61 peer:InputPeer = premium.BoostsStatus;

+

Constructors

+ + + + + + + + + + + + + +
ConstructorDescription
premium.boostsStatus 
+

Methods

+ + + + + + + + + + + + + +
MethodDescription
premium.getBoostsStatus 
diff --git a/data/web/corefork.telegram.org/type/premium.MyBoosts.html b/data/web/corefork.telegram.org/type/premium.MyBoosts.html index 8d8cd99b01..0d0c2372f6 100644 --- a/data/web/corefork.telegram.org/type/premium.MyBoosts.html +++ b/data/web/corefork.telegram.org/type/premium.MyBoosts.html @@ -2,12 +2,32 @@ - Page not found + Premium.MyBoosts - - + + - + @@ -39,10 +59,61 @@
- -

Page not found

+ +

Premium.MyBoosts

-
The page has not been saved
+

+ +
+
premium.myBoosts#9ae228e2 my_boosts:Vector<MyBoost> chats:Vector<Chat> users:Vector<User> = premium.MyBoosts;
+
+---functions---
+
+premium.getMyBoosts#be77b4a = premium.MyBoosts;
+premium.applyBoost#6b7da746 flags:# slots:flags.0?Vector<int> peer:InputPeer = premium.MyBoosts;

+

Constructors

+ + + + + + + + + + + + + +
ConstructorDescription
premium.myBoosts 
+

Methods

+ + + + + + + + + + + + + + + + + +
MethodDescription
premium.getMyBoosts 
premium.applyBoost 
diff --git a/data/web/corefork.telegram.org/type/stats.PublicForwards.html b/data/web/corefork.telegram.org/type/stats.PublicForwards.html index 8d8cd99b01..6ef9152506 100644 --- a/data/web/corefork.telegram.org/type/stats.PublicForwards.html +++ b/data/web/corefork.telegram.org/type/stats.PublicForwards.html @@ -2,12 +2,30 @@ - Page not found + Stats.PublicForwards - - + + - + @@ -39,10 +57,56 @@
- -

Page not found

+ +

Stats.PublicForwards

-
The page has not been saved
+

+ +
+
stats.publicForwards#93037e20 flags:# count:int forwards:Vector<PublicForward> next_offset:flags.0?string chats:Vector<Chat> users:Vector<User> = stats.PublicForwards;
+
+---functions---
+
+stats.getStoryPublicForwards#a6437ef6 peer:InputPeer id:int offset:string limit:int = stats.PublicForwards;

+

Constructors

+ + + + + + + + + + + + + +
ConstructorDescription
stats.publicForwards 
+

Methods

+ + + + + + + + + + + + + +
MethodDescription
stats.getStoryPublicForwards 
diff --git a/data/web/corefork.telegram.org/type/stats.StoryStats.html b/data/web/corefork.telegram.org/type/stats.StoryStats.html index 8d8cd99b01..ebbe92a4bb 100644 --- a/data/web/corefork.telegram.org/type/stats.StoryStats.html +++ b/data/web/corefork.telegram.org/type/stats.StoryStats.html @@ -2,12 +2,30 @@ - Page not found + Stats.StoryStats - - + + - + @@ -39,10 +57,56 @@
- -

Page not found

+ +

Stats.StoryStats

-
The page has not been saved
+

+ +
+
stats.storyStats#50cd067c views_graph:StatsGraph reactions_by_emotion_graph:StatsGraph = stats.StoryStats;
+
+---functions---
+
+stats.getStoryStats#374fef40 flags:# dark:flags.0?true peer:InputPeer id:int = stats.StoryStats;

+

Constructors

+ + + + + + + + + + + + + +
ConstructorDescription
stats.storyStats 
+

Methods

+ + + + + + + + + + + + + +
MethodDescription
stats.getStoryStats 
diff --git a/data/web/corefork.telegram.org/type/stories.BoostersList.html b/data/web/corefork.telegram.org/type/stories.BoostersList.html index 7ba94014ab..ec40817491 100644 --- a/data/web/corefork.telegram.org/type/stories.BoostersList.html +++ b/data/web/corefork.telegram.org/type/stories.BoostersList.html @@ -56,36 +56,6 @@

-

Constructors

- - - - - - - - - - - - - -
ConstructorDescription
stories.boostersListInfo about the users currently boosting the channel.
-

Methods

- - - - - - - - - - - - - -
MethodDescription
stories.getBoostersListObtain info about the users currently boosting a channel, see here » for more info about boosts.

Related pages

Channel boosts

Telegram Premium users can grant their favorite channels additional features like the ability to post stories by giving them boosts.

diff --git a/data/web/corefork.telegram.org/type/stories.BoostsStatus.html b/data/web/corefork.telegram.org/type/stories.BoostsStatus.html index 4913593cd8..1f62e371b4 100644 --- a/data/web/corefork.telegram.org/type/stories.BoostsStatus.html +++ b/data/web/corefork.telegram.org/type/stories.BoostsStatus.html @@ -56,36 +56,6 @@

-

Constructors

- - - - - - - - - - - - - -
ConstructorDescription
stories.boostsStatusThe current boost status » of a channel.
-

Methods

- - - - - - - - - - - - - -
MethodDescription
stories.getBoostsStatusGet the current boost status of a channel, see here » for more info on boosts.

Related pages

Channel boosts

Telegram Premium users can grant their favorite channels additional features like the ability to post stories by giving them boosts.