You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1837 lines
44 KiB
1837 lines
44 KiB
// Code generated by gotdgen, DO NOT EDIT. |
|
|
|
package tg |
|
|
|
import ( |
|
"context" |
|
"errors" |
|
"fmt" |
|
"sort" |
|
"strings" |
|
|
|
"go.uber.org/multierr" |
|
|
|
"github.com/gotd/td/bin" |
|
"github.com/gotd/td/tdjson" |
|
"github.com/gotd/td/tdp" |
|
"github.com/gotd/td/tgerr" |
|
) |
|
|
|
// No-op definition for keeping imports. |
|
var ( |
|
_ = bin.Buffer{} |
|
_ = context.Background() |
|
_ = fmt.Stringer(nil) |
|
_ = strings.Builder{} |
|
_ = errors.Is |
|
_ = multierr.AppendInto |
|
_ = sort.Ints |
|
_ = tdp.Format |
|
_ = tgerr.Error{} |
|
_ = tdjson.Encoder{} |
|
) |
|
|
|
// Config represents TL type `config#330b4067`. |
|
// Current configuration |
|
// |
|
// See https://core.telegram.org/constructor/config for reference. |
|
type Config struct { |
|
// Flags, see TL conditional fields¹ |
|
// |
|
// Links: |
|
// 1) https://core.telegram.org/mtproto/TL-combinators#conditional-fields |
|
Flags bin.Fields |
|
// Whether phone calls can be used |
|
PhonecallsEnabled bool |
|
// Whether the client should use P2P by default for phone calls with contacts |
|
DefaultP2PContacts bool |
|
// Whether the client should preload featured stickers |
|
PreloadFeaturedStickers bool |
|
// Whether the client should ignore phone entities¹ |
|
// |
|
// Links: |
|
// 1) https://core.telegram.org/api/entities |
|
IgnorePhoneEntities bool |
|
// Whether incoming private messages can be deleted for both participants |
|
RevokePmInbox bool |
|
// Indicates that telegram is probably censored by governments/ISPs in the current region |
|
BlockedMode bool |
|
// Whether pfs¹ was used |
|
// |
|
// Links: |
|
// 1) https://core.telegram.org/api/pfs |
|
PFSEnabled bool |
|
// Current date at the server |
|
Date int |
|
// Expiration date of this config: when it expires it'll have to be refetched using help |
|
// getConfig¹ |
|
// |
|
// Links: |
|
// 1) https://core.telegram.org/method/help.getConfig |
|
Expires int |
|
// Whether we're connected to the test DCs |
|
TestMode bool |
|
// ID of the DC that returned the reply |
|
ThisDC int |
|
// DC IP list |
|
DCOptions []DCOption |
|
// Domain name for fetching encrypted DC list from DNS TXT record |
|
DCTxtDomainName string |
|
// Maximum member count for normal groups¹ |
|
// |
|
// Links: |
|
// 1) https://core.telegram.org/api/channel |
|
ChatSizeMax int |
|
// Maximum member count for supergroups¹ |
|
// |
|
// Links: |
|
// 1) https://core.telegram.org/api/channel |
|
MegagroupSizeMax int |
|
// Maximum number of messages that can be forwarded at once using messages |
|
// forwardMessages¹. |
|
// |
|
// Links: |
|
// 1) https://core.telegram.org/method/messages.forwardMessages |
|
ForwardedCountMax int |
|
// The client should update its online status¹ every N milliseconds |
|
// |
|
// Links: |
|
// 1) https://core.telegram.org/method/account.updateStatus |
|
OnlineUpdatePeriodMs int |
|
// Delay before offline status needs to be sent to the server |
|
OfflineBlurTimeoutMs int |
|
// Time without any user activity after which it should be treated offline |
|
OfflineIdleTimeoutMs int |
|
// If we are offline, but were online from some other client in last |
|
// online_cloud_timeout_ms milliseconds after we had gone offline, then delay offline |
|
// notification for notify_cloud_delay_ms milliseconds. |
|
OnlineCloudTimeoutMs int |
|
// If we are offline, but online from some other client then delay sending the offline |
|
// notification for notify_cloud_delay_ms milliseconds. |
|
NotifyCloudDelayMs int |
|
// If some other client is online, then delay notification for |
|
// notification_default_delay_ms milliseconds |
|
NotifyDefaultDelayMs int |
|
// Not for client use |
|
PushChatPeriodMs int |
|
// Not for client use |
|
PushChatLimit int |
|
// Maximum count of saved gifs |
|
SavedGifsLimit int |
|
// Only messages with age smaller than the one specified can be edited |
|
EditTimeLimit int |
|
// Only channel/supergroup messages with age smaller than the specified can be deleted |
|
RevokeTimeLimit int |
|
// Only private messages with age smaller than the specified can be deleted |
|
RevokePmTimeLimit int |
|
// Exponential decay rate for computing top peer rating¹ |
|
// |
|
// Links: |
|
// 1) https://core.telegram.org/api/top-rating |
|
RatingEDecay int |
|
// Maximum number of recent stickers |
|
StickersRecentLimit int |
|
// Maximum number of faved stickers |
|
StickersFavedLimit int |
|
// Indicates that round videos (video notes) and voice messages sent in channels and |
|
// older than the specified period must be marked as read |
|
ChannelsReadMediaPeriod int |
|
// Temporary passport¹ sessions |
|
// |
|
// Links: |
|
// 1) https://core.telegram.org/passport |
|
// |
|
// Use SetTmpSessions and GetTmpSessions helpers. |
|
TmpSessions int |
|
// Maximum count of pinned dialogs |
|
PinnedDialogsCountMax int |
|
// Maximum count of dialogs per folder |
|
PinnedInfolderCountMax int |
|
// Maximum allowed outgoing ring time in VoIP calls: if the user we're calling doesn't |
|
// reply within the specified time (in milliseconds), we should hang up the call |
|
CallReceiveTimeoutMs int |
|
// Maximum allowed incoming ring time in VoIP calls: if the current user doesn't reply |
|
// within the specified time (in milliseconds), the call will be automatically refused |
|
CallRingTimeoutMs int |
|
// VoIP connection timeout: if the instance of libtgvoip on the other side of the call |
|
// doesn't connect to our instance of libtgvoip within the specified time (in |
|
// milliseconds), the call must be aborted |
|
CallConnectTimeoutMs int |
|
// If during a VoIP call a packet isn't received for the specified period of time, the |
|
// call must be aborted |
|
CallPacketTimeoutMs int |
|
// The domain to use to parse in-app links.For example t.me indicates that t.me/username |
|
// links should parsed to @username, t.me/addsticker/name should be parsed to the |
|
// appropriate stickerset and so on... |
|
MeURLPrefix string |
|
// URL to use to auto-update the current app |
|
// |
|
// Use SetAutoupdateURLPrefix and GetAutoupdateURLPrefix helpers. |
|
AutoupdateURLPrefix string |
|
// Username of the bot to use to search for GIFs |
|
// |
|
// Use SetGifSearchUsername and GetGifSearchUsername helpers. |
|
GifSearchUsername string |
|
// Username of the bot to use to search for venues |
|
// |
|
// Use SetVenueSearchUsername and GetVenueSearchUsername helpers. |
|
VenueSearchUsername string |
|
// Username of the bot to use for image search |
|
// |
|
// Use SetImgSearchUsername and GetImgSearchUsername helpers. |
|
ImgSearchUsername string |
|
// ID of the map provider to use for venues |
|
// |
|
// Use SetStaticMapsProvider and GetStaticMapsProvider helpers. |
|
StaticMapsProvider string |
|
// Maximum length of caption (length in utf8 codepoints) |
|
CaptionLengthMax int |
|
// Maximum length of messages (length in utf8 codepoints) |
|
MessageLengthMax int |
|
// DC ID to use to download webfiles¹ |
|
// |
|
// Links: |
|
// 1) https://core.telegram.org/api/files |
|
WebfileDCID int |
|
// Suggested language code |
|
// |
|
// Use SetSuggestedLangCode and GetSuggestedLangCode helpers. |
|
SuggestedLangCode string |
|
// Language pack version |
|
// |
|
// Use SetLangPackVersion and GetLangPackVersion helpers. |
|
LangPackVersion int |
|
// Basic language pack version |
|
// |
|
// Use SetBaseLangPackVersion and GetBaseLangPackVersion helpers. |
|
BaseLangPackVersion int |
|
} |
|
|
|
// ConfigTypeID is TL type id of Config. |
|
const ConfigTypeID = 0x330b4067 |
|
|
|
// Ensuring interfaces in compile-time for Config. |
|
var ( |
|
_ bin.Encoder = &Config{} |
|
_ bin.Decoder = &Config{} |
|
_ bin.BareEncoder = &Config{} |
|
_ bin.BareDecoder = &Config{} |
|
) |
|
|
|
func (c *Config) Zero() bool { |
|
if c == nil { |
|
return true |
|
} |
|
if !(c.Flags.Zero()) { |
|
return false |
|
} |
|
if !(c.PhonecallsEnabled == false) { |
|
return false |
|
} |
|
if !(c.DefaultP2PContacts == false) { |
|
return false |
|
} |
|
if !(c.PreloadFeaturedStickers == false) { |
|
return false |
|
} |
|
if !(c.IgnorePhoneEntities == false) { |
|
return false |
|
} |
|
if !(c.RevokePmInbox == false) { |
|
return false |
|
} |
|
if !(c.BlockedMode == false) { |
|
return false |
|
} |
|
if !(c.PFSEnabled == false) { |
|
return false |
|
} |
|
if !(c.Date == 0) { |
|
return false |
|
} |
|
if !(c.Expires == 0) { |
|
return false |
|
} |
|
if !(c.TestMode == false) { |
|
return false |
|
} |
|
if !(c.ThisDC == 0) { |
|
return false |
|
} |
|
if !(c.DCOptions == nil) { |
|
return false |
|
} |
|
if !(c.DCTxtDomainName == "") { |
|
return false |
|
} |
|
if !(c.ChatSizeMax == 0) { |
|
return false |
|
} |
|
if !(c.MegagroupSizeMax == 0) { |
|
return false |
|
} |
|
if !(c.ForwardedCountMax == 0) { |
|
return false |
|
} |
|
if !(c.OnlineUpdatePeriodMs == 0) { |
|
return false |
|
} |
|
if !(c.OfflineBlurTimeoutMs == 0) { |
|
return false |
|
} |
|
if !(c.OfflineIdleTimeoutMs == 0) { |
|
return false |
|
} |
|
if !(c.OnlineCloudTimeoutMs == 0) { |
|
return false |
|
} |
|
if !(c.NotifyCloudDelayMs == 0) { |
|
return false |
|
} |
|
if !(c.NotifyDefaultDelayMs == 0) { |
|
return false |
|
} |
|
if !(c.PushChatPeriodMs == 0) { |
|
return false |
|
} |
|
if !(c.PushChatLimit == 0) { |
|
return false |
|
} |
|
if !(c.SavedGifsLimit == 0) { |
|
return false |
|
} |
|
if !(c.EditTimeLimit == 0) { |
|
return false |
|
} |
|
if !(c.RevokeTimeLimit == 0) { |
|
return false |
|
} |
|
if !(c.RevokePmTimeLimit == 0) { |
|
return false |
|
} |
|
if !(c.RatingEDecay == 0) { |
|
return false |
|
} |
|
if !(c.StickersRecentLimit == 0) { |
|
return false |
|
} |
|
if !(c.StickersFavedLimit == 0) { |
|
return false |
|
} |
|
if !(c.ChannelsReadMediaPeriod == 0) { |
|
return false |
|
} |
|
if !(c.TmpSessions == 0) { |
|
return false |
|
} |
|
if !(c.PinnedDialogsCountMax == 0) { |
|
return false |
|
} |
|
if !(c.PinnedInfolderCountMax == 0) { |
|
return false |
|
} |
|
if !(c.CallReceiveTimeoutMs == 0) { |
|
return false |
|
} |
|
if !(c.CallRingTimeoutMs == 0) { |
|
return false |
|
} |
|
if !(c.CallConnectTimeoutMs == 0) { |
|
return false |
|
} |
|
if !(c.CallPacketTimeoutMs == 0) { |
|
return false |
|
} |
|
if !(c.MeURLPrefix == "") { |
|
return false |
|
} |
|
if !(c.AutoupdateURLPrefix == "") { |
|
return false |
|
} |
|
if !(c.GifSearchUsername == "") { |
|
return false |
|
} |
|
if !(c.VenueSearchUsername == "") { |
|
return false |
|
} |
|
if !(c.ImgSearchUsername == "") { |
|
return false |
|
} |
|
if !(c.StaticMapsProvider == "") { |
|
return false |
|
} |
|
if !(c.CaptionLengthMax == 0) { |
|
return false |
|
} |
|
if !(c.MessageLengthMax == 0) { |
|
return false |
|
} |
|
if !(c.WebfileDCID == 0) { |
|
return false |
|
} |
|
if !(c.SuggestedLangCode == "") { |
|
return false |
|
} |
|
if !(c.LangPackVersion == 0) { |
|
return false |
|
} |
|
if !(c.BaseLangPackVersion == 0) { |
|
return false |
|
} |
|
|
|
return true |
|
} |
|
|
|
// String implements fmt.Stringer. |
|
func (c *Config) String() string { |
|
if c == nil { |
|
return "Config(nil)" |
|
} |
|
type Alias Config |
|
return fmt.Sprintf("Config%+v", Alias(*c)) |
|
} |
|
|
|
// FillFrom fills Config from given interface. |
|
func (c *Config) FillFrom(from interface { |
|
GetPhonecallsEnabled() (value bool) |
|
GetDefaultP2PContacts() (value bool) |
|
GetPreloadFeaturedStickers() (value bool) |
|
GetIgnorePhoneEntities() (value bool) |
|
GetRevokePmInbox() (value bool) |
|
GetBlockedMode() (value bool) |
|
GetPFSEnabled() (value bool) |
|
GetDate() (value int) |
|
GetExpires() (value int) |
|
GetTestMode() (value bool) |
|
GetThisDC() (value int) |
|
GetDCOptions() (value []DCOption) |
|
GetDCTxtDomainName() (value string) |
|
GetChatSizeMax() (value int) |
|
GetMegagroupSizeMax() (value int) |
|
GetForwardedCountMax() (value int) |
|
GetOnlineUpdatePeriodMs() (value int) |
|
GetOfflineBlurTimeoutMs() (value int) |
|
GetOfflineIdleTimeoutMs() (value int) |
|
GetOnlineCloudTimeoutMs() (value int) |
|
GetNotifyCloudDelayMs() (value int) |
|
GetNotifyDefaultDelayMs() (value int) |
|
GetPushChatPeriodMs() (value int) |
|
GetPushChatLimit() (value int) |
|
GetSavedGifsLimit() (value int) |
|
GetEditTimeLimit() (value int) |
|
GetRevokeTimeLimit() (value int) |
|
GetRevokePmTimeLimit() (value int) |
|
GetRatingEDecay() (value int) |
|
GetStickersRecentLimit() (value int) |
|
GetStickersFavedLimit() (value int) |
|
GetChannelsReadMediaPeriod() (value int) |
|
GetTmpSessions() (value int, ok bool) |
|
GetPinnedDialogsCountMax() (value int) |
|
GetPinnedInfolderCountMax() (value int) |
|
GetCallReceiveTimeoutMs() (value int) |
|
GetCallRingTimeoutMs() (value int) |
|
GetCallConnectTimeoutMs() (value int) |
|
GetCallPacketTimeoutMs() (value int) |
|
GetMeURLPrefix() (value string) |
|
GetAutoupdateURLPrefix() (value string, ok bool) |
|
GetGifSearchUsername() (value string, ok bool) |
|
GetVenueSearchUsername() (value string, ok bool) |
|
GetImgSearchUsername() (value string, ok bool) |
|
GetStaticMapsProvider() (value string, ok bool) |
|
GetCaptionLengthMax() (value int) |
|
GetMessageLengthMax() (value int) |
|
GetWebfileDCID() (value int) |
|
GetSuggestedLangCode() (value string, ok bool) |
|
GetLangPackVersion() (value int, ok bool) |
|
GetBaseLangPackVersion() (value int, ok bool) |
|
}) { |
|
c.PhonecallsEnabled = from.GetPhonecallsEnabled() |
|
c.DefaultP2PContacts = from.GetDefaultP2PContacts() |
|
c.PreloadFeaturedStickers = from.GetPreloadFeaturedStickers() |
|
c.IgnorePhoneEntities = from.GetIgnorePhoneEntities() |
|
c.RevokePmInbox = from.GetRevokePmInbox() |
|
c.BlockedMode = from.GetBlockedMode() |
|
c.PFSEnabled = from.GetPFSEnabled() |
|
c.Date = from.GetDate() |
|
c.Expires = from.GetExpires() |
|
c.TestMode = from.GetTestMode() |
|
c.ThisDC = from.GetThisDC() |
|
c.DCOptions = from.GetDCOptions() |
|
c.DCTxtDomainName = from.GetDCTxtDomainName() |
|
c.ChatSizeMax = from.GetChatSizeMax() |
|
c.MegagroupSizeMax = from.GetMegagroupSizeMax() |
|
c.ForwardedCountMax = from.GetForwardedCountMax() |
|
c.OnlineUpdatePeriodMs = from.GetOnlineUpdatePeriodMs() |
|
c.OfflineBlurTimeoutMs = from.GetOfflineBlurTimeoutMs() |
|
c.OfflineIdleTimeoutMs = from.GetOfflineIdleTimeoutMs() |
|
c.OnlineCloudTimeoutMs = from.GetOnlineCloudTimeoutMs() |
|
c.NotifyCloudDelayMs = from.GetNotifyCloudDelayMs() |
|
c.NotifyDefaultDelayMs = from.GetNotifyDefaultDelayMs() |
|
c.PushChatPeriodMs = from.GetPushChatPeriodMs() |
|
c.PushChatLimit = from.GetPushChatLimit() |
|
c.SavedGifsLimit = from.GetSavedGifsLimit() |
|
c.EditTimeLimit = from.GetEditTimeLimit() |
|
c.RevokeTimeLimit = from.GetRevokeTimeLimit() |
|
c.RevokePmTimeLimit = from.GetRevokePmTimeLimit() |
|
c.RatingEDecay = from.GetRatingEDecay() |
|
c.StickersRecentLimit = from.GetStickersRecentLimit() |
|
c.StickersFavedLimit = from.GetStickersFavedLimit() |
|
c.ChannelsReadMediaPeriod = from.GetChannelsReadMediaPeriod() |
|
if val, ok := from.GetTmpSessions(); ok { |
|
c.TmpSessions = val |
|
} |
|
|
|
c.PinnedDialogsCountMax = from.GetPinnedDialogsCountMax() |
|
c.PinnedInfolderCountMax = from.GetPinnedInfolderCountMax() |
|
c.CallReceiveTimeoutMs = from.GetCallReceiveTimeoutMs() |
|
c.CallRingTimeoutMs = from.GetCallRingTimeoutMs() |
|
c.CallConnectTimeoutMs = from.GetCallConnectTimeoutMs() |
|
c.CallPacketTimeoutMs = from.GetCallPacketTimeoutMs() |
|
c.MeURLPrefix = from.GetMeURLPrefix() |
|
if val, ok := from.GetAutoupdateURLPrefix(); ok { |
|
c.AutoupdateURLPrefix = val |
|
} |
|
|
|
if val, ok := from.GetGifSearchUsername(); ok { |
|
c.GifSearchUsername = val |
|
} |
|
|
|
if val, ok := from.GetVenueSearchUsername(); ok { |
|
c.VenueSearchUsername = val |
|
} |
|
|
|
if val, ok := from.GetImgSearchUsername(); ok { |
|
c.ImgSearchUsername = val |
|
} |
|
|
|
if val, ok := from.GetStaticMapsProvider(); ok { |
|
c.StaticMapsProvider = val |
|
} |
|
|
|
c.CaptionLengthMax = from.GetCaptionLengthMax() |
|
c.MessageLengthMax = from.GetMessageLengthMax() |
|
c.WebfileDCID = from.GetWebfileDCID() |
|
if val, ok := from.GetSuggestedLangCode(); ok { |
|
c.SuggestedLangCode = val |
|
} |
|
|
|
if val, ok := from.GetLangPackVersion(); ok { |
|
c.LangPackVersion = val |
|
} |
|
|
|
if val, ok := from.GetBaseLangPackVersion(); ok { |
|
c.BaseLangPackVersion = val |
|
} |
|
|
|
} |
|
|
|
// TypeID returns type id in TL schema. |
|
// |
|
// See https://core.telegram.org/mtproto/TL-tl#remarks. |
|
func (*Config) TypeID() uint32 { |
|
return ConfigTypeID |
|
} |
|
|
|
// TypeName returns name of type in TL schema. |
|
func (*Config) TypeName() string { |
|
return "config" |
|
} |
|
|
|
// TypeInfo returns info about TL type. |
|
func (c *Config) TypeInfo() tdp.Type { |
|
typ := tdp.Type{ |
|
Name: "config", |
|
ID: ConfigTypeID, |
|
} |
|
if c == nil { |
|
typ.Null = true |
|
return typ |
|
} |
|
typ.Fields = []tdp.Field{ |
|
{ |
|
Name: "PhonecallsEnabled", |
|
SchemaName: "phonecalls_enabled", |
|
Null: !c.Flags.Has(1), |
|
}, |
|
{ |
|
Name: "DefaultP2PContacts", |
|
SchemaName: "default_p2p_contacts", |
|
Null: !c.Flags.Has(3), |
|
}, |
|
{ |
|
Name: "PreloadFeaturedStickers", |
|
SchemaName: "preload_featured_stickers", |
|
Null: !c.Flags.Has(4), |
|
}, |
|
{ |
|
Name: "IgnorePhoneEntities", |
|
SchemaName: "ignore_phone_entities", |
|
Null: !c.Flags.Has(5), |
|
}, |
|
{ |
|
Name: "RevokePmInbox", |
|
SchemaName: "revoke_pm_inbox", |
|
Null: !c.Flags.Has(6), |
|
}, |
|
{ |
|
Name: "BlockedMode", |
|
SchemaName: "blocked_mode", |
|
Null: !c.Flags.Has(8), |
|
}, |
|
{ |
|
Name: "PFSEnabled", |
|
SchemaName: "pfs_enabled", |
|
Null: !c.Flags.Has(13), |
|
}, |
|
{ |
|
Name: "Date", |
|
SchemaName: "date", |
|
}, |
|
{ |
|
Name: "Expires", |
|
SchemaName: "expires", |
|
}, |
|
{ |
|
Name: "TestMode", |
|
SchemaName: "test_mode", |
|
}, |
|
{ |
|
Name: "ThisDC", |
|
SchemaName: "this_dc", |
|
}, |
|
{ |
|
Name: "DCOptions", |
|
SchemaName: "dc_options", |
|
}, |
|
{ |
|
Name: "DCTxtDomainName", |
|
SchemaName: "dc_txt_domain_name", |
|
}, |
|
{ |
|
Name: "ChatSizeMax", |
|
SchemaName: "chat_size_max", |
|
}, |
|
{ |
|
Name: "MegagroupSizeMax", |
|
SchemaName: "megagroup_size_max", |
|
}, |
|
{ |
|
Name: "ForwardedCountMax", |
|
SchemaName: "forwarded_count_max", |
|
}, |
|
{ |
|
Name: "OnlineUpdatePeriodMs", |
|
SchemaName: "online_update_period_ms", |
|
}, |
|
{ |
|
Name: "OfflineBlurTimeoutMs", |
|
SchemaName: "offline_blur_timeout_ms", |
|
}, |
|
{ |
|
Name: "OfflineIdleTimeoutMs", |
|
SchemaName: "offline_idle_timeout_ms", |
|
}, |
|
{ |
|
Name: "OnlineCloudTimeoutMs", |
|
SchemaName: "online_cloud_timeout_ms", |
|
}, |
|
{ |
|
Name: "NotifyCloudDelayMs", |
|
SchemaName: "notify_cloud_delay_ms", |
|
}, |
|
{ |
|
Name: "NotifyDefaultDelayMs", |
|
SchemaName: "notify_default_delay_ms", |
|
}, |
|
{ |
|
Name: "PushChatPeriodMs", |
|
SchemaName: "push_chat_period_ms", |
|
}, |
|
{ |
|
Name: "PushChatLimit", |
|
SchemaName: "push_chat_limit", |
|
}, |
|
{ |
|
Name: "SavedGifsLimit", |
|
SchemaName: "saved_gifs_limit", |
|
}, |
|
{ |
|
Name: "EditTimeLimit", |
|
SchemaName: "edit_time_limit", |
|
}, |
|
{ |
|
Name: "RevokeTimeLimit", |
|
SchemaName: "revoke_time_limit", |
|
}, |
|
{ |
|
Name: "RevokePmTimeLimit", |
|
SchemaName: "revoke_pm_time_limit", |
|
}, |
|
{ |
|
Name: "RatingEDecay", |
|
SchemaName: "rating_e_decay", |
|
}, |
|
{ |
|
Name: "StickersRecentLimit", |
|
SchemaName: "stickers_recent_limit", |
|
}, |
|
{ |
|
Name: "StickersFavedLimit", |
|
SchemaName: "stickers_faved_limit", |
|
}, |
|
{ |
|
Name: "ChannelsReadMediaPeriod", |
|
SchemaName: "channels_read_media_period", |
|
}, |
|
{ |
|
Name: "TmpSessions", |
|
SchemaName: "tmp_sessions", |
|
Null: !c.Flags.Has(0), |
|
}, |
|
{ |
|
Name: "PinnedDialogsCountMax", |
|
SchemaName: "pinned_dialogs_count_max", |
|
}, |
|
{ |
|
Name: "PinnedInfolderCountMax", |
|
SchemaName: "pinned_infolder_count_max", |
|
}, |
|
{ |
|
Name: "CallReceiveTimeoutMs", |
|
SchemaName: "call_receive_timeout_ms", |
|
}, |
|
{ |
|
Name: "CallRingTimeoutMs", |
|
SchemaName: "call_ring_timeout_ms", |
|
}, |
|
{ |
|
Name: "CallConnectTimeoutMs", |
|
SchemaName: "call_connect_timeout_ms", |
|
}, |
|
{ |
|
Name: "CallPacketTimeoutMs", |
|
SchemaName: "call_packet_timeout_ms", |
|
}, |
|
{ |
|
Name: "MeURLPrefix", |
|
SchemaName: "me_url_prefix", |
|
}, |
|
{ |
|
Name: "AutoupdateURLPrefix", |
|
SchemaName: "autoupdate_url_prefix", |
|
Null: !c.Flags.Has(7), |
|
}, |
|
{ |
|
Name: "GifSearchUsername", |
|
SchemaName: "gif_search_username", |
|
Null: !c.Flags.Has(9), |
|
}, |
|
{ |
|
Name: "VenueSearchUsername", |
|
SchemaName: "venue_search_username", |
|
Null: !c.Flags.Has(10), |
|
}, |
|
{ |
|
Name: "ImgSearchUsername", |
|
SchemaName: "img_search_username", |
|
Null: !c.Flags.Has(11), |
|
}, |
|
{ |
|
Name: "StaticMapsProvider", |
|
SchemaName: "static_maps_provider", |
|
Null: !c.Flags.Has(12), |
|
}, |
|
{ |
|
Name: "CaptionLengthMax", |
|
SchemaName: "caption_length_max", |
|
}, |
|
{ |
|
Name: "MessageLengthMax", |
|
SchemaName: "message_length_max", |
|
}, |
|
{ |
|
Name: "WebfileDCID", |
|
SchemaName: "webfile_dc_id", |
|
}, |
|
{ |
|
Name: "SuggestedLangCode", |
|
SchemaName: "suggested_lang_code", |
|
Null: !c.Flags.Has(2), |
|
}, |
|
{ |
|
Name: "LangPackVersion", |
|
SchemaName: "lang_pack_version", |
|
Null: !c.Flags.Has(2), |
|
}, |
|
{ |
|
Name: "BaseLangPackVersion", |
|
SchemaName: "base_lang_pack_version", |
|
Null: !c.Flags.Has(2), |
|
}, |
|
} |
|
return typ |
|
} |
|
|
|
// SetFlags sets flags for non-zero fields. |
|
func (c *Config) SetFlags() { |
|
if !(c.PhonecallsEnabled == false) { |
|
c.Flags.Set(1) |
|
} |
|
if !(c.DefaultP2PContacts == false) { |
|
c.Flags.Set(3) |
|
} |
|
if !(c.PreloadFeaturedStickers == false) { |
|
c.Flags.Set(4) |
|
} |
|
if !(c.IgnorePhoneEntities == false) { |
|
c.Flags.Set(5) |
|
} |
|
if !(c.RevokePmInbox == false) { |
|
c.Flags.Set(6) |
|
} |
|
if !(c.BlockedMode == false) { |
|
c.Flags.Set(8) |
|
} |
|
if !(c.PFSEnabled == false) { |
|
c.Flags.Set(13) |
|
} |
|
if !(c.TmpSessions == 0) { |
|
c.Flags.Set(0) |
|
} |
|
if !(c.AutoupdateURLPrefix == "") { |
|
c.Flags.Set(7) |
|
} |
|
if !(c.GifSearchUsername == "") { |
|
c.Flags.Set(9) |
|
} |
|
if !(c.VenueSearchUsername == "") { |
|
c.Flags.Set(10) |
|
} |
|
if !(c.ImgSearchUsername == "") { |
|
c.Flags.Set(11) |
|
} |
|
if !(c.StaticMapsProvider == "") { |
|
c.Flags.Set(12) |
|
} |
|
if !(c.SuggestedLangCode == "") { |
|
c.Flags.Set(2) |
|
} |
|
if !(c.LangPackVersion == 0) { |
|
c.Flags.Set(2) |
|
} |
|
if !(c.BaseLangPackVersion == 0) { |
|
c.Flags.Set(2) |
|
} |
|
} |
|
|
|
// Encode implements bin.Encoder. |
|
func (c *Config) Encode(b *bin.Buffer) error { |
|
if c == nil { |
|
return fmt.Errorf("can't encode config#330b4067 as nil") |
|
} |
|
b.PutID(ConfigTypeID) |
|
return c.EncodeBare(b) |
|
} |
|
|
|
// EncodeBare implements bin.BareEncoder. |
|
func (c *Config) EncodeBare(b *bin.Buffer) error { |
|
if c == nil { |
|
return fmt.Errorf("can't encode config#330b4067 as nil") |
|
} |
|
c.SetFlags() |
|
if err := c.Flags.Encode(b); err != nil { |
|
return fmt.Errorf("unable to encode config#330b4067: field flags: %w", err) |
|
} |
|
b.PutInt(c.Date) |
|
b.PutInt(c.Expires) |
|
b.PutBool(c.TestMode) |
|
b.PutInt(c.ThisDC) |
|
b.PutVectorHeader(len(c.DCOptions)) |
|
for idx, v := range c.DCOptions { |
|
if err := v.Encode(b); err != nil { |
|
return fmt.Errorf("unable to encode config#330b4067: field dc_options element with index %d: %w", idx, err) |
|
} |
|
} |
|
b.PutString(c.DCTxtDomainName) |
|
b.PutInt(c.ChatSizeMax) |
|
b.PutInt(c.MegagroupSizeMax) |
|
b.PutInt(c.ForwardedCountMax) |
|
b.PutInt(c.OnlineUpdatePeriodMs) |
|
b.PutInt(c.OfflineBlurTimeoutMs) |
|
b.PutInt(c.OfflineIdleTimeoutMs) |
|
b.PutInt(c.OnlineCloudTimeoutMs) |
|
b.PutInt(c.NotifyCloudDelayMs) |
|
b.PutInt(c.NotifyDefaultDelayMs) |
|
b.PutInt(c.PushChatPeriodMs) |
|
b.PutInt(c.PushChatLimit) |
|
b.PutInt(c.SavedGifsLimit) |
|
b.PutInt(c.EditTimeLimit) |
|
b.PutInt(c.RevokeTimeLimit) |
|
b.PutInt(c.RevokePmTimeLimit) |
|
b.PutInt(c.RatingEDecay) |
|
b.PutInt(c.StickersRecentLimit) |
|
b.PutInt(c.StickersFavedLimit) |
|
b.PutInt(c.ChannelsReadMediaPeriod) |
|
if c.Flags.Has(0) { |
|
b.PutInt(c.TmpSessions) |
|
} |
|
b.PutInt(c.PinnedDialogsCountMax) |
|
b.PutInt(c.PinnedInfolderCountMax) |
|
b.PutInt(c.CallReceiveTimeoutMs) |
|
b.PutInt(c.CallRingTimeoutMs) |
|
b.PutInt(c.CallConnectTimeoutMs) |
|
b.PutInt(c.CallPacketTimeoutMs) |
|
b.PutString(c.MeURLPrefix) |
|
if c.Flags.Has(7) { |
|
b.PutString(c.AutoupdateURLPrefix) |
|
} |
|
if c.Flags.Has(9) { |
|
b.PutString(c.GifSearchUsername) |
|
} |
|
if c.Flags.Has(10) { |
|
b.PutString(c.VenueSearchUsername) |
|
} |
|
if c.Flags.Has(11) { |
|
b.PutString(c.ImgSearchUsername) |
|
} |
|
if c.Flags.Has(12) { |
|
b.PutString(c.StaticMapsProvider) |
|
} |
|
b.PutInt(c.CaptionLengthMax) |
|
b.PutInt(c.MessageLengthMax) |
|
b.PutInt(c.WebfileDCID) |
|
if c.Flags.Has(2) { |
|
b.PutString(c.SuggestedLangCode) |
|
} |
|
if c.Flags.Has(2) { |
|
b.PutInt(c.LangPackVersion) |
|
} |
|
if c.Flags.Has(2) { |
|
b.PutInt(c.BaseLangPackVersion) |
|
} |
|
return nil |
|
} |
|
|
|
// Decode implements bin.Decoder. |
|
func (c *Config) Decode(b *bin.Buffer) error { |
|
if c == nil { |
|
return fmt.Errorf("can't decode config#330b4067 to nil") |
|
} |
|
if err := b.ConsumeID(ConfigTypeID); err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: %w", err) |
|
} |
|
return c.DecodeBare(b) |
|
} |
|
|
|
// DecodeBare implements bin.BareDecoder. |
|
func (c *Config) DecodeBare(b *bin.Buffer) error { |
|
if c == nil { |
|
return fmt.Errorf("can't decode config#330b4067 to nil") |
|
} |
|
{ |
|
if err := c.Flags.Decode(b); err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field flags: %w", err) |
|
} |
|
} |
|
c.PhonecallsEnabled = c.Flags.Has(1) |
|
c.DefaultP2PContacts = c.Flags.Has(3) |
|
c.PreloadFeaturedStickers = c.Flags.Has(4) |
|
c.IgnorePhoneEntities = c.Flags.Has(5) |
|
c.RevokePmInbox = c.Flags.Has(6) |
|
c.BlockedMode = c.Flags.Has(8) |
|
c.PFSEnabled = c.Flags.Has(13) |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field date: %w", err) |
|
} |
|
c.Date = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field expires: %w", err) |
|
} |
|
c.Expires = value |
|
} |
|
{ |
|
value, err := b.Bool() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field test_mode: %w", err) |
|
} |
|
c.TestMode = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field this_dc: %w", err) |
|
} |
|
c.ThisDC = value |
|
} |
|
{ |
|
headerLen, err := b.VectorHeader() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field dc_options: %w", err) |
|
} |
|
|
|
if headerLen > 0 { |
|
c.DCOptions = make([]DCOption, 0, headerLen%bin.PreallocateLimit) |
|
} |
|
for idx := 0; idx < headerLen; idx++ { |
|
var value DCOption |
|
if err := value.Decode(b); err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field dc_options: %w", err) |
|
} |
|
c.DCOptions = append(c.DCOptions, value) |
|
} |
|
} |
|
{ |
|
value, err := b.String() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field dc_txt_domain_name: %w", err) |
|
} |
|
c.DCTxtDomainName = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field chat_size_max: %w", err) |
|
} |
|
c.ChatSizeMax = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field megagroup_size_max: %w", err) |
|
} |
|
c.MegagroupSizeMax = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field forwarded_count_max: %w", err) |
|
} |
|
c.ForwardedCountMax = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field online_update_period_ms: %w", err) |
|
} |
|
c.OnlineUpdatePeriodMs = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field offline_blur_timeout_ms: %w", err) |
|
} |
|
c.OfflineBlurTimeoutMs = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field offline_idle_timeout_ms: %w", err) |
|
} |
|
c.OfflineIdleTimeoutMs = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field online_cloud_timeout_ms: %w", err) |
|
} |
|
c.OnlineCloudTimeoutMs = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field notify_cloud_delay_ms: %w", err) |
|
} |
|
c.NotifyCloudDelayMs = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field notify_default_delay_ms: %w", err) |
|
} |
|
c.NotifyDefaultDelayMs = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field push_chat_period_ms: %w", err) |
|
} |
|
c.PushChatPeriodMs = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field push_chat_limit: %w", err) |
|
} |
|
c.PushChatLimit = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field saved_gifs_limit: %w", err) |
|
} |
|
c.SavedGifsLimit = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field edit_time_limit: %w", err) |
|
} |
|
c.EditTimeLimit = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field revoke_time_limit: %w", err) |
|
} |
|
c.RevokeTimeLimit = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field revoke_pm_time_limit: %w", err) |
|
} |
|
c.RevokePmTimeLimit = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field rating_e_decay: %w", err) |
|
} |
|
c.RatingEDecay = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field stickers_recent_limit: %w", err) |
|
} |
|
c.StickersRecentLimit = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field stickers_faved_limit: %w", err) |
|
} |
|
c.StickersFavedLimit = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field channels_read_media_period: %w", err) |
|
} |
|
c.ChannelsReadMediaPeriod = value |
|
} |
|
if c.Flags.Has(0) { |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field tmp_sessions: %w", err) |
|
} |
|
c.TmpSessions = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field pinned_dialogs_count_max: %w", err) |
|
} |
|
c.PinnedDialogsCountMax = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field pinned_infolder_count_max: %w", err) |
|
} |
|
c.PinnedInfolderCountMax = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field call_receive_timeout_ms: %w", err) |
|
} |
|
c.CallReceiveTimeoutMs = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field call_ring_timeout_ms: %w", err) |
|
} |
|
c.CallRingTimeoutMs = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field call_connect_timeout_ms: %w", err) |
|
} |
|
c.CallConnectTimeoutMs = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field call_packet_timeout_ms: %w", err) |
|
} |
|
c.CallPacketTimeoutMs = value |
|
} |
|
{ |
|
value, err := b.String() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field me_url_prefix: %w", err) |
|
} |
|
c.MeURLPrefix = value |
|
} |
|
if c.Flags.Has(7) { |
|
value, err := b.String() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field autoupdate_url_prefix: %w", err) |
|
} |
|
c.AutoupdateURLPrefix = value |
|
} |
|
if c.Flags.Has(9) { |
|
value, err := b.String() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field gif_search_username: %w", err) |
|
} |
|
c.GifSearchUsername = value |
|
} |
|
if c.Flags.Has(10) { |
|
value, err := b.String() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field venue_search_username: %w", err) |
|
} |
|
c.VenueSearchUsername = value |
|
} |
|
if c.Flags.Has(11) { |
|
value, err := b.String() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field img_search_username: %w", err) |
|
} |
|
c.ImgSearchUsername = value |
|
} |
|
if c.Flags.Has(12) { |
|
value, err := b.String() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field static_maps_provider: %w", err) |
|
} |
|
c.StaticMapsProvider = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field caption_length_max: %w", err) |
|
} |
|
c.CaptionLengthMax = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field message_length_max: %w", err) |
|
} |
|
c.MessageLengthMax = value |
|
} |
|
{ |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field webfile_dc_id: %w", err) |
|
} |
|
c.WebfileDCID = value |
|
} |
|
if c.Flags.Has(2) { |
|
value, err := b.String() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field suggested_lang_code: %w", err) |
|
} |
|
c.SuggestedLangCode = value |
|
} |
|
if c.Flags.Has(2) { |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field lang_pack_version: %w", err) |
|
} |
|
c.LangPackVersion = value |
|
} |
|
if c.Flags.Has(2) { |
|
value, err := b.Int() |
|
if err != nil { |
|
return fmt.Errorf("unable to decode config#330b4067: field base_lang_pack_version: %w", err) |
|
} |
|
c.BaseLangPackVersion = value |
|
} |
|
return nil |
|
} |
|
|
|
// SetPhonecallsEnabled sets value of PhonecallsEnabled conditional field. |
|
func (c *Config) SetPhonecallsEnabled(value bool) { |
|
if value { |
|
c.Flags.Set(1) |
|
c.PhonecallsEnabled = true |
|
} else { |
|
c.Flags.Unset(1) |
|
c.PhonecallsEnabled = false |
|
} |
|
} |
|
|
|
// GetPhonecallsEnabled returns value of PhonecallsEnabled conditional field. |
|
func (c *Config) GetPhonecallsEnabled() (value bool) { |
|
if c == nil { |
|
return |
|
} |
|
return c.Flags.Has(1) |
|
} |
|
|
|
// SetDefaultP2PContacts sets value of DefaultP2PContacts conditional field. |
|
func (c *Config) SetDefaultP2PContacts(value bool) { |
|
if value { |
|
c.Flags.Set(3) |
|
c.DefaultP2PContacts = true |
|
} else { |
|
c.Flags.Unset(3) |
|
c.DefaultP2PContacts = false |
|
} |
|
} |
|
|
|
// GetDefaultP2PContacts returns value of DefaultP2PContacts conditional field. |
|
func (c *Config) GetDefaultP2PContacts() (value bool) { |
|
if c == nil { |
|
return |
|
} |
|
return c.Flags.Has(3) |
|
} |
|
|
|
// SetPreloadFeaturedStickers sets value of PreloadFeaturedStickers conditional field. |
|
func (c *Config) SetPreloadFeaturedStickers(value bool) { |
|
if value { |
|
c.Flags.Set(4) |
|
c.PreloadFeaturedStickers = true |
|
} else { |
|
c.Flags.Unset(4) |
|
c.PreloadFeaturedStickers = false |
|
} |
|
} |
|
|
|
// GetPreloadFeaturedStickers returns value of PreloadFeaturedStickers conditional field. |
|
func (c *Config) GetPreloadFeaturedStickers() (value bool) { |
|
if c == nil { |
|
return |
|
} |
|
return c.Flags.Has(4) |
|
} |
|
|
|
// SetIgnorePhoneEntities sets value of IgnorePhoneEntities conditional field. |
|
func (c *Config) SetIgnorePhoneEntities(value bool) { |
|
if value { |
|
c.Flags.Set(5) |
|
c.IgnorePhoneEntities = true |
|
} else { |
|
c.Flags.Unset(5) |
|
c.IgnorePhoneEntities = false |
|
} |
|
} |
|
|
|
// GetIgnorePhoneEntities returns value of IgnorePhoneEntities conditional field. |
|
func (c *Config) GetIgnorePhoneEntities() (value bool) { |
|
if c == nil { |
|
return |
|
} |
|
return c.Flags.Has(5) |
|
} |
|
|
|
// SetRevokePmInbox sets value of RevokePmInbox conditional field. |
|
func (c *Config) SetRevokePmInbox(value bool) { |
|
if value { |
|
c.Flags.Set(6) |
|
c.RevokePmInbox = true |
|
} else { |
|
c.Flags.Unset(6) |
|
c.RevokePmInbox = false |
|
} |
|
} |
|
|
|
// GetRevokePmInbox returns value of RevokePmInbox conditional field. |
|
func (c *Config) GetRevokePmInbox() (value bool) { |
|
if c == nil { |
|
return |
|
} |
|
return c.Flags.Has(6) |
|
} |
|
|
|
// SetBlockedMode sets value of BlockedMode conditional field. |
|
func (c *Config) SetBlockedMode(value bool) { |
|
if value { |
|
c.Flags.Set(8) |
|
c.BlockedMode = true |
|
} else { |
|
c.Flags.Unset(8) |
|
c.BlockedMode = false |
|
} |
|
} |
|
|
|
// GetBlockedMode returns value of BlockedMode conditional field. |
|
func (c *Config) GetBlockedMode() (value bool) { |
|
if c == nil { |
|
return |
|
} |
|
return c.Flags.Has(8) |
|
} |
|
|
|
// SetPFSEnabled sets value of PFSEnabled conditional field. |
|
func (c *Config) SetPFSEnabled(value bool) { |
|
if value { |
|
c.Flags.Set(13) |
|
c.PFSEnabled = true |
|
} else { |
|
c.Flags.Unset(13) |
|
c.PFSEnabled = false |
|
} |
|
} |
|
|
|
// GetPFSEnabled returns value of PFSEnabled conditional field. |
|
func (c *Config) GetPFSEnabled() (value bool) { |
|
if c == nil { |
|
return |
|
} |
|
return c.Flags.Has(13) |
|
} |
|
|
|
// GetDate returns value of Date field. |
|
func (c *Config) GetDate() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.Date |
|
} |
|
|
|
// GetExpires returns value of Expires field. |
|
func (c *Config) GetExpires() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.Expires |
|
} |
|
|
|
// GetTestMode returns value of TestMode field. |
|
func (c *Config) GetTestMode() (value bool) { |
|
if c == nil { |
|
return |
|
} |
|
return c.TestMode |
|
} |
|
|
|
// GetThisDC returns value of ThisDC field. |
|
func (c *Config) GetThisDC() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.ThisDC |
|
} |
|
|
|
// GetDCOptions returns value of DCOptions field. |
|
func (c *Config) GetDCOptions() (value []DCOption) { |
|
if c == nil { |
|
return |
|
} |
|
return c.DCOptions |
|
} |
|
|
|
// GetDCTxtDomainName returns value of DCTxtDomainName field. |
|
func (c *Config) GetDCTxtDomainName() (value string) { |
|
if c == nil { |
|
return |
|
} |
|
return c.DCTxtDomainName |
|
} |
|
|
|
// GetChatSizeMax returns value of ChatSizeMax field. |
|
func (c *Config) GetChatSizeMax() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.ChatSizeMax |
|
} |
|
|
|
// GetMegagroupSizeMax returns value of MegagroupSizeMax field. |
|
func (c *Config) GetMegagroupSizeMax() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.MegagroupSizeMax |
|
} |
|
|
|
// GetForwardedCountMax returns value of ForwardedCountMax field. |
|
func (c *Config) GetForwardedCountMax() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.ForwardedCountMax |
|
} |
|
|
|
// GetOnlineUpdatePeriodMs returns value of OnlineUpdatePeriodMs field. |
|
func (c *Config) GetOnlineUpdatePeriodMs() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.OnlineUpdatePeriodMs |
|
} |
|
|
|
// GetOfflineBlurTimeoutMs returns value of OfflineBlurTimeoutMs field. |
|
func (c *Config) GetOfflineBlurTimeoutMs() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.OfflineBlurTimeoutMs |
|
} |
|
|
|
// GetOfflineIdleTimeoutMs returns value of OfflineIdleTimeoutMs field. |
|
func (c *Config) GetOfflineIdleTimeoutMs() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.OfflineIdleTimeoutMs |
|
} |
|
|
|
// GetOnlineCloudTimeoutMs returns value of OnlineCloudTimeoutMs field. |
|
func (c *Config) GetOnlineCloudTimeoutMs() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.OnlineCloudTimeoutMs |
|
} |
|
|
|
// GetNotifyCloudDelayMs returns value of NotifyCloudDelayMs field. |
|
func (c *Config) GetNotifyCloudDelayMs() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.NotifyCloudDelayMs |
|
} |
|
|
|
// GetNotifyDefaultDelayMs returns value of NotifyDefaultDelayMs field. |
|
func (c *Config) GetNotifyDefaultDelayMs() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.NotifyDefaultDelayMs |
|
} |
|
|
|
// GetPushChatPeriodMs returns value of PushChatPeriodMs field. |
|
func (c *Config) GetPushChatPeriodMs() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.PushChatPeriodMs |
|
} |
|
|
|
// GetPushChatLimit returns value of PushChatLimit field. |
|
func (c *Config) GetPushChatLimit() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.PushChatLimit |
|
} |
|
|
|
// GetSavedGifsLimit returns value of SavedGifsLimit field. |
|
func (c *Config) GetSavedGifsLimit() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.SavedGifsLimit |
|
} |
|
|
|
// GetEditTimeLimit returns value of EditTimeLimit field. |
|
func (c *Config) GetEditTimeLimit() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.EditTimeLimit |
|
} |
|
|
|
// GetRevokeTimeLimit returns value of RevokeTimeLimit field. |
|
func (c *Config) GetRevokeTimeLimit() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.RevokeTimeLimit |
|
} |
|
|
|
// GetRevokePmTimeLimit returns value of RevokePmTimeLimit field. |
|
func (c *Config) GetRevokePmTimeLimit() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.RevokePmTimeLimit |
|
} |
|
|
|
// GetRatingEDecay returns value of RatingEDecay field. |
|
func (c *Config) GetRatingEDecay() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.RatingEDecay |
|
} |
|
|
|
// GetStickersRecentLimit returns value of StickersRecentLimit field. |
|
func (c *Config) GetStickersRecentLimit() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.StickersRecentLimit |
|
} |
|
|
|
// GetStickersFavedLimit returns value of StickersFavedLimit field. |
|
func (c *Config) GetStickersFavedLimit() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.StickersFavedLimit |
|
} |
|
|
|
// GetChannelsReadMediaPeriod returns value of ChannelsReadMediaPeriod field. |
|
func (c *Config) GetChannelsReadMediaPeriod() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.ChannelsReadMediaPeriod |
|
} |
|
|
|
// SetTmpSessions sets value of TmpSessions conditional field. |
|
func (c *Config) SetTmpSessions(value int) { |
|
c.Flags.Set(0) |
|
c.TmpSessions = value |
|
} |
|
|
|
// GetTmpSessions returns value of TmpSessions conditional field and |
|
// boolean which is true if field was set. |
|
func (c *Config) GetTmpSessions() (value int, ok bool) { |
|
if c == nil { |
|
return |
|
} |
|
if !c.Flags.Has(0) { |
|
return value, false |
|
} |
|
return c.TmpSessions, true |
|
} |
|
|
|
// GetPinnedDialogsCountMax returns value of PinnedDialogsCountMax field. |
|
func (c *Config) GetPinnedDialogsCountMax() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.PinnedDialogsCountMax |
|
} |
|
|
|
// GetPinnedInfolderCountMax returns value of PinnedInfolderCountMax field. |
|
func (c *Config) GetPinnedInfolderCountMax() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.PinnedInfolderCountMax |
|
} |
|
|
|
// GetCallReceiveTimeoutMs returns value of CallReceiveTimeoutMs field. |
|
func (c *Config) GetCallReceiveTimeoutMs() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.CallReceiveTimeoutMs |
|
} |
|
|
|
// GetCallRingTimeoutMs returns value of CallRingTimeoutMs field. |
|
func (c *Config) GetCallRingTimeoutMs() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.CallRingTimeoutMs |
|
} |
|
|
|
// GetCallConnectTimeoutMs returns value of CallConnectTimeoutMs field. |
|
func (c *Config) GetCallConnectTimeoutMs() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.CallConnectTimeoutMs |
|
} |
|
|
|
// GetCallPacketTimeoutMs returns value of CallPacketTimeoutMs field. |
|
func (c *Config) GetCallPacketTimeoutMs() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.CallPacketTimeoutMs |
|
} |
|
|
|
// GetMeURLPrefix returns value of MeURLPrefix field. |
|
func (c *Config) GetMeURLPrefix() (value string) { |
|
if c == nil { |
|
return |
|
} |
|
return c.MeURLPrefix |
|
} |
|
|
|
// SetAutoupdateURLPrefix sets value of AutoupdateURLPrefix conditional field. |
|
func (c *Config) SetAutoupdateURLPrefix(value string) { |
|
c.Flags.Set(7) |
|
c.AutoupdateURLPrefix = value |
|
} |
|
|
|
// GetAutoupdateURLPrefix returns value of AutoupdateURLPrefix conditional field and |
|
// boolean which is true if field was set. |
|
func (c *Config) GetAutoupdateURLPrefix() (value string, ok bool) { |
|
if c == nil { |
|
return |
|
} |
|
if !c.Flags.Has(7) { |
|
return value, false |
|
} |
|
return c.AutoupdateURLPrefix, true |
|
} |
|
|
|
// SetGifSearchUsername sets value of GifSearchUsername conditional field. |
|
func (c *Config) SetGifSearchUsername(value string) { |
|
c.Flags.Set(9) |
|
c.GifSearchUsername = value |
|
} |
|
|
|
// GetGifSearchUsername returns value of GifSearchUsername conditional field and |
|
// boolean which is true if field was set. |
|
func (c *Config) GetGifSearchUsername() (value string, ok bool) { |
|
if c == nil { |
|
return |
|
} |
|
if !c.Flags.Has(9) { |
|
return value, false |
|
} |
|
return c.GifSearchUsername, true |
|
} |
|
|
|
// SetVenueSearchUsername sets value of VenueSearchUsername conditional field. |
|
func (c *Config) SetVenueSearchUsername(value string) { |
|
c.Flags.Set(10) |
|
c.VenueSearchUsername = value |
|
} |
|
|
|
// GetVenueSearchUsername returns value of VenueSearchUsername conditional field and |
|
// boolean which is true if field was set. |
|
func (c *Config) GetVenueSearchUsername() (value string, ok bool) { |
|
if c == nil { |
|
return |
|
} |
|
if !c.Flags.Has(10) { |
|
return value, false |
|
} |
|
return c.VenueSearchUsername, true |
|
} |
|
|
|
// SetImgSearchUsername sets value of ImgSearchUsername conditional field. |
|
func (c *Config) SetImgSearchUsername(value string) { |
|
c.Flags.Set(11) |
|
c.ImgSearchUsername = value |
|
} |
|
|
|
// GetImgSearchUsername returns value of ImgSearchUsername conditional field and |
|
// boolean which is true if field was set. |
|
func (c *Config) GetImgSearchUsername() (value string, ok bool) { |
|
if c == nil { |
|
return |
|
} |
|
if !c.Flags.Has(11) { |
|
return value, false |
|
} |
|
return c.ImgSearchUsername, true |
|
} |
|
|
|
// SetStaticMapsProvider sets value of StaticMapsProvider conditional field. |
|
func (c *Config) SetStaticMapsProvider(value string) { |
|
c.Flags.Set(12) |
|
c.StaticMapsProvider = value |
|
} |
|
|
|
// GetStaticMapsProvider returns value of StaticMapsProvider conditional field and |
|
// boolean which is true if field was set. |
|
func (c *Config) GetStaticMapsProvider() (value string, ok bool) { |
|
if c == nil { |
|
return |
|
} |
|
if !c.Flags.Has(12) { |
|
return value, false |
|
} |
|
return c.StaticMapsProvider, true |
|
} |
|
|
|
// GetCaptionLengthMax returns value of CaptionLengthMax field. |
|
func (c *Config) GetCaptionLengthMax() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.CaptionLengthMax |
|
} |
|
|
|
// GetMessageLengthMax returns value of MessageLengthMax field. |
|
func (c *Config) GetMessageLengthMax() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.MessageLengthMax |
|
} |
|
|
|
// GetWebfileDCID returns value of WebfileDCID field. |
|
func (c *Config) GetWebfileDCID() (value int) { |
|
if c == nil { |
|
return |
|
} |
|
return c.WebfileDCID |
|
} |
|
|
|
// SetSuggestedLangCode sets value of SuggestedLangCode conditional field. |
|
func (c *Config) SetSuggestedLangCode(value string) { |
|
c.Flags.Set(2) |
|
c.SuggestedLangCode = value |
|
} |
|
|
|
// GetSuggestedLangCode returns value of SuggestedLangCode conditional field and |
|
// boolean which is true if field was set. |
|
func (c *Config) GetSuggestedLangCode() (value string, ok bool) { |
|
if c == nil { |
|
return |
|
} |
|
if !c.Flags.Has(2) { |
|
return value, false |
|
} |
|
return c.SuggestedLangCode, true |
|
} |
|
|
|
// SetLangPackVersion sets value of LangPackVersion conditional field. |
|
func (c *Config) SetLangPackVersion(value int) { |
|
c.Flags.Set(2) |
|
c.LangPackVersion = value |
|
} |
|
|
|
// GetLangPackVersion returns value of LangPackVersion conditional field and |
|
// boolean which is true if field was set. |
|
func (c *Config) GetLangPackVersion() (value int, ok bool) { |
|
if c == nil { |
|
return |
|
} |
|
if !c.Flags.Has(2) { |
|
return value, false |
|
} |
|
return c.LangPackVersion, true |
|
} |
|
|
|
// SetBaseLangPackVersion sets value of BaseLangPackVersion conditional field. |
|
func (c *Config) SetBaseLangPackVersion(value int) { |
|
c.Flags.Set(2) |
|
c.BaseLangPackVersion = value |
|
} |
|
|
|
// GetBaseLangPackVersion returns value of BaseLangPackVersion conditional field and |
|
// boolean which is true if field was set. |
|
func (c *Config) GetBaseLangPackVersion() (value int, ok bool) { |
|
if c == nil { |
|
return |
|
} |
|
if !c.Flags.Has(2) { |
|
return value, false |
|
} |
|
return c.BaseLangPackVersion, true |
|
}
|
|
|