From b0f336994bff885bf0ec0f2a24f1eda5caa0f9e9 Mon Sep 17 00:00:00 2001
From: Wizou <11647984+wiz0u@users.noreply.github.com>
Date: Thu, 2 Jan 2025 00:35:34 +0100
Subject: [PATCH] API Layer 196: more starGifts methods, bot verification (see
Bot API 8.2), conference calls, ...
---
README.md | 2 +-
src/TL.Schema.cs | 325 ++++++++++++++++++++++++++++++++-----
src/TL.SchemaFuncs.cs | 108 ++++++++++--
src/TL.Table.cs | 60 ++++---
src/WTelegramClient.csproj | 2 +-
5 files changed, 414 insertions(+), 83 deletions(-)
diff --git a/README.md b/README.md
index bc6ba13..929be15 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-[](https://corefork.telegram.org/methods)
+[](https://corefork.telegram.org/methods)
[](https://www.nuget.org/packages/WTelegramClient/)
[](https://www.nuget.org/packages/WTelegramClient/absoluteLatest)
[](https://buymeacoffee.com/wizou)
diff --git a/src/TL.Schema.cs b/src/TL.Schema.cs
index aed4861..60b1d51 100644
--- a/src/TL.Schema.cs
+++ b/src/TL.Schema.cs
@@ -750,7 +750,7 @@ namespace TL
public long id;
}
/// Indicates info about a certain user. See
- [TLDef(0x83314FCA)]
+ [TLDef(0x4B46C37E)]
public sealed partial class User : UserBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -793,6 +793,7 @@ namespace TL
[IfFlag(41)] public PeerColor profile_color;
/// Monthly Active Users (MAU) of this bot (may be absent for small bots).
[IfFlag(44)] public int bot_active_users;
+ [IfFlag(46)] public long bot_verification_icon;
[Flags] public enum Flags : uint
{
@@ -880,6 +881,8 @@ namespace TL
has_bot_active_users = 0x1000,
/// If set, this bot has configured a Main Mini App ».
bot_has_main_app = 0x2000,
+ /// Field has a value
+ has_bot_verification_icon = 0x4000,
}
}
@@ -1050,7 +1053,7 @@ namespace TL
public override string Title => title;
}
/// Channel/supergroup info See
- [TLDef(0xFE4478BD)]
+ [TLDef(0xE00998B7)]
public sealed partial class Channel : ChatBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -1093,6 +1096,7 @@ namespace TL
[IfFlag(42)] public int level;
/// Expiration date of the Telegram Star subscription » the current user has bought to gain access to this channel.
[IfFlag(43)] public DateTime subscription_until_date;
+ [IfFlag(45)] public long bot_verification_icon;
[Flags] public enum Flags : uint
{
@@ -1174,6 +1178,8 @@ namespace TL
has_subscription_until_date = 0x800,
/// If set, messages sent by admins to this channel will link to the admin's profile (just like with groups).
signature_profiles = 0x1000,
+ /// Field has a value
+ has_bot_verification_icon = 0x2000,
}
/// ID of the channel, see here » for more info
@@ -1357,7 +1363,7 @@ namespace TL
public override int ReactionsLimit => reactions_limit;
}
/// Full info about a channel, supergroup or gigagroup. See
- [TLDef(0xBBAB348D)]
+ [TLDef(0x9FF3B858)]
public sealed partial class ChannelFull : ChatFullBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -1446,6 +1452,7 @@ namespace TL
[IfFlag(41)] public int boosts_unrestrict;
/// Custom emoji stickerset associated to the current supergroup, set using Channels_SetEmojiStickers after reaching the appropriate boost level, see here » for more info.
[IfFlag(42)] public StickerSet emojiset;
+ [IfFlag(49)] public BotVerification bot_verification;
[Flags] public enum Flags : uint
{
@@ -1549,6 +1556,8 @@ namespace TL
can_view_stars_revenue = 0x8000,
/// If set, users may send paid Telegram Star reactions » to messages of this channel.
paid_reactions_available = 0x10000,
+ /// Field has a value
+ has_bot_verification = 0x20000,
}
/// ID of the channel
@@ -1698,6 +1707,8 @@ namespace TL
public virtual MessageReplyHeaderBase ReplyTo => default;
/// Date of the message
public virtual DateTime Date => default;
+ /// Reactions to this message
+ public virtual MessageReactions Reactions => default;
/// Time To Live of the message, once message.date+message.ttl_period === time(), the message will be deleted on the server, and must be deleted locally as well.
public virtual int TtlPeriod => default;
}
@@ -1724,7 +1735,7 @@ namespace TL
public override Peer Peer => peer_id;
}
/// A message See
- [TLDef(0x94345242)]
+ [TLDef(0x96FDBBE9)]
public sealed partial class Message : MessageBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -1783,6 +1794,7 @@ namespace TL
[IfFlag(34)] public long effect;
/// Represents a fact-check ».
[IfFlag(35)] public FactCheck factcheck;
+ [IfFlag(37)] public DateTime report_delivery_until_date;
[Flags] public enum Flags : uint
{
@@ -1858,6 +1870,8 @@ namespace TL
has_factcheck = 0x8,
/// The video contained in the message is currently being processed by the server (i.e. to generate alternative qualities, that will be contained in the final .alt_document), and will be sent once the video is processed, which will happen approximately at the specified date (i.e. messages with this flag set should be treated similarly to scheduled messages, but instead of the scheduled date, date contains the estimated conversion date).
See here » for more info.
video_processing_pending = 0x10,
+ /// Field has a value
+ has_report_delivery_until_date = 0x20,
}
/// ID of the message
@@ -1870,11 +1884,13 @@ namespace TL
public override MessageReplyHeaderBase ReplyTo => reply_to;
/// Date of the message
public override DateTime Date => date;
+ /// Reactions to this message
+ public override MessageReactions Reactions => reactions;
/// Time To Live of the message, once message.date+message.ttl_period === time(), the message will be deleted on the server, and must be deleted locally as well.
public override int TtlPeriod => ttl_period;
}
/// Indicates a service message See
- [TLDef(0x2B085862)]
+ [TLDef(0xD3D28540)]
public sealed partial class MessageService : MessageBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -1891,6 +1907,7 @@ namespace TL
public DateTime date;
/// Event connected with the service message
public MessageAction action;
+ [IfFlag(20)] public MessageReactions reactions;
/// Time To Live of the message, once message.date+message.ttl_period === time(), the message will be deleted on the server, and must be deleted locally as well.
[IfFlag(25)] public int ttl_period;
@@ -1906,12 +1923,15 @@ namespace TL
media_unread = 0x20,
/// Field has a value
has_from_id = 0x100,
+ reactions_are_possible = 0x200,
/// Whether the message is silent
silent = 0x2000,
/// Whether it's a channel post
post = 0x4000,
/// This is a legacy message: it has to be refetched with the new layer
legacy = 0x80000,
+ /// Field has a value
+ has_reactions = 0x100000,
/// Field has a value
has_ttl_period = 0x2000000,
}
@@ -1926,6 +1946,7 @@ namespace TL
public override MessageReplyHeaderBase ReplyTo => reply_to;
/// Message date
public override DateTime Date => date;
+ public override MessageReactions Reactions => reactions;
/// Time To Live of the message, once message.date+message.ttl_period === time(), the message will be deleted on the server, and must be deleted locally as well.
public override int TtlPeriod => ttl_period;
}
@@ -2821,17 +2842,19 @@ namespace TL
}
}
/// You received a gift, see here » for more info. See
- [TLDef(0x08557637)]
+ [TLDef(0xD8F4F0A7)]
public sealed partial class MessageActionStarGift : MessageAction
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
public Flags flags;
/// Info about the gift
- public StarGift gift;
+ public StarGiftBase gift;
/// Additional message from the sender of the gift
[IfFlag(1)] public TextWithEntities message;
/// The receiver of this gift may convert it to this many Telegram Stars, instead of displaying it on their profile page.
convert_stars will be equal to stars only if the gift was bought using recently bought Telegram Stars, otherwise it will be less than stars.
[IfFlag(4)] public long convert_stars;
+ [IfFlag(5)] public int upgrade_msg_id;
+ [IfFlag(8)] public long upgrade_stars;
[Flags] public enum Flags : uint
{
@@ -2845,6 +2868,30 @@ namespace TL
converted = 0x8,
/// Field has a value
has_convert_stars = 0x10,
+ upgraded = 0x20,
+ /// Field has a value
+ has_upgrade_stars = 0x100,
+ refunded = 0x200,
+ can_upgrade = 0x400,
+ }
+ }
+ /// See
+ [TLDef(0x26077B99)]
+ public sealed partial class MessageActionStarGiftUnique : MessageAction
+ {
+ public Flags flags;
+ public StarGiftBase gift;
+ [IfFlag(3)] public int can_export_at;
+ [IfFlag(4)] public long transfer_stars;
+
+ [Flags] public enum Flags : uint
+ {
+ upgrade = 0x1,
+ transferred = 0x2,
+ saved = 0x4,
+ has_can_export_at = 0x8,
+ has_transfer_stars = 0x10,
+ refunded = 0x20,
}
}
@@ -3451,7 +3498,7 @@ namespace TL
}
/// Extended user info See
- [TLDef(0x979D2376)]
+ [TLDef(0x4D975BBC)]
public sealed partial class UserFull : IObject
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -3516,6 +3563,7 @@ namespace TL
[IfFlag(40)] public int stargifts_count;
/// This bot has an active referral program »
[IfFlag(43)] public StarRefProgram starref_program;
+ [IfFlag(44)] public BotVerification bot_verification;
[Flags] public enum Flags : uint
{
@@ -3603,6 +3651,8 @@ namespace TL
bot_can_manage_emoji_status = 0x400,
/// Field has a value
has_starref_program = 0x800,
+ /// Field has a value
+ has_bot_verification = 0x1000,
}
}
@@ -4991,13 +5041,20 @@ namespace TL
public int version;
}
/// A new groupcall was started See
- [TLDef(0x14B24500)]
+ [TLDef(0x97D64341)]
public sealed partial class UpdateGroupCall : Update
{
+ public Flags flags;
/// The channel/supergroup where this group call or livestream takes place
- public long chat_id;
+ [IfFlag(0)] public long chat_id;
/// Info about the group call or livestream
public GroupCallBase call;
+
+ [Flags] public enum Flags : uint
+ {
+ /// Field has a value
+ has_chat_id = 0x1,
+ }
}
/// The Time-To-Live for messages sent by the current user in a specific chat has changed See
[TLDef(0xBB9BB9A5)]
@@ -7528,7 +7585,7 @@ namespace TL
public ChatBase chat;
}
/// Chat invite info See
- [TLDef(0xFE65389D)]
+ [TLDef(0x5C9D3702)]
public sealed partial class ChatInvite : ChatInviteBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -7549,6 +7606,7 @@ namespace TL
[IfFlag(10)] public StarsSubscriptionPricing subscription_pricing;
/// For Telegram Star subscriptions », the ID of the payment form for the subscription.
[IfFlag(12)] public long subscription_form_id;
+ [IfFlag(13)] public BotVerification bot_verification;
[Flags] public enum Flags : uint
{
@@ -7578,6 +7636,8 @@ namespace TL
can_refulfill_subscription = 0x800,
/// Field has a value
has_subscription_form_id = 0x1000,
+ /// Field has a value
+ has_bot_verification = 0x2000,
}
}
/// A chat invitation that also allows peeking into the group to read messages without joining it. See
@@ -7718,7 +7778,7 @@ namespace TL
}
/// Info about bots (available bot commands, etc) See
- [TLDef(0x36607333)]
+ [TLDef(0x4D8A0299)]
public sealed partial class BotInfo : IObject
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -7739,6 +7799,7 @@ namespace TL
[IfFlag(7)] public string privacy_policy_url;
/// Mini app » settings
[IfFlag(8)] public BotAppSettings app_settings;
+ [IfFlag(9)] public BotVerifierSettings verifier_settings;
[Flags] public enum Flags : uint
{
@@ -7760,6 +7821,8 @@ namespace TL
has_privacy_policy_url = 0x80,
/// Field has a value
has_app_settings = 0x100,
+ /// Field has a value
+ has_verifier_settings = 0x200,
}
}
@@ -10351,17 +10414,25 @@ namespace TL
public PageCaption caption;
}
- /// Why was the phone call discarded? See
- public enum PhoneCallDiscardReason : uint
+ /// Why was the phone call discarded? See Derived classes: , , ,
+ public abstract partial class PhoneCallDiscardReason : IObject { }
+ /// The phone call was missed See
+ [TLDef(0x85E42301)]
+ public sealed partial class PhoneCallDiscardReasonMissed : PhoneCallDiscardReason { }
+ /// The phone call was disconnected See
+ [TLDef(0xE095C1A0)]
+ public sealed partial class PhoneCallDiscardReasonDisconnect : PhoneCallDiscardReason { }
+ /// The phone call was ended normally See
+ [TLDef(0x57ADC690)]
+ public sealed partial class PhoneCallDiscardReasonHangup : PhoneCallDiscardReason { }
+ /// The phone call was discarded because the user is busy in another call See
+ [TLDef(0xFAF7E8C9)]
+ public sealed partial class PhoneCallDiscardReasonBusy : PhoneCallDiscardReason { }
+ /// See
+ [TLDef(0xAFE2B839)]
+ public sealed partial class PhoneCallDiscardReasonAllowGroupCall : PhoneCallDiscardReason
{
- ///The phone call was missed
- Missed = 0x85E42301,
- ///The phone call was disconnected
- Disconnect = 0xE095C1A0,
- ///The phone call was ended normally
- Hangup = 0x57ADC690,
- ///The phone call was discarded because the user is busy in another call
- Busy = 0xFAF7E8C9,
+ public byte[] encrypted_key;
}
/// Represents a json-encoded object See
@@ -11060,6 +11131,7 @@ namespace TL
public virtual long ParticipantId => default;
/// Phone call protocol info
public virtual PhoneCallProtocol Protocol => default;
+ public virtual InputGroupCall ConferenceCall => default;
}
/// Empty constructor See
[TLDef(0x5366C915)]
@@ -11072,7 +11144,7 @@ namespace TL
public override long ID => id;
}
/// Incoming phone call See
- [TLDef(0xC5226F17)]
+ [TLDef(0xEED42858)]
public sealed partial class PhoneCallWaiting : PhoneCallBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -11091,6 +11163,7 @@ namespace TL
public PhoneCallProtocol protocol;
/// When was the phone call received
[IfFlag(0)] public DateTime receive_date;
+ [IfFlag(8)] public InputGroupCall conference_call;
[Flags] public enum Flags : uint
{
@@ -11098,6 +11171,8 @@ namespace TL
has_receive_date = 0x1,
/// Is this a video call
video = 0x40,
+ /// Field has a value
+ has_conference_call = 0x100,
}
/// Call ID
@@ -11112,9 +11187,10 @@ namespace TL
public override long ParticipantId => participant_id;
/// Phone call protocol info
public override PhoneCallProtocol Protocol => protocol;
+ public override InputGroupCall ConferenceCall => conference_call;
}
/// Requested phone call See
- [TLDef(0x14B0ED0C)]
+ [TLDef(0x45361C63)]
public sealed partial class PhoneCallRequested : PhoneCallBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -11133,11 +11209,14 @@ namespace TL
public byte[] g_a_hash;
/// Call protocol info to be passed to libtgvoip
public PhoneCallProtocol protocol;
+ [IfFlag(8)] public InputGroupCall conference_call;
[Flags] public enum Flags : uint
{
/// Whether this is a video call
video = 0x40,
+ /// Field has a value
+ has_conference_call = 0x100,
}
/// Phone call ID
@@ -11152,9 +11231,10 @@ namespace TL
public override long ParticipantId => participant_id;
/// Call protocol info to be passed to libtgvoip
public override PhoneCallProtocol Protocol => protocol;
+ public override InputGroupCall ConferenceCall => conference_call;
}
/// An accepted phone call See
- [TLDef(0x3660C311)]
+ [TLDef(0x22FD7181)]
public sealed partial class PhoneCallAccepted : PhoneCallBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -11173,11 +11253,14 @@ namespace TL
public byte[] g_b;
/// Protocol to use for phone call
public PhoneCallProtocol protocol;
+ [IfFlag(8)] public InputGroupCall conference_call;
[Flags] public enum Flags : uint
{
/// Whether this is a video call
video = 0x40,
+ /// Field has a value
+ has_conference_call = 0x100,
}
/// ID of accepted phone call
@@ -11192,9 +11275,10 @@ namespace TL
public override long ParticipantId => participant_id;
/// Protocol to use for phone call
public override PhoneCallProtocol Protocol => protocol;
+ public override InputGroupCall ConferenceCall => conference_call;
}
/// Phone call See
- [TLDef(0x30535AF5)]
+ [TLDef(0x3BA5940C)]
public sealed partial class PhoneCall : PhoneCallBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -11221,6 +11305,7 @@ namespace TL
public DateTime start_date;
/// Custom JSON-encoded call parameters to be passed to tgcalls.
[IfFlag(7)] public DataJSON custom_parameters;
+ [IfFlag(8)] public InputGroupCall conference_call;
[Flags] public enum Flags : uint
{
@@ -11230,6 +11315,8 @@ namespace TL
video = 0x40,
/// Field has a value
has_custom_parameters = 0x80,
+ /// Field has a value
+ has_conference_call = 0x100,
}
/// Call ID
@@ -11244,9 +11331,10 @@ namespace TL
public override long ParticipantId => participant_id;
/// Call protocol info to be passed to libtgvoip
public override PhoneCallProtocol Protocol => protocol;
+ public override InputGroupCall ConferenceCall => conference_call;
}
/// Indicates a discarded phone call See
- [TLDef(0x50CA4DE1)]
+ [TLDef(0xF9D25503)]
public sealed partial class PhoneCallDiscarded : PhoneCallBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -11257,6 +11345,7 @@ namespace TL
[IfFlag(0)] public PhoneCallDiscardReason reason;
/// Duration of the phone call in seconds
[IfFlag(1)] public int duration;
+ [IfFlag(8)] public InputGroupCall conference_call;
[Flags] public enum Flags : uint
{
@@ -11270,10 +11359,13 @@ namespace TL
need_debug = 0x8,
/// Whether the call was a video call
video = 0x40,
+ /// Field has a value
+ has_conference_call = 0x100,
}
/// Call ID
public override long ID => id;
+ public override InputGroupCall ConferenceCall => conference_call;
}
/// Phone call connection See Derived classes: ,
@@ -13914,7 +14006,7 @@ namespace TL
/// Folder ID
public virtual int ID => default;
/// Folder name (max 12 UTF-8 chars)
- public virtual string Title => default;
+ public virtual TextWithEntities Title => default;
/// Emoji to use as icon for the folder.
public virtual string Emoticon => default;
/// A color ID for the folder tag associated to this folder, see here » for more info.
@@ -13925,7 +14017,7 @@ namespace TL
public virtual InputPeer[] IncludePeers => default;
}
/// Dialog filter AKA folder See
- [TLDef(0x5FB5523B)]
+ [TLDef(0xAA472651)]
public sealed partial class DialogFilter : DialogFilterBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -13933,7 +14025,7 @@ namespace TL
/// Folder ID
public int id;
/// Folder name (max 12 UTF-8 chars)
- public string title;
+ public TextWithEntities title;
/// Emoji to use as icon for the folder.
[IfFlag(25)] public string emoticon;
/// A color ID for the folder tag associated to this folder, see here » for more info.
@@ -13967,12 +14059,13 @@ namespace TL
has_emoticon = 0x2000000,
/// Field has a value
has_color = 0x8000000,
+ title_noanimate = 0x10000000,
}
/// Folder ID
public override int ID => id;
/// Folder name (max 12 UTF-8 chars)
- public override string Title => title;
+ public override TextWithEntities Title => title;
/// Emoji to use as icon for the folder.
public override string Emoticon => emoticon;
/// A color ID for the folder tag associated to this folder, see here » for more info.
@@ -13983,7 +14076,7 @@ namespace TL
public override InputPeer[] IncludePeers => include_peers;
}
/// A folder imported using a chat folder deep link ». See
- [TLDef(0x9FE28EA4)]
+ [TLDef(0x96537BD7)]
public sealed partial class DialogFilterChatlist : DialogFilterBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -13991,7 +14084,7 @@ namespace TL
/// ID of the folder
public int id;
/// Name of the folder (max 12 UTF-8 chars)
- public string title;
+ public TextWithEntities title;
/// Emoji to use as icon for the folder.
[IfFlag(25)] public string emoticon;
/// A color ID for the folder tag associated to this folder, see here » for more info.
@@ -14009,12 +14102,13 @@ namespace TL
has_my_invites = 0x4000000,
/// Field has a value
has_color = 0x8000000,
+ title_noanimate = 0x10000000,
}
/// ID of the folder
public override int ID => id;
/// Name of the folder (max 12 UTF-8 chars)
- public override string Title => title;
+ public override TextWithEntities Title => title;
/// Emoji to use as icon for the folder.
public override string Emoticon => emoticon;
/// A color ID for the folder tag associated to this folder, see here » for more info.
@@ -14601,7 +14695,7 @@ namespace TL
public override long AccessHash => access_hash;
}
/// Info about a group call or livestream See
- [TLDef(0xD597650C)]
+ [TLDef(0xCDF8D3E3)]
public sealed partial class GroupCall : GroupCallBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -14626,6 +14720,7 @@ namespace TL
public int unmuted_video_limit;
/// Version
public int version;
+ [IfFlag(14)] public long conference_from_call;
[Flags] public enum Flags : uint
{
@@ -14655,6 +14750,8 @@ namespace TL
rtmp_stream = 0x1000,
/// Whether the listeners list is hidden and cannot be fetched using Phone_GetGroupParticipants. The phone.groupParticipants.count and groupCall.participants_count counters will still include listeners.
listeners_hidden = 0x2000,
+ /// Field has a value
+ has_conference_from_call = 0x4000,
}
/// Group call ID
@@ -15700,8 +15797,28 @@ namespace TL
hide_name = 0x1,
/// Field has a value
has_message = 0x2,
+ include_upgrade = 0x4,
}
}
+ /// See
+ [TLDef(0x5EBE7262)]
+ public sealed partial class InputInvoiceStarGiftUpgrade : InputInvoice
+ {
+ public Flags flags;
+ public int msg_id;
+
+ [Flags] public enum Flags : uint
+ {
+ keep_original_details = 0x1,
+ }
+ }
+ /// See
+ [TLDef(0xAE3BA9ED)]
+ public sealed partial class InputInvoiceStarGiftTransfer : InputInvoice
+ {
+ public int msg_id;
+ public InputUserBase to_id;
+ }
/// Exported invoice deep link See
[TLDef(0xAED0CBD9)]
@@ -16713,13 +16830,13 @@ namespace TL
public IPeerInfo UserOrChat(Peer peer) => peer?.UserOrChat(users, chats);
}
/// Info about a chat folder deep link ». See
- [TLDef(0x1DCD839D)]
+ [TLDef(0xF10ECE2F)]
public sealed partial class Chatlists_ChatlistInvite : Chatlists_ChatlistInviteBase, IPeerResolver
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
public Flags flags;
/// Name of the link
- public string title;
+ public TextWithEntities title;
/// Emoji to use as icon for the folder.
[IfFlag(0)] public string emoticon;
/// Supergroups and channels to join
@@ -16733,6 +16850,7 @@ namespace TL
{
/// Field has a value
has_emoticon = 0x1,
+ title_noanimate = 0x2,
}
/// Related chat information
@@ -19166,7 +19284,7 @@ namespace TL
/// ID of the message containing the , for incoming star giveaway prizes.
[IfFlag(13)] public int giveaway_post_id;
/// This transaction indicates a purchase or a sale (conversion back to Stars) of a gift ».
- [IfFlag(14)] public StarGift stargift;
+ [IfFlag(14)] public StarGiftBase stargift;
/// This transaction is payment for paid bot broadcasts.
Paid broadcasts are only allowed if the allow_paid_floodskip parameter of Messages_SendMessage and other message sending methods is set while trying to broadcast more than 30 messages per second to bot users.
The integer value returned by this flag indicates the number of billed API calls.
[IfFlag(15)] public int floodskip_number;
/// This transaction is the receival (or refund) of an affiliate commission (i.e. this is the transaction received by the peer that created the referral link, flag 17 is for transactions made by users that imported the referral link).
@@ -19214,6 +19332,7 @@ namespace TL
has_starref_commission_permille = 0x10000,
/// Fields and have a value
has_starref_peer = 0x20000,
+ stargift_upgrade = 0x40000,
}
}
@@ -19575,9 +19694,17 @@ namespace TL
}
}
+ /// Represents a star gift, see here » for more info. See Derived classes:
+ public abstract partial class StarGiftBase : IObject
+ {
+ /// Identifier of the gift
+ public virtual long ID => default;
+ /// For limited-supply gifts: the total number of gifts that was available in the initial supply.
+ public virtual int AvailabilityTotal => default;
+ }
/// Represents a star gift, see here » for more info. See
- [TLDef(0x49C577CD)]
- public sealed partial class StarGift : IObject
+ [TLDef(0x02CC73C8)]
+ public sealed partial class StarGift : StarGiftBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
public Flags flags;
@@ -19597,6 +19724,7 @@ namespace TL
[IfFlag(1)] public DateTime first_sale_date;
/// For sold out gifts only: when was the gift last bought.
[IfFlag(1)] public DateTime last_sale_date;
+ [IfFlag(3)] public long upgrade_stars;
[Flags] public enum Flags : uint
{
@@ -19606,7 +19734,29 @@ namespace TL
sold_out = 0x2,
/// Whether this is a birthday-themed gift
birthday = 0x4,
+ /// Field has a value
+ has_upgrade_stars = 0x8,
}
+
+ /// Identifier of the gift
+ public override long ID => id;
+ /// For limited-supply gifts: the total number of gifts that was available in the initial supply.
+ public override int AvailabilityTotal => availability_total;
+ }
+ /// See
+ [TLDef(0x6A1407CD)]
+ public sealed partial class StarGiftUnique : StarGiftBase
+ {
+ public long id;
+ public string title;
+ public int num;
+ public long owner_id;
+ public StarGiftAttribute[] attributes;
+ public int availability_issued;
+ public int availability_total;
+
+ public override long ID => id;
+ public override int AvailabilityTotal => availability_total;
}
/// Available gifts ». See
@@ -19617,11 +19767,11 @@ namespace TL
/// Hash used for caching, for more info click here
public int hash;
/// List of available gifts.
- public StarGift[] gifts;
+ public StarGiftBase[] gifts;
}
/// Represents a gift, displayed on a user's profile page. See
- [TLDef(0xEEA49A6E)]
+ [TLDef(0x325835E1)]
public sealed partial class UserStarGift : IObject
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -19631,13 +19781,16 @@ namespace TL
/// When was this gift sent.
public DateTime date;
/// The gift.
- public StarGift gift;
+ public StarGiftBase gift;
/// Message attached to the gift by the sender.
[IfFlag(2)] public TextWithEntities message;
/// Only visible to the receiver of the gift, contains the ID of the with the in the chat with from_id.
[IfFlag(3)] public int msg_id;
/// The receiver of this gift may convert it to this many Telegram Stars, instead of displaying it on their profile page.
convert_stars will be equal to the buying price of the gift only if the gift was bought using recently bought Telegram Stars, otherwise it will be less than stars.
[IfFlag(4)] public long convert_stars;
+ [IfFlag(6)] public long upgrade_stars;
+ [IfFlag(7)] public int can_export_at;
+ [IfFlag(8)] public long transfer_stars;
[Flags] public enum Flags : uint
{
@@ -19653,6 +19806,14 @@ namespace TL
has_convert_stars = 0x10,
/// If set, indicates this is a gift sent by from_id, received by the current user and currently hidden from our profile page.
unsaved = 0x20,
+ /// Field has a value
+ has_upgrade_stars = 0x40,
+ /// Field has a value
+ has_can_export_at = 0x80,
+ /// Field has a value
+ has_transfer_stars = 0x100,
+ refunded = 0x200,
+ can_upgrade = 0x400,
}
}
@@ -19914,4 +20075,82 @@ namespace TL
has_next_offset = 0x1,
}
}
+
+ /// See
+ [TLDef(0xB0CD6617)]
+ public sealed partial class BotVerifierSettings : IObject
+ {
+ public Flags flags;
+ public long icon;
+ public string company;
+ [IfFlag(0)] public string custom_description;
+
+ [Flags] public enum Flags : uint
+ {
+ has_custom_description = 0x1,
+ can_modify_custom_description = 0x2,
+ }
+ }
+
+ /// See
+ [TLDef(0xF93CD45C)]
+ public sealed partial class BotVerification : IObject
+ {
+ public long bot_id;
+ public long icon;
+ public string description;
+ }
+
+ /// See
+ public abstract partial class StarGiftAttribute : IObject { }
+ /// See
+ [TLDef(0x39D99013)]
+ public sealed partial class StarGiftAttributeModel : StarGiftAttribute
+ {
+ public string name;
+ public DocumentBase document;
+ public int rarity_permille;
+ }
+ /// See
+ [TLDef(0x13ACFF19)]
+ public sealed partial class StarGiftAttributePattern : StarGiftAttribute
+ {
+ public string name;
+ public DocumentBase document;
+ public int rarity_permille;
+ }
+ /// See
+ [TLDef(0x94271762)]
+ public sealed partial class StarGiftAttributeBackdrop : StarGiftAttribute
+ {
+ public string name;
+ public int center_color;
+ public int edge_color;
+ public int pattern_color;
+ public int text_color;
+ public int rarity_permille;
+ }
+ /// See
+ [TLDef(0xC02C4F4B)]
+ public sealed partial class StarGiftAttributeOriginalDetails : StarGiftAttribute
+ {
+ public Flags flags;
+ [IfFlag(0)] public long sender_id;
+ public long recipient_id;
+ public DateTime date;
+ [IfFlag(1)] public TextWithEntities message;
+
+ [Flags] public enum Flags : uint
+ {
+ has_sender_id = 0x1,
+ has_message = 0x2,
+ }
+ }
+
+ /// See
+ [TLDef(0x167BD90B)]
+ public sealed partial class Payments_StarGiftUpgradePreview : IObject
+ {
+ public StarGiftAttribute[] sample_attributes;
+ }
}
diff --git a/src/TL.SchemaFuncs.cs b/src/TL.SchemaFuncs.cs
index 321e06c..ad52cc5 100644
--- a/src/TL.SchemaFuncs.cs
+++ b/src/TL.SchemaFuncs.cs
@@ -6147,23 +6147,19 @@ namespace TL
/// Display or remove a received gift » from our profile. See Possible codes: 400 (details)
/// If set, hides the gift from our profile.
- /// ID of the user that sent us the gift.
/// The ID of the with the .
- public static Task Payments_SaveStarGift(this Client client, InputUserBase user_id, int msg_id, bool unsave = false)
+ public static Task Payments_SaveStarGift(this Client client, int msg_id, bool unsave = false)
=> client.Invoke(new Payments_SaveStarGift
{
flags = (Payments_SaveStarGift.Flags)(unsave ? 0x1 : 0),
- user_id = user_id,
msg_id = msg_id,
});
/// Convert a received gift » into Telegram Stars: this will permanently destroy the gift, converting it into .convert_stars Telegram Stars, added to the user's balance. See Possible codes: 400 (details)
- /// ID of the user that sent us the gift.
/// The ID of the with the .
- public static Task Payments_ConvertStarGift(this Client client, InputUserBase user_id, int msg_id)
+ public static Task Payments_ConvertStarGift(this Client client, int msg_id)
=> client.Invoke(new Payments_ConvertStarGift
{
- user_id = user_id,
msg_id = msg_id,
});
@@ -6241,6 +6237,36 @@ namespace TL
link = link,
});
+ /// See
+ public static Task Payments_GetStarGiftUpgradePreview(this Client client, long gift_id)
+ => client.Invoke(new Payments_GetStarGiftUpgradePreview
+ {
+ gift_id = gift_id,
+ });
+
+ /// See
+ public static Task Payments_UpgradeStarGift(this Client client, int msg_id, bool keep_original_details = false)
+ => client.Invoke(new Payments_UpgradeStarGift
+ {
+ flags = (Payments_UpgradeStarGift.Flags)(keep_original_details ? 0x1 : 0),
+ msg_id = msg_id,
+ });
+
+ /// See
+ public static Task Payments_TransferStarGift(this Client client, int msg_id, InputUserBase to_id)
+ => client.Invoke(new Payments_TransferStarGift
+ {
+ msg_id = msg_id,
+ to_id = to_id,
+ });
+
+ /// See
+ public static Task Payments_GetUserStarGift(this Client client, params int[] msg_id)
+ => client.Invoke(new Payments_GetUserStarGift
+ {
+ msg_id = msg_id,
+ });
+
/// Create a stickerset. See [bots: ✓] Possible codes: 400 (details)
/// Whether this is a mask stickerset
/// Whether this is a custom emoji stickerset.
@@ -6383,11 +6409,12 @@ namespace TL
/// Random ID to avoid resending the same object
/// Parameter for E2E encryption key exchange »
/// Phone call settings
- public static Task Phone_RequestCall(this Client client, InputUserBase user_id, int random_id, byte[] g_a_hash, PhoneCallProtocol protocol, bool video = false)
+ public static Task Phone_RequestCall(this Client client, InputUserBase user_id, int random_id, byte[] g_a_hash, PhoneCallProtocol protocol, InputGroupCall conference_call = null, bool video = false)
=> client.Invoke(new Phone_RequestCall
{
- flags = (Phone_RequestCall.Flags)(video ? 0x1 : 0),
+ flags = (Phone_RequestCall.Flags)((conference_call != null ? 0x2 : 0) | (video ? 0x1 : 0)),
user_id = user_id,
+ conference_call = conference_call,
random_id = random_id,
g_a_hash = g_a_hash,
protocol = protocol,
@@ -6500,13 +6527,14 @@ namespace TL
/// Join the group call, presenting yourself as the specified user/channel
/// The invitation hash from the invite link », if provided allows speaking in a livestream or muted group chat.
/// WebRTC parameters
- public static Task Phone_JoinGroupCall(this Client client, InputGroupCall call, InputPeer join_as, DataJSON params_, string invite_hash = null, bool muted = false, bool video_stopped = false)
+ public static Task Phone_JoinGroupCall(this Client client, InputGroupCall call, InputPeer join_as, DataJSON params_, string invite_hash = null, long? key_fingerprint = null, bool muted = false, bool video_stopped = false)
=> client.Invoke(new Phone_JoinGroupCall
{
- flags = (Phone_JoinGroupCall.Flags)((invite_hash != null ? 0x2 : 0) | (muted ? 0x1 : 0) | (video_stopped ? 0x4 : 0)),
+ flags = (Phone_JoinGroupCall.Flags)((invite_hash != null ? 0x2 : 0) | (key_fingerprint != null ? 0x8 : 0) | (muted ? 0x1 : 0) | (video_stopped ? 0x4 : 0)),
call = call,
join_as = join_as,
invite_hash = invite_hash,
+ key_fingerprint = key_fingerprint ?? default,
params_ = params_,
});
@@ -6726,6 +6754,14 @@ namespace TL
file = file,
});
+ /// See
+ public static Task Phone_CreateConferenceCall(this Client client, InputPhoneCall peer, long key_fingerprint)
+ => client.Invoke(new Phone_CreateConferenceCall
+ {
+ peer = peer,
+ key_fingerprint = key_fingerprint,
+ });
+
/// Get localization pack strings See Possible codes: 400 (details)
/// Platform identifier (i.e. android, tdesktop, etc).
/// Either an ISO 639-1 language code or a language pack name obtained from a language pack link.
@@ -12461,11 +12497,10 @@ namespace TL.Methods
public int limit;
}
- [TLDef(0x87ACF08E)]
+ [TLDef(0x92FD2AAE)]
public sealed partial class Payments_SaveStarGift : IMethod
{
public Flags flags;
- public InputUserBase user_id;
public int msg_id;
[Flags] public enum Flags : uint
@@ -12474,10 +12509,9 @@ namespace TL.Methods
}
}
- [TLDef(0x0421E027)]
+ [TLDef(0x72770C83)]
public sealed partial class Payments_ConvertStarGift : IMethod
{
- public InputUserBase user_id;
public int msg_id;
}
@@ -12551,6 +12585,37 @@ namespace TL.Methods
}
}
+ [TLDef(0x9C9ABCB1)]
+ public sealed partial class Payments_GetStarGiftUpgradePreview : IMethod
+ {
+ public long gift_id;
+ }
+
+ [TLDef(0xCF4F0781)]
+ public sealed partial class Payments_UpgradeStarGift : IMethod
+ {
+ public Flags flags;
+ public int msg_id;
+
+ [Flags] public enum Flags : uint
+ {
+ keep_original_details = 0x1,
+ }
+ }
+
+ [TLDef(0x333FB526)]
+ public sealed partial class Payments_TransferStarGift : IMethod
+ {
+ public int msg_id;
+ public InputUserBase to_id;
+ }
+
+ [TLDef(0xB502E4A5)]
+ public sealed partial class Payments_GetUserStarGift : IMethod
+ {
+ public int[] msg_id;
+ }
+
[TLDef(0x9021AB67)]
public sealed partial class Stickers_CreateStickerSet : IMethod
{
@@ -12659,11 +12724,12 @@ namespace TL.Methods
[TLDef(0x55451FA9)]
public sealed partial class Phone_GetCallConfig : IMethod { }
- [TLDef(0x42FF96ED)]
+ [TLDef(0xA6C4600C)]
public sealed partial class Phone_RequestCall : IMethod
{
public Flags flags;
public InputUserBase user_id;
+ [IfFlag(1)] public InputGroupCall conference_call;
public int random_id;
public byte[] g_a_hash;
public PhoneCallProtocol protocol;
@@ -12671,6 +12737,7 @@ namespace TL.Methods
[Flags] public enum Flags : uint
{
video = 0x1,
+ has_conference_call = 0x2,
}
}
@@ -12757,13 +12824,14 @@ namespace TL.Methods
}
}
- [TLDef(0xB132FF7B)]
+ [TLDef(0xD61E1DF3)]
public sealed partial class Phone_JoinGroupCall : IMethod
{
public Flags flags;
public InputGroupCall call;
public InputPeer join_as;
[IfFlag(1)] public string invite_hash;
+ [IfFlag(3)] public long key_fingerprint;
public DataJSON params_;
[Flags] public enum Flags : uint
@@ -12771,6 +12839,7 @@ namespace TL.Methods
muted = 0x1,
has_invite_hash = 0x2,
video_stopped = 0x4,
+ has_key_fingerprint = 0x8,
}
}
@@ -12950,6 +13019,13 @@ namespace TL.Methods
public InputFileBase file;
}
+ [TLDef(0xDFC909AB)]
+ public sealed partial class Phone_CreateConferenceCall : IMethod
+ {
+ public InputPhoneCall peer;
+ public long key_fingerprint;
+ }
+
[TLDef(0xF2F2330A)]
public sealed partial class Langpack_GetLangPack : IMethod
{
diff --git a/src/TL.Table.cs b/src/TL.Table.cs
index 1d9e4b9..a818019 100644
--- a/src/TL.Table.cs
+++ b/src/TL.Table.cs
@@ -6,7 +6,7 @@ namespace TL
{
public static partial class Layer
{
- public const int Version = 195; // fetched 04/12/2024 17:50:39
+ public const int Version = 196; // fetched 01/01/2025 23:32:39
internal const int SecretChats = 144;
internal const int MTProto2 = 73;
internal const uint VectorCtor = 0x1CB5C415;
@@ -124,7 +124,7 @@ namespace TL
[0x36C6019A] = typeof(PeerChat),
[0xA2A5371E] = typeof(PeerChannel),
[0xD3BC4B7A] = typeof(UserEmpty),
- [0x83314FCA] = typeof(User),
+ [0x4B46C37E] = typeof(User),
[0x4F11BAE1] = null,//UserProfilePhotoEmpty
[0x82D1F706] = typeof(UserProfilePhoto),
[0x09D05049] = null,//UserStatusEmpty
@@ -136,10 +136,10 @@ namespace TL
[0x29562865] = typeof(ChatEmpty),
[0x41CBF256] = typeof(Chat),
[0x6592A1A7] = typeof(ChatForbidden),
- [0xFE4478BD] = typeof(Channel),
+ [0xE00998B7] = typeof(Channel),
[0x17D493D5] = typeof(ChannelForbidden),
[0x2633421B] = typeof(ChatFull),
- [0xBBAB348D] = typeof(ChannelFull),
+ [0x9FF3B858] = typeof(ChannelFull),
[0xC02D4007] = typeof(ChatParticipant),
[0xE46BCEE4] = typeof(ChatParticipantCreator),
[0xA0933F5B] = typeof(ChatParticipantAdmin),
@@ -148,8 +148,8 @@ namespace TL
[0x37C1011C] = null,//ChatPhotoEmpty
[0x1C6E1C11] = typeof(ChatPhoto),
[0x90A6CA84] = typeof(MessageEmpty),
- [0x94345242] = typeof(Message),
- [0x2B085862] = typeof(MessageService),
+ [0x96FDBBE9] = typeof(Message),
+ [0xD3D28540] = typeof(MessageService),
[0x3DED6320] = null,//MessageMediaEmpty
[0x695150D7] = typeof(MessageMediaPhoto),
[0x56E0D474] = typeof(MessageMediaGeo),
@@ -213,7 +213,8 @@ namespace TL
[0x41B3E202] = typeof(MessageActionPaymentRefunded),
[0x45D5B021] = typeof(MessageActionGiftStars),
[0xB00C47A2] = typeof(MessageActionPrizeStars),
- [0x08557637] = typeof(MessageActionStarGift),
+ [0xD8F4F0A7] = typeof(MessageActionStarGift),
+ [0x26077B99] = typeof(MessageActionStarGiftUnique),
[0xD58A08C6] = typeof(Dialog),
[0x71BD134C] = typeof(DialogFolder),
[0x2331B22D] = typeof(PhotoEmpty),
@@ -241,7 +242,7 @@ namespace TL
[0xACD66C5E] = typeof(PeerSettings),
[0xA437C3ED] = typeof(WallPaper),
[0xE0804116] = typeof(WallPaperNoFile),
- [0x979D2376] = typeof(UserFull),
+ [0x4D975BBC] = typeof(UserFull),
[0x145ADE0B] = typeof(Contact),
[0xC13E3C50] = typeof(ImportedContact),
[0x16D9703B] = typeof(ContactStatus),
@@ -364,7 +365,7 @@ namespace TL
[0x5BB98608] = typeof(UpdatePinnedChannelMessages),
[0xF89A6A4E] = typeof(UpdateChat),
[0xF2EBDB4E] = typeof(UpdateGroupCallParticipants),
- [0x14B24500] = typeof(UpdateGroupCall),
+ [0x97D64341] = typeof(UpdateGroupCall),
[0xBB9BB9A5] = typeof(UpdatePeerHistoryTTL),
[0xD087663A] = typeof(UpdateChatParticipant),
[0x985D3ABB] = typeof(UpdateChannelParticipant),
@@ -543,7 +544,7 @@ namespace TL
[0xA22CBD96] = typeof(ChatInviteExported),
[0xED107AB7] = typeof(ChatInvitePublicJoinRequests),
[0x5A686D7C] = typeof(ChatInviteAlready),
- [0xFE65389D] = typeof(ChatInvite),
+ [0x5C9D3702] = typeof(ChatInvite),
[0x61695CB0] = typeof(ChatInvitePeek),
[0xFFB62B95] = null,//InputStickerSetEmpty
[0x9DE7A269] = typeof(InputStickerSetID),
@@ -560,7 +561,7 @@ namespace TL
[0x6E153F16] = typeof(Messages_StickerSet),
[0xD3F924EB] = null,//Messages_StickerSetNotModified
[0xC27AC8C7] = typeof(BotCommand),
- [0x36607333] = typeof(BotInfo),
+ [0x4D8A0299] = typeof(BotInfo),
[0xA2FA4880] = typeof(KeyboardButton),
[0x258AFF05] = typeof(KeyboardButtonUrl),
[0x35BBDB6B] = typeof(KeyboardButtonCallback),
@@ -747,6 +748,11 @@ namespace TL
[0x76768BED] = typeof(PageBlockDetails),
[0x16115A96] = typeof(PageBlockRelatedArticles),
[0xA44F3EF6] = typeof(PageBlockMap),
+ [0x85E42301] = typeof(PhoneCallDiscardReasonMissed),
+ [0xE095C1A0] = typeof(PhoneCallDiscardReasonDisconnect),
+ [0x57ADC690] = typeof(PhoneCallDiscardReasonHangup),
+ [0xFAF7E8C9] = typeof(PhoneCallDiscardReasonBusy),
+ [0xAFE2B839] = typeof(PhoneCallDiscardReasonAllowGroupCall),
[0x7D748D04] = typeof(DataJSON),
[0xCB296BF8] = typeof(LabeledPrice),
[0x049EE584] = typeof(Invoice),
@@ -779,11 +785,11 @@ namespace TL
[0x32DA9E9C] = typeof(InputStickerSetItem),
[0x1E36FDED] = typeof(InputPhoneCall),
[0x5366C915] = typeof(PhoneCallEmpty),
- [0xC5226F17] = typeof(PhoneCallWaiting),
- [0x14B0ED0C] = typeof(PhoneCallRequested),
- [0x3660C311] = typeof(PhoneCallAccepted),
- [0x30535AF5] = typeof(PhoneCall),
- [0x50CA4DE1] = typeof(PhoneCallDiscarded),
+ [0xEED42858] = typeof(PhoneCallWaiting),
+ [0x45361C63] = typeof(PhoneCallRequested),
+ [0x22FD7181] = typeof(PhoneCallAccepted),
+ [0x3BA5940C] = typeof(PhoneCall),
+ [0xF9D25503] = typeof(PhoneCallDiscarded),
[0x9CC123C7] = typeof(PhoneConnection),
[0x635FE375] = typeof(PhoneConnectionWebrtc),
[0xFC878FC8] = typeof(PhoneCallProtocol),
@@ -986,9 +992,9 @@ namespace TL
[0x4899484E] = typeof(Messages_VotesList),
[0xF568028A] = typeof(BankCardOpenUrl),
[0x3E24E573] = typeof(Payments_BankCardData),
- [0x5FB5523B] = typeof(DialogFilter),
+ [0xAA472651] = typeof(DialogFilter),
[0x363293AE] = null,//DialogFilterDefault
- [0x9FE28EA4] = typeof(DialogFilterChatlist),
+ [0x96537BD7] = typeof(DialogFilterChatlist),
[0x77744D4A] = typeof(DialogFilterSuggested),
[0xB637EDAF] = typeof(StatsDateRangeDays),
[0xCB43ACDE] = typeof(StatsAbsValueAndPrev),
@@ -1020,7 +1026,7 @@ namespace TL
[0xE8FD8014] = typeof(PeerBlocked),
[0x7FE91C14] = typeof(Stats_MessageStats),
[0x7780BCB4] = typeof(GroupCallDiscarded),
- [0xD597650C] = typeof(GroupCall),
+ [0xCDF8D3E3] = typeof(GroupCall),
[0xD8AA840F] = typeof(InputGroupCall),
[0xEBA636FE] = typeof(GroupCallParticipant),
[0x9E727AAD] = typeof(Phone_GroupCall),
@@ -1097,6 +1103,8 @@ namespace TL
[0x65F00CE3] = typeof(InputInvoiceStars),
[0x34E793F1] = typeof(InputInvoiceChatInviteSubscription),
[0x25D8C1D8] = typeof(InputInvoiceStarGift),
+ [0x5EBE7262] = typeof(InputInvoiceStarGiftUpgrade),
+ [0xAE3BA9ED] = typeof(InputInvoiceStarGiftTransfer),
[0xAED0CBD9] = typeof(Payments_ExportedInvoice),
[0xCFB9D957] = typeof(Messages_TranscribedAudio),
[0x5334759C] = typeof(Help_PremiumPromo),
@@ -1171,7 +1179,7 @@ namespace TL
[0x10E6E3A6] = typeof(Chatlists_ExportedChatlistInvite),
[0x10AB6DC7] = typeof(Chatlists_ExportedInvites),
[0xFA87F659] = typeof(Chatlists_ChatlistInviteAlready),
- [0x1DCD839D] = typeof(Chatlists_ChatlistInvite),
+ [0xF10ECE2F] = typeof(Chatlists_ChatlistInvite),
[0x93BD878D] = typeof(Chatlists_ChatlistUpdates),
[0xE8A775B0] = typeof(Bots_BotInfo),
[0xB6CC2D5C] = typeof(MessagePeerVote),
@@ -1332,10 +1340,11 @@ namespace TL
[0x4BA3A95A] = typeof(MessageReactor),
[0x94CE852A] = typeof(StarsGiveawayOption),
[0x54236209] = typeof(StarsGiveawayWinnersOption),
- [0x49C577CD] = typeof(StarGift),
+ [0x02CC73C8] = typeof(StarGift),
+ [0x6A1407CD] = typeof(StarGiftUnique),
[0xA388A368] = null,//Payments_StarGiftsNotModified
[0x901689EA] = typeof(Payments_StarGifts),
- [0xEEA49A6E] = typeof(UserStarGift),
+ [0x325835E1] = typeof(UserStarGift),
[0x6B65B517] = typeof(Payments_UserStarGifts),
[0x7903E3D9] = typeof(MessageReportOption),
[0xF0E4E0B6] = typeof(ReportResultChooseOption),
@@ -1351,6 +1360,13 @@ namespace TL
[0xBBB6B4A3] = typeof(StarsAmount),
[0x6010C534] = typeof(Messages_FoundStickersNotModified),
[0x82C9E290] = typeof(Messages_FoundStickers),
+ [0xB0CD6617] = typeof(BotVerifierSettings),
+ [0xF93CD45C] = typeof(BotVerification),
+ [0x39D99013] = typeof(StarGiftAttributeModel),
+ [0x13ACFF19] = typeof(StarGiftAttributePattern),
+ [0x94271762] = typeof(StarGiftAttributeBackdrop),
+ [0xC02C4F4B] = typeof(StarGiftAttributeOriginalDetails),
+ [0x167BD90B] = typeof(Payments_StarGiftUpgradePreview),
// from TL.Secret:
[0x6ABD9782] = typeof(Layer143.DecryptedMessageMediaDocument),
[0x020DF5D0] = typeof(Layer101.MessageEntityBlockquote),
diff --git a/src/WTelegramClient.csproj b/src/WTelegramClient.csproj
index 9ddd748..ff8487a 100644
--- a/src/WTelegramClient.csproj
+++ b/src/WTelegramClient.csproj
@@ -13,7 +13,7 @@
WTelegramClient
0.0.0
Wizou
- Telegram Client API (MTProto) library written 100% in C# and .NET Standard | Latest API layer: 195
+ Telegram Client API (MTProto) library written 100% in C# and .NET Standard | Latest API layer: 196
Release Notes:
$(ReleaseNotes.Replace("|", "%0D%0A").Replace(" - ","%0D%0A- ").Replace(" ", "%0D%0A%0D%0A"))