API Layer 202: E2E group calls

https://core.telegram.org/api/end-to-end/group-calls
This commit is contained in:
Wizou 2025-05-01 12:17:06 +02:00
parent eaea2d051a
commit 6fb59286bd
5 changed files with 242 additions and 109 deletions

View file

@ -1,4 +1,4 @@
[![API Layer](https://img.shields.io/badge/API_Layer-201-blueviolet)](https://corefork.telegram.org/methods) [![API Layer](https://img.shields.io/badge/API_Layer-202-blueviolet)](https://corefork.telegram.org/methods)
[![NuGet version](https://img.shields.io/nuget/v/WTelegramClient?color=00508F)](https://www.nuget.org/packages/WTelegramClient/) [![NuGet version](https://img.shields.io/nuget/v/WTelegramClient?color=00508F)](https://www.nuget.org/packages/WTelegramClient/)
[![NuGet prerelease](https://img.shields.io/nuget/vpre/WTelegramClient?color=C09030&label=dev+nuget)](https://www.nuget.org/packages/WTelegramClient/absoluteLatest) [![NuGet prerelease](https://img.shields.io/nuget/vpre/WTelegramClient?color=C09030&label=dev+nuget)](https://www.nuget.org/packages/WTelegramClient/absoluteLatest)
[![Donate](https://img.shields.io/badge/Help_this_project:-Donate-ff4444)](https://buymeacoffee.com/wizou) [![Donate](https://img.shields.io/badge/Help_this_project:-Donate-ff4444)](https://buymeacoffee.com/wizou)

View file

@ -692,7 +692,7 @@ namespace TL
/// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary> /// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary>
public Flags flags; public Flags flags;
/// <summary>Livestream info</summary> /// <summary>Livestream info</summary>
public InputGroupCall call; public InputGroupCallBase call;
/// <summary>Timestamp in milliseconds</summary> /// <summary>Timestamp in milliseconds</summary>
public long time_ms; public long time_ms;
/// <summary>Specifies the duration of the video segment to fetch in milliseconds, by bitshifting <c>1000</c> to the right <c>scale</c> times: <c>duration_ms := 1000 &gt;&gt; scale</c></summary> /// <summary>Specifies the duration of the video segment to fetch in milliseconds, by bitshifting <c>1000</c> to the right <c>scale</c> times: <c>duration_ms := 1000 &gt;&gt; scale</c></summary>
@ -1262,7 +1262,7 @@ namespace TL
/// <summary><a href="https://corefork.telegram.org/api/folders#peer-folders">Peer folder ID, for more info click here</a></summary> /// <summary><a href="https://corefork.telegram.org/api/folders#peer-folders">Peer folder ID, for more info click here</a></summary>
public virtual int Folder => default; public virtual int Folder => default;
/// <summary>Group call information</summary> /// <summary>Group call information</summary>
public virtual InputGroupCall Call => default; public virtual InputGroupCallBase Call => default;
/// <summary>Time-To-Live of messages sent by the current user to this chat</summary> /// <summary>Time-To-Live of messages sent by the current user to this chat</summary>
public virtual int TtlPeriod => default; public virtual int TtlPeriod => default;
/// <summary>When using <see cref="SchemaExtensions.Phone_GetGroupCallJoinAs">Phone_GetGroupCallJoinAs</see> to get a list of peers that can be used to join a group call, this field indicates the peer that should be selected by default.</summary> /// <summary>When using <see cref="SchemaExtensions.Phone_GetGroupCallJoinAs">Phone_GetGroupCallJoinAs</see> to get a list of peers that can be used to join a group call, this field indicates the peer that should be selected by default.</summary>
@ -1303,7 +1303,7 @@ namespace TL
/// <summary><a href="https://corefork.telegram.org/api/folders#peer-folders">Peer folder ID, for more info click here</a></summary> /// <summary><a href="https://corefork.telegram.org/api/folders#peer-folders">Peer folder ID, for more info click here</a></summary>
[IfFlag(11)] public int folder_id; [IfFlag(11)] public int folder_id;
/// <summary>Group call information</summary> /// <summary>Group call information</summary>
[IfFlag(12)] public InputGroupCall call; [IfFlag(12)] public InputGroupCallBase call;
/// <summary>Time-To-Live of messages sent by the current user to this chat</summary> /// <summary>Time-To-Live of messages sent by the current user to this chat</summary>
[IfFlag(14)] public int ttl_period; [IfFlag(14)] public int ttl_period;
/// <summary>When using <see cref="SchemaExtensions.Phone_GetGroupCallJoinAs">Phone_GetGroupCallJoinAs</see> to get a list of peers that can be used to join a group call, this field indicates the peer that should be selected by default.</summary> /// <summary>When using <see cref="SchemaExtensions.Phone_GetGroupCallJoinAs">Phone_GetGroupCallJoinAs</see> to get a list of peers that can be used to join a group call, this field indicates the peer that should be selected by default.</summary>
@ -1370,7 +1370,7 @@ namespace TL
/// <summary><a href="https://corefork.telegram.org/api/folders#peer-folders">Peer folder ID, for more info click here</a></summary> /// <summary><a href="https://corefork.telegram.org/api/folders#peer-folders">Peer folder ID, for more info click here</a></summary>
public override int Folder => folder_id; public override int Folder => folder_id;
/// <summary>Group call information</summary> /// <summary>Group call information</summary>
public override InputGroupCall Call => call; public override InputGroupCallBase Call => call;
/// <summary>Time-To-Live of messages sent by the current user to this chat</summary> /// <summary>Time-To-Live of messages sent by the current user to this chat</summary>
public override int TtlPeriod => ttl_period; public override int TtlPeriod => ttl_period;
/// <summary>When using <see cref="SchemaExtensions.Phone_GetGroupCallJoinAs">Phone_GetGroupCallJoinAs</see> to get a list of peers that can be used to join a group call, this field indicates the peer that should be selected by default.</summary> /// <summary>When using <see cref="SchemaExtensions.Phone_GetGroupCallJoinAs">Phone_GetGroupCallJoinAs</see> to get a list of peers that can be used to join a group call, this field indicates the peer that should be selected by default.</summary>
@ -1447,7 +1447,7 @@ namespace TL
/// <summary>Latest <a href="https://corefork.telegram.org/api/updates">PTS</a> for this channel</summary> /// <summary>Latest <a href="https://corefork.telegram.org/api/updates">PTS</a> for this channel</summary>
public int pts; public int pts;
/// <summary>Livestream or group call information</summary> /// <summary>Livestream or group call information</summary>
[IfFlag(21)] public InputGroupCall call; [IfFlag(21)] public InputGroupCallBase call;
/// <summary>Time-To-Live of messages in this channel or supergroup</summary> /// <summary>Time-To-Live of messages in this channel or supergroup</summary>
[IfFlag(24)] public int ttl_period; [IfFlag(24)] public int ttl_period;
/// <summary>A list of <a href="https://corefork.telegram.org/api/config#suggestions">suggested actions</a> for the supergroup admin, <a href="https://corefork.telegram.org/api/config#suggestions">see here for more info »</a>.</summary> /// <summary>A list of <a href="https://corefork.telegram.org/api/config#suggestions">suggested actions</a> for the supergroup admin, <a href="https://corefork.telegram.org/api/config#suggestions">see here for more info »</a>.</summary>
@ -1606,7 +1606,7 @@ namespace TL
/// <summary><a href="https://corefork.telegram.org/api/folders#peer-folders">Peer folder ID, for more info click here</a></summary> /// <summary><a href="https://corefork.telegram.org/api/folders#peer-folders">Peer folder ID, for more info click here</a></summary>
public override int Folder => folder_id; public override int Folder => folder_id;
/// <summary>Livestream or group call information</summary> /// <summary>Livestream or group call information</summary>
public override InputGroupCall Call => call; public override InputGroupCallBase Call => call;
/// <summary>Time-To-Live of messages in this channel or supergroup</summary> /// <summary>Time-To-Live of messages in this channel or supergroup</summary>
public override int TtlPeriod => ttl_period; public override int TtlPeriod => ttl_period;
/// <summary>When using <see cref="SchemaExtensions.Phone_GetGroupCallJoinAs">Phone_GetGroupCallJoinAs</see> to get a list of peers that can be used to join a group call, this field indicates the peer that should be selected by default.</summary> /// <summary>When using <see cref="SchemaExtensions.Phone_GetGroupCallJoinAs">Phone_GetGroupCallJoinAs</see> to get a list of peers that can be used to join a group call, this field indicates the peer that should be selected by default.</summary>
@ -2548,7 +2548,7 @@ namespace TL
/// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary> /// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary>
public Flags flags; public Flags flags;
/// <summary>Group call</summary> /// <summary>Group call</summary>
public InputGroupCall call; public InputGroupCallBase call;
/// <summary>Group call duration</summary> /// <summary>Group call duration</summary>
[IfFlag(0)] public int duration; [IfFlag(0)] public int duration;
@ -2563,7 +2563,7 @@ namespace TL
public sealed partial class MessageActionInviteToGroupCall : MessageAction public sealed partial class MessageActionInviteToGroupCall : MessageAction
{ {
/// <summary>The group call</summary> /// <summary>The group call</summary>
public InputGroupCall call; public InputGroupCallBase call;
/// <summary>The invited users</summary> /// <summary>The invited users</summary>
public long[] users; public long[] users;
} }
@ -2589,7 +2589,7 @@ namespace TL
public sealed partial class MessageActionGroupCallScheduled : MessageAction public sealed partial class MessageActionGroupCallScheduled : MessageAction
{ {
/// <summary>The group call</summary> /// <summary>The group call</summary>
public InputGroupCall call; public InputGroupCallBase call;
/// <summary>When is this group call scheduled to start</summary> /// <summary>When is this group call scheduled to start</summary>
public DateTime schedule_date; public DateTime schedule_date;
} }
@ -2959,6 +2959,24 @@ namespace TL
{ {
public long stars; public long stars;
} }
/// <summary><para>See <a href="https://corefork.telegram.org/constructor/messageActionConferenceCall"/></para></summary>
[TLDef(0x2FFE2F7A)]
public sealed partial class MessageActionConferenceCall : MessageAction
{
public Flags flags;
public long call_id;
[IfFlag(2)] public int duration;
[IfFlag(3)] public Peer[] other_participants;
[Flags] public enum Flags : uint
{
missed = 0x1,
active = 0x2,
has_duration = 0x4,
has_other_participants = 0x8,
video = 0x10,
}
}
/// <summary>Chat info. <para>See <a href="https://corefork.telegram.org/type/Dialog"/></para> <para>Derived classes: <see cref="Dialog"/>, <see cref="DialogFolder"/></para></summary> /// <summary>Chat info. <para>See <a href="https://corefork.telegram.org/type/Dialog"/></para> <para>Derived classes: <see cref="Dialog"/>, <see cref="DialogFolder"/></para></summary>
public abstract partial class DialogBase : IObject public abstract partial class DialogBase : IObject
@ -5124,7 +5142,7 @@ namespace TL
public sealed partial class UpdateGroupCallParticipants : Update public sealed partial class UpdateGroupCallParticipants : Update
{ {
/// <summary>Group call</summary> /// <summary>Group call</summary>
public InputGroupCall call; public InputGroupCallBase call;
/// <summary>New participant list</summary> /// <summary>New participant list</summary>
public GroupCallParticipant[] participants; public GroupCallParticipant[] participants;
/// <summary>Version</summary> /// <summary>Version</summary>
@ -5818,6 +5836,15 @@ namespace TL
{ {
public Auth_SentCodeBase sent_code; public Auth_SentCodeBase sent_code;
} }
/// <summary><para>See <a href="https://corefork.telegram.org/constructor/updateGroupCallChainBlocks"/></para></summary>
[TLDef(0xA477288F)]
public sealed partial class UpdateGroupCallChainBlocks : Update
{
public InputGroupCallBase call;
public int sub_chain_id;
public byte[][] blocks;
public int next_offset;
}
/// <summary>Updates state. <para>See <a href="https://corefork.telegram.org/constructor/updates.state"/></para></summary> /// <summary>Updates state. <para>See <a href="https://corefork.telegram.org/constructor/updates.state"/></para></summary>
[TLDef(0xA56C2A3E)] [TLDef(0xA56C2A3E)]
@ -10529,11 +10556,11 @@ namespace TL
/// <summary>The phone call was discarded because the user is busy in another call <para>See <a href="https://corefork.telegram.org/constructor/phoneCallDiscardReasonBusy"/></para></summary> /// <summary>The phone call was discarded because the user is busy in another call <para>See <a href="https://corefork.telegram.org/constructor/phoneCallDiscardReasonBusy"/></para></summary>
[TLDef(0xFAF7E8C9)] [TLDef(0xFAF7E8C9)]
public sealed partial class PhoneCallDiscardReasonBusy : PhoneCallDiscardReason { } public sealed partial class PhoneCallDiscardReasonBusy : PhoneCallDiscardReason { }
/// <summary><para>See <a href="https://corefork.telegram.org/constructor/phoneCallDiscardReasonAllowGroupCall"/></para></summary> /// <summary><para>See <a href="https://corefork.telegram.org/constructor/phoneCallDiscardReasonMigrateConferenceCall"/></para></summary>
[TLDef(0xAFE2B839)] [TLDef(0x9FBBF1F7)]
public sealed partial class PhoneCallDiscardReasonAllowGroupCall : PhoneCallDiscardReason public sealed partial class PhoneCallDiscardReasonMigrateConferenceCall : PhoneCallDiscardReason
{ {
public byte[] encrypted_key; public string slug;
} }
/// <summary>Represents a json-encoded object <para>See <a href="https://corefork.telegram.org/constructor/dataJSON"/></para></summary> /// <summary>Represents a json-encoded object <para>See <a href="https://corefork.telegram.org/constructor/dataJSON"/></para></summary>
@ -11232,7 +11259,6 @@ namespace TL
public virtual long ParticipantId => default; public virtual long ParticipantId => default;
/// <summary>Phone call protocol info</summary> /// <summary>Phone call protocol info</summary>
public virtual PhoneCallProtocol Protocol => default; public virtual PhoneCallProtocol Protocol => default;
public virtual InputGroupCall ConferenceCall => default;
} }
/// <summary>Empty constructor <para>See <a href="https://corefork.telegram.org/constructor/phoneCallEmpty"/></para></summary> /// <summary>Empty constructor <para>See <a href="https://corefork.telegram.org/constructor/phoneCallEmpty"/></para></summary>
[TLDef(0x5366C915)] [TLDef(0x5366C915)]
@ -11245,7 +11271,7 @@ namespace TL
public override long ID => id; public override long ID => id;
} }
/// <summary>Incoming phone call <para>See <a href="https://corefork.telegram.org/constructor/phoneCallWaiting"/></para></summary> /// <summary>Incoming phone call <para>See <a href="https://corefork.telegram.org/constructor/phoneCallWaiting"/></para></summary>
[TLDef(0xEED42858)] [TLDef(0xC5226F17)]
public sealed partial class PhoneCallWaiting : PhoneCallBase public sealed partial class PhoneCallWaiting : PhoneCallBase
{ {
/// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary> /// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary>
@ -11264,7 +11290,6 @@ namespace TL
public PhoneCallProtocol protocol; public PhoneCallProtocol protocol;
/// <summary>When was the phone call received</summary> /// <summary>When was the phone call received</summary>
[IfFlag(0)] public DateTime receive_date; [IfFlag(0)] public DateTime receive_date;
[IfFlag(8)] public InputGroupCall conference_call;
[Flags] public enum Flags : uint [Flags] public enum Flags : uint
{ {
@ -11272,8 +11297,6 @@ namespace TL
has_receive_date = 0x1, has_receive_date = 0x1,
/// <summary>Is this a video call</summary> /// <summary>Is this a video call</summary>
video = 0x40, video = 0x40,
/// <summary>Field <see cref="conference_call"/> has a value</summary>
has_conference_call = 0x100,
} }
/// <summary>Call ID</summary> /// <summary>Call ID</summary>
@ -11288,10 +11311,9 @@ namespace TL
public override long ParticipantId => participant_id; public override long ParticipantId => participant_id;
/// <summary>Phone call protocol info</summary> /// <summary>Phone call protocol info</summary>
public override PhoneCallProtocol Protocol => protocol; public override PhoneCallProtocol Protocol => protocol;
public override InputGroupCall ConferenceCall => conference_call;
} }
/// <summary>Requested phone call <para>See <a href="https://corefork.telegram.org/constructor/phoneCallRequested"/></para></summary> /// <summary>Requested phone call <para>See <a href="https://corefork.telegram.org/constructor/phoneCallRequested"/></para></summary>
[TLDef(0x45361C63)] [TLDef(0x14B0ED0C)]
public sealed partial class PhoneCallRequested : PhoneCallBase public sealed partial class PhoneCallRequested : PhoneCallBase
{ {
/// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary> /// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary>
@ -11310,14 +11332,11 @@ namespace TL
public byte[] g_a_hash; public byte[] g_a_hash;
/// <summary>Call protocol info to be passed to libtgvoip</summary> /// <summary>Call protocol info to be passed to libtgvoip</summary>
public PhoneCallProtocol protocol; public PhoneCallProtocol protocol;
[IfFlag(8)] public InputGroupCall conference_call;
[Flags] public enum Flags : uint [Flags] public enum Flags : uint
{ {
/// <summary>Whether this is a video call</summary> /// <summary>Whether this is a video call</summary>
video = 0x40, video = 0x40,
/// <summary>Field <see cref="conference_call"/> has a value</summary>
has_conference_call = 0x100,
} }
/// <summary>Phone call ID</summary> /// <summary>Phone call ID</summary>
@ -11332,10 +11351,9 @@ namespace TL
public override long ParticipantId => participant_id; public override long ParticipantId => participant_id;
/// <summary>Call protocol info to be passed to libtgvoip</summary> /// <summary>Call protocol info to be passed to libtgvoip</summary>
public override PhoneCallProtocol Protocol => protocol; public override PhoneCallProtocol Protocol => protocol;
public override InputGroupCall ConferenceCall => conference_call;
} }
/// <summary>An accepted phone call <para>See <a href="https://corefork.telegram.org/constructor/phoneCallAccepted"/></para></summary> /// <summary>An accepted phone call <para>See <a href="https://corefork.telegram.org/constructor/phoneCallAccepted"/></para></summary>
[TLDef(0x22FD7181)] [TLDef(0x3660C311)]
public sealed partial class PhoneCallAccepted : PhoneCallBase public sealed partial class PhoneCallAccepted : PhoneCallBase
{ {
/// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary> /// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary>
@ -11354,14 +11372,11 @@ namespace TL
public byte[] g_b; public byte[] g_b;
/// <summary>Protocol to use for phone call</summary> /// <summary>Protocol to use for phone call</summary>
public PhoneCallProtocol protocol; public PhoneCallProtocol protocol;
[IfFlag(8)] public InputGroupCall conference_call;
[Flags] public enum Flags : uint [Flags] public enum Flags : uint
{ {
/// <summary>Whether this is a video call</summary> /// <summary>Whether this is a video call</summary>
video = 0x40, video = 0x40,
/// <summary>Field <see cref="conference_call"/> has a value</summary>
has_conference_call = 0x100,
} }
/// <summary>ID of accepted phone call</summary> /// <summary>ID of accepted phone call</summary>
@ -11376,10 +11391,9 @@ namespace TL
public override long ParticipantId => participant_id; public override long ParticipantId => participant_id;
/// <summary>Protocol to use for phone call</summary> /// <summary>Protocol to use for phone call</summary>
public override PhoneCallProtocol Protocol => protocol; public override PhoneCallProtocol Protocol => protocol;
public override InputGroupCall ConferenceCall => conference_call;
} }
/// <summary>Phone call <para>See <a href="https://corefork.telegram.org/constructor/phoneCall"/></para></summary> /// <summary>Phone call <para>See <a href="https://corefork.telegram.org/constructor/phoneCall"/></para></summary>
[TLDef(0x3BA5940C)] [TLDef(0x30535AF5)]
public sealed partial class PhoneCall : PhoneCallBase public sealed partial class PhoneCall : PhoneCallBase
{ {
/// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary> /// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary>
@ -11406,7 +11420,6 @@ namespace TL
public DateTime start_date; public DateTime start_date;
/// <summary>Custom JSON-encoded call parameters to be passed to tgcalls.</summary> /// <summary>Custom JSON-encoded call parameters to be passed to tgcalls.</summary>
[IfFlag(7)] public DataJSON custom_parameters; [IfFlag(7)] public DataJSON custom_parameters;
[IfFlag(8)] public InputGroupCall conference_call;
[Flags] public enum Flags : uint [Flags] public enum Flags : uint
{ {
@ -11416,8 +11429,7 @@ namespace TL
video = 0x40, video = 0x40,
/// <summary>Field <see cref="custom_parameters"/> has a value</summary> /// <summary>Field <see cref="custom_parameters"/> has a value</summary>
has_custom_parameters = 0x80, has_custom_parameters = 0x80,
/// <summary>Field <see cref="conference_call"/> has a value</summary> conference_supported = 0x100,
has_conference_call = 0x100,
} }
/// <summary>Call ID</summary> /// <summary>Call ID</summary>
@ -11432,10 +11444,9 @@ namespace TL
public override long ParticipantId => participant_id; public override long ParticipantId => participant_id;
/// <summary>Call protocol info to be passed to libtgvoip</summary> /// <summary>Call protocol info to be passed to libtgvoip</summary>
public override PhoneCallProtocol Protocol => protocol; public override PhoneCallProtocol Protocol => protocol;
public override InputGroupCall ConferenceCall => conference_call;
} }
/// <summary>Indicates a discarded phone call <para>See <a href="https://corefork.telegram.org/constructor/phoneCallDiscarded"/></para></summary> /// <summary>Indicates a discarded phone call <para>See <a href="https://corefork.telegram.org/constructor/phoneCallDiscarded"/></para></summary>
[TLDef(0xF9D25503)] [TLDef(0x50CA4DE1)]
public sealed partial class PhoneCallDiscarded : PhoneCallBase public sealed partial class PhoneCallDiscarded : PhoneCallBase
{ {
/// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary> /// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary>
@ -11446,7 +11457,6 @@ namespace TL
[IfFlag(0)] public PhoneCallDiscardReason reason; [IfFlag(0)] public PhoneCallDiscardReason reason;
/// <summary>Duration of the phone call in seconds</summary> /// <summary>Duration of the phone call in seconds</summary>
[IfFlag(1)] public int duration; [IfFlag(1)] public int duration;
[IfFlag(8)] public InputGroupCall conference_call;
[Flags] public enum Flags : uint [Flags] public enum Flags : uint
{ {
@ -11460,13 +11470,10 @@ namespace TL
need_debug = 0x8, need_debug = 0x8,
/// <summary>Whether the call was a video call</summary> /// <summary>Whether the call was a video call</summary>
video = 0x40, video = 0x40,
/// <summary>Field <see cref="conference_call"/> has a value</summary>
has_conference_call = 0x100,
} }
/// <summary>Call ID</summary> /// <summary>Call ID</summary>
public override long ID => id; public override long ID => id;
public override InputGroupCall ConferenceCall => conference_call;
} }
/// <summary>Phone call connection <para>See <a href="https://corefork.telegram.org/type/PhoneConnection"/></para> <para>Derived classes: <see cref="PhoneConnection"/>, <see cref="PhoneConnectionWebrtc"/></para></summary> /// <summary>Phone call connection <para>See <a href="https://corefork.telegram.org/type/PhoneConnection"/></para> <para>Derived classes: <see cref="PhoneConnection"/>, <see cref="PhoneConnectionWebrtc"/></para></summary>
@ -11904,14 +11911,14 @@ namespace TL
public sealed partial class ChannelAdminLogEventActionStartGroupCall : ChannelAdminLogEventAction public sealed partial class ChannelAdminLogEventActionStartGroupCall : ChannelAdminLogEventAction
{ {
/// <summary>Group call</summary> /// <summary>Group call</summary>
public InputGroupCall call; public InputGroupCallBase call;
} }
/// <summary>A group call was terminated <para>See <a href="https://corefork.telegram.org/constructor/channelAdminLogEventActionDiscardGroupCall"/></para></summary> /// <summary>A group call was terminated <para>See <a href="https://corefork.telegram.org/constructor/channelAdminLogEventActionDiscardGroupCall"/></para></summary>
[TLDef(0xDB9F9140)] [TLDef(0xDB9F9140)]
public sealed partial class ChannelAdminLogEventActionDiscardGroupCall : ChannelAdminLogEventAction public sealed partial class ChannelAdminLogEventActionDiscardGroupCall : ChannelAdminLogEventAction
{ {
/// <summary>The group call that was terminated</summary> /// <summary>The group call that was terminated</summary>
public InputGroupCall call; public InputGroupCallBase call;
} }
/// <summary>A group call participant was muted <para>See <a href="https://corefork.telegram.org/constructor/channelAdminLogEventActionParticipantMute"/></para></summary> /// <summary>A group call participant was muted <para>See <a href="https://corefork.telegram.org/constructor/channelAdminLogEventActionParticipantMute"/></para></summary>
[TLDef(0xF92424D2)] [TLDef(0xF92424D2)]
@ -14809,7 +14816,7 @@ namespace TL
public override long AccessHash => access_hash; public override long AccessHash => access_hash;
} }
/// <summary>Info about a group call or livestream <para>See <a href="https://corefork.telegram.org/constructor/groupCall"/></para></summary> /// <summary>Info about a group call or livestream <para>See <a href="https://corefork.telegram.org/constructor/groupCall"/></para></summary>
[TLDef(0xCDF8D3E3)] [TLDef(0x553B0BA1)]
public sealed partial class GroupCall : GroupCallBase public sealed partial class GroupCall : GroupCallBase
{ {
/// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary> /// <summary>Extra bits of information, use <c>flags.HasFlag(...)</c> to test for those</summary>
@ -14834,7 +14841,7 @@ namespace TL
public int unmuted_video_limit; public int unmuted_video_limit;
/// <summary>Version</summary> /// <summary>Version</summary>
public int version; public int version;
[IfFlag(14)] public long conference_from_call; [IfFlag(16)] public string invite_link;
[Flags] public enum Flags : uint [Flags] public enum Flags : uint
{ {
@ -14864,8 +14871,10 @@ namespace TL
rtmp_stream = 0x1000, rtmp_stream = 0x1000,
/// <summary>Whether the listeners list is hidden and cannot be fetched using <see cref="SchemaExtensions.Phone_GetGroupParticipants">Phone_GetGroupParticipants</see>. The <c>phone.groupParticipants.count</c> and <c>groupCall.participants_count</c> counters will still include listeners.</summary> /// <summary>Whether the listeners list is hidden and cannot be fetched using <see cref="SchemaExtensions.Phone_GetGroupParticipants">Phone_GetGroupParticipants</see>. The <c>phone.groupParticipants.count</c> and <c>groupCall.participants_count</c> counters will still include listeners.</summary>
listeners_hidden = 0x2000, listeners_hidden = 0x2000,
/// <summary>Field <see cref="conference_from_call"/> has a value</summary> conference = 0x4000,
has_conference_from_call = 0x4000, creator = 0x8000,
/// <summary>Field <see cref="invite_link"/> has a value</summary>
has_invite_link = 0x10000,
} }
/// <summary>Group call ID</summary> /// <summary>Group call ID</summary>
@ -14874,15 +14883,29 @@ namespace TL
public override long AccessHash => access_hash; public override long AccessHash => access_hash;
} }
/// <summary>Indicates a group call <para>See <a href="https://corefork.telegram.org/type/InputGroupCall"/></para> <para>Derived classes: <see cref="InputGroupCall"/></para></summary>
public abstract partial class InputGroupCallBase : IObject { }
/// <summary>Points to a specific group call <para>See <a href="https://corefork.telegram.org/constructor/inputGroupCall"/></para></summary> /// <summary>Points to a specific group call <para>See <a href="https://corefork.telegram.org/constructor/inputGroupCall"/></para></summary>
[TLDef(0xD8AA840F)] [TLDef(0xD8AA840F)]
public sealed partial class InputGroupCall : IObject public sealed partial class InputGroupCall : InputGroupCallBase
{ {
/// <summary>Group call ID</summary> /// <summary>Group call ID</summary>
public long id; public long id;
/// <summary>⚠ <b>REQUIRED FIELD</b>. See <see href="https://wiz0u.github.io/WTelegramClient/FAQ#access-hash">how to obtain it</see><br/>Group call access hash</summary> /// <summary>⚠ <b>REQUIRED FIELD</b>. See <see href="https://wiz0u.github.io/WTelegramClient/FAQ#access-hash">how to obtain it</see><br/>Group call access hash</summary>
public long access_hash; public long access_hash;
} }
/// <summary><para>See <a href="https://corefork.telegram.org/constructor/inputGroupCallSlug"/></para></summary>
[TLDef(0xFE06823F)]
public sealed partial class InputGroupCallSlug : InputGroupCallBase
{
public string slug;
}
/// <summary><para>See <a href="https://corefork.telegram.org/constructor/inputGroupCallInviteMessage"/></para></summary>
[TLDef(0x8C10603F)]
public sealed partial class InputGroupCallInviteMessage : InputGroupCallBase
{
public int msg_id;
}
/// <summary>Info about a group call participant <para>See <a href="https://corefork.telegram.org/constructor/groupCallParticipant"/></para></summary> /// <summary>Info about a group call participant <para>See <a href="https://corefork.telegram.org/constructor/groupCallParticipant"/></para></summary>
[TLDef(0xEBA636FE)] [TLDef(0xEBA636FE)]

View file

@ -6509,12 +6509,11 @@ namespace TL
/// <param name="random_id">Random ID to avoid resending the same object</param> /// <param name="random_id">Random ID to avoid resending the same object</param>
/// <param name="g_a_hash"><a href="https://corefork.telegram.org/api/end-to-end/voice-calls">Parameter for E2E encryption key exchange »</a></param> /// <param name="g_a_hash"><a href="https://corefork.telegram.org/api/end-to-end/voice-calls">Parameter for E2E encryption key exchange »</a></param>
/// <param name="protocol">Phone call settings</param> /// <param name="protocol">Phone call settings</param>
public static Task<Phone_PhoneCall> Phone_RequestCall(this Client client, InputUserBase user_id, int random_id, byte[] g_a_hash, PhoneCallProtocol protocol, InputGroupCall conference_call = null, bool video = false) public static Task<Phone_PhoneCall> Phone_RequestCall(this Client client, InputUserBase user_id, int random_id, byte[] g_a_hash, PhoneCallProtocol protocol, bool video = false)
=> client.Invoke(new Phone_RequestCall => client.Invoke(new Phone_RequestCall
{ {
flags = (Phone_RequestCall.Flags)((conference_call != null ? 0x2 : 0) | (video ? 0x1 : 0)), flags = (Phone_RequestCall.Flags)(video ? 0x1 : 0),
user_id = user_id, user_id = user_id,
conference_call = conference_call,
random_id = random_id, random_id = random_id,
g_a_hash = g_a_hash, g_a_hash = g_a_hash,
protocol = protocol, protocol = protocol,
@ -6627,21 +6626,22 @@ namespace TL
/// <param name="join_as">Join the group call, presenting yourself as the specified user/channel</param> /// <param name="join_as">Join the group call, presenting yourself as the specified user/channel</param>
/// <param name="invite_hash">The invitation hash from the <a href="https://corefork.telegram.org/api/links#video-chat-livestream-links">invite link »</a>, if provided allows speaking in a livestream or muted group chat.</param> /// <param name="invite_hash">The invitation hash from the <a href="https://corefork.telegram.org/api/links#video-chat-livestream-links">invite link »</a>, if provided allows speaking in a livestream or muted group chat.</param>
/// <param name="params_">WebRTC parameters</param> /// <param name="params_">WebRTC parameters</param>
public static Task<UpdatesBase> 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) public static Task<UpdatesBase> Phone_JoinGroupCall(this Client client, InputGroupCallBase call, InputPeer join_as, DataJSON params_, string invite_hash = null, Int256? public_key = null, byte[] block = null, bool muted = false, bool video_stopped = false)
=> client.Invoke(new Phone_JoinGroupCall => client.Invoke(new Phone_JoinGroupCall
{ {
flags = (Phone_JoinGroupCall.Flags)((invite_hash != null ? 0x2 : 0) | (key_fingerprint != null ? 0x8 : 0) | (muted ? 0x1 : 0) | (video_stopped ? 0x4 : 0)), flags = (Phone_JoinGroupCall.Flags)((invite_hash != null ? 0x2 : 0) | (public_key != null ? 0x8 : 0) | (block != null ? 0x8 : 0) | (muted ? 0x1 : 0) | (video_stopped ? 0x4 : 0)),
call = call, call = call,
join_as = join_as, join_as = join_as,
invite_hash = invite_hash, invite_hash = invite_hash,
key_fingerprint = key_fingerprint ?? default, public_key = public_key ?? default,
block = block,
params_ = params_, params_ = params_,
}); });
/// <summary>Leave a group call <para>See <a href="https://corefork.telegram.org/method/phone.leaveGroupCall"/></para> <para>Possible <see cref="RpcException"/> codes: 400 (<a href="https://corefork.telegram.org/method/phone.leaveGroupCall#possible-errors">details</a>)</para></summary> /// <summary>Leave a group call <para>See <a href="https://corefork.telegram.org/method/phone.leaveGroupCall"/></para> <para>Possible <see cref="RpcException"/> codes: 400 (<a href="https://corefork.telegram.org/method/phone.leaveGroupCall#possible-errors">details</a>)</para></summary>
/// <param name="call">The group call</param> /// <param name="call">The group call</param>
/// <param name="source">Your source ID</param> /// <param name="source">Your source ID</param>
public static Task<UpdatesBase> Phone_LeaveGroupCall(this Client client, InputGroupCall call, int source) public static Task<UpdatesBase> Phone_LeaveGroupCall(this Client client, InputGroupCallBase call, int source)
=> client.Invoke(new Phone_LeaveGroupCall => client.Invoke(new Phone_LeaveGroupCall
{ {
call = call, call = call,
@ -6651,7 +6651,7 @@ namespace TL
/// <summary>Invite a set of users to a group call. <para>See <a href="https://corefork.telegram.org/method/phone.inviteToGroupCall"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.inviteToGroupCall#possible-errors">details</a>)</para></summary> /// <summary>Invite a set of users to a group call. <para>See <a href="https://corefork.telegram.org/method/phone.inviteToGroupCall"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.inviteToGroupCall#possible-errors">details</a>)</para></summary>
/// <param name="call">The group call</param> /// <param name="call">The group call</param>
/// <param name="users">The users to invite.</param> /// <param name="users">The users to invite.</param>
public static Task<UpdatesBase> Phone_InviteToGroupCall(this Client client, InputGroupCall call, params InputUserBase[] users) public static Task<UpdatesBase> Phone_InviteToGroupCall(this Client client, InputGroupCallBase call, params InputUserBase[] users)
=> client.Invoke(new Phone_InviteToGroupCall => client.Invoke(new Phone_InviteToGroupCall
{ {
call = call, call = call,
@ -6660,7 +6660,7 @@ namespace TL
/// <summary>Terminate a group call <para>See <a href="https://corefork.telegram.org/method/phone.discardGroupCall"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.discardGroupCall#possible-errors">details</a>)</para></summary> /// <summary>Terminate a group call <para>See <a href="https://corefork.telegram.org/method/phone.discardGroupCall"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.discardGroupCall#possible-errors">details</a>)</para></summary>
/// <param name="call">The group call to terminate</param> /// <param name="call">The group call to terminate</param>
public static Task<UpdatesBase> Phone_DiscardGroupCall(this Client client, InputGroupCall call) public static Task<UpdatesBase> Phone_DiscardGroupCall(this Client client, InputGroupCallBase call)
=> client.Invoke(new Phone_DiscardGroupCall => client.Invoke(new Phone_DiscardGroupCall
{ {
call = call, call = call,
@ -6670,7 +6670,7 @@ namespace TL
/// <param name="reset_invite_hash">Invalidate existing invite links</param> /// <param name="reset_invite_hash">Invalidate existing invite links</param>
/// <param name="call">Group call</param> /// <param name="call">Group call</param>
/// <param name="join_muted">Whether all users will that join this group call are muted by default upon joining the group call</param> /// <param name="join_muted">Whether all users will that join this group call are muted by default upon joining the group call</param>
public static Task<UpdatesBase> Phone_ToggleGroupCallSettings(this Client client, InputGroupCall call, bool? join_muted = default, bool reset_invite_hash = false) public static Task<UpdatesBase> Phone_ToggleGroupCallSettings(this Client client, InputGroupCallBase call, bool? join_muted = default, bool reset_invite_hash = false)
=> client.Invoke(new Phone_ToggleGroupCallSettings => client.Invoke(new Phone_ToggleGroupCallSettings
{ {
flags = (Phone_ToggleGroupCallSettings.Flags)((join_muted != default ? 0x1 : 0) | (reset_invite_hash ? 0x2 : 0)), flags = (Phone_ToggleGroupCallSettings.Flags)((join_muted != default ? 0x1 : 0) | (reset_invite_hash ? 0x2 : 0)),
@ -6681,7 +6681,7 @@ namespace TL
/// <summary>Get info about a group call <para>See <a href="https://corefork.telegram.org/method/phone.getGroupCall"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.getGroupCall#possible-errors">details</a>)</para></summary> /// <summary>Get info about a group call <para>See <a href="https://corefork.telegram.org/method/phone.getGroupCall"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.getGroupCall#possible-errors">details</a>)</para></summary>
/// <param name="call">The group call</param> /// <param name="call">The group call</param>
/// <param name="limit">Maximum number of results to return, <a href="https://corefork.telegram.org/api/offsets">see pagination</a></param> /// <param name="limit">Maximum number of results to return, <a href="https://corefork.telegram.org/api/offsets">see pagination</a></param>
public static Task<Phone_GroupCall> Phone_GetGroupCall(this Client client, InputGroupCall call, int limit = int.MaxValue) public static Task<Phone_GroupCall> Phone_GetGroupCall(this Client client, InputGroupCallBase call, int limit = int.MaxValue)
=> client.Invoke(new Phone_GetGroupCall => client.Invoke(new Phone_GetGroupCall
{ {
call = call, call = call,
@ -6694,7 +6694,7 @@ namespace TL
/// <param name="sources">If specified, will fetch group participant info about the specified WebRTC source IDs</param> /// <param name="sources">If specified, will fetch group participant info about the specified WebRTC source IDs</param>
/// <param name="offset">Offset for results, taken from the <c>next_offset</c> field of <see cref="Phone_GroupParticipants"/>, initially an empty string. <br/>Note: if no more results are available, the method call will return an empty <c>next_offset</c>; thus, avoid providing the <c>next_offset</c> returned in <see cref="Phone_GroupParticipants"/> if it is empty, to avoid an infinite loop.</param> /// <param name="offset">Offset for results, taken from the <c>next_offset</c> field of <see cref="Phone_GroupParticipants"/>, initially an empty string. <br/>Note: if no more results are available, the method call will return an empty <c>next_offset</c>; thus, avoid providing the <c>next_offset</c> returned in <see cref="Phone_GroupParticipants"/> if it is empty, to avoid an infinite loop.</param>
/// <param name="limit">Maximum number of results to return, <a href="https://corefork.telegram.org/api/offsets">see pagination</a></param> /// <param name="limit">Maximum number of results to return, <a href="https://corefork.telegram.org/api/offsets">see pagination</a></param>
public static Task<Phone_GroupParticipants> Phone_GetGroupParticipants(this Client client, InputGroupCall call, InputPeer[] ids, int[] sources, string offset, int limit = int.MaxValue) public static Task<Phone_GroupParticipants> Phone_GetGroupParticipants(this Client client, InputGroupCallBase call, InputPeer[] ids, int[] sources, string offset, int limit = int.MaxValue)
=> client.Invoke(new Phone_GetGroupParticipants => client.Invoke(new Phone_GetGroupParticipants
{ {
call = call, call = call,
@ -6707,7 +6707,7 @@ namespace TL
/// <summary>Check whether the group call Server Forwarding Unit is currently receiving the streams with the specified WebRTC source IDs.<br/>Returns an intersection of the source IDs specified in <c>sources</c>, and the source IDs currently being forwarded by the SFU. <para>See <a href="https://corefork.telegram.org/method/phone.checkGroupCall"/></para> <para>Possible <see cref="RpcException"/> codes: 400 (<a href="https://corefork.telegram.org/method/phone.checkGroupCall#possible-errors">details</a>)</para></summary> /// <summary>Check whether the group call Server Forwarding Unit is currently receiving the streams with the specified WebRTC source IDs.<br/>Returns an intersection of the source IDs specified in <c>sources</c>, and the source IDs currently being forwarded by the SFU. <para>See <a href="https://corefork.telegram.org/method/phone.checkGroupCall"/></para> <para>Possible <see cref="RpcException"/> codes: 400 (<a href="https://corefork.telegram.org/method/phone.checkGroupCall#possible-errors">details</a>)</para></summary>
/// <param name="call">Group call</param> /// <param name="call">Group call</param>
/// <param name="sources">Source IDs</param> /// <param name="sources">Source IDs</param>
public static Task<int[]> Phone_CheckGroupCall(this Client client, InputGroupCall call, params int[] sources) public static Task<int[]> Phone_CheckGroupCall(this Client client, InputGroupCallBase call, params int[] sources)
=> client.Invoke(new Phone_CheckGroupCall => client.Invoke(new Phone_CheckGroupCall
{ {
call = call, call = call,
@ -6720,7 +6720,7 @@ namespace TL
/// <param name="call">The group call or livestream</param> /// <param name="call">The group call or livestream</param>
/// <param name="title">Recording title</param> /// <param name="title">Recording title</param>
/// <param name="video_portrait">If video stream recording is enabled, whether to record in portrait or landscape mode</param> /// <param name="video_portrait">If video stream recording is enabled, whether to record in portrait or landscape mode</param>
public static Task<UpdatesBase> Phone_ToggleGroupCallRecord(this Client client, InputGroupCall call, string title = null, bool? video_portrait = default, bool start = false, bool video = false) public static Task<UpdatesBase> Phone_ToggleGroupCallRecord(this Client client, InputGroupCallBase call, string title = null, bool? video_portrait = default, bool start = false, bool video = false)
=> client.Invoke(new Phone_ToggleGroupCallRecord => client.Invoke(new Phone_ToggleGroupCallRecord
{ {
flags = (Phone_ToggleGroupCallRecord.Flags)((title != null ? 0x2 : 0) | (video_portrait != default ? 0x4 : 0) | (start ? 0x1 : 0) | (video ? 0x4 : 0)), flags = (Phone_ToggleGroupCallRecord.Flags)((title != null ? 0x2 : 0) | (video_portrait != default ? 0x4 : 0) | (start ? 0x1 : 0) | (video ? 0x4 : 0)),
@ -6738,7 +6738,7 @@ namespace TL
/// <param name="video_stopped">Start or stop the video stream</param> /// <param name="video_stopped">Start or stop the video stream</param>
/// <param name="video_paused">Pause or resume the video stream</param> /// <param name="video_paused">Pause or resume the video stream</param>
/// <param name="presentation_paused">Pause or resume the screen sharing stream</param> /// <param name="presentation_paused">Pause or resume the screen sharing stream</param>
public static Task<UpdatesBase> Phone_EditGroupCallParticipant(this Client client, InputGroupCall call, InputPeer participant, bool? muted = default, int? volume = null, bool? raise_hand = default, bool? video_stopped = default, bool? video_paused = default, bool? presentation_paused = default) public static Task<UpdatesBase> Phone_EditGroupCallParticipant(this Client client, InputGroupCallBase call, InputPeer participant, bool? muted = default, int? volume = null, bool? raise_hand = default, bool? video_stopped = default, bool? video_paused = default, bool? presentation_paused = default)
=> client.Invoke(new Phone_EditGroupCallParticipant => client.Invoke(new Phone_EditGroupCallParticipant
{ {
flags = (Phone_EditGroupCallParticipant.Flags)((muted != default ? 0x1 : 0) | (volume != null ? 0x2 : 0) | (raise_hand != default ? 0x4 : 0) | (video_stopped != default ? 0x8 : 0) | (video_paused != default ? 0x10 : 0) | (presentation_paused != default ? 0x20 : 0)), flags = (Phone_EditGroupCallParticipant.Flags)((muted != default ? 0x1 : 0) | (volume != null ? 0x2 : 0) | (raise_hand != default ? 0x4 : 0) | (video_stopped != default ? 0x8 : 0) | (video_paused != default ? 0x10 : 0) | (presentation_paused != default ? 0x20 : 0)),
@ -6755,7 +6755,7 @@ namespace TL
/// <summary>Edit the title of a group call or livestream <para>See <a href="https://corefork.telegram.org/method/phone.editGroupCallTitle"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.editGroupCallTitle#possible-errors">details</a>)</para></summary> /// <summary>Edit the title of a group call or livestream <para>See <a href="https://corefork.telegram.org/method/phone.editGroupCallTitle"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.editGroupCallTitle#possible-errors">details</a>)</para></summary>
/// <param name="call">Group call</param> /// <param name="call">Group call</param>
/// <param name="title">New title</param> /// <param name="title">New title</param>
public static Task<UpdatesBase> Phone_EditGroupCallTitle(this Client client, InputGroupCall call, string title) public static Task<UpdatesBase> Phone_EditGroupCallTitle(this Client client, InputGroupCallBase call, string title)
=> client.Invoke(new Phone_EditGroupCallTitle => client.Invoke(new Phone_EditGroupCallTitle
{ {
call = call, call = call,
@ -6773,7 +6773,7 @@ namespace TL
/// <summary>Get an <a href="https://corefork.telegram.org/api/links#video-chat-livestream-links">invite link</a> for a group call or livestream <para>See <a href="https://corefork.telegram.org/method/phone.exportGroupCallInvite"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.exportGroupCallInvite#possible-errors">details</a>)</para></summary> /// <summary>Get an <a href="https://corefork.telegram.org/api/links#video-chat-livestream-links">invite link</a> for a group call or livestream <para>See <a href="https://corefork.telegram.org/method/phone.exportGroupCallInvite"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.exportGroupCallInvite#possible-errors">details</a>)</para></summary>
/// <param name="can_self_unmute">For livestreams or muted group chats, if set, users that join using this link will be able to speak without explicitly requesting permission by (for example by raising their hand).</param> /// <param name="can_self_unmute">For livestreams or muted group chats, if set, users that join using this link will be able to speak without explicitly requesting permission by (for example by raising their hand).</param>
/// <param name="call">The group call</param> /// <param name="call">The group call</param>
public static Task<Phone_ExportedGroupCallInvite> Phone_ExportGroupCallInvite(this Client client, InputGroupCall call, bool can_self_unmute = false) public static Task<Phone_ExportedGroupCallInvite> Phone_ExportGroupCallInvite(this Client client, InputGroupCallBase call, bool can_self_unmute = false)
=> client.Invoke(new Phone_ExportGroupCallInvite => client.Invoke(new Phone_ExportGroupCallInvite
{ {
flags = (Phone_ExportGroupCallInvite.Flags)(can_self_unmute ? 0x1 : 0), flags = (Phone_ExportGroupCallInvite.Flags)(can_self_unmute ? 0x1 : 0),
@ -6783,7 +6783,7 @@ namespace TL
/// <summary>Subscribe or unsubscribe to a scheduled group call <para>See <a href="https://corefork.telegram.org/method/phone.toggleGroupCallStartSubscription"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.toggleGroupCallStartSubscription#possible-errors">details</a>)</para></summary> /// <summary>Subscribe or unsubscribe to a scheduled group call <para>See <a href="https://corefork.telegram.org/method/phone.toggleGroupCallStartSubscription"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.toggleGroupCallStartSubscription#possible-errors">details</a>)</para></summary>
/// <param name="call">Scheduled group call</param> /// <param name="call">Scheduled group call</param>
/// <param name="subscribed">Enable or disable subscription</param> /// <param name="subscribed">Enable or disable subscription</param>
public static Task<UpdatesBase> Phone_ToggleGroupCallStartSubscription(this Client client, InputGroupCall call, bool subscribed) public static Task<UpdatesBase> Phone_ToggleGroupCallStartSubscription(this Client client, InputGroupCallBase call, bool subscribed)
=> client.Invoke(new Phone_ToggleGroupCallStartSubscription => client.Invoke(new Phone_ToggleGroupCallStartSubscription
{ {
call = call, call = call,
@ -6792,7 +6792,7 @@ namespace TL
/// <summary>Start a scheduled group call. <para>See <a href="https://corefork.telegram.org/method/phone.startScheduledGroupCall"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.startScheduledGroupCall#possible-errors">details</a>)</para></summary> /// <summary>Start a scheduled group call. <para>See <a href="https://corefork.telegram.org/method/phone.startScheduledGroupCall"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.startScheduledGroupCall#possible-errors">details</a>)</para></summary>
/// <param name="call">The scheduled group call</param> /// <param name="call">The scheduled group call</param>
public static Task<UpdatesBase> Phone_StartScheduledGroupCall(this Client client, InputGroupCall call) public static Task<UpdatesBase> Phone_StartScheduledGroupCall(this Client client, InputGroupCallBase call)
=> client.Invoke(new Phone_StartScheduledGroupCall => client.Invoke(new Phone_StartScheduledGroupCall
{ {
call = call, call = call,
@ -6811,7 +6811,7 @@ namespace TL
/// <summary>Start screen sharing in a call <para>See <a href="https://corefork.telegram.org/method/phone.joinGroupCallPresentation"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.joinGroupCallPresentation#possible-errors">details</a>)</para></summary> /// <summary>Start screen sharing in a call <para>See <a href="https://corefork.telegram.org/method/phone.joinGroupCallPresentation"/></para> <para>Possible <see cref="RpcException"/> codes: 400,403 (<a href="https://corefork.telegram.org/method/phone.joinGroupCallPresentation#possible-errors">details</a>)</para></summary>
/// <param name="call">The group call</param> /// <param name="call">The group call</param>
/// <param name="params_">WebRTC parameters</param> /// <param name="params_">WebRTC parameters</param>
public static Task<UpdatesBase> Phone_JoinGroupCallPresentation(this Client client, InputGroupCall call, DataJSON params_) public static Task<UpdatesBase> Phone_JoinGroupCallPresentation(this Client client, InputGroupCallBase call, DataJSON params_)
=> client.Invoke(new Phone_JoinGroupCallPresentation => client.Invoke(new Phone_JoinGroupCallPresentation
{ {
call = call, call = call,
@ -6820,7 +6820,7 @@ namespace TL
/// <summary>Stop screen sharing in a group call <para>See <a href="https://corefork.telegram.org/method/phone.leaveGroupCallPresentation"/></para> <para>Possible <see cref="RpcException"/> codes: 400 (<a href="https://corefork.telegram.org/method/phone.leaveGroupCallPresentation#possible-errors">details</a>)</para></summary> /// <summary>Stop screen sharing in a group call <para>See <a href="https://corefork.telegram.org/method/phone.leaveGroupCallPresentation"/></para> <para>Possible <see cref="RpcException"/> codes: 400 (<a href="https://corefork.telegram.org/method/phone.leaveGroupCallPresentation#possible-errors">details</a>)</para></summary>
/// <param name="call">The group call</param> /// <param name="call">The group call</param>
public static Task<UpdatesBase> Phone_LeaveGroupCallPresentation(this Client client, InputGroupCall call) public static Task<UpdatesBase> Phone_LeaveGroupCallPresentation(this Client client, InputGroupCallBase call)
=> client.Invoke(new Phone_LeaveGroupCallPresentation => client.Invoke(new Phone_LeaveGroupCallPresentation
{ {
call = call, call = call,
@ -6828,7 +6828,7 @@ namespace TL
/// <summary>Get info about RTMP streams in a group call or livestream.<br/>This method should be invoked to the same group/channel-related DC used for <a href="https://corefork.telegram.org/api/files#downloading-files">downloading livestream chunks</a>.<br/>As usual, the media DC is preferred, if available. <para>See <a href="https://corefork.telegram.org/method/phone.getGroupCallStreamChannels"/></para> <para>Possible <see cref="RpcException"/> codes: 400 (<a href="https://corefork.telegram.org/method/phone.getGroupCallStreamChannels#possible-errors">details</a>)</para></summary> /// <summary>Get info about RTMP streams in a group call or livestream.<br/>This method should be invoked to the same group/channel-related DC used for <a href="https://corefork.telegram.org/api/files#downloading-files">downloading livestream chunks</a>.<br/>As usual, the media DC is preferred, if available. <para>See <a href="https://corefork.telegram.org/method/phone.getGroupCallStreamChannels"/></para> <para>Possible <see cref="RpcException"/> codes: 400 (<a href="https://corefork.telegram.org/method/phone.getGroupCallStreamChannels#possible-errors">details</a>)</para></summary>
/// <param name="call">Group call or livestream</param> /// <param name="call">Group call or livestream</param>
public static Task<Phone_GroupCallStreamChannels> Phone_GetGroupCallStreamChannels(this Client client, InputGroupCall call) public static Task<Phone_GroupCallStreamChannels> Phone_GetGroupCallStreamChannels(this Client client, InputGroupCallBase call)
=> client.Invoke(new Phone_GetGroupCallStreamChannels => client.Invoke(new Phone_GetGroupCallStreamChannels
{ {
call = call, call = call,
@ -6855,11 +6855,58 @@ namespace TL
}); });
/// <summary><para>See <a href="https://corefork.telegram.org/method/phone.createConferenceCall"/></para></summary> /// <summary><para>See <a href="https://corefork.telegram.org/method/phone.createConferenceCall"/></para></summary>
public static Task<Phone_PhoneCall> Phone_CreateConferenceCall(this Client client, InputPhoneCall peer, long key_fingerprint) public static Task<UpdatesBase> Phone_CreateConferenceCall(this Client client, int random_id, Int256? public_key = null, byte[] block = null, DataJSON params_ = null, bool muted = false, bool video_stopped = false, bool join = false)
=> client.Invoke(new Phone_CreateConferenceCall => client.Invoke(new Phone_CreateConferenceCall
{ {
peer = peer, flags = (Phone_CreateConferenceCall.Flags)((public_key != null ? 0x8 : 0) | (block != null ? 0x8 : 0) | (params_ != null ? 0x8 : 0) | (muted ? 0x1 : 0) | (video_stopped ? 0x4 : 0) | (join ? 0x8 : 0)),
key_fingerprint = key_fingerprint, random_id = random_id,
public_key = public_key ?? default,
block = block,
params_ = params_,
});
/// <summary><para>See <a href="https://corefork.telegram.org/method/phone.deleteConferenceCallParticipants"/></para></summary>
public static Task<UpdatesBase> Phone_DeleteConferenceCallParticipants(this Client client, InputGroupCallBase call, long[] ids, byte[] block, bool only_left = false, bool kick = false)
=> client.Invoke(new Phone_DeleteConferenceCallParticipants
{
flags = (Phone_DeleteConferenceCallParticipants.Flags)((only_left ? 0x1 : 0) | (kick ? 0x2 : 0)),
call = call,
ids = ids,
block = block,
});
/// <summary><para>See <a href="https://corefork.telegram.org/method/phone.sendConferenceCallBroadcast"/></para></summary>
public static Task<UpdatesBase> Phone_SendConferenceCallBroadcast(this Client client, InputGroupCallBase call, byte[] block)
=> client.Invoke(new Phone_SendConferenceCallBroadcast
{
call = call,
block = block,
});
/// <summary><para>See <a href="https://corefork.telegram.org/method/phone.inviteConferenceCallParticipant"/></para></summary>
public static Task<UpdatesBase> Phone_InviteConferenceCallParticipant(this Client client, InputGroupCallBase call, InputUserBase user_id, bool video = false)
=> client.Invoke(new Phone_InviteConferenceCallParticipant
{
flags = (Phone_InviteConferenceCallParticipant.Flags)(video ? 0x1 : 0),
call = call,
user_id = user_id,
});
/// <summary><para>See <a href="https://corefork.telegram.org/method/phone.declineConferenceCallInvite"/></para></summary>
public static Task<UpdatesBase> Phone_DeclineConferenceCallInvite(this Client client, int msg_id)
=> client.Invoke(new Phone_DeclineConferenceCallInvite
{
msg_id = msg_id,
});
/// <summary><para>See <a href="https://corefork.telegram.org/method/phone.getGroupCallChainBlocks"/></para></summary>
public static Task<UpdatesBase> Phone_GetGroupCallChainBlocks(this Client client, InputGroupCallBase call, int sub_chain_id, int offset = default, int limit = int.MaxValue)
=> client.Invoke(new Phone_GetGroupCallChainBlocks
{
call = call,
sub_chain_id = sub_chain_id,
offset = offset,
limit = limit,
}); });
/// <summary>Get localization pack strings <para>See <a href="https://corefork.telegram.org/method/langpack.getLangPack"/></para> <para>Possible <see cref="RpcException"/> codes: 400 (<a href="https://corefork.telegram.org/method/langpack.getLangPack#possible-errors">details</a>)</para></summary> /// <summary>Get localization pack strings <para>See <a href="https://corefork.telegram.org/method/langpack.getLangPack"/></para> <para>Possible <see cref="RpcException"/> codes: 400 (<a href="https://corefork.telegram.org/method/langpack.getLangPack#possible-errors">details</a>)</para></summary>
@ -12964,12 +13011,11 @@ namespace TL.Methods
[TLDef(0x55451FA9)] [TLDef(0x55451FA9)]
public sealed partial class Phone_GetCallConfig : IMethod<DataJSON> { } public sealed partial class Phone_GetCallConfig : IMethod<DataJSON> { }
[TLDef(0xA6C4600C)] [TLDef(0x42FF96ED)]
public sealed partial class Phone_RequestCall : IMethod<Phone_PhoneCall> public sealed partial class Phone_RequestCall : IMethod<Phone_PhoneCall>
{ {
public Flags flags; public Flags flags;
public InputUserBase user_id; public InputUserBase user_id;
[IfFlag(1)] public InputGroupCall conference_call;
public int random_id; public int random_id;
public byte[] g_a_hash; public byte[] g_a_hash;
public PhoneCallProtocol protocol; public PhoneCallProtocol protocol;
@ -12977,7 +13023,6 @@ namespace TL.Methods
[Flags] public enum Flags : uint [Flags] public enum Flags : uint
{ {
video = 0x1, video = 0x1,
has_conference_call = 0x2,
} }
} }
@ -13064,14 +13109,15 @@ namespace TL.Methods
} }
} }
[TLDef(0xD61E1DF3)] [TLDef(0x8FB53057)]
public sealed partial class Phone_JoinGroupCall : IMethod<UpdatesBase> public sealed partial class Phone_JoinGroupCall : IMethod<UpdatesBase>
{ {
public Flags flags; public Flags flags;
public InputGroupCall call; public InputGroupCallBase call;
public InputPeer join_as; public InputPeer join_as;
[IfFlag(1)] public string invite_hash; [IfFlag(1)] public string invite_hash;
[IfFlag(3)] public long key_fingerprint; [IfFlag(3)] public Int256 public_key;
[IfFlag(3)] public byte[] block;
public DataJSON params_; public DataJSON params_;
[Flags] public enum Flags : uint [Flags] public enum Flags : uint
@ -13079,35 +13125,35 @@ namespace TL.Methods
muted = 0x1, muted = 0x1,
has_invite_hash = 0x2, has_invite_hash = 0x2,
video_stopped = 0x4, video_stopped = 0x4,
has_key_fingerprint = 0x8, has_public_key = 0x8,
} }
} }
[TLDef(0x500377F9)] [TLDef(0x500377F9)]
public sealed partial class Phone_LeaveGroupCall : IMethod<UpdatesBase> public sealed partial class Phone_LeaveGroupCall : IMethod<UpdatesBase>
{ {
public InputGroupCall call; public InputGroupCallBase call;
public int source; public int source;
} }
[TLDef(0x7B393160)] [TLDef(0x7B393160)]
public sealed partial class Phone_InviteToGroupCall : IMethod<UpdatesBase> public sealed partial class Phone_InviteToGroupCall : IMethod<UpdatesBase>
{ {
public InputGroupCall call; public InputGroupCallBase call;
public InputUserBase[] users; public InputUserBase[] users;
} }
[TLDef(0x7A777135)] [TLDef(0x7A777135)]
public sealed partial class Phone_DiscardGroupCall : IMethod<UpdatesBase> public sealed partial class Phone_DiscardGroupCall : IMethod<UpdatesBase>
{ {
public InputGroupCall call; public InputGroupCallBase call;
} }
[TLDef(0x74BBB43D)] [TLDef(0x74BBB43D)]
public sealed partial class Phone_ToggleGroupCallSettings : IMethod<UpdatesBase> public sealed partial class Phone_ToggleGroupCallSettings : IMethod<UpdatesBase>
{ {
public Flags flags; public Flags flags;
public InputGroupCall call; public InputGroupCallBase call;
[IfFlag(0)] public bool join_muted; [IfFlag(0)] public bool join_muted;
[Flags] public enum Flags : uint [Flags] public enum Flags : uint
@ -13120,14 +13166,14 @@ namespace TL.Methods
[TLDef(0x041845DB)] [TLDef(0x041845DB)]
public sealed partial class Phone_GetGroupCall : IMethod<Phone_GroupCall> public sealed partial class Phone_GetGroupCall : IMethod<Phone_GroupCall>
{ {
public InputGroupCall call; public InputGroupCallBase call;
public int limit; public int limit;
} }
[TLDef(0xC558D8AB)] [TLDef(0xC558D8AB)]
public sealed partial class Phone_GetGroupParticipants : IMethod<Phone_GroupParticipants> public sealed partial class Phone_GetGroupParticipants : IMethod<Phone_GroupParticipants>
{ {
public InputGroupCall call; public InputGroupCallBase call;
public InputPeer[] ids; public InputPeer[] ids;
public int[] sources; public int[] sources;
public string offset; public string offset;
@ -13137,7 +13183,7 @@ namespace TL.Methods
[TLDef(0xB59CF977)] [TLDef(0xB59CF977)]
public sealed partial class Phone_CheckGroupCall : IMethod<int[]> public sealed partial class Phone_CheckGroupCall : IMethod<int[]>
{ {
public InputGroupCall call; public InputGroupCallBase call;
public int[] sources; public int[] sources;
} }
@ -13145,7 +13191,7 @@ namespace TL.Methods
public sealed partial class Phone_ToggleGroupCallRecord : IMethod<UpdatesBase> public sealed partial class Phone_ToggleGroupCallRecord : IMethod<UpdatesBase>
{ {
public Flags flags; public Flags flags;
public InputGroupCall call; public InputGroupCallBase call;
[IfFlag(1)] public string title; [IfFlag(1)] public string title;
[IfFlag(2)] public bool video_portrait; [IfFlag(2)] public bool video_portrait;
@ -13161,7 +13207,7 @@ namespace TL.Methods
public sealed partial class Phone_EditGroupCallParticipant : IMethod<UpdatesBase> public sealed partial class Phone_EditGroupCallParticipant : IMethod<UpdatesBase>
{ {
public Flags flags; public Flags flags;
public InputGroupCall call; public InputGroupCallBase call;
public InputPeer participant; public InputPeer participant;
[IfFlag(0)] public bool muted; [IfFlag(0)] public bool muted;
[IfFlag(1)] public int volume; [IfFlag(1)] public int volume;
@ -13184,7 +13230,7 @@ namespace TL.Methods
[TLDef(0x1CA6AC0A)] [TLDef(0x1CA6AC0A)]
public sealed partial class Phone_EditGroupCallTitle : IMethod<UpdatesBase> public sealed partial class Phone_EditGroupCallTitle : IMethod<UpdatesBase>
{ {
public InputGroupCall call; public InputGroupCallBase call;
public string title; public string title;
} }
@ -13198,7 +13244,7 @@ namespace TL.Methods
public sealed partial class Phone_ExportGroupCallInvite : IMethod<Phone_ExportedGroupCallInvite> public sealed partial class Phone_ExportGroupCallInvite : IMethod<Phone_ExportedGroupCallInvite>
{ {
public Flags flags; public Flags flags;
public InputGroupCall call; public InputGroupCallBase call;
[Flags] public enum Flags : uint [Flags] public enum Flags : uint
{ {
@ -13209,14 +13255,14 @@ namespace TL.Methods
[TLDef(0x219C34E6)] [TLDef(0x219C34E6)]
public sealed partial class Phone_ToggleGroupCallStartSubscription : IMethod<UpdatesBase> public sealed partial class Phone_ToggleGroupCallStartSubscription : IMethod<UpdatesBase>
{ {
public InputGroupCall call; public InputGroupCallBase call;
public bool subscribed; public bool subscribed;
} }
[TLDef(0x5680E342)] [TLDef(0x5680E342)]
public sealed partial class Phone_StartScheduledGroupCall : IMethod<UpdatesBase> public sealed partial class Phone_StartScheduledGroupCall : IMethod<UpdatesBase>
{ {
public InputGroupCall call; public InputGroupCallBase call;
} }
[TLDef(0x575E1F8C)] [TLDef(0x575E1F8C)]
@ -13229,20 +13275,20 @@ namespace TL.Methods
[TLDef(0xCBEA6BC4)] [TLDef(0xCBEA6BC4)]
public sealed partial class Phone_JoinGroupCallPresentation : IMethod<UpdatesBase> public sealed partial class Phone_JoinGroupCallPresentation : IMethod<UpdatesBase>
{ {
public InputGroupCall call; public InputGroupCallBase call;
public DataJSON params_; public DataJSON params_;
} }
[TLDef(0x1C50D144)] [TLDef(0x1C50D144)]
public sealed partial class Phone_LeaveGroupCallPresentation : IMethod<UpdatesBase> public sealed partial class Phone_LeaveGroupCallPresentation : IMethod<UpdatesBase>
{ {
public InputGroupCall call; public InputGroupCallBase call;
} }
[TLDef(0x1AB21940)] [TLDef(0x1AB21940)]
public sealed partial class Phone_GetGroupCallStreamChannels : IMethod<Phone_GroupCallStreamChannels> public sealed partial class Phone_GetGroupCallStreamChannels : IMethod<Phone_GroupCallStreamChannels>
{ {
public InputGroupCall call; public InputGroupCallBase call;
} }
[TLDef(0xDEB3ABBF)] [TLDef(0xDEB3ABBF)]
@ -13259,11 +13305,71 @@ namespace TL.Methods
public InputFileBase file; public InputFileBase file;
} }
[TLDef(0xDFC909AB)] [TLDef(0x7D0444BB)]
public sealed partial class Phone_CreateConferenceCall : IMethod<Phone_PhoneCall> public sealed partial class Phone_CreateConferenceCall : IMethod<UpdatesBase>
{ {
public InputPhoneCall peer; public Flags flags;
public long key_fingerprint; public int random_id;
[IfFlag(3)] public Int256 public_key;
[IfFlag(3)] public byte[] block;
[IfFlag(3)] public DataJSON params_;
[Flags] public enum Flags : uint
{
muted = 0x1,
video_stopped = 0x4,
join = 0x8,
}
}
[TLDef(0x8CA60525)]
public sealed partial class Phone_DeleteConferenceCallParticipants : IMethod<UpdatesBase>
{
public Flags flags;
public InputGroupCallBase call;
public long[] ids;
public byte[] block;
[Flags] public enum Flags : uint
{
only_left = 0x1,
kick = 0x2,
}
}
[TLDef(0xC6701900)]
public sealed partial class Phone_SendConferenceCallBroadcast : IMethod<UpdatesBase>
{
public InputGroupCallBase call;
public byte[] block;
}
[TLDef(0xBCF22685)]
public sealed partial class Phone_InviteConferenceCallParticipant : IMethod<UpdatesBase>
{
public Flags flags;
public InputGroupCallBase call;
public InputUserBase user_id;
[Flags] public enum Flags : uint
{
video = 0x1,
}
}
[TLDef(0x3C479971)]
public sealed partial class Phone_DeclineConferenceCallInvite : IMethod<UpdatesBase>
{
public int msg_id;
}
[TLDef(0xEE9F88A6)]
public sealed partial class Phone_GetGroupCallChainBlocks : IMethod<UpdatesBase>
{
public InputGroupCallBase call;
public int sub_chain_id;
public int offset;
public int limit;
} }
[TLDef(0xF2F2330A)] [TLDef(0xF2F2330A)]

View file

@ -6,7 +6,7 @@ namespace TL
{ {
public static partial class Layer public static partial class Layer
{ {
public const int Version = 201; // fetched 20/04/2025 01:20:15 public const int Version = 202; // fetched 01/05/2025 10:01:40
internal const int SecretChats = 144; internal const int SecretChats = 144;
internal const int MTProto2 = 73; internal const int MTProto2 = 73;
internal const uint VectorCtor = 0x1CB5C415; internal const uint VectorCtor = 0x1CB5C415;
@ -217,6 +217,7 @@ namespace TL
[0xACDFCB81] = typeof(MessageActionStarGiftUnique), [0xACDFCB81] = typeof(MessageActionStarGiftUnique),
[0xAC1F1FCD] = typeof(MessageActionPaidMessagesRefunded), [0xAC1F1FCD] = typeof(MessageActionPaidMessagesRefunded),
[0xBCD71419] = typeof(MessageActionPaidMessagesPrice), [0xBCD71419] = typeof(MessageActionPaidMessagesPrice),
[0x2FFE2F7A] = typeof(MessageActionConferenceCall),
[0xD58A08C6] = typeof(Dialog), [0xD58A08C6] = typeof(Dialog),
[0x71BD134C] = typeof(DialogFolder), [0x71BD134C] = typeof(DialogFolder),
[0x2331B22D] = typeof(PhotoEmpty), [0x2331B22D] = typeof(PhotoEmpty),
@ -424,6 +425,7 @@ namespace TL
[0x283BD312] = typeof(UpdateBotPurchasedPaidMedia), [0x283BD312] = typeof(UpdateBotPurchasedPaidMedia),
[0x8B725FCE] = typeof(UpdatePaidReactionPrivacy), [0x8B725FCE] = typeof(UpdatePaidReactionPrivacy),
[0x504AA18F] = typeof(UpdateSentPhoneCode), [0x504AA18F] = typeof(UpdateSentPhoneCode),
[0xA477288F] = typeof(UpdateGroupCallChainBlocks),
[0xA56C2A3E] = typeof(Updates_State), [0xA56C2A3E] = typeof(Updates_State),
[0x5D75A138] = typeof(Updates_DifferenceEmpty), [0x5D75A138] = typeof(Updates_DifferenceEmpty),
[0x00F49CA0] = typeof(Updates_Difference), [0x00F49CA0] = typeof(Updates_Difference),
@ -756,7 +758,7 @@ namespace TL
[0xE095C1A0] = typeof(PhoneCallDiscardReasonDisconnect), [0xE095C1A0] = typeof(PhoneCallDiscardReasonDisconnect),
[0x57ADC690] = typeof(PhoneCallDiscardReasonHangup), [0x57ADC690] = typeof(PhoneCallDiscardReasonHangup),
[0xFAF7E8C9] = typeof(PhoneCallDiscardReasonBusy), [0xFAF7E8C9] = typeof(PhoneCallDiscardReasonBusy),
[0xAFE2B839] = typeof(PhoneCallDiscardReasonAllowGroupCall), [0x9FBBF1F7] = typeof(PhoneCallDiscardReasonMigrateConferenceCall),
[0x7D748D04] = typeof(DataJSON), [0x7D748D04] = typeof(DataJSON),
[0xCB296BF8] = typeof(LabeledPrice), [0xCB296BF8] = typeof(LabeledPrice),
[0x049EE584] = typeof(Invoice), [0x049EE584] = typeof(Invoice),
@ -789,11 +791,11 @@ namespace TL
[0x32DA9E9C] = typeof(InputStickerSetItem), [0x32DA9E9C] = typeof(InputStickerSetItem),
[0x1E36FDED] = typeof(InputPhoneCall), [0x1E36FDED] = typeof(InputPhoneCall),
[0x5366C915] = typeof(PhoneCallEmpty), [0x5366C915] = typeof(PhoneCallEmpty),
[0xEED42858] = typeof(PhoneCallWaiting), [0xC5226F17] = typeof(PhoneCallWaiting),
[0x45361C63] = typeof(PhoneCallRequested), [0x14B0ED0C] = typeof(PhoneCallRequested),
[0x22FD7181] = typeof(PhoneCallAccepted), [0x3660C311] = typeof(PhoneCallAccepted),
[0x3BA5940C] = typeof(PhoneCall), [0x30535AF5] = typeof(PhoneCall),
[0xF9D25503] = typeof(PhoneCallDiscarded), [0x50CA4DE1] = typeof(PhoneCallDiscarded),
[0x9CC123C7] = typeof(PhoneConnection), [0x9CC123C7] = typeof(PhoneConnection),
[0x635FE375] = typeof(PhoneConnectionWebrtc), [0x635FE375] = typeof(PhoneConnectionWebrtc),
[0xFC878FC8] = typeof(PhoneCallProtocol), [0xFC878FC8] = typeof(PhoneCallProtocol),
@ -1031,8 +1033,10 @@ namespace TL
[0xE8FD8014] = typeof(PeerBlocked), [0xE8FD8014] = typeof(PeerBlocked),
[0x7FE91C14] = typeof(Stats_MessageStats), [0x7FE91C14] = typeof(Stats_MessageStats),
[0x7780BCB4] = typeof(GroupCallDiscarded), [0x7780BCB4] = typeof(GroupCallDiscarded),
[0xCDF8D3E3] = typeof(GroupCall), [0x553B0BA1] = typeof(GroupCall),
[0xD8AA840F] = typeof(InputGroupCall), [0xD8AA840F] = typeof(InputGroupCall),
[0xFE06823F] = typeof(InputGroupCallSlug),
[0x8C10603F] = typeof(InputGroupCallInviteMessage),
[0xEBA636FE] = typeof(GroupCallParticipant), [0xEBA636FE] = typeof(GroupCallParticipant),
[0x9E727AAD] = typeof(Phone_GroupCall), [0x9E727AAD] = typeof(Phone_GroupCall),
[0xF47751B6] = typeof(Phone_GroupParticipants), [0xF47751B6] = typeof(Phone_GroupParticipants),

View file

@ -13,7 +13,7 @@
<PackageId>WTelegramClient</PackageId> <PackageId>WTelegramClient</PackageId>
<Version>0.0.0</Version> <Version>0.0.0</Version>
<Authors>Wizou</Authors> <Authors>Wizou</Authors>
<Description>Telegram Client API (MTProto) library written 100% in C# and .NET Standard | Latest API layer: 201 <Description>Telegram Client API (MTProto) library written 100% in C# and .NET Standard | Latest API layer: 202
Release Notes: Release Notes:
$(ReleaseNotes.Replace("|", "%0D%0A").Replace(" - ","%0D%0A- ").Replace(" ", "%0D%0A%0D%0A"))</Description> $(ReleaseNotes.Replace("|", "%0D%0A").Replace(" - ","%0D%0A- ").Replace(" ", "%0D%0A%0D%0A"))</Description>