#define OBJECT_SERIALIZE_FIELD_PTR(json, json_field, field)
#define OBJECT_SERIALIZE_FIELD_PTR_ARRAY(json, json_field, array_field)
#define OBJECT_DESERIALIZE_FIELD_PTR(json, json_field, field, optional)
#define OBJECT_SERIALIZE_FIELD(json, json_field, field)
Available objects: https://core.telegram.org/bots/api#available-types.
#define OBJECT_DESERIALIZE_FIELD(json, json_field, field, default_value, optional)
Deserialize.
#define OBJECT_DESERIALIZE_FIELD_PTR_ARRAY(json, json_field, array_field, optional)
This object represents a chat. https://core.telegram.org/bots/api#chatfullinfo.
std::int32_t unrestrictBoostCount
Optional. For supergroups, the minimum number of boosts that a non-administrator user needs to add in...
bool hasVisibleHistory
Optional. True, if new chat members will have access to old messages; available only to chat administ...
std::time_t emojiStatusExpirationDate
Optional. Expiration date of the emoji status of the other party in a private chat in Unix time,...
std::int64_t maxReactionCount
The maximum number of reactions that can be set on a message in the chat.
std::int32_t accentColorId
Optional. Identifier of the accent color for the chat name and backgrounds of the chat photo,...
std::string customEmojiStickerSetName
Optional. For supergroups, the name of the group's custom emoji sticker set. Custom emoji from this s...
std::string profileBackgroundCustomEmojiId
Optional. Custom emoji identifier of the emoji chosen by the chat for its profile background.
std::string stickerSetName
Optional. For supergroups, name of group sticker set.
Ptr< ChatPermissions > permissions
Optional. Default chat member permissions, for groups and supergroups.
bool hasHiddenMembers
Optional. True, if non-administrators can only get the list of bots and administrators in the chat.
Ptr< BusinessLocation > businessLocation
Optional. For private chats with business accounts, the location of the business.
std::vector< std::string > activeUsernames
Optional. If non-empty, the list of all active chat usernames; for private chats, supergroups and cha...
std::string description
Optional. Description, for groups, supergroups and channel chats.
Ptr< BusinessIntro > businessIntro
Optional. For private chats with business accounts, the intro of the business.
bool hasPrivateForwards
Optional. True, if privacy settings of the other party in the private chat allows to use tg://user?...
bool hasRestrictedVoiceAndVideoMessages
Optional. True, if the privacy settings of the other party restrict sending voice and video note mess...
nl::json toJson() const override
Serializes this object to JSON.
bool joinToSendMessages
Optional. True, if users need to join the supergroup before they can send messages.
Ptr< BusinessOpeningHours > businessOpeningHours
Optional. For private chats with business accounts, the opening hours of the business.
std::int64_t linkedChatId
Optional. Unique identifier for the linked chat, i.e. the discussion group identifier for a channel a...
Ptr< ChatLocation > location
Optional. For supergroups, the location to which the supergroup is connected.
bool joinByRequest
Optional. True, if all users directly joining the supergroup need to be approved by supergroup admini...
bool hasProtectedContent
Optional. True, if messages from the chat can't be forwarded to other chats.
Ptr< ChatPhoto > photo
Optional. Chat photo.
bool canSetStickerSet
Optional. True, if the bot can change the group sticker set.
void fromJson(const nl::json &json) override
Deserializes this object from JSON.
bool hasAggressiveAntiSpamEnabled
Optional. True, if aggressive anti-spam checks are enabled in the supergroup. The field is only avail...
std::vector< Ptr< ReactionType > > availableReactions
Optional. List of available reactions allowed in the chat. If omitted, then all emoji reactions are a...
Ptr< Chat > parentChat
Optional. Information about the corresponding channel chat; for direct messages chats only.
std::string emojiStatusCustomEmojiId
Optional. Custom emoji identifier of emoji status of the other party in a private chat....
std::int32_t slowModeDelay
Optional. For supergroups, the minimum allowed delay between consecutive messages sent by each unpriv...
std::string inviteLink
Optional. Primary invite link, for groups, supergroups and channel chats.
ChatFullInfo(const nl::json &json)
Ptr< Chat > personalChat
Optional. For private chats, the personal channel of the user.
std::string backgroundCustomEmojiId
Optional. Custom emoji identifier of emoji chosen by the chat for the reply header and link preview b...
std::string bio
Optional. Bio of the other party in a private chat.
std::int32_t messageAutoDeleteTime
Optional. The time after which all messages sent to the chat will be automatically deleted; in second...
std::int32_t profileAccentColorId
Optional. Identifier of the accent color for the chat's profile background. See profile accent colors...
Ptr< Birthdate > birthdate
Optional. For private chats, the date of birth of the user.
Ptr< Message > pinnedMessage
Optional. The most recent pinned message (by sending date).
This object represents a chat. https://core.telegram.org/bots/api#chat.
virtual void fromJson(const nl::json &json)
Deserializes this object from JSON.
virtual nl::json toJson() const
Serializes this object to JSON.