Files
mautrix-telegram/pkg/gotd/tdapi/tl_chat_gen.go
T
2025-06-27 20:03:37 -07:00

1682 lines
45 KiB
Go
Generated

// Code generated by gotdgen, DO NOT EDIT.
package tdapi
import (
"context"
"errors"
"fmt"
"sort"
"strings"
"go.uber.org/multierr"
"go.mau.fi/mautrix-telegram/pkg/gotd/bin"
"go.mau.fi/mautrix-telegram/pkg/gotd/tdjson"
"go.mau.fi/mautrix-telegram/pkg/gotd/tdp"
"go.mau.fi/mautrix-telegram/pkg/gotd/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{}
)
// Chat represents TL type `chat#e5bae2e4`.
type Chat struct {
// Chat unique identifier
ID int64
// Type of the chat
Type ChatTypeClass
// Chat title
Title string
// Chat photo; may be null
Photo ChatPhotoInfo
// Identifier of the accent color for message sender name, and backgrounds of chat photo,
// reply header, and link preview
AccentColorID int32
// Identifier of a custom emoji to be shown on the reply header and link preview
// background for messages sent by the chat; 0 if none
BackgroundCustomEmojiID int64
// Identifier of the profile accent color for the chat's profile; -1 if none
ProfileAccentColorID int32
// Identifier of a custom emoji to be shown on the background of the chat's profile; 0 if
// none
ProfileBackgroundCustomEmojiID int64
// Actions that non-administrator chat members are allowed to take in the chat
Permissions ChatPermissions
// Last message in the chat; may be null if none or unknown
LastMessage Message
// Positions of the chat in chat lists
Positions []ChatPosition
// Chat lists to which the chat belongs. A chat can have a non-zero position in a chat
// list even it doesn't belong to the chat list and have no position in a chat list even
// it belongs to the chat list
ChatLists []ChatListClass
// Identifier of a user or chat that is selected to send messages in the chat; may be
// null if the user can't change message sender
MessageSenderID MessageSenderClass
// Block list to which the chat is added; may be null if none
BlockList BlockListClass
// True, if chat content can't be saved locally, forwarded, or copied
HasProtectedContent bool
// True, if translation of all messages in the chat must be suggested to the user
IsTranslatable bool
// True, if the chat is marked as unread
IsMarkedAsUnread bool
// True, if the chat is a forum supergroup that must be shown in the "View as topics"
// mode, or Saved Messages chat that must be shown in the "View as chats"
ViewAsTopics bool
// True, if the chat has scheduled messages
HasScheduledMessages bool
// True, if the chat messages can be deleted only for the current user while other users
// will continue to see the messages
CanBeDeletedOnlyForSelf bool
// True, if the chat messages can be deleted for all users
CanBeDeletedForAllUsers bool
// True, if the chat can be reported to Telegram moderators through reportChat or
// reportChatPhoto
CanBeReported bool
// Default value of the disable_notification parameter, used when a message is sent to
// the chat
DefaultDisableNotification bool
// Number of unread messages in the chat
UnreadCount int32
// Identifier of the last read incoming message
LastReadInboxMessageID int64
// Identifier of the last read outgoing message
LastReadOutboxMessageID int64
// Number of unread messages with a mention/reply in the chat
UnreadMentionCount int32
// Number of messages with unread reactions in the chat
UnreadReactionCount int32
// Notification settings for the chat
NotificationSettings ChatNotificationSettings
// Types of reaction, available in the chat
AvailableReactions ChatAvailableReactionsClass
// Current message auto-delete or self-destruct timer setting for the chat, in seconds; 0
// if disabled. Self-destruct timer in secret chats starts after the message or its
// content is viewed. Auto-delete timer in other chats starts from the send date
MessageAutoDeleteTime int32
// Emoji status to be shown along with chat title; may be null
EmojiStatus EmojiStatus
// Background set for the chat; may be null if none
Background ChatBackground
// If non-empty, name of a theme, set for the chat
ThemeName string
// Information about actions which must be possible to do through the chat action bar;
// may be null if none
ActionBar ChatActionBarClass
// Information about bar for managing a business bot in the chat; may be null if none
BusinessBotManageBar BusinessBotManageBar
// Information about video chat of the chat
VideoChat VideoChat
// Information about pending join requests; may be null if none
PendingJoinRequests ChatJoinRequestsInfo
// Identifier of the message from which reply markup needs to be used; 0 if there is no
// default custom reply markup in the chat
ReplyMarkupMessageID int64
// A draft of a message in the chat; may be null if none
DraftMessage DraftMessage
// Application-specific data associated with the chat. (For example, the chat scroll
// position or local chat notification settings can be stored here.) Persistent if the
// message database is used
ClientData string
}
// ChatTypeID is TL type id of Chat.
const ChatTypeID = 0xe5bae2e4
// Ensuring interfaces in compile-time for Chat.
var (
_ bin.Encoder = &Chat{}
_ bin.Decoder = &Chat{}
_ bin.BareEncoder = &Chat{}
_ bin.BareDecoder = &Chat{}
)
func (c *Chat) Zero() bool {
if c == nil {
return true
}
if !(c.ID == 0) {
return false
}
if !(c.Type == nil) {
return false
}
if !(c.Title == "") {
return false
}
if !(c.Photo.Zero()) {
return false
}
if !(c.AccentColorID == 0) {
return false
}
if !(c.BackgroundCustomEmojiID == 0) {
return false
}
if !(c.ProfileAccentColorID == 0) {
return false
}
if !(c.ProfileBackgroundCustomEmojiID == 0) {
return false
}
if !(c.Permissions.Zero()) {
return false
}
if !(c.LastMessage.Zero()) {
return false
}
if !(c.Positions == nil) {
return false
}
if !(c.ChatLists == nil) {
return false
}
if !(c.MessageSenderID == nil) {
return false
}
if !(c.BlockList == nil) {
return false
}
if !(c.HasProtectedContent == false) {
return false
}
if !(c.IsTranslatable == false) {
return false
}
if !(c.IsMarkedAsUnread == false) {
return false
}
if !(c.ViewAsTopics == false) {
return false
}
if !(c.HasScheduledMessages == false) {
return false
}
if !(c.CanBeDeletedOnlyForSelf == false) {
return false
}
if !(c.CanBeDeletedForAllUsers == false) {
return false
}
if !(c.CanBeReported == false) {
return false
}
if !(c.DefaultDisableNotification == false) {
return false
}
if !(c.UnreadCount == 0) {
return false
}
if !(c.LastReadInboxMessageID == 0) {
return false
}
if !(c.LastReadOutboxMessageID == 0) {
return false
}
if !(c.UnreadMentionCount == 0) {
return false
}
if !(c.UnreadReactionCount == 0) {
return false
}
if !(c.NotificationSettings.Zero()) {
return false
}
if !(c.AvailableReactions == nil) {
return false
}
if !(c.MessageAutoDeleteTime == 0) {
return false
}
if !(c.EmojiStatus.Zero()) {
return false
}
if !(c.Background.Zero()) {
return false
}
if !(c.ThemeName == "") {
return false
}
if !(c.ActionBar == nil) {
return false
}
if !(c.BusinessBotManageBar.Zero()) {
return false
}
if !(c.VideoChat.Zero()) {
return false
}
if !(c.PendingJoinRequests.Zero()) {
return false
}
if !(c.ReplyMarkupMessageID == 0) {
return false
}
if !(c.DraftMessage.Zero()) {
return false
}
if !(c.ClientData == "") {
return false
}
return true
}
// String implements fmt.Stringer.
func (c *Chat) String() string {
if c == nil {
return "Chat(nil)"
}
type Alias Chat
return fmt.Sprintf("Chat%+v", Alias(*c))
}
// TypeID returns type id in TL schema.
//
// See https://core.telegram.org/mtproto/TL-tl#remarks.
func (*Chat) TypeID() uint32 {
return ChatTypeID
}
// TypeName returns name of type in TL schema.
func (*Chat) TypeName() string {
return "chat"
}
// TypeInfo returns info about TL type.
func (c *Chat) TypeInfo() tdp.Type {
typ := tdp.Type{
Name: "chat",
ID: ChatTypeID,
}
if c == nil {
typ.Null = true
return typ
}
typ.Fields = []tdp.Field{
{
Name: "ID",
SchemaName: "id",
},
{
Name: "Type",
SchemaName: "type",
},
{
Name: "Title",
SchemaName: "title",
},
{
Name: "Photo",
SchemaName: "photo",
},
{
Name: "AccentColorID",
SchemaName: "accent_color_id",
},
{
Name: "BackgroundCustomEmojiID",
SchemaName: "background_custom_emoji_id",
},
{
Name: "ProfileAccentColorID",
SchemaName: "profile_accent_color_id",
},
{
Name: "ProfileBackgroundCustomEmojiID",
SchemaName: "profile_background_custom_emoji_id",
},
{
Name: "Permissions",
SchemaName: "permissions",
},
{
Name: "LastMessage",
SchemaName: "last_message",
},
{
Name: "Positions",
SchemaName: "positions",
},
{
Name: "ChatLists",
SchemaName: "chat_lists",
},
{
Name: "MessageSenderID",
SchemaName: "message_sender_id",
},
{
Name: "BlockList",
SchemaName: "block_list",
},
{
Name: "HasProtectedContent",
SchemaName: "has_protected_content",
},
{
Name: "IsTranslatable",
SchemaName: "is_translatable",
},
{
Name: "IsMarkedAsUnread",
SchemaName: "is_marked_as_unread",
},
{
Name: "ViewAsTopics",
SchemaName: "view_as_topics",
},
{
Name: "HasScheduledMessages",
SchemaName: "has_scheduled_messages",
},
{
Name: "CanBeDeletedOnlyForSelf",
SchemaName: "can_be_deleted_only_for_self",
},
{
Name: "CanBeDeletedForAllUsers",
SchemaName: "can_be_deleted_for_all_users",
},
{
Name: "CanBeReported",
SchemaName: "can_be_reported",
},
{
Name: "DefaultDisableNotification",
SchemaName: "default_disable_notification",
},
{
Name: "UnreadCount",
SchemaName: "unread_count",
},
{
Name: "LastReadInboxMessageID",
SchemaName: "last_read_inbox_message_id",
},
{
Name: "LastReadOutboxMessageID",
SchemaName: "last_read_outbox_message_id",
},
{
Name: "UnreadMentionCount",
SchemaName: "unread_mention_count",
},
{
Name: "UnreadReactionCount",
SchemaName: "unread_reaction_count",
},
{
Name: "NotificationSettings",
SchemaName: "notification_settings",
},
{
Name: "AvailableReactions",
SchemaName: "available_reactions",
},
{
Name: "MessageAutoDeleteTime",
SchemaName: "message_auto_delete_time",
},
{
Name: "EmojiStatus",
SchemaName: "emoji_status",
},
{
Name: "Background",
SchemaName: "background",
},
{
Name: "ThemeName",
SchemaName: "theme_name",
},
{
Name: "ActionBar",
SchemaName: "action_bar",
},
{
Name: "BusinessBotManageBar",
SchemaName: "business_bot_manage_bar",
},
{
Name: "VideoChat",
SchemaName: "video_chat",
},
{
Name: "PendingJoinRequests",
SchemaName: "pending_join_requests",
},
{
Name: "ReplyMarkupMessageID",
SchemaName: "reply_markup_message_id",
},
{
Name: "DraftMessage",
SchemaName: "draft_message",
},
{
Name: "ClientData",
SchemaName: "client_data",
},
}
return typ
}
// Encode implements bin.Encoder.
func (c *Chat) Encode(b *bin.Buffer) error {
if c == nil {
return fmt.Errorf("can't encode chat#e5bae2e4 as nil")
}
b.PutID(ChatTypeID)
return c.EncodeBare(b)
}
// EncodeBare implements bin.BareEncoder.
func (c *Chat) EncodeBare(b *bin.Buffer) error {
if c == nil {
return fmt.Errorf("can't encode chat#e5bae2e4 as nil")
}
b.PutInt53(c.ID)
if c.Type == nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field type is nil")
}
if err := c.Type.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field type: %w", err)
}
b.PutString(c.Title)
if err := c.Photo.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field photo: %w", err)
}
b.PutInt32(c.AccentColorID)
b.PutLong(c.BackgroundCustomEmojiID)
b.PutInt32(c.ProfileAccentColorID)
b.PutLong(c.ProfileBackgroundCustomEmojiID)
if err := c.Permissions.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field permissions: %w", err)
}
if err := c.LastMessage.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field last_message: %w", err)
}
b.PutInt(len(c.Positions))
for idx, v := range c.Positions {
if err := v.EncodeBare(b); err != nil {
return fmt.Errorf("unable to encode bare chat#e5bae2e4: field positions element with index %d: %w", idx, err)
}
}
b.PutInt(len(c.ChatLists))
for idx, v := range c.ChatLists {
if v == nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field chat_lists element with index %d is nil", idx)
}
if err := v.EncodeBare(b); err != nil {
return fmt.Errorf("unable to encode bare chat#e5bae2e4: field chat_lists element with index %d: %w", idx, err)
}
}
if c.MessageSenderID == nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field message_sender_id is nil")
}
if err := c.MessageSenderID.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field message_sender_id: %w", err)
}
if c.BlockList == nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field block_list is nil")
}
if err := c.BlockList.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field block_list: %w", err)
}
b.PutBool(c.HasProtectedContent)
b.PutBool(c.IsTranslatable)
b.PutBool(c.IsMarkedAsUnread)
b.PutBool(c.ViewAsTopics)
b.PutBool(c.HasScheduledMessages)
b.PutBool(c.CanBeDeletedOnlyForSelf)
b.PutBool(c.CanBeDeletedForAllUsers)
b.PutBool(c.CanBeReported)
b.PutBool(c.DefaultDisableNotification)
b.PutInt32(c.UnreadCount)
b.PutInt53(c.LastReadInboxMessageID)
b.PutInt53(c.LastReadOutboxMessageID)
b.PutInt32(c.UnreadMentionCount)
b.PutInt32(c.UnreadReactionCount)
if err := c.NotificationSettings.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field notification_settings: %w", err)
}
if c.AvailableReactions == nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field available_reactions is nil")
}
if err := c.AvailableReactions.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field available_reactions: %w", err)
}
b.PutInt32(c.MessageAutoDeleteTime)
if err := c.EmojiStatus.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field emoji_status: %w", err)
}
if err := c.Background.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field background: %w", err)
}
b.PutString(c.ThemeName)
if c.ActionBar == nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field action_bar is nil")
}
if err := c.ActionBar.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field action_bar: %w", err)
}
if err := c.BusinessBotManageBar.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field business_bot_manage_bar: %w", err)
}
if err := c.VideoChat.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field video_chat: %w", err)
}
if err := c.PendingJoinRequests.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field pending_join_requests: %w", err)
}
b.PutInt53(c.ReplyMarkupMessageID)
if err := c.DraftMessage.Encode(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field draft_message: %w", err)
}
b.PutString(c.ClientData)
return nil
}
// Decode implements bin.Decoder.
func (c *Chat) Decode(b *bin.Buffer) error {
if c == nil {
return fmt.Errorf("can't decode chat#e5bae2e4 to nil")
}
if err := b.ConsumeID(ChatTypeID); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: %w", err)
}
return c.DecodeBare(b)
}
// DecodeBare implements bin.BareDecoder.
func (c *Chat) DecodeBare(b *bin.Buffer) error {
if c == nil {
return fmt.Errorf("can't decode chat#e5bae2e4 to nil")
}
{
value, err := b.Int53()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field id: %w", err)
}
c.ID = value
}
{
value, err := DecodeChatType(b)
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field type: %w", err)
}
c.Type = value
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field title: %w", err)
}
c.Title = value
}
{
if err := c.Photo.Decode(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field photo: %w", err)
}
}
{
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field accent_color_id: %w", err)
}
c.AccentColorID = value
}
{
value, err := b.Long()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field background_custom_emoji_id: %w", err)
}
c.BackgroundCustomEmojiID = value
}
{
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field profile_accent_color_id: %w", err)
}
c.ProfileAccentColorID = value
}
{
value, err := b.Long()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field profile_background_custom_emoji_id: %w", err)
}
c.ProfileBackgroundCustomEmojiID = value
}
{
if err := c.Permissions.Decode(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field permissions: %w", err)
}
}
{
if err := c.LastMessage.Decode(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field last_message: %w", err)
}
}
{
headerLen, err := b.Int()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field positions: %w", err)
}
if headerLen > 0 {
c.Positions = make([]ChatPosition, 0, headerLen%bin.PreallocateLimit)
}
for idx := 0; idx < headerLen; idx++ {
var value ChatPosition
if err := value.DecodeBare(b); err != nil {
return fmt.Errorf("unable to decode bare chat#e5bae2e4: field positions: %w", err)
}
c.Positions = append(c.Positions, value)
}
}
{
headerLen, err := b.Int()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field chat_lists: %w", err)
}
if headerLen > 0 {
c.ChatLists = make([]ChatListClass, 0, headerLen%bin.PreallocateLimit)
}
for idx := 0; idx < headerLen; idx++ {
value, err := DecodeChatList(b)
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field chat_lists: %w", err)
}
c.ChatLists = append(c.ChatLists, value)
}
}
{
value, err := DecodeMessageSender(b)
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field message_sender_id: %w", err)
}
c.MessageSenderID = value
}
{
value, err := DecodeBlockList(b)
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field block_list: %w", err)
}
c.BlockList = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field has_protected_content: %w", err)
}
c.HasProtectedContent = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field is_translatable: %w", err)
}
c.IsTranslatable = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field is_marked_as_unread: %w", err)
}
c.IsMarkedAsUnread = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field view_as_topics: %w", err)
}
c.ViewAsTopics = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field has_scheduled_messages: %w", err)
}
c.HasScheduledMessages = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field can_be_deleted_only_for_self: %w", err)
}
c.CanBeDeletedOnlyForSelf = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field can_be_deleted_for_all_users: %w", err)
}
c.CanBeDeletedForAllUsers = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field can_be_reported: %w", err)
}
c.CanBeReported = value
}
{
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field default_disable_notification: %w", err)
}
c.DefaultDisableNotification = value
}
{
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field unread_count: %w", err)
}
c.UnreadCount = value
}
{
value, err := b.Int53()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field last_read_inbox_message_id: %w", err)
}
c.LastReadInboxMessageID = value
}
{
value, err := b.Int53()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field last_read_outbox_message_id: %w", err)
}
c.LastReadOutboxMessageID = value
}
{
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field unread_mention_count: %w", err)
}
c.UnreadMentionCount = value
}
{
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field unread_reaction_count: %w", err)
}
c.UnreadReactionCount = value
}
{
if err := c.NotificationSettings.Decode(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field notification_settings: %w", err)
}
}
{
value, err := DecodeChatAvailableReactions(b)
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field available_reactions: %w", err)
}
c.AvailableReactions = value
}
{
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field message_auto_delete_time: %w", err)
}
c.MessageAutoDeleteTime = value
}
{
if err := c.EmojiStatus.Decode(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field emoji_status: %w", err)
}
}
{
if err := c.Background.Decode(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field background: %w", err)
}
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field theme_name: %w", err)
}
c.ThemeName = value
}
{
value, err := DecodeChatActionBar(b)
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field action_bar: %w", err)
}
c.ActionBar = value
}
{
if err := c.BusinessBotManageBar.Decode(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field business_bot_manage_bar: %w", err)
}
}
{
if err := c.VideoChat.Decode(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field video_chat: %w", err)
}
}
{
if err := c.PendingJoinRequests.Decode(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field pending_join_requests: %w", err)
}
}
{
value, err := b.Int53()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field reply_markup_message_id: %w", err)
}
c.ReplyMarkupMessageID = value
}
{
if err := c.DraftMessage.Decode(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field draft_message: %w", err)
}
}
{
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field client_data: %w", err)
}
c.ClientData = value
}
return nil
}
// EncodeTDLibJSON implements tdjson.TDLibEncoder.
func (c *Chat) EncodeTDLibJSON(b tdjson.Encoder) error {
if c == nil {
return fmt.Errorf("can't encode chat#e5bae2e4 as nil")
}
b.ObjStart()
b.PutID("chat")
b.Comma()
b.FieldStart("id")
b.PutInt53(c.ID)
b.Comma()
b.FieldStart("type")
if c.Type == nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field type is nil")
}
if err := c.Type.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field type: %w", err)
}
b.Comma()
b.FieldStart("title")
b.PutString(c.Title)
b.Comma()
b.FieldStart("photo")
if err := c.Photo.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field photo: %w", err)
}
b.Comma()
b.FieldStart("accent_color_id")
b.PutInt32(c.AccentColorID)
b.Comma()
b.FieldStart("background_custom_emoji_id")
b.PutLong(c.BackgroundCustomEmojiID)
b.Comma()
b.FieldStart("profile_accent_color_id")
b.PutInt32(c.ProfileAccentColorID)
b.Comma()
b.FieldStart("profile_background_custom_emoji_id")
b.PutLong(c.ProfileBackgroundCustomEmojiID)
b.Comma()
b.FieldStart("permissions")
if err := c.Permissions.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field permissions: %w", err)
}
b.Comma()
b.FieldStart("last_message")
if err := c.LastMessage.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field last_message: %w", err)
}
b.Comma()
b.FieldStart("positions")
b.ArrStart()
for idx, v := range c.Positions {
if err := v.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field positions element with index %d: %w", idx, err)
}
b.Comma()
}
b.StripComma()
b.ArrEnd()
b.Comma()
b.FieldStart("chat_lists")
b.ArrStart()
for idx, v := range c.ChatLists {
if v == nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field chat_lists element with index %d is nil", idx)
}
if err := v.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field chat_lists element with index %d: %w", idx, err)
}
b.Comma()
}
b.StripComma()
b.ArrEnd()
b.Comma()
b.FieldStart("message_sender_id")
if c.MessageSenderID == nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field message_sender_id is nil")
}
if err := c.MessageSenderID.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field message_sender_id: %w", err)
}
b.Comma()
b.FieldStart("block_list")
if c.BlockList == nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field block_list is nil")
}
if err := c.BlockList.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field block_list: %w", err)
}
b.Comma()
b.FieldStart("has_protected_content")
b.PutBool(c.HasProtectedContent)
b.Comma()
b.FieldStart("is_translatable")
b.PutBool(c.IsTranslatable)
b.Comma()
b.FieldStart("is_marked_as_unread")
b.PutBool(c.IsMarkedAsUnread)
b.Comma()
b.FieldStart("view_as_topics")
b.PutBool(c.ViewAsTopics)
b.Comma()
b.FieldStart("has_scheduled_messages")
b.PutBool(c.HasScheduledMessages)
b.Comma()
b.FieldStart("can_be_deleted_only_for_self")
b.PutBool(c.CanBeDeletedOnlyForSelf)
b.Comma()
b.FieldStart("can_be_deleted_for_all_users")
b.PutBool(c.CanBeDeletedForAllUsers)
b.Comma()
b.FieldStart("can_be_reported")
b.PutBool(c.CanBeReported)
b.Comma()
b.FieldStart("default_disable_notification")
b.PutBool(c.DefaultDisableNotification)
b.Comma()
b.FieldStart("unread_count")
b.PutInt32(c.UnreadCount)
b.Comma()
b.FieldStart("last_read_inbox_message_id")
b.PutInt53(c.LastReadInboxMessageID)
b.Comma()
b.FieldStart("last_read_outbox_message_id")
b.PutInt53(c.LastReadOutboxMessageID)
b.Comma()
b.FieldStart("unread_mention_count")
b.PutInt32(c.UnreadMentionCount)
b.Comma()
b.FieldStart("unread_reaction_count")
b.PutInt32(c.UnreadReactionCount)
b.Comma()
b.FieldStart("notification_settings")
if err := c.NotificationSettings.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field notification_settings: %w", err)
}
b.Comma()
b.FieldStart("available_reactions")
if c.AvailableReactions == nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field available_reactions is nil")
}
if err := c.AvailableReactions.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field available_reactions: %w", err)
}
b.Comma()
b.FieldStart("message_auto_delete_time")
b.PutInt32(c.MessageAutoDeleteTime)
b.Comma()
b.FieldStart("emoji_status")
if err := c.EmojiStatus.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field emoji_status: %w", err)
}
b.Comma()
b.FieldStart("background")
if err := c.Background.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field background: %w", err)
}
b.Comma()
b.FieldStart("theme_name")
b.PutString(c.ThemeName)
b.Comma()
b.FieldStart("action_bar")
if c.ActionBar == nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field action_bar is nil")
}
if err := c.ActionBar.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field action_bar: %w", err)
}
b.Comma()
b.FieldStart("business_bot_manage_bar")
if err := c.BusinessBotManageBar.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field business_bot_manage_bar: %w", err)
}
b.Comma()
b.FieldStart("video_chat")
if err := c.VideoChat.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field video_chat: %w", err)
}
b.Comma()
b.FieldStart("pending_join_requests")
if err := c.PendingJoinRequests.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field pending_join_requests: %w", err)
}
b.Comma()
b.FieldStart("reply_markup_message_id")
b.PutInt53(c.ReplyMarkupMessageID)
b.Comma()
b.FieldStart("draft_message")
if err := c.DraftMessage.EncodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to encode chat#e5bae2e4: field draft_message: %w", err)
}
b.Comma()
b.FieldStart("client_data")
b.PutString(c.ClientData)
b.Comma()
b.StripComma()
b.ObjEnd()
return nil
}
// DecodeTDLibJSON implements tdjson.TDLibDecoder.
func (c *Chat) DecodeTDLibJSON(b tdjson.Decoder) error {
if c == nil {
return fmt.Errorf("can't decode chat#e5bae2e4 to nil")
}
return b.Obj(func(b tdjson.Decoder, key []byte) error {
switch string(key) {
case tdjson.TypeField:
if err := b.ConsumeID("chat"); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: %w", err)
}
case "id":
value, err := b.Int53()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field id: %w", err)
}
c.ID = value
case "type":
value, err := DecodeTDLibJSONChatType(b)
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field type: %w", err)
}
c.Type = value
case "title":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field title: %w", err)
}
c.Title = value
case "photo":
if err := c.Photo.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field photo: %w", err)
}
case "accent_color_id":
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field accent_color_id: %w", err)
}
c.AccentColorID = value
case "background_custom_emoji_id":
value, err := b.Long()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field background_custom_emoji_id: %w", err)
}
c.BackgroundCustomEmojiID = value
case "profile_accent_color_id":
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field profile_accent_color_id: %w", err)
}
c.ProfileAccentColorID = value
case "profile_background_custom_emoji_id":
value, err := b.Long()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field profile_background_custom_emoji_id: %w", err)
}
c.ProfileBackgroundCustomEmojiID = value
case "permissions":
if err := c.Permissions.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field permissions: %w", err)
}
case "last_message":
if err := c.LastMessage.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field last_message: %w", err)
}
case "positions":
if err := b.Arr(func(b tdjson.Decoder) error {
var value ChatPosition
if err := value.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field positions: %w", err)
}
c.Positions = append(c.Positions, value)
return nil
}); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field positions: %w", err)
}
case "chat_lists":
if err := b.Arr(func(b tdjson.Decoder) error {
value, err := DecodeTDLibJSONChatList(b)
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field chat_lists: %w", err)
}
c.ChatLists = append(c.ChatLists, value)
return nil
}); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field chat_lists: %w", err)
}
case "message_sender_id":
value, err := DecodeTDLibJSONMessageSender(b)
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field message_sender_id: %w", err)
}
c.MessageSenderID = value
case "block_list":
value, err := DecodeTDLibJSONBlockList(b)
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field block_list: %w", err)
}
c.BlockList = value
case "has_protected_content":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field has_protected_content: %w", err)
}
c.HasProtectedContent = value
case "is_translatable":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field is_translatable: %w", err)
}
c.IsTranslatable = value
case "is_marked_as_unread":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field is_marked_as_unread: %w", err)
}
c.IsMarkedAsUnread = value
case "view_as_topics":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field view_as_topics: %w", err)
}
c.ViewAsTopics = value
case "has_scheduled_messages":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field has_scheduled_messages: %w", err)
}
c.HasScheduledMessages = value
case "can_be_deleted_only_for_self":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field can_be_deleted_only_for_self: %w", err)
}
c.CanBeDeletedOnlyForSelf = value
case "can_be_deleted_for_all_users":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field can_be_deleted_for_all_users: %w", err)
}
c.CanBeDeletedForAllUsers = value
case "can_be_reported":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field can_be_reported: %w", err)
}
c.CanBeReported = value
case "default_disable_notification":
value, err := b.Bool()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field default_disable_notification: %w", err)
}
c.DefaultDisableNotification = value
case "unread_count":
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field unread_count: %w", err)
}
c.UnreadCount = value
case "last_read_inbox_message_id":
value, err := b.Int53()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field last_read_inbox_message_id: %w", err)
}
c.LastReadInboxMessageID = value
case "last_read_outbox_message_id":
value, err := b.Int53()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field last_read_outbox_message_id: %w", err)
}
c.LastReadOutboxMessageID = value
case "unread_mention_count":
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field unread_mention_count: %w", err)
}
c.UnreadMentionCount = value
case "unread_reaction_count":
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field unread_reaction_count: %w", err)
}
c.UnreadReactionCount = value
case "notification_settings":
if err := c.NotificationSettings.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field notification_settings: %w", err)
}
case "available_reactions":
value, err := DecodeTDLibJSONChatAvailableReactions(b)
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field available_reactions: %w", err)
}
c.AvailableReactions = value
case "message_auto_delete_time":
value, err := b.Int32()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field message_auto_delete_time: %w", err)
}
c.MessageAutoDeleteTime = value
case "emoji_status":
if err := c.EmojiStatus.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field emoji_status: %w", err)
}
case "background":
if err := c.Background.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field background: %w", err)
}
case "theme_name":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field theme_name: %w", err)
}
c.ThemeName = value
case "action_bar":
value, err := DecodeTDLibJSONChatActionBar(b)
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field action_bar: %w", err)
}
c.ActionBar = value
case "business_bot_manage_bar":
if err := c.BusinessBotManageBar.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field business_bot_manage_bar: %w", err)
}
case "video_chat":
if err := c.VideoChat.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field video_chat: %w", err)
}
case "pending_join_requests":
if err := c.PendingJoinRequests.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field pending_join_requests: %w", err)
}
case "reply_markup_message_id":
value, err := b.Int53()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field reply_markup_message_id: %w", err)
}
c.ReplyMarkupMessageID = value
case "draft_message":
if err := c.DraftMessage.DecodeTDLibJSON(b); err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field draft_message: %w", err)
}
case "client_data":
value, err := b.String()
if err != nil {
return fmt.Errorf("unable to decode chat#e5bae2e4: field client_data: %w", err)
}
c.ClientData = value
default:
return b.Skip()
}
return nil
})
}
// GetID returns value of ID field.
func (c *Chat) GetID() (value int64) {
if c == nil {
return
}
return c.ID
}
// GetType returns value of Type field.
func (c *Chat) GetType() (value ChatTypeClass) {
if c == nil {
return
}
return c.Type
}
// GetTitle returns value of Title field.
func (c *Chat) GetTitle() (value string) {
if c == nil {
return
}
return c.Title
}
// GetPhoto returns value of Photo field.
func (c *Chat) GetPhoto() (value ChatPhotoInfo) {
if c == nil {
return
}
return c.Photo
}
// GetAccentColorID returns value of AccentColorID field.
func (c *Chat) GetAccentColorID() (value int32) {
if c == nil {
return
}
return c.AccentColorID
}
// GetBackgroundCustomEmojiID returns value of BackgroundCustomEmojiID field.
func (c *Chat) GetBackgroundCustomEmojiID() (value int64) {
if c == nil {
return
}
return c.BackgroundCustomEmojiID
}
// GetProfileAccentColorID returns value of ProfileAccentColorID field.
func (c *Chat) GetProfileAccentColorID() (value int32) {
if c == nil {
return
}
return c.ProfileAccentColorID
}
// GetProfileBackgroundCustomEmojiID returns value of ProfileBackgroundCustomEmojiID field.
func (c *Chat) GetProfileBackgroundCustomEmojiID() (value int64) {
if c == nil {
return
}
return c.ProfileBackgroundCustomEmojiID
}
// GetPermissions returns value of Permissions field.
func (c *Chat) GetPermissions() (value ChatPermissions) {
if c == nil {
return
}
return c.Permissions
}
// GetLastMessage returns value of LastMessage field.
func (c *Chat) GetLastMessage() (value Message) {
if c == nil {
return
}
return c.LastMessage
}
// GetPositions returns value of Positions field.
func (c *Chat) GetPositions() (value []ChatPosition) {
if c == nil {
return
}
return c.Positions
}
// GetChatLists returns value of ChatLists field.
func (c *Chat) GetChatLists() (value []ChatListClass) {
if c == nil {
return
}
return c.ChatLists
}
// GetMessageSenderID returns value of MessageSenderID field.
func (c *Chat) GetMessageSenderID() (value MessageSenderClass) {
if c == nil {
return
}
return c.MessageSenderID
}
// GetBlockList returns value of BlockList field.
func (c *Chat) GetBlockList() (value BlockListClass) {
if c == nil {
return
}
return c.BlockList
}
// GetHasProtectedContent returns value of HasProtectedContent field.
func (c *Chat) GetHasProtectedContent() (value bool) {
if c == nil {
return
}
return c.HasProtectedContent
}
// GetIsTranslatable returns value of IsTranslatable field.
func (c *Chat) GetIsTranslatable() (value bool) {
if c == nil {
return
}
return c.IsTranslatable
}
// GetIsMarkedAsUnread returns value of IsMarkedAsUnread field.
func (c *Chat) GetIsMarkedAsUnread() (value bool) {
if c == nil {
return
}
return c.IsMarkedAsUnread
}
// GetViewAsTopics returns value of ViewAsTopics field.
func (c *Chat) GetViewAsTopics() (value bool) {
if c == nil {
return
}
return c.ViewAsTopics
}
// GetHasScheduledMessages returns value of HasScheduledMessages field.
func (c *Chat) GetHasScheduledMessages() (value bool) {
if c == nil {
return
}
return c.HasScheduledMessages
}
// GetCanBeDeletedOnlyForSelf returns value of CanBeDeletedOnlyForSelf field.
func (c *Chat) GetCanBeDeletedOnlyForSelf() (value bool) {
if c == nil {
return
}
return c.CanBeDeletedOnlyForSelf
}
// GetCanBeDeletedForAllUsers returns value of CanBeDeletedForAllUsers field.
func (c *Chat) GetCanBeDeletedForAllUsers() (value bool) {
if c == nil {
return
}
return c.CanBeDeletedForAllUsers
}
// GetCanBeReported returns value of CanBeReported field.
func (c *Chat) GetCanBeReported() (value bool) {
if c == nil {
return
}
return c.CanBeReported
}
// GetDefaultDisableNotification returns value of DefaultDisableNotification field.
func (c *Chat) GetDefaultDisableNotification() (value bool) {
if c == nil {
return
}
return c.DefaultDisableNotification
}
// GetUnreadCount returns value of UnreadCount field.
func (c *Chat) GetUnreadCount() (value int32) {
if c == nil {
return
}
return c.UnreadCount
}
// GetLastReadInboxMessageID returns value of LastReadInboxMessageID field.
func (c *Chat) GetLastReadInboxMessageID() (value int64) {
if c == nil {
return
}
return c.LastReadInboxMessageID
}
// GetLastReadOutboxMessageID returns value of LastReadOutboxMessageID field.
func (c *Chat) GetLastReadOutboxMessageID() (value int64) {
if c == nil {
return
}
return c.LastReadOutboxMessageID
}
// GetUnreadMentionCount returns value of UnreadMentionCount field.
func (c *Chat) GetUnreadMentionCount() (value int32) {
if c == nil {
return
}
return c.UnreadMentionCount
}
// GetUnreadReactionCount returns value of UnreadReactionCount field.
func (c *Chat) GetUnreadReactionCount() (value int32) {
if c == nil {
return
}
return c.UnreadReactionCount
}
// GetNotificationSettings returns value of NotificationSettings field.
func (c *Chat) GetNotificationSettings() (value ChatNotificationSettings) {
if c == nil {
return
}
return c.NotificationSettings
}
// GetAvailableReactions returns value of AvailableReactions field.
func (c *Chat) GetAvailableReactions() (value ChatAvailableReactionsClass) {
if c == nil {
return
}
return c.AvailableReactions
}
// GetMessageAutoDeleteTime returns value of MessageAutoDeleteTime field.
func (c *Chat) GetMessageAutoDeleteTime() (value int32) {
if c == nil {
return
}
return c.MessageAutoDeleteTime
}
// GetEmojiStatus returns value of EmojiStatus field.
func (c *Chat) GetEmojiStatus() (value EmojiStatus) {
if c == nil {
return
}
return c.EmojiStatus
}
// GetBackground returns value of Background field.
func (c *Chat) GetBackground() (value ChatBackground) {
if c == nil {
return
}
return c.Background
}
// GetThemeName returns value of ThemeName field.
func (c *Chat) GetThemeName() (value string) {
if c == nil {
return
}
return c.ThemeName
}
// GetActionBar returns value of ActionBar field.
func (c *Chat) GetActionBar() (value ChatActionBarClass) {
if c == nil {
return
}
return c.ActionBar
}
// GetBusinessBotManageBar returns value of BusinessBotManageBar field.
func (c *Chat) GetBusinessBotManageBar() (value BusinessBotManageBar) {
if c == nil {
return
}
return c.BusinessBotManageBar
}
// GetVideoChat returns value of VideoChat field.
func (c *Chat) GetVideoChat() (value VideoChat) {
if c == nil {
return
}
return c.VideoChat
}
// GetPendingJoinRequests returns value of PendingJoinRequests field.
func (c *Chat) GetPendingJoinRequests() (value ChatJoinRequestsInfo) {
if c == nil {
return
}
return c.PendingJoinRequests
}
// GetReplyMarkupMessageID returns value of ReplyMarkupMessageID field.
func (c *Chat) GetReplyMarkupMessageID() (value int64) {
if c == nil {
return
}
return c.ReplyMarkupMessageID
}
// GetDraftMessage returns value of DraftMessage field.
func (c *Chat) GetDraftMessage() (value DraftMessage) {
if c == nil {
return
}
return c.DraftMessage
}
// GetClientData returns value of ClientData field.
func (c *Chat) GetClientData() (value string) {
if c == nil {
return
}
return c.ClientData
}