From 208ab626c1a1037275e3f4a5c5594d667df44ee7 Mon Sep 17 00:00:00 2001
From: Wizou <11647984+wiz0u@users.noreply.github.com>
Date: Sat, 15 Nov 2025 22:45:36 +0100
Subject: [PATCH] API Layer 218: Stargift auctions, Story Live broadcast, Paid
messages in Live/group calls, Message schedule_repeat_period, Saved Music
privacy key, and more...
---
README.md | 2 +-
src/Services.cs | 2 +-
src/TL.Schema.cs | 350 +++++++++++++++++++++++++++++++++----
src/TL.SchemaFuncs.cs | 237 ++++++++++++++++++++++---
src/TL.Table.cs | 55 ++++--
src/WTelegramClient.csproj | 4 +-
6 files changed, 576 insertions(+), 74 deletions(-)
diff --git a/README.md b/README.md
index 895eedf..85bfbb0 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/Services.cs b/src/Services.cs
index a98c8fe..cac857b 100644
--- a/src/Services.cs
+++ b/src/Services.cs
@@ -56,7 +56,7 @@ namespace TL
prevUser.lang_code = user.lang_code; // tdlib: updated if present ; tdesktop: ignored
prevUser.emoji_status = user.emoji_status; // tdlib/tdesktop: updated
//prevUser.usernames = user.usernames; // tdlib/tdesktop: not updated
- if (user.stories_max_id > 0)
+ if (user.stories_max_id != null)
prevUser.stories_max_id = user.stories_max_id; // tdlib: updated if > 0 ; tdesktop: not updated
prevUser.color = user.color; // tdlib/tdesktop: updated
prevUser.profile_color = user.profile_color; // tdlib/tdesktop: unimplemented yet
diff --git a/src/TL.Schema.cs b/src/TL.Schema.cs
index dc0549c..d5800b5 100644
--- a/src/TL.Schema.cs
+++ b/src/TL.Schema.cs
@@ -116,9 +116,10 @@ namespace TL
/// Object defines a contact from the user's phone book. See Derived classes:
public abstract partial class InputContact : IObject { }
/// Phone contact. See
- [TLDef(0xF392B7F4)]
+ [TLDef(0x6A1DC4BE)]
public sealed partial class InputPhoneContact : InputContact
{
+ public Flags flags;
/// An arbitrary 64-bit integer: it should be set, for example, to an incremental number when using Contacts_ImportContacts, in order to retry importing only the contacts that weren't imported successfully, according to the client_ids returned in .retry_contacts.
public long client_id;
/// Phone number
@@ -127,6 +128,13 @@ namespace TL
public string first_name;
/// Contact's last name
public string last_name;
+ [IfFlag(0)] public TextWithEntities note;
+
+ [Flags] public enum Flags : uint
+ {
+ /// Field has a value
+ has_note = 0x1,
+ }
}
/// Defines a file uploaded by the client. See Derived classes: , ,
@@ -781,7 +789,7 @@ namespace TL
public long id;
}
/// Indicates info about a certain user. See
- [TLDef(0x020B1422)]
+ [TLDef(0x31774388)]
public sealed partial class User : UserBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -817,7 +825,7 @@ namespace TL
/// Additional usernames.
When updating the local peer database, apply changes to this field only if:
- The min flag is not set OR
- The min flag is set AND
-- The min flag of the locally cached user entry is set.
Changes to this flag (if the above conditions are respected) should invalidate the local cache for this user ID.
[IfFlag(32)] public Username[] usernames;
/// ID of the maximum read story.
When updating the local peer database, do not apply changes to this field if the min flag of the incoming constructor is set.
- [IfFlag(37)] public int stories_max_id;
+ [IfFlag(37)] public RecentStory stories_max_id;
/// The user's accent color.
[IfFlag(40)] public PeerColorBase color;
/// The user's profile color.
@@ -1090,7 +1098,7 @@ namespace TL
public override string Title => title;
}
/// Channel/supergroup info See
- [TLDef(0xFE685355)]
+ [TLDef(0x1C32B11C)]
public sealed partial class Channel : ChatBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -1122,7 +1130,7 @@ namespace TL
/// Additional usernames
[IfFlag(32)] public Username[] usernames;
/// ID of the maximum read story.
- [IfFlag(36)] public int stories_max_id;
+ [IfFlag(36)] public RecentStory stories_max_id;
/// The channel's accent color.
[IfFlag(39)] public PeerColorBase color;
/// The channel's profile color.
@@ -1808,7 +1816,7 @@ namespace TL
public override Peer Peer => peer_id;
}
/// A message See
- [TLDef(0x9815CEC8)]
+ [TLDef(0xB92F76CF)]
public sealed partial class Message : MessageBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -1873,6 +1881,7 @@ namespace TL
[IfFlag(38)] public long paid_message_stars;
/// Used to suggest a post to a channel, see here » for more info on the full flow.
[IfFlag(39)] public SuggestedPost suggested_post;
+ [IfFlag(42)] public int schedule_repeat_period;
[Flags] public enum Flags : uint
{
@@ -1958,6 +1967,8 @@ namespace TL
paid_suggested_post_stars = 0x100,
/// Set if this is a suggested channel post » that was paid using Toncoins.
paid_suggested_post_ton = 0x200,
+ /// Field has a value
+ has_schedule_repeat_period = 0x400,
}
/// ID of the message
@@ -2388,6 +2399,18 @@ namespace TL
has_completions = 0x1,
}
}
+ /// See
+ [TLDef(0xCA5CAB89)]
+ public sealed partial class MessageMediaVideoStream : MessageMedia
+ {
+ public Flags flags;
+ public InputGroupCallBase call;
+
+ [Flags] public enum Flags : uint
+ {
+ rtmp_stream = 0x1,
+ }
+ }
/// Object describing actions connected to a service message. See Derived classes: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
/// a value means messageActionEmpty
@@ -2702,7 +2725,7 @@ namespace TL
public string text;
}
/// Info about a gifted Telegram Premium subscription See
- [TLDef(0x6C6274FA)]
+ [TLDef(0x48E91302)]
public sealed partial class MessageActionGiftPremium : MessageAction
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -2711,8 +2734,7 @@ namespace TL
public string currency;
/// Price of the gift in the smallest units of the currency (integer, not float/double). For example, for a price of US$ 1.45 pass amount = 145. See the exp parameter in currencies.json, it shows the number of digits past the decimal point for each currency (2 for the majority of currencies).
public long amount;
- /// Duration of the gifted Telegram Premium subscription.
- public int months;
+ public int days;
/// If the gift was bought using a cryptocurrency, the cryptocurrency name.
[IfFlag(0)] public string crypto_currency;
/// If the gift was bought using a cryptocurrency, price of the gift in the smallest units of a cryptocurrency.
@@ -2809,15 +2831,14 @@ namespace TL
}
}
/// Contains a Telegram Premium giftcode link. See
- [TLDef(0x56D03994)]
+ [TLDef(0x31C48347)]
public sealed partial class MessageActionGiftCode : MessageAction
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
public Flags flags;
/// Identifier of the channel/supergroup that created the gift code either directly or through a giveaway: if we import this giftcode link, we will also automatically boost this channel/supergroup.
[IfFlag(1)] public Peer boost_peer;
- /// Duration in months of the gifted Telegram Premium subscription.
- public int months;
+ public int days;
/// Slug of the Telegram Premium giftcode link
public string slug;
/// Three-letter ISO 4217 currency code
@@ -2967,7 +2988,7 @@ namespace TL
}
}
/// You received a gift, see here » for more info. See
- [TLDef(0xF24DE7FA)]
+ [TLDef(0xDB596550)]
public sealed partial class MessageActionStarGift : MessageAction
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -2992,6 +3013,7 @@ namespace TL
[IfFlag(14)] public string prepaid_upgrade_hash;
/// For separate upgrades, the identifier of the message with the gift whose upgrade was prepaid (only valid for the receiver of the service message).
[IfFlag(15)] public int gift_msg_id;
+ [IfFlag(18)] public Peer to_id;
[Flags] public enum Flags : uint
{
@@ -3025,6 +3047,9 @@ namespace TL
has_gift_msg_id = 0x8000,
/// This service message is the notification of a separate pre-payment for the upgrade of a gift we own.
upgrade_separate = 0x10000,
+ auction_acquired = 0x20000,
+ /// Field has a value
+ has_to_id = 0x40000,
}
}
/// A gift » was upgraded to a collectible gift ». See
@@ -5490,20 +5515,20 @@ namespace TL
public int version;
}
/// A new groupcall was started See
- [TLDef(0x97D64341)]
+ [TLDef(0x9D2216E0)]
public sealed partial class UpdateGroupCall : Update
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
public Flags flags;
- /// The channel/supergroup where this group call or livestream takes place
- [IfFlag(0)] public long chat_id;
+ [IfFlag(1)] public Peer peer;
/// Info about the group call or livestream
public GroupCallBase call;
[Flags] public enum Flags : uint
{
- /// Field has a value
- has_chat_id = 0x1,
+ /// Field has a value
+ has_peer = 0x2,
+ live_story = 0x4,
}
}
/// The Time-To-Live for messages sent by the current user in a specific chat has changed See
@@ -6205,13 +6230,11 @@ namespace TL
}
}
/// See
- [TLDef(0x78C314E0)]
+ [TLDef(0xD8326F0D)]
public sealed partial class UpdateGroupCallMessage : Update
{
public InputGroupCallBase call;
- public Peer from_id;
- public long random_id;
- public TextWithEntities message;
+ public GroupCallMessage message;
}
/// See
[TLDef(0xC957A766)]
@@ -6247,6 +6270,27 @@ namespace TL
has_order = 0x1,
}
}
+ /// See
+ [TLDef(0x3E85E92C)]
+ public sealed partial class UpdateDeleteGroupCallMessages : Update
+ {
+ public InputGroupCallBase call;
+ public int[] messages;
+ }
+ /// See
+ [TLDef(0x48E246C2)]
+ public sealed partial class UpdateStarGiftAuctionState : Update
+ {
+ public long gift_id;
+ public StarGiftAuctionStateBase state;
+ }
+ /// See
+ [TLDef(0xDC58F31E)]
+ public sealed partial class UpdateStarGiftAuctionUserState : Update
+ {
+ public long gift_id;
+ public StarGiftAuctionUserState user_state;
+ }
/// Updates state. See
[TLDef(0xA56C2A3E)]
@@ -7398,6 +7442,8 @@ namespace TL
StarGiftsAutoSave = 0xE1732341,
///Who can send you messages without paying, if paid messages » are enabled.
NoPaidMessages = 0xBDC597B4,
+ ///See
+ SavedMusic = 0x4DBE9226,
}
/// Privacy keys together with privacy rules » indicate what can or can't someone do and are specified by a constructor, and its input counterpart . See
@@ -7429,6 +7475,8 @@ namespace TL
StarGiftsAutoSave = 0x2CA4FDF8,
///Who can send you messages without paying, if paid messages » are enabled.
NoPaidMessages = 0x17D348D2,
+ ///See
+ SavedMusic = 0xFF7A571B,
}
/// Privacy rules indicate who can or can't do something and are specified by a , and its input counterpart . See Derived classes: , , , , , , , , , , ,
@@ -14504,6 +14552,16 @@ namespace TL
/// Gifts in the collection.
public DocumentBase[] icons;
}
+ /// See
+ [TLDef(0x034986AB)]
+ public sealed partial class WebPageAttributeStarGiftAuction : WebPageAttribute
+ {
+ public StarGiftBase gift;
+ public DateTime end_date;
+ public int center_color;
+ public int edge_color;
+ public int text_color;
+ }
/// How users voted in a poll See
[TLDef(0x4899484E)]
@@ -15273,7 +15331,7 @@ namespace TL
public override long AccessHash => access_hash;
}
/// Info about a group call or livestream See
- [TLDef(0x553B0BA1)]
+ [TLDef(0xEFB2B617)]
public sealed partial class GroupCall : GroupCallBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -15300,6 +15358,8 @@ namespace TL
public int version;
/// Invitation link for the conference.
[IfFlag(16)] public string invite_link;
+ [IfFlag(20)] public long send_paid_messages_stars;
+ [IfFlag(21)] public Peer default_send_as;
[Flags] public enum Flags : uint
{
@@ -15338,6 +15398,10 @@ namespace TL
messages_enabled = 0x20000,
can_change_messages_enabled = 0x40000,
min = 0x80000,
+ /// Field has a value
+ has_send_paid_messages_stars = 0x100000,
+ /// Field has a value
+ has_default_send_as = 0x200000,
}
/// Group call ID
@@ -15373,7 +15437,7 @@ namespace TL
}
/// Info about a group call participant See
- [TLDef(0xEBA636FE)]
+ [TLDef(0x2A3DC7AC)]
public sealed partial class GroupCallParticipant : IObject
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -15396,6 +15460,7 @@ namespace TL
[IfFlag(6)] public GroupCallParticipantVideo video;
/// Info about the screen sharing stream the participant is currently broadcasting
[IfFlag(14)] public GroupCallParticipantVideo presentation;
+ [IfFlag(16)] public long paid_stars_total;
[Flags] public enum Flags : uint
{
@@ -15431,6 +15496,8 @@ namespace TL
has_presentation = 0x4000,
/// Whether this participant is currently broadcasting video
video_joined = 0x8000,
+ /// Field has a value
+ has_paid_stars_total = 0x10000,
}
}
@@ -16553,6 +16620,24 @@ namespace TL
{
public InputSavedStarGift stargift;
}
+ /// See
+ [TLDef(0x1ECAFA10)]
+ public sealed partial class InputInvoiceStarGiftAuctionBid : InputInvoice
+ {
+ public Flags flags;
+ [IfFlag(3)] public InputPeer peer;
+ public long gift_id;
+ public long bid_amount;
+ [IfFlag(1)] public TextWithEntities message;
+
+ [Flags] public enum Flags : uint
+ {
+ hide_name = 0x1,
+ has_message = 0x2,
+ update_bid = 0x4,
+ has_peer = 0x8,
+ }
+ }
/// Exported invoice deep link See
[TLDef(0xAED0CBD9)]
@@ -17819,6 +17904,7 @@ namespace TL
{
/// Whether this story can only be viewed by our close friends, see here » for more info
close_friends = 0x100,
+ live = 0x200,
}
/// Story ID
@@ -18391,7 +18477,7 @@ namespace TL
}
/// Contains info about a Telegram Premium giftcode link. See
- [TLDef(0x284A1096)]
+ [TLDef(0xEB983F8F)]
public sealed partial class Payments_CheckedGiftCode : IObject, IPeerResolver
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -18404,8 +18490,7 @@ namespace TL
[IfFlag(0)] public long to_id;
/// Creation date of the gift code.
public DateTime date;
- /// Duration in months of the gifted Telegram Premium subscription.
- public int months;
+ public int days;
/// When was the giftcode imported, if it was imported.
[IfFlag(1)] public DateTime used_date;
/// Mentioned chats
@@ -20171,6 +20256,8 @@ namespace TL
/// Represents payment for a separate prepaid upgrade of a gift.
stargift_prepaid_upgrade = 0x2000000,
stargift_drop_original_details = 0x4000000,
+ phonegroup_message = 0x8000000,
+ stargift_auction_bid = 0x10000000,
}
}
@@ -20555,7 +20642,7 @@ namespace TL
public virtual Peer ReleasedBy => default;
}
/// Represents a star gift, see here » for more info. See
- [TLDef(0x80AC53C3)]
+ [TLDef(0x1B9A4D7F)]
public sealed partial class StarGift : StarGiftBase
{
/// Extra bits of information, use flags.HasFlag(...) to test for those
@@ -20592,6 +20679,8 @@ namespace TL
[IfFlag(8)] public int per_user_remains;
/// If set, the specified gift possibly cannot be sent until the specified date, see here » for the full flow.
[IfFlag(9)] public DateTime locked_until_date;
+ [IfFlag(11)] public string auction_slug;
+ [IfFlag(11)] public int gifts_per_round;
[Flags] public enum Flags : uint
{
@@ -20616,6 +20705,7 @@ namespace TL
/// Field has a value
has_locked_until_date = 0x200,
peer_color_available = 0x400,
+ auction = 0x800,
}
/// Identifier of the gift
@@ -21373,6 +21463,7 @@ namespace TL
disallow_unique_stargifts = 0x4,
/// Disallow the reception of gifted Telegram Premium subscriptions ».
disallow_premium_gifts = 0x8,
+ disallow_stargifts_from_channels = 0x10,
}
}
@@ -21538,13 +21629,13 @@ namespace TL
}
/// A completed todo list » item. See
- [TLDef(0x4CC120B7)]
+ [TLDef(0x221BB5E4)]
public sealed partial class TodoCompletion : IObject
{
/// The ID of the completed item.
public int id;
/// ID of the user that completed the item.
- public long completed_by;
+ public Peer completed_by;
/// When was the item completed.
public DateTime date;
}
@@ -21824,4 +21915,203 @@ namespace TL
public DateTime date;
public long upgrade_stars;
}
+
+ /// See
+ [TLDef(0x1A8AFC7E)]
+ public sealed partial class GroupCallMessage : IObject
+ {
+ public Flags flags;
+ public int id;
+ public Peer from_id;
+ public DateTime date;
+ public TextWithEntities message;
+ [IfFlag(0)] public long paid_message_stars;
+
+ [Flags] public enum Flags : uint
+ {
+ has_paid_message_stars = 0x1,
+ from_admin = 0x2,
+ }
+ }
+
+ /// See
+ [TLDef(0xEE430C85)]
+ public sealed partial class GroupCallDonor : IObject
+ {
+ public Flags flags;
+ [IfFlag(3)] public Peer peer_id;
+ public long stars;
+
+ [Flags] public enum Flags : uint
+ {
+ top = 0x1,
+ my = 0x2,
+ anonymous = 0x4,
+ has_peer_id = 0x8,
+ }
+ }
+
+ /// See
+ [TLDef(0x9D1DBD26)]
+ public sealed partial class Phone_GroupCallStars : IObject, IPeerResolver
+ {
+ public long total_stars;
+ public GroupCallDonor[] top_donors;
+ public Dictionary chats;
+ public Dictionary users;
+ /// returns a or for the given Peer
+ public IPeerInfo UserOrChat(Peer peer) => peer?.UserOrChat(users, chats);
+ }
+
+ /// See
+ [TLDef(0x711D692D)]
+ public sealed partial class RecentStory : IObject
+ {
+ public Flags flags;
+ [IfFlag(1)] public int max_id;
+
+ [Flags] public enum Flags : uint
+ {
+ live = 0x1,
+ has_max_id = 0x2,
+ }
+ }
+
+ /// See
+ [TLDef(0x310240CC)]
+ public sealed partial class AuctionBidLevel : IObject
+ {
+ public int pos;
+ public long amount;
+ public DateTime date;
+ }
+
+ /// See
+ /// a value means starGiftAuctionStateNotModified
+ public abstract partial class StarGiftAuctionStateBase : IObject
+ {
+ public virtual DateTime StartDate => default;
+ public virtual DateTime EndDate => default;
+ }
+ /// See
+ [TLDef(0x5DB04F4B)]
+ public sealed partial class StarGiftAuctionState : StarGiftAuctionStateBase
+ {
+ public int version;
+ public DateTime start_date;
+ public DateTime end_date;
+ public long min_bid_amount;
+ public AuctionBidLevel[] bid_levels;
+ public long[] top_bidders;
+ public DateTime next_round_at;
+ public int gifts_left;
+ public int current_round;
+ public int total_rounds;
+
+ public override DateTime StartDate => start_date;
+ public override DateTime EndDate => end_date;
+ }
+ /// See
+ [TLDef(0x7D967C3A)]
+ public sealed partial class StarGiftAuctionStateFinished : StarGiftAuctionStateBase
+ {
+ public DateTime start_date;
+ public DateTime end_date;
+ public long average_price;
+
+ public override DateTime StartDate => start_date;
+ public override DateTime EndDate => end_date;
+ }
+
+ /// See
+ [TLDef(0x2EEED1C4)]
+ public sealed partial class StarGiftAuctionUserState : IObject
+ {
+ public Flags flags;
+ [IfFlag(0)] public long bid_amount;
+ [IfFlag(0)] public DateTime bid_date;
+ [IfFlag(0)] public long min_bid_amount;
+ [IfFlag(0)] public Peer bid_peer;
+ public int acquired_count;
+
+ [Flags] public enum Flags : uint
+ {
+ has_bid_amount = 0x1,
+ returned = 0x2,
+ }
+ }
+
+ /// See
+ [TLDef(0x0E98E474)]
+ public sealed partial class Payments_StarGiftAuctionState : IObject
+ {
+ public StarGiftBase gift;
+ public StarGiftAuctionStateBase state;
+ public StarGiftAuctionUserState user_state;
+ public int timeout;
+ public Dictionary users;
+ }
+
+ /// See
+ [TLDef(0xAB60E20B)]
+ public sealed partial class StarGiftAuctionAcquiredGift : IObject
+ {
+ public Flags flags;
+ public Peer peer;
+ public DateTime date;
+ public long bid_amount;
+ public int round;
+ public int pos;
+ [IfFlag(1)] public TextWithEntities message;
+
+ [Flags] public enum Flags : uint
+ {
+ name_hidden = 0x1,
+ has_message = 0x2,
+ }
+ }
+
+ /// See
+ [TLDef(0x7D5BD1F0)]
+ public sealed partial class Payments_StarGiftAuctionAcquiredGifts : IObject, IPeerResolver
+ {
+ public StarGiftAuctionAcquiredGift[] gifts;
+ public Dictionary users;
+ public Dictionary chats;
+ /// returns a or for the given Peer
+ public IPeerInfo UserOrChat(Peer peer) => peer?.UserOrChat(users, chats);
+ }
+
+ /// See
+ [TLDef(0xD31BC45D)]
+ public sealed partial class StarGiftActiveAuctionState : IObject
+ {
+ public StarGiftBase gift;
+ public StarGiftAuctionStateBase state;
+ public StarGiftAuctionUserState user_state;
+ }
+
+ /// See
+ /// a value means payments.starGiftActiveAuctionsNotModified
+ [TLDef(0x97F187D8)]
+ public sealed partial class Payments_StarGiftActiveAuctions : IObject
+ {
+ public StarGiftActiveAuctionState[] auctions;
+ public Dictionary users;
+ }
+
+ /// See
+ public abstract partial class InputStarGiftAuctionBase : IObject { }
+ /// See
+ [TLDef(0x02E16C98)]
+ public sealed partial class InputStarGiftAuction : InputStarGiftAuctionBase
+ {
+ public long gift_id;
+ }
+ /// See
+ [TLDef(0x7AB58308)]
+ public sealed partial class InputStarGiftAuctionSlug : InputStarGiftAuctionBase
+ {
+ public string slug;
+ }
}
diff --git a/src/TL.SchemaFuncs.cs b/src/TL.SchemaFuncs.cs
index 95c6790..9d21f96 100644
--- a/src/TL.SchemaFuncs.cs
+++ b/src/TL.SchemaFuncs.cs
@@ -2009,10 +2009,10 @@ namespace TL
/// Specifies a message effect » to use for the message.
/// For paid messages », specifies the amount of Telegram Stars the user has agreed to pay in order to send the message.
/// Used to suggest a post to a channel, see here » for more info on the full flow.
- public static Task Messages_SendMessage(this Client client, InputPeer peer, string message, long random_id, InputReplyTo reply_to = null, ReplyMarkup reply_markup = null, MessageEntity[] entities = null, DateTime? schedule_date = null, InputPeer send_as = null, InputQuickReplyShortcutBase quick_reply_shortcut = null, long? effect = null, long? allow_paid_stars = null, SuggestedPost suggested_post = null, bool no_webpage = false, bool silent = false, bool background = false, bool clear_draft = false, bool noforwards = false, bool update_stickersets_order = false, bool invert_media = false, bool allow_paid_floodskip = false)
+ public static Task Messages_SendMessage(this Client client, InputPeer peer, string message, long random_id, InputReplyTo reply_to = null, ReplyMarkup reply_markup = null, MessageEntity[] entities = null, DateTime? schedule_date = null, InputPeer send_as = null, InputQuickReplyShortcutBase quick_reply_shortcut = null, long? effect = null, long? allow_paid_stars = null, SuggestedPost suggested_post = null, int? schedule_repeat_period = null, bool no_webpage = false, bool silent = false, bool background = false, bool clear_draft = false, bool noforwards = false, bool update_stickersets_order = false, bool invert_media = false, bool allow_paid_floodskip = false)
=> client.Invoke(new Messages_SendMessage
{
- flags = (Messages_SendMessage.Flags)((reply_to != null ? 0x1 : 0) | (reply_markup != null ? 0x4 : 0) | (entities != null ? 0x8 : 0) | (schedule_date != null ? 0x400 : 0) | (send_as != null ? 0x2000 : 0) | (quick_reply_shortcut != null ? 0x20000 : 0) | (effect != null ? 0x40000 : 0) | (allow_paid_stars != null ? 0x200000 : 0) | (suggested_post != null ? 0x400000 : 0) | (no_webpage ? 0x2 : 0) | (silent ? 0x20 : 0) | (background ? 0x40 : 0) | (clear_draft ? 0x80 : 0) | (noforwards ? 0x4000 : 0) | (update_stickersets_order ? 0x8000 : 0) | (invert_media ? 0x10000 : 0) | (allow_paid_floodskip ? 0x80000 : 0)),
+ flags = (Messages_SendMessage.Flags)((reply_to != null ? 0x1 : 0) | (reply_markup != null ? 0x4 : 0) | (entities != null ? 0x8 : 0) | (schedule_date != null ? 0x400 : 0) | (send_as != null ? 0x2000 : 0) | (quick_reply_shortcut != null ? 0x20000 : 0) | (effect != null ? 0x40000 : 0) | (allow_paid_stars != null ? 0x200000 : 0) | (suggested_post != null ? 0x400000 : 0) | (schedule_repeat_period != null ? 0x1000000 : 0) | (no_webpage ? 0x2 : 0) | (silent ? 0x20 : 0) | (background ? 0x40 : 0) | (clear_draft ? 0x80 : 0) | (noforwards ? 0x4000 : 0) | (update_stickersets_order ? 0x8000 : 0) | (invert_media ? 0x10000 : 0) | (allow_paid_floodskip ? 0x80000 : 0)),
peer = peer,
reply_to = reply_to,
message = message,
@@ -2020,6 +2020,7 @@ namespace TL
reply_markup = reply_markup,
entities = entities,
schedule_date = schedule_date ?? default,
+ schedule_repeat_period = schedule_repeat_period ?? default,
send_as = send_as,
quick_reply_shortcut = quick_reply_shortcut,
effect = effect ?? default,
@@ -2048,10 +2049,10 @@ namespace TL
/// Specifies a message effect » to use for the message.
/// For paid messages », specifies the amount of Telegram Stars the user has agreed to pay in order to send the message.
/// Used to suggest a post to a channel, see here » for more info on the full flow.
- public static Task Messages_SendMedia(this Client client, InputPeer peer, InputMedia media, string message, long random_id, InputReplyTo reply_to = null, ReplyMarkup reply_markup = null, MessageEntity[] entities = null, DateTime? schedule_date = null, InputPeer send_as = null, InputQuickReplyShortcutBase quick_reply_shortcut = null, long? effect = null, long? allow_paid_stars = null, SuggestedPost suggested_post = null, bool silent = false, bool background = false, bool clear_draft = false, bool noforwards = false, bool update_stickersets_order = false, bool invert_media = false, bool allow_paid_floodskip = false)
+ public static Task Messages_SendMedia(this Client client, InputPeer peer, InputMedia media, string message, long random_id, InputReplyTo reply_to = null, ReplyMarkup reply_markup = null, MessageEntity[] entities = null, DateTime? schedule_date = null, InputPeer send_as = null, InputQuickReplyShortcutBase quick_reply_shortcut = null, long? effect = null, long? allow_paid_stars = null, SuggestedPost suggested_post = null, int? schedule_repeat_period = null, bool silent = false, bool background = false, bool clear_draft = false, bool noforwards = false, bool update_stickersets_order = false, bool invert_media = false, bool allow_paid_floodskip = false)
=> client.Invoke(new Messages_SendMedia
{
- flags = (Messages_SendMedia.Flags)((reply_to != null ? 0x1 : 0) | (reply_markup != null ? 0x4 : 0) | (entities != null ? 0x8 : 0) | (schedule_date != null ? 0x400 : 0) | (send_as != null ? 0x2000 : 0) | (quick_reply_shortcut != null ? 0x20000 : 0) | (effect != null ? 0x40000 : 0) | (allow_paid_stars != null ? 0x200000 : 0) | (suggested_post != null ? 0x400000 : 0) | (silent ? 0x20 : 0) | (background ? 0x40 : 0) | (clear_draft ? 0x80 : 0) | (noforwards ? 0x4000 : 0) | (update_stickersets_order ? 0x8000 : 0) | (invert_media ? 0x10000 : 0) | (allow_paid_floodskip ? 0x80000 : 0)),
+ flags = (Messages_SendMedia.Flags)((reply_to != null ? 0x1 : 0) | (reply_markup != null ? 0x4 : 0) | (entities != null ? 0x8 : 0) | (schedule_date != null ? 0x400 : 0) | (send_as != null ? 0x2000 : 0) | (quick_reply_shortcut != null ? 0x20000 : 0) | (effect != null ? 0x40000 : 0) | (allow_paid_stars != null ? 0x200000 : 0) | (suggested_post != null ? 0x400000 : 0) | (schedule_repeat_period != null ? 0x1000000 : 0) | (silent ? 0x20 : 0) | (background ? 0x40 : 0) | (clear_draft ? 0x80 : 0) | (noforwards ? 0x4000 : 0) | (update_stickersets_order ? 0x8000 : 0) | (invert_media ? 0x10000 : 0) | (allow_paid_floodskip ? 0x80000 : 0)),
peer = peer,
reply_to = reply_to,
media = media,
@@ -2060,6 +2061,7 @@ namespace TL
reply_markup = reply_markup,
entities = entities,
schedule_date = schedule_date ?? default,
+ schedule_repeat_period = schedule_repeat_period ?? default,
send_as = send_as,
quick_reply_shortcut = quick_reply_shortcut,
effect = effect ?? default,
@@ -2087,10 +2089,10 @@ namespace TL
/// Start playing the video at the specified timestamp (seconds).
/// For paid messages », specifies the amount of Telegram Stars the user has agreed to pay in order to send the message.
/// Used to suggest a post to a channel, see here » for more info on the full flow.
- public static Task Messages_ForwardMessages(this Client client, InputPeer from_peer, int[] id, long[] random_id, InputPeer to_peer, int? top_msg_id = null, DateTime? schedule_date = null, InputPeer send_as = null, InputQuickReplyShortcutBase quick_reply_shortcut = null, int? video_timestamp = null, long? allow_paid_stars = null, InputReplyTo reply_to = null, SuggestedPost suggested_post = null, bool silent = false, bool background = false, bool with_my_score = false, bool drop_author = false, bool drop_media_captions = false, bool noforwards = false, bool allow_paid_floodskip = false)
+ public static Task Messages_ForwardMessages(this Client client, InputPeer from_peer, int[] id, long[] random_id, InputPeer to_peer, int? top_msg_id = null, DateTime? schedule_date = null, InputPeer send_as = null, InputQuickReplyShortcutBase quick_reply_shortcut = null, int? video_timestamp = null, long? allow_paid_stars = null, InputReplyTo reply_to = null, SuggestedPost suggested_post = null, int? schedule_repeat_period = null, bool silent = false, bool background = false, bool with_my_score = false, bool drop_author = false, bool drop_media_captions = false, bool noforwards = false, bool allow_paid_floodskip = false)
=> client.Invoke(new Messages_ForwardMessages
{
- flags = (Messages_ForwardMessages.Flags)((top_msg_id != null ? 0x200 : 0) | (schedule_date != null ? 0x400 : 0) | (send_as != null ? 0x2000 : 0) | (quick_reply_shortcut != null ? 0x20000 : 0) | (video_timestamp != null ? 0x100000 : 0) | (allow_paid_stars != null ? 0x200000 : 0) | (reply_to != null ? 0x400000 : 0) | (suggested_post != null ? 0x800000 : 0) | (silent ? 0x20 : 0) | (background ? 0x40 : 0) | (with_my_score ? 0x100 : 0) | (drop_author ? 0x800 : 0) | (drop_media_captions ? 0x1000 : 0) | (noforwards ? 0x4000 : 0) | (allow_paid_floodskip ? 0x80000 : 0)),
+ flags = (Messages_ForwardMessages.Flags)((top_msg_id != null ? 0x200 : 0) | (schedule_date != null ? 0x400 : 0) | (send_as != null ? 0x2000 : 0) | (quick_reply_shortcut != null ? 0x20000 : 0) | (video_timestamp != null ? 0x100000 : 0) | (allow_paid_stars != null ? 0x200000 : 0) | (reply_to != null ? 0x400000 : 0) | (suggested_post != null ? 0x800000 : 0) | (schedule_repeat_period != null ? 0x1000000 : 0) | (silent ? 0x20 : 0) | (background ? 0x40 : 0) | (with_my_score ? 0x100 : 0) | (drop_author ? 0x800 : 0) | (drop_media_captions ? 0x1000 : 0) | (noforwards ? 0x4000 : 0) | (allow_paid_floodskip ? 0x80000 : 0)),
from_peer = from_peer,
id = id,
random_id = random_id,
@@ -2098,6 +2100,7 @@ namespace TL
top_msg_id = top_msg_id ?? default,
reply_to = reply_to,
schedule_date = schedule_date ?? default,
+ schedule_repeat_period = schedule_repeat_period ?? default,
send_as = send_as,
quick_reply_shortcut = quick_reply_shortcut,
video_timestamp = video_timestamp ?? default,
@@ -2637,10 +2640,10 @@ namespace TL
/// Message entities for styled text
/// Scheduled message date for scheduled messages
/// If specified, edits a quick reply shortcut message, instead ».
- public static Task Messages_EditMessage(this Client client, InputPeer peer, int id, string message = null, InputMedia media = null, ReplyMarkup reply_markup = null, MessageEntity[] entities = null, DateTime? schedule_date = null, int? quick_reply_shortcut_id = null, bool no_webpage = false, bool invert_media = false)
+ public static Task Messages_EditMessage(this Client client, InputPeer peer, int id, string message = null, InputMedia media = null, ReplyMarkup reply_markup = null, MessageEntity[] entities = null, DateTime? schedule_date = null, int? schedule_repeat_period = null, int? quick_reply_shortcut_id = null, bool no_webpage = false, bool invert_media = false)
=> client.Invoke(new Messages_EditMessage
{
- flags = (Messages_EditMessage.Flags)((message != null ? 0x800 : 0) | (media != null ? 0x4000 : 0) | (reply_markup != null ? 0x4 : 0) | (entities != null ? 0x8 : 0) | (schedule_date != null ? 0x8000 : 0) | (quick_reply_shortcut_id != null ? 0x20000 : 0) | (no_webpage ? 0x2 : 0) | (invert_media ? 0x10000 : 0)),
+ flags = (Messages_EditMessage.Flags)((message != null ? 0x800 : 0) | (media != null ? 0x4000 : 0) | (reply_markup != null ? 0x4 : 0) | (entities != null ? 0x8 : 0) | (schedule_date != null ? 0x8000 : 0) | (schedule_repeat_period != null ? 0x40000 : 0) | (quick_reply_shortcut_id != null ? 0x20000 : 0) | (no_webpage ? 0x2 : 0) | (invert_media ? 0x10000 : 0)),
peer = peer,
id = id,
message = message,
@@ -2648,6 +2651,7 @@ namespace TL
reply_markup = reply_markup,
entities = entities,
schedule_date = schedule_date ?? default,
+ schedule_repeat_period = schedule_repeat_period ?? default,
quick_reply_shortcut_id = quick_reply_shortcut_id ?? default,
});
@@ -5595,10 +5599,10 @@ namespace TL
/// Obtains a list of peers that can be used to send messages in a specific group See Possible codes: 400 (details)
/// If set, fetches the list of peers that can be used to send paid reactions to messages of a specific peer.
/// The group where we intend to send messages
- public static Task Channels_GetSendAs(this Client client, InputPeer peer, bool for_paid_reactions = false)
+ public static Task Channels_GetSendAs(this Client client, InputPeer peer, bool for_paid_reactions = false, bool for_live_stories = false)
=> client.Invoke(new Channels_GetSendAs
{
- flags = (Channels_GetSendAs.Flags)(for_paid_reactions ? 0x1 : 0),
+ flags = (Channels_GetSendAs.Flags)((for_paid_reactions ? 0x1 : 0) | (for_live_stories ? 0x2 : 0)),
peer = peer,
});
@@ -6777,6 +6781,29 @@ namespace TL
gift_id = gift_id,
});
+ /// See
+ public static Task Payments_GetStarGiftAuctionState(this Client client, InputStarGiftAuctionBase auction, int version)
+ => client.Invoke(new Payments_GetStarGiftAuctionState
+ {
+ auction = auction,
+ version = version,
+ });
+
+ /// See
+ public static Task Payments_GetStarGiftAuctionAcquiredGifts(this Client client, long gift_id)
+ => client.Invoke(new Payments_GetStarGiftAuctionAcquiredGifts
+ {
+ gift_id = gift_id,
+ });
+
+ /// See
+ /// a null value means payments.starGiftActiveAuctionsNotModified
+ public static Task Payments_GetStarGiftActiveAuctions(this Client client, long hash = default)
+ => client.Invoke(new Payments_GetStarGiftActiveAuctions
+ {
+ hash = hash,
+ });
+
/// Create a stickerset. See [bots: ✓] Possible codes: 400 (details)
/// Whether this is a mask stickerset
/// Whether this is a custom emoji stickerset.
@@ -7082,13 +7109,14 @@ namespace TL
/// Invalidate existing invite links
/// Group call
/// Whether all users will that join this group call are muted by default upon joining the group call
- public static Task Phone_ToggleGroupCallSettings(this Client client, InputGroupCallBase call, bool? join_muted = default, bool? messages_enabled = default, bool reset_invite_hash = false)
+ public static Task Phone_ToggleGroupCallSettings(this Client client, InputGroupCallBase call, bool? join_muted = default, bool? messages_enabled = default, long? send_paid_messages_stars = null, bool reset_invite_hash = false)
=> client.Invoke(new Phone_ToggleGroupCallSettings
{
- flags = (Phone_ToggleGroupCallSettings.Flags)((join_muted != default ? 0x1 : 0) | (messages_enabled != default ? 0x4 : 0) | (reset_invite_hash ? 0x2 : 0)),
+ flags = (Phone_ToggleGroupCallSettings.Flags)((join_muted != default ? 0x1 : 0) | (messages_enabled != default ? 0x4 : 0) | (send_paid_messages_stars != null ? 0x8 : 0) | (reset_invite_hash ? 0x2 : 0)),
call = call,
join_muted = join_muted ?? default,
messages_enabled = messages_enabled ?? default,
+ send_paid_messages_stars = send_paid_messages_stars ?? default,
});
/// Get info about a group call See Possible codes: 400,403 (details)
@@ -7250,9 +7278,10 @@ namespace TL
/// Get RTMP URL and stream key for RTMP livestreams. Can be used even before creating the actual RTMP livestream with Phone_CreateGroupCall (the rtmp_stream flag must be set). See Possible codes: 400 (details)
/// Peer to livestream into
/// Whether to revoke the previous stream key or simply return the existing one
- public static Task Phone_GetGroupCallStreamRtmpUrl(this Client client, InputPeer peer, bool revoke)
+ public static Task Phone_GetGroupCallStreamRtmpUrl(this Client client, InputPeer peer, bool revoke, bool live_story = false)
=> client.Invoke(new Phone_GetGroupCallStreamRtmpUrl
{
+ flags = (Phone_GetGroupCallStreamRtmpUrl.Flags)(live_story ? 0x1 : 0),
peer = peer,
revoke = revoke,
});
@@ -7345,12 +7374,15 @@ namespace TL
});
/// See
- public static Task Phone_SendGroupCallMessage(this Client client, InputGroupCallBase call, long random_id, TextWithEntities message)
+ public static Task Phone_SendGroupCallMessage(this Client client, InputGroupCallBase call, long random_id, TextWithEntities message, long? allow_paid_stars = null, InputPeer send_as = null)
=> client.Invoke(new Phone_SendGroupCallMessage
{
+ flags = (Phone_SendGroupCallMessage.Flags)((allow_paid_stars != null ? 0x1 : 0) | (send_as != null ? 0x2 : 0)),
call = call,
random_id = random_id,
message = message,
+ allow_paid_stars = allow_paid_stars ?? default,
+ send_as = send_as,
});
/// See
@@ -7361,6 +7393,39 @@ namespace TL
encrypted_message = encrypted_message,
});
+ /// See
+ public static Task Phone_DeleteGroupCallMessages(this Client client, InputGroupCallBase call, int[] messages, bool report_spam = false)
+ => client.Invoke(new Phone_DeleteGroupCallMessages
+ {
+ flags = (Phone_DeleteGroupCallMessages.Flags)(report_spam ? 0x1 : 0),
+ call = call,
+ messages = messages,
+ });
+
+ /// See
+ public static Task Phone_DeleteGroupCallParticipantMessages(this Client client, InputGroupCallBase call, InputPeer participant, bool report_spam = false)
+ => client.Invoke(new Phone_DeleteGroupCallParticipantMessages
+ {
+ flags = (Phone_DeleteGroupCallParticipantMessages.Flags)(report_spam ? 0x1 : 0),
+ call = call,
+ participant = participant,
+ });
+
+ /// See
+ public static Task Phone_GetGroupCallStars(this Client client, InputGroupCallBase call)
+ => client.Invoke(new Phone_GetGroupCallStars
+ {
+ call = call,
+ });
+
+ /// See
+ public static Task Phone_SaveDefaultSendAs(this Client client, InputGroupCallBase call, InputPeer send_as)
+ => client.Invoke(new Phone_SaveDefaultSendAs
+ {
+ call = call,
+ send_as = send_as,
+ });
+
/// 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.
@@ -7860,7 +7925,7 @@ namespace TL
/// Get the IDs of the maximum read stories for a set of peers. See
/// Peers
- public static Task Stories_GetPeerMaxIDs(this Client client, params InputPeer[] id)
+ public static Task Stories_GetPeerMaxIDs(this Client client, params InputPeer[] id)
=> client.Invoke(new Stories_GetPeerMaxIDs
{
id = id,
@@ -8003,6 +8068,20 @@ namespace TL
limit = limit,
});
+ /// See
+ public static Task Stories_StartLive(this Client client, InputPeer peer, InputPrivacyRule[] privacy_rules, long random_id, string caption = null, MessageEntity[] entities = null, bool? messages_enabled = default, long? send_paid_messages_stars = null, bool pinned = false, bool noforwards = false, bool rtmp_stream = false)
+ => client.Invoke(new Stories_StartLive
+ {
+ flags = (Stories_StartLive.Flags)((caption != null ? 0x1 : 0) | (entities != null ? 0x2 : 0) | (messages_enabled != default ? 0x40 : 0) | (send_paid_messages_stars != null ? 0x80 : 0) | (pinned ? 0x4 : 0) | (noforwards ? 0x10 : 0) | (rtmp_stream ? 0x20 : 0)),
+ peer = peer,
+ caption = caption,
+ entities = entities,
+ privacy_rules = privacy_rules,
+ random_id = random_id,
+ messages_enabled = messages_enabled ?? default,
+ send_paid_messages_stars = send_paid_messages_stars ?? default,
+ });
+
/// Obtains info about the boosts that were applied to a certain channel or supergroup (admins only) See Possible codes: 400 (details)
/// Whether to return only info about boosts received from gift codes and giveaways created by the channel/supergroup »
/// The channel/supergroup
@@ -9716,7 +9795,7 @@ namespace TL.Methods
}
}
- [TLDef(0xFE05DC9A)]
+ [TLDef(0x545CD15A)]
public sealed partial class Messages_SendMessage : IMethod
{
public Flags flags;
@@ -9727,6 +9806,7 @@ namespace TL.Methods
[IfFlag(2)] public ReplyMarkup reply_markup;
[IfFlag(3)] public MessageEntity[] entities;
[IfFlag(10)] public DateTime schedule_date;
+ [IfFlag(24)] public int schedule_repeat_period;
[IfFlag(13)] public InputPeer send_as;
[IfFlag(17)] public InputQuickReplyShortcutBase quick_reply_shortcut;
[IfFlag(18)] public long effect;
@@ -9752,10 +9832,11 @@ namespace TL.Methods
allow_paid_floodskip = 0x80000,
has_allow_paid_stars = 0x200000,
has_suggested_post = 0x400000,
+ has_schedule_repeat_period = 0x1000000,
}
}
- [TLDef(0xAC55D9C1)]
+ [TLDef(0x0330E77F)]
public sealed partial class Messages_SendMedia : IMethod
{
public Flags flags;
@@ -9767,6 +9848,7 @@ namespace TL.Methods
[IfFlag(2)] public ReplyMarkup reply_markup;
[IfFlag(3)] public MessageEntity[] entities;
[IfFlag(10)] public DateTime schedule_date;
+ [IfFlag(24)] public int schedule_repeat_period;
[IfFlag(13)] public InputPeer send_as;
[IfFlag(17)] public InputQuickReplyShortcutBase quick_reply_shortcut;
[IfFlag(18)] public long effect;
@@ -9791,10 +9873,11 @@ namespace TL.Methods
allow_paid_floodskip = 0x80000,
has_allow_paid_stars = 0x200000,
has_suggested_post = 0x400000,
+ has_schedule_repeat_period = 0x1000000,
}
}
- [TLDef(0x978928CA)]
+ [TLDef(0x41D41ADE)]
public sealed partial class Messages_ForwardMessages : IMethod
{
public Flags flags;
@@ -9805,6 +9888,7 @@ namespace TL.Methods
[IfFlag(9)] public int top_msg_id;
[IfFlag(22)] public InputReplyTo reply_to;
[IfFlag(10)] public DateTime schedule_date;
+ [IfFlag(24)] public int schedule_repeat_period;
[IfFlag(13)] public InputPeer send_as;
[IfFlag(17)] public InputQuickReplyShortcutBase quick_reply_shortcut;
[IfFlag(20)] public int video_timestamp;
@@ -9828,6 +9912,7 @@ namespace TL.Methods
has_allow_paid_stars = 0x200000,
has_reply_to = 0x400000,
has_suggested_post = 0x800000,
+ has_schedule_repeat_period = 0x1000000,
}
}
@@ -10256,7 +10341,7 @@ namespace TL.Methods
public int id;
}
- [TLDef(0xDFD14005)]
+ [TLDef(0x51E842E1)]
public sealed partial class Messages_EditMessage : IMethod
{
public Flags flags;
@@ -10267,6 +10352,7 @@ namespace TL.Methods
[IfFlag(2)] public ReplyMarkup reply_markup;
[IfFlag(3)] public MessageEntity[] entities;
[IfFlag(15)] public DateTime schedule_date;
+ [IfFlag(18)] public int schedule_repeat_period;
[IfFlag(17)] public int quick_reply_shortcut_id;
[Flags] public enum Flags : uint
@@ -10279,6 +10365,7 @@ namespace TL.Methods
has_schedule_date = 0x8000,
invert_media = 0x10000,
has_quick_reply_shortcut_id = 0x20000,
+ has_schedule_repeat_period = 0x40000,
}
}
@@ -12752,6 +12839,7 @@ namespace TL.Methods
[Flags] public enum Flags : uint
{
for_paid_reactions = 0x1,
+ for_live_stories = 0x2,
}
}
@@ -13747,6 +13835,25 @@ namespace TL.Methods
public long gift_id;
}
+ [TLDef(0x5C9FF4D6)]
+ public sealed partial class Payments_GetStarGiftAuctionState : IMethod
+ {
+ public InputStarGiftAuctionBase auction;
+ public int version;
+ }
+
+ [TLDef(0x6BA2CBEC)]
+ public sealed partial class Payments_GetStarGiftAuctionAcquiredGifts : IMethod
+ {
+ public long gift_id;
+ }
+
+ [TLDef(0xA5D0514D)]
+ public sealed partial class Payments_GetStarGiftActiveAuctions : IMethod
+ {
+ public long hash;
+ }
+
[TLDef(0x9021AB67)]
public sealed partial class Stickers_CreateStickerSet : IMethod
{
@@ -13993,19 +14100,21 @@ namespace TL.Methods
public InputGroupCallBase call;
}
- [TLDef(0xE9723804)]
+ [TLDef(0x974392F2)]
public sealed partial class Phone_ToggleGroupCallSettings : IMethod
{
public Flags flags;
public InputGroupCallBase call;
[IfFlag(0)] public bool join_muted;
[IfFlag(2)] public bool messages_enabled;
+ [IfFlag(3)] public long send_paid_messages_stars;
[Flags] public enum Flags : uint
{
has_join_muted = 0x1,
reset_invite_hash = 0x2,
has_messages_enabled = 0x4,
+ has_send_paid_messages_stars = 0x8,
}
}
@@ -14137,11 +14246,17 @@ namespace TL.Methods
public InputGroupCallBase call;
}
- [TLDef(0xDEB3ABBF)]
+ [TLDef(0x5AF4C73A)]
public sealed partial class Phone_GetGroupCallStreamRtmpUrl : IMethod
{
+ public Flags flags;
public InputPeer peer;
public bool revoke;
+
+ [Flags] public enum Flags : uint
+ {
+ live_story = 0x1,
+ }
}
[TLDef(0x41248786)]
@@ -14218,12 +14333,21 @@ namespace TL.Methods
public int limit;
}
- [TLDef(0x87893014)]
- public sealed partial class Phone_SendGroupCallMessage : IMethod
+ [TLDef(0xB1D11410)]
+ public sealed partial class Phone_SendGroupCallMessage : IMethod
{
+ public Flags flags;
public InputGroupCallBase call;
public long random_id;
public TextWithEntities message;
+ [IfFlag(0)] public long allow_paid_stars;
+ [IfFlag(1)] public InputPeer send_as;
+
+ [Flags] public enum Flags : uint
+ {
+ has_allow_paid_stars = 0x1,
+ has_send_as = 0x2,
+ }
}
[TLDef(0xE5AFA56D)]
@@ -14233,6 +14357,45 @@ namespace TL.Methods
public byte[] encrypted_message;
}
+ [TLDef(0xF64F54F7)]
+ public sealed partial class Phone_DeleteGroupCallMessages : IMethod
+ {
+ public Flags flags;
+ public InputGroupCallBase call;
+ public int[] messages;
+
+ [Flags] public enum Flags : uint
+ {
+ report_spam = 0x1,
+ }
+ }
+
+ [TLDef(0x1DBFECA0)]
+ public sealed partial class Phone_DeleteGroupCallParticipantMessages : IMethod
+ {
+ public Flags flags;
+ public InputGroupCallBase call;
+ public InputPeer participant;
+
+ [Flags] public enum Flags : uint
+ {
+ report_spam = 0x1,
+ }
+ }
+
+ [TLDef(0x6F636302)]
+ public sealed partial class Phone_GetGroupCallStars : IMethod
+ {
+ public InputGroupCallBase call;
+ }
+
+ [TLDef(0x4167ADD1)]
+ public sealed partial class Phone_SaveDefaultSendAs : IMethod
+ {
+ public InputGroupCallBase call;
+ public InputPeer send_as;
+ }
+
[TLDef(0xF2F2330A)]
public sealed partial class Langpack_GetLangPack : IMethod
{
@@ -14644,8 +14807,8 @@ namespace TL.Methods
[TLDef(0x9B5AE7F9)]
public sealed partial class Stories_GetAllReadPeerStories : IMethod { }
- [TLDef(0x535983C3)]
- public sealed partial class Stories_GetPeerMaxIDs : IMethod
+ [TLDef(0x78499170)]
+ public sealed partial class Stories_GetPeerMaxIDs : IMethod
{
public InputPeer[] id;
}
@@ -14761,6 +14924,30 @@ namespace TL.Methods
public int limit;
}
+ [TLDef(0xD069CCDE)]
+ public sealed partial class Stories_StartLive : IMethod
+ {
+ public Flags flags;
+ public InputPeer peer;
+ [IfFlag(0)] public string caption;
+ [IfFlag(1)] public MessageEntity[] entities;
+ public InputPrivacyRule[] privacy_rules;
+ public long random_id;
+ [IfFlag(6)] public bool messages_enabled;
+ [IfFlag(7)] public long send_paid_messages_stars;
+
+ [Flags] public enum Flags : uint
+ {
+ has_caption = 0x1,
+ has_entities = 0x2,
+ pinned = 0x4,
+ noforwards = 0x10,
+ rtmp_stream = 0x20,
+ has_messages_enabled = 0x40,
+ has_send_paid_messages_stars = 0x80,
+ }
+ }
+
[TLDef(0x60F67660)]
public sealed partial class Premium_GetBoostsList : IMethod
{
diff --git a/src/TL.Table.cs b/src/TL.Table.cs
index de3f2d5..76ac918 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 = 216; // fetched 10/10/2025 20:01:17
+ public const int Version = 218; // fetched 11/15/2025 21:06:24
internal const int SecretChats = 144;
internal const int MTProto2 = 73;
internal const uint VectorCtor = 0x1CB5C415;
@@ -84,7 +84,7 @@ namespace TL
[0xF7C1B13F] = typeof(InputUserSelf),
[0xF21158C6] = typeof(InputUser),
[0x1DA448E2] = typeof(InputUserFromMessage),
- [0xF392B7F4] = typeof(InputPhoneContact),
+ [0x6A1DC4BE] = typeof(InputPhoneContact),
[0xF52FF27F] = typeof(InputFile),
[0xFA4F0BB5] = typeof(InputFileBig),
[0x62DC8B48] = typeof(InputFileStoryDocument),
@@ -128,7 +128,7 @@ namespace TL
[0x36C6019A] = typeof(PeerChat),
[0xA2A5371E] = typeof(PeerChannel),
[0xD3BC4B7A] = typeof(UserEmpty),
- [0x020B1422] = typeof(User),
+ [0x31774388] = typeof(User),
[0x4F11BAE1] = null,//UserProfilePhotoEmpty
[0x82D1F706] = typeof(UserProfilePhoto),
[0x09D05049] = null,//UserStatusEmpty
@@ -140,7 +140,7 @@ namespace TL
[0x29562865] = typeof(ChatEmpty),
[0x41CBF256] = typeof(Chat),
[0x6592A1A7] = typeof(ChatForbidden),
- [0xFE685355] = typeof(Channel),
+ [0x1C32B11C] = typeof(Channel),
[0x17D493D5] = typeof(ChannelForbidden),
[0x2633421B] = typeof(ChatFull),
[0xE4E0B29D] = typeof(ChannelFull),
@@ -152,7 +152,7 @@ namespace TL
[0x37C1011C] = null,//ChatPhotoEmpty
[0x1C6E1C11] = typeof(ChatPhoto),
[0x90A6CA84] = typeof(MessageEmpty),
- [0x9815CEC8] = typeof(Message),
+ [0xB92F76CF] = typeof(Message),
[0x7A800E0A] = typeof(MessageService),
[0x3DED6320] = null,//MessageMediaEmpty
[0x695150D7] = typeof(MessageMediaPhoto),
@@ -172,6 +172,7 @@ namespace TL
[0xCEAA3EA1] = typeof(MessageMediaGiveawayResults),
[0xA8852491] = typeof(MessageMediaPaidMedia),
[0x8A53B014] = typeof(MessageMediaToDo),
+ [0xCA5CAB89] = typeof(MessageMediaVideoStream),
[0xB6AEF7B0] = null,//MessageActionEmpty
[0xBD47CBAD] = typeof(MessageActionChatCreate),
[0xB5A1CE5A] = typeof(MessageActionChatEditTitle),
@@ -204,13 +205,13 @@ namespace TL
[0xEBBCA3CB] = typeof(MessageActionChatJoinedByRequest),
[0x47DD8079] = typeof(MessageActionWebViewDataSentMe),
[0xB4C38CB5] = typeof(MessageActionWebViewDataSent),
- [0x6C6274FA] = typeof(MessageActionGiftPremium),
+ [0x48E91302] = typeof(MessageActionGiftPremium),
[0x0D999256] = typeof(MessageActionTopicCreate),
[0xC0944820] = typeof(MessageActionTopicEdit),
[0x57DE635E] = typeof(MessageActionSuggestProfilePhoto),
[0x31518E9B] = typeof(MessageActionRequestedPeer),
[0x5060A3F4] = typeof(MessageActionSetChatWallPaper),
- [0x56D03994] = typeof(MessageActionGiftCode),
+ [0x31C48347] = typeof(MessageActionGiftCode),
[0xA80F51E4] = typeof(MessageActionGiveawayLaunch),
[0x87E2F155] = typeof(MessageActionGiveawayResults),
[0xCC02AA6D] = typeof(MessageActionBoostApply),
@@ -218,7 +219,7 @@ namespace TL
[0x41B3E202] = typeof(MessageActionPaymentRefunded),
[0x45D5B021] = typeof(MessageActionGiftStars),
[0xB00C47A2] = typeof(MessageActionPrizeStars),
- [0xF24DE7FA] = typeof(MessageActionStarGift),
+ [0xDB596550] = typeof(MessageActionStarGift),
[0x95728543] = typeof(MessageActionStarGiftUnique),
[0xAC1F1FCD] = typeof(MessageActionPaidMessagesRefunded),
[0x84B88578] = typeof(MessageActionPaidMessagesPrice),
@@ -381,7 +382,7 @@ namespace TL
[0x5BB98608] = typeof(UpdatePinnedChannelMessages),
[0xF89A6A4E] = typeof(UpdateChat),
[0xF2EBDB4E] = typeof(UpdateGroupCallParticipants),
- [0x97D64341] = typeof(UpdateGroupCall),
+ [0x9D2216E0] = typeof(UpdateGroupCall),
[0xBB9BB9A5] = typeof(UpdatePeerHistoryTTL),
[0xD087663A] = typeof(UpdateChatParticipant),
[0x985D3ABB] = typeof(UpdateChannelParticipant),
@@ -438,10 +439,13 @@ namespace TL
[0x77B0E372] = typeof(UpdateReadMonoForumInbox),
[0xA4A79376] = typeof(UpdateReadMonoForumOutbox),
[0x9F812B08] = typeof(UpdateMonoForumNoPaidException),
- [0x78C314E0] = typeof(UpdateGroupCallMessage),
+ [0xD8326F0D] = typeof(UpdateGroupCallMessage),
[0xC957A766] = typeof(UpdateGroupCallEncryptedMessage),
[0x683B2C52] = typeof(UpdatePinnedForumTopic),
[0xDEF143D0] = typeof(UpdatePinnedForumTopics),
+ [0x3E85E92C] = typeof(UpdateDeleteGroupCallMessages),
+ [0x48E246C2] = typeof(UpdateStarGiftAuctionState),
+ [0xDC58F31E] = typeof(UpdateStarGiftAuctionUserState),
[0xA56C2A3E] = typeof(Updates_State),
[0x5D75A138] = typeof(Updates_DifferenceEmpty),
[0x00F49CA0] = typeof(Updates_Difference),
@@ -1016,6 +1020,7 @@ namespace TL
[0x50CC03D3] = typeof(WebPageAttributeStickerSet),
[0xCF6F6DB8] = typeof(WebPageAttributeUniqueStarGift),
[0x31CAD303] = typeof(WebPageAttributeStarGiftCollection),
+ [0x034986AB] = typeof(WebPageAttributeStarGiftAuction),
[0x4899484E] = typeof(Messages_VotesList),
[0xF568028A] = typeof(BankCardOpenUrl),
[0x3E24E573] = typeof(Payments_BankCardData),
@@ -1053,11 +1058,11 @@ namespace TL
[0xE8FD8014] = typeof(PeerBlocked),
[0x7FE91C14] = typeof(Stats_MessageStats),
[0x7780BCB4] = typeof(GroupCallDiscarded),
- [0x553B0BA1] = typeof(GroupCall),
+ [0xEFB2B617] = typeof(GroupCall),
[0xD8AA840F] = typeof(InputGroupCall),
[0xFE06823F] = typeof(InputGroupCallSlug),
[0x8C10603F] = typeof(InputGroupCallInviteMessage),
- [0xEBA636FE] = typeof(GroupCallParticipant),
+ [0x2A3DC7AC] = typeof(GroupCallParticipant),
[0x9E727AAD] = typeof(Phone_GroupCall),
[0xF47751B6] = typeof(Phone_GroupParticipants),
[0x1662AF0B] = typeof(Messages_HistoryImport),
@@ -1144,6 +1149,7 @@ namespace TL
[0x9A0B48B8] = typeof(InputInvoiceStarGiftPrepaidUpgrade),
[0x3E77F614] = typeof(InputInvoicePremiumAuthCode),
[0x0923D8D1] = typeof(InputInvoiceStarGiftDropOriginalDetails),
+ [0x1ECAFA10] = typeof(InputInvoiceStarGiftAuctionBid),
[0xAED0CBD9] = typeof(Payments_ExportedInvoice),
[0xCFB9D957] = typeof(Messages_TranscribedAudio),
[0x5334759C] = typeof(Help_PremiumPromo),
@@ -1256,7 +1262,7 @@ namespace TL
[0xCAE68768] = typeof(Stories_PeerStories),
[0xFD5E12BD] = typeof(Messages_WebPage),
[0x257E962B] = typeof(PremiumGiftCodeOption),
- [0x284A1096] = typeof(Payments_CheckedGiftCode),
+ [0xEB983F8F] = typeof(Payments_CheckedGiftCode),
[0x4367DAA0] = typeof(Payments_GiveawayInfo),
[0xE175E66F] = typeof(Payments_GiveawayInfoResults),
[0xB2539D54] = typeof(PrepaidGiveaway),
@@ -1378,7 +1384,7 @@ namespace TL
[0x4BA3A95A] = typeof(MessageReactor),
[0x94CE852A] = typeof(StarsGiveawayOption),
[0x54236209] = typeof(StarsGiveawayWinnersOption),
- [0x80AC53C3] = typeof(StarGift),
+ [0x1B9A4D7F] = typeof(StarGift),
[0xB0BF741B] = typeof(StarGiftUnique),
[0xA388A368] = null,//Payments_StarGiftsNotModified
[0x2ED82995] = typeof(Payments_StarGifts),
@@ -1435,7 +1441,7 @@ namespace TL
[0xE7E82E12] = typeof(PendingSuggestion),
[0xCBA9A52F] = typeof(TodoItem),
[0x49B92A26] = typeof(TodoList),
- [0x4CC120B7] = typeof(TodoCompletion),
+ [0x221BB5E4] = typeof(TodoCompletion),
[0x0E8E37E5] = typeof(SuggestedPost),
[0x1B0E4F07] = typeof(StarsRating),
[0x9D6B13B0] = typeof(StarGiftCollection),
@@ -1456,6 +1462,23 @@ namespace TL
[0xC93DE95C] = typeof(InputChatTheme),
[0x87E5DFE4] = typeof(InputChatThemeUniqueGift),
[0x99EA331D] = typeof(StarGiftUpgradePrice),
+ [0x1A8AFC7E] = typeof(GroupCallMessage),
+ [0xEE430C85] = typeof(GroupCallDonor),
+ [0x9D1DBD26] = typeof(Phone_GroupCallStars),
+ [0x711D692D] = typeof(RecentStory),
+ [0x310240CC] = typeof(AuctionBidLevel),
+ [0xFE333952] = null,//StarGiftAuctionStateNotModified
+ [0x5DB04F4B] = typeof(StarGiftAuctionState),
+ [0x7D967C3A] = typeof(StarGiftAuctionStateFinished),
+ [0x2EEED1C4] = typeof(StarGiftAuctionUserState),
+ [0x0E98E474] = typeof(Payments_StarGiftAuctionState),
+ [0xAB60E20B] = typeof(StarGiftAuctionAcquiredGift),
+ [0x7D5BD1F0] = typeof(Payments_StarGiftAuctionAcquiredGifts),
+ [0xD31BC45D] = typeof(StarGiftActiveAuctionState),
+ [0xDB33DAD0] = null,//Payments_StarGiftActiveAuctionsNotModified
+ [0x97F187D8] = typeof(Payments_StarGiftActiveAuctions),
+ [0x02E16C98] = typeof(InputStarGiftAuction),
+ [0x7AB58308] = typeof(InputStarGiftAuctionSlug),
// from TL.Secret:
[0x6ABD9782] = typeof(Layer143.DecryptedMessageMediaDocument),
[0x020DF5D0] = typeof(Layer101.MessageEntityBlockquote),
@@ -1594,6 +1617,8 @@ namespace TL
[typeof(Stories_Albums)] = 0x564EDAEB, //stories.albumsNotModified
[typeof(Account_SavedMusicIds)] = 0x4FC81D6E, //account.savedMusicIdsNotModified
[typeof(InputChatThemeBase)] = 0x83268483, //inputChatThemeEmpty
+ [typeof(StarGiftAuctionStateBase)] = 0xFE333952, //starGiftAuctionStateNotModified
+ [typeof(Payments_StarGiftActiveAuctions)]= 0xDB33DAD0, //payments.starGiftActiveAuctionsNotModified
[typeof(DecryptedMessageMedia)] = 0x089F5C4A, //decryptedMessageMediaEmpty
};
}
diff --git a/src/WTelegramClient.csproj b/src/WTelegramClient.csproj
index bda3719..c043406 100644
--- a/src/WTelegramClient.csproj
+++ b/src/WTelegramClient.csproj
@@ -13,8 +13,8 @@
WTelegramClient
Wizou
0.0.0
- layer.216
- Telegram Client API (MTProto) library written 100% in C# and .NET Standard | Latest API layer: 216
+ layer.218
+ Telegram Client API (MTProto) library written 100% in C# and .NET Standard | Latest API layer: 218
Release Notes:
$(ReleaseNotes)