Update layer to 127.
This commit is contained in:
parent
f6b1ea8bdb
commit
26dc0ad930
@ -55,7 +55,7 @@ inputMediaVenue#c13d1c11 geo_point:InputGeoPoint title:string address:string pro
|
|||||||
inputMediaPhotoExternal#e5bbfe1a flags:# url:string ttl_seconds:flags.0?int = InputMedia;
|
inputMediaPhotoExternal#e5bbfe1a flags:# url:string ttl_seconds:flags.0?int = InputMedia;
|
||||||
inputMediaDocumentExternal#fb52dc99 flags:# url:string ttl_seconds:flags.0?int = InputMedia;
|
inputMediaDocumentExternal#fb52dc99 flags:# url:string ttl_seconds:flags.0?int = InputMedia;
|
||||||
inputMediaGame#d33f43f3 id:InputGame = InputMedia;
|
inputMediaGame#d33f43f3 id:InputGame = InputMedia;
|
||||||
inputMediaInvoice#f4e096c3 flags:# title:string description:string photo:flags.0?InputWebDocument invoice:Invoice payload:bytes provider:string provider_data:DataJSON start_param:string = InputMedia;
|
inputMediaInvoice#d9799874 flags:# title:string description:string photo:flags.0?InputWebDocument invoice:Invoice payload:bytes provider:string provider_data:DataJSON start_param:flags.1?string = InputMedia;
|
||||||
inputMediaGeoLive#971fa843 flags:# stopped:flags.0?true geo_point:InputGeoPoint heading:flags.2?int period:flags.1?int proximity_notification_radius:flags.3?int = InputMedia;
|
inputMediaGeoLive#971fa843 flags:# stopped:flags.0?true geo_point:InputGeoPoint heading:flags.2?int period:flags.1?int proximity_notification_radius:flags.3?int = InputMedia;
|
||||||
inputMediaPoll#f94e5f1 flags:# poll:Poll correct_answers:flags.0?Vector<bytes> solution:flags.1?string solution_entities:flags.1?Vector<MessageEntity> = InputMedia;
|
inputMediaPoll#f94e5f1 flags:# poll:Poll correct_answers:flags.0?Vector<bytes> solution:flags.1?string solution_entities:flags.1?Vector<MessageEntity> = InputMedia;
|
||||||
inputMediaDice#e66fbf7b emoticon:string = InputMedia;
|
inputMediaDice#e66fbf7b emoticon:string = InputMedia;
|
||||||
@ -100,7 +100,7 @@ userEmpty#200250ba id:int = User;
|
|||||||
user#938458c1 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 id:int 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 = User;
|
user#938458c1 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 id:int 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 = User;
|
||||||
|
|
||||||
userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
|
userProfilePhotoEmpty#4f11bae1 = UserProfilePhoto;
|
||||||
userProfilePhoto#69d3ab26 flags:# has_video:flags.0?true photo_id:long photo_small:FileLocation photo_big:FileLocation dc_id:int = UserProfilePhoto;
|
userProfilePhoto#cc656077 flags:# has_video:flags.0?true photo_id:long photo_small:FileLocation photo_big:FileLocation stripped_thumb:flags.1?bytes dc_id:int = UserProfilePhoto;
|
||||||
|
|
||||||
userStatusEmpty#9d05049 = UserStatus;
|
userStatusEmpty#9d05049 = UserStatus;
|
||||||
userStatusOnline#edb93949 expires:int = UserStatus;
|
userStatusOnline#edb93949 expires:int = UserStatus;
|
||||||
@ -126,7 +126,7 @@ chatParticipantsForbidden#fc900c2b flags:# chat_id:int self_participant:flags.0?
|
|||||||
chatParticipants#3f460fed chat_id:int participants:Vector<ChatParticipant> version:int = ChatParticipants;
|
chatParticipants#3f460fed chat_id:int participants:Vector<ChatParticipant> version:int = ChatParticipants;
|
||||||
|
|
||||||
chatPhotoEmpty#37c1011c = ChatPhoto;
|
chatPhotoEmpty#37c1011c = ChatPhoto;
|
||||||
chatPhoto#d20b9f3c flags:# has_video:flags.0?true photo_small:FileLocation photo_big:FileLocation dc_id:int = ChatPhoto;
|
chatPhoto#4790ee05 flags:# has_video:flags.0?true photo_small:FileLocation photo_big:FileLocation stripped_thumb:flags.1?bytes dc_id:int = ChatPhoto;
|
||||||
|
|
||||||
messageEmpty#90a6ca84 flags:# id:int peer_id:flags.0?Peer = Message;
|
messageEmpty#90a6ca84 flags:# id:int peer_id:flags.0?Peer = Message;
|
||||||
message#bce383d2 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 id:int from_id:flags.8?Peer peer_id:Peer fwd_from:flags.2?MessageFwdHeader via_bot_id:flags.11?int 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 restriction_reason:flags.22?Vector<RestrictionReason> ttl_period:flags.25?int = Message;
|
message#bce383d2 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 id:int from_id:flags.8?Peer peer_id:Peer fwd_from:flags.2?MessageFwdHeader via_bot_id:flags.11?int 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 restriction_reason:flags.22?Vector<RestrictionReason> ttl_period:flags.25?int = Message;
|
||||||
@ -173,6 +173,7 @@ messageActionGeoProximityReached#98e0d697 from_id:Peer to_id:Peer distance:int =
|
|||||||
messageActionGroupCall#7a0d7f42 flags:# call:InputGroupCall duration:flags.0?int = MessageAction;
|
messageActionGroupCall#7a0d7f42 flags:# call:InputGroupCall duration:flags.0?int = MessageAction;
|
||||||
messageActionInviteToGroupCall#76b9f11a call:InputGroupCall users:Vector<int> = MessageAction;
|
messageActionInviteToGroupCall#76b9f11a call:InputGroupCall users:Vector<int> = MessageAction;
|
||||||
messageActionSetMessagesTTL#aa1afbfd period:int = MessageAction;
|
messageActionSetMessagesTTL#aa1afbfd period:int = MessageAction;
|
||||||
|
messageActionGroupCallScheduled#b3a07661 call:InputGroupCall schedule_date:int = MessageAction;
|
||||||
|
|
||||||
dialog#2c171f72 flags:# pinned:flags.2?true unread_mark:flags.3?true peer:Peer top_message:int read_inbox_max_id:int read_outbox_max_id:int unread_count:int unread_mentions_count:int notify_settings:PeerNotifySettings pts:flags.0?int draft:flags.1?DraftMessage folder_id:flags.4?int = Dialog;
|
dialog#2c171f72 flags:# pinned:flags.2?true unread_mark:flags.3?true peer:Peer top_message:int read_inbox_max_id:int read_outbox_max_id:int unread_count:int unread_mentions_count:int notify_settings:PeerNotifySettings pts:flags.0?int draft:flags.1?DraftMessage folder_id:flags.4?int = Dialog;
|
||||||
dialogFolder#71bd134c flags:# pinned:flags.2?true folder:Folder peer:Peer top_message:int unread_muted_peers_count:int unread_unmuted_peers_count:int unread_muted_messages_count:int unread_unmuted_messages_count:int = Dialog;
|
dialogFolder#71bd134c flags:# pinned:flags.2?true folder:Folder peer:Peer top_message:int unread_muted_peers_count:int unread_unmuted_peers_count:int unread_muted_messages_count:int unread_unmuted_messages_count:int = Dialog;
|
||||||
@ -541,7 +542,7 @@ inputStickerSetShortName#861cc8a0 short_name:string = InputStickerSet;
|
|||||||
inputStickerSetAnimatedEmoji#28703c8 = InputStickerSet;
|
inputStickerSetAnimatedEmoji#28703c8 = InputStickerSet;
|
||||||
inputStickerSetDice#e67f520e emoticon:string = InputStickerSet;
|
inputStickerSetDice#e67f520e emoticon:string = InputStickerSet;
|
||||||
|
|
||||||
stickerSet#40e237a8 flags:# archived:flags.1?true official:flags.2?true masks:flags.3?true animated:flags.5?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 count:int hash:int = StickerSet;
|
stickerSet#d7df217a flags:# archived:flags.1?true official:flags.2?true masks:flags.3?true animated:flags.5?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 count:int hash:int = StickerSet;
|
||||||
|
|
||||||
messages.stickerSet#b60a24a6 set:StickerSet packs:Vector<StickerPack> documents:Vector<Document> = messages.StickerSet;
|
messages.stickerSet#b60a24a6 set:StickerSet packs:Vector<StickerPack> documents:Vector<Document> = messages.StickerSet;
|
||||||
|
|
||||||
@ -635,6 +636,7 @@ inputBotInlineMessageMediaGeo#96929a85 flags:# geo_point:InputGeoPoint heading:f
|
|||||||
inputBotInlineMessageMediaVenue#417bbf11 flags:# geo_point:InputGeoPoint title:string address:string provider:string venue_id:string venue_type:string reply_markup:flags.2?ReplyMarkup = InputBotInlineMessage;
|
inputBotInlineMessageMediaVenue#417bbf11 flags:# geo_point:InputGeoPoint title:string address:string provider:string venue_id:string venue_type:string reply_markup:flags.2?ReplyMarkup = InputBotInlineMessage;
|
||||||
inputBotInlineMessageMediaContact#a6edbffd flags:# phone_number:string first_name:string last_name:string vcard:string reply_markup:flags.2?ReplyMarkup = InputBotInlineMessage;
|
inputBotInlineMessageMediaContact#a6edbffd flags:# phone_number:string first_name:string last_name:string vcard:string reply_markup:flags.2?ReplyMarkup = InputBotInlineMessage;
|
||||||
inputBotInlineMessageGame#4b425864 flags:# reply_markup:flags.2?ReplyMarkup = InputBotInlineMessage;
|
inputBotInlineMessageGame#4b425864 flags:# reply_markup:flags.2?ReplyMarkup = InputBotInlineMessage;
|
||||||
|
inputBotInlineMessageMediaInvoice#d7e78225 flags:# title:string description:string photo:flags.0?InputWebDocument invoice:Invoice payload:bytes provider:string provider_data:DataJSON reply_markup:flags.2?ReplyMarkup = InputBotInlineMessage;
|
||||||
|
|
||||||
inputBotInlineResult#88bf9319 flags:# id:string type:string title:flags.1?string description:flags.2?string url:flags.3?string thumb:flags.4?InputWebDocument content:flags.5?InputWebDocument send_message:InputBotInlineMessage = InputBotInlineResult;
|
inputBotInlineResult#88bf9319 flags:# id:string type:string title:flags.1?string description:flags.2?string url:flags.3?string thumb:flags.4?InputWebDocument content:flags.5?InputWebDocument send_message:InputBotInlineMessage = InputBotInlineResult;
|
||||||
inputBotInlineResultPhoto#a8d864a7 id:string type:string photo:InputPhoto send_message:InputBotInlineMessage = InputBotInlineResult;
|
inputBotInlineResultPhoto#a8d864a7 id:string type:string photo:InputPhoto send_message:InputBotInlineMessage = InputBotInlineResult;
|
||||||
@ -646,6 +648,7 @@ botInlineMessageText#8c7f65e2 flags:# no_webpage:flags.0?true message:string ent
|
|||||||
botInlineMessageMediaGeo#51846fd flags:# geo:GeoPoint heading:flags.0?int period:flags.1?int proximity_notification_radius:flags.3?int reply_markup:flags.2?ReplyMarkup = BotInlineMessage;
|
botInlineMessageMediaGeo#51846fd flags:# geo:GeoPoint heading:flags.0?int period:flags.1?int proximity_notification_radius:flags.3?int reply_markup:flags.2?ReplyMarkup = BotInlineMessage;
|
||||||
botInlineMessageMediaVenue#8a86659c flags:# geo:GeoPoint title:string address:string provider:string venue_id:string venue_type:string reply_markup:flags.2?ReplyMarkup = BotInlineMessage;
|
botInlineMessageMediaVenue#8a86659c flags:# geo:GeoPoint title:string address:string provider:string venue_id:string venue_type:string reply_markup:flags.2?ReplyMarkup = BotInlineMessage;
|
||||||
botInlineMessageMediaContact#18d1cdc2 flags:# phone_number:string first_name:string last_name:string vcard:string reply_markup:flags.2?ReplyMarkup = BotInlineMessage;
|
botInlineMessageMediaContact#18d1cdc2 flags:# phone_number:string first_name:string last_name:string vcard:string reply_markup:flags.2?ReplyMarkup = BotInlineMessage;
|
||||||
|
botInlineMessageMediaInvoice#354a9b09 flags:# shipping_address_requested:flags.1?true test:flags.3?true title:string description:string photo:flags.0?WebDocument currency:string total_amount:long reply_markup:flags.2?ReplyMarkup = BotInlineMessage;
|
||||||
|
|
||||||
botInlineResult#11965f3a flags:# id:string type:string title:flags.1?string description:flags.2?string url:flags.3?string thumb:flags.4?WebDocument content:flags.5?WebDocument send_message:BotInlineMessage = BotInlineResult;
|
botInlineResult#11965f3a flags:# id:string type:string title:flags.1?string description:flags.2?string url:flags.3?string thumb:flags.4?WebDocument content:flags.5?WebDocument send_message:BotInlineMessage = BotInlineResult;
|
||||||
botInlineMediaResult#17db940b flags:# id:string type:string photo:flags.0?Photo document:flags.1?Document title:flags.2?string description:flags.3?string send_message:BotInlineMessage = BotInlineResult;
|
botInlineMediaResult#17db940b flags:# id:string type:string photo:flags.0?Photo document:flags.1?Document title:flags.2?string description:flags.3?string send_message:BotInlineMessage = BotInlineResult;
|
||||||
@ -779,7 +782,7 @@ dataJSON#7d748d04 data:string = DataJSON;
|
|||||||
|
|
||||||
labeledPrice#cb296bf8 label:string amount:long = LabeledPrice;
|
labeledPrice#cb296bf8 label:string amount:long = LabeledPrice;
|
||||||
|
|
||||||
invoice#c30aa358 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 currency:string prices:Vector<LabeledPrice> = Invoice;
|
invoice#cd886e0 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 currency:string prices:Vector<LabeledPrice> max_tip_amount:flags.8?long suggested_tip_amounts:flags.8?Vector<long> = Invoice;
|
||||||
|
|
||||||
paymentCharge#ea02c27e id:string provider_charge_id:string = PaymentCharge;
|
paymentCharge#ea02c27e id:string provider_charge_id:string = PaymentCharge;
|
||||||
|
|
||||||
@ -799,14 +802,14 @@ inputWebFileGeoPointLocation#9f2221c9 geo_point:InputGeoPoint access_hash:long w
|
|||||||
|
|
||||||
upload.webFile#21e753bc size:int mime_type:string file_type:storage.FileType mtime:int bytes:bytes = upload.WebFile;
|
upload.webFile#21e753bc size:int mime_type:string file_type:storage.FileType mtime:int bytes:bytes = upload.WebFile;
|
||||||
|
|
||||||
payments.paymentForm#3f56aea3 flags:# can_save_credentials:flags.2?true password_missing:flags.3?true bot_id:int invoice:Invoice provider_id:int url:string native_provider:flags.4?string native_params:flags.4?DataJSON saved_info:flags.0?PaymentRequestedInfo saved_credentials:flags.1?PaymentSavedCredentials users:Vector<User> = payments.PaymentForm;
|
payments.paymentForm#8d0b2415 flags:# can_save_credentials:flags.2?true password_missing:flags.3?true form_id:long bot_id:int invoice:Invoice provider_id:int url:string native_provider:flags.4?string native_params:flags.4?DataJSON saved_info:flags.0?PaymentRequestedInfo saved_credentials:flags.1?PaymentSavedCredentials users:Vector<User> = payments.PaymentForm;
|
||||||
|
|
||||||
payments.validatedRequestedInfo#d1451883 flags:# id:flags.0?string shipping_options:flags.1?Vector<ShippingOption> = payments.ValidatedRequestedInfo;
|
payments.validatedRequestedInfo#d1451883 flags:# id:flags.0?string shipping_options:flags.1?Vector<ShippingOption> = payments.ValidatedRequestedInfo;
|
||||||
|
|
||||||
payments.paymentResult#4e5f810d updates:Updates = payments.PaymentResult;
|
payments.paymentResult#4e5f810d updates:Updates = payments.PaymentResult;
|
||||||
payments.paymentVerificationNeeded#d8411139 url:string = payments.PaymentResult;
|
payments.paymentVerificationNeeded#d8411139 url:string = payments.PaymentResult;
|
||||||
|
|
||||||
payments.paymentReceipt#500911e1 flags:# date:int bot_id:int invoice:Invoice provider_id:int info:flags.0?PaymentRequestedInfo shipping:flags.1?ShippingOption currency:string total_amount:long credentials_title:string users:Vector<User> = payments.PaymentReceipt;
|
payments.paymentReceipt#10b555d0 flags:# date:int bot_id:int provider_id:int title:string description:string photo:flags.2?WebDocument invoice:Invoice info:flags.0?PaymentRequestedInfo shipping:flags.1?ShippingOption tip_amount:flags.3?long currency:string total_amount:long credentials_title:string users:Vector<User> = payments.PaymentReceipt;
|
||||||
|
|
||||||
payments.savedInfo#fb8fe43c flags:# has_saved_credentials:flags.1?true saved_info:flags.0?PaymentRequestedInfo = payments.SavedInfo;
|
payments.savedInfo#fb8fe43c flags:# has_saved_credentials:flags.1?true saved_info:flags.0?PaymentRequestedInfo = payments.SavedInfo;
|
||||||
|
|
||||||
@ -1190,11 +1193,11 @@ peerBlocked#e8fd8014 peer_id:Peer date:int = PeerBlocked;
|
|||||||
stats.messageStats#8999f295 views_graph:StatsGraph = stats.MessageStats;
|
stats.messageStats#8999f295 views_graph:StatsGraph = stats.MessageStats;
|
||||||
|
|
||||||
groupCallDiscarded#7780bcb4 id:long access_hash:long duration:int = GroupCall;
|
groupCallDiscarded#7780bcb4 id:long access_hash:long duration:int = GroupCall;
|
||||||
groupCall#c0c2052e flags:# join_muted:flags.1?true can_change_join_muted:flags.2?true join_date_asc:flags.6?true id:long access_hash:long participants_count:int params:flags.0?DataJSON title:flags.3?string stream_dc_id:flags.4?int record_start_date:flags.5?int version:int = GroupCall;
|
groupCall#c95c6654 flags:# join_muted:flags.1?true can_change_join_muted:flags.2?true join_date_asc:flags.6?true schedule_start_subscribed:flags.8?true id:long access_hash:long participants_count:int params:flags.0?DataJSON title:flags.3?string stream_dc_id:flags.4?int record_start_date:flags.5?int schedule_date:flags.7?int version:int = GroupCall;
|
||||||
|
|
||||||
inputGroupCall#d8aa840f id:long access_hash:long = InputGroupCall;
|
inputGroupCall#d8aa840f id:long access_hash:long = InputGroupCall;
|
||||||
|
|
||||||
groupCallParticipant#19adba89 flags:# muted:flags.0?true left:flags.1?true can_self_unmute:flags.2?true just_joined:flags.4?true versioned:flags.5?true min:flags.8?true muted_by_you:flags.9?true volume_by_admin:flags.10?true self:flags.12?true peer:Peer date:int active_date:flags.3?int source:int volume:flags.7?int about:flags.11?string raise_hand_rating:flags.13?long = GroupCallParticipant;
|
groupCallParticipant#b96b25ee flags:# muted:flags.0?true left:flags.1?true can_self_unmute:flags.2?true just_joined:flags.4?true versioned:flags.5?true min:flags.8?true muted_by_you:flags.9?true volume_by_admin:flags.10?true self:flags.12?true peer:Peer date:int active_date:flags.3?int source:int volume:flags.7?int about:flags.11?string raise_hand_rating:flags.13?long params:flags.6?DataJSON = GroupCallParticipant;
|
||||||
|
|
||||||
phone.groupCall#9e727aad call:GroupCall participants:Vector<GroupCallParticipant> participants_next_offset:string chats:Vector<Chat> users:Vector<User> = phone.GroupCall;
|
phone.groupCall#9e727aad call:GroupCall participants:Vector<GroupCallParticipant> participants_next_offset:string chats:Vector<Chat> users:Vector<User> = phone.GroupCall;
|
||||||
|
|
||||||
@ -1579,10 +1582,10 @@ 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;
|
||||||
bots.setBotCommands#805d46f6 commands:Vector<BotCommand> = Bool;
|
bots.setBotCommands#805d46f6 commands:Vector<BotCommand> = Bool;
|
||||||
|
|
||||||
payments.getPaymentForm#99f09745 msg_id:int = payments.PaymentForm;
|
payments.getPaymentForm#8a333c8d flags:# peer:InputPeer msg_id:int theme_params:flags.0?DataJSON = payments.PaymentForm;
|
||||||
payments.getPaymentReceipt#a092a980 msg_id:int = payments.PaymentReceipt;
|
payments.getPaymentReceipt#2478d1cc peer:InputPeer msg_id:int = payments.PaymentReceipt;
|
||||||
payments.validateRequestedInfo#770a8e74 flags:# save:flags.0?true msg_id:int info:PaymentRequestedInfo = payments.ValidatedRequestedInfo;
|
payments.validateRequestedInfo#db103170 flags:# save:flags.0?true peer:InputPeer msg_id:int info:PaymentRequestedInfo = payments.ValidatedRequestedInfo;
|
||||||
payments.sendPaymentForm#2b8879b3 flags:# msg_id:int requested_info_id:flags.0?string shipping_option_id:flags.1?string credentials:InputPaymentCredentials = payments.PaymentResult;
|
payments.sendPaymentForm#30c3bc9d flags:# form_id:long peer:InputPeer msg_id:int requested_info_id:flags.0?string shipping_option_id:flags.1?string credentials:InputPaymentCredentials tip_amount:flags.2?long = payments.PaymentResult;
|
||||||
payments.getSavedInfo#227d824b = payments.SavedInfo;
|
payments.getSavedInfo#227d824b = payments.SavedInfo;
|
||||||
payments.clearSavedInfo#d83d70c1 flags:# credentials:flags.0?true info:flags.1?true = Bool;
|
payments.clearSavedInfo#d83d70c1 flags:# credentials:flags.0?true info:flags.1?true = Bool;
|
||||||
payments.getBankCardData#2e79d779 number:string = payments.BankCardData;
|
payments.getBankCardData#2e79d779 number:string = payments.BankCardData;
|
||||||
@ -1602,7 +1605,7 @@ phone.discardCall#b2cbc1c0 flags:# video:flags.0?true peer:InputPhoneCall durati
|
|||||||
phone.setCallRating#59ead627 flags:# user_initiative:flags.0?true peer:InputPhoneCall rating:int comment:string = Updates;
|
phone.setCallRating#59ead627 flags:# user_initiative:flags.0?true peer:InputPhoneCall rating:int comment:string = Updates;
|
||||||
phone.saveCallDebug#277add7e peer:InputPhoneCall debug:DataJSON = Bool;
|
phone.saveCallDebug#277add7e peer:InputPhoneCall debug:DataJSON = Bool;
|
||||||
phone.sendSignalingData#ff7a9383 peer:InputPhoneCall data:bytes = Bool;
|
phone.sendSignalingData#ff7a9383 peer:InputPhoneCall data:bytes = Bool;
|
||||||
phone.createGroupCall#bd3dabe0 peer:InputPeer random_id:int = Updates;
|
phone.createGroupCall#48cdc6d8 flags:# peer:InputPeer random_id:int title:flags.0?string schedule_date:flags.1?int = Updates;
|
||||||
phone.joinGroupCall#b132ff7b flags:# muted:flags.0?true call:InputGroupCall join_as:InputPeer invite_hash:flags.1?string params:DataJSON = Updates;
|
phone.joinGroupCall#b132ff7b flags:# muted:flags.0?true call:InputGroupCall join_as:InputPeer invite_hash:flags.1?string params:DataJSON = Updates;
|
||||||
phone.leaveGroupCall#500377f9 call:InputGroupCall source:int = Updates;
|
phone.leaveGroupCall#500377f9 call:InputGroupCall source:int = Updates;
|
||||||
phone.inviteToGroupCall#7b393160 call:InputGroupCall users:Vector<InputUser> = Updates;
|
phone.inviteToGroupCall#7b393160 call:InputGroupCall users:Vector<InputUser> = Updates;
|
||||||
@ -1616,6 +1619,9 @@ phone.editGroupCallParticipant#d975eb80 flags:# muted:flags.0?true call:InputGro
|
|||||||
phone.editGroupCallTitle#1ca6ac0a call:InputGroupCall title:string = Updates;
|
phone.editGroupCallTitle#1ca6ac0a call:InputGroupCall title:string = Updates;
|
||||||
phone.getGroupCallJoinAs#ef7c213a peer:InputPeer = phone.JoinAsPeers;
|
phone.getGroupCallJoinAs#ef7c213a peer:InputPeer = phone.JoinAsPeers;
|
||||||
phone.exportGroupCallInvite#e6aa647f flags:# can_self_unmute:flags.0?true call:InputGroupCall = phone.ExportedGroupCallInvite;
|
phone.exportGroupCallInvite#e6aa647f flags:# can_self_unmute:flags.0?true call:InputGroupCall = phone.ExportedGroupCallInvite;
|
||||||
|
phone.toggleGroupCallStartSubscription#219c34e6 call:InputGroupCall subscribed:Bool = Updates;
|
||||||
|
phone.startScheduledGroupCall#5680e342 call:InputGroupCall = Updates;
|
||||||
|
phone.saveDefaultGroupCallJoinAs#575e1f8c peer:InputPeer join_as:InputPeer = Bool;
|
||||||
|
|
||||||
langpack.getLangPack#f2f2330a lang_pack:string lang_code:string = LangPackDifference;
|
langpack.getLangPack#f2f2330a lang_pack:string lang_code:string = LangPackDifference;
|
||||||
langpack.getStrings#efea3803 lang_pack:string lang_code:string keys:Vector<string> = Vector<LangPackString>;
|
langpack.getStrings#efea3803 lang_pack:string lang_code:string keys:Vector<string> = Vector<LangPackString>;
|
||||||
|
@ -8459,7 +8459,7 @@ ContactsManager::User *ContactsManager::get_user_force(UserId user_id) {
|
|||||||
profile_photo_local_id),
|
profile_photo_local_id),
|
||||||
telegram_api::make_object<telegram_api::fileLocationToBeDeprecated>(profile_photo_volume_id,
|
telegram_api::make_object<telegram_api::fileLocationToBeDeprecated>(profile_photo_volume_id,
|
||||||
profile_photo_local_id + 2),
|
profile_photo_local_id + 2),
|
||||||
profile_photo_dc_id);
|
BufferSlice(), profile_photo_dc_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
auto user = telegram_api::make_object<telegram_api::user>(
|
auto user = telegram_api::make_object<telegram_api::user>(
|
||||||
|
@ -137,8 +137,9 @@ class CreateGroupCallQuery : public Td::ResultHandler {
|
|||||||
auto input_peer = td->messages_manager_->get_input_peer(dialog_id, AccessRights::Read);
|
auto input_peer = td->messages_manager_->get_input_peer(dialog_id, AccessRights::Read);
|
||||||
CHECK(input_peer != nullptr);
|
CHECK(input_peer != nullptr);
|
||||||
|
|
||||||
|
int32 flags = 0;
|
||||||
send_query(G()->net_query_creator().create(
|
send_query(G()->net_query_creator().create(
|
||||||
telegram_api::phone_createGroupCall(std::move(input_peer), Random::secure_int32())));
|
telegram_api::phone_createGroupCall(flags, std::move(input_peer), Random::secure_int32(), string(), 0)));
|
||||||
}
|
}
|
||||||
|
|
||||||
void on_result(uint64 id, BufferSlice packet) override {
|
void on_result(uint64 id, BufferSlice packet) override {
|
||||||
|
@ -2301,7 +2301,7 @@ static tl_object_ptr<telegram_api::invoice> get_input_invoice(const Invoice &inv
|
|||||||
});
|
});
|
||||||
return make_tl_object<telegram_api::invoice>(
|
return make_tl_object<telegram_api::invoice>(
|
||||||
flags, false /*ignored*/, false /*ignored*/, false /*ignored*/, false /*ignored*/, false /*ignored*/,
|
flags, false /*ignored*/, false /*ignored*/, false /*ignored*/, false /*ignored*/, false /*ignored*/,
|
||||||
false /*ignored*/, false /*ignored*/, false /*ignored*/, invoice.currency, std::move(prices));
|
false /*ignored*/, false /*ignored*/, false /*ignored*/, invoice.currency, std::move(prices), 0, vector<int64>());
|
||||||
}
|
}
|
||||||
|
|
||||||
static tl_object_ptr<telegram_api::inputWebDocument> get_input_web_document(const FileManager *file_manager,
|
static tl_object_ptr<telegram_api::inputWebDocument> get_input_web_document(const FileManager *file_manager,
|
||||||
@ -2332,7 +2332,7 @@ static tl_object_ptr<telegram_api::inputWebDocument> get_input_web_document(cons
|
|||||||
static tl_object_ptr<telegram_api::inputMediaInvoice> get_input_media_invoice(const FileManager *file_manager,
|
static tl_object_ptr<telegram_api::inputMediaInvoice> get_input_media_invoice(const FileManager *file_manager,
|
||||||
const MessageInvoice *message_invoice) {
|
const MessageInvoice *message_invoice) {
|
||||||
CHECK(message_invoice != nullptr);
|
CHECK(message_invoice != nullptr);
|
||||||
int32 flags = 0;
|
int32 flags = telegram_api::inputMediaInvoice::START_PARAM_MASK;
|
||||||
auto input_web_document = get_input_web_document(file_manager, message_invoice->photo);
|
auto input_web_document = get_input_web_document(file_manager, message_invoice->photo);
|
||||||
if (input_web_document != nullptr) {
|
if (input_web_document != nullptr) {
|
||||||
flags |= telegram_api::inputMediaInvoice::PHOTO_MASK;
|
flags |= telegram_api::inputMediaInvoice::PHOTO_MASK;
|
||||||
@ -4653,6 +4653,10 @@ unique_ptr<MessageContent> get_action_message_content(Td *td, tl_object_ptr<tele
|
|||||||
}
|
}
|
||||||
return td::make_unique<MessageChatSetTtl>(set_messages_ttl->period_);
|
return td::make_unique<MessageChatSetTtl>(set_messages_ttl->period_);
|
||||||
}
|
}
|
||||||
|
case telegram_api::messageActionGroupCallScheduled::ID: {
|
||||||
|
auto scheduled_group_call = move_tl_object_as<telegram_api::messageActionGroupCallScheduled>(action);
|
||||||
|
break;
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
UNREACHABLE();
|
UNREACHABLE();
|
||||||
}
|
}
|
||||||
|
@ -37374,7 +37374,7 @@ void MessagesManager::get_payment_form(FullMessageId full_message_id,
|
|||||||
return promise.set_error(r_message_id.move_as_error());
|
return promise.set_error(r_message_id.move_as_error());
|
||||||
}
|
}
|
||||||
|
|
||||||
::td::get_payment_form(r_message_id.ok(), std::move(promise));
|
::td::get_payment_form(full_message_id.get_dialog_id(), r_message_id.ok(), std::move(promise));
|
||||||
}
|
}
|
||||||
|
|
||||||
void MessagesManager::validate_order_info(FullMessageId full_message_id, tl_object_ptr<td_api::orderInfo> order_info,
|
void MessagesManager::validate_order_info(FullMessageId full_message_id, tl_object_ptr<td_api::orderInfo> order_info,
|
||||||
@ -37385,7 +37385,8 @@ void MessagesManager::validate_order_info(FullMessageId full_message_id, tl_obje
|
|||||||
return promise.set_error(r_message_id.move_as_error());
|
return promise.set_error(r_message_id.move_as_error());
|
||||||
}
|
}
|
||||||
|
|
||||||
::td::validate_order_info(r_message_id.ok(), std::move(order_info), allow_save, std::move(promise));
|
::td::validate_order_info(full_message_id.get_dialog_id(), r_message_id.ok(), std::move(order_info), allow_save,
|
||||||
|
std::move(promise));
|
||||||
}
|
}
|
||||||
|
|
||||||
void MessagesManager::send_payment_form(FullMessageId full_message_id, const string &order_info_id,
|
void MessagesManager::send_payment_form(FullMessageId full_message_id, const string &order_info_id,
|
||||||
@ -37397,7 +37398,8 @@ void MessagesManager::send_payment_form(FullMessageId full_message_id, const str
|
|||||||
return promise.set_error(r_message_id.move_as_error());
|
return promise.set_error(r_message_id.move_as_error());
|
||||||
}
|
}
|
||||||
|
|
||||||
::td::send_payment_form(r_message_id.ok(), order_info_id, shipping_option_id, credentials, std::move(promise));
|
::td::send_payment_form(full_message_id.get_dialog_id(), r_message_id.ok(), order_info_id, shipping_option_id,
|
||||||
|
credentials, std::move(promise));
|
||||||
}
|
}
|
||||||
|
|
||||||
void MessagesManager::get_payment_receipt(FullMessageId full_message_id,
|
void MessagesManager::get_payment_receipt(FullMessageId full_message_id,
|
||||||
@ -37416,7 +37418,7 @@ void MessagesManager::get_payment_receipt(FullMessageId full_message_id,
|
|||||||
return promise.set_error(Status::Error(5, "Wrong message identifier"));
|
return promise.set_error(Status::Error(5, "Wrong message identifier"));
|
||||||
}
|
}
|
||||||
|
|
||||||
::td::get_payment_receipt(m->message_id.get_server_message_id(), std::move(promise));
|
::td::get_payment_receipt(full_message_id.get_dialog_id(), m->message_id.get_server_message_id(), std::move(promise));
|
||||||
}
|
}
|
||||||
|
|
||||||
void MessagesManager::remove_sponsored_dialog() {
|
void MessagesManager::remove_sponsored_dialog() {
|
||||||
|
@ -6,14 +6,14 @@
|
|||||||
//
|
//
|
||||||
#include "td/telegram/Payments.h"
|
#include "td/telegram/Payments.h"
|
||||||
|
|
||||||
#include "td/telegram/td_api.h"
|
|
||||||
#include "td/telegram/telegram_api.h"
|
|
||||||
|
|
||||||
#include "td/telegram/ContactsManager.h"
|
#include "td/telegram/ContactsManager.h"
|
||||||
#include "td/telegram/Global.h"
|
#include "td/telegram/Global.h"
|
||||||
|
#include "td/telegram/MessagesManager.h"
|
||||||
#include "td/telegram/misc.h"
|
#include "td/telegram/misc.h"
|
||||||
#include "td/telegram/PasswordManager.h"
|
#include "td/telegram/PasswordManager.h"
|
||||||
#include "td/telegram/Td.h"
|
#include "td/telegram/Td.h"
|
||||||
|
#include "td/telegram/td_api.h"
|
||||||
|
#include "td/telegram/telegram_api.h"
|
||||||
#include "td/telegram/UpdatesManager.h"
|
#include "td/telegram/UpdatesManager.h"
|
||||||
|
|
||||||
#include "td/utils/algorithm.h"
|
#include "td/utils/algorithm.h"
|
||||||
@ -255,13 +255,22 @@ static tl_object_ptr<td_api::savedCredentials> convert_saved_credentials(
|
|||||||
|
|
||||||
class GetPaymentFormQuery : public Td::ResultHandler {
|
class GetPaymentFormQuery : public Td::ResultHandler {
|
||||||
Promise<tl_object_ptr<td_api::paymentForm>> promise_;
|
Promise<tl_object_ptr<td_api::paymentForm>> promise_;
|
||||||
|
DialogId dialog_id_;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit GetPaymentFormQuery(Promise<tl_object_ptr<td_api::paymentForm>> &&promise) : promise_(std::move(promise)) {
|
explicit GetPaymentFormQuery(Promise<tl_object_ptr<td_api::paymentForm>> &&promise) : promise_(std::move(promise)) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void send(ServerMessageId server_message_id) {
|
void send(DialogId dialog_id, ServerMessageId server_message_id) {
|
||||||
send_query(G()->net_query_creator().create(telegram_api::payments_getPaymentForm(server_message_id.get())));
|
dialog_id_ = dialog_id;
|
||||||
|
auto input_peer = td->messages_manager_->get_input_peer(dialog_id, AccessRights::Read);
|
||||||
|
if (input_peer == nullptr) {
|
||||||
|
return on_error(0, Status::Error(400, "Can't access the chat"));
|
||||||
|
}
|
||||||
|
|
||||||
|
int32 flags = 0;
|
||||||
|
send_query(G()->net_query_creator().create(
|
||||||
|
telegram_api::payments_getPaymentForm(flags, std::move(input_peer), server_message_id.get(), nullptr)));
|
||||||
}
|
}
|
||||||
|
|
||||||
void on_result(uint64 id, BufferSlice packet) override {
|
void on_result(uint64 id, BufferSlice packet) override {
|
||||||
@ -286,20 +295,28 @@ class GetPaymentFormQuery : public Td::ResultHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void on_error(uint64 id, Status status) override {
|
void on_error(uint64 id, Status status) override {
|
||||||
|
td->messages_manager_->on_get_dialog_error(dialog_id_, status, "GetPaymentFormQuery");
|
||||||
promise_.set_error(std::move(status));
|
promise_.set_error(std::move(status));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
class ValidateRequestedInfoQuery : public Td::ResultHandler {
|
class ValidateRequestedInfoQuery : public Td::ResultHandler {
|
||||||
Promise<tl_object_ptr<td_api::validatedOrderInfo>> promise_;
|
Promise<tl_object_ptr<td_api::validatedOrderInfo>> promise_;
|
||||||
|
DialogId dialog_id_;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit ValidateRequestedInfoQuery(Promise<tl_object_ptr<td_api::validatedOrderInfo>> &&promise)
|
explicit ValidateRequestedInfoQuery(Promise<tl_object_ptr<td_api::validatedOrderInfo>> &&promise)
|
||||||
: promise_(std::move(promise)) {
|
: promise_(std::move(promise)) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void send(ServerMessageId server_message_id, tl_object_ptr<telegram_api::paymentRequestedInfo> requested_info,
|
void send(DialogId dialog_id, ServerMessageId server_message_id,
|
||||||
bool allow_save) {
|
tl_object_ptr<telegram_api::paymentRequestedInfo> requested_info, bool allow_save) {
|
||||||
|
dialog_id_ = dialog_id;
|
||||||
|
auto input_peer = td->messages_manager_->get_input_peer(dialog_id, AccessRights::Read);
|
||||||
|
if (input_peer == nullptr) {
|
||||||
|
return on_error(0, Status::Error(400, "Can't access the chat"));
|
||||||
|
}
|
||||||
|
|
||||||
int32 flags = 0;
|
int32 flags = 0;
|
||||||
if (allow_save) {
|
if (allow_save) {
|
||||||
flags |= telegram_api::payments_validateRequestedInfo::SAVE_MASK;
|
flags |= telegram_api::payments_validateRequestedInfo::SAVE_MASK;
|
||||||
@ -309,7 +326,7 @@ class ValidateRequestedInfoQuery : public Td::ResultHandler {
|
|||||||
requested_info->flags_ = 0;
|
requested_info->flags_ = 0;
|
||||||
}
|
}
|
||||||
send_query(G()->net_query_creator().create(telegram_api::payments_validateRequestedInfo(
|
send_query(G()->net_query_creator().create(telegram_api::payments_validateRequestedInfo(
|
||||||
flags, false /*ignored*/, server_message_id.get(), std::move(requested_info))));
|
flags, false /*ignored*/, std::move(input_peer), server_message_id.get(), std::move(requested_info))));
|
||||||
}
|
}
|
||||||
|
|
||||||
void on_result(uint64 id, BufferSlice packet) override {
|
void on_result(uint64 id, BufferSlice packet) override {
|
||||||
@ -327,21 +344,30 @@ class ValidateRequestedInfoQuery : public Td::ResultHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void on_error(uint64 id, Status status) override {
|
void on_error(uint64 id, Status status) override {
|
||||||
|
td->messages_manager_->on_get_dialog_error(dialog_id_, status, "ValidateRequestedInfoQuery");
|
||||||
promise_.set_error(std::move(status));
|
promise_.set_error(std::move(status));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
class SendPaymentFormQuery : public Td::ResultHandler {
|
class SendPaymentFormQuery : public Td::ResultHandler {
|
||||||
Promise<tl_object_ptr<td_api::paymentResult>> promise_;
|
Promise<tl_object_ptr<td_api::paymentResult>> promise_;
|
||||||
|
DialogId dialog_id_;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit SendPaymentFormQuery(Promise<tl_object_ptr<td_api::paymentResult>> &&promise)
|
explicit SendPaymentFormQuery(Promise<tl_object_ptr<td_api::paymentResult>> &&promise)
|
||||||
: promise_(std::move(promise)) {
|
: promise_(std::move(promise)) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void send(ServerMessageId server_message_id, const string &order_info_id, const string &shipping_option_id,
|
void send(DialogId dialog_id, ServerMessageId server_message_id, const string &order_info_id,
|
||||||
tl_object_ptr<telegram_api::InputPaymentCredentials> input_credentials) {
|
const string &shipping_option_id, tl_object_ptr<telegram_api::InputPaymentCredentials> input_credentials) {
|
||||||
CHECK(input_credentials != nullptr);
|
CHECK(input_credentials != nullptr);
|
||||||
|
|
||||||
|
dialog_id_ = dialog_id;
|
||||||
|
auto input_peer = td->messages_manager_->get_input_peer(dialog_id, AccessRights::Read);
|
||||||
|
if (input_peer == nullptr) {
|
||||||
|
return on_error(0, Status::Error(400, "Can't access the chat"));
|
||||||
|
}
|
||||||
|
|
||||||
int32 flags = 0;
|
int32 flags = 0;
|
||||||
if (!order_info_id.empty()) {
|
if (!order_info_id.empty()) {
|
||||||
flags |= telegram_api::payments_sendPaymentForm::REQUESTED_INFO_ID_MASK;
|
flags |= telegram_api::payments_sendPaymentForm::REQUESTED_INFO_ID_MASK;
|
||||||
@ -349,8 +375,9 @@ class SendPaymentFormQuery : public Td::ResultHandler {
|
|||||||
if (!shipping_option_id.empty()) {
|
if (!shipping_option_id.empty()) {
|
||||||
flags |= telegram_api::payments_sendPaymentForm::SHIPPING_OPTION_ID_MASK;
|
flags |= telegram_api::payments_sendPaymentForm::SHIPPING_OPTION_ID_MASK;
|
||||||
}
|
}
|
||||||
send_query(G()->net_query_creator().create(telegram_api::payments_sendPaymentForm(
|
send_query(G()->net_query_creator().create(
|
||||||
flags, server_message_id.get(), order_info_id, shipping_option_id, std::move(input_credentials))));
|
telegram_api::payments_sendPaymentForm(flags, 0, std::move(input_peer), server_message_id.get(), order_info_id,
|
||||||
|
shipping_option_id, std::move(input_credentials), 0)));
|
||||||
}
|
}
|
||||||
|
|
||||||
void on_result(uint64 id, BufferSlice packet) override {
|
void on_result(uint64 id, BufferSlice packet) override {
|
||||||
@ -382,20 +409,29 @@ class SendPaymentFormQuery : public Td::ResultHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void on_error(uint64 id, Status status) override {
|
void on_error(uint64 id, Status status) override {
|
||||||
|
td->messages_manager_->on_get_dialog_error(dialog_id_, status, "SendPaymentFormQuery");
|
||||||
promise_.set_error(std::move(status));
|
promise_.set_error(std::move(status));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
class GetPaymentReceiptQuery : public Td::ResultHandler {
|
class GetPaymentReceiptQuery : public Td::ResultHandler {
|
||||||
Promise<tl_object_ptr<td_api::paymentReceipt>> promise_;
|
Promise<tl_object_ptr<td_api::paymentReceipt>> promise_;
|
||||||
|
DialogId dialog_id_;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
explicit GetPaymentReceiptQuery(Promise<tl_object_ptr<td_api::paymentReceipt>> &&promise)
|
explicit GetPaymentReceiptQuery(Promise<tl_object_ptr<td_api::paymentReceipt>> &&promise)
|
||||||
: promise_(std::move(promise)) {
|
: promise_(std::move(promise)) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void send(ServerMessageId server_message_id) {
|
void send(DialogId dialog_id, ServerMessageId server_message_id) {
|
||||||
send_query(G()->net_query_creator().create(telegram_api::payments_getPaymentReceipt(server_message_id.get())));
|
dialog_id_ = dialog_id;
|
||||||
|
auto input_peer = td->messages_manager_->get_input_peer(dialog_id, AccessRights::Read);
|
||||||
|
if (input_peer == nullptr) {
|
||||||
|
return on_error(0, Status::Error(400, "Can't access the chat"));
|
||||||
|
}
|
||||||
|
|
||||||
|
send_query(G()->net_query_creator().create(
|
||||||
|
telegram_api::payments_getPaymentReceipt(std::move(input_peer), server_message_id.get())));
|
||||||
}
|
}
|
||||||
|
|
||||||
void on_result(uint64 id, BufferSlice packet) override {
|
void on_result(uint64 id, BufferSlice packet) override {
|
||||||
@ -423,6 +459,7 @@ class GetPaymentReceiptQuery : public Td::ResultHandler {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void on_error(uint64 id, Status status) override {
|
void on_error(uint64 id, Status status) override {
|
||||||
|
td->messages_manager_->on_get_dialog_error(dialog_id_, status, "GetPaymentReceiptQuery");
|
||||||
promise_.set_error(std::move(status));
|
promise_.set_error(std::move(status));
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@ -785,12 +822,17 @@ void answer_pre_checkout_query(int64 pre_checkout_query_id, const string &error_
|
|||||||
->send(pre_checkout_query_id, error_message);
|
->send(pre_checkout_query_id, error_message);
|
||||||
}
|
}
|
||||||
|
|
||||||
void get_payment_form(ServerMessageId server_message_id, Promise<tl_object_ptr<td_api::paymentForm>> &&promise) {
|
void get_payment_form(DialogId dialog_id, ServerMessageId server_message_id,
|
||||||
G()->td().get_actor_unsafe()->create_handler<GetPaymentFormQuery>(std::move(promise))->send(server_message_id);
|
Promise<tl_object_ptr<td_api::paymentForm>> &&promise) {
|
||||||
|
G()->td()
|
||||||
|
.get_actor_unsafe()
|
||||||
|
->create_handler<GetPaymentFormQuery>(std::move(promise))
|
||||||
|
->send(dialog_id, server_message_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
void validate_order_info(ServerMessageId server_message_id, tl_object_ptr<td_api::orderInfo> order_info,
|
void validate_order_info(DialogId dialog_id, ServerMessageId server_message_id,
|
||||||
bool allow_save, Promise<tl_object_ptr<td_api::validatedOrderInfo>> &&promise) {
|
tl_object_ptr<td_api::orderInfo> order_info, bool allow_save,
|
||||||
|
Promise<tl_object_ptr<td_api::validatedOrderInfo>> &&promise) {
|
||||||
if (order_info != nullptr) {
|
if (order_info != nullptr) {
|
||||||
if (!clean_input_string(order_info->name_)) {
|
if (!clean_input_string(order_info->name_)) {
|
||||||
return promise.set_error(Status::Error(400, "Name must be encoded in UTF-8"));
|
return promise.set_error(Status::Error(400, "Name must be encoded in UTF-8"));
|
||||||
@ -826,11 +868,11 @@ void validate_order_info(ServerMessageId server_message_id, tl_object_ptr<td_api
|
|||||||
G()->td()
|
G()->td()
|
||||||
.get_actor_unsafe()
|
.get_actor_unsafe()
|
||||||
->create_handler<ValidateRequestedInfoQuery>(std::move(promise))
|
->create_handler<ValidateRequestedInfoQuery>(std::move(promise))
|
||||||
->send(server_message_id, convert_order_info(std::move(order_info)), allow_save);
|
->send(dialog_id, server_message_id, convert_order_info(std::move(order_info)), allow_save);
|
||||||
}
|
}
|
||||||
|
|
||||||
void send_payment_form(ServerMessageId server_message_id, const string &order_info_id, const string &shipping_option_id,
|
void send_payment_form(DialogId dialog_id, ServerMessageId server_message_id, const string &order_info_id,
|
||||||
const tl_object_ptr<td_api::InputCredentials> &credentials,
|
const string &shipping_option_id, const tl_object_ptr<td_api::InputCredentials> &credentials,
|
||||||
Promise<tl_object_ptr<td_api::paymentResult>> &&promise) {
|
Promise<tl_object_ptr<td_api::paymentResult>> &&promise) {
|
||||||
CHECK(credentials != nullptr);
|
CHECK(credentials != nullptr);
|
||||||
|
|
||||||
@ -882,11 +924,15 @@ void send_payment_form(ServerMessageId server_message_id, const string &order_in
|
|||||||
G()->td()
|
G()->td()
|
||||||
.get_actor_unsafe()
|
.get_actor_unsafe()
|
||||||
->create_handler<SendPaymentFormQuery>(std::move(promise))
|
->create_handler<SendPaymentFormQuery>(std::move(promise))
|
||||||
->send(server_message_id, order_info_id, shipping_option_id, std::move(input_credentials));
|
->send(dialog_id, server_message_id, order_info_id, shipping_option_id, std::move(input_credentials));
|
||||||
}
|
}
|
||||||
|
|
||||||
void get_payment_receipt(ServerMessageId server_message_id, Promise<tl_object_ptr<td_api::paymentReceipt>> &&promise) {
|
void get_payment_receipt(DialogId dialog_id, ServerMessageId server_message_id,
|
||||||
G()->td().get_actor_unsafe()->create_handler<GetPaymentReceiptQuery>(std::move(promise))->send(server_message_id);
|
Promise<tl_object_ptr<td_api::paymentReceipt>> &&promise) {
|
||||||
|
G()->td()
|
||||||
|
.get_actor_unsafe()
|
||||||
|
->create_handler<GetPaymentReceiptQuery>(std::move(promise))
|
||||||
|
->send(dialog_id, server_message_id);
|
||||||
}
|
}
|
||||||
|
|
||||||
void get_saved_order_info(Promise<tl_object_ptr<td_api::orderInfo>> &&promise) {
|
void get_saved_order_info(Promise<tl_object_ptr<td_api::orderInfo>> &&promise) {
|
||||||
|
@ -8,6 +8,7 @@
|
|||||||
|
|
||||||
#include "td/actor/PromiseFuture.h"
|
#include "td/actor/PromiseFuture.h"
|
||||||
|
|
||||||
|
#include "td/telegram/DialogId.h"
|
||||||
#include "td/telegram/Photo.h"
|
#include "td/telegram/Photo.h"
|
||||||
#include "td/telegram/ServerMessageId.h"
|
#include "td/telegram/ServerMessageId.h"
|
||||||
|
|
||||||
@ -137,16 +138,19 @@ void answer_shipping_query(int64 shipping_query_id, vector<tl_object_ptr<td_api:
|
|||||||
|
|
||||||
void answer_pre_checkout_query(int64 pre_checkout_query_id, const string &error_message, Promise<Unit> &&promise);
|
void answer_pre_checkout_query(int64 pre_checkout_query_id, const string &error_message, Promise<Unit> &&promise);
|
||||||
|
|
||||||
void get_payment_form(ServerMessageId server_message_id, Promise<tl_object_ptr<td_api::paymentForm>> &&promise);
|
void get_payment_form(DialogId dialog_id, ServerMessageId server_message_id,
|
||||||
|
Promise<tl_object_ptr<td_api::paymentForm>> &&promise);
|
||||||
|
|
||||||
void validate_order_info(ServerMessageId server_message_id, tl_object_ptr<td_api::orderInfo> order_info,
|
void validate_order_info(DialogId dialog_id, ServerMessageId server_message_id,
|
||||||
bool allow_save, Promise<tl_object_ptr<td_api::validatedOrderInfo>> &&promise);
|
tl_object_ptr<td_api::orderInfo> order_info, bool allow_save,
|
||||||
|
Promise<tl_object_ptr<td_api::validatedOrderInfo>> &&promise);
|
||||||
|
|
||||||
void send_payment_form(ServerMessageId server_message_id, const string &order_info_id, const string &shipping_option_id,
|
void send_payment_form(DialogId dialog_id, ServerMessageId server_message_id, const string &order_info_id,
|
||||||
const tl_object_ptr<td_api::InputCredentials> &credentials,
|
const string &shipping_option_id, const tl_object_ptr<td_api::InputCredentials> &credentials,
|
||||||
Promise<tl_object_ptr<td_api::paymentResult>> &&promise);
|
Promise<tl_object_ptr<td_api::paymentResult>> &&promise);
|
||||||
|
|
||||||
void get_payment_receipt(ServerMessageId server_message_id, Promise<tl_object_ptr<td_api::paymentReceipt>> &&promise);
|
void get_payment_receipt(DialogId dialog_id, ServerMessageId server_message_id,
|
||||||
|
Promise<tl_object_ptr<td_api::paymentReceipt>> &&promise);
|
||||||
|
|
||||||
void get_saved_order_info(Promise<tl_object_ptr<td_api::orderInfo>> &&promise);
|
void get_saved_order_info(Promise<tl_object_ptr<td_api::orderInfo>> &&promise);
|
||||||
|
|
||||||
|
@ -992,7 +992,7 @@ tl_object_ptr<telegram_api::userProfilePhoto> convert_photo_to_profile_photo(
|
|||||||
flags |= telegram_api::userProfilePhoto::HAS_VIDEO_MASK;
|
flags |= telegram_api::userProfilePhoto::HAS_VIDEO_MASK;
|
||||||
}
|
}
|
||||||
return make_tl_object<telegram_api::userProfilePhoto>(flags, false /*ignored*/, photo->id_, std::move(photo_small),
|
return make_tl_object<telegram_api::userProfilePhoto>(flags, false /*ignored*/, photo->id_, std::move(photo_small),
|
||||||
std::move(photo_big), photo->dc_id_);
|
std::move(photo_big), BufferSlice(), photo->dc_id_);
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace td
|
} // namespace td
|
||||||
|
@ -623,6 +623,7 @@ bool UpdatesManager::is_acceptable_message(const telegram_api::Message *message_
|
|||||||
case telegram_api::messageActionSecureValuesSentMe::ID:
|
case telegram_api::messageActionSecureValuesSentMe::ID:
|
||||||
case telegram_api::messageActionContactSignUp::ID:
|
case telegram_api::messageActionContactSignUp::ID:
|
||||||
case telegram_api::messageActionGroupCall::ID:
|
case telegram_api::messageActionGroupCall::ID:
|
||||||
|
case telegram_api::messageActionGroupCallScheduled::ID:
|
||||||
case telegram_api::messageActionSetMessagesTTL::ID:
|
case telegram_api::messageActionSetMessagesTTL::ID:
|
||||||
break;
|
break;
|
||||||
case telegram_api::messageActionChatCreate::ID: {
|
case telegram_api::messageActionChatCreate::ID: {
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
namespace td {
|
namespace td {
|
||||||
|
|
||||||
constexpr int32 MTPROTO_LAYER = 126;
|
constexpr int32 MTPROTO_LAYER = 127;
|
||||||
|
|
||||||
enum class Version : int32 {
|
enum class Version : int32 {
|
||||||
Initial, // 0
|
Initial, // 0
|
||||||
|
Loading…
Reference in New Issue
Block a user