Update layer to 169.
This commit is contained in:
parent
15132a398f
commit
c6ce44815e
@ -696,7 +696,7 @@ premiumGiftCodePaymentOption currency:string amount:int53 user_count:int32 month
|
|||||||
premiumGiftCodePaymentOptions options:vector<premiumGiftCodePaymentOption> = PremiumGiftCodePaymentOptions;
|
premiumGiftCodePaymentOptions options:vector<premiumGiftCodePaymentOption> = PremiumGiftCodePaymentOptions;
|
||||||
|
|
||||||
//@description Contains information about a Telegram Premium gift code
|
//@description Contains information about a Telegram Premium gift code
|
||||||
//@creator_id Identifier of a chat or a user that created the gift code
|
//@creator_id Identifier of a chat or a user that created the gift code; may be null if unknown
|
||||||
//@creation_date Point in time (Unix timestamp) when the code was created
|
//@creation_date Point in time (Unix timestamp) when the code was created
|
||||||
//@is_from_giveaway True, if the gift code was created for a giveaway
|
//@is_from_giveaway True, if the gift code was created for a giveaway
|
||||||
//@giveaway_message_id Identifier of the corresponding giveaway message in the creator_id chat; can be 0 or an identifier of a deleted message
|
//@giveaway_message_id Identifier of the corresponding giveaway message in the creator_id chat; can be 0 or an identifier of a deleted message
|
||||||
@ -9196,12 +9196,12 @@ getChatStatistics chat_id:int53 is_dark:Bool = ChatStatistics;
|
|||||||
//@description Returns detailed statistics about a message. Can be used only if message.can_get_statistics == true @chat_id Chat identifier @message_id Message identifier @is_dark Pass true if a dark theme is used by the application
|
//@description Returns detailed statistics about a message. Can be used only if message.can_get_statistics == true @chat_id Chat identifier @message_id Message identifier @is_dark Pass true if a dark theme is used by the application
|
||||||
getMessageStatistics chat_id:int53 message_id:int53 is_dark:Bool = MessageStatistics;
|
getMessageStatistics chat_id:int53 message_id:int53 is_dark:Bool = MessageStatistics;
|
||||||
|
|
||||||
//@description Returns forwarded copies of a channel message to different public channels. Can be used only if message.can_get_statistics == true. For optimal performance, the number of returned messages is chosen by TDLib
|
//@description Returns forwarded copies of a channel message to different public channels and public reposts as a story. Can be used only if message.can_get_statistics == true. For optimal performance, the number of returned messages and stories is chosen by TDLib
|
||||||
//@chat_id Chat identifier of the message
|
//@chat_id Chat identifier of the message
|
||||||
//@message_id Message identifier
|
//@message_id Message identifier
|
||||||
//@offset Offset of the first entry to return as received from the previous request; use empty string to get the first chunk of results
|
//@offset Offset of the first entry to return as received from the previous request; use empty string to get the first chunk of results
|
||||||
//@limit The maximum number of messages to be returned; must be positive and can't be greater than 100. For optimal performance, the number of returned messages is chosen by TDLib and can be smaller than the specified limit
|
//@limit The maximum number of messages and stories to be returned; must be positive and can't be greater than 100. For optimal performance, the number of returned objects is chosen by TDLib and can be smaller than the specified limit
|
||||||
getMessagePublicForwards chat_id:int53 message_id:int53 offset:string limit:int32 = FoundMessages;
|
getMessagePublicForwards chat_id:int53 message_id:int53 offset:string limit:int32 = StoryPublicForwards;
|
||||||
|
|
||||||
//@description Returns detailed statistics about a story. Can be used only if story.can_get_statistics == true @chat_id Chat identifier @story_id Story identifier @is_dark Pass true if a dark theme is used by the application
|
//@description Returns detailed statistics about a story. Can be used only if story.can_get_statistics == true @chat_id Chat identifier @story_id Story identifier @is_dark Pass true if a dark theme is used by the application
|
||||||
getStoryStatistics chat_id:int53 story_id:int32 is_dark:Bool = StoryStatistics;
|
getStoryStatistics chat_id:int53 story_id:int32 is_dark:Bool = StoryStatistics;
|
||||||
|
@ -118,11 +118,11 @@ userStatusLastMonth#77ebc742 = UserStatus;
|
|||||||
chatEmpty#29562865 id:long = Chat;
|
chatEmpty#29562865 id:long = Chat;
|
||||||
chat#41cbf256 flags:# creator:flags.0?true left:flags.2?true deactivated:flags.5?true call_active:flags.23?true call_not_empty:flags.24?true noforwards:flags.25?true id:long title:string photo:ChatPhoto participants_count:int date:int version:int migrated_to:flags.6?InputChannel admin_rights:flags.14?ChatAdminRights default_banned_rights:flags.18?ChatBannedRights = Chat;
|
chat#41cbf256 flags:# creator:flags.0?true left:flags.2?true deactivated:flags.5?true call_active:flags.23?true call_not_empty:flags.24?true noforwards:flags.25?true id:long title:string photo:ChatPhoto participants_count:int date:int version:int migrated_to:flags.6?InputChannel admin_rights:flags.14?ChatAdminRights default_banned_rights:flags.18?ChatBannedRights = Chat;
|
||||||
chatForbidden#6592a1a7 id:long title:string = Chat;
|
chatForbidden#6592a1a7 id:long title:string = Chat;
|
||||||
channel#8e87ccd8 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 color:flags2.7?PeerColor = Chat;
|
channel#aadfc8f 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 color:flags2.7?PeerColor profile_color:flags2.8?PeerColor emoji_status:flags2.9?EmojiStatus level:flags2.10?int = Chat;
|
||||||
channelForbidden#17d493d5 flags:# broadcast:flags.5?true megagroup:flags.8?true id:long access_hash:long title:string until_date:flags.16?int = Chat;
|
channelForbidden#17d493d5 flags:# broadcast:flags.5?true megagroup:flags.8?true id:long access_hash:long title:string until_date:flags.16?int = Chat;
|
||||||
|
|
||||||
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;
|
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;
|
channelFull#f2bcb6f 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 wallpaper:flags2.7?WallPaper = ChatFull;
|
||||||
|
|
||||||
chatParticipant#c02d4007 user_id:long inviter_id:long date:int = ChatParticipant;
|
chatParticipant#c02d4007 user_id:long inviter_id:long date:int = ChatParticipant;
|
||||||
chatParticipantCreator#e46bcee4 user_id:long = ChatParticipant;
|
chatParticipantCreator#e46bcee4 user_id:long = ChatParticipant;
|
||||||
@ -152,7 +152,8 @@ messageMediaGeoLive#b940c666 flags:# geo:GeoPoint heading:flags.0?int period:int
|
|||||||
messageMediaPoll#4bd6e798 poll:Poll results:PollResults = MessageMedia;
|
messageMediaPoll#4bd6e798 poll:Poll results:PollResults = MessageMedia;
|
||||||
messageMediaDice#3f7ee58b value:int emoticon:string = MessageMedia;
|
messageMediaDice#3f7ee58b value:int emoticon:string = MessageMedia;
|
||||||
messageMediaStory#68cb6283 flags:# via_mention:flags.1?true peer:Peer id:int story:flags.0?StoryItem = MessageMedia;
|
messageMediaStory#68cb6283 flags:# via_mention:flags.1?true peer:Peer id:int story:flags.0?StoryItem = MessageMedia;
|
||||||
messageMediaGiveaway#58260664 flags:# only_new_subscribers:flags.0?true channels:Vector<long> countries_iso2:flags.1?Vector<string> quantity:int months:int until_date:int = MessageMedia;
|
messageMediaGiveaway#daad85b0 flags:# only_new_subscribers:flags.0?true winners_are_visible:flags.2?true channels:Vector<long> countries_iso2:flags.1?Vector<string> prize_description:flags.3?string quantity:int months:int until_date:int = MessageMedia;
|
||||||
|
messageMediaGiveawayResults#c6991068 flags:# only_new_subscribers:flags.0?true refunded:flags.2?true channel_id:long additional_peers_count:flags.3?int launch_msg_id:int winners_count:int unclaimed_count:int winners:Vector<long> months:int prize_description:flags.1?string until_date:int = MessageMedia;
|
||||||
|
|
||||||
messageActionEmpty#b6aef7b0 = MessageAction;
|
messageActionEmpty#b6aef7b0 = MessageAction;
|
||||||
messageActionChatCreate#bd47cbad title:string users:Vector<long> = MessageAction;
|
messageActionChatCreate#bd47cbad title:string users:Vector<long> = MessageAction;
|
||||||
@ -190,9 +191,9 @@ messageActionGiftPremium#c83d6aec flags:# currency:string amount:long months:int
|
|||||||
messageActionTopicCreate#d999256 flags:# title:string icon_color:int icon_emoji_id:flags.0?long = MessageAction;
|
messageActionTopicCreate#d999256 flags:# title:string icon_color:int icon_emoji_id:flags.0?long = MessageAction;
|
||||||
messageActionTopicEdit#c0944820 flags:# title:flags.0?string icon_emoji_id:flags.1?long closed:flags.2?Bool hidden:flags.3?Bool = MessageAction;
|
messageActionTopicEdit#c0944820 flags:# title:flags.0?string icon_emoji_id:flags.1?long closed:flags.2?Bool hidden:flags.3?Bool = MessageAction;
|
||||||
messageActionSuggestProfilePhoto#57de635e photo:Photo = MessageAction;
|
messageActionSuggestProfilePhoto#57de635e photo:Photo = MessageAction;
|
||||||
messageActionRequestedPeer#fe77345d button_id:int peer:Peer = MessageAction;
|
messageActionRequestedPeer#31518e9b button_id:int peers:Vector<Peer> = MessageAction;
|
||||||
messageActionSetChatWallPaper#5060a3f4 flags:# same:flags.0?true for_both:flags.1?true wallpaper:WallPaper = MessageAction;
|
messageActionSetChatWallPaper#5060a3f4 flags:# same:flags.0?true for_both:flags.1?true wallpaper:WallPaper = MessageAction;
|
||||||
messageActionGiftCode#d2cfdb0e flags:# via_giveaway:flags.0?true unclaimed:flags.2?true boost_peer:flags.1?Peer months:int slug:string = MessageAction;
|
messageActionGiftCode#678c2e09 flags:# via_giveaway:flags.0?true unclaimed:flags.2?true boost_peer:flags.1?Peer months:int slug:string currency:flags.2?string amount:flags.2?long crypto_currency:flags.3?string crypto_amount:flags.3?long = MessageAction;
|
||||||
messageActionGiveawayLaunch#332ba9ed = MessageAction;
|
messageActionGiveawayLaunch#332ba9ed = MessageAction;
|
||||||
messageActionGiveawayResults#2a9fadc5 winners_count:int unclaimed_count:int = MessageAction;
|
messageActionGiveawayResults#2a9fadc5 winners_count:int unclaimed_count:int = MessageAction;
|
||||||
|
|
||||||
@ -416,6 +417,8 @@ updateSentStoryReaction#7d627683 peer:Peer story_id:int reaction:Reaction = Upda
|
|||||||
updateBotChatBoost#904dd49c peer:Peer boost:Boost qts:int = Update;
|
updateBotChatBoost#904dd49c peer:Peer boost:Boost qts:int = Update;
|
||||||
updateChannelViewForumAsMessages#7b68920 channel_id:long enabled:Bool = Update;
|
updateChannelViewForumAsMessages#7b68920 channel_id:long enabled:Bool = Update;
|
||||||
updatePeerWallpaper#ae3f101d flags:# wallpaper_overridden:flags.1?true peer:Peer wallpaper:flags.0?WallPaper = Update;
|
updatePeerWallpaper#ae3f101d flags:# wallpaper_overridden:flags.1?true peer:Peer wallpaper:flags.0?WallPaper = Update;
|
||||||
|
updateBotMessageReaction#ac21d3ce peer:Peer msg_id:int date:int actor:Peer old_reactions:Vector<Reaction> new_reactions:Vector<Reaction> qts:int = Update;
|
||||||
|
updateBotMessageReactions#9cb7759 peer:Peer msg_id:int date:int reactions:Vector<ReactionCount> qts:int = Update;
|
||||||
|
|
||||||
updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State;
|
updates.state#a56c2a3e pts:int qts:int date:int seq:int unread_count:int = updates.State;
|
||||||
|
|
||||||
@ -612,8 +615,9 @@ inputStickerSetPremiumGifts#c88b3b02 = InputStickerSet;
|
|||||||
inputStickerSetEmojiGenericAnimations#4c4d4ce = InputStickerSet;
|
inputStickerSetEmojiGenericAnimations#4c4d4ce = InputStickerSet;
|
||||||
inputStickerSetEmojiDefaultStatuses#29d0f5ee = InputStickerSet;
|
inputStickerSetEmojiDefaultStatuses#29d0f5ee = InputStickerSet;
|
||||||
inputStickerSetEmojiDefaultTopicIcons#44c1f8e9 = InputStickerSet;
|
inputStickerSetEmojiDefaultTopicIcons#44c1f8e9 = InputStickerSet;
|
||||||
|
inputStickerSetEmojiChannelDefaultStatuses#49748553 = InputStickerSet;
|
||||||
|
|
||||||
stickerSet#2dd14edc flags:# archived:flags.1?true official:flags.2?true masks:flags.3?true animated:flags.5?true videos:flags.6?true emojis:flags.7?true text_color:flags.9?true installed_date:flags.0?int id:long access_hash:long title:string short_name:string thumbs:flags.4?Vector<PhotoSize> thumb_dc_id:flags.4?int thumb_version:flags.4?int thumb_document_id:flags.8?long count:int hash:int = StickerSet;
|
stickerSet#2dd14edc flags:# archived:flags.1?true official:flags.2?true masks:flags.3?true animated:flags.5?true videos:flags.6?true emojis:flags.7?true text_color:flags.9?true channel_emoji_status:flags.10?true installed_date:flags.0?int id:long access_hash:long title:string short_name:string thumbs:flags.4?Vector<PhotoSize> thumb_dc_id:flags.4?int thumb_version:flags.4?int thumb_document_id:flags.8?long count:int hash:int = StickerSet;
|
||||||
|
|
||||||
messages.stickerSet#6e153f16 set:StickerSet packs:Vector<StickerPack> keywords:Vector<StickerKeyword> documents:Vector<Document> = messages.StickerSet;
|
messages.stickerSet#6e153f16 set:StickerSet packs:Vector<StickerPack> keywords:Vector<StickerKeyword> documents:Vector<Document> = messages.StickerSet;
|
||||||
messages.stickerSetNotModified#d3f924eb = messages.StickerSet;
|
messages.stickerSetNotModified#d3f924eb = messages.StickerSet;
|
||||||
@ -637,7 +641,7 @@ inputKeyboardButtonUserProfile#e988037b text:string user_id:InputUser = Keyboard
|
|||||||
keyboardButtonUserProfile#308660c1 text:string user_id:long = KeyboardButton;
|
keyboardButtonUserProfile#308660c1 text:string user_id:long = KeyboardButton;
|
||||||
keyboardButtonWebView#13767230 text:string url:string = KeyboardButton;
|
keyboardButtonWebView#13767230 text:string url:string = KeyboardButton;
|
||||||
keyboardButtonSimpleWebView#a0c0505c text:string url:string = KeyboardButton;
|
keyboardButtonSimpleWebView#a0c0505c text:string url:string = KeyboardButton;
|
||||||
keyboardButtonRequestPeer#d0b468c text:string button_id:int peer_type:RequestPeerType = KeyboardButton;
|
keyboardButtonRequestPeer#53d7bfd8 text:string button_id:int peer_type:RequestPeerType max_quantity:int = KeyboardButton;
|
||||||
|
|
||||||
keyboardButtonRow#77608b83 buttons:Vector<KeyboardButton> = KeyboardButtonRow;
|
keyboardButtonRow#77608b83 buttons:Vector<KeyboardButton> = KeyboardButtonRow;
|
||||||
|
|
||||||
@ -990,8 +994,10 @@ channelAdminLogEventActionEditTopic#f06fe208 prev_topic:ForumTopic new_topic:For
|
|||||||
channelAdminLogEventActionDeleteTopic#ae168909 topic:ForumTopic = ChannelAdminLogEventAction;
|
channelAdminLogEventActionDeleteTopic#ae168909 topic:ForumTopic = ChannelAdminLogEventAction;
|
||||||
channelAdminLogEventActionPinTopic#5d8d353b flags:# prev_topic:flags.0?ForumTopic new_topic:flags.1?ForumTopic = ChannelAdminLogEventAction;
|
channelAdminLogEventActionPinTopic#5d8d353b flags:# prev_topic:flags.0?ForumTopic new_topic:flags.1?ForumTopic = ChannelAdminLogEventAction;
|
||||||
channelAdminLogEventActionToggleAntiSpam#64f36dfc new_value:Bool = ChannelAdminLogEventAction;
|
channelAdminLogEventActionToggleAntiSpam#64f36dfc new_value:Bool = ChannelAdminLogEventAction;
|
||||||
channelAdminLogEventActionChangeColor#3c2b247b prev_value:int new_value:int = ChannelAdminLogEventAction;
|
channelAdminLogEventActionChangePeerColor#5796e780 prev_value:PeerColor new_value:PeerColor = ChannelAdminLogEventAction;
|
||||||
channelAdminLogEventActionChangeBackgroundEmoji#445fc434 prev_value:long new_value:long = ChannelAdminLogEventAction;
|
channelAdminLogEventActionChangeProfilePeerColor#5e477b25 prev_value:PeerColor new_value:PeerColor = ChannelAdminLogEventAction;
|
||||||
|
channelAdminLogEventActionChangeWallpaper#31bb5d52 prev_value:WallPaper new_value:WallPaper = ChannelAdminLogEventAction;
|
||||||
|
channelAdminLogEventActionChangeEmojiStatus#3ea9feb1 prev_value:EmojiStatus new_value:EmojiStatus = ChannelAdminLogEventAction;
|
||||||
|
|
||||||
channelAdminLogEvent#1fad68cd id:long date:int user_id:long action:ChannelAdminLogEventAction = ChannelAdminLogEvent;
|
channelAdminLogEvent#1fad68cd id:long date:int user_id:long action:ChannelAdminLogEventAction = ChannelAdminLogEvent;
|
||||||
|
|
||||||
@ -1168,7 +1174,7 @@ account.wallPapers#cdc3858c hash:long wallpapers:Vector<WallPaper> = account.Wal
|
|||||||
|
|
||||||
codeSettings#ad253d78 flags:# allow_flashcall:flags.0?true current_number:flags.1?true allow_app_hash:flags.4?true allow_missed_call:flags.5?true allow_firebase:flags.7?true logout_tokens:flags.6?Vector<bytes> token:flags.8?string app_sandbox:flags.8?Bool = CodeSettings;
|
codeSettings#ad253d78 flags:# allow_flashcall:flags.0?true current_number:flags.1?true allow_app_hash:flags.4?true allow_missed_call:flags.5?true allow_firebase:flags.7?true logout_tokens:flags.6?Vector<bytes> token:flags.8?string app_sandbox:flags.8?Bool = CodeSettings;
|
||||||
|
|
||||||
wallPaperSettings#1dc1bca4 flags:# blur:flags.1?true motion:flags.2?true background_color:flags.0?int second_background_color:flags.4?int third_background_color:flags.5?int fourth_background_color:flags.6?int intensity:flags.3?int rotation:flags.4?int = WallPaperSettings;
|
wallPaperSettings#372efcd0 flags:# blur:flags.1?true motion:flags.2?true background_color:flags.0?int second_background_color:flags.4?int third_background_color:flags.5?int fourth_background_color:flags.6?int intensity:flags.3?int rotation:flags.4?int emoticon:flags.7?string = WallPaperSettings;
|
||||||
|
|
||||||
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;
|
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;
|
||||||
|
|
||||||
@ -1447,7 +1453,7 @@ help.premiumPromo#5334759c status_text:string status_entities:Vector<MessageEnti
|
|||||||
inputStorePaymentPremiumSubscription#a6751e66 flags:# restore:flags.0?true upgrade:flags.1?true = InputStorePaymentPurpose;
|
inputStorePaymentPremiumSubscription#a6751e66 flags:# restore:flags.0?true upgrade:flags.1?true = InputStorePaymentPurpose;
|
||||||
inputStorePaymentGiftPremium#616f7fe8 user_id:InputUser currency:string amount:long = InputStorePaymentPurpose;
|
inputStorePaymentGiftPremium#616f7fe8 user_id:InputUser currency:string amount:long = InputStorePaymentPurpose;
|
||||||
inputStorePaymentPremiumGiftCode#a3805f3f flags:# users:Vector<InputUser> boost_peer:flags.0?InputPeer currency:string amount:long = InputStorePaymentPurpose;
|
inputStorePaymentPremiumGiftCode#a3805f3f flags:# users:Vector<InputUser> boost_peer:flags.0?InputPeer currency:string amount:long = InputStorePaymentPurpose;
|
||||||
inputStorePaymentPremiumGiveaway#7c9375e6 flags:# only_new_subscribers:flags.0?true boost_peer:InputPeer additional_peers:flags.1?Vector<InputPeer> countries_iso2:flags.2?Vector<string> random_id:long until_date:int currency:string amount:long = InputStorePaymentPurpose;
|
inputStorePaymentPremiumGiveaway#160544ca flags:# only_new_subscribers:flags.0?true winners_are_visible:flags.3?true boost_peer:InputPeer additional_peers:flags.1?Vector<InputPeer> countries_iso2:flags.2?Vector<string> prize_description:flags.4?string random_id:long until_date:int currency:string amount:long = InputStorePaymentPurpose;
|
||||||
|
|
||||||
premiumGiftOption#74c34319 flags:# months:int currency:string amount:long bot_url:string store_product:flags.0?string = PremiumGiftOption;
|
premiumGiftOption#74c34319 flags:# months:int currency:string amount:long bot_url:string store_product:flags.0?string = PremiumGiftOption;
|
||||||
|
|
||||||
@ -1574,8 +1580,10 @@ stories.allStories#6efc5e81 flags:# has_more:flags.0?true count:int state:string
|
|||||||
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;
|
||||||
|
|
||||||
storyView#b0bdeac5 flags:# blocked:flags.0?true blocked_my_stories_from:flags.1?true user_id:long date:int reaction:flags.2?Reaction = StoryView;
|
storyView#b0bdeac5 flags:# blocked:flags.0?true blocked_my_stories_from:flags.1?true user_id:long date:int reaction:flags.2?Reaction = StoryView;
|
||||||
|
storyViewPublicForward#9083670b flags:# blocked:flags.0?true blocked_my_stories_from:flags.1?true message:Message = StoryView;
|
||||||
|
storyViewPublicRepost#bd74cf49 flags:# blocked:flags.0?true blocked_my_stories_from:flags.1?true peer_id:Peer story:StoryItem = 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#59d78fc5 flags:# count:int views_count:int forwards_count:int reactions_count:int views:Vector<StoryView> chats:Vector<Chat> users:Vector<User> next_offset:flags.0?string = stories.StoryViewsList;
|
||||||
|
|
||||||
stories.storyViews#de9eed1d views:Vector<StoryViews> users:Vector<User> = stories.StoryViews;
|
stories.storyViews#de9eed1d views:Vector<StoryViews> users:Vector<User> = stories.StoryViews;
|
||||||
|
|
||||||
@ -1592,6 +1600,8 @@ mediaAreaVenue#be82db9c coordinates:MediaAreaCoordinates geo:GeoPoint title:stri
|
|||||||
inputMediaAreaVenue#b282217f coordinates:MediaAreaCoordinates query_id:long result_id:string = MediaArea;
|
inputMediaAreaVenue#b282217f coordinates:MediaAreaCoordinates query_id:long result_id:string = MediaArea;
|
||||||
mediaAreaGeoPoint#df8b3b22 coordinates:MediaAreaCoordinates geo:GeoPoint = MediaArea;
|
mediaAreaGeoPoint#df8b3b22 coordinates:MediaAreaCoordinates geo:GeoPoint = MediaArea;
|
||||||
mediaAreaSuggestedReaction#14455871 flags:# dark:flags.0?true flipped:flags.1?true coordinates:MediaAreaCoordinates reaction:Reaction = MediaArea;
|
mediaAreaSuggestedReaction#14455871 flags:# dark:flags.0?true flipped:flags.1?true coordinates:MediaAreaCoordinates reaction:Reaction = MediaArea;
|
||||||
|
mediaAreaChannelPost#770416af coordinates:MediaAreaCoordinates channel_id:long msg_id:int = MediaArea;
|
||||||
|
inputMediaAreaChannelPost#2271f2bf coordinates:MediaAreaCoordinates channel:InputChannel msg_id:int = MediaArea;
|
||||||
|
|
||||||
peerStories#9a35e999 flags:# peer:Peer max_read_id:flags.0?int stories:Vector<StoryItem> = PeerStories;
|
peerStories#9a35e999 flags:# peer:Peer max_read_id:flags.0?int stories:Vector<StoryItem> = PeerStories;
|
||||||
|
|
||||||
@ -1601,7 +1611,7 @@ messages.webPage#fd5e12bd webpage:WebPage chats:Vector<Chat> users:Vector<User>
|
|||||||
|
|
||||||
premiumGiftCodeOption#257e962b flags:# users:int months:int store_product:flags.0?string store_quantity:flags.1?int currency:string amount:long = PremiumGiftCodeOption;
|
premiumGiftCodeOption#257e962b flags:# users:int months:int store_product:flags.0?string store_quantity:flags.1?int currency:string amount:long = PremiumGiftCodeOption;
|
||||||
|
|
||||||
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;
|
payments.checkedGiftCode#284a1096 flags:# via_giveaway:flags.2?true from_id:flags.4?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;
|
||||||
|
|
||||||
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.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;
|
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;
|
||||||
@ -1635,11 +1645,17 @@ peerColor#b54b5acf flags:# color:flags.0?int background_emoji_id:flags.1?long =
|
|||||||
help.peerColorSet#26219a58 colors:Vector<int> = help.PeerColorSet;
|
help.peerColorSet#26219a58 colors:Vector<int> = help.PeerColorSet;
|
||||||
help.peerColorProfileSet#767d61eb palette_colors:Vector<int> bg_colors:Vector<int> story_colors:Vector<int> = help.PeerColorSet;
|
help.peerColorProfileSet#767d61eb palette_colors:Vector<int> bg_colors:Vector<int> story_colors:Vector<int> = help.PeerColorSet;
|
||||||
|
|
||||||
help.peerColorOption#135bd42f flags:# hidden:flags.0?true color_id:int colors:flags.1?help.PeerColorSet dark_colors:flags.2?help.PeerColorSet = help.PeerColorOption;
|
help.peerColorOption#ef8430ab flags:# hidden:flags.0?true color_id:int colors:flags.1?help.PeerColorSet dark_colors:flags.2?help.PeerColorSet channel_min_level:flags.3?int = help.PeerColorOption;
|
||||||
|
|
||||||
help.peerColorsNotModified#2ba1f5ce = help.PeerColors;
|
help.peerColorsNotModified#2ba1f5ce = help.PeerColors;
|
||||||
help.peerColors#f8ed08 hash:int colors:Vector<help.PeerColorOption> = help.PeerColors;
|
help.peerColors#f8ed08 hash:int colors:Vector<help.PeerColorOption> = help.PeerColors;
|
||||||
|
|
||||||
|
storyReaction#6090d6d5 peer_id:Peer date:int reaction:Reaction = StoryReaction;
|
||||||
|
storyReactionPublicForward#bbab2643 message:Message = StoryReaction;
|
||||||
|
storyReactionPublicRepost#cfcd0f13 peer_id:Peer story:StoryItem = StoryReaction;
|
||||||
|
|
||||||
|
stories.storyReactionsList#aa5f789c flags:# count:int reactions:Vector<StoryReaction> chats:Vector<Chat> users:Vector<User> next_offset:flags.0?string = stories.StoryReactionsList;
|
||||||
|
|
||||||
---functions---
|
---functions---
|
||||||
|
|
||||||
invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
|
invokeAfterMsg#cb9f372d {X:Type} msg_id:long query:!X = X;
|
||||||
@ -1763,6 +1779,8 @@ account.deleteAutoSaveExceptions#53bc0020 = Bool;
|
|||||||
account.invalidateSignInCodes#ca8ae8ba codes:Vector<string> = Bool;
|
account.invalidateSignInCodes#ca8ae8ba codes:Vector<string> = Bool;
|
||||||
account.updateColor#7cefa15d flags:# for_profile:flags.1?true color:flags.2?int background_emoji_id:flags.0?long = Bool;
|
account.updateColor#7cefa15d flags:# for_profile:flags.1?true color:flags.2?int background_emoji_id:flags.0?long = Bool;
|
||||||
account.getDefaultBackgroundEmojis#a60ab9ce hash:long = EmojiList;
|
account.getDefaultBackgroundEmojis#a60ab9ce hash:long = EmojiList;
|
||||||
|
account.getChannelDefaultEmojiStatuses#7727a7d5 hash:long = account.EmojiStatuses;
|
||||||
|
account.getChannelRestrictedStatusEmojis#35a9e0d5 hash:long = EmojiList;
|
||||||
|
|
||||||
users.getUsers#d91a548 id:Vector<InputUser> = Vector<User>;
|
users.getUsers#d91a548 id:Vector<InputUser> = Vector<User>;
|
||||||
users.getFullUser#b60f5918 id:InputUser = users.UserFull;
|
users.getFullUser#b60f5918 id:InputUser = users.UserFull;
|
||||||
@ -1972,7 +1990,7 @@ messages.clearRecentReactions#9dfeefb4 = Bool;
|
|||||||
messages.getExtendedMedia#84f80814 peer:InputPeer id:Vector<int> = Updates;
|
messages.getExtendedMedia#84f80814 peer:InputPeer id:Vector<int> = Updates;
|
||||||
messages.setDefaultHistoryTTL#9eb51445 period:int = Bool;
|
messages.setDefaultHistoryTTL#9eb51445 period:int = Bool;
|
||||||
messages.getDefaultHistoryTTL#658b7188 = DefaultHistoryTTL;
|
messages.getDefaultHistoryTTL#658b7188 = DefaultHistoryTTL;
|
||||||
messages.sendBotRequestedPeer#fe38d01b peer:InputPeer msg_id:int button_id:int requested_peer:InputPeer = Updates;
|
messages.sendBotRequestedPeer#91b2d060 peer:InputPeer msg_id:int button_id:int requested_peers:Vector<InputPeer> = Updates;
|
||||||
messages.getEmojiGroups#7488ce5b hash:int = messages.EmojiGroups;
|
messages.getEmojiGroups#7488ce5b hash:int = messages.EmojiGroups;
|
||||||
messages.getEmojiStatusGroups#2ecd56cd hash:int = messages.EmojiGroups;
|
messages.getEmojiStatusGroups#2ecd56cd hash:int = messages.EmojiGroups;
|
||||||
messages.getEmojiProfilePhotoGroups#21a548f3 hash:int = messages.EmojiGroups;
|
messages.getEmojiProfilePhotoGroups#21a548f3 hash:int = messages.EmojiGroups;
|
||||||
@ -2007,7 +2025,6 @@ help.getNearestDc#1fb33026 = NearestDc;
|
|||||||
help.getAppUpdate#522d5a7d source:string = help.AppUpdate;
|
help.getAppUpdate#522d5a7d source:string = help.AppUpdate;
|
||||||
help.getInviteText#4d392343 = help.InviteText;
|
help.getInviteText#4d392343 = help.InviteText;
|
||||||
help.getSupport#9cdf08cd = help.Support;
|
help.getSupport#9cdf08cd = help.Support;
|
||||||
help.getAppChangelog#9010ef6f prev_app_version:string = Updates;
|
|
||||||
help.setBotUpdatesStatus#ec22cfcd pending_updates_count:int message:string = Bool;
|
help.setBotUpdatesStatus#ec22cfcd pending_updates_count:int message:string = Bool;
|
||||||
help.getCdnConfig#52029342 = CdnConfig;
|
help.getCdnConfig#52029342 = CdnConfig;
|
||||||
help.getRecentMeUrls#3dc0f114 referer:string = help.RecentMeUrls;
|
help.getRecentMeUrls#3dc0f114 referer:string = help.RecentMeUrls;
|
||||||
@ -2084,9 +2101,10 @@ channels.toggleAntiSpam#68f3e4eb channel:InputChannel enabled:Bool = Updates;
|
|||||||
channels.reportAntiSpamFalsePositive#a850a693 channel:InputChannel msg_id:int = Bool;
|
channels.reportAntiSpamFalsePositive#a850a693 channel:InputChannel msg_id:int = Bool;
|
||||||
channels.toggleParticipantsHidden#6a6e7854 channel:InputChannel enabled:Bool = Updates;
|
channels.toggleParticipantsHidden#6a6e7854 channel:InputChannel enabled:Bool = Updates;
|
||||||
channels.clickSponsoredMessage#18afbc93 channel:InputChannel random_id:bytes = Bool;
|
channels.clickSponsoredMessage#18afbc93 channel:InputChannel random_id:bytes = Bool;
|
||||||
channels.updateColor#621a201f flags:# channel:InputChannel color:int background_emoji_id:flags.0?long = Updates;
|
channels.updateColor#d8aa3671 flags:# for_profile:flags.1?true channel:InputChannel color:flags.2?int background_emoji_id:flags.0?long = Updates;
|
||||||
channels.toggleViewForumAsMessages#9738bb15 channel:InputChannel enabled:Bool = Updates;
|
channels.toggleViewForumAsMessages#9738bb15 channel:InputChannel enabled:Bool = Updates;
|
||||||
channels.getChannelRecommendations#83b70d97 channel:InputChannel = messages.Chats;
|
channels.getChannelRecommendations#83b70d97 channel:InputChannel = messages.Chats;
|
||||||
|
channels.updateEmojiStatus#f0d3e6a8 channel:InputChannel emoji_status:EmojiStatus = Updates;
|
||||||
|
|
||||||
bots.sendCustomRequest#aa2769ed custom_method:string params:DataJSON = DataJSON;
|
bots.sendCustomRequest#aa2769ed custom_method:string params:DataJSON = DataJSON;
|
||||||
bots.answerWebhookJSONQuery#e6213f4d query_id:long data:DataJSON = Bool;
|
bots.answerWebhookJSONQuery#e6213f4d query_id:long data:DataJSON = Bool;
|
||||||
@ -2176,7 +2194,7 @@ folders.editPeerFolders#6847d0ab folder_peers:Vector<InputFolderPeer> = Updates;
|
|||||||
stats.getBroadcastStats#ab42441a flags:# dark:flags.0?true channel:InputChannel = stats.BroadcastStats;
|
stats.getBroadcastStats#ab42441a flags:# dark:flags.0?true channel:InputChannel = stats.BroadcastStats;
|
||||||
stats.loadAsyncGraph#621d5fa0 flags:# token:string x:flags.0?long = StatsGraph;
|
stats.loadAsyncGraph#621d5fa0 flags:# token:string x:flags.0?long = StatsGraph;
|
||||||
stats.getMegagroupStats#dcdf8607 flags:# dark:flags.0?true channel:InputChannel = stats.MegagroupStats;
|
stats.getMegagroupStats#dcdf8607 flags:# dark:flags.0?true channel:InputChannel = stats.MegagroupStats;
|
||||||
stats.getMessagePublicForwards#5630281b channel:InputChannel msg_id:int offset_rate:int offset_peer:InputPeer offset_id:int limit:int = messages.Messages;
|
stats.getMessagePublicForwards#5f150144 channel:InputChannel msg_id:int offset:string limit:int = stats.PublicForwards;
|
||||||
stats.getMessageStats#b6e0a3f5 flags:# dark:flags.0?true channel:InputChannel msg_id:int = stats.MessageStats;
|
stats.getMessageStats#b6e0a3f5 flags:# dark:flags.0?true channel:InputChannel msg_id:int = stats.MessageStats;
|
||||||
stats.getStoryStats#374fef40 flags:# dark:flags.0?true peer:InputPeer id:int = stats.StoryStats;
|
stats.getStoryStats#374fef40 flags:# dark:flags.0?true peer:InputPeer id:int = stats.StoryStats;
|
||||||
stats.getStoryPublicForwards#a6437ef6 peer:InputPeer id:int offset:string limit:int = stats.PublicForwards;
|
stats.getStoryPublicForwards#a6437ef6 peer:InputPeer id:int offset:string limit:int = stats.PublicForwards;
|
||||||
@ -2205,7 +2223,7 @@ stories.getStoriesByID#5774ca74 peer:InputPeer id:Vector<int> = stories.Stories;
|
|||||||
stories.toggleAllStoriesHidden#7c2557c4 hidden:Bool = Bool;
|
stories.toggleAllStoriesHidden#7c2557c4 hidden:Bool = Bool;
|
||||||
stories.readStories#a556dac8 peer:InputPeer max_id:int = Vector<int>;
|
stories.readStories#a556dac8 peer:InputPeer max_id:int = Vector<int>;
|
||||||
stories.incrementStoryViews#b2028afb peer:InputPeer id:Vector<int> = Bool;
|
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;
|
stories.getStoryViewsList#7ed23c57 flags:# just_contacts:flags.0?true reactions_first:flags.2?true forwards_first:flags.3?true peer:InputPeer q:flags.1?string id:int offset:string limit:int = stories.StoryViewsList;
|
||||||
stories.getStoriesViews#28e16cc8 peer:InputPeer id:Vector<int> = stories.StoryViews;
|
stories.getStoriesViews#28e16cc8 peer:InputPeer id:Vector<int> = stories.StoryViews;
|
||||||
stories.exportStoryLink#7b8def20 peer:InputPeer id:int = ExportedStoryLink;
|
stories.exportStoryLink#7b8def20 peer:InputPeer id:int = ExportedStoryLink;
|
||||||
stories.report#1923fa8c peer:InputPeer id:Vector<int> reason:ReportReason message:string = Bool;
|
stories.report#1923fa8c peer:InputPeer id:Vector<int> reason:ReportReason message:string = Bool;
|
||||||
@ -2216,6 +2234,7 @@ stories.getAllReadPeerStories#9b5ae7f9 = Updates;
|
|||||||
stories.getPeerMaxIDs#535983c3 id:Vector<InputPeer> = Vector<int>;
|
stories.getPeerMaxIDs#535983c3 id:Vector<InputPeer> = Vector<int>;
|
||||||
stories.getChatsToSend#a56a8b60 = messages.Chats;
|
stories.getChatsToSend#a56a8b60 = messages.Chats;
|
||||||
stories.togglePeerStoriesHidden#bd0415c4 peer:InputPeer hidden:Bool = Bool;
|
stories.togglePeerStoriesHidden#bd0415c4 peer:InputPeer hidden:Bool = Bool;
|
||||||
|
stories.getStoryReactionsList#b9b2881f flags:# forwards_first:flags.2?true peer:InputPeer id:int reaction:flags.0?Reaction offset:flags.1?string limit:int = stories.StoryReactionsList;
|
||||||
|
|
||||||
premium.getBoostsList#60f67660 flags:# gifts:flags.0?true peer:InputPeer offset:string limit:int = premium.BoostsList;
|
premium.getBoostsList#60f67660 flags:# gifts:flags.0?true peer:InputPeer offset:string limit:int = premium.BoostsList;
|
||||||
premium.getMyBoosts#be77b4a = premium.MyBoosts;
|
premium.getMyBoosts#be77b4a = premium.MyBoosts;
|
||||||
|
@ -78,7 +78,7 @@ class SaveAppLogQuery final : public Td::ResultHandler {
|
|||||||
promise_.set_error(std::move(status));
|
promise_.set_error(std::move(status));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
/*
|
||||||
class GetAppChangelogQuery final : public Td::ResultHandler {
|
class GetAppChangelogQuery final : public Td::ResultHandler {
|
||||||
Promise<Unit> promise_;
|
Promise<Unit> promise_;
|
||||||
|
|
||||||
@ -107,7 +107,7 @@ class GetAppChangelogQuery final : public Td::ResultHandler {
|
|||||||
promise_.set_error(std::move(status));
|
promise_.set_error(std::move(status));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
*/
|
||||||
void get_invite_text(Td *td, Promise<string> &&promise) {
|
void get_invite_text(Td *td, Promise<string> &&promise) {
|
||||||
td->create_handler<GetInviteTextQuery>(std::move(promise))->send();
|
td->create_handler<GetInviteTextQuery>(std::move(promise))->send();
|
||||||
}
|
}
|
||||||
@ -172,7 +172,7 @@ void on_save_app_log_binlog_event(Td *td, BinlogEvent &&event) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void add_app_changelog(Td *td, const string &previous_application_version, Promise<Unit> &&promise) {
|
void add_app_changelog(Td *td, const string &previous_application_version, Promise<Unit> &&promise) {
|
||||||
td->create_handler<GetAppChangelogQuery>(std::move(promise))->send(previous_application_version);
|
// td->create_handler<GetAppChangelogQuery>(std::move(promise))->send(previous_application_version);
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace td
|
} // namespace td
|
||||||
|
@ -469,7 +469,7 @@ telegram_api::object_ptr<telegram_api::wallPaperSettings> BackgroundType::get_in
|
|||||||
}
|
}
|
||||||
return telegram_api::make_object<telegram_api::wallPaperSettings>(
|
return telegram_api::make_object<telegram_api::wallPaperSettings>(
|
||||||
flags, is_blurred_, is_moving_, fill_.top_color_, fill_.bottom_color_, fill_.third_color_, fill_.fourth_color_,
|
flags, is_blurred_, is_moving_, fill_.top_color_, fill_.bottom_color_, fill_.third_color_, fill_.fourth_color_,
|
||||||
intensity_, fill_.rotation_angle_);
|
intensity_, fill_.rotation_angle_, string());
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace td
|
} // namespace td
|
||||||
|
@ -1374,11 +1374,14 @@ class UpdateChannelColorQuery final : public Td::ResultHandler {
|
|||||||
auto input_channel = td_->contacts_manager_->get_input_channel(channel_id);
|
auto input_channel = td_->contacts_manager_->get_input_channel(channel_id);
|
||||||
CHECK(input_channel != nullptr);
|
CHECK(input_channel != nullptr);
|
||||||
int32 flags = 0;
|
int32 flags = 0;
|
||||||
|
if (accent_color_id.is_valid()) {
|
||||||
|
flags |= telegram_api::channels_updateColor::COLOR_MASK;
|
||||||
|
}
|
||||||
if (background_custom_emoji_id.is_valid()) {
|
if (background_custom_emoji_id.is_valid()) {
|
||||||
flags |= telegram_api::channels_updateColor::BACKGROUND_EMOJI_ID_MASK;
|
flags |= telegram_api::channels_updateColor::BACKGROUND_EMOJI_ID_MASK;
|
||||||
}
|
}
|
||||||
send_query(G()->net_query_creator().create(
|
send_query(G()->net_query_creator().create(
|
||||||
telegram_api::channels_updateColor(flags, std::move(input_channel), accent_color_id.get(),
|
telegram_api::channels_updateColor(flags, false /*ignored*/, std::move(input_channel), accent_color_id.get(),
|
||||||
background_custom_emoji_id.get()),
|
background_custom_emoji_id.get()),
|
||||||
{{channel_id}}));
|
{{channel_id}}));
|
||||||
}
|
}
|
||||||
|
@ -429,19 +429,14 @@ static td_api::object_ptr<td_api::ChatEventAction> get_chat_event_action_object(
|
|||||||
auto action = move_tl_object_as<telegram_api::channelAdminLogEventActionToggleAntiSpam>(action_ptr);
|
auto action = move_tl_object_as<telegram_api::channelAdminLogEventActionToggleAntiSpam>(action_ptr);
|
||||||
return td_api::make_object<td_api::chatEventHasAggressiveAntiSpamEnabledToggled>(action->new_value_);
|
return td_api::make_object<td_api::chatEventHasAggressiveAntiSpamEnabledToggled>(action->new_value_);
|
||||||
}
|
}
|
||||||
case telegram_api::channelAdminLogEventActionChangeColor::ID: {
|
case telegram_api::channelAdminLogEventActionChangePeerColor::ID:
|
||||||
auto action = move_tl_object_as<telegram_api::channelAdminLogEventActionChangeColor>(action_ptr);
|
return nullptr;
|
||||||
auto old_accent_color_id = AccentColorId(action->prev_value_);
|
case telegram_api::channelAdminLogEventActionChangeProfilePeerColor::ID:
|
||||||
auto new_accent_color_id = AccentColorId(action->new_value_);
|
return nullptr;
|
||||||
return td_api::make_object<td_api::chatEventAccentColorChanged>(
|
case telegram_api::channelAdminLogEventActionChangeWallpaper::ID:
|
||||||
td->theme_manager_->get_accent_color_id_object(old_accent_color_id, AccentColorId(channel_id)),
|
return nullptr;
|
||||||
td->theme_manager_->get_accent_color_id_object(new_accent_color_id, AccentColorId(channel_id)));
|
case telegram_api::channelAdminLogEventActionChangeEmojiStatus::ID:
|
||||||
}
|
return nullptr;
|
||||||
case telegram_api::channelAdminLogEventActionChangeBackgroundEmoji::ID: {
|
|
||||||
auto action = move_tl_object_as<telegram_api::channelAdminLogEventActionChangeBackgroundEmoji>(action_ptr);
|
|
||||||
return td_api::make_object<td_api::chatEventBackgroundCustomEmojiChanged>(action->prev_value_,
|
|
||||||
action->new_value_);
|
|
||||||
}
|
|
||||||
default:
|
default:
|
||||||
UNREACHABLE();
|
UNREACHABLE();
|
||||||
return nullptr;
|
return nullptr;
|
||||||
|
@ -108,8 +108,8 @@ GiveawayParameters::get_input_store_payment_premium_giveaway(Td *td, const strin
|
|||||||
flags |= telegram_api::inputStorePaymentPremiumGiveaway::COUNTRIES_ISO2_MASK;
|
flags |= telegram_api::inputStorePaymentPremiumGiveaway::COUNTRIES_ISO2_MASK;
|
||||||
}
|
}
|
||||||
return telegram_api::make_object<telegram_api::inputStorePaymentPremiumGiveaway>(
|
return telegram_api::make_object<telegram_api::inputStorePaymentPremiumGiveaway>(
|
||||||
flags, false /*ignored*/, std::move(boost_input_peer), std::move(additional_input_peers),
|
flags, false /*ignored*/, false /*ignored*/, std::move(boost_input_peer), std::move(additional_input_peers),
|
||||||
vector<string>(country_codes_), random_id, date_, currency, amount);
|
vector<string>(country_codes_), string(), random_id, date_, currency, amount);
|
||||||
}
|
}
|
||||||
|
|
||||||
td_api::object_ptr<td_api::premiumGiveawayParameters> GiveawayParameters::get_premium_giveaway_parameters_object(
|
td_api::object_ptr<td_api::premiumGiveawayParameters> GiveawayParameters::get_premium_giveaway_parameters_object(
|
||||||
|
@ -52,9 +52,14 @@ MediaArea::MediaArea(Td *td, telegram_api::object_ptr<telegram_api::MediaArea> &
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case telegram_api::mediaAreaChannelPost::ID:
|
||||||
|
break;
|
||||||
case telegram_api::inputMediaAreaVenue::ID:
|
case telegram_api::inputMediaAreaVenue::ID:
|
||||||
LOG(ERROR) << "Receive " << to_string(media_area_ptr);
|
LOG(ERROR) << "Receive " << to_string(media_area_ptr);
|
||||||
break;
|
break;
|
||||||
|
case telegram_api::inputMediaAreaChannelPost::ID:
|
||||||
|
LOG(ERROR) << "Receive " << to_string(media_area_ptr);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
UNREACHABLE();
|
UNREACHABLE();
|
||||||
}
|
}
|
||||||
|
@ -5744,6 +5744,8 @@ unique_ptr<MessageContent> get_message_content(Td *td, FormattedText message,
|
|||||||
media->until_date_, std::move(media->countries_iso2_)},
|
media->until_date_, std::move(media->countries_iso2_)},
|
||||||
media->quantity_, media->months_);
|
media->quantity_, media->months_);
|
||||||
}
|
}
|
||||||
|
case telegram_api::messageMediaGiveawayResults::ID:
|
||||||
|
return make_unique<MessageUnsupported>();
|
||||||
case telegram_api::messageMediaUnsupported::ID:
|
case telegram_api::messageMediaUnsupported::ID:
|
||||||
return make_unique<MessageUnsupported>();
|
return make_unique<MessageUnsupported>();
|
||||||
default:
|
default:
|
||||||
@ -6361,7 +6363,11 @@ unique_ptr<MessageContent> get_action_message_content(Td *td, tl_object_ptr<tele
|
|||||||
}
|
}
|
||||||
case telegram_api::messageActionRequestedPeer::ID: {
|
case telegram_api::messageActionRequestedPeer::ID: {
|
||||||
auto action = move_tl_object_as<telegram_api::messageActionRequestedPeer>(action_ptr);
|
auto action = move_tl_object_as<telegram_api::messageActionRequestedPeer>(action_ptr);
|
||||||
DialogId dialog_id(action->peer_);
|
if (action->peers_.empty()) {
|
||||||
|
LOG(ERROR) << "Receive invalid " << oneline(to_string(action));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
DialogId dialog_id(action->peers_[0]);
|
||||||
if (!dialog_id.is_valid()) {
|
if (!dialog_id.is_valid()) {
|
||||||
LOG(ERROR) << "Receive invalid " << oneline(to_string(action));
|
LOG(ERROR) << "Receive invalid " << oneline(to_string(action));
|
||||||
break;
|
break;
|
||||||
|
@ -4038,11 +4038,13 @@ class SendBotRequestedPeerQuery final : public Td::ResultHandler {
|
|||||||
if (requested_peer == nullptr) {
|
if (requested_peer == nullptr) {
|
||||||
return on_error(Status::Error(400, "Can't access the chosen chat"));
|
return on_error(Status::Error(400, "Can't access the chosen chat"));
|
||||||
}
|
}
|
||||||
|
vector<telegram_api::object_ptr<telegram_api::InputPeer>> requested_peers;
|
||||||
|
requested_peers.push_back(std::move(requested_peer));
|
||||||
|
|
||||||
send_query(G()->net_query_creator().create(
|
send_query(G()->net_query_creator().create(
|
||||||
telegram_api::messages_sendBotRequestedPeer(std::move(input_peer),
|
telegram_api::messages_sendBotRequestedPeer(std::move(input_peer),
|
||||||
message_full_id.get_message_id().get_server_message_id().get(),
|
message_full_id.get_message_id().get_server_message_id().get(),
|
||||||
button_id, std::move(requested_peer)),
|
button_id, std::move(requested_peers)),
|
||||||
{{dialog_id, MessageContentType::Text}}));
|
{{dialog_id, MessageContentType::Text}}));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -324,15 +324,22 @@ class CheckGiftCodeQuery final : public Td::ResultHandler {
|
|||||||
td_->contacts_manager_->on_get_users(std::move(result->users_), "CheckGiftCodeQuery");
|
td_->contacts_manager_->on_get_users(std::move(result->users_), "CheckGiftCodeQuery");
|
||||||
td_->contacts_manager_->on_get_chats(std::move(result->chats_), "CheckGiftCodeQuery");
|
td_->contacts_manager_->on_get_chats(std::move(result->chats_), "CheckGiftCodeQuery");
|
||||||
|
|
||||||
DialogId creator_dialog_id(result->from_id_);
|
if (result->date_ <= 0 || result->months_ <= 0 || result->used_date_ < 0) {
|
||||||
if (!creator_dialog_id.is_valid() ||
|
|
||||||
!td_->messages_manager_->have_dialog_info_force(creator_dialog_id, "CheckGiftCodeQuery") ||
|
|
||||||
result->date_ <= 0 || result->months_ <= 0 || result->used_date_ < 0) {
|
|
||||||
LOG(ERROR) << "Receive " << to_string(result);
|
LOG(ERROR) << "Receive " << to_string(result);
|
||||||
return on_error(Status::Error(500, "Receive invalid response"));
|
return on_error(Status::Error(500, "Receive invalid response"));
|
||||||
}
|
}
|
||||||
if (creator_dialog_id.get_type() != DialogType::User) {
|
|
||||||
td_->messages_manager_->force_create_dialog(creator_dialog_id, "CheckGiftCodeQuery", true);
|
DialogId creator_dialog_id;
|
||||||
|
if (result->from_id_ != nullptr) {
|
||||||
|
creator_dialog_id = DialogId(result->from_id_);
|
||||||
|
if (!creator_dialog_id.is_valid() ||
|
||||||
|
!td_->messages_manager_->have_dialog_info_force(creator_dialog_id, "CheckGiftCodeQuery")) {
|
||||||
|
LOG(ERROR) << "Receive " << to_string(result);
|
||||||
|
return on_error(Status::Error(500, "Receive invalid response"));
|
||||||
|
}
|
||||||
|
if (creator_dialog_id.get_type() != DialogType::User) {
|
||||||
|
td_->messages_manager_->force_create_dialog(creator_dialog_id, "CheckGiftCodeQuery", true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
UserId user_id(result->to_id_);
|
UserId user_id(result->to_id_);
|
||||||
if (!user_id.is_valid() && user_id != UserId()) {
|
if (!user_id.is_valid() && user_id != UserId()) {
|
||||||
@ -349,9 +356,10 @@ class CheckGiftCodeQuery final : public Td::ResultHandler {
|
|||||||
message_id = MessageId();
|
message_id = MessageId();
|
||||||
}
|
}
|
||||||
promise_.set_value(td_api::make_object<td_api::premiumGiftCodeInfo>(
|
promise_.set_value(td_api::make_object<td_api::premiumGiftCodeInfo>(
|
||||||
get_message_sender_object(td_, creator_dialog_id, "premiumGiftCodeInfo"), result->date_, result->via_giveaway_,
|
creator_dialog_id == DialogId() ? nullptr
|
||||||
message_id.get(), result->months_, td_->contacts_manager_->get_user_id_object(user_id, "premiumGiftCodeInfo"),
|
: get_message_sender_object(td_, creator_dialog_id, "premiumGiftCodeInfo"),
|
||||||
result->used_date_));
|
result->date_, result->via_giveaway_, message_id.get(), result->months_,
|
||||||
|
td_->contacts_manager_->get_user_id_object(user_id, "premiumGiftCodeInfo"), result->used_date_));
|
||||||
}
|
}
|
||||||
|
|
||||||
void on_error(Status status) final {
|
void on_error(Status status) final {
|
||||||
|
@ -867,7 +867,7 @@ static tl_object_ptr<telegram_api::KeyboardButton> get_input_keyboard_button(con
|
|||||||
case KeyboardButton::Type::RequestDialog:
|
case KeyboardButton::Type::RequestDialog:
|
||||||
return make_tl_object<telegram_api::keyboardButtonRequestPeer>(
|
return make_tl_object<telegram_api::keyboardButtonRequestPeer>(
|
||||||
keyboard_button.text, keyboard_button.requested_dialog_type->get_button_id(),
|
keyboard_button.text, keyboard_button.requested_dialog_type->get_button_id(),
|
||||||
keyboard_button.requested_dialog_type->get_input_request_peer_type_object());
|
keyboard_button.requested_dialog_type->get_input_request_peer_type_object(), 1);
|
||||||
default:
|
default:
|
||||||
UNREACHABLE();
|
UNREACHABLE();
|
||||||
return nullptr;
|
return nullptr;
|
||||||
|
@ -66,6 +66,9 @@ SpecialStickerSetType::SpecialStickerSetType(
|
|||||||
case telegram_api::inputStickerSetEmojiDefaultTopicIcons::ID:
|
case telegram_api::inputStickerSetEmojiDefaultTopicIcons::ID:
|
||||||
*this = default_topic_icons();
|
*this = default_topic_icons();
|
||||||
break;
|
break;
|
||||||
|
case telegram_api::inputStickerSetEmojiChannelDefaultStatuses::ID:
|
||||||
|
*this = default_statuses();
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
UNREACHABLE();
|
UNREACHABLE();
|
||||||
break;
|
break;
|
||||||
|
@ -394,28 +394,23 @@ class LoadAsyncGraphQuery final : public Td::ResultHandler {
|
|||||||
};
|
};
|
||||||
|
|
||||||
class GetMessagePublicForwardsQuery final : public Td::ResultHandler {
|
class GetMessagePublicForwardsQuery final : public Td::ResultHandler {
|
||||||
Promise<td_api::object_ptr<td_api::foundMessages>> promise_;
|
Promise<td_api::object_ptr<td_api::storyPublicForwards>> promise_;
|
||||||
DialogId dialog_id_;
|
DialogId dialog_id_;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit GetMessagePublicForwardsQuery(Promise<td_api::object_ptr<td_api::foundMessages>> &&promise)
|
explicit GetMessagePublicForwardsQuery(Promise<td_api::object_ptr<td_api::storyPublicForwards>> &&promise)
|
||||||
: promise_(std::move(promise)) {
|
: promise_(std::move(promise)) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void send(DcId dc_id, MessageFullId message_full_id, int32 offset_date, DialogId offset_dialog_id,
|
void send(DcId dc_id, MessageFullId message_full_id, const string &offset, int32 limit) {
|
||||||
ServerMessageId offset_message_id, int32 limit) {
|
|
||||||
dialog_id_ = message_full_id.get_dialog_id();
|
dialog_id_ = message_full_id.get_dialog_id();
|
||||||
|
|
||||||
auto input_peer = MessagesManager::get_input_peer_force(offset_dialog_id);
|
|
||||||
CHECK(input_peer != nullptr);
|
|
||||||
|
|
||||||
auto input_channel = td_->contacts_manager_->get_input_channel(dialog_id_.get_channel_id());
|
auto input_channel = td_->contacts_manager_->get_input_channel(dialog_id_.get_channel_id());
|
||||||
CHECK(input_channel != nullptr);
|
CHECK(input_channel != nullptr);
|
||||||
|
|
||||||
send_query(G()->net_query_creator().create(
|
send_query(G()->net_query_creator().create(
|
||||||
telegram_api::stats_getMessagePublicForwards(
|
telegram_api::stats_getMessagePublicForwards(
|
||||||
std::move(input_channel), message_full_id.get_message_id().get_server_message_id().get(), offset_date,
|
std::move(input_channel), message_full_id.get_message_id().get_server_message_id().get(), offset, limit),
|
||||||
std::move(input_peer), offset_message_id.get(), limit),
|
|
||||||
{}, dc_id));
|
{}, dc_id));
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -425,19 +420,18 @@ class GetMessagePublicForwardsQuery final : public Td::ResultHandler {
|
|||||||
return on_error(result_ptr.move_as_error());
|
return on_error(result_ptr.move_as_error());
|
||||||
}
|
}
|
||||||
|
|
||||||
auto info = get_messages_info(td_, DialogId(), result_ptr.move_as_ok(), "GetMessagePublicForwardsQuery");
|
|
||||||
td_->messages_manager_->get_channel_differences_if_needed(
|
td_->messages_manager_->get_channel_differences_if_needed(
|
||||||
std::move(info),
|
result_ptr.move_as_ok(),
|
||||||
PromiseCreator::lambda([actor_id = td_->statistics_manager_actor_.get(),
|
PromiseCreator::lambda(
|
||||||
promise = std::move(promise_)](Result<MessagesInfo> &&result) mutable {
|
[actor_id = td_->statistics_manager_actor_.get(), promise = std::move(promise_)](
|
||||||
if (result.is_error()) {
|
Result<telegram_api::object_ptr<telegram_api::stats_publicForwards>> &&result) mutable {
|
||||||
promise.set_error(result.move_as_error());
|
if (result.is_error()) {
|
||||||
} else {
|
promise.set_error(result.move_as_error());
|
||||||
auto info = result.move_as_ok();
|
} else {
|
||||||
send_closure(actor_id, &StatisticsManager::on_get_message_public_forwards, info.total_count,
|
send_closure(actor_id, &StatisticsManager::on_get_public_forwards, result.move_as_ok(),
|
||||||
std::move(info.messages), info.next_rate, std::move(promise));
|
std::move(promise));
|
||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
"GetMessagePublicForwardsQuery");
|
"GetMessagePublicForwardsQuery");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -484,7 +478,7 @@ class GetStoryPublicForwardsQuery final : public Td::ResultHandler {
|
|||||||
if (result.is_error()) {
|
if (result.is_error()) {
|
||||||
promise.set_error(result.move_as_error());
|
promise.set_error(result.move_as_error());
|
||||||
} else {
|
} else {
|
||||||
send_closure(actor_id, &StatisticsManager::on_get_story_public_forwards, result.move_as_ok(),
|
send_closure(actor_id, &StatisticsManager::on_get_public_forwards, result.move_as_ok(),
|
||||||
std::move(promise));
|
std::move(promise));
|
||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
@ -609,8 +603,9 @@ void StatisticsManager::send_load_async_graph_query(DcId dc_id, string token, in
|
|||||||
td_->create_handler<LoadAsyncGraphQuery>(std::move(promise))->send(token, x, dc_id);
|
td_->create_handler<LoadAsyncGraphQuery>(std::move(promise))->send(token, x, dc_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
void StatisticsManager::get_message_public_forwards(MessageFullId message_full_id, string offset, int32 limit,
|
void StatisticsManager::get_message_public_forwards(
|
||||||
Promise<td_api::object_ptr<td_api::foundMessages>> &&promise) {
|
MessageFullId message_full_id, string offset, int32 limit,
|
||||||
|
Promise<td_api::object_ptr<td_api::storyPublicForwards>> &&promise) {
|
||||||
if (limit <= 0) {
|
if (limit <= 0) {
|
||||||
return promise.set_error(Status::Error(400, "Parameter limit must be positive"));
|
return promise.set_error(Status::Error(400, "Parameter limit must be positive"));
|
||||||
}
|
}
|
||||||
@ -629,7 +624,7 @@ void StatisticsManager::get_message_public_forwards(MessageFullId message_full_i
|
|||||||
|
|
||||||
void StatisticsManager::send_get_message_public_forwards_query(
|
void StatisticsManager::send_get_message_public_forwards_query(
|
||||||
DcId dc_id, MessageFullId message_full_id, string offset, int32 limit,
|
DcId dc_id, MessageFullId message_full_id, string offset, int32 limit,
|
||||||
Promise<td_api::object_ptr<td_api::foundMessages>> &&promise) {
|
Promise<td_api::object_ptr<td_api::storyPublicForwards>> &&promise) {
|
||||||
if (!td_->messages_manager_->have_message_force(message_full_id, "send_get_message_public_forwards_query")) {
|
if (!td_->messages_manager_->have_message_force(message_full_id, "send_get_message_public_forwards_query")) {
|
||||||
return promise.set_error(Status::Error(400, "Message not found"));
|
return promise.set_error(Status::Error(400, "Message not found"));
|
||||||
}
|
}
|
||||||
@ -642,78 +637,7 @@ void StatisticsManager::send_get_message_public_forwards_query(
|
|||||||
limit = MAX_MESSAGE_FORWARDS;
|
limit = MAX_MESSAGE_FORWARDS;
|
||||||
}
|
}
|
||||||
|
|
||||||
int32 offset_date = std::numeric_limits<int32>::max();
|
td_->create_handler<GetMessagePublicForwardsQuery>(std::move(promise))->send(dc_id, message_full_id, offset, limit);
|
||||||
DialogId offset_dialog_id;
|
|
||||||
ServerMessageId offset_server_message_id;
|
|
||||||
|
|
||||||
if (!offset.empty()) {
|
|
||||||
auto parts = full_split(offset, ',');
|
|
||||||
if (parts.size() != 3) {
|
|
||||||
return promise.set_error(Status::Error(400, "Invalid offset specified"));
|
|
||||||
}
|
|
||||||
auto r_offset_date = to_integer_safe<int32>(parts[0]);
|
|
||||||
auto r_offset_dialog_id = to_integer_safe<int64>(parts[1]);
|
|
||||||
auto r_offset_server_message_id = to_integer_safe<int32>(parts[2]);
|
|
||||||
if (r_offset_date.is_error() || r_offset_dialog_id.is_error() || r_offset_server_message_id.is_error()) {
|
|
||||||
return promise.set_error(Status::Error(400, "Invalid offset specified"));
|
|
||||||
}
|
|
||||||
|
|
||||||
offset_date = r_offset_date.ok();
|
|
||||||
offset_dialog_id = DialogId(r_offset_dialog_id.ok());
|
|
||||||
offset_server_message_id = ServerMessageId(r_offset_server_message_id.ok());
|
|
||||||
}
|
|
||||||
|
|
||||||
td_->create_handler<GetMessagePublicForwardsQuery>(std::move(promise))
|
|
||||||
->send(dc_id, message_full_id, offset_date, offset_dialog_id, offset_server_message_id, limit);
|
|
||||||
}
|
|
||||||
|
|
||||||
void StatisticsManager::on_get_message_public_forwards(
|
|
||||||
int32 total_count, vector<telegram_api::object_ptr<telegram_api::Message>> &&messages, int32 next_rate,
|
|
||||||
Promise<td_api::object_ptr<td_api::foundMessages>> &&promise) {
|
|
||||||
TRY_STATUS_PROMISE(promise, G()->close_status());
|
|
||||||
|
|
||||||
LOG(INFO) << "Receive " << messages.size() << " forwarded messages";
|
|
||||||
vector<td_api::object_ptr<td_api::message>> result;
|
|
||||||
int32 last_message_date = 0;
|
|
||||||
MessageId last_message_id;
|
|
||||||
DialogId last_dialog_id;
|
|
||||||
for (auto &message : messages) {
|
|
||||||
auto message_date = MessagesManager::get_message_date(message);
|
|
||||||
auto message_id = MessageId::get_message_id(message, false);
|
|
||||||
auto dialog_id = DialogId::get_message_dialog_id(message);
|
|
||||||
if (message_date > 0 && message_id.is_valid() && dialog_id.is_valid()) {
|
|
||||||
last_message_date = message_date;
|
|
||||||
last_message_id = message_id;
|
|
||||||
last_dialog_id = dialog_id;
|
|
||||||
}
|
|
||||||
|
|
||||||
auto new_message_full_id =
|
|
||||||
td_->messages_manager_->on_get_message(std::move(message), false, dialog_id.get_type() == DialogType::Channel,
|
|
||||||
false, "on_get_message_public_forwards");
|
|
||||||
if (new_message_full_id != MessageFullId()) {
|
|
||||||
CHECK(dialog_id == new_message_full_id.get_dialog_id());
|
|
||||||
result.push_back(
|
|
||||||
td_->messages_manager_->get_message_object(new_message_full_id, "on_get_message_public_forwards"));
|
|
||||||
CHECK(result.back() != nullptr);
|
|
||||||
} else {
|
|
||||||
total_count--;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (total_count < static_cast<int32>(result.size())) {
|
|
||||||
LOG(ERROR) << "Receive " << result.size() << " valid messages out of " << total_count << " in " << messages.size()
|
|
||||||
<< " messages";
|
|
||||||
total_count = static_cast<int32>(result.size());
|
|
||||||
}
|
|
||||||
string next_offset;
|
|
||||||
if (!result.empty()) {
|
|
||||||
if (next_rate > 0) {
|
|
||||||
last_message_date = next_rate;
|
|
||||||
}
|
|
||||||
next_offset = PSTRING() << last_message_date << ',' << last_dialog_id.get() << ','
|
|
||||||
<< last_message_id.get_server_message_id().get();
|
|
||||||
}
|
|
||||||
|
|
||||||
promise.set_value(td_api::make_object<td_api::foundMessages>(total_count, std::move(result), next_offset));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void StatisticsManager::get_story_public_forwards(StoryFullId story_full_id, string offset, int32 limit,
|
void StatisticsManager::get_story_public_forwards(StoryFullId story_full_id, string offset, int32 limit,
|
||||||
@ -760,13 +684,13 @@ void StatisticsManager::send_get_story_public_forwards_query(
|
|||||||
td_->create_handler<GetStoryPublicForwardsQuery>(std::move(promise))->send(dc_id, story_full_id, offset, limit);
|
td_->create_handler<GetStoryPublicForwardsQuery>(std::move(promise))->send(dc_id, story_full_id, offset, limit);
|
||||||
}
|
}
|
||||||
|
|
||||||
void StatisticsManager::on_get_story_public_forwards(
|
void StatisticsManager::on_get_public_forwards(
|
||||||
telegram_api::object_ptr<telegram_api::stats_publicForwards> &&public_forwards,
|
telegram_api::object_ptr<telegram_api::stats_publicForwards> &&public_forwards,
|
||||||
Promise<td_api::object_ptr<td_api::storyPublicForwards>> &&promise) {
|
Promise<td_api::object_ptr<td_api::storyPublicForwards>> &&promise) {
|
||||||
TRY_STATUS_PROMISE(promise, G()->close_status());
|
TRY_STATUS_PROMISE(promise, G()->close_status());
|
||||||
|
|
||||||
td_->contacts_manager_->on_get_users(std::move(public_forwards->users_), "on_get_story_public_forwards");
|
td_->contacts_manager_->on_get_users(std::move(public_forwards->users_), "on_get_public_forwards");
|
||||||
td_->contacts_manager_->on_get_chats(std::move(public_forwards->chats_), "on_get_story_public_forwards");
|
td_->contacts_manager_->on_get_chats(std::move(public_forwards->chats_), "on_get_public_forwards");
|
||||||
|
|
||||||
auto total_count = public_forwards->count_;
|
auto total_count = public_forwards->count_;
|
||||||
LOG(INFO) << "Receive " << public_forwards->forwards_.size() << " forwarded stories out of "
|
LOG(INFO) << "Receive " << public_forwards->forwards_.size() << " forwarded stories out of "
|
||||||
@ -779,11 +703,11 @@ void StatisticsManager::on_get_story_public_forwards(
|
|||||||
auto dialog_id = DialogId::get_message_dialog_id(forward->message_);
|
auto dialog_id = DialogId::get_message_dialog_id(forward->message_);
|
||||||
auto message_full_id = td_->messages_manager_->on_get_message(std::move(forward->message_), false,
|
auto message_full_id = td_->messages_manager_->on_get_message(std::move(forward->message_), false,
|
||||||
dialog_id.get_type() == DialogType::Channel,
|
dialog_id.get_type() == DialogType::Channel,
|
||||||
false, "on_get_story_public_forwards");
|
false, "on_get_public_forwards");
|
||||||
if (message_full_id != MessageFullId()) {
|
if (message_full_id != MessageFullId()) {
|
||||||
CHECK(dialog_id == message_full_id.get_dialog_id());
|
CHECK(dialog_id == message_full_id.get_dialog_id());
|
||||||
result.push_back(td_api::make_object<td_api::storyPublicForwardMessage>(
|
result.push_back(td_api::make_object<td_api::storyPublicForwardMessage>(
|
||||||
td_->messages_manager_->get_message_object(message_full_id, "on_get_story_public_forwards")));
|
td_->messages_manager_->get_message_object(message_full_id, "on_get_public_forwards")));
|
||||||
CHECK(result.back() != nullptr);
|
CHECK(result.back() != nullptr);
|
||||||
} else {
|
} else {
|
||||||
total_count--;
|
total_count--;
|
||||||
|
@ -40,17 +40,13 @@ class StatisticsManager final : public Actor {
|
|||||||
Promise<td_api::object_ptr<td_api::StatisticalGraph>> &&promise);
|
Promise<td_api::object_ptr<td_api::StatisticalGraph>> &&promise);
|
||||||
|
|
||||||
void get_message_public_forwards(MessageFullId message_full_id, string offset, int32 limit,
|
void get_message_public_forwards(MessageFullId message_full_id, string offset, int32 limit,
|
||||||
Promise<td_api::object_ptr<td_api::foundMessages>> &&promise);
|
Promise<td_api::object_ptr<td_api::storyPublicForwards>> &&promise);
|
||||||
|
|
||||||
void on_get_message_public_forwards(int32 total_count,
|
|
||||||
vector<telegram_api::object_ptr<telegram_api::Message>> &&messages,
|
|
||||||
int32 next_rate, Promise<td_api::object_ptr<td_api::foundMessages>> &&promise);
|
|
||||||
|
|
||||||
void get_story_public_forwards(StoryFullId story_full_id, string offset, int32 limit,
|
void get_story_public_forwards(StoryFullId story_full_id, string offset, int32 limit,
|
||||||
Promise<td_api::object_ptr<td_api::storyPublicForwards>> &&promise);
|
Promise<td_api::object_ptr<td_api::storyPublicForwards>> &&promise);
|
||||||
|
|
||||||
void on_get_story_public_forwards(telegram_api::object_ptr<telegram_api::stats_publicForwards> &&public_forwards,
|
void on_get_public_forwards(telegram_api::object_ptr<telegram_api::stats_publicForwards> &&public_forwards,
|
||||||
Promise<td_api::object_ptr<td_api::storyPublicForwards>> &&promise);
|
Promise<td_api::object_ptr<td_api::storyPublicForwards>> &&promise);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void tear_down() final;
|
void tear_down() final;
|
||||||
@ -68,7 +64,7 @@ class StatisticsManager final : public Actor {
|
|||||||
Promise<td_api::object_ptr<td_api::StatisticalGraph>> &&promise);
|
Promise<td_api::object_ptr<td_api::StatisticalGraph>> &&promise);
|
||||||
|
|
||||||
void send_get_message_public_forwards_query(DcId dc_id, MessageFullId message_full_id, string offset, int32 limit,
|
void send_get_message_public_forwards_query(DcId dc_id, MessageFullId message_full_id, string offset, int32 limit,
|
||||||
Promise<td_api::object_ptr<td_api::foundMessages>> &&promise);
|
Promise<td_api::object_ptr<td_api::storyPublicForwards>> &&promise);
|
||||||
|
|
||||||
void send_get_story_public_forwards_query(DcId dc_id, StoryFullId story_full_id, string offset, int32 limit,
|
void send_get_story_public_forwards_query(DcId dc_id, StoryFullId story_full_id, string offset, int32 limit,
|
||||||
Promise<td_api::object_ptr<td_api::storyPublicForwards>> &&promise);
|
Promise<td_api::object_ptr<td_api::storyPublicForwards>> &&promise);
|
||||||
|
@ -3067,6 +3067,7 @@ StickerSetId StickersManager::get_sticker_set_id(const tl_object_ptr<telegram_ap
|
|||||||
case telegram_api::inputStickerSetEmojiGenericAnimations::ID:
|
case telegram_api::inputStickerSetEmojiGenericAnimations::ID:
|
||||||
case telegram_api::inputStickerSetEmojiDefaultStatuses::ID:
|
case telegram_api::inputStickerSetEmojiDefaultStatuses::ID:
|
||||||
case telegram_api::inputStickerSetEmojiDefaultTopicIcons::ID:
|
case telegram_api::inputStickerSetEmojiDefaultTopicIcons::ID:
|
||||||
|
case telegram_api::inputStickerSetEmojiChannelDefaultStatuses::ID:
|
||||||
LOG(ERROR) << "Receive special sticker set " << to_string(set_ptr);
|
LOG(ERROR) << "Receive special sticker set " << to_string(set_ptr);
|
||||||
return add_special_sticker_set(SpecialStickerSetType(set_ptr)).id_;
|
return add_special_sticker_set(SpecialStickerSetType(set_ptr)).id_;
|
||||||
case telegram_api::inputStickerSetDice::ID:
|
case telegram_api::inputStickerSetDice::ID:
|
||||||
@ -3100,6 +3101,7 @@ StickerSetId StickersManager::add_sticker_set(tl_object_ptr<telegram_api::InputS
|
|||||||
case telegram_api::inputStickerSetEmojiGenericAnimations::ID:
|
case telegram_api::inputStickerSetEmojiGenericAnimations::ID:
|
||||||
case telegram_api::inputStickerSetEmojiDefaultStatuses::ID:
|
case telegram_api::inputStickerSetEmojiDefaultStatuses::ID:
|
||||||
case telegram_api::inputStickerSetEmojiDefaultTopicIcons::ID:
|
case telegram_api::inputStickerSetEmojiDefaultTopicIcons::ID:
|
||||||
|
case telegram_api::inputStickerSetEmojiChannelDefaultStatuses::ID:
|
||||||
LOG(ERROR) << "Receive special sticker set " << to_string(set_ptr);
|
LOG(ERROR) << "Receive special sticker set " << to_string(set_ptr);
|
||||||
return add_special_sticker_set(SpecialStickerSetType(set_ptr)).id_;
|
return add_special_sticker_set(SpecialStickerSetType(set_ptr)).id_;
|
||||||
case telegram_api::inputStickerSetDice::ID:
|
case telegram_api::inputStickerSetDice::ID:
|
||||||
@ -3297,6 +3299,7 @@ StickerSetId StickersManager::on_get_input_sticker_set(FileId sticker_file_id,
|
|||||||
case telegram_api::inputStickerSetEmojiGenericAnimations::ID:
|
case telegram_api::inputStickerSetEmojiGenericAnimations::ID:
|
||||||
case telegram_api::inputStickerSetEmojiDefaultStatuses::ID:
|
case telegram_api::inputStickerSetEmojiDefaultStatuses::ID:
|
||||||
case telegram_api::inputStickerSetEmojiDefaultTopicIcons::ID:
|
case telegram_api::inputStickerSetEmojiDefaultTopicIcons::ID:
|
||||||
|
case telegram_api::inputStickerSetEmojiChannelDefaultStatuses::ID:
|
||||||
return add_special_sticker_set(SpecialStickerSetType(set_ptr)).id_;
|
return add_special_sticker_set(SpecialStickerSetType(set_ptr)).id_;
|
||||||
case telegram_api::inputStickerSetDice::ID:
|
case telegram_api::inputStickerSetDice::ID:
|
||||||
return StickerSetId();
|
return StickerSetId();
|
||||||
|
@ -366,8 +366,9 @@ class GetStoryViewsListQuery final : public Td::ResultHandler {
|
|||||||
if (prefer_with_reaction) {
|
if (prefer_with_reaction) {
|
||||||
flags |= telegram_api::stories_getStoryViewsList::REACTIONS_FIRST_MASK;
|
flags |= telegram_api::stories_getStoryViewsList::REACTIONS_FIRST_MASK;
|
||||||
}
|
}
|
||||||
send_query(G()->net_query_creator().create(telegram_api::stories_getStoryViewsList(
|
send_query(G()->net_query_creator().create(
|
||||||
flags, false /*ignored*/, false /*ignored*/, std::move(input_peer), query, story_id.get(), offset, limit)));
|
telegram_api::stories_getStoryViewsList(flags, false /*ignored*/, false /*ignored*/, false /*ignored*/,
|
||||||
|
std::move(input_peer), query, story_id.get(), offset, limit)));
|
||||||
}
|
}
|
||||||
|
|
||||||
void on_result(BufferSlice packet) final {
|
void on_result(BufferSlice packet) final {
|
||||||
@ -2850,7 +2851,11 @@ void StoryManager::on_get_story_viewers(
|
|||||||
<< " story viewers";
|
<< " story viewers";
|
||||||
total_reaction_count = total_count;
|
total_reaction_count = total_count;
|
||||||
}
|
}
|
||||||
for (auto &view : view_list->views_) {
|
for (auto &view_ptr : view_list->views_) {
|
||||||
|
if (view_ptr->get_id() != telegram_api::storyView::ID) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
auto view = telegram_api::move_object_as<telegram_api::storyView>(view_ptr);
|
||||||
td_->contacts_manager_->on_update_user_is_blocked(UserId(view->user_id_), view->blocked_,
|
td_->contacts_manager_->on_update_user_is_blocked(UserId(view->user_id_), view->blocked_,
|
||||||
view->blocked_my_stories_from_);
|
view->blocked_my_stories_from_);
|
||||||
}
|
}
|
||||||
|
@ -26,10 +26,14 @@ StringBuilder &operator<<(StringBuilder &string_builder, const StoryViewer &view
|
|||||||
}
|
}
|
||||||
|
|
||||||
StoryViewers::StoryViewers(int32 total_count, int32 total_reaction_count,
|
StoryViewers::StoryViewers(int32 total_count, int32 total_reaction_count,
|
||||||
vector<telegram_api::object_ptr<telegram_api::storyView>> &&story_views,
|
vector<telegram_api::object_ptr<telegram_api::StoryView>> &&story_views,
|
||||||
string &&next_offset)
|
string &&next_offset)
|
||||||
: total_count_(total_count), total_reaction_count_(total_reaction_count), next_offset_(std::move(next_offset)) {
|
: total_count_(total_count), total_reaction_count_(total_reaction_count), next_offset_(std::move(next_offset)) {
|
||||||
for (auto &story_view : story_views) {
|
for (auto &story_view_ptr : story_views) {
|
||||||
|
if (story_view_ptr->get_id() != telegram_api::storyView::ID) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
auto story_view = telegram_api::move_object_as<telegram_api::storyView>(story_view_ptr);
|
||||||
story_viewers_.emplace_back(std::move(story_view));
|
story_viewers_.emplace_back(std::move(story_view));
|
||||||
auto user_id = story_viewers_.back().get_user_id();
|
auto user_id = story_viewers_.back().get_user_id();
|
||||||
if (!user_id.is_valid()) {
|
if (!user_id.is_valid()) {
|
||||||
|
@ -55,7 +55,7 @@ class StoryViewers {
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
StoryViewers(int32 total_count, int32 total_reaction_count,
|
StoryViewers(int32 total_count, int32 total_reaction_count,
|
||||||
vector<telegram_api::object_ptr<telegram_api::storyView>> &&story_views, string &&next_offset);
|
vector<telegram_api::object_ptr<telegram_api::StoryView>> &&story_views, string &&next_offset);
|
||||||
|
|
||||||
vector<UserId> get_user_ids() const;
|
vector<UserId> get_user_ids() const;
|
||||||
|
|
||||||
|
@ -817,6 +817,18 @@ bool UpdatesManager::is_acceptable_message_media(
|
|||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
case telegram_api::messageMediaGiveawayResults::ID: {
|
||||||
|
auto message_media = static_cast<const telegram_api::messageMediaGiveawayResults *>(media_ptr.get());
|
||||||
|
if (!is_acceptable_channel(ChannelId(message_media->channel_id_))) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
for (auto user_id : message_media->winners_) {
|
||||||
|
if (!is_acceptable_user(UserId(user_id))) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
case telegram_api::messageMediaPoll::ID:
|
case telegram_api::messageMediaPoll::ID:
|
||||||
/*
|
/*
|
||||||
// the users and chats are always min, so no need to check
|
// the users and chats are always min, so no need to check
|
||||||
@ -1026,8 +1038,12 @@ bool UpdatesManager::is_acceptable_message(const telegram_api::Message *message_
|
|||||||
}
|
}
|
||||||
case telegram_api::messageActionRequestedPeer::ID: {
|
case telegram_api::messageActionRequestedPeer::ID: {
|
||||||
auto requested_peer = static_cast<const telegram_api::messageActionRequestedPeer *>(action);
|
auto requested_peer = static_cast<const telegram_api::messageActionRequestedPeer *>(action);
|
||||||
if (!td_->auth_manager_->is_bot() && !is_acceptable_peer(requested_peer->peer_)) {
|
if (!td_->auth_manager_->is_bot()) {
|
||||||
return false;
|
for (auto &peer : requested_peer->peers_) {
|
||||||
|
if (!is_acceptable_peer(peer)) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@ -4344,4 +4360,12 @@ void UpdatesManager::on_update(tl_object_ptr<telegram_api::updateNewAuthorizatio
|
|||||||
|
|
||||||
// unsupported updates
|
// unsupported updates
|
||||||
|
|
||||||
|
void UpdatesManager::on_update(tl_object_ptr<telegram_api::updateBotMessageReaction> update, Promise<Unit> &&promise) {
|
||||||
|
promise.set_value(Unit());
|
||||||
|
}
|
||||||
|
|
||||||
|
void UpdatesManager::on_update(tl_object_ptr<telegram_api::updateBotMessageReactions> update, Promise<Unit> &&promise) {
|
||||||
|
promise.set_value(Unit());
|
||||||
|
}
|
||||||
|
|
||||||
} // namespace td
|
} // namespace td
|
||||||
|
@ -631,6 +631,10 @@ class UpdatesManager final : public Actor {
|
|||||||
void on_update(tl_object_ptr<telegram_api::updateNewAuthorization> update, Promise<Unit> &&promise);
|
void on_update(tl_object_ptr<telegram_api::updateNewAuthorization> update, Promise<Unit> &&promise);
|
||||||
|
|
||||||
// unsupported updates
|
// unsupported updates
|
||||||
|
|
||||||
|
void on_update(tl_object_ptr<telegram_api::updateBotMessageReaction> update, Promise<Unit> &&promise);
|
||||||
|
|
||||||
|
void on_update(tl_object_ptr<telegram_api::updateBotMessageReactions> update, Promise<Unit> &&promise);
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace td
|
} // namespace td
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
namespace td {
|
namespace td {
|
||||||
|
|
||||||
constexpr int32 MTPROTO_LAYER = 167;
|
constexpr int32 MTPROTO_LAYER = 169;
|
||||||
|
|
||||||
enum class Version : int32 {
|
enum class Version : int32 {
|
||||||
Initial, // 0
|
Initial, // 0
|
||||||
|
Loading…
Reference in New Issue
Block a user